Практикум з видобутку даних

  1. Методика навчання
  2. Зміст курсу та програмні системи аналізу даних
  3. Попередні вимоги до знань, умінь і навичок студентів

Спеціаліст, не тільки володіє теоретичними знаннями, а й уміє вирішувати різні завдання аналізу за допомогою спеціалізованого програмного забезпечення, більш затребуваний, тому курс, розроблений на кафедрі аналізу даних і штучного інтелекту, перш за все орієнтований на практичне застосування сучасних методів розробки (видобутку) даних на реальних масивах, причому за допомогою вільно розповсюджуваних програмних інструментів Спеціаліст, не тільки володіє теоретичними знаннями, а й уміє вирішувати різні завдання аналізу за допомогою спеціалізованого програмного забезпечення, більш затребуваний, тому курс, розроблений на кафедрі аналізу даних і штучного інтелекту, перш за все орієнтований на практичне застосування сучасних методів розробки (видобутку) даних на реальних масивах, причому за допомогою вільно розповсюджуваних програмних інструментів. До уваги були прийняті численні прохання з боку колег і студентів факультету бізнес-інформатики та відділення прикладної математики, і в курс були включені лекції та практичні заняття з сучасним аналітичним пакетам.

Практикум можна поповнювати; наприклад, в майбутньому в нього планується включити лабораторні роботи, пов'язані зі спеціальними видами даних: категоризація текстів, аналіз графових структур і т.п. Частина лабораторних робіт практикуму підготовлена ​​науково-навчальної групою «Рекомендаційні інтернет-сервіси та інтелектуальний аналіз даних» факультету бізнес-інформатики ГУ-ВШЕ.

Методика навчання

Кваліфікований аналітик повинен вміти самостійно провести необхідну роботу з даними, визначити тип завдання (класифікація, кластеризація, прогнозування, пошук залежностей і т.п.), вирішити її адекватно обраним методом з оптимально певними параметрами, оцінити результати, зробити змістовні висновки і інтерпретувати. Крім навчання таких фахівців практикум повинен сприяти формуванню культури оформлення аналітичних звітів і освоєння пошукового і проблемно-орієнтованого підходу до вирішення завдань аналізу даних.

Студент вивчає необхідний теоретичний мінімум, викладений в описі роботи, відповідає на питання для перевірки готовності до виконання лабораторної роботи, отримує дані, використовує програмне забезпечення, вибирає потрібну модель і метод, намагається вирішити задачу. Результати роботи методу можуть бути як задовільними, наприклад метод успішно вирішує завдання прогнозування для 92% тестової вибірки, чи ні, наприклад коли кількість правильних передбачень низько - 28%. Виникає питання, чому завдання не вирішена. Причиною низької якості прогнозів можуть бути: неправильна специфікація моделі, шуми і помилки в даних, неадекватний вибір методу аналізу даних і / або його параметрів, некоректний спосіб оцінки якості прогнозів і т.п. Як і у випадку з науковими гіпотезами, необхідно ставити під сумнів правильність дій аналітика на кожному з етапів роботи і пропонувати кроки щодо поліпшення схеми аналізу даних. Принципи, що лежать в основі наукових гіпотез, як не можна краще узгоджуються з поняттям схеми аналізу даних: проверяемость, максимальна спільність, предсказательная сила і простота.

Важливим аспектом навчання аналізу даних є формування вміння інтерпретувати отримані результати, наприклад пояснювати причинно-наслідкові зв'язки на основі знайдених закономірностей (пошук асоціативних правил). Слід також відзначити диференційований характер такого підходу до навчання, так як студент в рамках лабораторної роботи вирішує завдання індивідуально, відповідаючи на запитання викладача по конкретній темі роботи.

При такій побудові курсу усувається розрив між знанням теорії методу і його використанням на реальних даних. Від викладача вимагається контролювати виконання студентами лабораторних робіт практикуму, перевіряти знання студентів після вивчення матеріалу теоретичного мінімуму, перевіряти підсумкові звіти, консультувати студента. Для повноцінного проведення практикуму викладач повинен бути знайомий з застосовуваними програмними системами і володіти математичними моделями і алгоритмами, що лежать в основі методів аналізу даних цього курсу.

Передбачувана кількість годин курсу розраховується виходячи з обраного для проведення числа лабораторних робіт. Приблизно 2-4 академічні години відводиться на виконання однієї лабораторної роботи і стільки ж на захист всіх робіт. Оптимальна кількість студентів в комп'ютерному класі - 15-20 осіб на одного викладача.

У навчальному плані бакалаврату четвертого курсу на 2010/11 навчальний рік відділення прикладної математики та інформатики курс називається «Системи розробки даних і машинного навчання», на нього відводиться 22 лекційних години і 24 години практичних занять, а в якості форм контролю вказана одна контрольна робота і залік за підсумками практикуму.

Перед виконанням лабораторної роботи студент відповідає на питання і виконує завдання для допуску до практикуму (прості модельні розрахунки, вироблені вручну). Тут оцінюється рівень розуміння студентом обраної моделі або методу, правильність зроблених вручну розрахунків для навчального прикладу. Після виконання роботи оцінюється дотримання формальних вимог до звіту, правильність виконання роботи (обробка даних, специфікація моделі, оцінка якості результатів і т.п.), вірність і значимість висновків, прийнятність запропонованої інтерпретації результатів. Далі викладач перевіряє знання студентів за матеріалами наданих ними звітів з урахуванням зауважень і помилок, виявлених раніше.

Студенти отримують в якості завдання одну зі списку лабораторних робіт, текст цієї роботи в електронному вигляді або на паперовому носії. Далі, дотримуючись інструкції з виконання лабораторної роботи, студент відповідає на питання теоретичного мінімуму та для запропонованого набору даних проводить дослідження по кроках, фіксуючи результати в електронній формі звіту.

Зміст курсу та програмні системи аналізу даних

Лабораторні роботи проводяться за наступними темами:

  1. Дослідження об'єктно-прізнакових даних за допомогою програмних засобів аналізу формальних понять.
  2. Пошук асоціативних правил і частих (замкнутих) множин ознак.
  3. Дерева рішень.
  4. Завдання кластеризації:
    4.1. ієрархічна кластеризація;
    4.2. метод k-середніх;
    4.3. спектральна кластеризація.
  5. Неточні безлічі (Rough Sets).
  6. ДСМ-метод в системі QuDA.
  7. Наївна байєсівську класифікація (Naï ve Bayes Classifier).
  8. Методи OLAP.

З одного боку, все це найбільш затребувані на практиці методи, а з іншого - cреди них є алгебраїчні методи, які встигли завоювати популярність в наукових колах для вирішення завдань розробки даних і машинного навчання, але ще не так добре відомі пересічним аналітикам.

Питання для допуску до лабораторної роботи можуть включати додаткові завдання у вигляді модельних навчальних розрахунків, виконуваних вручну для наборів даних розмірами сім-десять об'єктів на п'ять-шість ознак для різних предметних областей (видача кредиту, пророцтво викрадення автомобіля, визначення їстівності грибів, вибір партнера для знайомства і т.п.). Такий підхід дозволяє залучити і сконцентрувати увагу учня на суті методу і розібрати його роботу в подробицях.

Як інструменти дослідження передбачається використовувати вільне ПЗ для видобутку даних (data mining) і машинного навчання. Дійсно, використання тільки промислового програмного забезпечення не дозволяє зробити курс доступним для вивчення протягом одного-двох навчальних модулів - цьому перешкоджає складність установки і настройки програмного забезпечення (Microsoft SQL Server, Oracle Data Miner і т.д.). Крім того, складність промислових технологій для обробки великих обсягів даних може приховати суть досліджуваних методів аналізу даних. Комерційні аналітичні пакети часто містять зайву функціональність, так як орієнтовані на використання статистичних методів (Statistica, Stata, SPSS і т.п.), а даний курс зосереджений на методах data mining і машинного навчання. Безкоштовно поширювані програмні системи для аналізу даних дозволяють уникнути зазначених складнощів - зазвичай вони створюються вченими-практиками в провідних лабораторіях і тому часто мають найбільш актуальною на сьогоднішній день функціональністю.

У лабораторних роботах курсу використовуються такі відкриті програмні системи: Weka 3 - Data Mining Software in Java (розроблена командою фахівців Університету Вайкато, Нова Зеландія); Orange - Data Mining Fruitful & Fun (пакет створений лабораторією штучного інтелекту Університету Любляни, Словенія); QuDA - Data Miner Discovery Environment (розроблена в технічному Університеті міста Дармштадта, Німеччина); Coron System - платформа видобутку даних (розроблена колегами з групи Orpailleur в лабораторії LORIA Університету Нансі, Франція); Concept Explorer - один з основних інструментів аналізу формальних понять (розроблений в Технічному університеті Дармштадта, Німеччина); RSES2 - Rough Set Exploration System (розроблена в Інституті математики Університету Варшави, Польща). Кожна програмна система використовується як мінімум в одній лабораторній роботі, а всі перераховані кошти можуть працювати під управлінням більшості сучасних ОС.

Інша проблема для такого курсу - нестача реальних даних, тому пропонується використовувати репозиторії, сформовані науковим співтовариством, зокрема UCI Machine Learning Repository, створений для потреб дослідників в області машинного навчання в Каліфорнійському університеті Ірвіна і містить 190 наборів даних з різних галузей фізики, техніки, біології, медицини, соціології, бізнесу та ін. Інший тип репозиторіїв характерний для змагань в рамках конференцій з аналізу даних, наприклад, Frequent Itemset Mining Implementations Repository, в якому крім даних містяться вихідні коди алгоритмів. Збережені в них набори даних отримані при вирішенні реальних завдань, багато з яких представляють собою актуальну науково-практичну проблему - вчені застосовують ці набори даних для доведення якості та придатності запропонованих ними нових методів аналізу даних.

Всі програми, а також набори даних і тексти лабораторних робіт доступні в електронному вигляді, в тому числі на сайті факультету. Можливість виконувати практикум поза аудиторних умов робить його придатним для самостійної роботи в рамках тих курсів, де аудиторне число годин обмежена чи ні можливості використовувати комп'ютерне обладнання.

Попередні вимоги до знань, умінь і навичок студентів

Студенти повинні володіти основними поняттями з курсу дискретної математики: безліч, відображення, бінарне відношення, властивості бінарних відносин, частковий порядок, діаграма часткового порядку, функція, числення висловів і предикатів першого порядку, граф і алгоритм. Знання з курсу лінійної алгебри включають обчислення з матрицями, знаходження власних чисел і власних векторів, рішення матричних рівнянь. Знання з курсу теорії ймовірностей припускають попереднє знайомство студентів з поняттям ймовірності, алгеброю подій, незалежності подій і теоремою Байеса. Додатковою вимогою є знайомство з поняттям інформаційної ентропії Шеннона.

***

Незважаючи на появу навчальної літератури з методів машинного навчання і видобутку даних, пропонований лабораторний практикум унікальний на російському освітньому ринку в силу відкритості використовуваного ПО, що надається провідними міжнародними науково-дослідними колективами, і орієнтацією саме на вироблення умінь щодо його застосування в навчальних і реальних завданнях.

Дмитро Ігнатов ( [email protected] ) - викладач кафедри аналізу даних і штучного інтелекту, ГУ-ВШЕ (Москва).

Знання, вміння і навички

Основні знання, необхідні для вільного виконання практикуму, отримані студентом в рамках лекцій відповідних курсів, проте для кожної лабораторної роботи наводиться необхідний теоретичний мінімум. До переліку основних знань, активно використовуються в курсі, входять:

  • видобуток даних (data mining) і машинне навчання (machine learning) як галузі сучасного аналізу даних;
  • завдання попередньої обробки даних - очищення, шкалювання, дискретизація і інші методи класифікації, кластеризації та прогнозування;
  • методи пошуку асоціацій і частих множин ознак, моделі і методи прикладної теорії решіток для аналізу даних (аналіз формальних понять);
  • впорядковані множини для аналізу даних;
  • способи оцінки якості результатів аналізу даних (ковзний контроль, точність і повнота і т.п.).

Студенти повинні володіти навичками установки і настройки вільного ПЗ для аналізу даних (Concept Explorer, Coron, Orange, Weka, QuDA, RSES2 і т.д.); завантаження навчальних і дослідницьких наборів даних з відкритих репозиторіїв, наприклад UCI і FIMI і т.п .; роботи з наборами даних і програмним забезпеченням. Особлива увага приділяється таким аспектам, як: вміння вибрати метод аналізу даних відповідно до поставленої мети, характером завдання і даних; розуміння математичних моделей, що лежать в основі методів, описаних в базових термінах теорії множин, упорядкованих структур, прикладної алгебри і т.п .; здатність студента сформулювати і виконати прості модельні розрахунки, що пояснюють суть конкретного методу; написання навчальних (аналітичних) звітів, що представляють собою міні-дослідження із застосування конкретної моделі, методу і даних, з результатами експериментів, проміжними звітами і висновками (фактично протокол виконання лабораторної роботи); пошукові вміння, спрямовані на дослідження актуальної проблеми або завдання, які активно обговорюються науковою спільнотою; читання додаткової наукової та навчальної літератури, в тому числі англійською мовою, вивчення нового ПО (не описати в текстах практикуму); вміння правильно інтерпретувати отримані результати.

Приклад розрахункового завдання для завдання класифікації: угоняемості автомобілів

Приклад розрахункового завдання для завдання класифікації: угоняемості автомобілів

Потрібно передбачити факт викрадення, і, як видно в цьому випадку, без попереднього шкалювання впоратися із завданням складно. Якщо вирішувати цю задачу за допомогою ДСМ-методу (метод названий на честь англійського філософа Джона Стюарта Мілля і заснований на навчанні гіпотезам по позитивним і негативним прикладам явища за допомогою операції подібності), то можна отримати кілька гіпотез на користь позитивної (викрадають) і негативною ( не викрадають) класифікації об'єктів. Позитивні: {червоний, спортивний}, {жовтий, Японія, немає пошкоджень} і {спортивний, Японія}. Негативні: {жовтий, США} і {червоний, джип, Японія, є пошкодження}. Відповідно до знайдених гіпотезам приклади 8, 9 і 10 класифікуються відповідно негативно, позитивно і невизначено. Подібні завдання студент вирішує, виконуючи обчислення вручну під час здачі допуску до лабораторної роботи.

Різні методи мають свої особливості, наприклад, ДСМ-метод будує прогнози дуже обережно, що робить його корисним, наприклад, в задачах прогнозування токсичності речовин - менше помилка віднесення отруйних речовин до нетоксичних. Завдання для обчислень за допомогою програмних систем проводяться на більших наборах даних: коли зрозуміла суть методу, дуже важливо навчити аналітиків вмінню інтерпретувати результати, серед яких може виявитися не так багато нових нетривіальних знань.

Пропонувати набори даних більших розмірів, що містять кілька мільйонів об'єктів або ознак, не входить в завдання курсу, так як для успішного оволодіння методами зниження розмірності і відбору релевантних ( «цікавих») об'єктів або ознак досить дослідження масивів розмірами близько 1 тис. Об'єктів на 100 ознак.