pszemraj's picture
Update README.md
2128bd5
metadata
license: cc-by-nc-sa-4.0
tags:
  - grammar
  - spelling
  - punctuation
  - error-correction
datasets:
  - jfleg
widget:
  - text: i can has cheezburger
    example_title: cheezburger
  - text: >-
      so em if we have an now so with fito ringina know how to estimate the tren
      given the ereafte mylite trend we can also em an estimate is nod s i again
      tort watfettering an we have estimated the trend an called wot to be
      called sthat of exty right now we can and look at wy this should not hare
      a trend i becan we just remove the trend an and we can we now estimate
      tesees ona effect of them exty
    example_title: Transcribed Audio Example 2
  - text: I would like a peice of pie.
    example_title: miss-spelling
  - text: >-
      My coworker said he used a financial planner to help choose his stocks so
      he wouldn't loose money.
    example_title: incorrect word choice (context)
  - text: >-
      good so hve on an tadley i'm not able to make it to the exla session on
      monday this week e which is why i am e recording pre recording an this
      excelleision and so to day i want e to talk about two things and first of
      all em i wont em wene give a summary er about ta ohow to remove trents in
      these nalitives from time series
    example_title: lowercased audio transcription output
  - text: Frustrated, the chairs took me forever to set up.
    example_title: dangling modifier
  - text: There car broke down so their hitching a ride to they're class.
    example_title: compound-1
  - text: >-
      Which part of Zurich was you going to go hiking in when we were there for
      the first time together? ! ?
    example_title: chatbot on Zurich
parameters:
  max_length: 128
  min_length: 4
  num_beams: 4
  repetition_penalty: 1.21
  length_penalty: 1
  early_stopping: true

grammar-synthesis-large - beta

A fine-tuned version of google/t5-v1_1-large for grammar correction on an expanded version of the JFLEG dataset.

usage in Python (after pip install transformers):

from transformers import pipeline

corrector = pipeline(
              'text2text-generation',
              'pszemraj/grammar-synthesis-large',
              )
raw_text = 'i can has cheezburger'
results = corrector(raw_text)
print(results)

give it a spin in Colab at this notebook

Model description

The intent is to create a text2text language model that successfully completes "single-shot grammar correction" on a potentially grammatically incorrect text that could have a lot of mistakes with the important qualifier of it does not semantically change text/information that IS grammatically correct.

Compare some of the heavier-error examples on other grammar correction models to see the difference :)

Intended uses & limitations

  • dataset: cc-by-nc-sa-4.0
  • model: apache-2.0
  • this is still a work-in-progress and while probably useful for "single-shot grammar correction" in a lot of cases, give the outputs a glance for correctness ok?

Training and evaluation data

More information needed 😉

Training procedure

Training hyperparameters

The following hyperparameters were used during training:

  • learning_rate: 8e-05
  • train_batch_size: 4
  • eval_batch_size: 1
  • seed: 42
  • distributed_type: multi-GPU
  • gradient_accumulation_steps: 32
  • total_train_batch_size: 128
  • optimizer: Adam with betas=(0.9,0.999) and epsilon=1e-08
  • lr_scheduler_type: cosine
  • lr_scheduler_warmup_ratio: 0.02
  • num_epochs: 1

Framework versions

  • Transformers 4.20.1
  • Pytorch 1.11.0+cu113
  • Datasets 2.3.2
  • Tokenizers 0.12.1