fairseq源码分析(一)——fairseq简介与安装

写在前面的话

最近一直在阅读fairseq源码,发现关于fairseq的资源除了官方文档,没太有其他的资源,故想做一期关于fairseq源码的分享,也为了帮助更多入门nlp的人,同时也请大家批评指正。
本系列博客大体的流程是:
1、fairseq的介绍与安装
2、fairseq的注册机制
3、fairseq中的task
4、fairseq中的model
5、fairseq中的criterions
6、fairseq的训练流程
7、fairseq的推断
8、训练一个自己的机器翻译模型
本文所使用的fairseq版本为fairseq-0.6.2,工作环境为macbook pro+pycharm+redhat服务器(8 X Nvidia RTX 2080)。

首先让我们来看一下什么是fairseq

官网对于fairseq的介绍如下:

Fairseq(-py) is a sequence modeling toolkit that allows researchers and developers to train custom models for translation, summarization, language modeling and other text generation tasks.

意为fairseq是一个工具库,通过这个工具库你可以设计自己的模型来完成不同的nlp任务,如:机器翻译、文本摘要、语言模型等等。
总的来说fairseq是Facebook开源的一个nlp的工具库,它是对pytorch的上层封装,其基础代码也是通过pytorch编写。
其有非常多的特性,这里不展开讨论,在接下来的文章中会对每一部分进行讨论,这里仅仅展示其主要的一些特性:
fairseq源码分析(一)——fairseq简介与安装_第1张图片

如何安装fairseq?

前面一经提到,fairseq基于pytorch,则其安装必然需要python与pytorch的基础环境,其具体的环境需要为:

  • pytorch >= 1.5.0(节选自官网fairseq-0.10版本)
  • python >= 3.6
    同时为了能够快速训练模型,你的机器至少应该有一块Nvidia的GPU,那么对应的也需要有cuda环境。
    在有了上述环境后,就可以安装fairseq了,其具体的命令为:
git clone https://github.com/pytorch/fairseq
cd fairseq
pip install --editable ./

下篇博文,让我们一起看一下,fairseq的注册机制
fairseq源码分析(二)——fairseq注册机制

你可能感兴趣的:(框架代码,nlp,pytorch,python)