GENAUG : 텍스트 생성기를위한 데이터 증강
Genaug : Genaug : EMNLP 2020 Deelio Workshop에 게시 된 텍스트 생성기를위한 데이터 증강에 대한 Code. 다음과 같이 인용 할 수 있습니다.
@inproceedings{feng-etal-2020-genaug,
title = "{G}en{A}ug: Data Augmentation for Finetuning Text Generators",
author = "Feng, Steven Y. and Gangal, Varun and Kang, Dongyeop and Mitamura, Teruko and Hovy, Eduard",
booktitle = "Proceedings of Deep Learning Inside Out (DeeLIO): The First Workshop on Knowledge Extraction and Integration for Deep Learning Architectures",
month = nov, year = "2020", address = "Online",
publisher = "Association for Computational Linguistics",
url = "https://www.aclweb.org/anthology/2020.deelio-1.4",
doi = "10.18653/v1/2020.deelio-1.4", pages = "29--42",
}
저자 : Steven Y. Feng, Varun Gangal, Dongyeop Kang, Teruko Mitamura, Eduard Hovy
대화는 여기에서 찾을 수 있습니다. 슬라이드 및 기타 리소스는 여기에서 찾을 수 있습니다.
참고 : 문의는 [email protected] 으로 또는 여기에서 문제를 열어야합니다.

필요한 자원
- Stanford Pos Tagger : https://nlp.stanford.edu/software/stanford-postagger-2018-16.zip
- Stanford Corenlp : http://nlp.stanford.edu/software/stanford-corenlp-full-2018-10-05.zip
사전에 사전/미세한 모델 (YELP) :
- BERT SENTIMENT Regressor (스타 등급이 포함 된 YLR 리뷰에서 미세 구성) : https://drive.google.com/drive/folders/1jt07zpxmmo9my5hh3mvjf8vmalzuugf?usp=sharing
- GPT-2 (2 백만 YELP 리뷰에 대한 양조-당황 및 슬러 평가) : https://drive.google.com/drive/folders/1j3jcw-qtdwxcyzv7lonljkvjzpxifs2h?usp=sharing
- smerti-transformer (YLR의 서브 세트에서 훈련) : https://drive.google.com/drive/folders/1a-jynp5so4lmv3ztgkmwq7be8coftf_b?usp=sharing
데이터
- "stopwords.txt"에는 사용 된 스톱워드 목록이 포함되어 있습니다.
- "yelp_train.txt", "yelp_val.txt"및 "yelp_test.txt"에는 YLR에 대한 전체 교육, 검증 및 테스트 예제 (프롬프트 및 연속 부분 모두)가 포함되어 있습니다.
- "YELP_TRAIN_0.5.TXT"및 "YELP_TEST_0.5.TXT"에는 YLR의 교육 및 테스트 예제의 전반 반 버전이 포함되어 있습니다 (프롬프트 부분 만).
- "smerti_chosen_res.txt"에는 선택한 150 명이 Smerti 추론 대체 엔티티로 포함됩니다.
- "smerti_train.csv"및 "smerti_val.csv"에는 각각 smerti-transformer를위한 교육 및 검증 스플릿이 포함되어 있습니다.
암호
- "Augmentation_methods"폴더에는 다양한 Genaug 증강 방법 (Smerti 제외)에 대한 코드가 포함되어 있습니다.
- "평가"폴더에는 평가를위한 코드가 포함되어 있습니다. 구체적으로, "get_unigram_diptribution.py"는 Rare_words (rwords) 메트릭에 사용되며 "Evaluate_combined.py"에는 sbleu, utr, ttr 및 rword에 대한 코드가 포함되어 있습니다. "감정"하위 폴더에는 감정 일관성 평가를위한 코드가 포함되어 있습니다 [나중에 자세한 내용].
- "Finetuning_and_generation"폴더에는 GPT-2 모델을 미세 조정하고 GPT-2 모델에서 출력을 생성하기위한 스크립트 및 코드가 포함되어 있습니다. 두 개의 .sh 스크립트를 실행하여 양육하고 생성하십시오.
- "Processing_and_Setup"폴더에는 실험에 필요한 데이터를 처리하고 설정하는 코드가 포함되어 있습니다. "continuation_postprocessor.py"는 GPT-2 출력을 정리합니다 (예 : 스트리핑 트레일 링 느낌 마크), "genaug_finetuning_setup.ipynb"는 gpt-2 finetuning에 대한 최종 증강 데이터를 설정하기위한 코드를 포함합니다. "genaug_yelp_dataset_processing.ipynb"에는 YLR에 대한 YELP 검토 데이터 및 PPL 및 SLOR 평가에 대한 2 백만 리뷰 서브 세트를 처리하는 코드가 포함되어 있습니다.
smerti utmentation 방법 코드
Smerti 증강 방법에 대한 코드는 이 repo 의 "Genaug Smerti-Transformer"폴더에서 찾을 수 있습니다. 이것은 Caint Calm and Switch On에 제시된 "Smerti for Semantic Text Exchange"의 공식 리포입니다! EMNLP-IJCNLP 2019에 출판 된 시맨틱 텍스트 교환의 감정과 유창성 보존 .
참고 : 모든 코드에 대한 자세한 내용 및 예제 명령은 나중에 추가됩니다.