首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

李飞飞高徒、AI“网红”Karpathy:训练神经网络不得不看33个技巧

以下是新智元这篇“神经网络炼丹术”译介: 30行代码训练神经网络?Too young 几周前,推特发了一条“最常见神经网络错误推文,列举了一些与训练神经网络相关常见错误。...比如,ImageNet将在30个epoch衰减10倍。如果你没有训练ImageNet那么这肯定不是想要结果。如果你不小心,代码可能会过早将学习率趋零,导致模型无法收敛。...自己研究中总是完全禁用学习率衰减(学习速率为常数)并在最后进行调整。 4.正则化 理想情况下,我们要处理是大型模型,至少能够拟合训练集。...如果您在测试时无法负担计算,请考虑使用黑暗知识将您整体提升到网络中。 保持训练经常看到人们验证损失趋于平稳时就想停止模型训练。根据我经验,网络会长时间不间断进行训练。...有一次冬假期间不小心没有停止训练,当我第二1月份回来时,发现模型性能达到了SOTA水平。

1.1K30

神经网络调参经验大汇总。

验证是否减少了训练loss,在这个阶段,我们更加希望看到在数据集欠拟合,因为你正在使用一个玩具模型。试着稍微增加它容量。你训练损失有没有像应该那样减少?...喜欢这两个阶段原因是,如果我们在任何模型都无法达到低错误率,那么这可能再次表明一些问题、bug或错误配置。 这一步一些建议: 选择模型。要达到良好训练效果,您需要为数据选择合适结构。...总是建议人们简单找到最相关论文,然后复制粘贴他们最简单体系结构,以获得良好性能。例如,如果您正在对图像进行分类,请不要成为英雄,只需第一次运行时复制粘贴ResNet-50即可。...自己工作中,总是禁用学习速率完全衰减(使用一个常数LR),并在最后一直调整它。 04 正则化 理想情况下,我们现在所处位置是,我们有一个至少拟合训练模型。...极限情况下,如果参数a很重要,但更改b没有效果,那么您宁愿更全面a进行采样,而不是多次几个固定点进行采样。 超参数优化。

66620
您找到你想要的搜索结果了吗?
是的
没有找到

Macheine Learning Yearning学习笔记(四)

如果你训练分类误差是15%(85%准确率),但是你目标是5%错误率(95%准确率),那么第一个要解决问题是提高算法训练性能。你开发/测试集性能通常比训练要差。...该分类错误率为15%,该算法训练集上学不好,但是它在开发集错误几乎没有训练错误更高。因此,该分类器具有较高偏差(high bias),但是较低方差。...假设在语音识别问题上,你算法达到: 训练错误率 = 15% 开发错误率 = 30% 训练表现以及接近最优错误率14%。因此,偏差或者训练表现没有太多提升空间。...但是,如果最优错误率是14%,那么同样训练表现告诉我们,分类偏差几乎没有改进余地。...除了之前描述处理高偏差方法之外,有时也训练数据进行错误分析,遵循类似于 Eyeball 开发集上错误分析规则。

32130

『 论文阅读』Understanding deep learning requires rethinking generalization

更准确说,当真实数据进行完全随机标记训练时,神经网络实现了0个训练误差。当然测试错误和随机预测差不多。...通过标签随机化,强制使模型泛化误差大大地增加,而不改变模型,包括其大小、超参数和优化器。 论文CIFAR10和ImageNet分类基准训练几种不同标准体系。简单说明如下观点。...神经网络中,几乎总是选择运行随机梯度下降输出模型。分析线性模型中,SGD如何作为隐式正则化器。对于线性模型,SGD总是收敛到一个小规模解决方案。 因此,算法本身将解决方案隐含规范化。...虽然没有明确正则化,weight decay打开情况下,CIFAR10,Inception和MLP都完全适合随机训练集。 然而,AlexNetweight decay开启无法收敛于随机标签。...传统方法使用模型复杂度量度解决了大型人造神经网络泛化能力。论文认为还没有发现一个精确正式措施,在这些措施下,这些巨大模式是简单。 即使最终模型不具有泛化性,优化仍然是经验容易

90930

一文带你读懂机器学习和数据科学决策树

其中pk是特定预测节点中分类k训练实例比例。 理想情况下,节点错误值应为零,这意味着每个拆分在100%时间内输出单个分类。...如果我们选择一个分区,其中每个输出根据输入数据混合了类别,那么我们实际根本没有获得任何信息; 我们不知道特定节点即特征是否我们分类数据有任何影响!...另一方面,如果我们分割每个输出类别的百分比都很高,那么我们已经获得了特定特征变量以特殊方式分割信息来给我们一个特定输出!...每个节点,我们都能够确切看到我们模型做出了什么决定。 在实践中,我们将能够完全理解我们准确度和误差来自何处,模型可以很好地处理哪种类型数据,以及输出如何受到特征值影响。...Twitter上关注发布所有关于最新和最好AI,技术和科学内容! 想要继续查看该篇文章相关链接和参考文献?

43120

ML工作流程(第4部分) - 完整性检查和数据分割

即使你数据是分类、名义或连续总是非常有用。绘制一个条形图,描绘每个数据维度不同值数量。数据分割好,我们纠正了特征提取后数据表示正确性。...由于这些算法很可能过度拟合,所以使用训练数据作为训练时间唯一度量可能会误导到极端过度拟合。相反,使用每个迭代性能Validation-Set,并停止训练和验证值某个级别分散。...推荐这么做。 Test-Set:Train-Set和Validation-Set之后完成模型之后,应该使用它。根据训练和验证步骤设置模型所有参数后,Validation-Set会测量性能。...相信很多人提出数据分割方案不太情愿,他们会把这个粒度级别看作简单训练,测试分割+交叉验证方案。但是,向他们保证,特别是在这个行业里,这个阵型是对抗理性过度合理化最佳选择。...顺便说一句,我们有一个深度学习社区过度适合Image-Net巨大文献。解决方案是使用单独数据集,通过去年数据集训练模型每年比赛进行排名。

71400

随机森林

通过同一个训练数据集训练多个弱分类器(weak classifier),然后把这一组弱分类器集成起来,产生一个强分类器(strong classifier)。...特点 (1) 每次迭代改变是样本分布,而不是重复采样 (2) 样本分布改变取决于样本是否被正确分类总是分类正确样本权值低,总是分类错误样本权值高(通常是边界附近样本) (3) 最终结果是弱分类加权组合...Boosting:每一轮训练集不变,只是训练集中每个样例分类器中权重发生变化。而权值是根据一轮分类结果进行调整。...但这仍然不能完全解决过度拟合问题,过度拟合典型表现是决策树训练数据错误率很低,而对测试数据其错误率却非常高。过度拟合常见原因有: 训练数据中存在噪声; 数据不具有代表性。...RandomForest以决策树为基学习器构建Bagging集成基础,进一步决策树训练过程中引入了随机属性选择。

39510

Energy-efficient Amortized Inference with Cascaded Deep Classifiers论文笔记

大量不同数据集实验下, 使用级联ResNet分类器, 我们证明我们方法比标准训练ResNets要表现出色, 并且只需要少于20%和50%FLOPs耗费CIFAR-10/100数据集,...其他考虑了级联分类目标检测中快速拒绝更进一步, 如果能够简单判断情况下....从第一个分类开始累计资源消耗, 即 ? . 实际, 我们也包括累计停止策略 ? 对于相应 ? 计算代价, 重要是, 一旦我们 ? 个分类器处停止, 我们便不再运行比 ?...动作: 基于当前分类输出概率, 我们停止策略模块决定在当前时间步以概率 ? , 如果它最终 ? 步停止, 我们使用当前模型 ? 来预测Label, 即, ?...是用来训练数据mini-batch上来最小化梯度估计器变化 整理一下当前内容 现在我们知道了整个模型大致架构, 流程是这样: 首先是图片输入, 传到当前分类器, 并且得到结果 接着将结果

37641

R: 学习Gradient Boosting算法,提高预测模型准确率

我们随后会对难以分类样本分配较大权重。 好!明白你脑中会产生类似的疑问,像‘难以分类样本’是什么意思?怎么知道应该要给错误分类样本多少额外权重?不要着急,接下来将回答你所有的疑问。...倘若我们误差项(error)再建立一个模型呢?比如, error = G(x) + error2 也许,你会看到误差率提高到一个更高数字,比如84%。...如果这有可能的话,为什么没有接近100%准确率呢? 本文中将以清晰简洁方式来回答这些问题,Boosting通常用于弱学习,即没有分离白噪声能力。...这时我们有3/10分类率。现在我们3个误分类样本分配更高权重,此时,它们分类非常重要。因此,垂直线向右边缘靠近。我们重复这个操作,然后以恰当权重组合每个学习模型。...来给你解释一下。简单看一下e指数参数,alpha是学习率,y是真实响应(+1或-1),h(x)是通过学习得到预测分类

1.1K110

如何写一篇不水机器学习论文?这17页指南从建模、评估到写报告,手把手教你

“凑合”例子包括将期望分类特征模型应用于由数字特征组成数据集、将假定变量之间没有依赖关系模型应用于时间序列数据,或者只相信最新模型(旧不一定不合适)。 3、一定要优化模型超参数。...4、执行超参数优化和特征选择要小心:防止测试集“泄漏”,不要在模型训练开始之前整个数据集进行特征选择。理想情况下应使用与训练模型所用数据完全相同数据。...作者一共提了5点: 1、一个模型训练表现几乎毫无意义,保证测试集与训练集之间独立。 2、连续迭代多个模型,用前面的数据指导下一个配置时使用验证集,千万不要让测试集参与进来。...可以根据验证集模型进行测量:当分数开始下降时,停止训练,因为这表明模型开始过拟合。 3、模型多次评估,防止低估/高估性能。...使用基准数据集来评估新ML模型已变得司空见惯,你以为这会让结果更透明,实际: 如果测试集访问不受限,你没法确保别人没有训练过程中使用它;被多次使用公共测试集许多模型可能会与之过度匹配;最终都会导致结果乐观

29620

揭示语言大模型采样过程

对于一个分类器而言,可能值就是可用类(class)。例如,如果一个模型训练用于分类电子邮件是否为垃圾邮件,那么可能值就只有两个:垃圾和非垃圾邮件。...查看模型给定输入计算概率是常见AI模型调试技术。例如,如果概率看起来是随机,那么该模型没有学到太多内容。OpenAI返回其模型生成概率作为logprobs。...改变或不改变模型架构都可微调。例如,可以具有所需输出格式示例模型进行微调。虽然这仍不能保证模型总是能够输出预期格式,但相比提示要可靠得多。...例如,对于分类任务,可以将分类器head加到基础模型架构中,以确保模型仅输出预先指定类别之一。微调过程中,你可以重新训练整个架构或仅训练这个分类器head。...以下内容是个人见解,可能存在错误,欢迎反馈和指正! 总的来说,为生成一个词元,模型会在满足约束条件值中采样。

8710

为什么深度学习是非参数

关键想法是,进一步研究可以让模型更好适应数据,而我们则须知道何时停止这种深入。...在我看来,关键信息是,我们模型是如此严格,以至于我们可以看到测试集发生一切(或者更精确说,完整Px,y分布发生一切)已经训练集中发生了。...来说,一个重要结论是,双重下降现象标签损坏两种实验条件中存在“凹凸”,他们报告称,标签干净实验中,所得到结果则要平缓得多,没有那么“凹凸”。...5、特征和学习 让深度学习直觉化变得困难原因之一是Ansatz领域自适应特性。这么说意思是,我们没有一个固定特征提取器(由手动构造,并由核机中使用核家族给出)将学习应用到特征。...然而,附近正确类点越多,错误分类区域就越小。我们可以交互尝试。 随着点数增加,测试误差会减少。 这意味着什么呢? 这说明对于插值解,测试时间内,良好训练点会挤出标记糟糕点。

40140

为什么深度学习是非参数

关键想法是,进一步研究可以让模型更好适应数据,而我们则须知道何时停止这种深入。...在我看来,关键信息是,我们模型是如此严格,以至于我们可以看到测试集发生一切(或者更精确说,完整Px,y分布发生一切)已经训练集中发生了。...来说,一个重要结论是,双重下降现象标签损坏两种实验条件中存在“凹凸”,他们报告称,标签干净实验中,所得到结果则要平缓得多,没有那么“凹凸”。...5 特征和学习 让深度学习直觉化变得困难原因之一是Ansatz领域自适应特性。这么说意思是,我们没有一个固定特征提取器(由手动构造,并由核机中使用核家族给出)将学习应用到特征。...那么标签错误发生了什么呢? 标签错误会导致损坏训练点附近某些区域被分配给错误类。然而,附近正确类点越多,错误分类区域就越小。我们可以交互尝试。随着点数增加,测试误差会减少。

50930

别把“复杂化”视为高大,优秀数据科学家不会创造复杂模型

作为一名数据科学家同行,可以说这一职业是充实和有价值。话虽如此,现实总是会和人们工作期望有差距。 很多有抱负数据科学家问我他们应该关注什么内容。...真正需要做是写一行代码来读取文本和相关标签,写一行代码来向量化文本和标签(从文本转换为数字格式),写一行代码来构建一个文本 + 标签上训练朴素贝叶斯分类器,写一行代码来将分类器部署到终端(Sagemaker...就像我之前观点,用干净数据喂一个简单模型总是比用糟糕数据喂一个复杂模型要好。获得干净数据需要在你终端分析数据,以便你能设计一个管道来有效构建和训练模型。...此外,描述背部受伤页面中,很少提到这个人名字。我们停止词列表中有像 emma 这样名字。由于我们没有解决连字符姓氏逻辑,所以应该用 green-geller 来代替。...这种方法我们来说更容易测试,更容易快速部署到生产中。 在生产中,一个模型总是会对新、未见过数据进行预测,而且很可能在不同名字犯同样错误

37010

为什么深度学习是非参数

关键想法是,进一步研究可以让模型更好适应数据,而我们则须知道何时停止这种深入。...在我看来,关键信息是,我们模型是如此严格,以至于我们可以看到测试集发生一切(或者更精确说,完整Px,y分布发生一切)已经训练集中发生了。...来说,一个重要结论是,双重下降现象标签损坏两种实验条件中存在“凹凸”,他们报告称,标签干净实验中,所得到结果则要平缓得多,没有那么“凹凸”。...五、特征和学习 让深度学习直觉化变得困难原因之一是Ansatz领域自适应特性。这么说意思是,我们没有一个固定特征提取器(由手动构造,并由核机中使用核家族给出)将学习应用到特征。...那么标签错误发生了什么呢? 标签错误会导致损坏训练点附近某些区域被分配给错误类。然而,附近正确类点越多,错误分类区域就越小。我们可以交互尝试。随着点数增加,测试误差会减少。

18930

ShapeShifter: Robust Physical Adversarial Attack on Faster R-CNN Object Detector

变形机可以产生相反干扰停止信号,这些信号经常被Faster R-CNN作为其他物体错误检测到,自动驾驶汽车和其他安全关键计算机视觉系统构成潜在威胁。...作为一个案例研究,我们生成了一些反向干扰停止信号,这些信号可以被更快R-CNN作为实际驱动测试中目标对象持续错误检测到。我们贡献概述如下。...最近尝试要么只能进行非目标攻击,要么需要“极端模式”扰动(用研究人员的话说)来持续工作于,要么没有揭示方法细节。我们GitHub4开源了我们代码。...[13]中生成对抗性停止标志没有考虑到这一点,并且视觉更加明显。自动化其他目标的这个过程,我们留下作为未来工作。我们进行了两次有针对性攻击和一次无针对性攻击。...运动球目标攻击目标成功率较低,但达到了相同非目标成功率。我们非目标攻击总是中距离将检测错误引入时钟类,但在较长距离中则不那么健壮。

1.6K50

通过嵌入隐层表征来理解神经网络

此可视化框架有多个有趣应用程序,以下是分类问题一些背景: 更好地理解模型行为 w.r.t 数据 了解神经网络训练过程中数据表示变化 比较给定数据集模型 - 包括超参数变化甚至架构变化 了解嵌入训练过程中如何及时...这是一个多标签分类问题。 神经网络模型中,尝试了几种架构,从简单没有卷积/重复前馈神经网络)到复杂架构。神经网络最后一层使用了二进制交叉熵损失和 sigmoid 激活。...提前停止前我们完成了 10 个 epoch 训练。 这是最后一个 epoch 可视化内容: ? yelp 二元情绪分类任务第 10 个 epoch 之后隐藏表示。...可以通过对比错误分类点和它们附近点来理解这个问题。...在上面的恶意评论分类任务中创建了一个模型,从头开始学习嵌入(因此没有使用预先训练嵌入进行权重初始化)。想在给定数据量情况下模型有点困难 - 但我认为这值得一试。该架构与双向 LSTM 相同。

70420

癫痫发作分类ML算法

癫痫发作种类很多,每种都有不同症状,如失去意识,抽搐运动或混乱。有些癫痫发作视觉难以察觉; 患者通常会表现出一些症状,例如在短时间内没有反应或茫然凝视。...接下来想要平衡数据集,以避免创建一个模型,它错误将样本分类为属于多数类; 在案例中,患者没有癫痫发作。...随机森林也几乎总是优先于决策树,因为模型具有较低方差; 因此,该模型可以更好推广。...根据您偏差 - 方差诊断,可以根据此图表选择丢弃特征或通过组合一些来提出新变量。但是,对于模型没有必要这样做。从技术讲,脑电图读数是唯一特征,读数越多,分类模型就越好。...还告诉tpot将每个模型导出到目的以防想要提前停止模型评估 性能最佳模型,AUC为0.997,是优化extratrees分类器。以下是它在所有三个数据集表现。

1.8K40

深度 | 生产级深度学习开发经验分享:数据集构建和提升是关键

正因为没有花费足够时间来第一版语音命令进行上述处理,Kaggle 参赛者们才会在开始处理数据时发现了很多问题。 总是觉得这个过程有点愚蠢,但我从未后悔过。...为了进一步加快模型迭代速度,你可以尝试从一个已经大型现有数据集训练模型开始,使用迁移学习来利用你收集到(可能小得多)一组数据它进行微调。...这些知识来说非常有用,因为它让更加仔细观察那些被误认为是无声音频片段,而这些片段事实并不总是安静。...举例来说,之前一个同合作过团队图像分类模型中某些动物错误率感到困惑。...总是为即使训练数据存在严重缺陷情况下模型也可以良好运作而感到惊叹,所以我迫不及待想看到改进数据以后我们可以取得效果!

49900
领券