Textmentations is a Python library for augmenting Korean text. Inspired by albumentations. Textmentations uses the albumentations as a dependency.
pip install textmentations
Textmentations provides text augmentation techniques implemented using the TextTransform, which inherits from the albumentations BasicTransform.
This allows textmentations to reuse the existing functionalities of albumentations.
import textmentations as T
text = "์ด์ ์๋น์ ๊ฐ๋ค. ๋ชฉ์ด ๋๋ฌด ๋ง๋๋ค. ๋จผ์ ๋ฌผ ํ ์์ ๋ง์
จ๋ค. ๊ทธ๋ฆฌ๊ณ ํ์์ก์ ๋ง์๊ฒ ๋จน์๋ค."
rd = T.RandomDeletion(deletion_prob=0.1, min_words_per_sentence=0.8)
ri = T.RandomInsertion(insertion_prob=0.2, n_times=1)
rs = T.RandomSwap(alpha=1)
sr = T.SynonymReplacement(replacement_prob=0.2)
eda = T.Compose([rd, ri, rs, sr])
print(rd(text=text)["text"])
# ์๋น์ ๊ฐ๋ค. ๋ชฉ์ด ๋๋ฌด ๋ง๋๋ค. ๋จผ์ ๋ฌผ ์์ ๋ง์
จ๋ค. ๊ทธ๋ฆฌ๊ณ ํ์์ก์ ๋ง์๊ฒ ๋จน์๋ค.
print(ri(text=text)["text"])
# ์ด์ ์ต๊ทผ ์๋น์ ๊ฐ๋ค. ๋ชฉ์ด ๋๋ฌด ๋ง๋๋ค. ๋จผ์ ๋ฌผ ํ ์์ ๋ง์
จ๋ค ์๋ฃ์. ๊ทธ๋ฆฌ๊ณ ํ์์ก์ ๋ง์๊ฒ ๋จน์๋ค.
print(rs(text=text)["text"])
# ์ด์ ๊ฐ๋ค ์๋น์. ๋ชฉ์ด ๋๋ฌด ๋ง๋๋ค. ๋ฌผ ๋จผ์ ํ ์์ ๋ง์
จ๋ค. ๊ทธ๋ฆฌ๊ณ ํ์์ก์ ๋ง์๊ฒ ๋จน์๋ค..
print(sr(text=text)["text"])
# ๊ณผ๊ฑฐ ์๋น์ ๊ฐ๋ค. ๋ชฉ์ด ๋๋ฌด ๋ง๋๋ค. ๋จผ์ ์์ฃผ ํ ์์ ๋ง์
จ๋ค. ๊ทธ๋ฆฌ๊ณ ํ์์ก์ ๋ง์๊ฒ ๋จน์๋ค.
print(eda(text=text)["text"])
# ์๋น์ ์ด์ ๊ณผ๊ฑฐ ๊ฐ๋ค. ๋๋ฌด ๋ง๋๋ค. ๋จผ์ ์์ ํ ์์ ๋ง์
จ๋ค ๋งน๋ฌผ. ๊ทธ๋ฆฌ๊ณ ๋ง์๊ฒ ๋จน์๋ค.
- AEDA
- BackTranslation
- ContextualInsertion
- ContextualReplacement
- IterativeMaskFilling
- RandomDeletion
- RandomDeletionSentence
- RandomInsertion
- RandomSwap
- RandomSwapSentence
- SynonymReplacement
- AEDA: An Easier Data Augmentation Technique for Text Classification
- Conditional BERT Contextual Augmentation
- Contextual Augmentation: Data Augmentation by Words with Paradigmatic Relations
- EDA: Easy Data Augmentation Techniques for Boosting Performance on Text Classification Tasks
- Iterative Mask Filling: An Effective Text Augmentation Method Using Masked Language Modeling
- Korean Stopwords
- Korean WordNet
- albumentations
- kykim/albert-kor-base