Как оценить объем памяти, необходимый для двоичного классификатора? - PullRequest
0 голосов
/ 31 января 2012

Скажем, я хочу создать двоичный классификатор для обнаружения спам-сообщений.У меня есть миллиард обучающих примеров и около 20 функций.Я хочу, чтобы мой обученный классификатор поместился в памяти (я буду запускать его на облачных и дисковых операциях, которые на самом деле являются вызовами rpc, будут стоить очень ).

Мой вопрос: как я могуоцените объем памяти, который мне понадобится для этого?Скажем, мой классификатор - «Случайный лес», и я ничего не знаю о распространении спам-сообщений в моем учебном наборе.

Только цифры: два класса, миллиард примеров, 20 функций.

Возможна ли такая оценка вообще?Как это можно сделать?

1 Ответ

2 голосов
/ 31 января 2012

Для классификации спама вам, вероятно, следует запустить линейный классификатор для функций вхождения слов + биграммы + доменные имена или IP-адреса, встречающиеся в ссылках + материал, извлеченный из заголовков и контекста SMTP.

В этом случае вы можете хэшировать объекты в 2 ** 18 измерениях (используя, например, vowpal wabbit ), умноженных на 8 байт на объекты, что делает вас 2 МБ моделью в памяти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...