Нейрондық желіні ұйымдастыру
Google фотодан адамды тапқанда немесе қолжазба мәтінді танитын қосымша жұмыс істегенде — артында нейрондық желі тұр. Бірақ бұл «желі» кабельден емес, адамның миынан үлгі алған. Бүгін адамның миы қалай жұмыс істейтінін компьютерде қалай қайталайтынын түсінеміз.
Ойлан: сен бір затты көргенде, көзің суретті қалай миыңа жеткізеді? Мида миллиардтаған кішкентай жасуша бар, олар бір-біріне электрлік импульс арқылы сигнал беріп отырады. Дәл осы ұжымдық белсенділіктен сенің сезімдерің мен ойларың туындайды.
Нейрон — мидың негізгі құрылымдық-функционалдық бірлігі; миға берілетін ақпаратты өңдеу функциясымен айналысатын талшық, ақпараттың қабылдануы мен бойға таралуына жауапты.
Нейронның құрылысын бөлшектеп қарайық: ол жасушалық денеден, ұзын және қысқа талшықтардан тұрады. Ұзын талшық — аксон (сигналды әрі қарай жібереді), тарамдалған қысқа талшықтар — дендриттер (сигналды қабылдайды). Дендриттер басқа нейрондарға барып, синапс деп аталатын қосылыс нүктелерінде сигнал алады. Нейрон денесіндегі жиынтық қозу белгілі бір шектен асса ғана, ол аксон арқылы келесі нейронға сигнал жібереді.
Енді ғалымдар осы биологиялық үлгіні компьютерде қайталауға тырысты. Нәтижесі — жасанды нейрондық желі.
Жасанды нейрондық желі (ЖНЖ) — биологиялық нейрондық желілердің ұйымдастыру және жұмыс істеу принципі негізінде құрылған, күрделі деректерді талдайтын, адам миын имитациялайтын математикалық немесе компьютерлік модель.
Жасанды нейронның кірісіне бірнеше сигнал келеді (әрқайсысы басқа нейронның шығысы). Әр кіріс сәйкес синаптикалық салмаққа көбейтіледі, барлық көбейтінді қосылады (сумматор, Σ) — нәтиже өлшенген сома (net) деп аталады. Ол белсендіру функциясы (φ) арқылы түрленіп, шығыс сигналын (out) береді:
net = Σ(xᵢ · wᵢ) out = φ(net)
Неге салмақ (w) керек? Себебі әр кірістің «маңыздылығы» әртүрлі болуы мүмкін. Үлкен салмағы бар кірістегі ақпарат нәтижеге көбірек әсер етеді — дәл адамдағыдай: кейбір синапс сигналды күшейтеді, кейбірі әлсіретеді.
Бұл модельді 1943 жылы американдық ғалымдар Уоррен Мак-Каллок пен Уолтер Питтс ұсынды. Желі бірнеше қабаттан тұрады: кіріс қабаты (сигналды тек қабылдайды, есептеу жасамайды), жасырын қабат(тар) (негізгі есептеу осында), шығыс қабаты (нәтиже шығады).
Барлық нейрондық желі бірдей емес. Оларды екі негізгі белгі бойынша жіктейміз:
| Белгі | Түрлері |
|---|---|
| Қабат саны | Бірқабатты (персептрон) — жасырын қабат жоқ, кіріс бірден шығысқа беріледі / Көпқабатты — кіріс пен шығыс арасында бір/бірнеше жасырын қабат бар |
| Байланыс бағыты | Тікелей тасымалдайтын (feedforward) — сигнал тек кірістен шығысқа қарай жүреді / Кері байланысты (recurrent) — сигнал кері де қозғала алады, қысқа мерзімді жады қызметі бар |
Көпқабатты желінің жасырын қабаттарының жұмысын үлкен зауытпен салыстыруға болады: өнім (шығыс) кезең бойынша жиналады, әрбір «станоктан» кейін аралық нәтиже алынады.
Тікелей тасымалдайтын желілердің артықшылығы — жүзеге асыру оңай, мәліметтер қабат бойынша өткеннен кейін міндетті түрде жауап алады. Ал кемшілігі — желі өлшемінің азаюында (нейрондар көп мәлімет өңдеуге қатысады).
Кері байланысты желілер болса қалпына келтіру мен толықтыру функциясын атқара алады — бұл адамның ассоциативті жадына ұқсас (бір музыкалық такт бүкіл естелікті еске түсіретіні секілді). Ал қарапайым компьютер жады тек адрестік — тек нақты адрес бойынша ғана ақпарат алады.
Берілді: I₁, I₂ — кіріс нейрондар, H₁, H₂ — жасырын нейрондар, O₁ — шығыс нейрон. I₁=1, I₂=0; салмақтар w₁=0,45; w₂=0,78; w₃=−0,12; w₄=0,13; w₅=1,5; w₆=−2,3. Белсендіру функциясы — логистикалық сигмоид φ(net) = 1/(1+e^(−net)).
Табу керек: желінің шығыс сигналын (out₁) және қатесін есепте (идеал жауап 1 болса).
net1 = I1·w1 + I2·w3 = 1·0,45 + 0·(−0,12) = 0,45 out1 = φ(net1) = 1/(1+e^(−0,45)) = 0,61 net2 = I1·w2 + I2·w4 = 1·0,78 + 0·0,13 = 0,78 out2 = φ(net2) = 1/(1+e^(−0,78)) = 0,69 netO1 = H1·w5 + H2·w6 = 0,61·1,5 + 0,78·(−2,3) = −0,66 outO1 = φ(netO1) = 1/(1+e^(0,66)) = 0,34 Delta = (1 − 0,34)² / 1 = 0,43
Неге қате 43%-ды құрады? Желі әлі оқытылмаған — салмақтар кездейсоқ қойылған. Қатені азайту үшін салмақтарды бірнеше рет реттеу (оқыту) қажет.
Жауабы: желінің шығысы — 0,34; қате — 43%.
- Нейрон — мидың негізгі бірлігі; аксон сигнал шығарады, дендрит қабылдайды, синапс байланыстырады.
- Жасанды нейрон: net = Σ(xᵢ·wᵢ), out = φ(net) — салмақтар мен белсендіру функциясы арқылы.
- Желілер қабат саны (бір/көпқабатты) және байланыс бағыты (feedforward/recurrent) бойынша жіктеледі.
- 1943 жылы Мак-Каллок пен Питтс жасанды нейронның математикалық моделін ұсынды.