Machine Learning——概论

         犹记大学数学教师的一句话:数学是对生活中事物的一种符号化的抽象,对事物的理解本质上是对符号的理解。当时听着多觉得,嗯,这个老师挺不一般,直到后面的学习中,工作中,才慢慢地体会到这句话的精髓。

在学习机器学习时,有一些概念我们有必要弄清楚。

       1. 什么是机器学习?

 Arthur Samuel(1959).MachineLearning:Field of study that gives computers the ability to learn without being explicitly programmed.

以上是Arthur Samuel给出的定义,意思是:在没有明确的设置下,使计算机具有学习能力的研究领域。Arthur Samuel在1950年代编写了一个跳棋游戏,Samuel自己算不上是跳棋高手,只是让程序不停地跟自己对弈(也是很有耐心的……),从而观察哪些布局容易赢,继而让程序自己知道哪些是好的布局,哪些是坏的布局,最终使程序学会了跳棋,具有了一些跳棋经验,而且玩的比Samuel好很多倍,这一现象在当时业内引起了轩然大波,也使得Samuel在当时名声大噪。

当然,现在机器学习的定义是由一个叫Tom Mitchell的人定义的,原话如下:

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.

意思大概是:对于某类任务T和性能度量P,如果计算机程序在T上以P衡量的性能随着经验E而自我完善,那么就称这个计算机程序从经验E学习。

        2. 监督学习和无监督学习

监督学习简单来说就是我们教计算机做某类事情。也就是说对于给定的数据集是有标签的,我们是知道样本的答案的,我们大部分学到的模型都是属于这一类的,包括线性分类器、支持向量机等等;

无监督学习简单来说就是我们让计算机自己学习。跟监督学习相反,给定的数据集是完全没有标签的,主要的依据是相似的样本在数据空间中一般距离是相近的,这样就能通过距离的计算把样本分类,这样就完全不需要Label,比如著名的K-means算法就是无监督学习应用最广泛的算法;

        3. 符号定义

        x(i): 输入数据,特征量。

        y(i): 输出数据。

        (x(i)y(i)): 一组训练数据(Training Example

       m: 训练数据个数

       n: 特征量个数

       4. 代价函数

对于最简单的线性回归而言,对于给定的训练样本, 为对应的预测值,其表达式如下:

h(θ) = θ0x01x13x3+…+θnxn=Σθixi

       通常,我们人为地将x0 = 1。

如果使用线性代数来表达的话:

那么对于一系列训练数据,我们希望获取一组 值,使得h(x)越接近y越好。于是定义这个衡量标准为代价函数(Cost Function)如下:

       J(θ)越小,说明预测值与真实值越接近,通过使得代价函数J(θ)最小化,继而我们求得一组所需参数值θ。求取方法有正规方程法,梯度下降法等,在在后续会详细说明。

分类: Machine-Learning

发表评论

电子邮件地址不会被公开。 必填项已用*标注