YAML Metadata Warning: The pipeline tag "text2text-generation" is not in the official list: text-classification, token-classification, table-question-answering, question-answering, zero-shot-classification, translation, summarization, feature-extraction, text-generation, fill-mask, sentence-similarity, text-to-speech, text-to-audio, automatic-speech-recognition, audio-to-audio, audio-classification, audio-text-to-text, voice-activity-detection, depth-estimation, image-classification, object-detection, image-segmentation, text-to-image, image-to-text, image-to-image, image-to-video, unconditional-image-generation, video-classification, reinforcement-learning, robotics, tabular-classification, tabular-regression, tabular-to-text, table-to-text, multiple-choice, text-ranking, text-retrieval, time-series-forecasting, text-to-video, image-text-to-text, image-text-to-image, image-text-to-video, visual-question-answering, document-question-answering, zero-shot-image-classification, graph-ml, mask-generation, zero-shot-object-detection, text-to-3d, image-to-3d, image-feature-extraction, video-text-to-text, keypoint-detection, visual-document-retrieval, any-to-any, video-to-video, other
An NMT-Based Grammatical Error Correction System for Chinese EFL Learners' Writing
Data
Lang-8 Corpus of Learner English and The National University of Singapore Corpus of Learner English (NUCLE).
Usage
import torch
from transformers import (
T5Tokenizer,
T5ForConditionalGeneration
)
model_name = "jasonlau/en-grammar-correction"
tokenizer = T5Tokenizer.from_pretrained(model_name)
model = T5ForConditionalGeneration.from_pretrained(model_name)
gec = GEC(model, tokenizer)
orig = 'Lets try Transformers!'
cor = gec.correct(orig)
print(cor)
class GEC(object):
def __init__(self, model, tokenizer):
torch_device = 'cuda' if torch.cuda.is_available() else 'cpu'
self.device = torch_device
self.model = model.to(torch_device)
self.tokenizer = tokenizer
def correct(self, input):
prefix = "grammar: "
input = prefix + input
input_ids = self.tokenizer(input, return_tensors="pt").input_ids.to(self.device)
outputs = self.model.generate(input_ids, max_length=128, num_beams=5, early_stopping=True)
cor = self.tokenizer.decode(outputs[0], skip_special_tokens=True)
return cor
Author
Lei Liu
Departmemt of English
Yanshan University
Funding
The work is supported by the MOE Foundation of Humanities and Social Sciences (Grant No. 17YJC740055).
- Downloads last month
- 2