Крупномасштабное Машинное обучение [закрывается]

26
задан user387263 8 July 2010 в 23:58
поделиться

6 ответов

Если только пространство состояний классификации, которое вы пытаетесь изучить, не очень велико, я бы ожидал, что в наборе данных, ориентированном на текстовую обработку, с 10-100 миллиардами записей или обучающих выборок будет значительная избыточность. Грубо говоря, я сомневаюсь, что для обучения надежных классификаторов, которые будут хорошо работать при тестировании с перекрестной валидацией, потребуется намного больше, чем 1-2% случайной выборки.

Быстрый поиск литературы позволил найти следующие соответствующие работы. В статье Tsang утверждается O(n) временная сложность для n обучающих выборок, и существует программное обеспечение, связанное с ним, доступное как LibCVM toolkit. В статье Wolfe описывается распределенный EM-подход, основанный на MapReduce.

Наконец, на конференции NIPS 2009 был проведен семинар Large-Scale Machine Learning, на котором, похоже, было много интересных и актуальных презентаций.

Ссылки

Ivor W. Tsang, James T. Kwok, Pak-Ming Cheung (2005). "Core Vector Machines: Fast SVM Training on Very Large Data Sets", Journal of Machine Learning Research, vol 6, pp 363-392.

J Wolfe, A Haghighi, D Klein (2008). "Fully Distributed EM for Very Large Datasets", Proceedings of the 25th International Conference on Machine Learning, pp 1184-1191.

Olivier Camp, Joaquim B. L. Filipe, Slimane Hammoudi and Mario Piattini (2005). "Mining Very Large Datasets with Support Vector Machine Algorithms ", Enterprise Information Systems V, Springer Netherlands, pp 177-184.

20
ответ дан 28 November 2019 в 07:26
поделиться

Мой друг работал над подобным проектом. Он использовал Perl для интеллектуального анализа текста и Matlab для таких методов, как байесовские методы, латентно-семантический анализ и гауссовская смесь ...

0
ответ дан 28 November 2019 в 07:26
поделиться

Я не знаю ни одной библиотеки ML, которая могла бы поддерживать от 10 до 100 миллиардов записей, это немного экстремально, поэтому я бы не ожидал найти что-то готовое. Я бы порекомендовал вам взглянуть на победителей конкурса NetFlix: http://www.netflixprize.com//community/viewtopic.php?id=1537

В премии NetFlix было более 100 миллионов записей, так что, хотя это не так много, как ваш набор данных, вы все равно можете найти их решения, которые можно применить. Команда BelKor сделала следующее: объединила несколько алгоритмов (что-то похожее на ансамблевое обучение) и взвесила "предсказание" или выход каждого алгоритма.

1
ответ дан 28 November 2019 в 07:26
поделиться

Apache Mahout - это то, что вы ищете.

14
ответ дан 28 November 2019 в 07:26
поделиться

Я не знаю ни одной библиотеки ML, которая бы использовала map/reduce. Может быть, у вас есть возможность использовать библиотеку ML и библиотеку Map/Reduce вместе? Возможно, вам стоит обратить внимание на Map/Reduce в Hadoop: http://hadoop.apache.org/mapreduce/

Вам придется реализовать методы reduce и map. Тот факт, что вы используете так много методов, может усложнить дело.

Вы можете запустить его на своем собственном кластере или, если вы занимаетесь исследованиями, возможно, вы можете посмотреть на BOINC (http://boinc.berkeley.edu/).

С другой стороны, возможно, вы можете уменьшить набор данных. Я понятия не имею, на чем вы тренируетесь, но в 10 миллиардах записей должно быть что-то лишнее...

1
ответ дан 28 November 2019 в 07:26
поделиться

Посмотрите на http://hunch.net/?p=1068 информацию о Vowpal Wabbit; это библиотека стохастического градиентного спуска для крупномасштабных приложений.

1
ответ дан 28 November 2019 в 07:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: