Skip to content

kirill-ionkin/Deep_Learning_School_part_2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Deep_Learning_School_part_2

Данный репозиторий является кратким, структурированным конспектом изучаемого материала в процессе обучения в Deep Learning School

Оглавление

Организационная информация

Введение в NLP и классификация текста

Homework Simple Embeddings

Ставится задача поиска похожих по смыслу  вопросов(вопросы StackOverflow), а именно задача ранжирования вопросов.
1. Используются предобученные эмбеддинги слов
  - from gensim.models.keyedvectors import KeyedVectors
  - KeyedVectors.load_word2vec_format("SO_vectors_200.bin?download=1", binary=True)
2. Представление эмбеддинга предожения через эмбеддинги слов
3. Метрики ранжирования
  - Hits@K
  - DCG@K
4. Ранжирование по косинусной похожести
5. Обучение Word2Vec на корпусе похожих вопросов
- from gensim.models import Word2Vec
6. Применение различный токенизаторов, стеммингов, лемматизаторов, стоп-слов и т.д.

Embeddings

Homework Embeddings

Ставится задача семантической классификации твитов с помощью эмбеддингов(предобученных или обученных нами)
  1. Использование word2veс(предобученного) для получения эмбеддингов
    - word2vec = api.load("word2vec-google-news-300")
  2. Препроцессинг данных + различные способы получения эмбеддингов предложения по эмбеддингам слов
    - import gensim
    - import gensim.donloader as api
    - import nltk
  3. Нормализация эмбеддингов перед подачей их в нейронную сеть.
  4. Создание кастомного Datset для обучения модели
  5. Визуализация векторов предложений с помощью PCA
  6. Embedding for unknown words
    - Представление эмбеддинга незнакомого слова через его "ближний" контекст
    - Представление эмбеддинга незнакомого слова чреез обученный tfidf
      - from sklearn.feature_extraction.text import TfidfVectorizer
        - !pip install sparsesvd
        - from sparsesvd import sparsesvd
        - Библиотека для SVD разложения sparse matrix

Рекуррентные нейронные сети

Homework Text Classification

Ставится задача бинарной классификации текстов на "neg"(негативные) и "pos"(позитивные),
а такде предлагается понять, насколько хорошо модель "понимает" смысл слов и какие слова
влиют на результат  ответа модели.
  1. Использование torchtext:
    - datasets
    - Field, LabelField, BucketIterator
    - Vectors, GloVe
  2. Использование LSTM для задачи классификации
  3. Использование CNN для задачи классификации
  4. Библиотека для интерпретации того, насколько модель хорошо  понимает смысл слов 
    - !pip install -q captum
    - LayerIntegratedGradients, TokenReferenceBase, visualization
  5. Использование предобученных эмбеддингов для инициализации словаря модели 

Language modelling

Homework Part of Speech Tagger

Neural Machine Translation

Homework Seq2Seq with Attention

Ставится задача машинного перевола, для чего необходимо
реализовать архитектуру Seq2Seq с механизмом Attention для декодера.
  1. Использование torchtext для препроцессинга данных.
    - Field(tokenizer= ...,
            init_token="<sos>",
            eos_token="<eos>",
            lower=True
            )
    - TabularDataset
    - BucketIterator
  2. Encoder
    - LSTM
    - n_layers = 1
    - bidirectional = True
    - Преобразование hidden, cell на выходе из encoder, т.к.
      вследствие bidirectional размерность увеличивается  
  3. Temperature Softmax
    - Температурный Softmax, благодаря которому можно с помощью
      температуры сильнее выделять вероятность классов или
      наоборот делать распределение равномерным
  4. Attention(concat attention)
  5. Decoder with attention
    - GRU
    - n_layers = 1
    - bidirectional = False
  6. Seq2Seq
  7. Init params to Encoder, Decoder, Attention, Seq2Seq
  8. Other
    - Train loop
    - Val loop
    - Plot 
    - translation
    - Metric:  BLEU

Transformers

ELMO GPT BERT

Homework

About

Курс "Deep Learning", часть 2

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published