Skip to main content

BERT for Multi-task Learning

Project description

M3TL

Multi-Modal Multi-Task Learning

Install

MASKED

What is it

This is a project that uses transformers(based on huggingface transformers) as base model to do multi-modal multi-task learning.

Why do I need this

Multi-task learning(MTL) is gaining more and more attention, especially in deep learning era. It is widely used in NLP, CV, recommendation, etc. However, MTL usually involves complicated data preprocessing, task managing and task interaction. Other open-source projects, like TencentNLP and PyText, supports MTL but in a naive way and it's not straightforward to implement complicated MTL algorithm. In this project, we try to make writing MTL model as easy as single task learning model and further extend MTL to multi-modal multi-task learning. To do so, we expose following MTL related programable module to user:

  • problem sampling strategy
  • loss combination strategy
  • gradient surgery
  • model after base model(transformers)

Apart from programable modules, we also provide various built-in SOTA MTL algorithms.

In a word, you can use this project to:

  • implement complicated MTL algorithm
  • do SOTA MTL without diving into details
  • do multi-modal learning

And since we use transformers as base model, you get all the benefits that you can get from transformers!

What type of problems are supported?

params = Params()
for problem_type in params.list_available_problem_types():
    print('`{problem_type}`: {desc}'.format(
        desc=params.problem_type_desc[problem_type], problem_type=problem_type))

`cls`: Classification
`multi_cls`: Multi-Label Classification
`seq_tag`: Sequence Labeling
`masklm`: Masked Language Model
`pretrain`: NSP+MLM(Deprecated)
`regression`: Regression
`vector_fit`: Vector Fitting
`premask_mlm`: Pre-masked Masked Language Model
`contrastive_learning`: Contrastive Learning

Get Started

Please see tutorials.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

m3tl-0.7.0-py3-none-any.whl (87.1 kB view details)

Uploaded Python 3

File details

Details for the file m3tl-0.7.0-py3-none-any.whl.

File metadata

  • Download URL: m3tl-0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 87.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.6

File hashes

Hashes for m3tl-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fedc08924fefebaac735ef1b288220ed9ca092b823a8d6a125689f4caee86011
MD5 8a7d5708b2a64f180f82d426a95f8bc8
BLAKE2b-256 3917b9adc1c1b5de54e86f7d721c86187d46275f60ff68682af80e38ab966671

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page