Я хочу сделать классификацию на мои текстовые данные. У меня есть 300 classes
200 учебных документов на класс (так 60000 documents in total
), и это, вероятно, приведет к очень большим размерам данных (возможно, мы просматриваем более 1 миллиона измерений ).
Я хотел бы выполнить следующие шаги в конвейере (просто чтобы дать вам представление о моих требованиях):
- Преобразование каждого документа в векторный вектор (
tf-idf
илиvector space model
) Feature selection
(Mutual Information
желательно на основе или любых других стандартных)- Обучение классификатора (
SVM
,Naive Bayes
,Logistic Regression
илиRandom Forest
) - Прогнозирование невидимых данных на основе обученной модели классификатора.
Итак, вопрос в том, какие инструменты / рамки я использую для обработки таких многомерных данных? Мне известны обычные подозреваемые (R, WEKA ...), но, насколько мне известно (возможно, я ошибаюсь), возможно, никто из них не сможет обработать такие большие данные. Есть ли какой-нибудь другой готовый инструмент, на который я мог бы взглянуть?
Если я должен распараллелить это, я должен смотреть на Apache Mahout ? Похоже, он еще не совсем обеспечивает необходимую мне функциональность.
Спасибо всем заранее.
Обновление: я просмотрел этот сайт , список рассылки R и Интернет в целом. Мне кажется, что в моей ситуации могут возникнуть следующие проблемы:
(1) Предварительная обработка моих данных с использованием R ( в частности, пакета tm ) может быть непрактичной , поскольку tm
будет слишком медленной.
(2) Поскольку мне нужно будет использовать ансамбль пакетов R (предварительная обработка, разреженные матрицы, классификаторы и т. Д.), Взаимодействие между пакетами может стать проблемой, и я могу подвергнуться дополнительным расходам при преобразовании данных из одного формата в другой. , Например, если я выполняю предварительную обработку с использованием tm
(или внешнего инструмента, такого как WEKA), мне нужно будет найти способ преобразовать эти данные в форму, которую могут прочитать библиотеки HPC в R. И опять же, мне неясно, будут ли пакеты классификатора напрямую принимать данные, предоставленные библиотеками HPC.
Я на правильном пути? И что более важно, я понимаю?
foreach
библиотеку для записи параллельного кода на R. Это особенно хорошо работает в сочетании со случайными лесами, которые по своей природе легко распараллелить.