Цель, с которой я начал, заключалась в том, чтобы начать свое путешествие по машинному обучению, решив простую проблему. То есть для прогнозирования цены дома путем создания модели линейной регрессии с использованием набора обучающих данных, содержащего данные о продажах домов с различными характеристиками.
Graphlab create — это фреймворк с открытым исходным кодом для приложений машинного обучения и обработки данных от Dato. Было легко начать свое путешествие по машинному обучению с помощью GraphLab create. Средство запуска Dato (следует установить после получения некоммерческого ключа с их веб-сайта) на Mac запускает блокнот IPython в окне браузера, это было действительно легко начать без каких-либо хлопот. Итак, начнем!
Сначала запустите блокнот IPython из Dato Launcher, а затем импортируйте Graphlab.

Затем загрузите данные о продажах

Здесь я использую холст graphlab для визуализации данных в виде точечной диаграммы, ниже приведена точечная диаграмма площади дома в квадратных футах и цены дома.

Затем разделите набор данных на набор обучающих данных и набор тестовых данных, ранее я опубликовал пост о важности разделения набора данных на набор обучающих данных и набор тестовых данных.

Затем мы должны придумать модель для прогнозирования цены дома с использованием обучающих данных. В первом случае я буду использовать только площадь дома в квадратных футах как функцию, влияющую на цену дома.

Метод выбирает алгоритмы, которые лучше всего подходят для получения модели, здесь вы будете абстрагированы от реализации алгоритмов машинного обучения, используемых для получения модели, нужно остановиться на теориях линейной регрессии, чтобы узнать больше об этих используемых алгоритмах.
Затем, используя тестовые данные, мы оценим точность модели в прогнозировании.

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

Статистика в синем цвете представляет собой график фактической цены на жилье из набора тестовых данных, а зеленая линия проходит через значение, предсказанное простой регрессионной моделью.
Посмотрим значения коэффициентов модели

Но здесь мы только что использовали одну функцию, теперь давайте создадим модель, используя другие факторы/функции, которые могут повлиять на цену дома, такие функции, как количество спален, ванных комнат, этажей, почтовый индекс и т. д.
Давайте сначала создадим список функций,

Давайте теперь визуализируем эти функции из данных о продажах.

Давайте построим модель, используя все функции в списке функций.

Давайте оценим точность предсказания новой модели на наших тестовых данных.

Ошибка кажется действительно меньше с учетом большего количества функций для модели.
Эти примеры кода взяты из Вводного курса по машинному обучению Вашингтонского университета на Coursera. В дальнейшем я буду публиковать больше постов о концепциях машинного обучения и использовании graphlab create для разработки приложений машинного обучения… А пока удачного кодирования :)