Представление текста в виде тензоров

Урок 14 из 25 курса «Основы ИИ для начинающих»: официальный курс Microsoft AI for Beginners (Майкрософт) на русском языке. Урок входит в платный доступ; первые уроки курса бесплатно.

О чём урок

В первой части этого раздела мы сосредоточимся на задаче классификации текста. Мы будем использовать набор данных AG News, который содержит новостные статьи, например: Категория: Наука/Технологии Заголовок: Компания из Кентукки получила грант на изучение пептидов (AP) Текст: AP - Компания, основанная исследователем химии из Университета Луисвилля, получила грант на разработку... Наша цель: классифицировать новостной материал по одной из категорий на основе текста. Если вы хотите решать задачи обработки естественного языка (NLP) с помощью нейронных сетей, вам нужен способ представления текста в виде тензоров. Компьютеры уже представляют текстовые символы в виде чисел, которые отображаются на экране с использованием таких кодировок, как ASCII или UTF-8. Источник изображения Как люди, мы понимаем, что означает каждая буква и как все символы объединяются, чтобы сформировать слова предложения. Однако компьютеры сами по себе такого понимания не имеют, и нейронная сеть должна обучиться этому значению в процессе тренировки. Поэтому для представления текста можно использовать разные подходы: Побуквенное представление: текст представляется путём обработки каждого символа как числа. Если в вашем текстовом корпусе C различных символов, то слово Hello будет представлено тензором размером 5xC. Каждая буква будет соответствовать столбцу тензора в one-hot кодировке. Пословное представление: создаётся словарь всех слов в тексте, а затем слова представляются с использованием one-hot кодировки. Этот подход несколько лучше, так как каждая буква сама по себе не имеет большого значения, и, используя более высокоуровневые семантические концепции, слова, мы упрощаем задачу для нейронной сети. Однако из-за большого размера словаря приходится работать с высокоразмерными разреженными тензорами. Независимо от представления, сначала нужно преобразовать текст в последовательность токенов, где токеном может быть символ, слово или даже часть слова. Затем токен преобразуется в число, обычно с использованием словаря, и это число можно подать в нейронную сеть с помощью one-hot кодировки. В естественном языке точное значение слов можно определить только в контексте. Например, значения нейронная сеть и рыболовная сеть совершенно разные.

План урока

  1. Викторина перед лекцией
  2. Классификация текста
  3. Представление текста
  4. N-граммы
  5. Мешок слов и TF/IDF
  6. ✍️ Упражнения: Представление текста
  7. Заключение
  8. 🚀 Задание

Урок входит в полный доступ. Полный текст и видео открываются после оплаты. Первые уроки каждого курса бесплатны.

Полезные гиды