МІНІСТЕРСТВО ОСВІТИ УНІВЕРСИТЕТ СИСТЕМ p>
УПРАВЛІННЯ ТА РАДІОЕЛЕКТРОНІКИ (ТУСУР) p>
Кафедра автоматизації обробки інформації (Аої) p>
Творча робота p>
Програмна реалізація штучної нейронної мережі для поділу хроматографічних піків. p>
ЗВІТ p>
| Викладач | Студент гр.425-2 |
|________ Н.В. Петров | К.В. Водкін |
| "" Червня 1999 | "" червня 1999 | p>
1999 p>
1 Необхідність p>
Однією з актуальних проблем у хроматографії є виділення піківз їх суперпозиції для більш точного розрахунку площі кожного з них. p>
Існує безліч статистичних методів вирішення цього завдання
(метод найменших квадратів, метод головних компонент і т. д.). Але вданий час найбільш цікавий підхід з використанням в цій областіштучних нейронних мереж (ІНС). p>
Штучні нейронні мережі перестають бути екзотикою. В останніроки розробки в цій галузі становлять великий інтерес не тільки длявченого світу, але і для практичних людей. Областей їх застосування безліч.
Це автоматизація процесів розпізнавання образів, адаптивне управління,апроксимація функціоналів, прогнозування, створення експертних систем,організація асоціативної пам'яті та багато інших додатків. p>
При вирішенні задачі виділення хроматографічних піків з їхсуперпозиції штучні нейронні мережі дають більш точні результати, ніжметоди статистики. Виділення здійснюється шляхом прогнозування фронтупіку, прихованого через суперпозиції з сусіднім, на підставі відкритої частинипіку. p>
Метою даної роботи є програмна реалізація штучноїнейромереж, яка забезпечить розділення піків на хроматограм.
2 Теоретичне обгрунтування p>
Оскільки штучні нейронні мережі дозволяють апроксимуватифункції, прогнозувати - їх можна чудово використовувати для вирішенняцієї проблеми: поділ хроматографічних піків (див. додаток А). p>
Хроматографічні піки можуть бути як симетричними так і несиметричними і є спотвореними гауссових функціоналом. І якщо пікописується деякою функцією від часу f (t), то на хроматограф надходитьсуперпозиція піків, тому функція від часу відображається на його екраніє як сума функцій всіх піків: p>
p>
Тому образи піків, які присутні на хроматограм, можутьбути сильно спотворені, через накладень, а в деяких випадках прихованііншими. p>
Відкриті частини не сильно спотворених піків дозволяють спрогнозуватиприховану, і порахувати площу під піком. p>
Метод прогнозування полягає в наступному: p>
1.) На входи нейронної мережі надходять звіти, причому бажанонормовані: p>
p>
-середнє значення вибірки тимчасових значень прикладів-входів, p>
-их виправлена дисперсія. p>
2.) На виходи нейронної мережі подаються відповідні значення функціїописує пік. Їх необхідно перетворити, щоб вони не перевищували 1,для чого потрібно ділити на максимум вибірки. p>
3.) Після навчання мережі до не обходимо рівня помилки необхідноподати на вхід значення часу, при якому потрібно дізнатися значенняфункції. Отримане значення при прямому функціонування і єпрогнозована крапка. Вона ж буде додана в навчальну вибірку. І зновупровести вище описані дії. Прогнозування проводиться до тих пір,поки це необхідно. p>
Доцільно паралельно проводити прогнозування суміжного піку.
Прогнозована точка суміжного фронту сусіднього піку може бути отриманатаким чином: p>
1.) Подати паралельної мережі приклади сусіднього піку. p>
2.) Подати на додатковий вхід різниця між значенням суперпозиції в цій точці і отриманим значенням в цій точці у сусіднього піку . p>
3 Схема алгоритму розділення піків p>
4 Методика навчання нейросети p>
Метод навчання нейросети на підставі алгоритму зворотногорозповсюдження являє собою - поширення сигналів помилки відвиходів нейросети до її входів, в напрямку, зворотному прямомупоширення сигналів у звичайному режимі роботи. p>
Нижче представлений методика навчання НС за допомогою процедури зворотногорозповсюдження будується так: p>
1. Подати на входи мережі один з можливих образів і в режимі звичайногофункціонування НС, коли сигнали поширюються від входів до виходів,розрахувати значення останніх. Нижче представлена формула розрахунку зваженоїсуми ваг: p>
(1) де M - число нейронів у шарі n-1 з урахуванням нейрона з постійнимвихідним станом 1, що задає зміщення; yi (n-1) = xij (n) - i-ий вхіднейрона j шару n. yj (n) = f (sj (n)), де - сігмоід (2) yq (0) = Iq, де Iq - q-а компонента вектора вхідного образу. p>
2. Розрахувати ((N) для вихідного шару за формулою: p>
(3) p>
Розрахувати зміни ваг (w (N) шару N за формулою: p>
(4 ) p>
3. Розрахувати для всіх інших верств, n = N-1, ... 1 p>
1) ((n) за формулою: p>
( 5) p>
2) (w (n) за формулою (15) p>
4. Скорегувати всі ваги в НС p>
(6) p> < p> 5. Якщо помилка мережі істотна, перейти на крок 1. Інакшекінець. p>
5 Схема алгоритму навчання p>
6 Висновок p>
У ході цієї роботи була розроблена і реалізована програмноштучна нейронна мережу. Програма написана в середовищі Borland Delphi 3.
Вона являє собою гнучку систему, в якій задається кількістьприхованих шарів і кількість нейронів у кожному з них. Кількість входів івиходів однаково і дорівнює одиниці. Над програмою був проведений тривалийексперимент, який тривав близько 10-ї години. За цей час нейроннамережа, реалізована в ній, навчалася по передньому фронту піку (див.додаток Г). Нейронна мережа складалася з 4-х шарів по 50 нейронів, івихідного шару з одним нейроном. Мережа навчилася до рівня помилки - 0,0016,за число ітерацій - 95649. p>
Список використаних джерел p>
1. С. Короткий. Нейронні мережі: алгоритм зворотного поширення.
М.: Світ-1997. P>
2. Ф. Блум, А. Лейзерсон, Л. Хофстедтер, Мозок, розум і поведінку, М.,
Світ, 1988. P>
3. Постановка та можливі шляхи рішення задачі навчання нейроннихмереж. Сервер: Neural Bench ™. P>
4. А.В. Буцев Локальна апроксимація на штучних нейроннихмережах. М.: АіТ.-1997-№ 4-стор.127-136. P>
5. К.Дж. Аніл, Н. Мао. Введення в штучні нейронні сеті.М.:
Об. сист. -1998 - № 9-стор.4-15. P>
6. А. Балахонцев. Азбука нейронних сісти: методи обученія.М.:
Радіолюбітель.-1998. № 9-стор.2-9. P>
Додаток А p>
Приклад суперпозиції піків та їх істінностних фронтів p>
Додаток Б p>
Схема мережі. p>
Додаток Г p>
Результати навчання p>
Рис. 1. Результат роботи програми p>
Рис. 2. Графік залежності помилки навчання від номера ітерації p>
----------------------- p>
S p> < p> S p>
S p>
S p>
S p>
S p>
Слой1 p>
Слой2 p>
Слой3 p>
S p>
S p>
S p>
S
Слой4 p>
Подати на входи і виходи мережі приклади (нормований час на вхід і відповідні значення піка на вихід). P>
Провести навчання мережі. P>
Помилка істотна p>
Так p>
Ні p>
Отримати у навченої мережі значення прогнозу шуканої точки. p>
Подати на входи і виходи паралельної мережі приклади сусіднього піку, суміжний фронт якого потрібно спрогнозувати. p>
Подати на додатковий вхід різниця між значенням суперпозиції в цій точці і отриманим значенням в цій точці у першому піку. p>
Провести навчання мережі. p>
Помилка істотна p>
Так p>
Ні p>
Отримати у паралельної мережі прогнозу шуканої точки суміжного фронту. p>
p>
Ініціалізація мережі. Присвоїти невеликі випадкові значення ваг. P>
Подати на входи мережі один з можливих образів p>
Розрахувати значення помилки p>
p>
Розрахувати зважені суми для кожного нейрона і виходи (1,2) p>
Розрахувати зміни ваг (4) p>
Скорегувати всі ваги в НС p>
p>
Чи є ще приклади p>
Так p>
Так p>
Ні p>
Ні p>
Помилка істотна p>
Мережа навчена p>
p>
? p>