Машинное обучение является активно развивающейся областью исследований. Во многих задачах машинного обучения и интеллектуального анализа данных возникает необходимость работать с большими массивами данных. Эти массивы зачастую не могут быть обработаны на одном компьютере, или обработка занимает слишком много времени. Если в этих задачах использовать для обучения только часть имеющихся данных, то точность модели, как правило, падает. Для решения этой проблемы используются распределенные вычислительные системы. Наиболее популярные подходы к разработке программного обеспечения таких систем: модели вычислений Map/Reduce, Spark, модели вычислений на графах, использование передачи сообщений по стандарту MPI, архитектура сервера параметров. В данной статье дан обзор таких систем, проведен анализ их достоинств и недостатков применительно к задачам машинного обучения. В отдельном разделе проведен анализ распределенных систем для обучения искусственных нейронных сетей.
машинное обучение, анализ данных, большие данные, распределенные системы