用于优化和评估基于转换器的语言模型的工具包
farm的Python项目详细描述
(f框架用于a适配r代表m模型)
这是什么?
Farm使NLP的尖端转移学习变得简单。 它是所有可适应不同下游任务的预训练语言模型(如bert)的家。 其目的是使文档分类、ner和问答变得简单,例如,使用一种语言模型。 语言模型和预测头的^ {STR 1 } $标准化接口允许研究人员灵活扩展,并为从业者轻松适应。 附加的实验跟踪和可视化支持您根据自己的nlp问题调整sota模型,并有一个非常快速的概念证明。
核心功能
- 语言模型的简单适应(例如bert)到您自己的用例
- 通过处理器类快速集成自定义数据集
- 语言模型和预测头的模块化设计
- 在头之间切换,或者将它们组合起来进行多任务学习
- 平滑升级到新的语言模型
- 强大的实验跟踪&execution
- 简单的部署和可视化来展示您的模型
资源
安装
推荐(因为正在开发):
git clone https://github.com/deepset-ai/FARM.git cd FARM pip install -r requirements.txt pip install --editable .
如果出现问题,请执行git pull。–editable标志将立即更新更改。
来自PYPI:
pip install farm
基本用法
一。A列下游模型
Farm提供两种模型培训模式:
选项1:从配置运行实验
用例:训练您的第一个模型,超参数优化,在多个下游任务上评估语言模型。
选项2:组合您自己的构建块
用例:自定义数据集、语言模型、预测头…
模型训练的度量和参数通过mlflow自动记录。我们提供用于测试和学习的public MLflow server。看看你自己的实验结果吧!请注意:我们将开始定期删除所有实验,以确保每个人都有良好的服务器性能!
2.运行推断(api+ui)
- 运行
docker-compose up
- 在浏览器中打开http://localhost:3000
一个docker容器公开rest api(localhost:5000),另一个运行一个简单的演示ui(localhost:3000)。 您可以单独使用它们并安装自己的模型。查看文档了解详细信息。
即将推出的功能
- 更多预培训型号XLNET、XLM…
- SOTA自适应策略(适配器模块、区分性微调…)
- 为生产启用大规模部署
- 用于探索和调试模型的其他可视化和统计信息