Конкурентне навчання

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

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

Моделі та алгоритми, засновані на принципі конкурентного навчання, включають векторне квантування[en] та самоорганізаційні карти Кохонена.

Засади

[ред. | ред. код]

Правило конкурентного навчання засноване на трьох елементах:[2][3]

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

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

Той факт, що конкурентоспроможні мережі перекодують безліч корельованих входів до одного з декількох вихідних нейронів, по суті усуває надмірність у поданні, що є важливою частиною обробки в біологічних сенсорних системах.[4][5]

Архітектура та реалізація

[ред. | ред. код]
Архітектура конкурентної нейронної мережі

Конкурентне навчання зазвичай реалізується з нейронними мережами, які містять прихований шар, який широко відомий як «конкурентний шар»[6] . Кожен конкурентний нейрон описується вектором вагів і обчислює коефіцієнт подібності між вхідними даними та ваговим вектором .

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

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

Приклад алгоритму

[ред. | ред. код]

Наведемо простий алгоритм конкурентного навчання, щоб знайти три кластера в межах деяких вхідних даних.

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

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

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

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

Див. також

[ред. | ред. код]

Примітки

[ред. | ред. код]
  1. Rumelhart, David; David Zipser; James L. McClelland та ін. (1986). Parallel Distributed Processing, Vol. 1. MIT Press. с. 151—193.
  2. Rumelhart, David E., and David Zipser. «Feature discovery by competitive learning [Архівовано 12 вересня 2017 у Wayback Machine.].» Cognitive science 9.1 (1985): 75-112.
  3. Haykin, Simon, «Neural Network. A comprehensive foundation.» Neural Networks 2.2004 (2004).
  4. Barlow, Horace B. «Unsupervised learning.» Neural computation 1.3 (1989): 295—311.
  5. Edmund T.. Rolls, and Gustavo Deco. Computational neuroscience of vision. Oxford: Oxford university press, 2002.
  6. Salatas, John (24 серпня 2011). Implementation of Competitive Learning Networks for WEKA. ICT Research Blog. Архів оригіналу за 12 листопада 2012. Процитовано 28 січня 2012.

Посилання та ПЗ

[ред. | ред. код]