transfer-learning相关内容

PyTorch 中的标签平滑

我正在使用迁移学习为 Stanford Cars 数据集构建 ResNet-18 分类模型.我想实施标签平滑来惩罚过度自信的预测并提高泛化能力. TensorFlow 在 交叉熵损失.有没有人为 PyTorch 构建了一个类似的功能,我可以即插即用? 解决方案 使用软目标通常可以显着提高多类神经网络的泛化和学习速度.硬目标和标签上的均匀分布的>加权平均.以这种方式平滑标签可防止网络变 ..
发布时间:2022-01-06 19:33:13 AI人工智能

带有预训练卷积基的 keras 模型中损失函数的奇怪行为

我正在尝试在 Keras 中创建一个模型,以根据图片进行数值预测.我的模型有 densenet121 卷积基础,顶部有几个附加层.除了最后两个层之外的所有层都设置为 layer.trainable = False.我的损失是均方误差,因为它是一个回归任务.在训练期间我得到 loss: ~3,而对同一批数据的评估得到 loss: ~30: model.fit(x=dat[0],y=dat[1],b ..
发布时间:2021-12-09 22:28:48 Python

PyTorch中的标签平滑

我正在使用迁移学习为 Stanford Cars 数据集构建 ResNet-18 分类模型.我想实现标签平滑,以惩罚过度自信的预测并提高概括性. TensorFlow 在 CrossEntropyLoss .有没有人为我可以即插即用的 PyTorch 构建类似的功能? 解决方案 通过使用 标签上的硬目标的>加权平均值和均匀分布.以这种方式对标签进行平滑处理可以防止网络变得过于自信,并 ..
发布时间:2021-05-31 18:34:34 AI人工智能

转移学习的准确性差

我的任务是根据缺陷对种子进行分类.我在7个班级中有大约14k图像(它们的大小不相等,有些班级的照片更多,有些班级的照片更少).我尝试从头开始训练Inception V3,我的准确率大约为90%.然后,我尝试使用带有ImageNet权重的预训练模型进行迁移学习.我从 applications 导入了 inception_v3 ,但没有顶层fc层,然后像在文档中一样添加了自己的代码.我以以下代码结束: ..

如何在我们自己的模型上进行转移学习?

我正在尝试在CNN模型上应用转移学习,但出现以下错误. model = model1(权重="model1_weights",include_top = False) - TypeError:__call __()恰好接受2个参数(给定1个) 谢谢 解决方案 如果您尝试通过自定义模型使用转移学习,答案取决于保存模型体系结构(描述)和权重的方式. 1.如果您将模型的描述 ..

转移学习以进行视频分类

如何使用预先训练的模型来训练视频分类模型?我的数据集形状为(4000,10,150,150,1),我尝试使用Conv2D TimeDistributed对人类动作识别进行分类. 我可以在不进行转学的情况下进行培训,但是准确性较差. 我尝试过的: from keras.applications import VGG16 conv_base = VGG16(weights='imagenet', ..

转移学习:模型给出不变的损失结果.是不是在训练?

我正在尝试在Inception V3上训练回归模型.输入的是大小为(96,320,3)的图像.总共有16k +张图像,其中12k +张用于训练,其余的用于验证.我已经冻结了Inception中的所有层,但是解冻它们都没有帮助(已经尝试过).我已经将预训练模型的顶部替换为下面的代码所示的几层. X_train = preprocess_input(X_train) inception = In ..
发布时间:2021-02-14 20:47:08 Python

如何从tfrecord解码vggish音频集嵌入?

我正在尝试使用 VGGish 模型用于音频数据的传输学习。使用 python vggish_inference_demo.py --wav_file ... 将训练数据编码为tfrecord效果很好,但是现在我想将其用作其他模型的输入(例如我用keras或其他东西创建的神经网络)。使用一些类似的问题和文档,我用一个文件的第一个嵌入记录走了这么远: tfrecords_filename =' ..

在小型自定义语料库上预训练语言模型

我很好奇是否可以在文本生成中使用转移学习,然后对特定类型的文本进行重新训练/预训练。 例如,拥有一个经过预先训练的BERT模型和一小撮医学(或任何“类型”)文本的语料库,就可以创建一种能够产生医学信息的语言模型文本。假定您没有大量的“医学文本”,这就是为什么您必须使用迁移学习。 将其作为管道,我会将其描述为: 使用预训练的BERT令牌生成器。 从我的新文本中获取新令牌,并将其添 ..

转移学习-Val_loss异常行为

我正在尝试从phyton中的keras.application对MobileNetV2使用转移学习。 我的图像属于4类,第一,第二,第三和最后一类的数量分别为8000、7000、8000和8000张图像。我的图像是灰度的,并从1024x1024调整为128x128。 我从MobileNetV2中删除了分类密集层,并添加了自己的密集层: global_average_pooling2 ..

如何将重新训练的模型转换为tflite格式?

我已经在MobileNet上训练了图像分类器模型,我有这些文件. 此外,我使用了toco压缩重新训练的模型,以将模型转换为.lite格式,但是我需要使用.tflite格式.无论如何,我可以从现有文件中获取tflite格式吗? 解决方案 这是一个简单的python脚本,可用于将.pb格式的图形转换为tflite. import tensorflow as tf graph_def_f ..

以YOLO为例进行微调和转移学习

我有一个关于微调和转移学习的一般性问题,当我试图弄清楚如何最好地让yolo来检测我的自定义对象(手)时出现了这个问题. 我很抱歉可能包含很多错误信息的长文本.如果有人有耐心地阅读它并帮助我消除混乱,我将感到非常高兴. 经过大量的搜索之后,我了解到许多人认为微调是迁移学习的一个子类,而其他人则认为他们在采用不同的方法来训练模型.同时,人们在重新训练自定义数据集上的模型的最后一个分类器层与 ..

进行迁移学习时,如何在vgg16内添加customm层?

我正在尝试通过vgg16使用转移学习.我的主要概念是训练vgg16的前几层,并添加我自己的层,后言添加vgg16中的其余层,并在末尾添加我自己的输出层.为此,我遵循以下顺序:(1)加载图层和freez图层,(2)添加我的图层,(3)加载其余的图层(输出图层除外)[这是我遇到以下错误的地方]和freez该层,(4)添加输出层.我的方法可以吗?如果没有,那么我在哪里做错了?这是错误: Value ..