机器学习--介绍

1.机器学习:经过对以往历史数据的学习创建一个模型用来预测之后的数据进行预测和分析。html

 

 

1.1监督学习 supervised learning算法

     监督学习能够分为生成方法(生成模型generative)和判别方法(判别模型discreiminative)机器学习

  •   生成模型:学习联合几率分布p(x,y)

          p(y|x)=p(x,y)/p(x)=p(y)p(x|y)/p(y)函数

          好比贝叶斯模型,隐马尔科夫模型(HMM)学习

  •    判别模型:有数据直接学习f(x)或者条件几率分布p(y|x)

           好比:最近邻(KNN),感知机(perception),决策树等设计

          

           学习过程的三要素:模型(Model)、策略、算法3d

  •     Model,即你要学习什么样的模型,包括线性模型,非线性模型等,取决于你要学习的问题和数据。
  •     策略,模型按照什么样的准则在整个模型解空间中选择最优的模型,其实就是损失代价函数包括(0-1损失,平方损失等)
  •   算法,参数模型的求解方法,好比梯度降低法,牛顿法等。

          风险函数: 分险函数度量评价意义下的模型预测的好坏。htm

  • 经验风险最小化,在假设空间,损失函数已经训练数据集肯定的状况下:

    

  •   指望风险最小化(设计的模型与真实的偏差)

        

          可是因为咱们是没法知道数据的真实分布的,若是知道数据的真实分布,咱们就不须要学习模型参数了,可是根据大数定律,当咱们的训练数据趋于无穷大的时候,经验风险最小化能够近似的等于经验风险最小化。blog

  • 结构风险最小化

         为了使学习的模型不过拟合,引入正则项对模型的参数进行惩罚,使得模型不能过于复杂。get

     

         J(f)是模型的复杂度,好比参数向量的个数。

   举个例子说明:

   好比房价的交易价格(Y)和房子面积(X)问题:

  

  假如如今要预测一个面积为750的房子价格该多少钱,咱们最能想到的是用一条曲线去拟合这些点,而后求出这条曲线的方程,再把x代入求解出Y。这就是监督学习,由于对于每一条数据咱们都预先给出了正确的结果,上面这个问题又称为回归问题(regression),由于预测的变量Y是连续的。

      若是预测的变量不是连续的,而是有类别的就叫作分类问题(Classification)

  上面例子只用了一个特征,在现实生活中其实有不少维特征,特征也多是无限维(svm是能够支持无线维特征的算法)。

   1.2无监督学习 unsupervised learning

   在有监督问题中,不管是分类仍是回归,咱们的每一个数据都具备一个结果。好比房价多少。可是在无监督学习算法里面,每一个数据是没有结果的,咱们只用特征,而无监督学习则是学习如何能够将这些数据分到各自不一样的组里面去。   无监督学习的一个例子就是聚类问题(clustering)

2.线性回归问题

2.1流程

      对于解决房价问题,其实咱们是要将训练数据输入到学习算法,进而学习到一个假设H,而后咱们将输入变量输入到h,预测出房价价格。

2.分类问题

 

 

    那么对于h咱们应当如何表示呢?能够是,由于只含有一个特征变量,因此也叫作单变量线性回归问题。

2.2代价函数 cost fuction

  如今咱们就要为咱们上面创建好的模型选择适当的参数Θ,咱们选择的参数就决定了咱们预测的准确度,模型的预测值和训练集中的真实数据差就是建模偏差,咱们的目标就是要找出使得建模偏差最小的模型参数,使得代价函数最小,具体能够查看http://www.cnblogs.com/GuoJiaSheng/p/3928160.html

3.分类问题

3.1逻辑回归(logistic regreesion)

 在分类问题中,咱们尝试对一个数据进行分类,好比判别它是否正确,是否为一封垃圾邮件。

咱们从二分类开始讨论:

咱们将因变量可能属于的类别分为负类,正类。y={0,1},0为负类、1为正类。以下图,咱们能够用线性回归的方法拟合一条曲线,可是线性回归只能预测出连续值,可是咱们的分类问题是要预测为1或者0,咱们能够这样分,当x>0.5为1当x<0.5为0,这样也能够很好的区分数据类别。

 

  可是当咱们观测的数据愈来愈大的时候,以下图

 

   这时候因为新增了点,若是这时候还使用0.5做为分隔点,就会出错。咱们能够得出线性回归,由于预测的值能够超过[0,1],因此并不适合解决这类问题。

   咱们引入逻辑回归,它的输出值只在[0,1]范围以内。hθ(x)=g(θTX)

        x表明特征变量

       g()表明逻辑函数。为s形函数,其实就是sigmod函数,它的值域为[0.1],

      ,

   对于模型的理解为:给出参数x,根据选择的参数计算出变量为1或者0的几率可能性。

   当z>0是预测为1,当在z<0时,预测为0.

   好比说:咱们有一个模型:

 

   而且参数为[-3 1 1] 即当-3+x1+x2>0时,即x1+x2>3时预测为1不然为0。为此咱们就能够画出一条线用于分类。以下图:

 

 3.2代价函数

      以前对于线性回归的代价咱们定义为模型偏差的平方和,理论上在逻辑回归上,咱们也能够沿用这必定义,可是若是将h(x)代入,咱们获得的模型偏差平方和就会是一个非凸函数。这意味着咱们的代价函数有许多局部最小解,这将影响咱们使用梯度降低法求解全局最小值。

 

    所以对于逻辑回归的代价函数咱们从新定义为:

 

   而后就可使用梯度降低法求解了。

 

3.3多分类问题

   对于多分类问题,咱们没法仅仅使用0,1用于区分某个类别,以下图:

 

一种解决的办法就是使用一对多方案。其实就是在多类别里面,将一个类别做为正类,其余剩余的类别合起来做为一个类别,这样就转化为2分类问题。

这样当咱们要预测的时候,将全部的分类机都执行一遍,找出最可能的类别模型做为预测值。

相关文章
相关标签/搜索