Яка різниця між логістичною регресією та перцептроном?


30

Я збираюся через лекцію Ендрю Нг ноту на Machine Learning.

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

Отже, моє запитання - якщо це потрібно уточнити, і ми розглянемо Perceptron як методику класифікації, то що ж таке логістична регресія? Чи просто використовується для отримання ймовірності того, що точка даних належить до одного з класів?


Приємне запитання, я вважаю, що дуже важливо, як ви починаєте пояснення на NN, тим більше, що NN може бути дуже складним для розуміння, pls. розглянь мою відповідь.
prosti

Відповіді:


22

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

Гіпотеза при логістичній регресії забезпечує міру невизначеності виникнення бінарного результату на основі лінійної моделі. Вихід обмежений асимптотично між 0 і 1 і залежить від лінійної моделі, так що коли нижня лінія регресії має значення 0 , логічне рівняння дорівнює 0.5=e01+e0 , забезпечуючи природну точку відсічення для цілей класифікації. Однак ціною викидання інформації про ймовірність є фактичний результатh(ΘTx)=eΘTx1+eΘTx , що часто цікаво (наприклад, ймовірність виплати заборгованості за кредитом, дохід, кредитна оцінка, вік тощо).

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

Векторно, то функції або атрибути прикладу є х , і ідея полягає в тому, щоб «пройти» приклад , якщо:dx

або ...1dθixi>theshold

. Функція знаку призводить до 1 або - 1 , на відміну від 0 і 1 при логістичній регресії.h(x)=sign(1dθixitheshold)1101

Поріг буде поглинений у коефіцієнт зміщення . Формула тепер:+θ0

, або векторизований: h ( x ) = знак ( θ T x ) .h(x)=sign(0dθixi)h(x)=sign(θTx)

Різні класифіковані точки матимуть , що означає, що крапковий добуток Θ і x n буде позитивним (вектори в одному напрямку), коли y n від'ємний, або крапковий добуток буде негативним (вектори у протилежних напрямках), тоді як y n додатний.sign(θTx)ynΘxnynyn


Я працював над відмінностями цих двох методів у наборі даних від одного курсу , в якому результати тестування на двох окремих іспитах пов'язані з остаточним прийняттям до коледжу:

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

Точність у класифікації як функція від кількості ітерацій швидко зростає та плато на , відповідно до того, наскільки швидко досягається гранично оптимальна межа рішення у відеокліпі вище. Ось сюжет кривої навчання:90%

введіть тут опис зображення


Код, що використовується тут .


5

Тут може виникнути деяка плутанина. Спочатку перцептрон мав на увазі лише нейронні мережі з кроковою функцією як функцією передачі. У цьому випадку різниця полягає в тому, що логістична регресія використовує логістичну функцію, а перцептрон використовує ступінчату функцію. Взагалі обидва алгоритму повинні давати однакову межу рішення (принаймні, для одного рецептора нейрона). Однак:

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

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


2

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

y(x1,x2|b)=eb0+b1x1+b2x21+eb0+b1x1+b2x2
b1,b2,b3ex1+ex

y(x|b)xbyYy~=0y(x|b)<Yy~=1y(x|b)Y


1

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

Логістична регресія моделює функцію середнього розподілу Бернуллі як лінійне рівняння (середнє значення дорівнює p ймовірності події Бернуллі). Використовуючи посилання logit як функцію середнього (p), логарифм коефіцієнтів (log-odds) можна вивести аналітично і використовувати як відповідь на так звану узагальнену лінійну модель. Крім прогнозування, це дозволяє інтерпретувати модель причинно-наслідкового висновку. Це те, чого ви не можете досягти за допомогою лінійного Perceptron.

Perceptron бере функцію зворотної логіти (логістичної) функції wx і не використовує імовірнісні припущення ні для моделі, ні для її параметра. Інтернет-навчання дасть вам точно такі ж оцінки щодо ваги / параметрів моделі, але ви не зможете інтерпретувати їх причинно-наслідковим висновком через відсутність p-значень, довірчих інтервалів та ну базової моделі ймовірностей.


1

x1,,xNRny1,,yN{1,1}1xi

(1)minimize1Ni=1Nmax(yiβTxi,0).
βRn+1

Об'єктивну функцію в задачі (1) можна записати як , де Субградіентом з в є вектором Кожна епоха стохастичного субградієнтного спуску (з розміром кроку ) проходить через навчальні спостереження і, для го спостереження, виконує оновлення 1Nii(β)

i(β)=max(yiβTxi,0).
iβ
g={0if yiβTxi0(so yi and βTxi have the same sign)yixiotherwise.
t>0)i
ββtg={βif yi and βTxi have the same signβ+tyixiotherwise.
Ми визнаємо, що це ітерація алгоритму перцептрона (зі швидкістю ).t


0

Ендрю Нг використав термін «логістична регресія» як модель для вирішення задачі бінарної класифікації.

Як ви могли бачити в роботі, він насправді ніколи не малює саму модель.

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

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

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

Це саме та модель, яку використовує Ендрю Нг, оскільки ця функція становить від 0 до 1.

Також похідне s'(x) = s(x)(1−s(x)), де s(x)є сигмоїдальна активаційна функція.

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

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


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

Особистість, я б використав більш просту модель з функцією ReLU, щоб пояснити SLP (однорівневий перцептрон), оскільки він більше використовується.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.