【机器学习】吴恩达机器学习课程(数学推导详解)

吴恩达机器学习课程笔记

机器学习定义

什么是机器学习?
机器学习(Machine Learning):是研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。一个程序被认为能从经验E中学习,解决任务 T,达到性能度量值P,当且仅当,有了经验E后,经过P评判, 程序在处理T时的性能有所提升。

监督学习和无监督学习
监督学习(Supervised Learning):对于数据集中每一个样本都有对应的标签,包括回归(regression)和分类(classification);
无监督学习(Unsupervised Learning):数据集中没有任何的标签,包括聚类(clustering),著名的一个例子是鸡尾酒晚会。实现公式:[W,s,v] = svd((repmat(sum(x.*x,1),size(x,1),1).*x)*x’);

单变量线性回归
模型表示(model representation)
线性回归模型
在这里插入图片描述
给定训练样本(x^i, y^i),其中:i=1,2,…,m,x表示特征,y表示输出目标,监督学习算法的工作方式如图所示:
在这里插入图片描述
假设函数h(hypothesis):是一个从输入x到输出y的映射
在这里插入图片描述

代价函数

代价函数(cost function)J(θ)J(\theta)J(θ),通常使用平方误差函数,如下:
J(θ0,θ1)=12m∑mi=1(h(xi)−yi)2,m为训练样本的数量。

训练的目标为最小化代价函数
在这里插入图片描述

代价函数的另外一个图形表示是等高图,如图所示
在这里插入图片描述

梯度下降

在这里插入图片描述
α为学习速率(learning rate)

在这里插入图片描述
如果α太小,梯度下降会变得缓慢;如果α太大,梯度下降可能无法收敛甚至发散

线性回归中的梯度下降

在这里插入图片描述
梯度下降的每一步遍历的所有数据集中的样例,又叫“batch” Gradient Descent Algorithm。

凸函数(convex function)

多变量线性回归

在这里插入图片描述

特征缩放(feature scaling)

目的:保证特征处于相似的尺度上,有利于加快梯度下降算法运行速度,加快收敛到全局最小值
方式:
在这里插入图片描述

学习率(learning rate)

  • “debugging”:如何确保梯度下降正确运行;
  • 如何正确选择学习率。
  • 如果α太小:收敛慢
  • 如果α太大:每一次迭代过程中J(θ)将会不断的越过最小值,无法收敛,J(θ)如下图所示:

在这里插入图片描述
在这里插入图片描述

特征和多项式回归

举例:房价预测问题
在这里插入图片描述

多项式回归(polynomial regression):
二次模型:
在这里插入图片描述
三次模型:
在这里插入图片描述
更恰当的模型:
在这里插入图片描述

正规方程(normal equation)

在这里插入图片描述
推导过程如下:
在这里插入图片描述
正规方程存在条件:

  • X^T X是可逆矩阵,若不可逆,可计算广义可逆矩阵。
    在这里插入图片描述

逻辑回归(logistic regression)

假设表示

在这里插入图片描述
决策界限(Decision Boundary)
在这里插入图片描述

代价函数(cost function)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
高级优化算法:

  • 共轭梯度算法
  • BFGS
  • L-BFGS
  • 优点:无需人工选择参数α;运算速度比梯度下降更快
  • 缺点:更加复杂

正则化(regularization)

欠拟合和过拟合(underfitting and overfitting)

欠拟合
在这里插入图片描述
欠拟合,高偏差:说明没有很好的拟合训练数据
解决办法:增加特征,如增加多项式

过拟合
在这里插入图片描述
过拟合,高方差:拟合训练数据过于完美,J(θ)≈0,导致模型的泛化能力很差,对于新样本不能准确预测;
解决办法:

  • 减少特征个数
    a)人工保留合适的特征
    b)采用模型选择算法
  • 正规化
    a)保留所有特征,减小参数θj的维度

正则化代价函数

在这里插入图片描述

线性回归和逻辑回归的正则化

在这里插入图片描述
在这里插入图片描述

神经网络学习

模型表示
在这里插入图片描述
上图代表单个的神经元。神经网络即是一组神经元。典型的三层神经网络如下图所示:
在这里插入图片描述
在这里插入图片描述

神经网络前向传播

在这里插入图片描述

代价函数

在这里插入图片描述
如图:
在这里插入图片描述
在这里插入图片描述

反向传播:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

展开参数

在这里插入图片描述

梯度检验

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

随机初始化

在这里插入图片描述

together

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

机器学习细节

模型选择(model selection)

可以依据训练误差和测试误差来评估假设hθ(x) ;
一般来说,我们将数据集划分成训练集(60%)、验证集(20%)和测试集(20%);
在训练集上我们学习参数θ:minJ(θ);
计算训练误差、验证误差:
在这里插入图片描述

方差和偏差(variance VS bias)

在这里插入图片描述
一般来说,欠拟合会产生高偏差;过拟合过产生高方差;
具体来说,当模型欠拟合时,训练误差和验证误差都会较大;当模型过拟合时,训练误差很小,然而验证误差很大,如下图:
在这里插入图片描述
如何处理高方差和高偏差问题呢?
一般来说,加入合适的正则化项可以有效地避免过拟合(即高方差)
在这里插入图片描述
当正则化参数λ\lambdaλ较大时,θj≈0(除θ0外),假设函数趋于直线,因而会造成高偏差的问题,导致欠拟合;
当正则化参数λ\lambdaλ较小时,正则化项不起作用,模型会变得过拟合。如图:
在这里插入图片描述
一般的,对于高偏差问题(欠拟合):

增加特征个数
增加多项式特征
降低λ

对于高方差问题(过拟合):

增加训练样本
减少特征个数
增加λ
对于神经网络来说,参数越少,越有可能欠拟合;参数越多,网络结构越复杂,越有可能过拟合,应该加入正则化项。

机器学习系统设计

不对称分类的误差评估(skewed classes)
查准率和召回率(Precision和Recall)
y=1 in presence of rare class that we want to detect;
在这里插入图片描述
在这里插入图片描述

支持向量机

优化目标
复习:
在这里插入图片描述
对逻辑回归的代价函数进行修改:
在这里插入图片描述
在这里插入图片描述

间隔最大化

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
决策问题转换为:在这里插入图片描述

核函数

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

逻辑回归和SVM比较

  • 如果特征个数n远远大于训练样本个数,建议使用逻辑回归或者线性SVM
  • 如果特征个数n较小,训练样本个数适当,建议使用高斯核SVM
  • 如果特征个数小,训练样本非常大,建议增加更多特征或者使用逻辑回归或线性SVM
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值