АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Навчання та використання нейромереж

Читайте также:
  1. E. Використання антисептичних засобів
  2. V. Робочий час і його використання
  3. VII. Використання міжнародного фактору в інтересах інноваційного розвитку економіки України
  4. А) розподіл навчального часу за темами для студентів-магістрів за спеціальністю 8.030109 – «Управління персоналом та економіка праці» стаціонарної форми навчання
  5. Адаптація до шкільного навчання
  6. Адаптивна система навчання з використанням інформаційних технологій.
  7. Аналіз використання автопарку.
  8. Аналіз використання виробничих потужностей
  9. Аналіз використання виробничого обладнання
  10. Аналіз використання МТП
  11. Аналіз використання робочого часу
  12. Аналіз ефективності використання матеріальних ресурсів

Нейромережу можна побудувати заново або викорис­тати готовий нейропакет, проте у будь-якому разі потрібно вико­нати два етапи робіт:

1) вибрати тип (архітектуру) мережі;

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

виходів, причому кожному входу в мережу і виходу із неї відпо­відає певний («свій») нейрон, кількістю нейронів і характером зв'язків між ними, функцією стану і передавальною функцією. Основними функціями кожного нейрона є: оцінювання вхідних значень за допомогою відповідних ваг; визначення суми комбі­націй вхідних значень за допомогою функції стану; порівняння суми зі значенням порогової величини (функція активізації); ви­значення власного виведення даних.

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

Рис. 9.11. Схема підготовки до вибору нейромережі

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


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

Щоб побудувати робочу нейромережу, ми спершу навчаємо ЇЇ на «тренувальному масиві даних», потім використовуємо навчену мережу, щоб зробити передбачення. Ми можемо, часом, також використовувати «моніторинг масиву даних» протягом тренува­льної фази, щоб перевірити прогрес у тренінгу. В такому разі тренувальні масиви даних поділяються на дві частини: дані для навчання і дані для тестування.

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

Протягом тренувальної фази мережа встановлює ваги, які ви­значають режим проміжного рівня. Поширений підхід для пер-септрона називається «Back Propagation»зворотним переда­ванням помилки навчання, за якого ваги регулюються залежно від того, як ретельно мережа зробила передбачення. Неправиль­ні передбачення зменшують порогові величини для відповідних зв'язків, як показано на рис. 9.12. Алгоритми навчання мають різні параметри і настройки, для керування якими потрібне ро­зуміння їх впливу.

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



 


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

9.4.7. Готове програмне забезпечення нейромереж (нейропакети)

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

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

Варіант, що передбачає створення власної системи на основі готового нейропакета підходить для менших компаній і навіть для приватних осіб — інвесторів, трейдерів, підприємців. Проте, є й кілька прикладів найбільших концернів, що обрали цей варіант і домоглися завдяки цьому успіху. Так, наприклад, компанія «DuPont» розробила новий матеріал — безпечне скло, використовуючи ней-ропакет NeuroShelL. Цей пакет використовується також у великих західних банках, таких як Citibank, Security Pacific National Bank, The World Bank, Lloyds Bank, The Federal Reserve Board, Federal Reserve Bank of New York, і в страхових компаніях Royal Insurance, Presidential Life Insurance, New York Life Insurance та ін. Хоч конк­ретні методики використання пакетів тримають у секреті, форму­лювання задач і підходи до їх розв'язання відомі.

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


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

9.5. Генетичні алгоритми

9.5.1. Генетичні успадкуванняконцептуа­льна засада генетичних алгоритмів

У загальному значенні генетичні алгоритми (Genetic Algorithms) — це тип алгоритмів, інспірованих механізмами еволюції живої природи, які застосовуються, головно, до задач глобальної оптимізації (зокрема, задач комбінаторної оптиміза-ції) і деякою мірою для дейтамайнінгу, зокрема, для комбіну­вання шаблонів з правил індукції, які були відкриті до цього, навчання нейромереж, пошуку зразків у даних, відкриття шаб­лонів у тексті тощо. Генетичні алгоритми належать нині до стан­дартного інструментарію методів дейтамайнінгу.

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

43,5


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

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

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

Майже в кожній клітині будь-якої тварини є ряд хромосом, що несуть інформацію про цю тварину. Основна частина хромосоми — нитка ДНК (молекула Дезоксирибо Нуклеїнової Кислоти), яка складається з чотирьох видів спеціальних з'єднань (молекул) — нуклеотидів, що чергуються в певній послідовності. Нуклеотиди позначають буквами А, Т, С і G, і саме порядок їх розміщеня є кодом усіх генетичних властивостей даного організму. Кажучи точніше, ДНК визначає, які хімічні реакції будуть відбуватися в даній клітині, як вона буде розвиватися і які функції виконувати­ме. Отже, генетичний код окремого індивідуума — це просто дуже довгий рядок комбінацій із чотирьох букв А, Т, С і G, а сам ген — це відрізок ланцюга ДНК, що відповідає за певну власти­вість особи, наприклад за колір очей, тип волосся, колір шкіри і т. д. Різні значення генів називають аллелями. Вся сукупність гене­тичних ознак людини кодується за допомогою приблизно 60 тис. генів, які разом містять більше ніж 90 млн нуклеотидів.

Розрізняють два види клітин: статеві (такі, як сперматозоїд і яйцеклітина) і соматичні. У кожній соматичній клітині людини міститься 46 хромосом. Ці 46 хромосом насправді є 23 парами, причому в кожній парі одна з хромосом отримана від батька, а друга — від матері. Парні хромосоми відповідають -за такі самі


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

У статевих клітинах хромосом тільки 23, і вони непарні. У мо­мент запліднення відбувається злиття чоловічої і жіночої статевих клітин і утворюється клітина зародка, що містить якраз 46 хромо­сом. Які ж властивості нащадок отримає від батька, а які від мате­рі? Це залежить від того, які саме статеві клітини брали участь у заплідненні. Річ у тім, що процес вироблення статевих клітин (так званий мейоз) в організмі схильний до випадковості, із-за чого нащадки все ж багато чим відрізняються від своїх батьків.

У мейозі, зокрема, відбувається наступне: парні хромосоми со­матичної клітини зближуються впритул, потім їх нитки ДНК розри­ваються в кількох випадкових місцях і хромосоми обмінюються своїми ідентичними ділянками. Цей процес забезпечує появу нових варіантів хромосом і називається перехрещуванням хромосом або кросинговером (від анг. crossing-over). Кожна з хромосом, що знову з'явилася, виявиться потім усередині однієї зі статевих клітин, і її генетична інформація може реалізуватися в нащадках даної особи.

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

Важливе місце в еволюційній теорії відводиться поняттю по­пуляції як елементарній еволюційній одиниці. Популяція — це сукупність особин певного виду організмів, які здатні до вільного схрещування, населяють певну територію і деякою мірою ізольо­вані від сусідніх популяцій. У рамках кожної популяції відбува­ється процес розмноження — репродукції (Reproduction), що яв­ляє собою комбінацію послідовностей (strings, хромосом) у популяції для створення нової послідовності (нащадка). За ре­продукції нащадок бере частини позицій генів від обох батьків, і матиме частину ознак кожного із них. На рис. 9.1 Зо) показана


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

У геїетичних алгоритмах важливе значення мають: форму­вання початкового ряду елементів (популяції), операції кросин-говера, цо в теорії генетичних алгоритмів частіше називають xpocoeejoM (Cross-over), і мутації (Mutation).

Kpocteep — це комбінування (змішування) хромосом шляхом замін зн;чень генів і утворення нових хромосом на їх місцях. На рис. 9.136) наведена спрощена схема кросовера, де показано, як шляхом заміни ідентичних ділянок двох батьків отримані два нащадкиз новими ознаками.

Мутація — спонтанне перетворення (видозміна) символів (характерлих особливостей) у послідовності (хромосомі). На рис. 9.13 в) показано, як у результаті мутації п'ятого гена (зна­чення 0 зімінено 1) отримана нова хромосома.


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

9.5.2. Загальна схема генетичних алгоритмів

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

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

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


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

Нехай розглядається завдання вибору плану вкладення коштів у вибрані наперед N інвестиційних проектів, причому потрібно визначити обсяги вкладень коштів у кожний проект так, щоб за­гальний їх обсяг в усі проекти не перевищував величину D, а ви­браний критерій ефективності, наприклад рівень рентабельності інвестицій (прибуток на капітал, ROI — Return on Investment), набував максимального значення. Розв'язуючи цю задачу за ге­нетичним алгоритмом, вважатимемо, що кожен індивідуум — це інвестиційний план, який містить./V хромосом, кожна з яких яв­ляє собою вектор із нулів та одиниць — двійковий вираз обсягу вкладень у даний проект. Якщо довжина хромосоми дорівнює ві­сьмом двійковим розрядам, то потрібне попереднє нормування всіх чисел на інтервалі від 0 до 255 (усього значень 2). Такі хромосоми називаються безперервними і уможливлюють подан­ня значень довільних числових параметрів.

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

Цю саму задачу можна подати і в іншій генетичній інтерпре­тації, якщо ввести умову, що кожний із інвестиційних проектів


бо цілком приймається, або відхиляється. Тоді кожний варіант плану (хромосому) можна подати у вигляді послідовності з N нулів та одиниць, причому, якщо на /-му місці в хромосомі сто­їть одиниця, то це означає, що і-й проект (і = 1, 2,..., N) вклю­чений у план, а якщо нуль — не включений. Популяція склада­ється із кількох варіантів планів. Визначення допустимості пла­нів і оцінювання їх за вибраними критеріями проводиться ана­логічно.

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

0) ініціалізуйте популяцію;

1) виберіть батьків для репродукції і оператори мутації і кро-совера;

2) виконайте операції, щоб згенерувати проміжну популяцію індивідуумів і оцінити їхні придатності;

3) виберіть членів популяції для отримання нової генерації (версії);

4) повторюйте кроки 1—3, поки не буде досягнуте деяке пра­вило зупинки.

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

Критерієм зупинки процесу здійснення генетичного алгорит­му може бути одна з трьох подій:

• сформовано задану користувачем кількість поколінь;

• популяція досягла заданої користувачем якості (наприклад, значення якості всіх особин перевищило задану порогову вели­чину);

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

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


9.5.3. Доступне програмне забезпечення генетичних алгоритмів

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


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

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

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

Пакет Evolver 4.0 компанії Palisade Corp. Пакет Evolver яв­ляє собою доповнення до програми MS Excel версій 5.0 і 7.0. При цьому Excel використовується як засіб опису початкових даних алгоритму і розрахунків у процесі його виконання. У процесі установки Evolver додає в Excel додаткову панель інструментів, яка забезпечує доступ до пакета. Якщо Evolver не запущений для виконання, то панель інструментів не відображається. У разі за­пуску Evolver додаток Excel запускається автоматично.

Пакет GeneHunter 1.0 компанії Ward System Group. Пакет GeneHunter багато чим схожий з пакетом Evolver. Він також є над­будовою над MS Excel версій 5.0 і 7.0 і запускається з меню «Сер­віс». Цей пакет русифікований і має низку додаткових настройок для генетичних алгоритмів: включення стратегій елітизму й різно­манітності. Поля вікна GeneHunter практично такі самі як і в Evolver. Однак його вікно має низку відмінностей. Для установки параметрів алгоритму служить кнопка «Параметри...». Параметри генетичного алгоритму не зберігаються автоматично з файлом Excel. Для збереження параметрів служить кнопка «Модель», після натиснення на яку з'являється відповідне діалогове вікно.


Пакет Genetic Training Option (GTO) компанії California Scientific Software. Пакет GTO є додатковою утилітою, що поста­вляється для нейропакета BrainMaker виробництва компанії «California Scientific Software». Він застосовується як для побу­дови нейронних мереж, так і для поліпшення створеної за допо­могою BrainMaker мережі. Але в обох випадках окремо від BrainMaker використовуватися не може.

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

9.6. Програмні агенти в СППР

9.6.1. Призначення і основні характеристики програмних агентів

Програмні агенти (Software Agents) — це автономні програми, котрі автоматично виконують конкретні завдання з моніторингу комп'ютерних систем і збору інформації в мережах, діють від імені користувача для забезпечення бажаних результа­тів, так само як людина-агент діє в інтересах замовника, щоб розширити його можливості (звідси й запозичений термін «агент»). Термін «програмні агенти» має низку синонімів: «інте­лектуальні (розумні) агенти» (intelligent agents), «інтелектуальні інтерфейси» (intelligent interfases), «ноуботи» (knowbots), «персо­нальні агенти» (personal agents), «програмні роботи» (software robots), «аглети» (aglets) — так називаються програмні агенти в продукті IBM Aglets Workbench; часто вживаються скорочені тер­міни: «агент», «робот» тощо. Програмні агенти все більше вбудовуються у програмне забезпечення, щоб зробити дії корис­тувачів ефективнішими та результативнішими.

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


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

заключати комерційні угоди), у процесах постачання.

Існує багато типів програмних агентів (стаціонарні й мобільні,

послужливі та ін.), котрі розроблені з застосуванням результатів

досліджень у нейронних мережах, нечіткої логіки, інтерпретації

текстів природною мовою, колаборативної фільтрації. Найвідо-

мішими представниками цього виду програмних продуктів є

«Agetft Ware 1.0» фірми «Autonomy».

З метою глибшого розуміння суті поняття «програмний агент» потрібно описати, яким він має бути?

Функції. Агент виконує низку завдань за дорученнями ко­ристувача (або іншого агента).

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

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

Моніторинг. Щоб мати можливість виконувати свої за­вдання в автономному режимі, агент має бути здатним контро­лювати середовище, в якому він діє.

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

• «Розумність». Агент має бути здатним інтерпретувати по-Ди> Що контролюються ним, щоб ухвалювати належні рішення.

• Безперервність роботи. Багато агентів мають виконувати свої завдання постійно.

«Індивідуальність». Деякі агенти можуть мати добре ви­ражений індивідуальний «характер» і «емоційні стани».

• Адаптивність. Деякі агенти, ґрунтуючись на нагромадже­ному досвіді, автоматично пристосовуються до звичок і переваг своїх користувачів і можуть автоматично пристосовуватися до змін у навколишньому середовищі.

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


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

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

Агент може керуватися часом, подією або алгоритмом чи де­якою їх комбінацією. Наприклад, агент міг би бути запрограмова­ним так, щоб попередити користувача про небезпеку, коли ціна ак­цій компанії «Coca-Cola» перевищить $60 за акцію (приклад керування за подією). Або в кінці дня (приклад керування за часом), агент міг би перевіряти, чи не нижче зазначеного рівень запасів, щоб здійснювати нову закупівлю (приклад керування за алгорит­мом). Ці приклади показують, що агенти можуть залишати програ­ми і/або клієнтські місця, щоб виконувати свої завдання, і можуть навіть взаємодіяти з іншими агентами для пошуку інформації зовні.

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

9.6.2. Програмні агенти у СППР та ВІС

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


дасть змогу користувачеві негайно на них зреагувати. Наприклад, програмний агент DSS Agent компанії «MicroStrategy», відкритий екран якого показаний на рис. 9.15 (на рисунку з метою глибшого розуміння деякі позиції дано українською мовою), знаходить ін­формацію в сховищі даних, підсумовує та аналізує її для ОПР. Активізована функція ФІЛЬТРИ: результати пошуку подані у ви­гляді стовпчикової діаграми, таблиці й карти. Система попере­джує користувача, що в Новій Англії фактичний обсяг продажу на 9 % нижчий від запланованого, хоча по окремо виділеному продукту LY ситуація краща.

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


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

Програмні агенти все більше включаються в програмне забез­печення додатків. Ключ до успіху для продавців — переконатися, що користувачі легко можуть описати правила для агентів, яких ті мають дотримуватися. Широкі можливості програмних агентів закладені в їхній здатності брати участь у керуванні корпоратив­ними знаннями. Виконавчі менеджери та інші працівники, які використовують знання, не страждають від браку інформації; скоріше, вони «плавають» у ній. їх проблема полягає у впорядку­ванні існуючої інформації та виявленні тієї, яка є для них найваж­ливішою. СППР, зокрема виконавчі інформаційні системи (ВІС), можуть значно допомогти їм у цьому завдяки процесам збирання, оброблення, структурування і подання інформації.

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

Компанія «Comshare», є провідним продавцем продуктів СППР/ВІС, і є першою компанією, яка інтегрувала програмних аген­тів у свої продукти. «Виявляти і попереджувати» («Detect and Alert») — так коротко ця компанія називає можливості, що забезпе­чуються програмними агентами. Як зазначено у цій назві, агенти виявляють спеціальні умови і потім попереджують користувачів.

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


Розділ 10

СИСТЕМИ ПІДТРИМКИ ПРИЙНЯТТЯ РІШЕНЬ НА ОСНОВІ СХОВИЩ ДАНИХ ТА OLAP-СИСТЕМ

10.1. Розвиток та застосування СППР на основі сховищ даних та OLAP-систем

10.1.1. Передумови та сутність СППР на основі сховищ даних та OLAP-систем

Системи підтримки прийняття рішень на основі схо­вищ даних та OLAP-систем, як і самі сховища даних (Data Warehouses) та системи аналітичного онлайнового оброблення даних, належать до типу орієнтованих на дані СППР. У загаль­ному вигляді орієнтовану на дані систему підтримки прийняття рішень (ОДСППР) можна визначити як інтерактивну комп'ю­теризовану систему, що допомагає ОПР використовувати дуже велику базу даних із внутрішніх даних компанії і деякі зовнішні дані з навколишнього середовища системи з метою прийняття обґрунтованих рішень. Наприклад, система може надавати дані щодо збуту продукції як самої компанії, так і її конкурентів. Де­які дані можуть бути деталізованими даними транзакцій, а деякі — агрегованими. У більшості реалізованих нині ОДСППР користу­вачі можуть виконувати незаплановані або в режимі на даний ви­падок (ad hoc) аналізи даних і формулювати запити. За допомо­гою таких систем менеджери обробляють дані для ідентифікації фактів і отримання висновків у вигляді графічних зображень (ді­аграм, графіків, трендів).

Орієнтовані на дані СППР, зокрема системи аналітичного он­лайнового оброблення, інколи називають бізнес-інформаційними (Business intelligence). Цей популярний, широко відомий термін запропонував 1989 року аналітик Говард Дрезнер (Howard Dresner) з групи «Gartner», що консультує фірми «Fortune 1000» з питань інформаційних технологій, для описання низки понять і методів, призначених для вдосконалення бізнесових рішень за допомогою використання основаних на фактах систем підтримки


прийняття рішень (власне замість терміна «програмне забезпе­чення» («decision support») був запропонований термін «Business intelligence»). Зокрема, 1994 року Говард Дрезнер писав: «До 1996 року використання розв'язків Business intelligence різко пе­реміститься від спеціалізованих аналітиків до всіх менеджерів і професіоналів як найкращий шлях розуміння бізнесу... Замість вузького кола аналітиків, які витрачають 100 відсотків свого часу на аналізування даних, усі менеджери і професіонали витра­тять 10 відсотків свого часу для цього, використовуючи про­грамне забезпечення Business intelligence». Хоча ні 1996, ні на­віть 2001 року повною мірою цей прогноз не справдився, проте багато менеджерів освоїли і продовжують вивчати цей тип про­грамних продуктів. Така обставина пояснюється тим, що програм­не забезпечення орієнтованих на дані СППР надає змогу користу­вачам досягати як загальної для всієї корпорації мети, тобто підвищення рівня конкурентоспроможності за рахунок своєчас­ного отримання важливої для успіху інформації, недосяжної ра­ніше іншими шляхами, так і поліпшувати особисту управлінську продуктивність, тобто різко скорочувати завдяки таким СППР час на отримання таких самих результатів.

Термін «Business intelligence» використовується як синонім «OLAP» в інструкціях щодо використання і в описаннях виконав­чих інформаційних систем. «Business intelligence» є терміном з мар­кетингу. Він уживається також для позначення орієнтованих на дані СППР. Цей тип СППР допомагає користувачам реалізувати практичне оброблення вниз (drill down) для детальнішого огляду інформації, оброблення вгору (drill up), щоб оглянути ширшу, ін­тегровану інформацію, «розрізати базу даних тонкими скибочками й нарізувати кубиками» («slice and dice»), щоб змінити вимірність, яку вони переглядають. Результати «drilling» і «slicing та dicing» подаються в таблицях і схемах. Чому саме такі та подібні їм мож­ливості стали конче потрібними ОПР та менеджерам?

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


у типовій організації доступні оперативні бази даних розроб­лялися для здійснення регулярних процедур (транзакцій). Такі потреби можуть включати, наприклад, підготовку нового або по­новлення попереднього замовлення. Регулярні процедури рідко пов'язані з запитами, тому, зазвичай, оперативні бази даних міс­тять тільки поточну інформацію. Вони не можуть задовольнити інформаційні потреби користувачів СППР, тому що їм не виста­чає архівних даних та їх стабільності, що стає вирішальним у разі необхідного аналізування. Наприклад, ОПР може звернутися до системи із запитанням: «Як проведені компанією останні заходи щодо розповсюдження товару впливали на його продаж за остан­ній квартал у порівнянні з таким самим просуванням товару за останній рік?» Швидкої та вичерпної відповіді на подібні запи­тання традиційні СППР забезпечити не могли.

Крім того, часто дані знаходяться в різних операційних систе­мах, які мають суттєві відмінності в організації даних. Фактично поєднання даних із систем DB2, Oracle та COBOL з даними бази даних Sybase чи Informix може бути нелегким та ускладнюючим аналіз цих даних. Оперативні бази даних за структурою та розмі­ром є недостатніми для загального аналізу. Як результат із цього випливає, що коли потреби оперативних баз даних повністю від­різняються від потреб СППР, то вони не є оптимальними для ви­користання в СППР, що призводить до неефективного виконання запитів до СППР.

В історичному контексті це означає, що СППР не були такими корисними, як могли б бути, оскільки необхідні дані не були вчасно доступними. Для компенсації цього недоліку часто адаптовували окремі «заморожені» фрагменти виходів інформаційної системи для наступного аналізу. Ці фрагменти забезпечують лише інформацією про відібрані об'єкти в окремі моменти часу. Хоча такі фрагменти ефективніші, ніж безпосереднє використання оперативної бази да­них, але їм недостає широкого спектру інформації для повного її аналізу або гнучких специфічних запитів. Інакше кажучи, урахову­ючи всі переваги такого розв'язання проблеми, воно загалом не створює сприятливого середовища для використання СППР.

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

У загальному випадку дані ОДСППР є операційними даними Щодо фіксації щоденних бізнесових операцій компанії, тобто дані


про транзакції (ведення справ, угод) і бізнесові випадки (явища). Вони формуються, щоб забезпечити тактичні й стратегічні бізне­сові дії на основі операційних і доречних зовнішніх даних. Від­мінність у цілях застосування операційних баз даних і баз даних СППР полягає в тому, що формати і структури цих видів даних відрізняються принаймні за шістьма основними показниками: структурою даних, діапазоном часу, підсумовуванням даних, мін­ливістю даних, вимірністю даних і метаданими. Короткий ви­клад цих відмінностей наведено в табл. 10.1. Зупинимося на них докладніше.

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

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


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

Хоч такий структурований підхід до створення багатьох ма­лих таблиць розглядається як ефективний для бази даних транзак­цій, однак він не призначений для організації даних в ОДСППР. За такого підходу запити будуть виконуватися повільно, оскільки потрібно з'єднати багато таблиць, щоб завершити опрацювання запиту, на що витрачається багато часу і використовуються об-ширні ресурси системи.

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

Орієнтовані на дані СППР можуть містити надлишкові дані, якщо це сприяє прискоренню оброблення запитів. Компонентами даних ОДСППР на основі сховища даних є: метадані, поточні де­талізовані дані, давніші докладні дані, підсумовані дані тощо. За­гальна нормалізація не ефективна для даних ОДСППР і навіть деяка часткова нормалізація може реально зменшити ефектив­ність оброблення запитів у орієнтованих на дані СППР.

Діапазон часу. Операційні дані є поточними даними, оскільки вони відображають теперішній стан бізнесових транзакцій. Дані ОДСППР — це миттєві знімки станів у задані моменти часу, тоб­то вони являють собою упорядковану за часом сукупність або се­рію операційних даних. Фактично в ОДСППР зберігаються чис­ленні «часові зрізи» операційних даних.

Підсумовування. Дані ОДСППР можуть підсумовуватися за Допомогою програмного забезпечення аналітичного оброблення. Можна відправити деякі дані з бази даних ОДСППР у мультиви-мірний куб даних для прискореного аналізу. Деякі бази даних


ОДСППР утворюються виключно з підсумків або (як їх часто на­зивають) похідних чи вторинних даних. Наприклад, скоріше, ніж зберігати кожну із 10 000 транзакцій зі збуту в окремих елемен­тах пам'яті на даний період, база даних ОДСППР може містити загальну кількість проданих одиниць і обсяг збуту. Дані ОДСППР можна було б подати у такий спосіб, щоб спостерігати обсяги збуту в грошовому еквіваленті для кожного магазину або збут у різних одиницях виміру для кожного типу продукту. Метою під­сумовування є визначення і оцінювання трендів продажу або по­рівняння збутів різних типів продукції. Користувач може захоті­ти, наприклад, дізнатися: який тренд продукту А? чи доцільно припинити продаж деякого продукту? чи були ефективними ви­трати на рекламу для створення сприятливих змін у збуті? На всі ці запитання можна відповідати, використовуючи інтегровані да­ні. Операційні дані не підсумовуються в базах даних.

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

Вимірність даних. Багатовимірність даних є, можливо, най­характернішою особливістю даних ОДСППР. З погляду мене­джера чи аналітика дані ОДСППР завжди пов'язані між собою багатьма різними способами. Наприклад, коли аналізується збут продукту окремому споживачеві протягом певного проміжку ча­су, то можна зробити такий запит: «Скільки виробів типу X було продано споживачеві Y протягом останніх шести місяців?» Дані ОДСППР можуть досліджуватися в різних аспектах, наприклад, за видами продуктів, за регіонами і за часом. Здатність аналізу­вати, виділяти і подавати дані як інформацію в зручному вигляді є однією із головних позитивних характеристик ОДСППР. На противагу ним, операційні дані мають тільки одну вимірність.

Метадані. В орієнтованій на дані СППР важливо розробити і підтримувати метадані про дані СППР. Словники баз даних мо­жуть бути і для систем оброблення транзакцій, але через те, що дані ОДСППР можуть надходити від багатьох джерел, створення словників і метаданих є особливо важливим для СППР. Метадані — це «інформація про дані» в базі даних СППР. До ресурсів мета­даних належать каталоги і словники бази даних, а також імена змінних, довжини полів, допустимі значенння змінних і описи елементів даних. Семантичні дані часто зберігаються в словнику


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

Орієнтовані на дані СППР часто відносять до типу аналітич­них систем (АС), тобто інформаційних систем, метою яких є ли­ше аналіз даних. Інколи терміни «АС» і «ОДСППР» уживають як синоніми. Зауважимо, що стосовно інформаційних процесів ана­літичні системи є вторинними по відношенню до операційних транзакційних систем OLTP (On-line transaction processing), оскі­льки всі дані, що використовуються для аналізу, необхідно спо­чатку нагромадити і, за можливості, частково обробити, чим і за­ймаються різні транзакційні системи, а лише потім їх про­аналізувати. Основні відмінності систем оброблення транзакцій OLTP (онлайнових систем оброблення даних) і аналітичних сис­тем (орієнтованих на дані СППР) наведені в табл. 10.2.

Таблиця 10.2


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.028 сек.)