python - 在 bert 上训练一个新的数据集
问题描述
我是 BERT 的新手
我有一个亚马逊评论数据集,我想根据评论预测星级
我知道我可以使用预训练的 bert 模型,如此处所示
但我想在我自己的数据集上训练 bert 模型。这是这里正在做的吗?我可以在具有任何数据集的预训练模型上应用这种类型的“微调”以获得更准确的结果,还是我必须做其他事情来从头开始训练模型
如果我确实想从头开始训练模型,我该从哪里开始
解决方案
首先什么是预训练?该过程帮助模型使用大量原始文本 (40GB) 和处理能力来学习语言的句法 <==> 语义(这是一个频谱)特征。目标函数:随意语言模型和掩码语言模型
微调预训练模型怎么样?假设有一个模型了解英语的一般方面(POS、依存关系树、主题……几乎所有东西)。微调帮助我们将模型的重点放在数据集中最重要的特征上,假设在您的数据集中,某些句法特征改变了游戏规则,模型应该小心它!目标函数:基于下游任务
对于我们大多数人来说,从头开始训练是不可行的,但是有一种方法可以使用您自己的语料库/语料库(特定于任务)继续预训练阶段,而不会破坏模型的知识片段(希望如此)!目标函数:随意语言模型和掩码语言模型
这是一篇关于这种方法及其有效性的文章,您可以从Scibert和COVIDbert中得到启发。正如您所期望的那样,使用预训练的 bert 作为起点,并继续使用领域指定的语料库进行预训练!
推荐阅读
- websecurity - 如果 HttpOnly cookie 在每个请求中自动传递,它们如何防止 XSS/注入攻击?
- r - dplyr mutate 中的动态语句
- r - 如何从 R 中获取可以立即粘贴到 Windows 中的路径字符串
- flutter - Flutter Hooks Widget useState() with Object
- angular - 我们可以将 CSS 类从 Angular 组件添加/附加到反应式表单控件吗?
- php - Laravel 7.0-session 重定向后为空
- bamboo - 什么会导致竹阶段中的作业在运行期间不显示/执行?
- python - 在 Flask 中单击 HTML 按钮执行 python 函数
- asp.net - Visual Studio 2019 在打开 aspx 文件时,第一次不显示代码
- callback - Blazor 组件重新渲染后的调用方法