什么是Machine Learning
Learning: 通过不断地观察来学习到技能。
观察的对象:资料data
技巧skill:某一种表现的增进 improve some performance measure。比如:学习了数学,数学的解题能力提高了。我们喂给计算机前十年的股票的走势,让计算去预测股票。如果他预测的更准确了,那么我们说他学习到了东西。
机器学习的应用:
1、识别物体,比如一棵树。传统的程序,那么我们需要有一条条定义树的规则。让机器自己“分析资料”,学会辨认树。
2、语音、视觉识别。speech/visual recognition
3、在短时间要作出决定。需要快速决定的交易。high-frequency trading。还是以股票的例子。
4、面向很多不同的人的服务。 进行个性化定制。比如:网易云的日推歌曲。
5、食。
data:推特的上食客的评价信息(通过语义分析)
skill:判断吃了这家餐厅的食物,中毒的可能性(餐厅的卫生状况)
6、衣。
data:衣服销售量的图表、客户的调查情况
skill:给客户推荐时尚的衣服搭配。
7、住。
data:以前盖过的房子的建筑形态等特征X和它对应的能耗y。
skill:预测一个盖好的房子的能耗如何。通风、采光如何。
8、行。(针对无人车)
data:交通符号的图和其对应的意思。
skill:正确识别交通符号。
9、育。
data:一个答题系统。学生的答题记录,包括成绩、做题时间、题目的难度等。
skill:判断学生的学习等级。对于某种难度的题,学生会不会做。如果学生等级strength of student >题目等级difficult of question,那么就能答对。同时根据学生的做题情况,也可以判断题目的难度。ML可以决定strength 和 difficult。
10、乐。(推荐系统 Recommend System)
data:使用者对看过的电影评价。
skill:预测使用者对于没有看过的电影的评价会如何。
特征1、特征2、特征3
特征栏 | 特征1 | 特征2 | 。。。 | 特征n |
---|---|---|---|---|
movie | mRank1 | mRank2 | 。。。 | mRankn |
view | vRank1 | vRank2 | 。。。 | vRankn |
movie[0]、movie[1]、。。。movie[n]。电影有一堆特征,可以量化。它的类型、它里面有什么演员、它的片长等特征。(这个是可以知道的)
view[0]、view[1]、。。。、view[n]。客户有一堆特征,
将movie和view作inner product,如果结果很大,说明view对于这部movie会评价比较高。
Result = mRank1 * vRank1 + mRank2 * vRank2 + ... + mRankn * vRankn
要不要用ML:
1、要有某种performance增进。有underlying pattern可以学习到的。
2、如果有了规则underlying pattern,但是不知道怎么把这些规则写下来。没有显式程序、规则去定义。
3、最后要有关于pattern的资料data。
习题:
答案是3。1没有pattern可以学。2是有pattern的,而且可以很明确地给出显式定义。4是没有什么data可以学习的。
机器学习的组成:
例子:银行判断是否要发信用卡给顾客?
想学习的pattern:银行如何发卡才能使得自身获利最大?(有些人可能拿钱跑路,有些信用好的人就会还款,你还可以获得利息)
input:x∈X 顾客的申请资料
output:y∈Y 要不要发卡(0/1)
unknown pattern to be learned: f(目标函数target function): X —> Y。这个f是理想的规则,想要学习,但是不知道的,所以我们通过资料来学习一个g。
data: training example : D = {(x1,y1),(x2,y2),···,(xn,yn)} 银行的历史记录
hypothesis: g:X—>Y g是学习到规则pattern,我们希望 g≈f 。
Note:
1、f 我们不知道,这个是理想的隐藏的模式 ideal underlying pattern。
2、我们希望 g ≈ f。但是g基本上是不可能等于f的。还有一个问题是我们不知道 f 长什么样。
那么 g 长什么样呢?
assume g ∈ H={ hk }。那么我们可以推测一下h
h1:年工资>10万
h2:工作年限>5年
。。。
我们这些所有可能的h集合到一个H,机器学习算法就是从看到的资料里去这个H里找一个最符合资料的h出来当做g。所以机器学习的算法输入参数有两个:
1、喂入的资料D
2、给定的假设空间H
机器模型:算法A + 假设空间H
通过上面的概念,我们可以这么定义机器学习:
use data to compute hypothesis g that approximates target f
习题:
答案是2。S1是所有的rating即Y。一对(userid,songid)是一个x。S2是X。S3是所有的formula,这个是假设空间H。S4是所有的资料D,包括了X,y。
机器学习和其他名词关系:
Machine Learning:use data to computer hypothesis g that approximates target f
Data Mining: use huge data to find property that is interesting。试图找出一些数据里隐藏的有趣的信息。
DM can help ML, and vice versa。
Artificial Intelligence: compute something that shows intelligence behavior。
智能的表现,比如说:开车、下棋、预测。机器学习是实现人工智能的一种手段,当然还有其他手段。
比如说下棋:
传统方法:根据当前局面,判断下这一步棋的收益,建一棵Game Tree。
机器学习:给机器看不同的棋谱,让机器自己去学。
Statistics:use data to make inference about an unknown process。使用资料去推论不知道的事情。(抽样、推论)
统计学是实现机器学习的一种方法。 g 是要从资料推论的,f是不知道的。
习题:
答案是3。数据挖掘很接近机器学习,但不是一模一样。