浅谈我对机器学习的理解

在网上看到关于一篇ML的文章,很不错,转载过来共勉.().

算算时间,从开始到现在,做机器学习算法也将近八个月了。虽然还没有达到融会贯通的地步,但至少在熟悉了算法的流程后,我在算法的选择和创造能力上有了不小的提升。实话说,机器学习很难,非常难,要做到完全了解算法的流程、特点、实现方法,并在正确的数据面前选择正确的方法再进行优化得到最优效果,我觉得没有个八年十年的刻苦钻研是不可能的事情。其实整个人工智能范畴都属于科研难题,包括模式识别、机器学习、搜索、规划等问题,都是可以作为独立科目存在的。我不认为有谁可以把人工智能的各个方面都做到极致,但如果能掌握其中的任一方向,至少在目前的类人尖端领域,都是不小的成就。

这篇日志,作为我2014年的学业总结,详细阐述目前我对机器学习的理解,希望各位看官批评指正,多多交流!

机器学习(MachineLearning),在我看来就是让机器学习人思维的过程。机器学习的宗旨就是让机器学会“人识别事物的方法”,我们希望人从事物中了解到的东西和机器从事物中了解到的东西一样,这就是机器学习的过程。在机器学习中有一个很经典的问题:

“假设有一张色彩丰富的油画,画中画了一片茂密的森林,在森林远处的一棵歪脖树上,有一只猴子坐在树上吃东西。如果我们让一个人找出猴子的位置,正常情况下不到一秒钟就可以指出猴子,甚至有的人第一眼就能看到那只猴子。”

那么问题就来了,为什么人能在上千种颜色混合而成的图像中一下就能识别出猴子呢?在我们的生活中,各种事物随处可见,我们是如何识别出各种不同的内容呢?也许你可能想到了——经验。没错,就是经验。经验理论告诉我们认识的所有东西都是通过学习得到的。比如,提起猴子,我们脑海里立刻就会浮现出我们见过的各种猴子,只要画中的猴子的特征与我们意识中的猴子雷同,我们就可能会认定画中画的是猴子。极端情况下,当画中猴子的特征与我们所认识某一类猴子的特征完全相同,我们就会认定画中的猴子是哪一类。

另一种情况是我们认错的时候。其实人识别事物的错误率有的时候也是很高的。比如,当我们遇见不认识的字的时候会潜意识的念字中我们认识的部分。比如,“如火如荼”这个词,是不是有朋友也跟我一样曾经念过“如火如茶(chá)”?我们之所以犯错,就是因为在我们没有见过这个字的前提下,我们会潜意识的使用经验来解释未知。

目前科技如此发达,就有牛人考虑可不可以让机器模仿人的这种识别方法来达到机器识别的效果,机器学习也就应运而生了。

从根本上说,识别,,是一个分类的结果。看到四条腿的生物,我们可能会立即把该生物归为动物一类,因为我们常常见到的四条腿的、活的东西,九成以上是动物。这里,就牵扯出了概率的问题。我们对身边的事物往往识别率很高,是因为人的潜意识几乎记录了肉眼看到的事物的所有特征。比如,我们进入一个新的集体,刚开始大家都不认识,有的时候人和名字都对不上号,主要原因就是我们对事物的特征把握不够,还不能通过现有特征对身边的人进行分类。这个时候,我们常常会有这种意识:哎,你好像叫张三来着?哦,不对,你好像是李四。这就是分类中的概率问题,有可能是A结果,有可能是B结果,甚至是更多结果,主要原因就是我们的大脑收集的特征不够多,还无法进行准确分类。当大家都彼此熟悉了之后,一眼就能识别出谁是谁来,甚至极端情况下,只听声音不见人都能进行识别,这说明我们已经对该事物的特征把握相当精确。

所以,我认为,人识别事物有四个基本步骤:学习、提取特征、识别、分类。

那么机器可不可以模仿这个过程来实现识别呢?

答案是肯定的,但是没有那么容易。难题有三:

第一,人的大脑有无数神经元进行数据交换和处理,在目前的机器中还达不到同等的处理条件;

第二,人对事物特征的提取是潜意识的,提取无意识情况下的信息,误差很大;

第三,也是最重要的一点,人的经验来自于人每时每刻的生活中,也就是人无时无刻都处在学习中,如何让机器进行各个方面的自主学习?

因此,目前在人工智能领域始终还没达到类人的水平,我认为主要原因就是机器没有潜意识。人的潜意识其实并不完全受人的意识支配,但却可以提高人类识别事物的概率。我们无法给机器加载潜意识,因为主动加载的意识就是主观意识,在机器里无法完成人类潜意识的功能。所以,以目前的发展情况来看,要达到完全类人,还有不短的时间。但即便如此,与人的思维差别很大的机器依然可以为我们的生活带来帮助。比如,我们常用的在线翻译、搜索系统、专家系统等,都是机器学习的产物。

那么,如何实现机器学习呢?

整体上看,机器学习就是模仿人识别事物的过程,即:学习、提取特征、识别、分类。

由于机器不能跟人类思维一样根据事物特征自然而然的选择分类方法,所以机器学习方法的选择依然还需要人工选择。

目前,机器学习的方法主要有三种:监督学习、半监督学习和无监督学习。

监督学习是利用一组已知类别的样本调整分类器的参数,使其达到所要求性能的过程。白话一点,就是根据已知的,推断未知的。

代表方法有:Nave Bayes、SVM、决策树、KNN、神经网络以及Logistic分析等;

半监督方法主要考虑如何利用少量的标注样本和大量的未标注样本进行训练和分类的问题,也就是根据少量已知的和大量未知的内容进行分类。代表方法有:最大期望、生成模型和图算法等。

无监督学习是利用一组已知类别的样本调整分类器的参数,使其达到所要求性能的过程。也就是及其自个儿学。

代表方法有:Apriori、FP树、K-means以及目前比较火的Deep Learning。

从这三方面看,无监督学习是最智能的,有能实现机器主动意识的潜质,但发展还比较缓慢;监督学习是不太靠谱的,从已知的推断未知的,就必须要把事物所有可能性全都学到,这在现实中是不可能的,人也做不到;半监督学习是“没办法中的办法”,既然无监督学习很难,监督学习不靠谱,就取个折中,各取所长。目前的发展是,监督学习技术已然成熟,无监督学习还在起步,所以对监督学习方法进行修改实现半监督学习是目前的主流。但这些方法基本只能提取信息,还不能进行有效的预测(人们就想,既然没法得到更多,就先看看手里有什么,于是数据挖掘出现了)。

机器学习方法非常多,也很成熟。下面我挑几个说。

没有伞的孩子必须努力奔跑!

浅谈我对机器学习的理解

相关文章:

你感兴趣的文章:

标签云: