All Projects → sahitya0000 → Relation-Classification

sahitya0000 / Relation-Classification

Licence: MIT license
Relation Classification - SEMEVAL 2010 task 8 dataset

Programming Languages

Jupyter Notebook
11667 projects
perl
6916 projects
java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Relation-Classification

R-BERT
Pytorch re-implementation of R-BERT model
Stars: ✭ 59 (+28.26%)
Mutual labels:  relation-extraction, relation-classification, semeval-2010
Pytorch Rnn Text Classification
Word Embedding + LSTM + FC
Stars: ✭ 112 (+143.48%)
Mutual labels:  text-classification, gru
Fastrtext
R wrapper for fastText
Stars: ✭ 103 (+123.91%)
Mutual labels:  text-classification, classification
Awesome Text Classification
Awesome-Text-Classification Projects,Papers,Tutorial .
Stars: ✭ 158 (+243.48%)
Mutual labels:  text-classification, classification
Textclassification
All kinds of neural text classifiers implemented by Keras
Stars: ✭ 51 (+10.87%)
Mutual labels:  text-classification, classification
Applied Text Mining In Python
Repo for Applied Text Mining in Python (coursera) by University of Michigan
Stars: ✭ 59 (+28.26%)
Mutual labels:  text-classification, classification
Macadam
Macadam是一个以Tensorflow(Keras)和bert4keras为基础,专注于文本分类、序列标注和关系抽取的自然语言处理工具包。支持RANDOM、WORD2VEC、FASTTEXT、BERT、ALBERT、ROBERTA、NEZHA、XLNET、ELECTRA、GPT-2等EMBEDDING嵌入; 支持FineTune、FastText、TextCNN、CharCNN、BiRNN、RCNN、DCNN、CRNN、DeepMoji、SelfAttention、HAN、Capsule等文本分类算法; 支持CRF、Bi-LSTM-CRF、CNN-LSTM、DGCNN、Bi-LSTM-LAN、Lattice-LSTM-Batch、MRC等序列标注算法。
Stars: ✭ 149 (+223.91%)
Mutual labels:  text-classification, relation-extraction
Text classification
all kinds of text classification models and more with deep learning
Stars: ✭ 7,179 (+15506.52%)
Mutual labels:  text-classification, classification
Fake news detection
Fake News Detection in Python
Stars: ✭ 194 (+321.74%)
Mutual labels:  text-classification, classification
Nlp classification
Implementing nlp papers relevant to classification with PyTorch, gluonnlp
Stars: ✭ 202 (+339.13%)
Mutual labels:  text-classification, classification
awesome-text-classification
Text classification meets word embeddings.
Stars: ✭ 27 (-41.3%)
Mutual labels:  text-classification, classification
Ml Classify Text Js
Machine learning based text classification in JavaScript using n-grams and cosine similarity
Stars: ✭ 38 (-17.39%)
Mutual labels:  text-classification, classification
Tensorflow Sentiment Analysis On Amazon Reviews Data
Implementing different RNN models (LSTM,GRU) & Convolution models (Conv1D, Conv2D) on a subset of Amazon Reviews data with TensorFlow on Python 3. A sentiment analysis project.
Stars: ✭ 34 (-26.09%)
Mutual labels:  text-classification, gru
Deep Atrous Cnn Sentiment
Deep-Atrous-CNN-Text-Network: End-to-end word level model for sentiment analysis and other text classifications
Stars: ✭ 64 (+39.13%)
Mutual labels:  text-classification, classification
Cnn Question Classification Keras
Chinese Question Classifier (Keras Implementation) on BQuLD
Stars: ✭ 28 (-39.13%)
Mutual labels:  text-classification, classification
Rnn Text Classification Tf
Tensorflow Implementation of Recurrent Neural Network (Vanilla, LSTM, GRU) for Text Classification
Stars: ✭ 114 (+147.83%)
Mutual labels:  text-classification, gru
Lightnlp
基于Pytorch和torchtext的自然语言处理深度学习框架。
Stars: ✭ 739 (+1506.52%)
Mutual labels:  text-classification, relation-extraction
Eda nlp
Data augmentation for NLP, presented at EMNLP 2019
Stars: ✭ 902 (+1860.87%)
Mutual labels:  text-classification, classification
Marktool
这是一款基于web的通用文本标注工具,支持大规模实体标注、关系标注、事件标注、文本分类、基于字典匹配和正则匹配的自动标注以及用于实现归一化的标准名标注,同时也支持文本的迭代标注和实体的嵌套标注。标注规范可自定义且同类型任务中可“一次创建多次复用”。通过分级实体集合扩大了实体类型的规模,并设计了全新高效的标注方式,提升了用户体验和标注效率。此外,本工具增加了审核环节,可对多人的标注结果进行一致性检验和调整,提高了标注语料的准确率和可靠性。
Stars: ✭ 190 (+313.04%)
Mutual labels:  text-classification, relation-extraction
Att-BLSTM-relation-extraction
Implementation of Attention-Based Bidirectional Long Short-Term Memory Networks for Relation Classification.
Stars: ✭ 60 (+30.43%)
Mutual labels:  relation-extraction, semeval-2010

Relation-Classification

Relation Classification - SEMEVAL 2010 task 8 dataset (Master's Thesis)

  • Relation classification is a task of assigning predefined relation labels to the entity pairs that occur in texts.
    • Example:
    • Sentence: [People]_e1 have been moving back into [downtown]_e2
    • Relation: Entity-Destination(e1,e2) where e1 = people, e2 = downtown

Cite Us As

@MastersThesis{Sahitya:2018,
 author = { {Sahitya Patel} and Harish Karnick}, 
 title = {Multi-Way Classification of Relations Between Pairs of Entities}, 
 school = {Indian Institute of Technology Kanpur (IITK)}, 
 address = {India},
 year = 2018, 
 month = 6
}

Presentation

Relation-Classification-github.pdf

Dataset

Paper: SemEval-2010 Task 8: Multi-Way Classification of Semantic Relations Between Pairs of Nominals

Zip: SemEval2010_task8_all_data.zip

Files

Preprocessing of data

  • 01_create_train_test_attn
  • 02_train_val_split
  • 03_data_preprocess

Model training

  • 04_CBGRU_MEA_Model

Environment

  • Python 3.5.4 | Anaconda custom (64-bit)
  • Keras 2.1.5
  • Tensorflow 1.4.0
  • CUDA compilation tools, release 8.0, V8.0.44 (nvcc --version)
  • CuDNN 6.0.21
  • Perl

Running the model without preprocessing

  1. Get preprocessed data. Download "data_all.npy" from this-link (94.6 MB) and put it in the folder "./data/".
  2. Run "04_CBGRU_MEA_Model"

Running the model with preprocessing

01_create_train_test_attn

Description: Pre-processing of dataset files

Reads:

  • "./corpus/SemEval2010_task8_training/TRAIN_FILE.TXT"
  • "./corpus/SemEval2010_task8_testing_keys/TEST_FILE_FULL.TXT"

Creates:

  • "./files/train_attn.txt"
  • "./files/test_attn.txt"

To Do:

  1. Set the following path in "01_create_train_test_attn"
os.environ['CLASSPATH'] = "H:/Relation-Classification/stanford/stanford-postagger-2017-06-09"
  1. Run "01_create_train_test_attn"

02_train_val_split

Description: Spliting of the training data into training and validation data

Reads:

  • "./files/train_attn.txt"
  • "./files/test_attn.txt"

Creates:

  • "./files/train_attn_sp.txt"
  • "./files/val_attn_sp.txt"
  • "./files/test_attn_sp.txt"

To Do:

  1. Run "02_train_val_split"

03_data_preprocess

Description: Generating a single input file for the model

Creates:

  • "./data/data_all.npy"

Steps:

  1. Place "GoogleNews-vectors-negative300.bin" in "./word_embeddings" folder. (Download-Link, Website-word2vec)
  2. Run "./word_embeddings/GoogleNews-vectors-negative300_bin_to_txt.py" to create "./word_embeddings/GoogleNews-vectors-negative300.txt"
  3. Run "03_data_preprocess"

04_CBGRU_MEA_Model

Description: Model training. Best model is saved in "./model" folder.

Steps:

  1. Run "04_CBGRU_MEA_Model"

Creates:

  • "./model/model.keras" - Model

Model CBGRU-MEA

Model CBGRU-MEA

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].