12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- .. 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:
|