Я новичок в изучении машин ... Я разрабатываю инструмент, в котором мне нужно предсказать значение переменной на основе комбинации нескольких переменных .... Реализация должна быть в Java ...Basic machine learning
Plz помочь ...
Спасибо ...
Я новичок в изучении машин ... Я разрабатываю инструмент, в котором мне нужно предсказать значение переменной на основе комбинации нескольких переменных .... Реализация должна быть в Java ...Basic machine learning
Plz помочь ...
Спасибо ...
Если вы хотите начать с чего-то простого, рассмотрите квазилинейную модель, такую как логистическая регрессия или линейный дискриминантный анализ: их легко понять, и для них есть код для всего Интернета. Также рассмотрим некоторые из более простых (единичных) нейронных моделей (персептрон, правило дельта и т. Д.): Они очень просты в программировании. Если вы хотите продолжить это, я предлагаю получить книгу, например «Компьютерные системы, которые учат», Вайсс и Куликовски.
может быть, вы можете начать поиск википедию для различных classification algorithms как k-nearest-neighbour, SVM или neural network
Eсть хороший открытый курс Стэнфорда о механическом обучении с видео-лекциями и т. д.
Посмотрите here.
звучит как многовариантная линейная регрессия, выполнит эту работу.
Я также начинал с K-Nearest-Neighbors - они являются самыми простыми - и можно экспериментировать с различными предварительными обработками данных, дистанционными измерениями и т. Д. Они также приводят к очень хорошим (хотя и очень медленным) предсказаниям ,
Если переменная, которая должна быть предсказана, является непрерывной, то регрессионными моделями являются ключ. Существуют много методов регрессии, включая наименьшие квадраты, полиномиальные модели, ANN и SVM. Конечно, каждый метод может иметь свое предположение или параметры.
MATLAB - одна из хорошо документированных вычислительных сред. я бы посоветовал посетить следующую страницу документации MATLAB по нелинейной регрессии: http://www.mathworks.com/help/stats/nonlinear-regression-1.html#btcgzas-1
Вы можете начать с помощью глобального метода поиска, такие как генетические алгоритмы ГаЗа для настройки параметров данной полиномиальной модели регрессии.
Для прогнозирования дискретных переменных приведенные модели регрессии могут применяться также с учетом порогового значения. Деревья принятия решений могут быть хорошей альтернативой.
Перед тем, как погрузиться в код, так как вы новичок, я предлагаю вам ознакомиться с основными принципами и закрепиться на этом. Вам не нужно читать кандидатскую диссертацию, но по крайней мере основные термины в SVM, логистической регрессии и нейронных сетях были бы полезны. Есть много материалов в Интернете через Стэнфорд, курсы Курсеры и книги, предложенные в других ответах.
Несмотря на то, что в Интернете имеется готовый код для использования в Интернете, причина, по которой я говорю, что вам нужно прочесть основы, заключается в том, что в типичном классификаторе, таком как SVM, нейронная сеть или даже логистическая регрессия, представляют собой различные параметры, которые вам необходимо будет настроить, и без понимания основных принципов было бы сложно и сбивать с толку использование этих пакетов. Я испытал то же самое, когда был новичком.
С мощным удержанием в работе с перекошенным набором данных в SVM, настройкой параметров логистической регрессии и даже тем, как уменьшить размеры вашего набора данных, это сделает вашу реализацию быстрее и эффективнее - таким образом, вы можете получить лучшую точность. В противном случае, погружение прямо в код может заставить вас вернуться сюда с некоторыми основными вопросами. Я надеюсь, что это было полезно!
Weka соответствует вашим потребностям. Он имеет регрессию и реализуется на Java.
Если это проблема с регрессией, я бы предложил вам начать с таких вещей, как логистика или линейная регрессия в Matlab. Есть библиотеки, и вы можете получить код для него. Таким образом, сначала проверьте и найдите путем сравнения ошибки в выборке (из данных, которые вы рассматриваете для производства), и ошибки вне образца (чтобы проверить ваши прогнозы против данных, которые не учитывались при составлении этих прогнозов), количество и порядок функции и количество необходимых данных обучения. Если данные обучения меньше, используйте меньше функций или регуляризации. Если количество и порядок функций очень велики и их трудно определить, перейдите в нейтральные сети или SVM (см., Если есть библиотека SVM для java), и когда у вас есть идеальная система в Matlab, тогда разверните ее на Java. Насколько я понял, системы ML требуют хорошей ручной настройки, прежде чем они станут пригодными для практического использования, и такие среды, как Matlab/Ocatve, являются лучшими платформами для этой тонкой настройки.
Это домашнее задание? – Hery
no :) Я знаю, что мой вопрос очень абстрактный ... Мне нужна идея, чтобы начать свою работу ... – Rahim
Я настоятельно рекомендую вам взглянуть на Weka (http://www.cs.waikato.ac.nz/ml/weka /) - очень хорошие инструменты для машинного обучения на основе Java – mikera