机器学习(Machine Learning)是从人工智能(AI)中发展出来的一个领域,机器学习的几个比较重要的应用有:
- 数据挖掘(Database mining)
- 我们无法手动编写的程序(Application can't by hand)(如自然语言处理、计算机视觉、直升机自动驾驶)
- 量身定制的程序(self-customizing programs)(网易云音乐的喜好推荐)
- 理解人类的学习过程和大脑(understanding human learning)
对于机器学习的定义如下:
Tom Mitchell(1998):
Well-posed Learning problem:A computer program is said to learn from experience E with respect to some task T and some performance measure P,if its performance on T,as measured by P,improves with experience E.
即:计算机程序从经验E中学习,解决某一任务T,进行某一性能度量P,通过P测定在T上的表现因经验E而提高。
用跳棋游戏来举例,一个跳棋程序通过几千几万次与自己进行跳棋游戏,根据每次与对手对弈时赢的概率得出最好的下棋策略,那么
E——程序与自己进行几万次游戏
T——玩跳棋
P——与新对手玩跳棋赢的概率
机器算法可分为:监督学习(supervised learning)与无监督学习(unsupervised learning)。
监督学习(supervised learning)指:通过已知的(正确的)数据,来使用算法预测并得出“正确答案”。
而监督学习较典型的问题有:回归问题(regression problem)与分类问题(classification problem)。
其中回归问题的回归是指我们的目标是预测一个连续值输出,而分类问题的目的是预测离散值的输出。
无监督学习(unsupervised learning)指:通过给大量无类型、无归类的数据,要求找出数据的类型结构。
例如聚类算法(clustering algorithm),使用聚类算法的目的是将同类型的数据放在一起,如社交网络分析(social network analysis)——用来分析某用户联系最频繁的人,从而找出同一朋友圈的人。
监督学习与无监督学习的区别在于,监督学习已给出的数据有确定的类型(如某肿瘤为良性肿瘤或恶性肿瘤),通过大量的已知数据,来判定某一未知数据的性质;而无监督学习只给出了数据的特点,并没有确定其性质的划分,目的是通过给出的大量无类型数据,将这些数据根据特点划分到适合的群组中。