Spark MLLib: преобразование произвольных разреженных объектов в вектор фиксированной длины
Мы конвертируем модель линейной регрессии машинного обучения из Vowpal Wabbit в Spark MLLib. Vowpal Wabbit допускает произвольные разреженные функции, обучая модель на весах, подкрепленных связанным списком, тогда как Spark MLLib обучается на MLLib Vector
весов, который поддерживается массивом фиксированной длины.
Функции, которые мы передаем модели, являются произвольными строками, а не категориями. Vowpal Wabbit сопоставляет эти особенности весовым значениям 1.0
используя хеш Мы можем сделать то же самое отображение в MLLib, но ограничены массивом фиксированной длины. Можно ли обучить такую модель в MLLib, где размер пространства признаков неизвестен?
0 ответов
FeatureHasher сделает это и будет использовать ту же хеш-функцию, что и Vowpal Wabbit (MurmurHash3). VowpalWabbit и FeatureHasher по умолчанию имеют количество функций 2^18.
https://spark.apache.org/docs/2.3.1/api/java/org/apache/spark/ml/feature/FeatureHasher.html