经验风险最小化与模型选择
来源:互联网 发布:linux控制台显示中文 编辑:程序博客网 时间:2024/06/05 01:57
经验风险最小化,是使得<<具有最小训练误差的假设的一般误差>>与<<具有最小一般误差的假设的一般误差>>之间的值尽量小。
这样才能使得我们根据训练数据训练得到的模型有普适性。
可以推导出来二者的差值存在一个上界,可以根据这个上界,得到
<<要达到某一精度至少需要多少训练数据>>或者<<特定数量的训练数据能以多大概率达到某一精度>>,进一步可知存在偏差方差平衡。
这个上界直观上理解,主要与模型的复杂度(如假设的个数、参数数量等)、训练样本数相关,
而且可以直观得得到这个上界与模型复杂度成正相关,与样本数成负相关。
这里关于模型复杂度的度量方法,可以用VC维的方式来表征,而这个上界最终可表示成VC维与样本数的一个关系。
关于Andrew Ng公开课第九讲的笔记整理可以参考博客:https://www.cnblogs.com/madrabbit/p/7095575.html
————————————————————————————————————————————————————
模型选择的目的在于防止欠拟合与过拟合。
如对文本分类,其维度会非常高,这时选择特征是非常重要的。
特征少了,容易欠拟合,特征多了(增加了很多无用特征)容易过拟合。关于特征选择主要的方法有:
1、启发式搜索。有前向与后向算法,前向算法开始设置一个空的特征集合,
然后从所有特征中用交叉验证的方法找到最优的一个特征(即只用一个特征作为输入),
将这个最佳特征添加到特征集中,然后从剩下的集合中依次挑选特征A,并将其与特征集中的所有特征共同作为输入,
用交叉验证选择最佳的A,并添加到特征集中,依次类推,知道选择够需要的特征数为止;
2、过滤特征选择算法。判断每个特征与y的影响度,如皮尔森系数、协方差,此外还有相互信息MI。
根据这些度量值,选择最佳的K个特征。关于K值得确定也可以采用交叉验证的方式进行选择,
依次遍历K的值,直到选择出最佳的K为止。这里的相互信息MI具体形式可以参考Andrew Ng公开课第九讲。
相互信息MI可以理解成p(x,y)与p(x)*p(y)这两个概率的KL距离。
————————————————————————————————————————————————————
生成方法与判别方法:
前者一般需要少量数据。前者需要最大化联合概率似然函数,后者用最大条件概率似然。
生成方法的两种:
高斯判别方法与文本分类(朴素贝叶斯方法)
高斯判别方法假定某一类(y)的数据服从高斯分布,并且类别(y)服从伯努利分布,用最大似然的导数为0求解参数。
高斯判别方法最终结果与logistic回归有联系,最终概率分布于其类似(sigmod函数),但高斯判别模型是一个更强的假设,
即假设了数据分布是高斯分布,即高斯判别方法可以得到logistic回归模型,反之不行。
文本分类与之前博客中的EM算法的文本分类问题一样,并且未知参数也相同,不同的是这里用的方法是最大化似然函数
的方法,而EM的文本分类则用EM的算法迭代求解。
————————————————————————————————————————————————————
关于文本分类问题:对文本进行建模一般有两种方式:
(1)针对一个文本,其建模后的向量长度为字典的长度,对字典中的每一个词,若在这个文本中出现,则其位置为1,
否则为0,这里对应的参数为p(xi | y==1),p(xi | y==0),p(y=1),这里 i 的范围为字典长度。
(2)针对一个文本,其建模后的向量长度为文本的长度,对文本中的每个词,向量对应位置的值为其在字典中的索引index。
这里对应的参数为p(xj=k | y==1),p(xj=k | y==0),p(y=1),这里的概率值与单词所在文本中的顺序无关,第一个概率值
表示在文本中的某一个位置,当y为1时,其单词为字典中第k个单词概率,这个概率与其在文本哪个位置无关。
一般来讲第二种建模方法效果更好。
————————————————————————————————————————————————————
logistic回归与神经网络的分类本质区别:
前者是一个线性分类模型,后者是一个非线性分类模型。
关于logistic是线性的判别方法为:找出其分界面,若分界面为平面,那么logistic回归就为线性分类模型。
logistic回归模型:输入数据x为一个列向量,参数θ的转置为一行向量,则二者乘积为一个数,这个数直接经过sigmod函数进行判别。
简单的神经网络模型:输入数据x为一个列向量,参数w1的转置为一矩阵,则二者乘积为一个列向量,这个列向量中的每个值
都经过sigmod函数后得到一个新的列向量,再用一个行向量参数w2乘以这个新的列向量得到一个数,这个数再经过sigmod函数进行判别。
这里用到了两个步骤的sigmod函数,其分界面不能用一个平面来表示,其为非线性分类模型。
- 经验风险最小化与模型选择
- 经验风险最小化 与 结构风险最小化
- 经验风险最小化 与 结构风险最小化
- 经验风险最小化与结构风险最小化笔记
- 正则化(经验风险最小化与结构风险最小化)
- 经验风险最小化
- 经验风险最小化
- 经验风险最小化
- 经验风险最小化
- 【九】经验风险最小化
- 经验风险最小化
- 经验风险最小化
- 经验风险最小化和结构风险最小化
- 【机器学习】统计知识之经验风险最小化与结构风险最小化
- 损失函数、风险函数、经验风险最小化、结构风险最小化
- 极大似然估计与经验风险最小化
- mixup:超越经验风险最小化
- 损失函数-经验风险最小化-结构风险最小化
- hello world!——VS使用教程
- Refactoring_Improving_the_design_of_existing_code--笔记
- Android异步处理技术
- python学习系列(三)字符串和列表的操作
- 数码管
- 经验风险最小化与模型选择
- 【约瑟夫环】Java实现:100个人开始从1开始报数,每当报数到3,报数3的人离开,求最后留下来人的位置。
- 3---------最短路径--迪杰斯特拉算法
- display属性的深入理解和总结
- 1003. Emergency (25)(经典的dfs)
- Octave教程三:Computing On Data
- 35 个 Java 代码性能优化总结
- Android函数响应式编程——必学的RxJava组合操作符startWith、merge、concat、zip、combineLastest
- 编程语言基本用法总结(Shell,Python,C/C++)