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

Здесь я суммирую большинство концепций и помещаю их в формат «Шпаргалки» и надеюсь, что это поможет читателям взломать интервью по науке о данных.

Категории

Токенизация

  • Токенизация - это процесс преобразования последовательности символов в последовательность токенов.
  • Рассмотрим этот пример: The quick brown fox jumped over the lazy dog. В этом случае каждое слово (разделенное пробелом) будет токеном.
  • Иногда токенизация не дает однозначного ответа. Например, O'Neill можно токенизировать в o и neill, oneill или o'neill.
  • В некоторых случаях для токенизации требуется знание конкретного языка. Например, нет смысла токенизировать aren't на aren и t.
  • Более подробную информацию о токенизации можно найти здесь.

Вернуться к категориям

Стемминг и лемматизация

  • Целью как выделения корня, так и лемматизации является сокращение флективных форм, а иногда и словообразовательных форм слова до общей базовой формы.
  • Построение обычно относится к грубому эвристическому процессу, при котором у слов отрезаются концы.
  • Лемматизация обычно означает правильное выполнение действий с использованием словарного запаса и морфологического анализа слов.
  • При столкновении с токеном saw стемминг может вернуть только s, тогда как лемматизация попытается вернуть либо see, либо saw в зависимости от того, использовался ли токен как глагол или существительное.
  • Для более подробной информации отметьте здесь.

Вернуться к категориям

N-грамм

  • n-грамма - это непрерывная последовательность n элементов из заданного образца текста или речи.
  • N-грамм размера 1 называется «униграммой»; размер 2 - это «биграмма», размер 3 - это «триграмма». На современном языке большие размеры иногда обозначаются значением n, например, «четыре грамма», «пять граммов» и так далее.
  • Рассмотрим этот пример: The quick brown fox jumped over the lazy dog. bigram будет the quick, quick brown, brown fox, ..., то есть каждые два последовательных слова (или токенов); в то время как триграмма будет the quick brown, quick brown fox, brown fox jumped, ..., то есть каждые три последовательных слова (или токенов).
  • n-граммная модель моделирует последовательность, т.е. предсказывает следующее слово (n) с учетом предыдущих слов (1, 2, 3,…, n-1).
  • несколько граммов (биграмм и выше) фиксируют контекст.
  • Чтобы выбрать n в n-грамме, необходимы эксперименты и поиск компромисса между стабильностью оценки и ее уместностью. Эмпирическое правило: триграмма часто используется для больших обучающих корпусов (миллионы слов), тогда как биграмма часто используется для более мелких.
  • n-gram можно использовать как функции для машинного обучения и последующих задач НЛП.

Вернуться к категориям

Мешок слов

  • Модели машинного обучения не могут работать напрямую с необработанным текстом; скорее, они принимают числовые значения в качестве входных данных.
  • Пакет слов (BoW) создает словарь всех уникальных слов в нашем наборе данных и связывает уникальный индекс с каждым словом в словаре.
  • Это называется «мешком» слов, потому что это представление, которое полностью игнорирует порядок слов.
  • Рассмотрим этот пример двух предложений: (1) John likes to watch movies, especially horror movies. и (2) Mary likes movies too. Сначала мы создадим словарь уникальных слов (все в нижнем регистре и без знаков препинания): [john, likes, to, watch, movies, especially, horror, mary, too]. Затем мы можем представить каждое предложение, используя частоту терминов, то есть количество раз, когда термин встречается. Таким образом, (1) будет [1, 1, 1, 1, 2, 1, 1, 0, 0], а (2) будет [0, 1, 0, 0, 1, 0, 0, 1, 1].
  • Распространенной альтернативой использованию словарей является трюк с хешированием, когда слова напрямую сопоставляются с индексами с помощью функции хеширования.
  • По мере увеличения словарного запаса (десятки тысяч) вектор для представления коротких предложений / документа становится разреженным (почти все нули).

Вернуться к категориям

word2vec

  • Мелкие двухслойные нейронные сети, которые обучены конструировать лингвистический контекст слов.
  • Принимает в качестве входных данных большой корпус и создает векторное пространство, обычно имеющее несколько сотен измерений, и каждому слову в корпусе назначается вектор в этом пространстве.
  • Ключевой идеей является контекст: слова, которые часто встречаются в одном контексте, должны иметь одинаковое / противоположное значение.
  • Два варианта: (1) непрерывный мешок слов (CBOW): модель предсказывает текущее слово с учетом окна окружающих контекстных слов; (2) пропустить грамм: предсказывает окружающие слова контекста, используя текущее слово.

Вернуться к категориям

Спасибо за прочтение!

Если вам понравилось, подпишитесь на меня на Medium, чтобы узнать больше. Это отличное кардио для 👏 И поможет другим людям увидеть историю.

Если вы хотите и дальше получать статьи этого типа, вы можете поддержать меня, став Средним подписчиком.