Альтернативи заміни STATISTICA. Нейронні мережі

STATISTICA Automated Neural Networks - єдиний у світі нейромережевий програмний продукт, повністю перекладений російською мовою!

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

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

У чому переваги використання ?

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

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

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

    Підтримка ансамблів нейромереж та нейромережевих архітектур практично необмеженого розміру;

    Багаті графічні та статистичні можливості, що полегшують інтерактивний дослідницький аналіз;

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

    Повна інтеграція з потужними автоматичними інструментами STATISTICA; запис повноцінних макросів для будь-яких аналізів; створення власних нейромережевих аналізів та додатків за допомогою STATISTICA Visual Basic, виклик STATISTICA Automated Neural Networksз будь-якої програми, що підтримує технологію СОМ (наприклад, автоматичне проведення нейромережевого аналізу в таблиці MS Excel або об'єднання кількох додатків, написаних мовами C, С++, С#, Java і т. д.).

  • Вибір найбільш популярних мережевих архітектур, включаючи Багатошарові персептрони, Радіальні базисні функції та карти ознак, що самоорганізуються.
  • Є інструмент Автоматичного Мережевого Пошуку, що дозволяє в автоматичному режимі будувати різні нейромережеві архітектури та регулювати їхню складність.
  • Збереження кращих нейронних мереж.

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

    Підтримка завантаження та аналізу кількох моделей.

  • Опціональна можливість генерації вихідного коду мовами C, C++, C#, Java, Predictive Model Markup Language (PMML), який може бути легко інтегрований у зовнішнє середовище для створення власних програм.

Генератор коду

Генератор коду STATISTICA Автоматизовані Нейронні Мережіможе згенерувати вихідний системний програмний код нейромережевих моделей мовами C, Java і PMML (Predictive Model Markup Language). Генератор коду є додатковим додатком до системи STATISTICA Автоматизовані Нейронні Мережіщо дозволяє користувачам на основі проведеного нейромережевого аналізу генерувати C або Java-файл з вихідним кодом моделей та інтегрувати його в незалежні зовнішні програми.

    Генератор коду вимагає наявності STATISTICA Автоматизовані Нейронні Мережі.

    Генерує версію вихідного коду нейронної мережі (у вигляді файлу мовою C, C++, C# чи Java).

    C або Java-файл з кодом можна вбудувати в зовнішні програми.

STATISTICAAutomated Neural Networksу нейромережевих обчисленнях

Використання нейронних мереж має на увазі набагато більше, ніж просто обробку даних нейромережевими методами.

STATISTICA Automated Neural Networks (SANN)надає різноманітні функціональні можливості для роботи з дуже складними завданнями, що включають не тільки новітні Архітектури Нейронних Мережі Алгоритми навчання, але також і нові підходи до побудови нейромережевих архітектур з можливістю перебору різних функцій активацій та помилок, що дозволяє простіше інтерпретувати результати. Крім того, розробники програмного забезпечення та користувачі, які експериментують з налаштуваннями додатків, оцінять той факт, що після проведення заданих експериментів у простому та інтуїтивно зрозумілому інтерфейсі STATISTICA Automated Neural Networks (SANN), нейромережевые аналізи можуть бути об'єднані в додатку користувача. Це досягається або за допомогою бібліотеки СОМ-функцій STATISTICA, що повністю відображає всі функціональні можливості програми, або за допомогою коду мовою C/C++, який генерується програмою і допомагає запустити повністю навчену нейронну мережу.

Модуль STATISTICA Automated Neural Networksповністю інтегрований із системою STATISTICA, таким чином доступний величезний вибір інструментів редагування (підготовки) даних для аналізу (перетворення, умови вибору спостережень, засоби перевірки даних тощо).

Як і всі аналізи STATISTICA, програма може бути "приєднана" до віддаленої бази даних за допомогою інструментів обробки "на місці" або пов'язана з активними даними, щоб моделі навчалися або запускалися (наприклад, для обчислення передбачених значень або класифікації) автоматично при зміні даних.

Шкалювання даних та перетворення номінальних значень

Перед тим, як дані будуть введені в мережу, вони мають бути певним чином підготовлені. Так само важливо, щоб вихідні дані можна було правильно інтерпретувати. У STATISTICA Automated Neural Networks (SANN)є можливість автоматичного масштабування вхідних та вихідних даних; також можуть бути автоматично перекодовані змінні з номінальними значеннями (наприклад, Пол=(Чоловік,Жін)), у тому числі за методом 1-N кодування. STATISTICA Automated Neural Networks (SANN)містить також засоби роботи з пропущеними даними. Є засоби підготовки та інтерпретації даних, спеціально призначені для аналізу часових рядів. Велика різноманітність аналогічних коштів реалізована також у STATISTICA.

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

Вибір нейромережевої моделі, ансамблі нейронних мереж

Різноманітність моделей нейронних мереж та безліч параметрів, які необхідно встановити (розміри мережі, параметри алгоритму навчання тощо), може поставити іншого користувача в безвихідь. Але для цього і існує інструмент автоматичного нейромережевого пошуку, , який може автоматично здійснити пошук відповідної архітектури мережі будь-якої складності, див. нижче. В системі STATISTICA Automated Neural Networks (SANN)реалізовано всі основні типи нейронних мереж, що використовуються при вирішенні практичних завдань, у тому числі:

    багатошарові персептрони (мережі з прямою передачею сигналу);

    мережі на радіальних базових функціях;

    самоорганізуються карти Кохонена.

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

Крім того, у системі STATISTICA Automated Neural Networks (SANN)реалізовані Мережеві ансамблі, що формуються з випадкових (але значущих) комбінацій перелічених вище мереж. Цей підхід особливо корисний при зашумлених даних та даних невеликої розмірності.

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

Для візуалізації даних у пакеті STATISTICA Automated Neural Networks (SANN)реалізовані діаграми розсіювання та тривимірні поверхні відгуку, що допомагають користувачеві зрозуміти "поведінку" мережі.

Зрозуміло, будь-яку інформацію, отриману з перелічених джерел, Ви можете використовувати для подальшого аналізу іншими засобами STATISTICA, а також для подальшого включення до звітів або налаштування.

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

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

Автоматизована нейронна мережа (автоматичний пошук та вибір різних нейромережевих архітектур)

Складовою частиною пакету STATISTICA Automated Neural Networks (SANN)є інструмент автоматичного нейромережевого пошуку, Автоматизована нейронна мережа (АНС) - Automated Network Search (ANS), який оцінює безліч нейронних мереж різної архітектури та складності та вибирає мережі найкращої архітектури для даної задачі.

Значний час при створенні нейронної мережі йде на вибір відповідних змінних та оптимізацію архітектури мережі методом евристичного пошуку. STATISTICA Automated Neural Networks (SANN)бере цю роботу на себе та автоматично проводить евристичний пошук за Вас. Ця процедура враховує вхідну розмірність, тип мережі, розмір мережі, функції активації і навіть необхідні вихідні функції помилок.

Є надзвичайно ефективним інструментом під час використання складних технік, дозволяючи автоматично знаходити найкращу архітектуру мережі. Замість того, щоб витрачати багато годин на сидіння перед комп'ютером, надайте системі STATISTICA Automated Neural Networks (SANN)зробити цю роботу за Вас.

Успіх Ваших експериментів з пошуку найкращого типу та архітектури мережі істотно залежить від якості та швидкості алгоритмів навчання мережі. В системі STATISTICA Automated Neural Networks (SANN)реалізовані найкращі на сьогоднішній день навчальні алгоритми.

В системі STATISTICA Automated Neural Networks (SANN)реалізовано два швидкі алгоритми другого порядку - методи сполучених градієнтів та алгоритм BFGS. Останній є надзвичайно потужним сучасним алгоритмом нелінійної оптимізації, і фахівці дуже рекомендують ним користуватися. Також є спрощена версія алгоритму BFGS, що вимагає меншої кількості пам'яті, який використовується системою у випадку, коли можливості оперативної пам'яті комп'ютера обмежені. Ці алгоритми, як правило, швидше сходяться і отримують точніше рішення, ніж алгоритми першого порядку точності, наприклад Градієнтний спуск.

Ітеративний процес навчання мережі у системі STATISTICA Automated Neural Networks (SANN)супроводжується автоматичним відображенням поточної помилки навчання та обчислюваної незалежно від неї помилки на перевірочній множині, при цьому показується графік сумарної помилки. Ви можете перервати навчання будь-якої миті, просто натиснувши кнопку. Крім того, є можливість задати умови зупинки, при виконанні яких навчання буде перервано; такою умовою може бути, наприклад, досягнення певного рівня помилки, або стабільне зростання перевірочної помилки протягом заданої кількості проходів - "епох" (що свідчить про так зване перенавчання мережі). Якщо перенавчання має місце, це не повинно турбувати користувача: STATISTICA Automated Neural Networks (SANN)автоматично запам'ятовує екземпляр найкращої мережі, отриманої в процесі навчання, і до цього варіанту мережі завжди можна звернутися, натиснувши відповідну кнопку. Після завершення навчання мережі, Ви можете перевірити якість її роботи на окремій тестовій множині.

Після того, як мережа навчена, потрібно перевірити якість її роботи та визначити характеристики. Для цього у пакеті STATISTICA Automated Neural Networks (SANN)є набір екранних статистик та графічних засобів.

Якщо задані кілька моделей (мереж та ансамблів), то (якщо це можливо) STATISTICA Automated Neural Networks (SANN)відобразить порівняльні результати (наприклад, побудує криві відгуки кількох моделей на одному графіку, або представить предиктори кількох моделей в одній таблиці). Ця властивість дуже корисна для порівняння різних моделей, що навчаються на одному наборі даних.

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

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

Готові рішення (пристосування користувача, що використовують STATISTICA Automated Neural Networks)

Простий та зручний інтерфейс системи STATISTICA Automated Neural Networks (SANN)дозволяє Вам швидко створювати нейромережні програми для вирішення Ваших завдань.

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

Навчені нейронні мережі можуть бути застосовані до нових наборів даних (для передбачення) кількома способами: Можна зберегти навчені мережі і потім застосувати їх до нового набору даних (для передбачення, класифікації або прогнозування); Можна використовувати генератор коду для автоматичного створення програмного коду мовою С (С++, C#) або Visual Basic і надалі використовувати його для передбачення нових даних у будь-якому програмному середовищі visual basic або С++ (C#), тобто впровадити повністю навчену нейронну мережу у Вашу програму. Насамкінець, всі функціональні можливості системи STATISTICA, включаючи STATISTICA Automated Neural Networks (SANN), можуть бути використані як СОМ об'єктів (Component Object Model) в інших програмах (наприклад, Java, MS Excel, C#, VB.NET і т. д.). Наприклад, Ви можете впровадити автоматичний аналіз, створений за допомогою STATISTICA Automated Neural Networks (SANN)у таблиці MS Excel.

Список алгоритмів навчання

    Градієнтний спуск

    Пов'язані градієнти

    Навчання Кохонена

    Метод k-середніх для мережі радіальних базисних функцій

Обмеження у розмірах мереж

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

Електронне керівництво

У складі системи STATISTICA Automated Neural Networks (SANN)є добре ілюстрований підручник, що містить повне та зрозуміле введення в нейронні мережі, а також приклади. З будь-якого діалогового вікна доступна система докладних контекстно-залежних довідок.

Генератор вихідного коду

Генератор вихідного коду є додатковим продуктом, який дозволяє користувачам легко створювати власні програми на базі системи STATISTICA Automated Neural Networks (SANN). Цей додатковий продукт створює вихідний системний код нейромережевої моделі (у вигляді файлу мовою C, C++, C# або Java), який можна окремо скомпілювати та інтегрувати у Вашу програму для вільного розповсюдження. Цей продукт розроблений спеціально для корпоративних системних розробників, а також тих користувачів, кому необхідно перетворити високооптимізовані процедури, створені в STATISTICA Automated Neural Networks (SANN), у зовнішні додатки на вирішення складних аналітичних завдань. (Необхідно зазначити, що для отримання дозволу користувачі повинні повідомити співробітників компанії сайтssia про поширення програм, що використовують згенерований код).

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

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

Відкрийте файл Свинець.xls у пакеті Statistica. Відобразиться вікно «Відкриття файлу».

Мал. 4. 33. Вікно імпорту.

Необхідно вибрати опцію «Імпортувати вибраний лист» та вибрати назву листа з даними:

Мал. 4. 34. Виберіть аркуш Excel для імпорту в пакет Statistica.

У наступному вікні необхідно вказати реальні параметри даних, які зазвичай визначаються і відображаються автоматично (крім трьох останніх чекбоксів).

Мал. 4. 35. Завдання області імпорту.

Після цього імпортовані дані з'являться у вікні.

Мал. 4. 36. Результати імпорту.

Запустіть пакет аналізу за допомогою нейронних мереж. Для цього виберіть у меню «Аналіз» пункт «Нейронні мережі».

Мал. 4. 37. Вибір методу обробки даних – «нейронна мережу».

після цього з'явиться вікно пакету STATISTICA Neural Networks:

Мал. 4. 38. Стартове вікно аналізу "нейронні мережі".

Перейдіть на вкладку «Швидкий», де необхідно задати тип завдання-Регресія, та інструмент-Конструктор мереж.

Мал. 4. 39. Запуск конструктора нейромереж.

Далі, натиснувши кнопку «ОК», ви перейдете в режим вибору вихідних (залежних) та вхідних (незалежних) змінних. Як перша вибираємо «Свинець», а як останні – кількість автомобілів усіх категорій. Стовпці «№» та «Вулиці» залишаються такими, що не використовуються.

Мал. 4. 40. Вибір вхідних та вихідних даних для нейромережі.

Натиснувши «Ок», ви знову повернетеся на вкладку «Швидкий». Потім, знову натиснувши кнопку "Ок", ви переміститеся у вікно формування нейромережі. На вкладці «Швидкий» необхідно вибрати тип мережі - багатошаровий персептрон,

Мал. 4. 41. Вибір типу нейромережі.

а на вкладці «Елементи» можна вказати необхідну кількість шарів, кількість нейронів у кожному, а також вид функції активації:

Мал. 4. 42. Завдання кількості шарів та типів нейронів.

Мал. 4. 43. Вибір методу навчання нейосети.

Тут, натиснувши кнопку «Вибірки», можна задати кількість навчальних, контрольних та тестових прикладів. Якщо задати кількість тестових та контрольних прикладів рівними нулю, то мережа буде навчатися за всіма прикладами:

Мал. 4. 44. Визначення даних для навчання та тестування.

Повернувшись у головне вікно навчання, можна, натиснувши кнопку «Користувача» і перейшовши до вкладки «Інтерактивний», вимагати, щоб процес навчання відображався у вигляді графіка:

Мал. 4. 45. Завдання виду графіка демонстрації процесу навчання.

Нарешті, натиснувши кнопку «Ок», ви запустите процес навчання, результат якого відобразиться на графіці:

Мал. 4. 46. Навчання нейромережі.

Натиснувши кнопку "Ок", ви перейдете до вікна результатів, де можете вивчати різні характеристики створеної мережі, переміщаючись по вкладках вікна:

Мал. 4. 47. Результати моделювання нейромережі.

Так, наприклад, на вкладці «Додатково» існує кнопка «Архітектура мережі», натиснувши яку можна побачити топологію побудованої мережі:

Мал. 4. 48. Вид побудованої нейромережі.

а також кнопка «Спостереження користувача», де можна задати мережі нові вихідні дані та отримати відповідь вже навченої мережі.

У чому полягає схожість і відмінність мов нейрокомпьютинга і статистики у аналізі даних. Розглянемо найпростіший приклад.

Припустимо, що ми провели спостереженнята експериментально виміряли Nпар точок, що становлять функціональну залежність. Якщо спробувати провести через ці точки найкращу пряму, що мовою статистики означатиме використання для опису невідомої залежності лінійної моделі

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

Якщо параметри і знайдені, можна оцінити значення yдля будь-якого значення x,тобто здійснити інтерполяціюі екстраполяціюданих.

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

Малюнок 25. Лінійна регресія і одношаровий персептрон, що реалізує її.

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

1 Якщо згадати, що з формулами і рівняннями оперує ліву півкулю, і з графічними образами праве, можна зрозуміти, що у зіставленні зі статистикою знову проявляється “ правопівкуля” нейромережевого підходу.

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

як фундаментальна зміна моделі.

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

може дати значно найкращі значення параметрів.

Крім розглянутої найпростішої моделі можна навести приклади інших у певному сенсі еквівалентних моделей статистики та нейромережевих парадигм

Таблиця 3. Аналогічні методики

Мережа Хопфілда має очевидний зв'язок із кластеризацією даних та їх факторним аналізом.

1 Факторний аналізвикористовується для вивчення структуриданих. Основною його посилкою є припущення про існування таких ознак. факторів, які неможливо спостерігати безпосередньо, але можна оцінити за декількома первинними ознаками, що спостерігаються. Так, наприклад, такі ознаки, як об'єм виробництваі вартість основних фондів, можуть визначати такий фактор, як масштаб виробництва. На відміну від нейронних мереж, що вимагають навчання, факторний аналіз може працювати лише з певною кількістю спостережень. Хоча в принципі число таких спостережень має лише на одиницю перевищувати кількість змінних рекомендується використовувати хоча б утричі більше значення. Це все одно вважається меншим, ніж обсяг навчальної вибірки для нейронної мережі. Тому статистики вказують на перевагу факторного аналізу, що полягає у використанні меншої кількості даних і, отже, що призводить до швидшої генерації моделі. Крім того, це означає, що реалізація методів факторного аналізу потребує менш потужних обчислювальних засобів. Іншим перевагою факторного аналізу вважається те, що є методом типу white-box, тобто. повністю відкритий і зрозумілий – користувач може легко усвідомлювати, чому модель дає той чи інший результат. Зв'язок факторного аналізу з моделлю Хопфілда можна побачити, згадавши вектори мінімального базису для набору спостережень (образів пам'яті див. розділ 5). Саме ці вектори є аналогами факторів, що поєднують різні компоненти векторів пам'яті – первинні ознаки.

1 Логістична регресіяє методом бінарної класифікації, що широко застосовується при прийнятті рішень у фінансовій сфері. Вона дозволяє оцінювати ймовірність реалізації (або нереалізації) деякої події в залежності від значень деяких незалежних змінних - предикторов: x 1, ..., x N. У моделі логістичної регресії така можливість має аналітичну форму: Pr( X) = (1 + exp (-z)) -1 де z = a 0 + a 1 x 1 + ... + a N x N . Нейросетевым аналогом її, очевидно, є одношаровий персептрон з вихідним нелінійним нейроном. У фінансових додатках логістичну регресію з низки причин надають перевагу багатопараметричній лінійній регресії та дискримінантному аналізу. Зокрема, вона автоматично забезпечує належність ймовірності інтервалу, накладає менше обмежень на розподіл значень предикторів. Останнє дуже суттєве, оскільки розподіл значень фінансових показників, що мають форму відносин, зазвичай не є нормальним та “сильно перекошений”. Перевагою нейронних мереж є те, що така ситуація не становить для них проблеми. З іншого боку, нейромережі нечутливі до кореляції значень предикторов, тоді як методи оцінки параметрів регресійної моделі у разі часто дають неточні значення.

Анотація: Нейронні мережі та статистика. Нейронні мережі та нечітка логіка. Нейронні мережі та експертні системи. Нейронні мережі та статистична фізика.

Тварини поділяються на:

  1. що належать Імператору,
  2. набальзамованих,
  3. приручених,
  4. сосунків,
  5. сирен,
  6. казкових,
  7. окремих собак,
  8. включених до цієї класифікації,
  9. бігаючих, як божевільні,
  10. незліченних,
  11. намальованих найтоншим пензлем з верблюжої вовни,
  12. інших,
  13. розбили квіткову вазу,
  14. здалеку мух, що нагадують.

Х.Л.Борхес, "Аналітична мова Джона Вілкінса"

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

Нейронні мережі та статистика

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

Чи є нейронні мережі мовою опису?

Як зазначалося, деякі статистики стверджують, що нейромережевые підходи до обробки даних є просто заново перевідкритими і переформульованими, але добре відомими статистичними методами аналізу. Іншими словами, нейрокомп'ютер просто користується новою мовою для опису старого знання. Як приклад наведемо цитату з Уоррена Серла:

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

Подібна думка, на перший погляд, може здатися обґрунтованою. Формалізм нейронних мереж справді здатний претендувати на роль універсальної мови. Не випадково вже в піонерській роботі МакКаллока і Піттса було показано, що нейромережевий опис еквівалентний опису логіки висловлювань.

Я насправді виявив, що за допомогою техніки, яку я розробив у роботі 1961 року (...), я міг би легко відповісти на всі питання, які мені ставлять фахівці з мозку (...) або комп'ютерники. Як фізик, однак, я добре знав, що теорія, яка пояснює все, насправді не пояснює нічого: у кращому разі вона є язиком. Едуардо Каянелло

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

Таблиця 11.1. Словник аналогічних термінів
Нейронні мережі Статистичні методи.
Ознаки змінні
входи незалежні змінні
виходи передбачені значення
цільові значення залежні змінні
помилка нев'язка
навчання, адаптація, самоорганізація оцінка
функція помилки, функція Ляпунова критерій оцінки
навчальні образи (пари) спостереження
Параметри мережі: ваги, пороги. Оціночні параметри
нейрони високого порядку взаємодії
функціональні зв'язки трансформації
навчання з учителем чи гетероасоціація регресія та дискримінантний аналіз
навчання без вчителя чи автоасоціація стиск даних
змагання, адаптивна векторна квантизація кластерний аналіз
узагальнення інтерполяція та екстраполяція
У чому різниця нейронних мереж та статистики?

У чому полягає схожість і відмінність мов нейрокомпьютинга і статистики у аналізі даних. Розглянемо найпростіший приклад.

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

Якщо параметри і знайдені, можна оцінити значення y для будь-якого значення x, тобто здійснити інтерполяцію і екстраполяцію даних.

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


Мал. 11.1.

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

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

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

Як фундаментальна зміна моделі.

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

Може дати значно найкращі значення параметрів.

Крім розглянутої найпростішої моделі можна навести приклади інших у певному сенсі еквівалентних моделей статистики та нейромережевих парадигм

Мережа Хопфілда має очевидний зв'язок із кластеризацією даних та їх факторним аналізом.

Факторний аналізвикористовується вивчення структури даних. Основною його посилкою є припущення про існування таких ознак - факторів, які неможливо спостерігати безпосередньо, але можна оцінити за декількома первинними ознаками, що спостерігаються. Так, наприклад, такі ознаки, як обсяг виробництва та вартість основних фондів, можуть визначати такий фактор, як масштаб виробництва. На відміну від нейронних мереж, що вимагають навчання, факторний аналіз може працювати лише з певною кількістю спостережень. Хоча в принципі число таких спостережень має лише на одиницю перевищувати кількість змінних рекомендується використовувати хоча б утричі більше значення. Це все одно вважається меншим, ніж обсяг навчальної вибірки для нейронної мережі. Тому статистики вказують на перевагу факторного аналізу, що полягає у використанні меншої кількості даних і, отже, що призводить до швидшої генерації моделі. Крім того, це означає, що реалізація методів факторного аналізу потребує менш потужних обчислювальних засобів. Іншим перевагою факторного аналізу вважається те, що є методом типу white-box, тобто. повністю відкритий і зрозумілий – користувач може легко усвідомлювати, чому модель дає той чи інший результат. Зв'язок факторного аналізу з моделлю Хопфілда можна побачити, згадавши вектори мінімального базисудля набору спостережень (образів пам'яті – див. Лекцію 5). Саме ці вектори є аналогами факторів, що поєднують різні компоненти векторів пам'яті – первинні ознаки.

За певну історію спостереження за хворими накопичився масив даних, які збережені у таблиці системи STATISTICA. Вигляд відповідної таблиці даних представлений на малюнку 6.

Рисунок 6. Фрагмент таблиці вихідних даних

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

Факт нелінійності завдання не викликає сумніву. Звичайно, можна було б спробувати вирішити задачу, скориставшись модулем STATISTICA Nonlinear Estimation, а саме за допомогою пропонованих даним модулем ітеративних процедур "намацати" вид функції. Однак тут є низка неприємностей, які значно розтягують процедуру пошуку рішення. Найважливішою з них є формулювання гіпотези про явний вид досліджуваної залежності, яка зовсім не є очевидною.

Без додаткових досліджень, про явний вид залежності сказати щось складно. Тим більше слід згадати, що ми не врахували ще один фактор. Загалом, розв'язання подібного завдання методами нелінійного оцінювання може розтягнутися дуже надовго, а може ні до чого і не привести. У таких критичних ситуаціях, коли відомо, що

Залежність між змінними є;

Залежність виразно нелінійна;

Про явний вид залежності сказати щось складно,

рятують нейромережевые алгоритми. Розглянемо спосіб розв'язання цього завдання у модулі STATISTICA Neural Networks.

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

Модуль Neural Networks системи STATISTICA включає процедуру, що організовує пошук потрібної конфігурації мережі. Ця процедура полягає у побудові та тестуванні великої кількості мереж з різними архітектурами та наступному виборі з них тієї мережі, яка найкраще підходить для вирішення поставленого завдання. Цей інструмент називається Intelligent Problem Solver. Для запуску модуля Neural Networks необхідно скористатися однойменною командою основного меню системи STATISTICA – Statistics. (Малюнок 7)

Рисунок 7. Запуск модуля Neural Networks

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

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

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

Модуль Neural Networks системи STATISTICA включає унікальну процедуру, що організує пошук потрібної конфігурації мережі. Цей інструмент називається Intelligent Problem Solver. Скористайтеся цим інструментом та здійснимо пошук нейронної мережі, яка буде здатна до вирішення нашого завдання.

Рисунок 8. Стартова панель модуля Neural Networks

У вкладці Quick (Швидкий) цього діалогового вікна в розділі Problem Type (Клас завдань) пропонується здійснити вибір того класу завдань, з яким ми зіткнулися. Нашою метою є побудова багатовимірної залежності чи, іншими словами, багатовимірної нелінійної регресії. Отже, у розділі Problem Type - Клас завдань слід зазначити Regression (Регресія).

Визначившись із класом завдань, необхідно вказати змінні щодо Аналізу. Для того, щоб вибрати змінні, скористаємося кнопкою Variables. При натисканні цієї кнопки з'являється діалогове вікно Select input (independent), output (dependent) and selector variables (Вкажіть вхідні (незалежні), вихідні (залежні) та змінні, що групують). У цьому діалоговому вікні потрібно задати два переліки змінних. Continuous outputs (Безперервні вихідні), в нашому випадку, - це змінні Прийом у стаціонарі І-АПФ/АРА, Прийом у стаціонарі БАБ, Прийом у стаціонарі БКК, Прийом у стаціонарі діуретиків та прийом у стаціонарі препаратів центральної дії. Continuous inputs (Неперервні вхідні), у нашому прикладі, - це з 1 по 61 вихідний параметр.

Рисунок 9. Вибір змінних для аналізу

У розділі Select analysis (Вибір аналізу) є дві опції Intelligent Problem Solver і Custom Network Designer. Для автоматичного вибору параметрів нейронної мережі потрібна перша опція, яка встановлюється за замовчуванням. Для продовження аналізу необхідно натиснути кнопку OK.

На наступному етапі з'являється діалогове вікно налаштування процедури Intelligent Problem Solver.

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

У розділі Networks tested (Кількість мереж, що тестуються) вкажемо 100, Networks retained (Кількість збережених мереж) - 10 (Малюнок 10)

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

Малюнок 10. Завдання кількості мереж, що тестуються.

Малюнок 11. Вибір архітектури мережі

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

Малюнок 12. Вказівка ​​розмірів навчальної, контрольної та тестової вибірок

Тепер, після встановлення всіх параметрів навчання, для запуску процедури пошуку мереж необхідно натиснути кнопку ОК.

Стан алгоритму пошуку відображається у діалоговому вікні IPS Training In Progress (Процес пошуку мережі).

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

Сподобалася стаття? Поділіться їй
Вгору