RATransformer - make a transformer model learn implicit relations passed in the input
Project description
RATransformers 🐭
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)
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | a76385a422fcc0350c66c2cd1980609efe2370e7891744c90a9ea0956a2c1ae7 |
|
MD5 | af8e7e80a1f7e04a1a48003fe8cf6a70 |
|
BLAKE2b-256 | 937ddb6ab82e4837e46b9ac436c9637deda3fd0545f519a5600d66844463e50e |