train/dev/test的划分 我们在前面的博文中已经提到了train/dev/test的相关做法.比如不能将dev和test混为一谈.同时要保证数据集的同分布等. 现在在train/dev/test的划分中,我们依然要旧事重提关于same distribution即同分布的概念. 假设我们现在有一种商品来自8个国家,如果我们将四个国家作为train和dev,将另外四个国家作为test,这种做法显然是错的. 因为我们建立的模型的靶点是为了逼近前四个国家的结果,但是在真正测试的时候我们移动了…
orthogonalization 正交化的概念就是指,将你可以调整的参数设置在不同的正交的维度上,调整其中一个参数,不会或几乎不会影响其他维度上的参数变化,这样在机器学习项目中,可以让你更容易更快速地将参数调整到一个比较好的数值. 打个比方,当你开车的时候假设有一个按钮1:0.3angle-0.8speed 还有一个按钮2:2angle+0.9speed 那么理论上来说通过调整这两个按钮,可以得到你想要的角度和速度,但是在实际操作中我们肯定希望角度和速度的控制方式是单独且互不影响的,这就是正交…
总结一下就是在提升偏差的方面(即贝叶斯最优误差和训练误差的差距) 1.尝试更大更深的网络 2.加入优化算法比如前面提过的momentum.RMSprop.Adam等 3.使用别的神经网络架构比如RNN/CNN等等 在提升方差的方面(即训练误差和测试误差的差距) 1.加大训练集的样本数量 2.正则化操作,如L2.dropout.Data Augmentatio数据扩增.early stop等 3.使用别的神经网络架构比如RNN/CNN等等…
从某种角度来说,已知的人类最佳表现其实可以被当做贝叶斯最优错误,对于医学图像分类可以参见下图中的例子. 那么如何理解超过人类表现,在哪些领域机器已经做到了超越人类呢?…
可避免偏差: 总结一下就是当贝叶斯最优误差接近于训练误差的时候,比如下面的例子B,我们不会说我们的训练误差是8%,我们会说我可避免偏差是0.5%.…
结合吴恩达老师前面的讲解,可以得出一个结论: 在机器学习的早期阶段,传统的机器学习算法在没有赶超人类能力的时候,很难比较这些经典算法的好坏.也许在不同的数据场景下,不同的ML算法有着不同的表现. 但是在接近人类表现,甚至超越人类表现逼近bayes optimal error的时候,深度学习就展现了其优越的性能和巨大的潜力,同样如果把横轴time换做数据量,其实可以得出一样的结论,因为时间的发展也是数据规模的发展.…
单一数字评估指标: 我们在平时常用到的模型评估指标是精度(accuracy)和错误率(error rate),错误率是:分类错误的样本数站样本总数的比例,即E=n/m(如果在m个样本中有n个样本分类错误),那么1-a/m就是精度.除此之外,还会有查准率和查全率,下面举例解释. 按照周志华<机器学习>中的例子,以西瓜问题为例. 错误率:有多少比例的西瓜被判断错误: 查准率(precision):算法挑出来的西瓜中有多少比例是好西瓜: 查全率(recall):所有的好西瓜中有多少比例被算法跳了出来…
在配置训练.验证.和测试数据集的过程中做出正确的决策会更好地创建高效的神经网络,所以需要对这三个名词有一个清晰的认识. 训练集:用来训练模型 验证集:用于调整模型的超参数,验证不同算法,检验哪种算法更有效 测试集:根据最终的分类器,正确评估分类器的性能 假设这是训练数据,用一个长方形表示,通常会把这些数据划分成几部分,一部分作为训练集,一部分作为简单交叉验证集,也称之为验证集,最后一部分则作为测试集. train dev test 如果数据只有100条,100条或者1万条,通常将样本集设置为70…
转载自:http://blog.csdn.net/qingyanyichen/article/details/73550924 本人下载编译安装了opencv2.4.9,oppencv2.4.10,opencv2.4.11,opencv3.0.0,opencv3.1.0,opencv3.2.0版本,总结anaconda下opencv安装经验如下. 1.编译好的opencv和自己编译安装opencv的区别 Ubuntu安装了anaconda以后, $condainstall opencv 直接安装…
在11.2中,我们提到了一种数据划分的方法,那么怎么衡量这种数据划分方法中的误差呢? 来看一个例子:有20w条各种领域的语音识别数据,2w条汽车语音定位数据 train+dev+test,其中train是20w原始数据+1w汽车数据,dev和test各自都是5k条汽车数据 显然地,train和dev/test此时是不同分布的,如果出现以下情况 基准情况: train error:1% dev error:10% 我们不知道如何评估这种误差,因为train和dev是不同分布的,存在可能模型本来很好…