Изменения

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

Обучение на больших данных

2784 байта добавлено, 14:24, 16 января 2021
Работа с комплексом Apache Spark для обучения на больших данных
== Работа с комплексом Apache Spark для обучения на больших данных ==
 
Многие компании на сегодняшний день уже столкнулись с необходимостью обработки больших массивов данных. Для этой цели они начали использовать проекты экосистемы Apache Hadoop. Данная экосистема базируется на MapReduce, парадигме параллельного программирования, разработанного компанией Google.
Основные достоинства MapReduce:
* Масштабируемость
* Устойчивость к сбоям
* Простота использования
Но при всех достоинствах данного инструмента, наблюдалась низкая производительность на итеративных алгоритмах (например, алгоритмы машинного обучения). Решение проблемы было найдено в университете Беркли: была разработана модель распределенных вычислений, которая имеет устойчивость к сбоям при пользовании распределенной коллекцией данных, RDD.
На основе RDD по сей день развивается система Apache Spark, которая обладает сравнительно высокой эффективностью при работе итеративных алгоритмов за счет кэширования результатов в памяти. На основе концепции распределенных коллекций разрабатываются распределенные системы:
* Shark – хранилище данных.
* GraphX – система обработки графовых данных.
* Spark Streaming – система обработки потоковых данных.
* Spark MLlib – библиотека алгоритмов машинного обучения.
Все из перечисленных систем совместимы со стеком технологий Hadoop.
MLlib – основная библиотека Spark. Она предоставляет множество служебных программ, полезных для задач машинного обучения:
* Классификация
* Регрессия
* Кластеризация
* Моделирование
* Сингулярное разложение и анализ по методу главных компонент
* Проверка гипотез и статистической выборки
== Примеры реализации алгоритмов с использованием Spark MLlib ==
Анонимный участник

Навигация