CSDN机器学习笔记一 概述、线性回归

一、课程知识点

讲师:唐宇迪

本次课程
1.系列课程环境配置
2.机器学习概述
3.线性回归算法原理推导
4.逻辑回归算法原理
5.最优化问题求解
6.案例实战梯度下降

推荐学习教材:《机器学习实战》
准备环境:
安装Anaconda3(64-bit)
参见:http://blog.csdn.net/xundh/article/details/72841081

一、机器学习处理问题过程及常用库

1. 机器学习的处理问题过程 :

如:网页中内容的分类,有体育类和非体育类,现在需要对它们区分分类。
这里写图片描述

  1. 首先需要训练样本,然后把原始数据进行转换,进行特征抽取。
  2. 特征抽取在整个过程中非常重要。
  3. 然后指定一个学习函数,即机器学习算法。如学习函数:y*=argmaxf(X)。
  4. 预测

2. 包含的一些机器学习库

  • Numpy:科学计算库
  • Pandas:数据分析处理库
  • Matplotlib:数据可视化库
  • Scikit-learn:机器学习库,最常用的是建模

二、线性回归算法

1. 定义

在统计学中,线性回归(Linear Regression)是利用称为“线性回归方程”的最小二乘函数对一个或多个自变量和因变量之间关系进行建模的一种回归分析。
这种函数是一个或多个称为回归系数的模型参数的线性组合。

  • 只有一个自变量的情况称为简单回归
  • 大于一个自变量情况的叫做多元回归。

一个带有一个自变量的线性回归方程代表一条直线。我们需要对线性回归结果进行统计分析。

线性回归利用数理统计中回归分析,来确定两种或两种以上变量间相互依赖的定量关系的一种统计方法运用十分广泛。其表达形式为y=x’x+e,e为误差服从均值为 θ \theta θ的正态分布。

线性回归假设物证和结果满足线性关系。其实线性关系的表达能力非常强大,每个特征对结果的影响强弱可以由前面的参数体现,而且每个特征变量可以首先映射到一个函数,然后再参与线性计算。这样就可以表达特征与结果之间的非线性关系。

回归属于有监督学习中的一种方法。该方法的核心思想是从连续型统计数据中得到数学模型,然后将该数学模型用于预测或者分类。

该方法处理的数据可以是多维的。

2. 回归与梯度下降

回归在数学上来说是给定一个点集,能够用一条曲线去拟合之。
如果这个曲线是一条直线,那就被称为线性回归;
如果曲线是一条二次曲线,就被称为二次回归。

回归还有很多变种,如:locally weighted 回归、logistic回归等。

举例,weka,做一个房屋价值的评估系统。相关变量可能有:

  • 面积
  • 房间数量
  • 地段
  • 朝向

等。
这些影响房屋价值的变量被称为特征(feature)。
为简单起见,假设我们的房屋feature只有一个——房屋的面积。

准备数据如下:

面积(m^2)销售价钱(万元)
123250
150320
87160
102220

x轴表示面积,y表示售价,则出来一个图:
这里写图片描述

如果再给定一个面积,要计算售价,可以用一条曲线去尽量拟合这些数据。
这里写图片描述

一些概念

  • 房屋销售记录表 - 训练集(training set)或者训练数据(training data),是我们流程中输入数据,一般称为x
  • 房屋销售价格 - 输出数据,一般称为y
  • 拟合的函数(或者称为假设、模型),一般写做y=h(x)
  • 训练数据的条目数(#training set),一条训练数据是由一对输入数据和输出数据组成的。
  • 输入数据的维度(特征的个数,#features),n

典型的机器学习的过程
这里写图片描述
我们用X1,X2…Xn去描述feature里面的分量,比如x1=面积,x2=朝向等等,可以做出一个估计函数:

h ( x ) = h θ ( x ) = θ 0 + θ 1 x 1 + θ 2 x 2 ℎ(x)=ℎ_θ(x)=θ_0+θ_1x_1+θ_2x_2 h(x)=hθ(x)=θ0+θ1x1+θ2x2

θ 称为参数,在这儿的意思是调整feature中每个分量的影响力,就是到底是房屋的面积更重要两袖清风是房屋的地段更重要。如果令X0=1,就可以用向量的方式来表示了:

h θ ( x ) = θ T X ℎ_θ(x)=θ^TX hθ(x)=θTX

我们程序也需要一个机制去评估θ是否比较好,所以说需要对ℎ函数进行评估,一般这个函数称为损失函数(loss function)或者错误函数(error function),描述ℎ函数不好的程度。在下面,做出一个错误函数:

这里写图片描述
这个错误估计函数是去对x(i)的估计值与真实值y(i)差的平方和作为错误估计函数,前面乘上1/2是为了在求导的时候,这个系数就不见了。
如何调整θ以使得J(θ)取得最小值有很多方法,其中有最小二乘法(min square),是一种完全是数学描述的方法,在stanford机器学习开放课最后的部分会推导最小二乘法的公式的来源,这个来很多的机器学习和数学书上都可以找到,下面介绍梯度下降法。

3. 梯度下降法

梯度下降法是按下面的流程来进行的:

  1. 首先对θ赋值,这个值可以是随机的,也可以让θ是一个全零的向量
  2. 改变θ的值,使得J(θ)按梯度下降的方向进行减少。

这里写图片描述

4. 线性回归推导过程

这里写图片描述
问题:去银行贷款,银行会进行评估。假设有两个指标:x1工资 x2年龄,用这两个属性来预测贷款额度。
h(x) 是最终结果,x1指定了权重参数θ1,x2指定了权重参数θ2
这里写图片描述

变化的过程中,多了一个x0,在这里假设x0都等于1。
这里写图片描述

θTx 为转置格式。
实际值与预测值是有差异的。
这里写图片描述
y(i)Tx(i)(i)
假设误差是高斯分布。
这里写图片描述
原因是比较常见的值取到概率大,比较少见的值取到的概率小。
误差ε(i)是独立并且具有相同的分布通常认为服从均值为0方差为θ2的高斯分布。即每个样本与其它样本之间是独立的。银行是有规律可循,它对每个样本的规律是一样的。
这里写图片描述
找到最好的一组权重参数。
计算权重是从误差入手。
其中p(y(i))是可能性。
L(θ) 自然函数,目标让它越大越好。
这里写图片描述
累乘计算。

现在为了计算累乘,使用变换:
这里写图片描述
为什么用log? *
因为:loga
b=loga + logb。
而且加log以后,我们的目标仍然是求最大值。

exp含义是e的多少次幂。
σ是高斯分布。
最后求的J(θ)希望是越小越好。

这里写图片描述
为了求最小值,要求偏导。
这里写图片描述
结果得出我们想要的公式:
θ=(XTX)-1XTy

5. 回归的一般方法

  • 收集数据
  • 准备数据
  • 分析数据
  • 训练算法
  • 测试算法
  • 使用算法

三、OLS

ordinary least sequares 普通最小二乘法

视频地址:http://edu.csdn.net/course/detail/5084

参考文章
百度百科
http://www.cnblogs.com/LeftNotEasy/archive/2010/12/05/mathmatic_in_machine_learning_1_regression_and_gradient_descent.html

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

编程圈子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值