这节课学习了第一节剩下的部分和第二节课
一、了解机器学习
机器学习(machine learning,ML)是一类强大的可以从经验中学习的技术。通常采用观测数据或与环境交互的形式,机器学习算法会积累更多的经验,其性能也会逐步提高。
➢监督学习
监督学习(supervised learning)擅⻓在“给定输⼊特征”的情况下预测标签。每个“特征-标签”对都称为一个样本(example)。我们的目标是生成一个模型,能够将任何输⼊特征映射到标签(即预测)。
二、深度学习
深度学习的发展、深度学习的成功案例、深度学习的成功领域
三、图灵测试
人工智能的先驱:艾伦·麦席森·图灵
英国数学家、逻辑学家、计算机科学之父、人工智能之父
“一个人在不接触对方的情况下,通过一种特殊的方式,和对方进行一系列的问答。如果在相当长时间内,他无法根据这些问题判断对方是人还是计算机,那么就可以认为这个计算机是智能的”。
---Alan Turing [1950]
《Computing Machinery and Intelligence》
四、pytorch介绍
PyTorch是由Meta AI(Facebook)人工智能研究小组开发的一种基于Lua编写的Torch库的Python实现的深度学习库,目前被广泛应用于学术界和工业界,PyTorch在API的设计上更加简洁、优雅和易懂。因此本课程我们选择PyTorch来进行开源学习。
第二节课
线性回归和softmax回归
假设 1:影响房价的关键因素:卧室数目,卫浴数目和房子大小,分别用x_beds,x_baths,x_area表示
假设 2:销售价格是关键因素的加权总和:
price=w_beds x_beds+w_baths x_baths+w_area x_area+b
w称为权重,决定了每个特征对我们预测值的影响
b称为偏置
给予 n 维输入,x=[x_1,x_2,…,x_n ]^T
线性方法有 n 个权重和偏差:
w=[w_1,w_2,…,w_n ]^T,b
输出是输入的加权总和:
y┴̂=w_1 x_1+w_2 x_2+⋯+w_n x_n+b
点积形式:
矩阵-向量乘法表示:
矢量化版本:y┴̂=<w,x>+b
衡量预估质量
损失函数能够量化目标的实际值与预测值之间的差距,例如房屋售价和估价。
回归问题最常用的损失函数是平方损失
l(y,y┴̂)=1∕2(y-y┴̂ )^2
y 作为真实值, y┴̂ 作为估计值
收集多个数据点以训练参数(如 在过去6个月内出售的房屋),这个叫做训练数据集 。
训练数据集越大越好
假设有 n 个房屋
X=[x_0,x_1,…,x_n ]^T,y=[y_0,y_1,…,y_n ]^T
还学习了基础优化算法
梯度法
神经网络在学习时找到最优的参数(权重和偏置)——指损失函数取最小值时的参数。我们不知道他在何处能取得最小值,所以使用梯度来寻找函数的最小值的方法就是梯度法。
严格的讲,梯度指示的反向是各点处的函数值减小最多的方向
像 这样的由全部变量的偏导数汇总而成的向量称为梯度(gradient)。
我们发现梯度指向函数的“最低处”(最小值),就像指南针一样,所有的箭头都指向同一点。其次,我们发现离“最低处”越远,箭头越大。
!!! 梯度指示的反向是各点处的函数值减小最多的方向,所以无法保证梯度所指的方向就是函数的最小值或者真正应该前进的方向。
但沿着它的方向能最大限度的减小函数的值。所以在寻找函数的最小值的位置任务中,以梯度的信息为线索,决定前进的方向。
流程:在梯度法中,函数的取值从当前位置沿着梯度方向前进一定的距离,然后在新的方向重新求梯度,再沿着新梯度的方向前进,如此反复,不断的沿梯度方向前进。
小批量随梯度下降
计算整个训练数据的梯度太昂贵了,一个深度神经网络模型需要几分钟到几小时
解决方案: 随机抽样b个样本i_1,i_2,…,i_b来估算损失
1/b ∑┬(i∈I_b ) l(x_i,y_i,w)
b是批量大小,另一个重要的超参数
选择批量
批量值不能太小:批量值太小,难以充分利用计算资源
批量值不能太大:批量值太大,浪费计算资源;
问题: 估计一个真正的值
模型:y=⟨w,x⟩+b
损失: 平方损失 l(y,y┴̂)=(y-y┴̂ )^2
小批量随机梯度(mini-batch SGD)学习
选择一个起点
重复
计算梯度
更新参数
总结
梯度下降通过不断的沿着反梯度方向更新参数求解
小批量随机梯度下降是深度学习默认的求解算法
两个重要的超参数是批量大小和学习率
归回和分类
回归估计一个连续值
分类预测一个离散类别
回归
单个连续数值输出
自然区间
与真实值的区别作为损失
分类
通常多个输出
输出的i表示预测为第i类的置信度
输出层的神经元数量需要根据待解决的问题来决定。对于分类问题,输
出层的神经元数量一般设定为类别的数量。
Softmax回归
Softmax回归是一个多类分类模型
使用Softmax操作得到每个类的预测置信度
Huber 损失
l(y,y^')=1/2(y-y^' )^2
损失函数
l(y,y^')=|y-y^' |
交叉熵损失
H(y,y┴̂)=-(∑┬(i=1))┴n y_i log(y┴̂_i)=-log(y┴̂_i)