logistic分類(logistic回歸 LR)

2021-08-05 21:26:42 字數 1121 閱讀 7529

幾乎所有的教材都是從logistic分類開始的,因為logistic分類實在太經典,而且是神經網路的基本組成部分,每個神經元(cell)都可以看做是進行了一次logistic分類

所謂logistic分類,顧名思義,邏輯分類,是一種二分類法,能將資料分成0和1兩類

logistic分類的流程比較簡單,主要有線性求和,sigmoid函式啟用,計算誤差,修正引數這4個步驟。前兩部用於判斷,後兩步用於修正。

1.線性求和以及sigmoid函式

因此我們需要乙個函式,來將z的值對映到[0,1]之間, 這就是

啟用函式

。啟用函式有很多種,這裡的啟用函式是sigmoid函式。 

當 a 大於0.5的時候,我們判定x應屬於1類,如果小於0.5,則屬於0類。這樣,就完成了判斷的工作。

2.誤差計算以及引數修正

上面完成的判斷過程中用到了引數向量h和偏置量b。 可以說,h和b的值直接關係到logistic判斷的準確性。

在最開始的時候,h中的值是隨機的,而b的值是0

. 我們通過不斷的訓練來使得h和b能夠盡可能的達到乙個較優的值。

假設我們期望輸入x的判定是y,而實際得到的判定值是a,那麼我們定義乙個損失函式c(a,y),通過修正h和b的值來使得c最小化,這是乙個優化問題。在凸優化問題中,可以通過 

然而在某些情況下,例如資料規模很大,或者非凸優化問題中,則不能這麼做,而是用迭代的方法來得到區域性最優解。 

3.將logistic擴充套件到多分類

在這裡,我們將輸出由乙個值更改為乙個向量。例如有3個類,那麼輸出就是乙個長度為3 的列向量,對應項的值為1,其他為0.即 

分別表示第0,1,2個類。 也可以看成是原來若干個logistic分類器組合在一起。對應的某個分類器只對該類輸出1,其他情況都輸出0.

python實現logistic分類演算法

最近在看吳恩達的機器學習課程,自己用python實現了其中的logistic演算法,並用梯度下降獲取最優值。logistic分類是乙個二分類問題,而我們的線性回歸函式 的取值在負無窮到正無窮之間,對於分類問題而言,我們希望假設函式的取值在0 1之間,因此logistic函式的假設函式需要改造一下 由...

Logistic回歸,多類分類

1對其他 one vs rest,ovr 對每個類別c,訓練乙個logistic回歸分類器 對新的輸入x,選擇使得 多項分布 在概率分布中,貝努利 bernoulli 分布的輸出只有兩種取值。multinoulli分布,或稱為範疇分布 categorical distribution 輸出有k種取值...

有序分類logistic回歸 R語言

正如字面理解,包含兩個方面 一是有序性,如調研中常用的滿意度常用李克特量表,即有序的因變數 二是logistic分類,如1代表優秀 2代表良好 3代表一般等等。因變數為分類變數,且分類間有次序關係,針對因變數為分型別資料的情況應該選用logistic回歸,故應採用有序多分類的logistic回歸分析...