Вопрос или проблема
Моя цель – определить текстовое сходство с использованием нескольких признаков. Некоторые из признаков являются текстовыми, для чего я использую (Tfhub 2.0) универсальный энкодер предложений. Есть и другие категориальные признаки, которые кодируются с использованием one-hot кодирования.
Например, для одной записи в моем наборе данных вектор признаков выглядит так:
- встраивание текстового признака – вектор размерности 512 – 1 X 512
- категориальный (неупорядоченный) вектор признаков – 1 X 500 (так как существует 500 уникальных значений в признаке)
- мой финальный вектор признаков – 1 X 1012
После этого я получаю матрицу сходства, используя косинусное сходство, чтобы определить, являются ли две такие записи семантически одинаковыми или нет.
Проблема в том, что существует различие в диапазоне значений для текстового признака (действительные числа) и признака с one-hot кодированием (0 или 1). Так мне следует масштабировать вектор с one-hot кодированием с помощью метода min-max или использовать какую-то другую технику?
Нет, не масштабируйте вектор с one-hot кодированием с помощью min-max масштабирования. Это потеряет смысл данных. One-hot кодирование означает, что значение данных полностью находится на одном измерении или нет. Для таких данных, которые являются только дробной частью измерения, нет смысла.
Лучшим вариантом для определения текстового сходства с использованием нескольких признаков является встраивание всех признаков в одно и то же пространство встраивания (включая категориальные признаки). StarSpace – это один из таких методов встраивания.
Ответ или решение
Вопрос о необходимости масштабирования категориальных признаков, закодированных методом one-hot, при использовании вместе с текстовыми признаками для оценки семантической схожести — это важная тема для понимания в области анализа данных и машинного обучения. Давайте разберем это более подробно.
Проблема масштабирования
Ваш набор данных состоит из текстового признака, представленного в виде вектора размерностью 512, и категориальных признаков, которые закодированы методом one-hot и составляют вектор размерностью 500. Это создает общий вектор характеристики размером 1012 элементов. При оценке семантической схожести с использованием косинусного расстояния важно учитывать диапазоны значений этих признаков.
Текстовые признаки, полученные с помощью Universal Sentence Encoder, представляют собой действительные числа, в то время как закодированные методом one-hot признаки принимают только два значения — 0 или 1. Поэтому существует значительная разница в диапазонности значений между текстовыми и категориальными признаками.
Необходимость масштабирования one-hotEncoded Признаков
1. Ушедшие при масштабировании значения
Метод one-hot кодирования создает бинарные признаки, где каждая уникальная категория представляется отдельным признаком, принимающим значение 1, если категория присутствует, и 0 — если отсутствует. Масштабирование, такое как Min-Max Scaling или стандартное масштабирование, изменит эти значения и превратит их в диапазон от 0 до 1 (в случае Min-Max) или в стандартное нормальное распределение (в случае Z-оценки). Это не только изменит их природу, но и может вводить в заблуждение при интерпретации значения признаков, так как один бинарный фактор будет терять свою идентичность и четкое разделение между принадлежностью и неподлежащестью к определенной категории.
2. Влияние на оценку схожести
При вычислении косинусного расстояния, если вы произведете масштабирование one-hot признаков, это может привести к искажениям в итоговой оценке схожести. Вектор признаков с одной стороны будет содержать дробные значения, а с другой — бинарные, и это создаст дополнительную сложность при интерпретации результатов. Результирующая семантическая схожесть может не отражать реального значения сходства между текстами.
Рекомендации
1. Не масштабируйте one-hot признаки
На основании вышеизложенного, рекомендуется не масштабировать one-hot закодированные признаки. Сохраните их в бинарной форме (0 или 1), чтобы они сохраняли свою интерпретацию.
2. Используйте метод встраивания для всех признаков
Для достижения более целостной и согласованной модели рекомендуется использовать методы, которые позволяют внедрить все признаки, включая категориальные, в одно общее встраивание. Например, использование инструмента StarSpace, который позволяет обучать модели на основе различных типов данных, может улучшить качество семантической оценки и сопоставление.
Заключение
Необходимо учитывать, что масштабирование one-hot закодированных признаков не только приводит к потере важной информации, но также усложняет интерпретацию данных и может исказить результаты. Следуя предложенным рекомендациям, вы сможете достичь более точных и надежных результатов в вычислении семантической схожести с использованием различных признаков.