2016-07-27 2 views
0

Может ли кто-нибудь предложить мне базовое представление о том, какие различные типы практических моделей машинного обучения мы можем использовать в программировании R и немного различий между каждой моделью. Везде, где я нахожу материал, все сложно. Мне просто нужна общая идея.Модели прогнозирования, используемые для практического машинного обучения в программировании R

+0

Это может дать начало http://www-bcf.usc.edu/~gareth/ISL/ – user20650

ответ

0

Обучение машинам довольно большое поле, страница Wikipedia уже содержит 13 различных подходов. А для каждого подхода есть несколько (иногда немного) разных алгоритмов.

Я дам вам краткое объяснение деревьев принятия решений и поддержки векторных машин (SVM), так как я больше всего знаком с этими двумя методами машинного обучения. Прежде чем начать, обратите внимание, что я иногда говорю о проблеме , а иногда и о регрессии . В проблеме классификации мы пытаемся определить, принадлежит ли определенная точка данных определенному классу. В регрессионной задаче результат является реальным числом.

Decision Trees

Решение обучения дерево касается прогнозирования значения целевой переменной на основе прогнозирующих с помощью дерева решений. Деревом решений является дерево, в котором каждый листовой узел (т. Е. Конечный узел на дереве) содержит значение целевой переменной. Все внутренние узлы (т. Е. Нелистовые узлы) помечены одним из предикторов. На каждом узле путь к узлу один уровень ниже в дереве определяется на основе значения предиктора. Эта процедура повторяется с вершины дерева до тех пор, пока не будет достигнут лист. Деревья принятия решений могут использоваться как для типа классификации, так и для типа регрессии.

Существуют различные типы алгоритмов для одиночный деревья решений. Двумя из наиболее часто используемых алгоритмов являются CART (Дерево классификации и регрессии) Breiman et al. (1984) и C4.5 от Quinlan (1993). Для деревьев с одним решением часто желательно обрезать дерево, то есть удалять части дерева, которые обеспечивают небольшую дополнительную объясняющую силу.

Есть также расширения, которые создают много деревьев, таких как случайные леса (RF) (Бреймана (2001)) и Gradient Повышая (ГБ) (Фридман (2002) для стохастического градиента Повышая). RF создает много деревьев на основе различных случайных подвыборки ваших данных, а затем «голосует» за лучший раскол. Методы GB создают множество слабых моделей/деревьев прогнозирования, чтобы вместе создать более прочную модель.

Заканчивать следующие пакеты R rpart, partykit, randomForest, gbm и конечно caret, есть, вероятно, намного больше, но они пришли на ум.

Поддержка Vector Machines

SVMs (Босер и др. (1992) и Cortes и Вапника (1995)) изучают модели, которые анализируют данные, используемые для классификации. SVMs необходим набор данных обучения, в котором каждая точка данных принадлежит одной из двух групп. Алгоритм обучения SVM создает модель, которая назначает новые точки данных, основанные на знаниях из набора данных обучения, одной из двух групп. Для создания классификаций SVM строит гиперплоскость (подпространство одного измерения меньше исходного пространства) или несколько гиперплоскостей в высокоразмерном пространстве.Функции ядра могут использоваться, если данные не являются линейно разделяемыми.

R пакет, который вы можете использовать: kernlab или caret

Другие популярные методы машинного обучения, но я никогда не использовал являются нейронные сети и сетей Байеса. Если бы я был вами, я должен также взглянуть на эти методы.

Наконец, Библия машинного обучения (как мой коллега называет): Elements of Statistical Learning

Удачи!

+0

Спасибо большое @MarcelG. Я ценю ваши усилия. –

Смежные вопросы