机器学习
2024-06-30 16:38:40 12 举报
AI智能生成
回归、决策树和随机森林、支持向量机、聚类
作者其他创作
大纲/内容
支持向量机SVM
概念
支撑向量:距离决策边界最近的几个向量,使得决策值为[-1,1]
非支撑向量:移动决策边界不会第一接触到的向量,决策值>1或<-1
非支撑向量:移动决策边界不会第一接触到的向量,决策值>1或<-1
间隔:在正负支撑向量之间的间隔距离,即过渡带宽度d
线性可分SVM:过渡带无数据
线性SVM:加入松弛因子,使得过渡带可存在数据
非线性SVM:加入核函数,使得过渡带非线性
线性SVM:加入松弛因子,使得过渡带可存在数据
非线性SVM:加入核函数,使得过渡带非线性
线性核:C增大,正确率提高、泛化能力降低(更容易过拟合)
高斯核:C同上,γ增大同C,同时可增加精度
高斯核:C同上,γ增大同C,同时可增加精度
泛化能力:防止过拟合能力,用于衡量决策边界的优劣
(处于支撑向量之间的决策边界在训练数据上的正确率都为100%)
(处于支撑向量之间的决策边界在训练数据上的正确率都为100%)
|w1x1+w2x2....+c|
每一个样本点到决策边界l1的直线距离d1=----------------------的最小值
sqrt(w1^2+w2^2...)
求出每一条决策边界l的直线距离d,其中最大的d即具有最大泛化能力
即间隔最大的决策边界,泛化能力最大
每一个样本点到决策边界l1的直线距离d1=----------------------的最小值
sqrt(w1^2+w2^2...)
求出每一条决策边界l的直线距离d,其中最大的d即具有最大泛化能力
即间隔最大的决策边界,泛化能力最大
线性可分支持向量机
y|w1x1+w2x2....+c|
原目标函数:使得----------------------最大的w和c
sqrt(w1^2+w2^2...)
原目标函数:使得----------------------最大的w和c
sqrt(w1^2+w2^2...)
约束条件:y(w1x1+w2x2+.....+c)≥1
在约束条件下:
新目标函数:使得1/sqrt(w1^2+w2^2+.....)最大的w和c
即求使得1/2*(w1^2+w2^2+.....)最大的w和c
新目标函数:使得1/sqrt(w1^2+w2^2+.....)最大的w和c
即求使得1/2*(w1^2+w2^2+.....)最大的w和c
拉格朗日乘子法:L(w,c,α)
→w=Σαiyixi
→0=Σαiyi
→w=Σαiyixi
→0=Σαiyi
线性支持向量机
加入松弛因子使得约束条件改变:yi(w·xi+b)≥1-εi
目标函数:w,b=min(1/2*||w||^2)+CΣεi
核函数
多项式核函数(x1·x2+c)^d
高斯核RBF函数:exp(-γ·||x1-x2||^2)
Sigmoid核函数:tanh(x1·x2+c)
回归算法
线性回归
代价函数J(θ,b)=1/2m*Σ(i=1→m)(y^i-yi)²
梯度下降(θi'=θi-α*d(J)/dθi=θi-α/m*Σ(i=1→m)(y^i-yi)²*xi
b=b-α*d(J)/db)
θ' = =θ - α/m*XT(y^-y)
注意:θ和b参数应同步更新
b=b-α*d(J)/db)
θ' = =θ - α/m*XT(y^-y)
注意:θ和b参数应同步更新
正则化后代价函数J(θ,b)=1/2m*Σ(i=1→m)(y^i-yi)²+λ/2m*(Σ(i=1→m)θi)
梯度下降为θi'=θi-α*(d(J)/dθi+λ/2m*θi)=(1-α*λ/m)θi-α/m*Σ(i=1→m)(y^i-yi)²*xi)
梯度下降为θi'=θi-α*(d(J)/dθi+λ/2m*θi)=(1-α*λ/m)θi-α/m*Σ(i=1→m)(y^i-yi)²*xi)
多项式回归
多特征向量化(NumPy:array、matrix、mat)
特征缩放:使用归一化加快梯度下降过程
逻辑回归
模型:g(zi)=g(θix+b)=1/(1+e-(θix+b))
决策边界:zi=θix+b=0,分类的阈值
损失函数Li= {-log(g(zi)) if y=1
{-log(1-g(zi)) if y=0
或y(-log(g(zi)))+(1-y)(-log(1-g(zi)))
{-log(1-g(zi)) if y=0
或y(-log(g(zi)))+(1-y)(-log(1-g(zi)))
代价函数J = 1/mΣ(i=1→m)Li
梯度下降:与线性回归类似,对θ和b求导(即为对决策边界的参数)
正则化后代价函数J(θ)=1/m(Σ(i=1→m)Li+λ/2Σ(i=1→m)θi)
梯度下降与线性回归类似
梯度下降与线性回归类似
多类softmax:a=e^z/Σe^z
常见概念
标签(table):即输出、因变量
训练集(training examples):即训练样本
样本数(number of training examples)
假设(hypothesis):也称模型,即拟合出来的函数
代价函数(cost function):又称成本函数,整体样本的损失值的平均数
学习率(learning rate):一个介于0-1的数
特征缩放(feature scaling):即归一化,用于加速梯度下降
学习曲线(learning curve):可视化训练进度,梯度下降收敛结果
特征工程(feature engineering):通过定义新的合适的特征以获得更好的模型
过拟合(overfitting):过于拟合训练数据导致测试数据差距很大或不能很好的预测实际数据
解决过拟合:1、使用更多的训练样本。2、选择合适的重要的特征,而非所有特征。3、正则化,减小参数
解决过拟合:1、使用更多的训练样本。2、选择合适的重要的特征,而非所有特征。3、正则化,减小参数
正则化(regularized):代价函数J中加入λ/2mΣ(i=1→m)θi,对所有特征进行惩罚以减小过拟合,λ为正则化参数
激活函数:sigmoid函数、REKU函数、Linear
聚类
相似度计算方法
闵可夫斯基距离/欧氏距离dist(X,Y)=(Σ|xi-yi|^p)^1/p
适用于连续数值数据
计算两个数据之间距离:两点之间直线……
杰卡德相似系数J(A,B)=|A∩B|/|A∪B|
适用于二元数据或集合数据
衡量集合的相似性
余弦相似度cos(θ)=aTb/|a|·|b|
适用于向量数据
评估向量方向而非大小
Pearson相似系数ρxy=cov(X,Y)/σxσy
适用于连续数值数据
衡量两个变量之间线性相关性,范围-1~1
相对熵(KL距离)D(p||q)=Σp(x)log[p(x)/q(x)]=Ep(x)log[p(x)/q(x)]
适用于概率分布
衡量概率分布之间的差异
Hellinger距离 Dα(p||q)=2/(1-α^2) * (1-∫p(x)^(1+α /2)* q(x)^(1-α /2) dx)
适用于概率分布
衡量两个概率分布之间的相似性,范围0~1
K-MEANS
原理步骤
选择K个原始点,计算之间的平分线,分成多个区域
对多个区域重新计算中心点作为新的起始点
利用新的七十点计算平分线,再次分为多个区域
多次迭代后,中心点几乎不再改变,平分线将其分为多个区域,完成分类
初值敏感:选择初值之间距离较远的原始点(K-MEANS++)
Mini-batch K-MEANS:只取其中一部分数据进行K-MEANS聚类加速算法
适用于高斯分布,需事先给出K,对噪声和孤立点敏感,不适用与非凸形状的簇,可用作其他聚类方法的基础算法
层次聚类:对数据进行层次分解
凝聚的层次聚类AGNES算法
自底向上,将每个对象作为一个簇,合并这些簇越来越大,直到达到某个条件
分裂的层次聚类DIANA算法
自顶向下,将所有对象置于一个簇,然后细分越来越小,直到达到某个条件
密度聚类:样本点密度大于某个值添加到一簇
克服距离的算法:只能发现“类圆形”聚类,对噪声数据不敏感
DBSCAN
核心对象:在范围<ε存在至少m个点,则该点为核心对象
非核心对象,处在核心对象范围内,且以自身为中心范围<ε内点数<m
密度相连,:两个核心对象范围内存在共同对象点
簇定义:密度相连的点的最大集合
可通过调参,去除噪声
密度最大值算法
密度计算:计算每个点的局部密度
密度峰:计算每个点到密度更高的点的最小距离
聚类中心:具有高局部密度且距离密度更高点最远的点
ρ大δ大:聚类中心
ρ大δ小:大多数簇内的点
ρ小δ大:噪声
ρ大δ小:大多数簇内的点
ρ小δ大:噪声
决策树和随机森林
ID3算法:使用信息增益进行特征选择
H(p)=Σp(x)*log2(p(x))
当为2项分布时H(p)=-(1-p)*log2(1-p)-p*log2(p)
当为2项分布时H(p)=-(1-p)*log2(1-p)-p*log2(p)
信息增益
gain(D,A)=H(D)-H(D/A)
根据条件A对数据集D进行分类,得到的平均熵对比未分类的D熵减少的值
C4.5算法:使用信息增益率进行特征选择
信息增益率:gainr(D,A)=gain(D,A)/H(A)
CART算法:使用Gini系数进行特征选择
Gini(p)=Σp*(1-p)
过拟合解决
随机森林:通过不同随机进行分类得到不同的决策树(或其他分类)
样本随机
特征随机
剪枝
预剪枝
后剪枝
样本不均衡:假设A类比B类多
A类欠采样
B类过采样
B类数据合成
代价敏感学习:降低A类权重,提高B类权重
样本间相似度
决策树或随机森林中:S=俩样本同时出现的叶子数/总叶子数
特征重要度
信息增益大、Gini系数大
强化学习概念
Agent智能体
Policy Function策略函数,描述智能体对环境的行为决策: state -> action
Value Function价值函数,评估在特定状态、动作下Agent能获得的未来的累计奖励: state -> value 或者 (state, action) -> value
State Value Function状态值函数V(s):在给定环境、策略下,输入状态s
贝尔曼公式V(s) = Prob * (Reward + discount* V(s'))
Action Value Function动作值函数Q(s,a):在给定环境、策略下,输入状态s、动作a之后
Q(S,a) = Prob * (reward + discount * V(S'))
Action-Advantage Function动作优势函数A(s,a):给定状态s下采取动作a相对于采取其他可能动作的优势A(s,a)=Q(s,a)-V(s)
Return回报:Agent在Environment中获得的Reward总和
Expected Return期望回报:智能体可获得的未来累计奖励的期望值,可用价值函数表示
Environment环境
State状态: 用于表达环境状态的一组变量 (observation)
Action行动:决策时可供选择的行动
Reward奖励:环境收到agent的action后的反馈信号
Transition Function转移函数,转移到下个状态的概率分布:(state, action) -> new state
Reward Function奖励函数: (state, action) -> reward
Time Step: Agent和environment的一次交互。(观察state -> action -> reward & new state)
Discount:对未来回报的折现,有利于更准确的评估。折现率反映了agent的偏好。
MDP: 是定义环境如何运转的引擎(命运的齿轮)。上述所有元素定义了一个MDP。
探索和利用
ε_greedy策略:部分时间探索,部分时间利用
进阶:早期更多探索,晚期更多利用
UCB策略:基于Q值和未探索程度选择最优action
公式:(x_i ) ̅+√((2 lnn)/n_i )
x_i为观测到的第i个决策的平均回报,代表期望汇报
n_i为目前为止选择第i个决策的次数
n为目前为止做出的决策总数
√((2 lnn)/n_i )表示探索程度,可理解为x_i的不确定程度
Softmax策略:基于Q值随机选择不同action,高Q值action选中概率越大(e^xi/Σe^xi)
价值函数算法
蒙特卡罗方法:大量模拟,用已发生比例当作可能发生概率
SARSA:Q(s,a)=Q(s,a)+α*(r(s,a)+γ*Q'(s,a)-Q(s,a))
Q-learning:Q(s,a)=Q(s,a)+α*(r(s,a)+γ*max(Q'(s,a))-Q(s,a)
0 条评论
下一页
为你推荐
查看更多