Optimization of auto-tuning of programs using neural networks
Auto-tuning of programs is a method of self-tuning of internal parameters of the program, affecting its speed, in order to achieve high performance indicators, but it can take a lot of time for testing. In this paper, we propose to improve the method of auto-tuning of programs using neural network a...
Збережено в:
Дата: | 2018 |
---|---|
Автори: | , , |
Формат: | Стаття |
Мова: | Ukrainian |
Опубліковано: |
Інститут програмних систем НАН України
2018
|
Теми: | |
Онлайн доступ: | https://pp.isofts.kiev.ua/index.php/ojs1/article/view/318 |
Теги: |
Додати тег
Немає тегів, Будьте першим, хто поставить тег для цього запису!
|
Назва журналу: | Problems in programming |
Завантажити файл: |
Репозитарії
Problems in programmingid |
pp_isofts_kiev_ua-article-318 |
---|---|
record_format |
ojs |
resource_txt_mv |
ppisoftskievua/ed/00a69d16f4b758e2ff7a6126556a55ed.pdf |
spelling |
pp_isofts_kiev_ua-article-3182024-04-28T11:52:03Z Optimization of auto-tuning of programs using neural networks Оптимизация автотьюнинга программ с использованием нейросетей Оптимізація автотьюнінгу програм з використанням нейромереж Doroshenko, А.Yu. Ivanenko, P.A. Novak, O.S. auto-tuning; statistical modeling; automation of software developmen; neural networks UDC 681.5 автотьюнинг; статистическое моделирование; автоматизация разработки программного обеспечения; нейросети УДК 681.5 автотьюнінг; статистичне моделювання; автоматизація розробки програмного забезпечення; нейромережі УДК 681.5 Auto-tuning of programs is a method of self-tuning of internal parameters of the program, affecting its speed, in order to achieve high performance indicators, but it can take a lot of time for testing. In this paper, we propose to improve the method of auto-tuning of programs using neural network algorithms and statistical simulation. The automatic learning of the program model on the results of the "traditional" tuning cycles with the subsequent replacement of some auto-tuner calls with an evaluation from the approximation model allows to significantly accelerate the search for the optimal program variant. Problems in programming 2017; 2: 40-47 Автотьюнинг программ – это метод самонастройка внутренних параметров программы, влияющие на ее быстродействие, с целью достижения высоких показателей производительности, однако он может потребовать много времени на испытания. В работе предложено совершенствование метода автотьюнинга программ с использованием нейросетевых алгоритмов и статистического моделирования. Автоматическое обучение модели программы на результатах "традиционных" циклов тьюнинга с последующей заменой части запусков автотьюнера оценкой из аппроксимационной модели позволяет значительно ускорить поиск оптимального варианта программы.Problems in programming 2017; 2: 40-39 Автотьюнінг програм – це метод самоналаштування внутрішніх параметрів програми, що мають вплив на її швидкодію, з метою досягнення найвищих показників продуктивності, проте він може вимагати багато часу на випробування. В роботі запропоновано вдосконалення методу автотьюнінгу програм з використанням нейромережевих алгоритмів та статистичного моделювання. Автоматичне навчання моделі програми на результатах “традиційних” циклів тьюнінгу з подальшою підміною частини запусків автотьюнера оцінкою з апроксимаційної моделі дозволяє значно прискорити пошук оптимального варіантуа програми. Problems in programming 2017; 2: 40-47 Інститут програмних систем НАН України 2018-11-19 Article Article application/pdf https://pp.isofts.kiev.ua/index.php/ojs1/article/view/318 10.15407/pp2017.02.040 PROBLEMS IN PROGRAMMING; No 2 (2017); 40-47 ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ; No 2 (2017); 40-47 ПРОБЛЕМИ ПРОГРАМУВАННЯ; No 2 (2017); 40-47 1727-4907 10.15407/pp2017.02 uk https://pp.isofts.kiev.ua/index.php/ojs1/article/view/318/313 Copyright (c) 2018 PROBLEMS OF PROGRAMMING |
institution |
Problems in programming |
baseUrl_str |
https://pp.isofts.kiev.ua/index.php/ojs1/oai |
datestamp_date |
2024-04-28T11:52:03Z |
collection |
OJS |
language |
Ukrainian |
topic |
auto-tuning statistical modeling automation of software developmen neural networks UDC 681.5 |
spellingShingle |
auto-tuning statistical modeling automation of software developmen neural networks UDC 681.5 Doroshenko, А.Yu. Ivanenko, P.A. Novak, O.S. Optimization of auto-tuning of programs using neural networks |
topic_facet |
auto-tuning statistical modeling automation of software developmen neural networks UDC 681.5 автотьюнинг статистическое моделирование автоматизация разработки программного обеспечения нейросети УДК 681.5 автотьюнінг статистичне моделювання автоматизація розробки програмного забезпечення нейромережі УДК 681.5 |
format |
Article |
author |
Doroshenko, А.Yu. Ivanenko, P.A. Novak, O.S. |
author_facet |
Doroshenko, А.Yu. Ivanenko, P.A. Novak, O.S. |
author_sort |
Doroshenko, А.Yu. |
title |
Optimization of auto-tuning of programs using neural networks |
title_short |
Optimization of auto-tuning of programs using neural networks |
title_full |
Optimization of auto-tuning of programs using neural networks |
title_fullStr |
Optimization of auto-tuning of programs using neural networks |
title_full_unstemmed |
Optimization of auto-tuning of programs using neural networks |
title_sort |
optimization of auto-tuning of programs using neural networks |
title_alt |
Оптимизация автотьюнинга программ с использованием нейросетей Оптимізація автотьюнінгу програм з використанням нейромереж |
description |
Auto-tuning of programs is a method of self-tuning of internal parameters of the program, affecting its speed, in order to achieve high performance indicators, but it can take a lot of time for testing. In this paper, we propose to improve the method of auto-tuning of programs using neural network algorithms and statistical simulation. The automatic learning of the program model on the results of the "traditional" tuning cycles with the subsequent replacement of some auto-tuner calls with an evaluation from the approximation model allows to significantly accelerate the search for the optimal program variant. Problems in programming 2017; 2: 40-47 |
publisher |
Інститут програмних систем НАН України |
publishDate |
2018 |
url |
https://pp.isofts.kiev.ua/index.php/ojs1/article/view/318 |
work_keys_str_mv |
AT doroshenkoayu optimizationofautotuningofprogramsusingneuralnetworks AT ivanenkopa optimizationofautotuningofprogramsusingneuralnetworks AT novakos optimizationofautotuningofprogramsusingneuralnetworks AT doroshenkoayu optimizaciâavtotʹûningaprogrammsispolʹzovaniemnejrosetej AT ivanenkopa optimizaciâavtotʹûningaprogrammsispolʹzovaniemnejrosetej AT novakos optimizaciâavtotʹûningaprogrammsispolʹzovaniemnejrosetej AT doroshenkoayu optimízacíâavtotʹûnínguprogramzvikoristannâmnejromerež AT ivanenkopa optimízacíâavtotʹûnínguprogramzvikoristannâmnejromerež AT novakos optimízacíâavtotʹûnínguprogramzvikoristannâmnejromerež |
first_indexed |
2024-09-25T04:02:56Z |
last_indexed |
2024-09-25T04:02:56Z |
_version_ |
1818527417948438528 |
fulltext |
Інструментальні засоби та середовища програмування
© А.Ю. Дорошенко, П.А. Іваненко, О.C. Новак, 2017
40 ISSN 1727-4907. Проблеми програмування. 2017. № 2
УДК 681.5
А.Ю. Дорошенко, П.А. Іваненко, О.C. Новак
ОПТИМІЗАЦІЯ АВТОТЬЮНІНГУ ПРОГРАМ
З ВИКОРИСТАННЯМ НЕЙРОМЕРЕЖ
Автотьюнінг програм – це метод самоналаштування внутрішніх параметрів програми, що мають вплив
на її швидкодію, з метою досягнення найвищих показників продуктивності, проте він може вимагати
багато часу на випробування. В роботі запропоновано вдосконалення методу автотьюнінгу програм з
використанням нейромережевих алгоритмів та статистичного моделювання. Автоматичне навчання
моделі програми на результатах “традиційних” циклів тьюнінгу з подальшою підміною частини запус-
ків автотьюнера оцінкою з апроксимаційної моделі дозволяє значно прискорити пошук оптимального
варіанта програми.
Ключові слова: автотьюнінг, статистичне моделювання, автоматизація розробки програмного забезпе-
чення, нейромережі.
Вступ
У попередній роботі авторів [1] за-
пропоновано гібридизацію відомого мето-
ду самоналаштування (автотьюнінгу) про-
грам [2], що поєднує реальне випробуван-
ня програми з використанням статистич-
ного моделювання для звуження простору
пошуку оптимального варіанту програми.
Головною метою методу при цьому зали-
шається підвищення ефективності викори-
стання наявних обчислювальних ресурсів.
Питання оптимального використання та-
ких ресурсів є одним із основних для будь-
якого програмного забезпечення. Воно є
важливим як для невеликих застосунків,
так і для складних високонавантажених
програмних комплексів. Така проблема
оптимізації програмних систем нині вирі-
шується, зокрема, за допомогою методу
автотьюнінгу [2], який може успішно ви-
користовуватись незалежно від особливос-
тей обчислювального середовища. Харак-
теристичною рисою автотьюнінгу є емпі-
ричне оцінювання якості оптимізованої
програми (під якістю зазвичай розуміють
швидкодію й точність результату). Тим
самим, розробник програми може оцінити
результат без моделювання усіх етапів
виконання програми та отримати досить
точні дані щодо цього виконання у конк-
ретному обчислювальному середовищі.
Проте, застосування автотьюнінгу
для складних і нетривіальних програмних
систем зазвичай вимагає багато часу. В
даній роботі розглядається вдосконалення
вищезгаданого гібридного підходу до ав-
тотьюнінгу з використанням техніки ней-
ромереж і машинного навчання. В резуль-
таті запропонований підхід дозволяє авто-
матичне навчання моделі на результатах
“традиційних” циклів тьюнінгу й подаль-
шу підміну частини запусків автотьюнера
оцінкою з апроксимаційної моделі, що
значно пришвидшує пошук оптимального
варіанта програми.
Метод автотьюнінгу
Максимальна ефективність програ-
ми досягається шляхом її налаштування
(тьюнінгу) під обчислювальне середовище
(ОС), у якому вона буде виконуватися. Як
зазначено [2], метод дозволяє автоматизу-
вати це налаштування. Основою для авто-
тьюнінгу є ідея емпіричної оцінки декіль-
кох варіантів програми й вибору найкра-
щого. Програма-тюнер може бути як час-
тиною оптимізовуваної програми, так і
окремим додатком. Для повноти переліку
часто ще вказують тюнер, інтегрований у
операційну систему. Проте, досі не було
створено універсальної імплементації та-
кого варіанта.
Хоча методологія автотьюнінгу вже
виправдала свою універсальність й ефекти-
вність, у процесі її використання доводить-
ся враховувати значний час роботи авто-
тьюнера й необхідність його написання.
Роботу програми-тюнера можна на-
звати досить шаблонною: обрати/створити
Інструментальні засоби та середовища програмування
41
нову версію програми й отримати емпіри-
чну оцінку її швидкодії. Потреба написан-
ня коду самого автотьюнера усувається
автоматичним генеруванням його коду з
вихідного коду оптимізованої програми
(наприклад, як це робиться в програмній
системі автотьюнінгу TuningGenie [3–4]).
Завдяки цьому вихідна програма займаєть-
ся тільки розв’язанням її основної задачі й
абстрагована від кількісних характеристик
ОС, що значно спрощує її розробку. Така
абстракція також дозволяє створювати
програмні додатки, що будуть автоматич-
но оптимізуватися для виконання на апа-
ратних засобах наступних поколінь (при-
наймні доки не зміниться багатоядерна
архітектура обчислювачів).
Далі в цій публікації під тьюнером
будемо розуміти окрему програму, а точ-
ніше універсальну систему генерації авто-
тьюнерів TuningGenie.
Отже, головним недоліком авто-
тьюнінгу залишаються істотні часові і обчи-
слювальні витрати, зумовлені необхідністю
емпіричного оцінювання у цільовому сере-
довищі великої множини варіантів вихідної
програми. Для скорочення цих витрат гібри-
дний підхід [1] застосовує машинне навчан-
ня. А саме – емпіричне оцінювання частини
варіацій підміняється оцінкою з апроксима-
ційної моделі програми.
Використання статистичного
моделювання та нейромереж
Усі статистичні алгоритми (у тому
числі й алгоритми машинного навчання)
потребують значної кількості статистичних
даних для аналізу та побудови моделі [5]. В
контексті задач автотьюнінгу збір великої
кількості статистичних даних може бути
доволі тривалим процесом. Тому досить
гостро стає проблема алгоритмів, які дозво-
лять максимально звузити область пошуку
при мінімальній кількості реальних запус-
ків автотюнера. Щоб частково вирішити цю
проблему, в даній роботі запропоновано
використовувати нейромережу для екстра-
поляції даних. В такому випадку необхідна
буде відносно невелика кількість реальних
запусків для побудови наближеної моделі,
після чого нейромережева модель може
бути використана іншими алгоритмами за
принципом «чорної скрині».
Як правило, задачі машинного нав-
чання (в тому числі побудови нейромереж)
в залежності від природи «сигналу» поді-
ляють на такі категорії [6]:
навчання з учителем. Системі на-
даються приклади входів та їхніх бажаних
виходів, задані «вчителем», і метою є нав-
чання загального правила, яке відображає
входи на виходи;
навчання без учителя. Алгоритму
навчання не надається жодних міток,
залишаючи його самому знаходити струк-
туру на своєму вході. Навчання без учите-
ля може бути метою саме по собі (вияв-
лення прихованих закономірностей у да-
них), або засобом досягнення мети (нав-
чання ознакам);
навчання з підкріпленням. Комп'ю-
терна програма взаємодіє з динамічним
середовищем, у якому вона має виконува-
ти певну мету (наприклад, таку як водіння
авто) без учителя, який явно казав би їй, чи
підійшла вона близько до мети. Іншим
прикладом є навчання грі через гру із су-
перником.
Загалом, можна описати загальний
підхід до вирішення такого типу задач [7]:
аналіз записів і підготовка «си-
рих» даних до завантаження. Оскільки
дані можуть приходити з різних джерел і в
різних форматах, то потрібно все привести
до єдиного вигляду;
підготовка даних. На цьому етапі
вирішуються проблеми неповноти даних,
шумів, суперечності в даних і т. п. Основні
задачі цього етапу – очищення (заповнення
відсутніх значень, видалення спотворених
даних та випадкових викидів), перетво-
рення (нормалізація для зниження спотво-
рень), ущільнення (створення вибірок да-
них для окремих атрибутів/груп атрибутів
та дискретизація (перетворення неперерв-
них атрибутів у категоріальні);
аналіз даних та побудова моделі;
перевірка моделі на тестовій ви-
борці даних.
Для перевірки точності моделі мож-
на використовувати декілька методів, один
з них – матриця похибок (confussion matrix)
з різними відтінками позитивного чи нега-
тивного прогнозу [8] (див. таблицю).
Інструментальні засоби та середовища програмування
42
Таблиця
Позитивний прогноз Негативний прогноз
Позитивне
значення
Позитивний результат
Псевдонегативний результат
(статистична похибка
2-го роду)
Негативне
значення
Псевдопозитивний
результат (статистична
похибка 1-го роду)
Негативний результат
Тут позитивний чи негативний ре-
зультат – це ситуації, коли прогноз моделі
співпадає чи, відповідно, не співпадає з
реальним результатом. Статистична похи-
бка 1-го роду – ситуація коли модель дає
позитивний прогноз для негативного ре-
зультату. А статистична похибка 2-го роду
– дзеркальна ситуація (негативний прогноз
до позитивного результату).
В цьому випадку, для оцінки якості
моделі можна використовувати точність
NP
TNTP
Acc
,
де TP – кількість позитивних результатів,
TN – кількість негативних результатів,
P – дзеркальна кількість позитивних зна-
чень, N – загальна кількість негативних
значень.
Практичний експеримент
Для практичного експерименту в
якості об’єкта тьюнінгу було використано
розширену версію алгоритму з поперед-
ньої роботи авторів [1] (алгоритм сорту-
вання злиттям чи вставками, в залежності
від розміру блоку числового масиву да-
них).
Сам алгоритм був реалізований на
мові Java.
Первинний аналіз даних виконував-
ся на мові Python з використанням бібліо-
теки Sckikit learn [9]. Подальший аналіз
виконувався за допомогою мови R.
Експеримент складався з декількох
стандартних етапів: підготовка та заванта-
ження записів роботи автотьюнера, підго-
товка даних (в тому числі нормалізація),
побудова нейромережевої моделі на на-
вчальній виборці даних та перевірка моде-
лі на контрольній виборці даних.
Сам процес, за яким проходив ана-
ліз даних, показано на рис. 1. Спочатку
автотьюнер проводить N експериментів
та зберігає дані для нейромережі в
окремий файл. Ці дані використовува-
лись нейромережею для навчання. Після
навчання, нейромережа екстраполювала
дані генеруючи новий набір даних (в ок-
ремий файл). І в кінці, обидва набори
даних аналізувались і порівнювались вже
людиною.
В якості нейромережі обрано бага-
тошаровий перцептрон з трьома вхідними
нейронами, трьома прихованими шарами
(по 20-10-5 нейронів відповідно) та одним
вихідним. Як активатор у нейронів вико-
ристовувалась випрямлена лінійна функ-
ція ( ),0(max)( xxf ). Як метод навчання
використовувався метод зворотного по-
ширення помилки (та алгоритм Бройдена–
Флетчера–Гольдфарба–Шанно для опти-
мізації вагових коефіцієнтів).
Приклад вхідних даних показано на
рис. 2, де (V1 – номер запуску авто-
тьюнера, вилучено з рисунка), V2,V3,V4 –
вхідні параметри, V5 – результат, V6 –
якісна оцінка результату.
Інструментальні засоби та середовища програмування
43
Рис. 1. Процес аналізу
Рис. 2. Вхідні дані
На основі результатів декількох ти-
сяч запусків (3300) побудовано нейро-
мережу, яку було використано для пода-
льшої генерації даних (рис. 3, 4). Крім
того, як буде видно з рис. 5 – це не міні-
мальна кількість даних які потрібні для
побудови моделі, і кількість замірів мож-
ливо буде зменшити при незначній втраті
в точності. Варто ще зазначити, що дані
первісних замірів виявились не зовсім
рівномірно розподіленими, що пояснює
білі області для залежності V2 ~ V3 на
рис. 2 і далі).
З рис. 4 можна побачити, що ком-
бінація параметрів X0 та X2 мають знач-
ний вплив на результат роботи алгоритму,
що збігається з результатами ручного
аналізу даних у минулій публікації [1].
Тут біла область – комбінація параметрів
при якій відсутні «неякісні» результати.
В контексті даного експерименту
використання нейромережі для початко-
вого приближення дозволило звузити
область пошуку на 58 % (з
610 до
5
4.2 10 ).
обробка даних
обробка даних
автотьюнер
Інструментальні засоби та середовища програмування
44
Рис. 3. Вхідні дані (3300 запусків автотьюнера)
Рис. 4. Результати прогнозування (125 мільйонів емуляцій запуска автотьюнера)
Інструментальні засоби та середовища програмування
45
Аналіз результатів експерименту
Для перевірки якості отриманих ре-
зультатів було зроблено більше 30 тисяч
реальних запусків автотьюнера (рівномір-
но розподілених по всій множині варіан-
тів) та проаналізовані результати роботи.
(рис. 4). Хід роботи тут був аналогічний
тому, що був описаний в експерименталь-
ній частині окрім кількості реальних запу-
сків автотьюнера. Після чого було порів-
няно результат прогнозу нейромережі (на
основі 3 тисяч запусків) з реальними
результатами.
Для оцінки якості моделі використо-
вувалась матриця похибок (confussion
matrix). На рис. 6 показано залежність точ-
ності моделі від частки даних яку було ви-
користано для навчання. Тут по осі Y –
кількість відсотків від всіх наявних даних
яка використовувалась для навчання моде-
лі, по осі X – середня точність (ACC) від 10
нейромереж що були навчені на цих даних.
У випадку використання 10 % від
усіх замірів (тобто, 3300 замірів) матриця
мала вигляд,
де TP – позитивний прогноз, PN – негати-
вний прогноз, CP – позитивне значення,
CN – негативне значення. Тоді
ACC = 96 %.
Оскільки мета цього етапу – відсія-
ти очевидно неякісні варіанти, то питання
точності тут менш критичне (так як ці дані
будуть ще раз оброблені на наступному
етапі вже іншим алгоритмом). Більш кри-
тичним тут є зменшення кількості похибок
2-го роду.
З цього можна зробити висновок,
що для звуження області пошуку авто-
тьюнера, за умови збереження високої то-
чності результатів, розглянутій системі
достатньо відносно невеликої частини за-
мірів.
Рис. 5. Вхідні дані (33 тисячі запусків автотьюнера)
TP PN
CP 19978 570
CN 488 9506
Інструментальні засоби та середовища програмування
46
Рис. 6. Залежність точності моделі від
кількості даних для навчання
Висновки
При всіх недоліках, притаманних
нейромережам (необхідність у великій
кількості даних для навчання, можлива
велика обчислювальна складність), їх ви-
користання все-ж таки уможливлює помі-
тне звуження області пошуку конфігурацій
й підходить як перший етап роботи авто-
тьюнера.
Крім того, завдяки можливостям пер-
цептронів у задачах класифікації, викорис-
тання такого типу нейромережі як перший
фільтр дозволяє легко виділити найбільш
вагомі вхідні параметри (тобто ті, що
мають найбільший вплив на кінцевий
результат).
З негативних сторін слід виділити, що
на сьогодні нейромережі – це досить скла-
дна прикладна область, яка сама по собі
потребує налаштування метапараметрів,
що впливають на швидкодію і якість робо-
ти системи, починаючи від кількості ней-
ронів і конфігурації нейромережі та заве-
ршуючи різноманітними коефіцієнтами.
1. Дорошенко А.Ю., Іваненко П.А., Новак
О.С. Гібридна модель автотьюнінгу з ви-
користанням статистичного моделювання.
Проблеми програмування. 2016. № 4.
С. 27–32.
2. Naono K., Teranishi K., Cavazos J., Suda R.
Software Automatic Tuning From Concepts
to State-of-the-Art Results. Springer; 1st
Edition. Edition, 2010.
3. Ivanenko P.A, Doroshenko A.Y., Zhereb
K.A. TuningGenie: Auto-Tuning Framework
Based on Rewriting Rules. 10th International
Conference, ICTERI 2014, Kherson,
Ukraine, June 9–12, 2014. Revised Selected
Papers. P. 139–158.
4. Ivanenko P.A, Doroshenko A.Y. Method for
automated generation of autotuners for
parallel applications. Cybernetics and system
analisys. 2014. N 3. P. 75–83.
5. Tom M. Mitchell. Machine learning.
mcGraw-Hill Science/Engineering/Math.,
1997.
6. Russell, Stuart, Norvig, Peter. Artificial
Intelligence: A Modern Approach (2nd
edition). Prentice Hall.
7. Jiawei Han, Micheline Kamber, Jian Pei.
Data mining: Cencepts and Techniques, 3rd
edition. Morgan Kaufmann, 2011.
8. Tom Fawcett. An indroduction to ROC
analysis. Elsevier B.V., 2005.
9. Fabian Pedregosa, Gaël Varoquaux,
Alexandre Gramfort, Vincent Michel,
Bertrand Thirion, Olivier Grisel, Mathieu
Blondel, Peter Prettenhofer, Ron Weiss,
Vincent Dubourg, Jake Vanderplas,
Alexandre Passos, David Cournapeau,
Matthieu Brucher, Matthieu Perrot, Édouard
Duchesnay. Scikit-learn: Machine learning in
Python. 2011. JMLR 12. P. 2825–2830.
References
1. Doroshenko A., Ivanenko P., Novak O.
Hybrid auto tuning model with the use of a
static modelling. Scientific journal “Problems
of programming”. 2016, N 4. P. 27–32.
2. Naono K., Teranishi K., Cavazos J., Suda R.
Software Automatic Tuning From Concepts
to State-of-the-Art Results. Springer; 1st
Edition. Edition, 2010
3. Ivanenko P.A., Doroshenko A.Y., Zhereb
K.A. TuningGenie: Auto-Tuning Framework
Based on Rewriting Rules. 10th International
Conference, ICTERI 2014, Kherson,
Ukraine, June 9–12, 2014. Revised Selected
Papers. P. 139–158.
4. Ivanenko P.A., Doroshenko A.Y. Method for
automated generation of autotuners for
parallel applications. Cybernetics and system
analisys. 2014. N 3. P. 75–83.
Інструментальні засоби та середовища програмування
47
5. Tom M. Mitchell. Machine learning.
mcGraw-Hill Science/Engineering/Math.,
1997.
6. Russell, Stuart, Norvig, Peter. Artificial
Intelligence: A Modern Approach (2nd
edition). Prentice Hall.
7. Jiawei Han, Micheline Kamber, Jian Pei.
Data mining: Cencepts and Techniques, 3rd
edition. Morgan Kaufmann, 2011.
8. Tom Fawcett. An indroduction to ROC
analysis. Elsevier B.V. 2005.
9. Fabian Pedregosa, Gaël Varoquaux,
Alexandre Gramfort, Vincent Michel,
Bertrand Thirion, Olivier Grisel, Mathieu
Blondel, Peter Prettenhofer, Ron Weiss,
Vincent Dubourg, Jake Vanderplas,
Alexandre Passos, David Cournapeau,
Matthieu Brucher, Matthieu Perrot, Édouard
Duchesnay. Scikit-learn: Machine learning in
Python. 2011. JMLR 12, P. 2825–2830.
Одержано 03.05.2017
Про авторів:
Дорошенко Анатолій Юхимович,
доктор фізико-математичних наук,
професор, завідувач відділу теорії
комп’ютерних обчислень,
професор кафедри автоматики
та управління в технічних системах
НТУ України “КПІ”.
Кількість наукових публікацій в
українських виданнях – понад 200.
Кількість наукових публікацій в
зарубіжних виданнях – понад 50.
Індекс Хірша – 5.
http://orcid.org/0000-0002-8435-1451,
Іваненко Павло Андрійович,
молодший науковий співробітник.
orcid.org/0000-0001-5437-9763,
Новак Олександр Сергійович,
аспірант.
orcid.org/0000-0002-1665-7360.
Місце роботи авторів:
Інститут програмних систем
НАН України.
проспект Академіка Глушкова, 40.
03187, Київ,
НТУ України «КПІ».
Тел.: (044) 526 3559.
E-mail: a-y-doroshenko@ukr.net,
paiv@ukr.net,
novak.as@i.ua
mailto:a-y-doroshenko@ukr.net
mailto:paiv@ukr.net
mailto:novak.as@i.ua
|