В основном вам нужно кодировать ваши текстовые данные как двоичные категории.
Например, допустим, у вас есть данные
affix shape
==============
ing lower
initcap
ed allcaps
То, что вы хотите отправить в svmstruct, выглядит примерно так:
affix_ing:1 shape_lower:1
shape_initcap:1
affix_ed:1 shape_allcaps
Теперь вы не можете использовать слова в качестве идентификаторов столбцов, но svmstruct использует разреженный формат, поэтому вы можете использовать отдельные номера столбцов, если они уникальны.
Это отличное приложение для хеш-функции. Таким образом, метод заключается в том, чтобы создавать идентификаторы столбцов на лету и фиктивно кодировать ваши дискретные данные.
hash(colName + colValue) => 1
В зависимости от ваших данных вам может не понадобиться colName. Может ли colName столкнуться с colValue?
Вы можете использовать хэш-функцию, такую как бормотание или городской хеш, чтобы получить огромное пространство с быстрым вычислением и низким уровнем коллизий.
person
dwatson
schedule
26.11.2014