Изменения

Перейти к: навигация, поиск

Примеры кода на R

608 байт добавлено, 00:00, 16 декабря 2020
Небольшие правки + замена англоязычных терминов
# '''Инициализация'''
#: Функция <code>pipelearner()</code> инициализирует новый объект, который используется в следующих функциях обработки. На этом этапе необходимо указать датасет, с которым мы работаемпроизводится работа. Также можно сразу указать обучающие модели, которые мы планируем использовать, набор обучающих моделей и предсказываемую модель данных, которую собираемся предсказывать.
# '''Настройка'''
#: Для настройки есть 3 основных функции:
#* <code>learn_cvpairs()</code> отвечает за [[Кросс-валидация|кросс-валидацию]]. Функция генерирует набор пар из тестовой и обучающей выборки на основе входного датасета.
#: В качестве ядра разделения можно использовать <code>crossv_mc</code> ([[Кросс-валидация#Случайные разбиения (Random subsampling)|случайные разбиения]]), <code>crossv_kfold</code> ([[Кросс-валидация#k-fold кросс-валидация|k-fold кросс-валидация]]) или <code>crossv_loo</code> ([[Кросс-валидация#Кросс-валидация по отдельным объектам (Leave-One-Out)|leave-one-out разбиения]]) из пакета <code>modelr</code><ref>[https://github.com/tidyverse/modelr Modelr github repository]</ref>. Если Но если данных способов недостаточно , можно написать и свою функцию разбиения.#* <code>learn_curves()</code> служит для настройки [[Переобучение#Кривые обучения|кривых обучения]]. Для настройки используются увеличивающиеся пропорции от Используется метод увеличивающихся пропорций относительно начала датасета. #: Например, вызов <code>learn_curves(.5, .75, 1)</code> создаст <tex>3</tex> сценария работы: в первом будет взята первая половина выбоки, во втором {{---}} первые <tex>\frac{3}{4}</tex> объектов, и в третьем {{---}} вся выборка. Авторы пакета утрверждаютутверждают, что брать случайные объекты выборки не имеет смысла, потому что выборка уже случайно разбита с помощью <code>learn_cvpairs()</code>.
#* <code>learn_models()</code> предназначен для добавления новых обучающих моделей.
# '''Обучение'''
#: С помощью функции <code>learn()</code> все сконструированные ранее модели обучаются и выдается таблица результатов работы
В итоге работа с пакетом выглядит примерно такприблизительно следующим образом:
<font color="gray"># Load the dependencies</font>
library(pipelearner)
Пакет <code>MICE</code><ref>[https://cran.r-project.org/web/packages/mice/mice.pdf MICE package documentation]</ref> используется для заполнения пропущенных значений в данных. При этом нет необходимости думать о типах значений: для каждого из них в пакете предусмотрено заполнение по умолчанию.
Принцип работы основан на методе множественного восстановления<ref>[https://en.wikipedia.org/wiki/Imputation_(statistics)#Multiple_imputation Multiple Imputation]</ref>. Пропущенные данные заполняются не один, а несколько раз вместо одного. После этого , каждый из полученных наборов обучается на определенной модели. Затем, результаты агрегируются и выдаются итоговые параметры модели.
Стандартный процесс работы выглядит так:
==== RandomForest ====
<code>RandomForest</code> <ref>[https://cran.r-project.org/web/packages/randomForest/index.html RandomForest package main info]</ref> — пакет с реализацией алгоритма ''[[Дерево решений и случайный лес | randomForestслучайного леса]]''. Используется для решения задач регрессии и классификации, а также для поиска аномалий и отбора предикторов.
==== ClusterR ====
Пакет <code>ClusterR</code> <ref>[https://cran.r-project.org/web/packages/ClusterR/vignettes/the_clusterR_package.html ClusterR documentation]</ref> состоит из алгоритмов кластеризации на основе центроидов (''[[Кластеризация#Метод K-средних (Алгоритм Ллойда) |метод K-средних]]'' (k-means''), ''mini-batch-kmeans'', ''k-medoids'') и распределений (''GMM''). Кроме того, пакет предлагает функции для:
* проверки результатов,
* построения графика результатов, используя ''[[Оценка качества в задаче кластеризации |метрики]]''
==== E1071 ====
Пакет <ref>[https://www.rdocumentation.org/packages/e1071/versions/1.7-3 1071 package documentation]</ref> содержит в себя функции для анализа классов, ''кратковременного преобразование Фурье'', ''нечеткой кластеризации'', реализации ''[[Метод опорных векторов (SVM) | SVMметода опорных векторов]]'', ''вычисления кратчайшего пути'', а также реализации ''[[Байесовская_классификация#Наивный байесовский классификатор | наивного байесовского классификатора]]''.
==== Mlr ====
==== H2O ====
В пакете <code>H20</code> <ref>[https://cran.r-project.org/web/packages/h2o/index.html H20 main info page]</ref> представлены линейные модели, такие как ''[[Бустинг, AdaBoost |градиентный бустинг]]'', ''[[Метод главных компонент (PCA)|PCAметод главных компонент]]''(PCA), ''GLRM'', ''KNN[[Метрический классификатор и метод ближайших соседей|метод k ближайших соседей]]'', ''[[Дерево решений и случайный лес|RadomForestслучайный лес]]'', ''[[Байесовская_классификация#Наивный байесовский классификатор | наивный Байесовский байесовский классификатор]]''. Сильная сторона этой библиотеки {{---}} работа с большими объемами данных и поддержка многопоточных вычислений. Однако в ней нет возможности задавать параметры используемых алгоритмов
== Примеры алгоритмов ==
286
правок

Навигация