Моим заключительным исследованием на бакалавриате было создание системы ответов на вопросы на основе онтологий для области путешествий. Для этого мы использовали подход классификации вопросов, при котором мы собрали вопросы, связанные с поездками, из Интернета и пометили данные на основе ожидаемого типа ответа. Ожидаемый тип ответа был помечен с использованием иерархической таксономии. Более подробную информацию о проекте можно найти здесь. Ниже приведены некоторые из функций, которые мы использовали в нашем классификаторе вопросов:

  • Uni Grams
  • Би граммы
  • Синонимы слова Head

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

Отсутствующие значения

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

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

Низкая дисперсия

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

Деревья решений и случайный лес

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

Высокая корреляция

Функции с более высокой корреляцией между собой означают, что эти две функции содержат одинаковую информацию. В качестве примера мы можем взять день рождения и возраст. Большинство алгоритмов машинного обучения предполагают, что переданные им функции не являются данными мультиколлинеарности. Таким образом, мы должны отбросить признаки с высокой корреляцией. Для этого мы можем использовать корреляционную матрицу. На естественном языке люди используют короткие формы при общении (Лос-Анджелес для Лос-Анджелеса и т. Д.). Поэтому для решения этой проблемы мы объединили столбцы с высокой корреляцией в один столбец.

Основным недостатком вышеупомянутых методов является то, что выбор функций должен в конечном итоге выполняться под контролем человека. Это может быть выполнено с помощью анализа главных компонентов (PCA).

Анализ главных компонентов (PCA)

Анализ главных компонентов (PCA) - это статистическая процедура, которая использует ортогональное преобразование для преобразования набора наблюдений возможно коррелированных переменных. PCA используется в качестве статистического метода машинного обучения для уменьшения размерности. PCA преобразует набор многомерных данных в новый набор измерений. Люди используют этот метод в основном для визуализации данных большого размера. В нашем проекте мы использовали иерархическую таксономию в качестве меток набора данных, поэтому при разработке таксономии у нас возникла огромная проблема с визуализацией данных. Таким образом, PCA использовался для преобразования разреженных данных большой размерности в трехмерное пространство данных.

Основным недостатком pca как метода уменьшения размеров является то, что его очень трудно интерпретировать, и, следовательно, он не работает с нелинейными данными. Если вы хотите использовать уменьшение размеров для нелинейных данных, вы можете использовать что-то вроде T-SNE или лапласовских собственных карт .