| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 机器学习问题汇总(分类篇) -> 正文阅读 |
|
[人工智能]机器学习问题汇总(分类篇) |
本篇博文主要介绍机器学习里面常遇到的一些分类相关问题。
监督学习的训练数据拥有标记信息,无监督学习的没有标记信息,分类和回归是监督学习的代表,聚类是无监督学习的代表。
第一种情况是数据存在缺失值,对缺失值的处理方法有:删除、统一值填充、统计值填充、前后向值填充、插值法填充、建模预测填充和具体分析几种方法。
用于衡量同一个随机变量 X X X的两个分布 p ( x ) p(x) p(x)和 q ( x ) q(x) q(x)之间的差异, p ( x ) p(x) p(x)常用于描述样本的真实分布, q ( x ) q(x) q(x)用于表示预测的分布。 D K L p ∣ ∣ q ) = ∑ i = 1 n p ( x i ) l o g ( p ( x i ) q ( x i ) ) D_{KL}p||q)=\sum_{i=1}^{n}p(x_i)log(\frac{p(x_i)}{q(x_i)}) DKL?p∣∣q)=∑i=1n?p(xi?)log(q(xi?)p(xi?)?) KL散度的值越小表示两个分布越接近。
把KL散度的公式变形,得到: D K L p ∣ ∣ q ) = ∑ i = 1 n p ( x i ) l o g ( p ( x i ) ) ? ∑ i = 1 n p ( x i ) l o g ( q ( x i ) ) = ? H ( p ( x ) ) + [ ? ∑ i = 1 n p ( x i ) l o g ( q ( x i ) ) ] D_{KL}p||q)=\sum_{i=1}^{n}p(x_i)log(p(x_i))-\sum_{i=1}^np(x_i)log(q(x_i))\\=-H(p(x))+[-\sum_{i=1}^np(x_i)log(q(x_i))] DKL?p∣∣q)=∑i=1n?p(xi?)log(p(xi?))?∑i=1n?p(xi?)log(q(xi?))=?H(p(x))+[?∑i=1n?p(xi?)log(q(xi?))] 前半部分是 p ( x ) p(x) p(x)的熵,后半部分是交叉熵 H ( p , q ) = ? ∑ i = 1 n p ( x i ) l o g ( q ( x i ) ) H(p,q)=-\sum_{i=1}^np(x_i)log(q(x_i)) H(p,q)=?∑i=1n?p(xi?)log(q(xi?))
s i g m o i d sigmoid sigmoid函数: σ ( x ) = 1 1 + e ? x \sigma(x)=\frac{1}{1+e^{-x}} σ(x)=1+e?x1? 其图像如下: σ ( f ( x ) ) = 1 1 + e ? w T x \sigma(f(x))=\frac{1}{1+e^{-w^T}x} σ(f(x))=1+e?wTx1? 损失函数是衡量真实输出和模型输出的差别。 通过两边取对数把连乘变为连加的形式,即: 这里损失函数的值等于事件发生的总概率,希望它越大越好,按照习惯吧,都是最小化损失函数,可以在 F ( w ) F(w) F(w)前面加个负号。
都是广义上的线性回归。
方法一: OvO:转化为多个二分类 方法二:
支持向量机SVM就是一种二类分类模型,基本模型是定义在特征空间上的间隔最大的线性分类器,其学习策略就是间隔最大化。
硬间隔表达式:
对 令 θ i = m a x α i ≥ 0 L ( w , b , α ) \theta_i=max_{\alpha_i\geq0}L(w,b,\alpha) θi?=maxαi?≥0?L(w,b,α),现在目标就是最小化 θ i \theta_i θi? 分别求
L
(
w
,
b
,
α
)
L(w,b,\alpha)
L(w,b,α)对
w
w
w和
b
b
b的偏导: 最后代入拉格朗日函数可得: 所以对偶问题为:
构造一个最优化的超平面,以充分大的确信度对训练数据进行分类,希望对于离超平面最近的点也有足够大的确信度将它们分开。
采用hinge损失时,损失函数为: 1 2 ∣ ∣ w ∣ ∣ 2 + C ∑ i = 1 m m a x ( 0 , 1 ? y i ( w T x i + b ) ) \frac{1}{2}||w||^2+C\sum_{i=1}^{m}max(0,1-y_i(w^Tx_i+b)) 21?∣∣w∣∣2+C∑i=1m?max(0,1?yi?(wTxi?+b)) 指数损失:
l
e
x
p
(
z
)
=
e
x
p
(
?
z
)
l_{exp}(z)=exp(-z)
lexp?(z)=exp(?z)
核函数的作用就是把样本从原始空间映射到一个更高维的特征空间,使得样本在这个特征空间内线性可分。如果原始空间是有限维的,即属性数有限,那么一定存在一个高维特征空间使样本可分。
线性核:主要用于线性可分、特征维数高的情形,参数少,速度快,对于一般数据,分类效果已经很理想。
高斯核函数: 代入上式第三项得: 即高斯核函数将输入空间映射到了无穷多维空间。
SVM只和分类界限上的支持向量点有关,换而言之只和局部数据有关。
都是有监督的分类算法。
欧式距离: 闵可夫斯基距离:(欧式距离的推广)
r
=
1
r=1
r=1时,称为街区距离(或曼哈顿距离,
L
1
L_1
L1?范数) 杰卡德相似系数(Jaccard): 余弦相似度(cosine similarity): Pearson相似系数(是对象之间线性联系的度量): 相对熵(K-L距离): Hellinger距离:
在数据不均衡时,准确度accuracy这个评价指标最不标准,参考意义不大。
ID3算法:信息增益 C4.5算法:信息增益率 CART算法:基尼指数 对于二类分类问题,若样本点属于第1个类的概率是
p
p
p,则概率分布的基尼指数为: 对于给定的样本集合
D
D
D,其基尼指数为: 如果样本集合
D
D
D根据特征
A
A
A是否取某一可能值
a
a
a被分割为
D
1
D_1
D1?和
D
2
D_2
D2?两部分,即: 则在特征
A
A
A的条件下,集合
D
D
D的基尼指数为: 基尼指数 G i n i ( D ) Gini(D) Gini(D)表示集合 D D D的不确定性,基尼指数 G i n i ( D , A ) Gini(D,A) Gini(D,A)表示经 A = a A=a A=a分割后集合 D D D的不确定性,基尼指数越大,样本集合的不确定性也就越大。
朴素贝叶斯法分类时,对给定的输入
x
x
x,通过学习到的模型计算后验概率分布
P
(
Y
=
c
k
∣
X
=
x
)
P(Y=c_k|X=x)
P(Y=ck?∣X=x),将后验概率最大的类作为
x
x
x的类输出,后验概率计算根据贝叶斯定理进行: 由条件独立性假设可得:
朴素贝叶斯对条件概率分布作了条件独立性的假设。
没有最好的分类器,只有最合适的分类器。 决策树应用场景:因为能够生成清晰的树状图,当希望更好的理解数据时可使用决策树 逻辑回归应用场景:需要具有概率意义的输出,LR的参数代表每个特征对输出的二影响,可解释性强。LR的计算量小,存储占用低,可以在大数据场景中使用。LR虽然效果一般,但模型清晰。 贝叶斯分类器应用场景:需要一个比较容易解释,而且不同维度之间相关性较小时,可以高效处理高维数据,但结果不能保证 支持向量机应用场景:在很多数据上表现优秀,可以尝试。 KNN应用场景:需要一个特别容易解释的模型的时候 随机森林应用场景:一种集成方法,能够解决大规模数据集的问题,还可以给变量重要性进行排序,刚拿到数据集不知道用什么方法的时候,也可尝试随机森林。
典型的生成模型有:朴素贝叶斯法和隐马尔可夫模型。 典型的判别模型有:k近邻法、感知机、决策树、逻辑斯蒂回归模型、最大熵模型、支持向量机、提升方法和条件随机场。 本文参考文献: |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 6:21:18- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |