NLP-Models-Tensorflow , reúne modelos de aprendizaje automático y aprendizaje profundo de tensorflow para problemas de PNL, simplifica el código dentro de Jupyter Notebooks al 100% .
Tabla de contenido
- Resumen abstracto
- chatbot
- Analizador de dependencias
- Etiquetado de entidades
- Resumen extractivo
- Generador
- Detección de idioma
- Traducción automática neuronal
- LOC
- Etiquetado de puntos de venta
- Preguntas-Respuestas
- Pares de oraciones
- Voz a texto
- Corrección ortográfica
- Preguntas y respuestas de SQUAD
- Derivado
- Aumento de texto
- Clasificación de texto
- Similitud de texto
- Texto a voz
- Generador de temas
- Modelado de temas
- Resumen extractivo no supervisado
- Vectorizador
- Vocoder de viejo a joven
- Visualización
- Atención
Objetivo
Las implementaciones originales son bastante complejas y no son realmente aptas para principiantes. Entonces traté de simplificar la mayor parte. Además, hay toneladas de documentos de implementación que aún no se han publicado. ¡Así que siéntete libre de utilizarlo para tu propia investigación!
Adjuntaré repositorios de github para modelos que no implementé desde cero, básicamente copio, pego y soluciono esos códigos para problemas obsoletos.
Versión tensorflow
Tensorflow versión 1.13 y superior únicamente, no incluida la versión 2.X. 1,13 <flujo tensor < 2,0
pip install -r requirements.txt
Contenido
Resumen abstracto
Capacitado en noticias de la India.
Precisión basada únicamente en 10 épocas, calculada utilizando posiciones de palabras.
Lista completa (12 cuadernos)
- LSTM Seq2Seq utiliza modelado de temas, precisión de la prueba 13,22%
- LSTM Seq2Seq + Luong Atención mediante modelado de temas, precisión de la prueba 12,39%
- LSTM Seq2Seq + Beam Decoder usando modelado temático, precisión de prueba 10,67%
- LSTM Bidireccional + Atención Luong + Decodificador de haz usando modelado temático, precisión de prueba 8,29%
- Pointer-Generator + Bahdanau, https://github.com/xueyouluo/my_seq2seq, precisión de la prueba 15,51%
- Copynet, precisión de la prueba 11,15%
- Pointer-Generator + Luong, https://github.com/xueyouluo/my_seq2seq, precisión de la prueba 16,51%
- Seq2Seq dilatado, precisión de la prueba 10,88%
- Seq2Seq dilatado + Atención propia, precisión de la prueba 11,54%
- BERT + CNN Seq2seq dilatado, precisión de la prueba 13,5%
- autoatención + Generador de punteros, precisión de la prueba 4,34%
- Dilatado-CNN Seq2seq + Generador de puntero, precisión de la prueba 5,57%
chatbot
Capacitado en el corpus Cornell Movie Dialog, tabla de precisión en chatbot.
Lista completa (54 cuadernos)
- Celda basica Seq2Seq-manual
- LSTM Seq2Seq-manual
- GRU Seq2Seq-manual
- Celda básica Seq2Seq-API codiciosa
- LSTM Seq2Seq-API codicioso
- GRU Seq2Seq-API codicioso
- Célula básica Bidireccional Seq2Seq-manual
- LSTM Bidireccional Seq2Seq-manual
- GRU Bidireccional Seq2Seq-manual
- Celda básica Bidireccional Seq2Seq-API Greedy
- LSTM bidireccional Seq2Seq-API codicioso
- GRU bidireccional Seq2Seq-API codicioso
- Celda básica Seq2Seq-manual + Atención Luong
- LSTM Seq2Seq-manual + Atención Luong
- GRU Seq2Seq-manual + Atención Luong
- Celda básica Seq2Seq-manual + Atención Bahdanau
- LSTM Seq2Seq-manual + Atención Bahdanau
- GRU Seq2Seq-manual + Bahdanau Atención
- LSTM Bidireccional Seq2Seq-manual + Atención Luong
- GRU Bidireccional Seq2Seq-manual + Atención Luong
- LSTM Bidireccional Seq2Seq-manual + Atención Bahdanau
- GRU Bidireccional Seq2Seq-manual + Atención Bahdanau
- LSTM Bidireccional Seq2Seq-manual + Bahdanau hacia atrás + Luong hacia adelante
- GRU Bidireccional Seq2Seq-manual + Bahdanau hacia atrás + Luong hacia adelante
- LSTM Seq2Seq-API Codicioso + Atención Luong
- GRU Seq2Seq-API Codicioso + Atención Luong
- LSTM Seq2Seq-API Codicioso + Atención Bahdanau
- GRU Seq2Seq-API Codicioso + Atención Bahdanau
- Decodificador de haz LSTM Seq2Seq-API
- Decodificador de haz GRU Seq2Seq-API
- LSTM Bidireccional Seq2Seq-API + Atención Luong + Decodificador de haz
- GRU Bidireccional Seq2Seq-API + Luong Atención + Decodificador de haz
- LSTM Bidireccional Seq2Seq-API + Bahdanau hacia atrás + Luong hacia adelante + Atención de Stack Bahdanau Luong + Decodificador de haz
- GRU Bidireccional Seq2Seq-API + Bahdanau hacia atrás + Luong hacia adelante + Atención de Stack Bahdanau Luong + Decodificador de haz
- Bytenet
- LSTM Seq2Seq + tf.estimador
- Capas de cápsulas + LSTM Seq2Seq-API Greedy
- Capas de cápsula + LSTM Seq2Seq-API + Luong Attention + Beam Decoder
- LSTM Bidireccional Seq2Seq-API + Bahdanau hacia atrás + Luong hacia adelante + Atención de Stack Bahdanau Luong + Decodificador de haz + Abandono + L2
- DNC Sec2Seq
- LSTM Bidireccional Seq2Seq-API + Atención Monótica Luong + Decodificador de haz
- LSTM Bidireccional Seq2Seq-API + Atención monótica de Bahdanau + Decodificador de haz
- Red de memoria de extremo a extremo + celda básica
- Red de memoria de extremo a extremo + celda LSTM
- Atención es todo lo que necesitas
- Transformador-XL
- Atención es todo lo que necesitas + Beam Search
- Transformador-XL + LSTM
- GPT-2 + LSTM
- CNN Seq2seq
- Codificador de conversión + LSTM
- Tacotron + Decodificador codicioso
- Tacotron + Decodificador de haz
- NMT de Google
Analizador de dependencias
Capacitado en CONLL Dependencia del Inglés. Conjunto de entrenamiento para entrenar, conjuntos de desarrollo y prueba para probar.
Stackpointer y Biaffine-attention originalmente de https://github.com/XuezheMax/NeuroNLP2 escrito en Pytorch.
Precisión basada en la precisión del arco, los tipos y la raíz después de 15 épocas únicamente.
Lista completa (8 cuadernos)
- RNN bidireccional + CRF + Biaffine, precisión de arco 70,48%, precisión de tipos 65,18%, precisión de raíz 66,4%
- RNN bidireccional + Bahdanau + CRF + Biaffine, precisión de arco 70,82 %, precisión de tipos 65,33 %, precisión de raíz 66,77 %
- RNN bidireccional + Luong + CRF + Biaffine, precisión de arco 71,22 %, precisión de tipos 65,73 %, precisión de raíz 67,23 %
- BERT Base + CRF + Biaffine, precisión de arco 64,30%, precisión de tipos 62,89%, precisión de raíz 74,19%
- RNN bidireccional + Atención biafina + Entropía cruzada, precisión de arco 72,42 %, precisión de tipos 63,53 %, precisión de raíz 68,51 %
- Base BERT + Atención biafina + Entropía cruzada, precisión de arco 72,85 %, precisión de tipos 67,11 %, precisión de raíz 73,93 %
- RNN bidireccional + Stackpointer, precisión de arco 61,88%, precisión de tipos 48,20%, precisión de raíz 89,39%
- Base XLNET + Atención biafina + Entropía cruzada, precisión de arco 74,41 %, precisión de tipos 71,37 %, precisión de raíz 73,17 %
Etiquetado de entidades
Capacitado en CONLL NER.
Lista completa (9 cuadernos)
- RNN + CRF bidireccional, precisión de prueba 96%
- RNN bidireccional + Atención Luong + CRF, precisión de la prueba 93%
- RNN bidireccional + Atención Bahdanau + CRF, precisión de la prueba 95%
- Char Ngrams + RNN bidireccional + Atención Bahdanau + CRF, precisión de la prueba 96%
- Char Ngrams + RNN bidireccional + Atención Bahdanau + CRF, precisión de la prueba 96%
- Char Ngrams + Red Residual + Atención Bahdanau + CRF, precisión de la prueba 69%
- Char Ngrams + Atención es lo que todos necesitáis + CRF, precisión de la prueba 90%
- BERT, precisión de la prueba 99%
- XLNET-Base, precisión de prueba del 99%
Resumen extractivo
Capacitado en el conjunto de datos de CNN News.
Precisión basada en ROUGE-2.
Lista completa (4 cuadernos)
- LSTM RNN, precisión de la prueba 16,13%
- CNN dilatado, precisión de la prueba 15,54%
- Atención multicabezal, precisión de la prueba 26,33%
- Base BERT
Generador
Entrenado en el conjunto de datos de Shakespeare.
Lista completa (15 cuadernos)
- RNN + LSTM según caracteres
- RNN por caracteres + búsqueda de haz
- RNN por caracteres + LSTM + incrustación
- RNN + LSTM en términos de palabras
- RNN en palabras + LSTM + incrustación
- En cuanto a caracteres + Seq2Seq + GRU
- Palabras + Seq2Seq + GRU
- RNN basado en caracteres + LSTM + Atención de Bahdanau
- RNN basado en caracteres + LSTM + Atención Luong
- En términos de palabras + Seq2Seq + GRU + Beam
- En cuanto a caracteres + Seq2Seq + GRU + Atención Bahdanau
- Palabras + Seq2Seq + GRU + Atención Bahdanau
- Búsqueda de haz CNN + dilatada por caracteres
- Transformador + Búsqueda de haz
- Transformador XL + Búsqueda de haz
Detección de idioma
Entrenado en el conjunto de datos de Tatoeba.
Lista completa (1 cuadernos)
- Char N-Grams de texto rápido
Traducción automática neuronal
Formación en inglés-francés, tabla de precisión en traducción automática neuronal.
Lista completa (53 cuadernos)
1.basic-seq2seq 2.lstm-seq2seq 3.gru-seq2seq 4.basic-seq2seq-contrib-codicioso 5.lstm-seq2seq-contrib-codicioso 6.gru-seq2seq-contrib-codicioso 7.basic-birnn-seq2seq 8.lstm-birnn-seq2seq 9.gru-birnn-seq2seq 10.basic-birnn-seq2seq-contrib-codicioso 11.lstm-birnn-seq2seq-contrib-codicioso 12.gru-birnn-seq2seq-contrib-codicioso 13.basic-seq2seq-luong 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-greedy-luong 26.gru-seq2seq-contrib-greedy-luong 27.lstm-seq2seq-contrib-greedy-bahdanau 28.gru-seq2seq-contrib-greedy-bahdanau 29.lstm-seq2seq- contribución-beam-luong 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-beam-luong 35.gru-birnn-seq2seq-contrib-beam-bahdanau 36.gru-birnn-seq2seq-contrib-beam-luong 37.lstm-birnn-seq2seq-contrib-beam -luongmonotónico 38.gru-birnn-seq2seq-contrib-beam-luongmonotic 39.lstm-birnn-seq2seq-contrib-beam-bahdanaumonotonic 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 .transformador-codificador-transformador-decodificador 48.transformer-codificador-lstm-decodificador-codicioso 49.bertmultilanguage-codificador-bertmultilanguage-decodificador 50.bertmultilanguage-codificador-lstm-decodificador 51.bertmultilanguage-codificador-transformador-decodificador 52.bertenglish-codificador-transformador-decodificador 53.transformer -t2t-2gpu
OCR (reconocimiento óptico de caracteres)
Lista completa (2 cuadernos)
- CNN + LSTM RNN, precisión de prueba 100%
- Im2Latex, precisión de prueba 100%
Etiquetado POS
Capacitado en CONLL POS.
Lista completa (8 cuadernos)
- RNN + CRF bidireccional, precisión de la prueba 92%
- RNN bidireccional + Atención Luong + CRF, precisión de la prueba 91%
- RNN bidireccional + Atención Bahdanau + CRF, precisión de la prueba 91%
- Char Ngrams + RNN bidireccional + Atención Bahdanau + CRF, precisión de la prueba 91%
- Char Ngrams + RNN bidireccional + Atención Bahdanau + CRF, precisión de la prueba 91%
- Char Ngrams + Red Residual + Atención Bahdanau + CRF, precisión de la prueba 3%
- Char Ngrams + Atención es lo que todos necesitáis + CRF, precisión de la prueba 89%
- BERT, precisión de la prueba 99%
Preguntas-Respuestas
Capacitado en el conjunto de datos bAbI.
Lista completa (4 cuadernos)
- Red de memoria de extremo a extremo + celda básica
- Red de memoria de extremo a extremo + celda GRU
- Red de memoria de extremo a extremo + celda LSTM
- Memoria dinámica
par de oraciones
Capacitado en la película de Cornell: Corpus de diálogos
Lista completa (1 cuadernos)
- BERT
Voz a texto
Capacitado con el conjunto de datos de voz de Toronto.
Lista completa (11 cuadernos)
- Tacotron, https://github.com/Kyubyong/tacotron_asr, precisión de la prueba 77,09%
- BiRNN LSTM, precisión de la prueba 84,66%
- BiRNN Seq2Seq + Luong Atención + Entropía cruzada, precisión de la prueba 87,86%
- BiRNN Seq2Seq + Atención de Bahdanau + Entropía cruzada, precisión de la prueba 89,28%
- BiRNN Seq2Seq + Bahdanau Atención + CTC, precisión de la prueba 86,35%
- BiRNN Seq2Seq + Luong Atención + CTC, precisión de la prueba 80,30%
- CNN RNN + Bahdanau Atención, precisión de la prueba 80,23%
- CNN RNN dilatado, precisión de la prueba 31,60%
- Wavenet, precisión de la prueba 75,11%
- Deep Speech 2, precisión de la prueba 81,40%
- Wav2Vec Transferencia de aprendizaje BiRNN LSTM, precisión de la prueba 83,24%
Corrección ortográfica
Lista completa (4 cuadernos)
- Base BERT
- Base XLNET
- BERT-Base rápido
- BERT-Base precisa
Preguntas y respuestas de SQUAD
Capacitado en el conjunto de datos SQUAD.
Lista completa (1 cuadernos)
- BERT,
{ "exact_match" : 77.57805108798486 , "f1" : 86.18327335287402 }
Derivado
Capacitado en Lematización del Inglés.
Lista completa (6 cuadernos)
- LSTM + Seq2Seq + Haz
- GRU + Seq2Seq + Haz
- LSTM + BiRNN + Seq2Seq + Haz
- GRU + BiRNN + Seq2Seq + Haz
- DNC + Seq2Seq + Codicioso
- BiRNN + Bahdanau + Copynet
Aumento de texto
Lista completa (8 cuadernos)
- Guante preentrenado
- GRU VAE-seq2seq-beam TF-probabilidad
- Probabilidad TF de haz LSTM VAE-seq2seq-beam
- GRU VAE-seq2seq-beam + Bahdanau Atención TF-probabilidad
- VAE + Atención determinista Bahdanau, https://github.com/HareeshBahuleyan/tf-var-attention
- VAE + VAE Bahdanau Atención, https://github.com/HareeshBahuleyan/tf-var-attention
- BERT-Base + muestreo de núcleo
- XLNET-Base + muestreo de núcleos
Clasificación de texto
Capacitado en un conjunto de datos de sentimiento en inglés, tabla de precisión en clasificación de texto.
Lista completa (79 cuadernos)
- RNN de celda básica
- Celda básica RNN + Bisagra
- Celda básica RNN + Huber
- RNN bidireccional de celda básica
- Celda básica Bidireccional RNN + Bisagra
- Celda básica bidireccional RNN + Huber
- RNN de celda LSTM
- Celda LSTM RNN + bisagra
- Célula LSTM RNN + Huber
- RNN bidireccional de celda LSTM
- Celda LSTM RNN bidireccional + Huber
- RNN de celda LSTM + Abandono + L2
- RNN de celda GRU
- Celda GRU RNN + Bisagra
- Célula GRU RNN + Huber
- RNN bidireccional de celda GRU
- Celda GRU Bidireccional RNN + Bisagra
- Celda GRU bidireccional RNN + Huber
- LSTM RNN + Conv2D
- K-máx Conv1d
- LSTM RNN + Conv1D + Autopista
- LSTM RNN + Atención básica
- RNN dilatado LSTM
- RNN de celda LSTM con norma de capa
- Sólo red neuronal de atención
- Red neuronal de atención multicabezal
- Máquina de Turing neuronal
- LSTM Seq2Seq
- LSTM Seq2Seq + Atención Luong
- LSTM Seq2Seq + Bahdanau Atención
- LSTM Seq2Seq + Decodificador de haz
- LSTM Seq2Seq bidireccional
- Red de puntero
- Celda LSTM RNN + Bahdanau Atención
- Celda LSTM RNN + Atención Luong
- Celda LSTM RNN + Pila Bahdanau Luong Atención
- Celda LSTM RNN bidireccional + Bahdanau hacia atrás + Luong hacia adelante
- Bytenet
- LSTM rápido-lento
- Red siamesa
- LSTM Seq2Seq + tf.estimador
- Capas de cápsula + RNN LSTM
- Capas de cápsula + LSTM Seq2Seq
- Capas de cápsula + LSTM Bidireccional Seq2Seq
- LSTM anidado
- LSTM Seq2Seq + Autopista
- Pérdida de triplete + LSTM
- DNC (computadora neuronal diferenciable)
- ConvLSTM
- Red de conversión temporal
- Pérdida de triplete por lotes + LSTM
- Texto rápido
- Red de convolución cerrada
- Unidad recurrente simple
- Red de atención jerárquica LSTM
- Transformadores bidireccionales
- Red de memoria dinámica
- Red de entidades
- Red de memoria de extremo a extremo
- Red escasa y profunda de BOW-Chars
- Red residual usando Atrous CNN
- Red residual utilizando Atrous CNN + Bahdanau Atención
- Pirámide profunda CNN
- Transformador-XL
- Transferir aprendizaje GPT-2 345M
- Cuasi-RNN
- Tacotrón
- Rebanar gru
- Rebanada GRU + Bahdanau
- red de ondas
- Transferir aprendizaje BERT Base
- Transferir aprendizaje XL-net Grande
- LSTM BiRNN global Max y agrupación promedio
- Transferir aprendizaje BERT Base drop 6 capas
- Transferir aprendizaje BERT Caída grande 12 capas
- Transferir aprendizaje XL-net Base
- Transferir el aprendizaje ALBERT
- Transferir aprendizaje ELECTRA Base
- Transferir aprendizaje ELECTRA Grande
Similitud de texto
Entrenado en MNLI.
Lista completa (10 cuadernos)
- BiRNN + Pérdida de contraste, precisión de la prueba 73,032%
- BiRNN + Entropía cruzada, precisión de la prueba 74,265%
- BiRNN + Pérdida de círculo, precisión de la prueba 75,857%
- BiRNN + Pérdida de proxy, precisión de la prueba 48,37%
- BERT Base + Entropía cruzada, precisión de la prueba 91,123%
- BERT Base + Pérdida de círculo, precisión de la prueba 89,903%
- ELECTRA Base + Entropía cruzada, precisión de la prueba 96,317%
- ELECTRA Base + Pérdida de círculo, precisión de prueba 95,603%
- XLNET Base + Entropía cruzada, precisión de la prueba 93,998%
- XLNET Base + Pérdida de círculo, precisión de la prueba 94,033%
Texto a voz
Capacitado con el conjunto de datos de voz de Toronto.
Lista completa (8 cuadernos)
- Tacotrón, https://github.com/Kyubyong/tacotron
- CNN Seq2seq + Vocoder CNN dilatado
- Seq2Seq + Atención Bahdanau
- Seq2Seq + Atención Luong
- CNN dilatada + Atención monotónica + Vocoder CNN dilatado
- CNN dilatada + Autoatención + Vocoder CNN dilatada
- CNN profunda + Atención monotónica + Vocoder CNN dilatado
- CNN profunda + Atención propia + Vocoder CNN dilatado
Generador de temas
Capacitado en noticias de Malasia.
Lista completa (4 cuadernos)
- TAT-LSTM
- TAV-LSTM
- MTA-LSTM
- CNN Seq2seq dilatado
Modelado de temas
Extraído del conjunto de datos de sentimiento en inglés.
Lista completa (3 cuadernos)
- LDA2Vec
- Bert Atención
- Atención XLNET
Resumen extractivo no supervisado
Entrenado en libros aleatorios.
Lista completa (3 cuadernos)
- Vector de saltarse el pensamiento
- Red residual usando Atrous CNN
- Red residual utilizando Atrous CNN + Bahdanau Atención
Vectorizador
Capacitado en un conjunto de datos de sentimiento en inglés.
Lista completa (11 cuadernos)
- Vector de Word usando softmax de muestra CBOW
- Vector de palabras utilizando estimación contrastiva de ruido CBOW
- Vector de Word usando softmax de muestra de skipgram
- Vector de palabras utilizando estimación contrastiva de ruido skipgram
- Integrado supervisado
- Pérdida de triplete + LSTM
- Codificador automático LSTM
- LSTM con pérdida de tripletes por lotes
- Texto rápido
- ELMO (biLM)
- Triplete-pérdida + BERT
Visualización
Lista completa (4 cuadernos)
- Mapa de calor de atención en Bahdanau Atención
- Mapa de calor de atención en Luong Atención
- Atención BERT, https://github.com/hsm207/bert_attn_viz
- Atención XLNET
Vocoder de viejo a joven
Capacitado con el conjunto de datos de voz de Toronto.
Lista completa (1 cuadernos)
- CNN dilatada
Atención
Lista completa (8 cuadernos)
- Bahdanau
- Luong
- Jerárquico
- Aditivo
- Suave
- Atención sobre atención
- API de Bahdanau
- API de Luong
Aprendizaje no profundo
- chatbot de Markov
- Resumen de descomposición (3 cuadernos)