机器学习基石笔记:15 Validation】的更多相关文章

这节课是最后一节,讲的是做机器学习的三个原则. 第一个是Occan's razor,即越简单越好.接着解释了什么是简单的hypothesis,什么是简单的model.关于为什么越简单越好,林老师从大致思想 上进行了解释:如果一个简单的模型能对数据分得很好,那说明输入的资料是有规律的资料(这被称为资料具有显著性significant):对于复杂的模型来说,不是资料怎么样,都可以分的较好,这样 的资料不具备显著性.那做机器学习的方向就是,先做简单的线性模型,不行再做其他的. 第二个是sampling…
一.模型选择问题 如何选择? 视觉上 NO 不是所有资料都能可视化;人脑模型复杂度也得算上. 通过Ein NO 容易过拟合;泛化能力差. 通过Etest NO 能保证好的泛化,不过往往没法提前获得测试资料. 折中: 将样本资料分为两部分,一部分用作训练,一部分用作验证. 二.验证 利用验证集的模型选择: 利用所有训练数据训练所有模型,得出各个模型下的最优假设; 计算验证数据在各个模型最优假设下的代价值,选择最小代价值的模型; 利用全部样本数据训练选出来的模型,得到最优假设. 如何选择K? 通常,…
原文地址:https://www.jianshu.com/p/3f7d4aa6a7cf 问题描述 程序实现 # coding: utf-8 import numpy as np import math import matplotlib.pyplot as plt def sign(x): if(x>=0): return 1 else: return -1 def read_data(dataFile): with open(dataFile,'r') as f: lines=f.readli…
这节课是接着上节的正则化课程的,目的也是为了防止overfitting. 第一小节讲了模型的选择,前面讲了很多模型,那么如何做出正确的选择呢?我们的目标是选择最小的Eout目标函数.首先应避免视觉化选择,因为高维. 假如选Ein最小的化,则会出现过拟合.虽然能用test数据选择最好的,但通常test数据是不可得的.然后提出了一个办法,在训练数据中留出一部分,作为test,称为validation data 第二节中,要想让Eval与Eout产生连接,就在数据集中随即抽样K个样本.这样在N-K个样…
原文地址:https://www.jianshu.com/p/bd7cb6c78e5e 什么时候适合用机器学习算法? 存在某种规则/模式,能够使性能提升,比如准确率: 这种规则难以程序化定义,人难以给出准确定义: 存在能够反映这种规则的资料. 所以,机器学习就是设计算法\(A\),从包含许多假设的假设集合\(H\)里,根据所给的数据集\(D\),选出和实际规则\(f\)最为相似的假设\(g\). \(g\)和\(f\)相似度的衡量是基于所有数据,不仅仅是\(D\). \(Learning \ M…
原文地址:http://www.jianshu.com/p/5b4a64874650 问题描述 程序实现 # coding: utf-8 import numpy as np import matplotlib.pyplot as plt import time def read_data(dataFile): with open(dataFile, 'r') as file: data_list = [] for line in file.readlines(): line = line.st…
原文地址:https://www.jianshu.com/p/f2f4d509060e 机器学习是设计算法\(A\),在假设集合\(H\)里,根据给定数据集\(D\),选出与实际模式\(f\)最为相近的假设\(g\)(\(g\)可能与\(f\)相同,也可能不同). 那什么情况下学习是可行的?即保证\(g\)和\(f\)是相似的. 数据集内的表现\(g\)约等于\(f\); \(g\)在数据集外的表现约等于\(g\)在数据集内的表现. 结合1.2可保证,由算法在给定数据集上学习到的\(g\)(即数…
泛化能力差和过拟合: 引起过拟合的原因: 1)过度VC维(模型复杂度高)------确定性噪声: 2)随机噪声: 3)有限的样本数量N. 具体实验来看模型复杂度Qf/确定性噪声.随机噪声sigma2.样本数量N对过拟合的影响: 尽量避免过拟合: 1)从简单模型开始:降低模型复杂度: 2)data cleaning/data pruning:去noise: 3)data hinting(线索):增加样本数量: 4)regularization:正则化: 5)validation:验证.…
原文地址:http://www.jianshu.com/p/311141f2047d 问题描述 程序实现 13-15 # coding: utf-8 import numpy as np import numpy.random as random import matplotlib.pyplot as plt def sign(x): if(x>=0): return 1 else: return -1 def gen_data(): x1=random.uniform(-1,1,1000) x…
上节课介绍了机器学习可以分为不同的类型.其中,监督式学习中的二元分类和回归分析是最常见的也是最重要的机器学习问题.本节课,我们将介绍机器学习的可行性,讨论问题是否可以使用机器学习来解决. 一.Learning is Impossible 首先,考虑这样一个例子,如下图所示,有3个label为-1的九宫格和3个label为+1的九宫格.根据这6个样本,提取相应label下的特征,预测右边九宫格是属于-1还是+1?结果是,如果依据对称性,我们会把它归为+1:如果依据九宫格左上角是否是黑色,我们会把它…