人工智能在ios上的应用
前言
近几年来人工智能的话题那是炙手可热。在国内很多大佬言必谈机器学习和大数据;在美国刚毕业的人工智能 PHD 也是众人追捧,工资直逼 NFL 四分卫。人工智能甚至成为了互联网领域茶余饭后的话题 —— 仿佛不懂人工智能就是落伍了。
笔者作为一名 iOS 开发者,对于如火如荼的人工智能和机器学习,也保持了密切的追踪和了解。这篇文章就是总结我在硅谷和西雅图的所见所闻,抛砖引玉的与大家分享一下我对于人工智能的思考。
人工智能是什么?
关于人工智能(AI),我们经常听到这样一些相关词:大数据(Big Data),机器学习(Machine Learning),神经网络(Neural Network)。那么这些词到底有什么区别?我们来看下面一则小故事。
从前有个程序员叫牛顿。他定义了一个方法来计算自由落体的速度:
1
2
3 func getVelocity(time t: second) -》 Float {
return 9.8 * t
}
他是怎么得到这个方法的呢?牛顿自己被一个苹果砸中之后,做了大量的逻辑推导和实验论证之后,得到了这个公式。这是目前传统意义上的写程序方法 -- 理解清楚了事物的内在逻辑和真相后,由人来定义方法。直到今天,绝大多数程序都是这么写出来的。
而所谓的人工智能,就是机器自己定义方法。人工智能的实现方法有很多,比如可以让机器来interwetten与威廉的赔率体系 大脑,然后像人一样思考,从而定义方法。机器学习只是另一种实现人工智能的方法,就是由大数据定义方法。假如牛顿时期就有机器学习,它得出自由落体速度的过程是这样的:
收集尽可能多的自由落体实验数据。假如收集到的数据如下
负责人速度 (m/s)时间 (s)
伽利略9.81
牛顿19.62
达芬奇29.43
亚里士多德304
分析数据。机器学习会分析出,亚里士多德的数据有误不予采纳。其他三人的数据满足同一规律。
定义方法。根据上面数据,机器学习得出结论,速度 = 时间 * 9.8。
随着数据收集得越多,机器学习得到的结论就越准确。其实人类学习的过程也十分类似:书上有大量的知识(加工的数据),我们看了之后进行理解思考,然后得出自己的结论。
非常好我支持^.^
(0) 0%
不好我反对
(0) 0%