Tolstoluzka, E.Parshentsev, B.Moroz, O.2019-03-272019-03-272018Tolstoluzka E. Parallel implementation of the method of gradient boosting / E. Tolstoluzka, B. Parshentsev, O. Moroz // Сучасні інформаційні системи = Advanced Information Systems. – 2018. – Т. 2, № 3. – С. 19-23.https://repository.kpi.kharkov.ua/handle/KhPI-Press/40438The issue of machine learning has been paying more attention in all areas of information technology in recent times. On the one hand, this is due to the rapid growth of requirements for future specialists, and on the other - with the very rapid development of information technology and Internet communications. One of the main tasks of e-learning is the task of classification. For this type of task, the method of machine learning called gradient boost is very well suited. Grading boosting is a family of powerful machine learning algorithms that have proven significant success in solving practical problems. These algorithms are very flexible and easily customized for the specific needs of the program, for example, they are studied in relation to different loss functions. The idea of boosting is the iterative process of sequential building of private models. Each new model learns based on information about errors made in the previous stage, and the resulting function is a linear combination of the whole ensemble of models, taking into account minimization of any penalty function. The mathematical apparatus of gradient boosting is well adapted for the solution of the classification problem. However, as the number of input data increases, the issue of reducing the construction time of the ensemble of decision trees becomes relevant. Using parallel computing systems and parallel programming technologies can produce positive results, but requires the development of new methods for constructing gradient boosting. The article reveals the main stages of the method of parallel construction of gradient boosting for solving the classification problem in e-learning. Unlike existing ones, the method allows to take into account the features of architecture and the organization of parallel processes in computing systems with shared and distributed memory. The method takes into account the possibility of evaluating the efficiency of building an ensemble of decision trees and parallel algorithms. Obtaining performance indicators for each iteration of the method helps to select the rational number of parallel processors in the computing system. This allows for a further reduction of the completion time of the gradient boosting. The simulation with the use of MPI parallel programming technology, the Python programming language for the architecture of the DM-MIMD system, confirms the reliability of the results. Here is an example of the organization of input data. Presented by Python is a program for constructing gradient boosting. The developed visualization of the obtained estimates of performance indicators allows the user to select the necessary configuration of the computing system.Останнім часом питанню машинного навчання приділяється все більше уваги у всіх галузях інформаційних технологій. З одного боку це пов'язано зі стрімким ростом вимог до майбутніх фахівців, а з іншого - з дуже швидким розвитком інформаційних технологій та Інтернет комунікацій. Однією з головних задач e-learning є задача класифікації. Для даного типу задач дуже добре підходить метод машинного навчання під назвою градієнтий бустінг. Градієнтний бустінг це сімейство потужних алгоритмів машинного навчання, які продемонстрували значний успіх у вирішенні практичних завдань. Дані алгоритми є дуже гнучкими і легко налаштованим для конкретних потреб програми, наприклад, вивчаються по відношенню до різних функцій втрат. Ідея бустінга полягає в ітеративному процесі послідовного побудови приватних моделей. Кожна нова модель навчається ґрунтуючись на інформації про помилки, зроблених на попередньому етапі, а результуюча функція являє собою лінійну комбінацію всього ансамблю моделей з урахуванням мінімізації будь штрафний функції. Математичний апарат градієнтного бустінгу гарно пристосовується для рішення задачі класифікації. Однак, з ростом кількості вхідних даних стає актуальним питання зменшення часу побудови ансамблю дерев рішень. Використання паралельних обчислювальних систем та паралельних технологій програмування дозволяє отримати позитивні результати, але вимагає розробки нових методів побудови градієнтного бустінгу. У статті розкриваються основні етапи методу паралельної побудови градієнтного бустінгу для вирішення задачі класифікації в e-learning. На відміну від існуючих, метод дозволяє враховувати особливості архітектури і організації паралельних процесів в обчислювальних системах із загальною і розподіленою пам'яттю. В методі врахована можливість оцінки показників ефективності побудови ансамблю дерев рішень та паралельних алгоритмів. Отримання показників ефективності на кожній ітерації методу допомагає обрати раціональну кількість паралельних процесорів в обчислювальній системі. Це дозволяє домогтися подальшого скорочення часу завершення градієнтного бустінга. Проведене моделювання з використанням технології паралельного програмування MPI, мови програмування Python для архітектури обчислювальної системи DM-MIMD підтверджує достовірність отриманих результатів. Наводиться приклад організації вхідних даних. Представлено Python програму для побудови градієнтного бустінга. Розроблена візуалізація отриманих оцінок показників ефективності дозволяє користувачу обрати необхідну конфігурацію обчислювальної системи.enparallel algorithmdecision treee-learningградієнтне підсиленняпаралельний алгоритмдерево рішеньелектронне навчанняParallel implementation of the method of gradient boostingПаралельна реалізація методу градієнтного бустінгуArticle10.20998/2522-9052.2018.3.03