机器学习笔记1:初探机器学习

看了《机器学习-斯坦福-Andrew NG-2014》的学习视频,把自己做的笔记分享给大家,多多指教,一起努力^_^



一、定义:目前对机器学习的定义有两种,一是Arthur Samuel提出的通关大量的经验累积,即教给机器学习的能力。

    二是Tom Mitchell 提出的在经验E中完成任务T,并给每次完成的结果质量度量为P。

二、方法:目前主流的机器学习方法有两种:

1.监督学习:

(1)定义:教计算机怎么做事情(即编程者知道并给定样本的特征)

(2)经典算法:

a.分类算法:即对给定的样本数据根据特征值,画出一条或多条判断真或假、0或1,或者0、1或2或更多输出值的算法。


b.回归算法:即对给定的样本集,提取出两个或更多的特征值并计算他们之间的函数关系,对于输入的已知的特征值,输出另一个求解的特征       值,类似于f(a,b,c,...) = y。

2.非监督学习:

(1)定义:让计算机自己学习(即编程者自己也不知道样本的特征分别有什么,只是给计算机一堆样本,让计算机自己学习)

(2)经典算法:

a.聚类算法:因为编程者不知道给定的样本集中的数据之间分别有什么特征值,所以输入给机器的就是一堆“一模一样”的原始数据。需要机器自       己去尝试提取样本集中的数据相同点多的地方,然后根据相同点给他们分成一堆一堆的类。


b.鸡尾酒宴会算法:给定的多个样本集中包含相同的、混淆程度不同的信息,需要机器自己学习这些样本中的信息,然后将这些混淆的信息分   别过滤提取出来。(具体问题自己去百度“鸡尾酒宴会问题”啦)


三、编程环境:Octave和Matlab。因为Octave和Matlab对机器学习算法的开发效率比较高,一条代码转换成Python或者Java可能就是几十上百条了。


嗯,今天先学到了这里,夜深,睡觉。最后附上视频、课件和Octave实现的鸡尾酒宴会算法(只需要一条语句就可以实现哦,超神奇的):[W,s,v] = svd((repmat(sum(x.*x,1),size(x,1),1).*x)*x');



发布了24 篇原创文章 · 获赞 88 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/SoHardToNamed/article/details/75453315