NLP-Models-Tensorflow , NLP 문제에 대한 기계 학습 및 텐서플로우 딥 러닝 모델을 수집하고 Jupyter 노트북 내에서 코드를 100% 단순화합니다 .
목차
- 추상적인 요약
- 챗봇
- 종속성 파서
- 엔터티 태깅
- 추출적 요약
- 발전기
- 언어 감지
- 신경 기계 번역
- OCR
- POS 태깅
- 질문-답변
- 문장 쌍
- 음성-텍스트
- 철자 교정
- 분대 질문-답변
- 형태소 분석
- 텍스트 확대
- 텍스트 분류
- 텍스트 유사성
- 텍스트 음성 변환
- 주제 생성기
- 주제 모델링
- 비지도 추출 요약
- 벡터라이저
- 노년 보코더
- 심상
- 주목
목적
원래 구현은 매우 복잡하고 초보자에게 친숙하지 않습니다. 그래서 대부분의 내용을 단순화하려고 노력했습니다. 또한 아직 출시되지 않은 수많은 릴리스 문서 구현이 있습니다. 그러니 자유롭게 자신의 연구에 사용해 보세요!
처음부터 구현하지 않은 모델에 대한 github 저장소를 첨부하겠습니다. 기본적으로 더 이상 사용되지 않는 문제에 대해 해당 코드를 복사하고 붙여넣고 수정합니다.
텐서플로우 버전
Tensorflow 버전 1.13 이상만 해당되며 2.X 버전은 포함되어 있지 않습니다. 1.13 < 텐서플로우 < 2.0
pip install -r requirements.txt
내용물
추상적인 요약
인도 뉴스에 대한 교육을 받았습니다.
정확도는 10개 시대만을 기준으로 하며 단어 위치를 사용하여 계산됩니다.
전체 목록(노트북 12개)
- 토픽 모델링을 사용한 LSTM Seq2Seq, 테스트 정확도 13.22%
- LSTM Seq2Seq + 주제 모델링을 사용한 Luong Attention, 테스트 정확도 12.39%
- LSTM Seq2Seq + 토픽 모델링을 사용한 빔 디코더, 테스트 정확도 10.67%
- LSTM 양방향 + Luong Attention + 토픽 모델링을 사용한 Beam Decoder, 테스트 정확도 8.29%
- 포인터 생성기 + Bahdanau, https://github.com/xueyouluo/my_seq2seq, 테스트 정확도 15.51%
- 카피넷, 테스트 정확도 11.15%
- 포인터 생성기 + Luong, https://github.com/xueyouluo/my_seq2seq, 테스트 정확도 16.51%
- 확장된 Seq2Seq, 테스트 정확도 10.88%
- Dilated Seq2Seq + Self Attention, 테스트 정확도 11.54%
- BERT + 확장된 CNN Seq2seq, 테스트 정확도 13.5%
- self-attention + 포인터 생성기, 테스트 정확도 4.34%
- Dilated-CNN Seq2seq + 포인터 생성기, 테스트 정확도 5.57%
챗봇
코넬 영화 대화 코퍼스, 챗봇의 정확도 테이블에 대한 교육을 받았습니다.
전체 목록(노트북 54개)
- 기본 셀 Seq2Seq-수동
- LSTM Seq2Seq 매뉴얼
- GRU Seq2Seq 매뉴얼
- 기본 셀 Seq2Seq-API Greedy
- LSTM Seq2Seq-API 탐욕
- GRU Seq2Seq-API 탐욕
- 기본 셀 양방향 Seq2Seq-수동
- LSTM 양방향 Seq2Seq 매뉴얼
- GRU 양방향 Seq2Seq 매뉴얼
- 기본 셀 양방향 Seq2Seq-API Greedy
- LSTM 양방향 Seq2Seq-API 탐욕
- GRU 양방향 Seq2Seq-API 탐욕
- 기본 셀 Seq2Seq-manual + Luong 주의
- LSTM Seq2Seq-manual + Luong 주의
- GRU Seq2Seq-manual + Luong 주의
- 기본 셀 Seq2Seq-manual + Bahdanau 주의
- LSTM Seq2Seq-매뉴얼 + Bahdanau 주의
- GRU Seq2Seq-매뉴얼 + Bahdanau 주의
- LSTM 양방향 Seq2Seq-수동 + Luong 주의
- GRU 양방향 Seq2Seq-수동 + Luong 주의
- LSTM 양방향 Seq2Seq-수동 + Bahdanau 주의
- GRU 양방향 Seq2Seq-수동 + Bahdanau 주의
- LSTM 양방향 Seq2Seq-수동 + 후방 Bahdanau + 전방 Luong
- GRU 양방향 Seq2Seq-수동 + 후방 Bahdanau + 전방 Luong
- LSTM Seq2Seq-API Greedy + Luong 주의
- GRU Seq2Seq-API Greedy + Luong 주의
- LSTM Seq2Seq-API Greedy + Bahdanau 주의
- GRU Seq2Seq-API Greedy + Bahdanau 주의
- LSTM Seq2Seq-API 빔 디코더
- GRU Seq2Seq-API 빔 디코더
- LSTM 양방향 Seq2Seq-API + Luong Attention + 빔 디코더
- GRU 양방향 Seq2Seq-API + Luong Attention + 빔 디코더
- LSTM 양방향 Seq2Seq-API + 역방향 Bahdanau + 순방향 Luong + 스택 Bahdanau Luong Attention + 빔 디코더
- GRU 양방향 Seq2Seq-API + 역방향 Bahdanau + 순방향 Luong + 스택 Bahdanau Luong 주의 + 빔 디코더
- 바이트넷
- LSTM Seq2Seq + tf.estimator
- 캡슐 레이어 + LSTM Seq2Seq-API Greedy
- 캡슐 레이어 + LSTM Seq2Seq-API + Luong Attention + 빔 디코더
- LSTM 양방향 Seq2Seq-API + 역방향 Bahdanau + 순방향 Luong + 스택 Bahdanau Luong 주의 + 빔 디코더 + 드롭아웃 + L2
- DNC 시퀀스2Seq
- LSTM 양방향 Seq2Seq-API + Luong Monotic Attention + 빔 디코더
- LSTM 양방향 Seq2Seq-API + Bahdanau Monotic Attention + 빔 디코더
- 엔드투엔드 메모리 네트워크 + 기본 셀
- 엔드투엔드 메모리 네트워크 + LSTM 셀
- 관심이 필요한 전부입니다
- 트랜스포머-XL
- 주의가 필요합니다 + 빔 검색
- 트랜스포머-XL + LSTM
- GPT-2 + LSTM
- CNN Seq2seq
- 변환 인코더 + LSTM
- 타코트론 + 그리디 디코더
- Tacotron + 빔 디코더
- 구글 NMT
종속성 파서
CONLL 영어 종속성에 대한 교육을 받았습니다. 훈련할 훈련 세트, 테스트할 개발 및 테스트 세트.
Stackpointer 및 Biaffine-attention은 원래 Pytorch로 작성된 https://github.com/XuezheMax/NeuroNLP2에서 가져왔습니다.
정확도는 15개 에포크 이후의 호, 유형 및 근 정확도를 기준으로 합니다.
전체 목록(노트북 8개)
- 양방향 RNN + CRF + Biaffine, 호 정확도 70.48%, 유형 정확도 65.18%, 루트 정확도 66.4%
- 양방향 RNN + Bahdanau + CRF + Biaffine, 호 정확도 70.82%, 유형 정확도 65.33%, 루트 정확도 66.77%
- 양방향 RNN + Luong + CRF + Biaffine, 호 정확도 71.22%, 유형 정확도 65.73%, 루트 정확도 67.23%
- BERT Base + CRF + Biaffine, 호 정확도 64.30%, 유형 정확도 62.89%, 루트 정확도 74.19%
- 양방향 RNN + Biaffine Attention + 교차 엔트로피, 호 정확도 72.42%, 유형 정확도 63.53%, 루트 정확도 68.51%
- BERT 베이스 + Biaffine Attention + 교차 엔트로피, 아크 정확도 72.85%, 유형 정확도 67.11%, 루트 정확도 73.93%
- 양방향 RNN + 스택 포인터, 호 정확도 61.88%, 유형 정확도 48.20%, 루트 정확도 89.39%
- XLNET Base + Biaffine Attention + Cross Entropy, 호 정확도 74.41%, 유형 정확도 71.37%, 루트 정확도 73.17%
엔터티 태그 지정
CONLL NER에 대한 교육을 받았습니다.
전체 목록(노트북 9개)
- 양방향 RNN + CRF, 테스트 정확도 96%
- 양방향 RNN + Luong Attention + CRF, 테스트 정확도 93%
- 양방향 RNN + Bahdanau Attention + CRF, 테스트 정확도 95%
- Char Ngrams + 양방향 RNN + Bahdanau Attention + CRF, 테스트 정확도 96%
- Char Ngrams + 양방향 RNN + Bahdanau Attention + CRF, 테스트 정확도 96%
- Char Ngrams + Residual Network + Bahdanau Attention + CRF, 테스트 정확도 69%
- Char Ngrams + Attention is you all Need + CRF, 테스트 정확도 90%
- BERT, 테스트 정확도 99%
- XLNET-Base, 테스트 정확도 99%
추출적 요약
CNN 뉴스 데이터 세트로 교육을 받았습니다.
ROUGE-2를 기반으로 한 정확도입니다.
전체 목록(노트북 4개)
- LSTM RNN, 테스트 정확도 16.13%
- Dilated-CNN, 테스트 정확도 15.54%
- 멀티헤드 어텐션, 테스트 정확도 26.33%
- BERT 기반
발전기
셰익스피어 데이터 세트에 대한 교육을 받았습니다.
전체 목록(노트북 15개)
- 문자별 RNN + LSTM
- 문자별 RNN + 빔 검색
- 문자별 RNN + LSTM + 임베딩
- 단어별 RNN + LSTM
- 단어별 RNN + LSTM + 임베딩
- 문자별 + Seq2Seq + GRU
- 단어 단위 + Seq2Seq + GRU
- 문자별 RNN + LSTM + Bahdanau
- 문자별 RNN + LSTM + Luong 주의
- 단어 단위 + Seq2Seq + GRU + 빔
- 문자별 + Seq2Seq + GRU + Bahdanau
- Word-wise + Seq2Seq + GRU + Bahdanau 주의
- 문자별 확장 CNN + 빔 검색
- 트랜스포머 + 빔 검색
- Transformer XL + 빔 검색
언어 감지
Tatoeba 데이터세트로 훈련되었습니다.
전체 목록(노트북 1개)
- 빠른 텍스트 문자 N-그램
신경 기계 번역
신경 기계 번역의 영어-프랑스어 정확도 테이블에 대한 교육을 받았습니다.
전체 목록(노트북 53개)
1.basic-seq2seq 2.lstm-seq2seq 3.gru-seq2seq 4.basic-seq2seq-contrib-탐욕 5.lstm-seq2seq-contrib-탐욕 6.gru-seq2seq-contrib-탐욕 7.basic-birnn-seq2seq 8.lstm-birnn-seq2seq 9.gru-birnn-seq2seq 10.basic-birnn-seq2seq-contrib-탐욕 11.lstm-birnn-seq2seq-contrib-탐욕 12.gru-birnn-seq2seq-contrib-탐욕 13.basic -seq2seq-루옹 14.lstm-seq2seq-luong 15.gru-seq2seq-luong 16.basic-seq2seq-bahdanau 17.lstm-seq2seq-bahdanau 18.gru-seq2seq-bahdanau 19.basic-birnn-seq2seq-bahdanau 20.lstm-birnn-seq2seq-bahdanau 21.gru-birnn-seq2seq-bahdanau 22.basic-birnn-seq2seq-luong 23.lstm-birnn-seq2seq-luong 24.gru-birnn-seq2seq-luong 25.lstm-seq2seq-contrib-탐욕-루옹 26.gru-seq2seq-contrib-탐욕-루옹 27.lstm-seq2seq-contrib-탐욕-bahdanau 28.gru-seq2seq-contrib-탐욕-bahdanau 29.lstm-seq2seq- 기여-빔-루옹 30.gru-seq2seq-contrib-beam-luong 31.lstm-seq2seq-contrib-beam-bahdanau 32.gru-seq2seq-contrib-beam-bahdanau 33.lstm-birnn-seq2seq-contrib-beam-bahdanau 34.lstm-birnn-seq2seq-contrib-빔-루옹 35.gru-birnn-seq2seq-contrib-빔-bahdanau 36.gru-birnn-seq2seq-contrib-빔-루옹 37.lstm-birnn-seq2seq-contrib-빔 -루옹단조 38.gru-birnn-seq2seq-contrib-beam-luongmonotic 39.lstm-birnn-seq2seq-contrib-beam-bahdanaumonotic 40.gru-birnn-seq2seq-contrib-beam-bahdanaumonotic 41.residual-lstm-seq2seq-greedy-luong 42.residual-gru-seq2seq-greedy-luong 43.residual-lstm-seq2seq-greedy-bahdanau 44.residual-gru-seq2seq-greedy-bahdanau 45.memory-network-lstm-decoder-greedy 46.google-nmt 47.변환기-인코더-변압기-디코더 48.변환기-인코더-lstm-디코더-탐욕 49.bert다국어-인코더-bert다국어-디코더 50.bert다국어-인코더-lstm-디코더 51.bert다국어-인코더-변환기-디코더 52.bertenglish -인코더-변압기-디코더 53.변압기-t2t-2gpu
OCR(광학 문자 인식)
전체 목록(노트북 2개)
- CNN + LSTM RNN, 테스트 정확도 100%
- Im2Latex, 테스트 정확도 100%
POS 태깅
CONLL POS 교육을 받았습니다.
전체 목록(노트북 8개)
- 양방향 RNN + CRF, 테스트 정확도 92%
- 양방향 RNN + Luong Attention + CRF, 테스트 정확도 91%
- 양방향 RNN + Bahdanau Attention + CRF, 테스트 정확도 91%
- Char Ngrams + 양방향 RNN + Bahdanau Attention + CRF, 테스트 정확도 91%
- Char Ngrams + 양방향 RNN + Bahdanau Attention + CRF, 테스트 정확도 91%
- Char Ngrams + Residual Network + Bahdanau Attention + CRF, 테스트 정확도 3%
- Char Ngrams + Attention is you all Need + CRF, 테스트 정확도 89%
- BERT, 테스트 정확도 99%
질문-답변
bAbI 데이터세트에 대한 교육을 받았습니다.
전체 목록(노트북 4개)
- 엔드투엔드 메모리 네트워크 + 기본 셀
- 엔드투엔드 메모리 네트워크 + GRU 셀
- 엔드투엔드 메모리 네트워크 + LSTM 셀
- 동적 메모리
문장쌍
코넬 영화 교육--Dialogs Corpus
전체 목록(노트북 1개)
- 버트
음성을 텍스트로
토론토 음성 데이터 세트에 대한 교육을 받았습니다.
전체 목록(노트북 11개)
- 타코트론, https://github.com/Kyubyong/tacotron_asr, 테스트 정확도 77.09%
- BiRNN LSTM, 테스트 정확도 84.66%
- BiRNN Seq2Seq + Luong Attention + 교차 엔트로피, 테스트 정확도 87.86%
- BiRNN Seq2Seq + Bahdanau Attention + 교차 엔트로피, 테스트 정확도 89.28%
- BiRNN Seq2Seq + Bahdanau Attention + CTC, 테스트 정확도 86.35%
- BiRNN Seq2Seq + Luong Attention + CTC, 테스트 정확도 80.30%
- CNN RNN + Bahdanau Attention, 테스트 정확도 80.23%
- 확장된 CNN RNN, 테스트 정확도 31.60%
- 웨이브넷, 테스트 정확도 75.11%
- Deep Speech 2, 테스트 정확도 81.40%
- Wav2Vec 전이 학습 BiRNN LSTM, 테스트 정확도 83.24%
철자 교정
전체 목록(노트북 4개)
- BERT 기반
- XLNET 기반
- BERT 기반 고속
- BERT 기반 정확도
분대 질문-답변
SQUAD 데이터세트로 교육을 받았습니다.
전체 목록(노트북 1개)
- 버트,
{ "exact_match" : 77.57805108798486 , "f1" : 86.18327335287402 }
형태소 분석
영어 Lemmatization 교육을 받았습니다.
전체 목록(노트북 6개)
- LSTM + Seq2Seq + 빔
- GRU + Seq2Seq + 빔
- LSTM + BiRNN + Seq2Seq + 빔
- GRU + BiRNN + Seq2Seq + 빔
- DNC + Seq2Seq + 욕심쟁이
- BiRNN + Bahdanau + Copynet
텍스트 확대
전체 목록(노트북 8개)
- 미리 훈련된 장갑
- GRU VAE-seq2seq-빔 TF 확률
- LSTM VAE-seq2seq-빔 TF 확률
- GRU VAE-seq2seq-beam + Bahdanau 주의 TF 확률
- VAE + 결정론적 Bahdanau 주의, https://github.com/HareeshBahuleyan/tf-var-attention
- VAE + VAE Bahdanau 주의, https://github.com/HareeshBahuleyan/tf-var-attention
- BERT-Base + 핵 샘플링
- XLNET-Base + 핵 샘플링
텍스트 분류
영어 감정 데이터 세트, 텍스트 분류 정확도 표에 대한 교육을 받았습니다.
전체 목록(노트북 79개)
- 기본 셀 RNN
- 기본 셀 RNN + Hinge
- 기본 셀 RNN + Huber
- 기본 셀 양방향 RNN
- 기본 셀 양방향 RNN + 힌지
- 기본 셀 양방향 RNN + Huber
- LSTM 셀 RNN
- LSTM 셀 RNN + 힌지
- LSTM 셀 RNN + Huber
- LSTM 셀 양방향 RNN
- LSTM 셀 양방향 RNN + Huber
- LSTM 셀 RNN + 드롭아웃 + L2
- GRU 셀 RNN
- GRU 셀 RNN + 힌지
- GRU 셀 RNN + Huber
- GRU 셀 양방향 RNN
- GRU 셀 양방향 RNN + 힌지
- GRU 셀 양방향 RNN + Huber
- LSTM RNN + Conv2D
- K-최대 전환수1일
- LSTM RNN + Conv1D + 고속도로
- LSTM RNN + 기본 어텐션
- LSTM 확장 RNN
- 레이어-노름 LSTM 셀 RNN
- 주의만 신경망
- 다중 헤드 주의 신경망
- 신경 튜링 머신
- LSTM Seq2Seq
- LSTM Seq2Seq + Luong 주의
- LSTM Seq2Seq + Bahdanau 주의
- LSTM Seq2Seq + 빔 디코더
- LSTM 양방향 Seq2Seq
- 포인터 넷
- LSTM 셀 RNN + Bahdanau 주의
- LSTM 셀 RNN + Luong 주의
- LSTM 셀 RNN + 스택 Bahdanau Luong 주의
- LSTM 셀 양방향 RNN + 역방향 Bahdanau + 순방향 Luong
- 바이트넷
- 빠르고 느린 LSTM
- 샴 네트워크
- LSTM Seq2Seq + tf.estimator
- 캡슐 레이어 + RNN LSTM
- 캡슐 레이어 + LSTM Seq2Seq
- 캡슐 레이어 + LSTM 양방향 Seq2Seq
- 중첩된 LSTM
- LSTM Seq2Seq + 고속도로
- 삼중 손실 + LSTM
- DNC(미분 신경 컴퓨터)
- ConvLSTM
- 시간적 전환 순
- 일괄 삼중 손실 + LSTM
- 빠른 텍스트
- 게이트 컨볼루션 네트워크
- 단순 반복 단위
- LSTM 계층적 주의 네트워크
- 양방향 변압기
- 동적 메모리 네트워크
- 엔터티 네트워크
- 엔드투엔드 메모리 네트워크
- BOW-Chars 심층 희소 네트워크
- Atrous CNN을 사용한 잔여 네트워크
- Atrous CNN + Bahdanau를 사용한 잔여 네트워크
- 깊은 피라미드 CNN
- 트랜스포머-XL
- 전이학습 GPT-2 345M
- 준-RNN
- 타코트론
- 슬라이스 GRU
- 슬라이스 GRU + Bahdanau
- 웨이브넷
- 전이 학습 BERT 베이스
- 전이 학습 XL-net Large
- LSTM BiRNN 글로벌 최대 및 평균 풀링
- 전이 학습 BERT 베이스 드롭 6개 레이어
- 전이 학습 BERT 큰 방울 12개 레이어
- 전이 학습 XL-net 베이스
- 전이 학습 ALBERT
- 전이학습 ELECTRA Base
- 전이학습 ELECTRA Large
텍스트 유사성
MNLI에서 교육을 받았습니다.
전체 목록(노트북 10개)
- BiRNN + 대비 손실, 테스트 정확도 73.032%
- BiRNN + 교차 엔트로피, 테스트 정확도 74.265%
- BiRNN + 원 손실, 테스트 정확도 75.857%
- BiRNN + 프록시 손실, 테스트 정확도 48.37%
- BERT 베이스 + 교차 엔트로피, 테스트 정확도 91.123%
- BERT 베이스 + 원 손실, 테스트 정확도 89.903%
- ELECTRA 염기 + 교차 엔트로피, 테스트 정확도 96.317%
- ELECTRA 베이스 + 원 손실, 테스트 정확도 95.603%
- XLNET 기본 + 교차 엔트로피, 테스트 정확도 93.998%
- XLNET 베이스 + 원 손실, 테스트 정확도 94.033%
텍스트 음성 변환
토론토 음성 데이터 세트에 대한 교육을 받았습니다.
전체 목록(노트북 8개)
- 타코트론, https://github.com/Kyubyong/tacotron
- CNN Seq2seq + 확장된 CNN 보코더
- Seq2Seq + Bahdanau 주의
- Seq2Seq + Luong 주의
- 확장된 CNN + Monothonic Attention + 확장된 CNN 보코더
- 확장된 CNN + Self Attention + 확장된 CNN 보코더
- Deep CNN + Monothonic Attention + Dilated CNN 보코더
- Deep CNN + Self Attention + Dilated CNN 보코더
주제 생성기
말레이시아 뉴스에 대한 교육을 받았습니다.
전체 목록(노트북 4개)
- TAT-LSTM
- TAV-LSTM
- MTA-LSTM
- 확장된 CNN Seq2seq
주제 모델링
영어 감성 데이터세트에서 추출되었습니다.
전체 목록(노트북 3개)
- LDA2Vec
- BERT주의
- XLNET 주의
비지도 추출 요약
임의의 책에 대한 훈련을 받았습니다.
전체 목록(노트북 3개)
- 건너 뛰기 벡터
- Atrous CNN을 사용한 잔여 네트워크
- Atrous CNN + Bahdanau를 사용한 잔여 네트워크
벡터라이저
영어 감정 데이터 세트를 학습했습니다.
전체 목록(노트북 11개)
- CBOW 샘플 소프트맥스를 사용한 단어 벡터
- CBOW 잡음 대비 추정을 사용한 단어 벡터
- 스킵그램 샘플 소프트맥스를 사용한 단어 벡터
- 스킵그램 노이즈 대비 추정을 사용한 단어 벡터
- 감독 임베디드
- 삼중 손실 + LSTM
- LSTM 자동 인코더
- 배치 전체 삼중 손실 LSTM
- 빠른 텍스트
- ELMO (biLM)
- 삼중 손실 + BERT
심상
전체 목록(노트북 4개)
- Bahdanau의 주의 히트맵
- Luong Attention의 주의 히트맵
- BERT 주의, https://github.com/hsm207/bert_attn_viz
- XLNET 주목
노년 보코더
토론토 음성 데이터 세트에 대한 교육을 받았습니다.
전체 목록(노트북 1개)
- 확장된 CNN
주목
전체 목록(노트북 8개)
- 바다나우
- 루옹
- 계층적
- 첨가물
- 부드러운
- 주의보다 주의
- 바다나우 API
- 루옹 API
딥러닝이 아닌
- 마르코프 챗봇
- 분해 요약(노트 3개)