Skip to main content

RATransformer - make a transformer model learn implicit relations passed in the input

Project description

RATransformers 🐭

PyPI - Latest Package Version GitHub - License

RATransformers, short for Relation-Aware Transformers, is a package built on top of transformers 🤗 that enables the training/fine-tuning of models with extra relation-aware input features.

Example - Encoding a table in TableQA (Question Answering on Tabular Data)

[Notebook Link]

In this example we can see that passing the table as text with no additional information to the model is a poor representation.

With RATransformers 🐭 you are able to encode the table in a more structured way by passing specific relations within the input. RATransformers 🐭 also allows you to pass further features related with each input word/token.

Check more examples in [here].

Installation

Install directly from PyPI:

pip install ratransformers

Usage

from ratransformers import RATransformer
from transformers import AutoModelForSequenceClassification


ratransformer = RATransformer(
    "nielsr/tapex-large-finetuned-tabfact", # define the 🤗 model you want to load
    relation_kinds=['is_value_of_column', 'is_from_same_row'], # define the relations that you want to model in the input
    model_cls=AutoModelForSequenceClassification, # define the model class
    pretrained_tokenizer_name_or_path='facebook/bart-large' # define the tokenizer you want to load (in case it is not the same as the model)
)
model = ratransformer.model
tokenizer = ratransformer.tokenizer

With only these steps your RATransformer 🐭 is ready to be trained.

More implementation details in the examples here.

How does it work?

We modify the self-attention layers of the transformer model as explained in the section 3 of the RAT-SQL paper.

Supported Models

Currently we support a limited number of transformer models:

Want another model? Feel free to open an Issue or create a Pull Request and let's get started 🚀

Project details


Download files

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

Source Distribution

ratransformers-1.3.2.tar.gz (27.1 kB view details)

Uploaded Source

File details

Details for the file ratransformers-1.3.2.tar.gz.

File metadata

  • Download URL: ratransformers-1.3.2.tar.gz
  • Upload date:
  • Size: 27.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for ratransformers-1.3.2.tar.gz
Algorithm Hash digest
SHA256 a76385a422fcc0350c66c2cd1980609efe2370e7891744c90a9ea0956a2c1ae7
MD5 af8e7e80a1f7e04a1a48003fe8cf6a70
BLAKE2b-256 937ddb6ab82e4837e46b9ac436c9637deda3fd0545f519a5600d66844463e50e

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