mirror of
https://github.com/facebookresearch/fairseq.git
synced 2024-09-11 17:25:31 +03:00
62 lines
1.4 KiB
ReStructuredText
62 lines
1.4 KiB
ReStructuredText
.. role:: hidden
|
|
:class: hidden-section
|
|
|
|
.. module:: fairseq.tasks
|
|
|
|
.. _Tasks:
|
|
|
|
Tasks
|
|
=====
|
|
|
|
Tasks store dictionaries and provide helpers for loading/iterating over
|
|
Datasets, initializing the Model/Criterion and calculating the loss.
|
|
|
|
Tasks can be selected via the ``--task`` command-line argument. Once selected, a
|
|
task may expose additional command-line arguments for further configuration.
|
|
|
|
Example usage::
|
|
|
|
# setup the task (e.g., load dictionaries)
|
|
task = fairseq.tasks.setup_task(args)
|
|
|
|
# build model and criterion
|
|
model = task.build_model(args)
|
|
criterion = task.build_criterion(args)
|
|
|
|
# load datasets
|
|
task.load_dataset('train')
|
|
task.load_dataset('valid')
|
|
|
|
# iterate over mini-batches of data
|
|
batch_itr = task.get_batch_iterator(
|
|
task.dataset('train'), max_tokens=4096,
|
|
)
|
|
for batch in batch_itr:
|
|
# compute the loss
|
|
loss, sample_size, logging_output = task.get_loss(
|
|
model, criterion, batch,
|
|
)
|
|
loss.backward()
|
|
|
|
|
|
Translation
|
|
-----------
|
|
|
|
.. autoclass:: fairseq.tasks.translation.TranslationTask
|
|
|
|
.. _language modeling:
|
|
|
|
Language Modeling
|
|
-----------------
|
|
|
|
.. autoclass:: fairseq.tasks.language_modeling.LanguageModelingTask
|
|
|
|
|
|
Adding new tasks
|
|
----------------
|
|
|
|
.. autofunction:: fairseq.tasks.register_task
|
|
.. autoclass:: fairseq.tasks.FairseqTask
|
|
:members:
|
|
:undoc-members:
|