Факторний аналіз для чайників

    Думаю багато хто з нас, хоча б один раз цікавилися штучним інтелектом і нейронними мережами. У теорії нейронних мереж далеко не останнє місце займає факторний аналіз . Він покликаний виділити так звані приховані чинники. У цього аналізу є багато методів. Окремо стоїть метод головних компонент , відмітною особливістю якого є повне математичне обгрунтування. Зізнатися чесно, коли я почав читати статті за наведеними вище посиланнями — стало не по собі від того, що я нічого не розумів. Мій інтерес вщух, але, як це зазвичай буває, розуміння прийшло саме по собі, неждано-негадано.
 
Отже, давайте розглянемо арабські цифри від 0 до 9. В даному випадку формату 5х7, які бралися з проекту під LCD від Nokia 3310.
 
 
Чорним пикселям відповідає 1, білим — 0. Таким чином, кожну цифру ми можемо представити у вигляді матриці 5х7. Наприклад матриця нижче:
 
 
відповідає картинці:
 
 
Давайте підсумуємо картинки для всіх цифр, а результуючу нормуємо. Це означає отримати матрицю 5х7, осередки яких містять суму тих же осередків для різних цифр ділених на їх кількість. У результаті ми отримаємо картинку:
 
 
Матриця для неї:
 
 
В очі відразу впадають найтемніші ділянки. Їх три, і відповідають вони значенням 0.9 . Це те чим вони схожі. Те що спільне для всіх цифр. Ймовірність зустріти чорний піксель в цих місцях висока. Давайте розглянемо найсвітліші ділянки. Їх також три, і відповідають вони значенням 0.1 . Але знову-таки це те, чим всі цифри схожі, що спільне для них усіх. Ймовірність зустріти білий піксель в цих місцях висока. Чим же вони відрізняються? А максимум відмінності між ними в місцях зі значенням 0.5 . Колір пікселя в цих місцях равновероятен. Половина цифр в цих місцях будуть чорними, половина — білими. Давайте проаналізуємо ці місця, благо у нас їх всього 6.
 
 
 Положення пікселя виразно стовпцем і рядком. Відлік починається з 1, напрямок для рядка зверху-вниз, для стовпця зліва-направо. В інших осередках вбито значення пікселя для кожної цифри в заданому положенні. Тепер давайте відберемо мінімальна кількість положень, при яких ми все ще зможемо розрізняти цифри. Іншими словами, для яких значення у стовпцях будуть різні. Так як цифр у нас 10, а кодуємо ми їх двоично, математично необхідно як мінімум 4 комбінації 0 і 1 (log (10) / log (2) = 3.3). Давайте спробуємо з 6 відібрати 4 які задовольняли б нашому умові:
 
 
Як бачимо значення у стовпцях 0 і 5 збігаються. Розглянемо іншу комбінацію:
 
 
Тут також є збіги між 3 і 5 стовпчиками. Розглянемо наступну:
 
 
А ось тут ніяких колізій. Бінго! А тепер я розповім вам для чого все це затівалося:
 
 
Припустимо з кожного пікселя, яких у нас 5х7 = 35, сигнал входить у якийсь чорний ящик, а на виході — сигнал, який відповідає вхідний цифрі. А що відбувається в чорному ящику? А в чорному ящику з усіх 35 сигналів вибираються ті 4, які подаються на вхід дешифратора і дозволяють однозначно визначити цифру на вході. Тепер зрозуміло для чого ми шукали комбінації без збігів. Адже якби в чорному ящику вибиралися 4 сигналу першої комбінації, то цифри 0 і 5 для такої системи були б попросту не помітні. Ми мінімізували задачу, адже замість 35 сигналів досить обробити лише 4. Ті 4 пікселя і є мінімальним набором прихованих чинників, які характеризують даний масив цифр. Дуже цікаву особливість має цей набір. Якщо придивитися до значень в стовпцях, можна помітити що цифра 8 протилежність цифрі 4, 7 — 5, 9 — 3, 6 — 2, а 0 — 1. Уважний читач запитає а причому тут нейронні мережі? А особливістю нейронних мереж є те що вона сама здатна виділити ці фактори, без втручання розумної людини. Ти просто періодично показуєш їй цифри, а вона знаходить ті 4 прихованих сигналу і комутує його з одним з 10 своїх виходів. Як можна застосувати ті схожі сигнали, які ми обговорювали спочатку? А вони можуть служити міткою набору цифр. Наприклад римські цифри будуть мати свій набір максимумів і мінімумів, а букви — свій. За сигналами схожості ти зможеш відокремити цифри від букв, але розпізнати символи всередині набору можливо тільки по максимальному відмінності.
    
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.