Home

Awesome

AREnets

Open In Colab

<p align="center"> <img src="logo.png"/> </p>

AREnets -- is an OpenNRE like project, but the kernel based on tensorflow library, with implementation of neural networks on top of it, designed for Attitude and Relation Extraction tasks. AREnets is a result of advances in Sentiment Attitude Extraction task but introduced in generalized form and applicable for other relation-extraction related classification tasks. It provides ready to use neural networks and API for subjectobject pairs classification in a given samples. This project is powered by AREkit core API, squeezed into a tiny kernel.

Contents

Installation

pip install git+https://github.com/nicolay-r/AREnets@master

Quick Start

Open In Colab

Simply just open and follow the google-colab version like IDE to modify the train and inference code of provided tutorial:

<p align="center"> <img src="docs/colab-as-ide-logo.png"/> </p>

The complete examples are in tutorials folder.

First of all, prepare your _data folder with data required for training model and performing inference.

More on input features could be found here.

Train

from arenets.quickstart.train import train
from arenets.enum_name_types import ModelNames

train(input_data_dir="_data", labels_count=3, model_name=ModelNames.CNN, epochs_count=10)

Runs cnn model with 10 epochs for 3-class classification problem; all the model-related details will be stored at _data model by default.

Predict

from arenets.quickstart.predict import predict
from arenets.arekit.common.data_type import DataType
from arenets.enum_name_types import ModelNames

predict(input_data_dir="_data", output_dir="_out", labels_count=3, model_name=ModelNames.CNN, data_type=DataType.Test)

Predict test results for pre-trained cnn model and saves them into _out folder

Models List

FAQ

How to prepare input data?

How to setup jsonl or csv data reader?

How to implement a custom model with attention?

How to customize the prediction output?

Test Details

This project has been tested under the following setup:

How to cite

Our one and my personal interest is to help you better explore and analyze attitude and relation extraction related tasks with AREnets. A great research is also accompanied with the faithful reference. if you use or extend our work, please cite as follows:

@misc{arenets2023,
  author={Nicolay Rusnachenko},
  title={{AREnets}: Tensorflow-based framework of attentive neural-network 
         models for text classfication and relation extraction tasks},
  year={2023},
  url={https://github.com/nicolay-r/AREnets},
}