AI и машинное обучение

Учебник NLP для начинающих

24 урока · 6 разделов · бесплатно, без регистрации

Обработка естественного языка (NLP) — это область на стыке лингвистики и машинного обучения, которая учит компьютеры читать, понимать и порождать текст. Этот курс ведёт от классики к современности: вы разберёте, почему язык так труден для машин, научитесь превращать текст в числа (bag-of-words, TF-IDF, косинусная близость), построите классификатор тональности на наивном байесе, поймёте, как из счётчиков слов вырос word2vec и распределённые эмбеддинги, и дойдёте до механизма внимания и архитектуры трансформера, на которой стоят BERT и GPT. Математики ровно столько, сколько нужно для понимания, и максимум практики: ключевые идеи — токенизацию, TF-IDF, косинус, байес и веса внимания — вы посчитаете руками прямо в браузере на чистом Python. Нужны базовый Python и общее представление о машинном обучении.

Курс «NLP: обработка естественного языка» состоит из 6 разделов и 24 уроков: Введение и предобработка, Текст как числа (классика), Классические задачи и модели, Эмбеддинги слов, Нейросети для текста и внимание и Трансформеры и современный NLP. Уроки идут по порядку — от основ к более сложным темам, в каждом есть объяснение с примерами, а в конце — вопросы для самопроверки. К урокам привязаны задачи с автоматической проверкой: прочитали тему — сразу закрепили её кодом.

Программа курса

  1. 1 Введение и предобработка

    1. Что такое NLP и какие задачи оно решает

      Обзор NLP: классификация, перевод, NER, вопросно-ответные системы и генерация текста. Что общего у этих задач и зачем учить машины работать с языком.

    2. Почему язык труден для машин

      Неоднозначность, контекст, омонимы, идиомы и редкие слова: разбираем, почему естественный язык сложнее формальных языков и где спотыкаются простые подходы.

    3. Токенизация: слова, символы и подслова (BPE)

      Как разбить текст на токены: по словам, по символам и по подсловам (идея BPE). Запускаемые примеры токенизации на чистом Python и компромиссы каждого подхода.

    4. Нормализация: регистр, пунктуация, стоп-слова, стемминг

      Приведение текста к единому виду: нижний регистр, удаление пунктуации и стоп-слов, стемминг и лемматизация. Запускаемые примеры и когда что применять.

  2. 2 Текст как числа (классика)

    1. Bag-of-words: текст как мешок слов

      Модель «мешок слов»: превращаем документы в векторы частот через Counter. Запускаемый пример, идея словаря и почему теряется порядок слов.

    2. Проблема частых слов и формула TF-IDF

      Почему частые слова мешают, и как TF-IDF взвешивает термины: разбор формулы TF и IDF с запускаемым расчётом весов вручную на маленьком корпусе.

    3. N-граммы: возвращаем порядок слов

      N-граммы как способ частично учесть порядок слов и контекст в bag-of-words. Запускаемое построение биграмм и триграмм и компромисс размерности.

    4. Косинусная близость: насколько похожи два текста

      Как измерить похожесть документов-векторов через косинус угла между ними. Запускаемый расчёт косинусной близости вручную на bag-of-words векторах.

  3. 3 Классические задачи и модели

    1. Классификация текста: наивный байес на практике

      Как работает наивный байесовский классификатор для текста. Запускаемый спам-фильтр на маленьком корпусе: считаем вероятности слов руками.

    2. Метрики качества: precision, recall и F1

      Как измерять качество текстового классификатора: accuracy обманчива, нужны precision, recall и F1. Запускаемый расчёт метрик по матрице ошибок.

    3. Языковые модели на n-граммах

      Что такое языковая модель и как n-граммы предсказывают следующее слово. Запускаемая биграммная модель: вероятности и генерация текста.

    4. Пределы классики: почему счётчиков слов мало

      Где упираются bag-of-words, TF-IDF и n-граммы: нет смысла слов, разрежённость, слабый контекст. Мотивация перехода к эмбеддингам и нейросетям.

  4. 4 Эмбеддинги слов

    1. Распределённые представления: слово — это его контекст

      Идея эмбеддингов: смысл слова задаётся его окружением. Дистрибутивная гипотеза, плотные векторы и переход от индексов к осмысленной геометрии.

    2. Word2vec: как обучают эмбеддинги (skip-gram и CBOW)

      Идея word2vec: предсказывать слово по контексту или контекст по слову. Архитектуры skip-gram и CBOW, обучающие пары и что в итоге получается.

    3. Арифметика слов и похожесть на векторах

      Знаменитое king − man + woman ≈ queen и поиск похожих слов. Запускаемый расчёт косинусной близости на игрушечных эмбеддингах.

    4. Пределы статичных эмбеддингов: проблема омонимов

      Почему один вектор на слово — это мало: омонимы вроде «ключ» и «лук» получают усреднённый вектор. Мотивация контекстных эмбеддингов.

  5. 5 Нейросети для текста и внимание

    1. RNN и LSTM: нейросети с памятью

      Как рекуррентные сети читают текст по словам, сохраняя память о прошлом. Идея скрытого состояния, проблема длинных зависимостей и зачем нужен LSTM.

    2. Seq2seq и машинный перевод: энкодер и декодер

      Архитектура «последовательность в последовательность»: энкодер сжимает входное предложение, декодер порождает выход. Идея и узкое место context-вектора.

    3. Механизм внимания: на что смотреть

      Идея attention: вместо одного вектора смысла декодер взвешенно смотрит на все слова входа. Запускаемый расчёт весов внимания softmax на маленьком примере.

  6. 6 Трансформеры и современный NLP

    1. Архитектура трансформера и self-attention

      Почему трансформер вытеснил RNN: self-attention, параллельность и позиционное кодирование. Идея «каждое слово смотрит на все слова» наглядно.

    2. BERT: контекстные эмбеддинги и двунаправленность

      Как BERT даёт слову вектор с учётом контекста и почему читает предложение в обе стороны. Маскированное предобучение и решение проблемы омонимов.

    3. GPT и генеративные модели

      Как GPT порождает текст, предсказывая следующий токен. Декодерный трансформер, авторегрессия и связь с n-граммными моделями из начала курса.

    4. Предобучение, дообучение и экосистема

      Парадигма «предобучение → дообучение» и перенос знаний. Что такое fine-tuning, обзор Hugging Face и почему это изменило практику NLP.

    5. Применения, этика и что дальше

      Где NLP меняет мир, какие у него риски (предвзятость, галлюцинации, приватность) и куда двигаться дальше — мост к курсу про большие языковые модели.