机器学习随笔一:问题与挑战

机器学习(Machine Learning)曾带有科幻的意味,来自于上个世纪五六十年代的科学家们对于人工智能计算的雄伟计划和梦想。

那个时候,是信息技术革命的第一个黄金时期,计算机、宇航、控制论、生物、量子物理等重要科技都取得了前所未有的突破,不少人认为要解决这个世界的终极奥秘之一——意识,已经不再是白日做梦,至少,不少国家开始雄心勃勃的开始设计能替代人工的智能(神经网络 -> 推理模型 -> 深度学习)。然而大半个世纪过去了,一切似乎还是那么遥远。

冷静下来的人们开始思考,如果现在还不能解决人工智能(Artificial Intelligence)的问题,或许可以先从增强智能(Augmented Intelligence)做起,这也即当代机器学习领域所要解决的问题:让机器辅助人类进行处理。这些处理,本质上还是计算的范畴,跟加减乘除并无二致。只是这个术语远没有前者提起来让人更有兴趣。

机器学习要解决啥问题

那么,什么是机器学习?

机器学习的初衷在于解决一些需要人类来完成的任务。典型的人类处理信息的过程为:输入一个信息,大脑进行思考决策,然后输出一个信息。以常见的照片识别为例,眼睛接收带有图片编码信息的光波刺激到视神经,视神经编码为神经冲动,经过一系列处理和传输,传到大脑皮层,大脑皮层负责视觉的区域再进行解码编码,最终大脑的神经网络进行决策,判定这是一只猫还是一只狗。

用数学公式表示,整个过程可以简化为

Y = F(X)

这里 X 表示输入,Y 表示输出。机器学习要解决的,正是 F 是啥的问题。

比如一个简化的例子,用身高来判定性别,一组简单的输入输出为:

X Y
180 male
170 female
175 maile
160 female

那么,机器猜测一个可能的方案是 F = X - 173。如果结果大于 0,表示是 male;小于 0,表示是 female。

这个例子很简单,但却是一个完整的机器学习的过程。

  • 得到足够多足够规范的输入和输出,即样本
  • 利用这些样本,得到 F,即训练或学习
  • 利用 F,去做判定,即用机器去工作

这里面每一步,扩展到真实场景的时候,都会有不少技术问题。比如,样本不规范、样本空间很大、怎么猜测 F 长啥样、训练复杂度高、判定时间过长……

机器学习的挑战在哪里?

训练出来的公式 F,或者可以称为机器,实际上就是机器学习要求得的最终结果。往理想了说,如果有一个足够复杂且合理的 F,它可以取代绝大多数人类能做的工作,比如 IBM Watson,比如 Google alphaGo,后面十分复杂,但最核心的仍然是一套描述 F 的代码。

好吧,那么对于一个通用的问题来说,该怎么求得 F 呢?思想有多远,F 就有多远。

数学家们建议先从线性空间入手,F 是矩阵;统计学家建议从概率论入手,F 是概率模型;计算机专家则认为决策是一种数据结构,F 是决策树;生理学家认为人脑既然是神经网络,很自然,F 是个网络……

应该说,F 形式的不同反映了世界观的不同,但这些形式自身并不好谈优略之分,相反,它们都在各自特定的领域取得了相当不错的成绩。

近些年,随着计算机技术的发展,处理大规模训练数据成为可能。神经网络以其更丰富的表达能力(废话,非线性的信息维度可比线性高得多),在处理诸如图片识别、翻译、预测等场景下的准确率更高,因而以深度学习为代表的神经网络技术重新得到青睐。

如果说,在小规模机器学习场景下大家拼的还是算法的优劣,到了深度学习场景下,往往要考虑的因素就复杂的多。比如更高的准确率可能意味着更复杂的网络,意味着训练一组数据要花费几天甚至几个月的时间,这些都给平台技术和工程实现带来许多新的挑战。可以说,原先往往比拼的是谁公式模型调的优,现在比拼的是谁加速硬件应用的得当。

总结

技术的发展,跟生态大势息息相关。有了合适的应用场景需求,有了支持实现的软硬件,一门科技才能迎来风口浪尖。

大胆预测,几年以内,专门面向机器学习的平台会出现,让机器学习的成本更低,甚至出现带有多种场景处理能力的通用机器,支持强化学习能力,可以在人类生活中应用的更为广泛。

当代国内教育(包括中小学和高校)很大的问题是只教一堆公式和推导,但是不教为什么。即便学过几遍《模式识别》课程,还是不容易理解透机器学习的来龙去脉。

转载请注明:http://blog.csdn.net/yeasy/article/details/53742964

猜你喜欢

转载自blog.csdn.net/yeasy/article/details/53742964