机器学习应用的领域:
- Database mining(数据挖掘)
- Applications can't program by hand(无法手动编写的程序)
- Self-customizi programs
- Understanding human learning
机器学习的定义:
“计算机程序从经验E中学习,解决某一任务T,进行某一性能度量P,通过P测定在T上的表现因经验E而提高”
例:跳棋游戏中,
经验E是程序与自己下几万次跳棋,
任务T是玩跳棋,
性能度量P是与新对手玩跳棋时赢得概率。
最常用的两种机器学习算法(Machine learning algorithm):
- 监督学习(Supervised learning)
- 无监督学习(Unsupervised learning)
监督学习
“在监督学习中,对于数据集的每个样本,我们想要算法预测,并得出“right answer”
回归(Regression)问题:设法预测连续值输出,设法预测连续值的属性
分类(Classification)问题:设法预测一个离散值输出
Support Vector Machine( 支持向量机):允许计算机处理无穷多的特征
无监督学习
对于无给定的数据集如上图,没有给出正确答案,无监督学习可能判定该数据集包含两个不同的簇(cluster)
这就是聚类算法(Clustering algorithm)
聚类算法的应用:
①组织大型的计算机集群,试图找出哪些机器趋向于协同工作,可以让数据中心高效工作;
②社交网络的分析,自动识别同属于一个圈子的朋友
③将客户细分到不同市场,利于更好的销售
④天文数据分析
当然无监督学习不止包含聚类算法
exp.鸡尾酒会问题(Cocktail party problem)
只用一行代码就可以分离鸡尾酒会上的两种不同声音