- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在翻阅Kaggle上发布的Heroes Recognition ResNet34笔记本。
作者使用fastai的learn.lr_find()
方法来找到最佳学习率。
根据学习率绘制损失函数,得出下图:
损失似乎达到1e-1的最小值,但在下一步中,作者将1e-2作为fit_one_cycle
中的max_lr传递给训练模型:learn.fit_one_cycle(6,1e-2)
在此示例中,为什么要在1e-1上使用1e-2?这会不会只会减慢训练速度?
最佳答案
ls_find中进行的学习率范围测试的想法来自Leslie Smith的这篇论文:https://arxiv.org/abs/1803.09820还有许多其他有用的调优技巧;请参见odt_a。值得仔细研究。
在lr_find中,学习速率缓慢提高(以对数线性方式)。您不想选择损失最低的点;您想选择每步下降最快的点(=网络正在尽可能快地学习)。这确实发生在向下倾斜或1e-2中间的某个位置,因此编写笔记本的人大致上是正确的。 0.5e-2和3e-2之间的任何值都具有大致相同的斜率,这将是一个合理的选择。较小的值将对应于较慢的学习(=需要更多的历元,也较少的正则化),但过早达到平稳状态的风险则较小。
我会尝试增加一些直觉,以了解在此测试中损失最低时发生的情况,例如学习率= 1e-1。在这一点上,梯度下降算法朝着梯度的方向迈出了一大步,但损失并未减少。怎么会这样好吧,如果步幅始终太大,就会发生这种情况。考虑尝试进入亏损地区的一口井(或峡谷)。如果步长大于孔的大小,则每次都可以持续跨步并最终到达另一侧。
nice blog post by Jeremy Jordan中的这张图片直观地显示了它:
在图片中,它显示了通过采取太大的步骤(可能在测试中为lr = 1 + 0)从井中爬出的梯度下降。我认为除非lr确实过分,否则这种情况很少会完全发生。更有可能的是,井位于相对平坦的地形中,并且梯度下降可能会越过它,而不是一开始就无法进入井。高维损耗景观很难可视化,并且可能非常不规则,但是从某种意义上讲,lr_find测试正在寻找景观中典型特征的比例,然后选择学习率,从而获得与尺寸相似的步骤但要小一点
关于pytorch - 使用fastai的learn.lr_find()选择learning_rate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61172627/
我正在尝试使用 fast.ai 版本 1.0.52 构建一个自动编码器,并且正在努力解决如何将标签设置为与原始图像相等的问题。我曾是 关注此博文:https://alanbertl.com/autoe
我之前用过 Keras,然后我用这种方式绘制了数据集的训练和验证准确率—— plt.plot(history.history['accuracy']) plt.plot(history.history
我目前正在探索如何使用 fastai 将 Dice 度量应用于多类分割问题。我查了一下概念,发现 Dice 和 F1Score 确实很相似。接下来,我有两个关于其实现的问题 fastai.metric
我正在使用以下代码在 fastai 中绘制混淆矩阵: interp = ClassificationInterpretation.from_learner(learn) interp.plot_con
FastAI 使用 AWD-LSTM 进行文本处理。他们提供预训练模型 get_language_model() .但是我找不到有关可用内容的适当文档。 他们的 github example page
我正在尝试复制这个 kaggle 笔记本 https://www.kaggle.com/tanlikesmath/diabetic-retinopathy-with-resnet50-oversamp
我正在尝试使用 fastai 来找出我的神经网络的最佳学习率。其他一切都工作正常,我只是没有完全达到我想要的准确性。所以我尝试使用以下代码行来优化我的学习率: learn.lr_find() lear
菜鸟在这里。 这是我正在处理的数据集 https://www.kaggle.com/arpitjain007/game-of-deep-learning-ship-datasets 我正在使用 fas
拜托,我正在开发一个图像分割项目,我使用了 fastai 库(特别是unet_learner)。我已经训练了我的模型,一切都很好,这是我的代码(在训练阶段): #codes = np.loadtxt(
如何在 PyTorch 上使用 fastai 实现加载预训练模型?就像在 SkLearn 中一样,我可以使用 pickle 将模型转储到文件中,然后加载并稍后使用。在像下面这样声明学习实例后,我使用了
我正在 zindi plateform 上进行比赛,他们使用这个挑战的评估指标作为 Log Loss。 所以我正在使用 fastai 库,我想要度量日志损失..我没有在这个库中找到 LogLoss 作
我正在尝试在我的 Windows 10 中安装 fastai。 我的笔记本电脑没有 GPU,我在 cmd 中使用 pip 安装 fastai。 在 pip page ,他们提到在安装 fastai 之
我正在使用 fastai 和 pytorch 从 huggingface 微调 XLMRoberta。我已经训练了模型,并且在我训练它的机器上一切正常。 但是当我尝试在另一台机器上加载模型时,我得到
我已经浏览网页几个小时来为我找到解决方案,我相信这可能是一个非常小的问题。 我在语言模型启动的最初步骤中使用了 fastai 的句子处理器 (SPProcesor)。 我的这些步骤的代码如下所示: b
两天前,我在 google colab 上使用 fastai 0.7.0 运行了我的模型。两天来我很忙,现在如果我尝试运行它,它会在执行该行时向我抛出一个错误*“来自 fastai.transform
我正在尝试运行 fastai v3 类(class)的 jupyter 笔记本。我的系统有 ubuntu 16.04 。这是我所做的: 已安装 Python 安装 Anaconda 冉 con
我能够使用快速人工智能微调语言模型。我想从句子相似度的微调模型中提取句子嵌入。如何获取编码器模型嵌入?嵌入也可以与其他模型(例如 USE)的嵌入一样与点积进行比较吗? data_lm = TextLM
我之前使用 fastai 库训练了 resnet34 模型,并保存了weights.h5 文件。使用最新版本的 fastai,我是否仍然需要非空训练和有效文件夹才能导入我的学习器并在测试集上进行预测?
我目前正在尝试使用命令 conda install -c fastai fastai 在 conda 环境中安装 fastai如安装所示guide .这是运行该命令时出现的内容: (fastai) C
我似乎无法安装正确版本的 torch,也无法使快速 ai 库正常工作 我试试 python 3.7 pip3 install https://download.pytorch.org/whl/cu10
我是一名优秀的程序员,十分优秀!