機器學習第三章課后習題

3.1 試析在什么情形下式 (3.2) 中不必考慮偏置項 b.

1较木、訓練樣本中存在屬性為固定值(常量)红符,wxi等價于偏置項b

2、分析屬性值的變動對標志值的影響程度時伐债,不用考慮b

3预侯、當訓練的樣本集為原樣本集中每個樣本與任意一個樣本之差時,不用考慮b



4峰锁、根據

得到當所有標志值之和等于所有加權屬性值之和時萎馅,偏置項b等于0



5、當所有屬性值為零時標志值為零虹蒋,則偏置項b等于0


3.2 試證明糜芳,對于參數 ω,對率團歸的目標函數 (3.18)是非凸的魄衅,但其對數 似然函數(3.27)是凸的.



3.3 編程實現對率回歸峭竣,并給出西瓜數據集 3.0α 上的結果.


(相關資料顯示二范數誤差應小于0.0000001才能確定牛頓迭代最終解,但由于Spyder卡頓晃虫,所以暫時放寬為0.0001了)

import numpy as np

X = np.mat([[0.697,0.460,1],[0.556,0.215,1],[0.774,0.376,1],

? ? ? ? ? ? [0.634,0.264,1],[0.481,0.149,1],[0.608,0.318,1],[0.403,0.237,1],

? ? ? ? ? ? [0.666,0.091,1],[0.437,0.211,1],[0.243,0.267,1],? ?

? ? ? ? ? ? [0.245,0.057,1],[0.343,0.099,1],

? ? ? ? ? ? [0.639,0.161,1],[0.657,0.198,1],[0.360,0.370,1],

? ? ? ? ? ? [0.593,0.042,1],[0.719,0.103,1]]) #增加一個恒定屬性值為1的 屬性用來得到偏移量? ? ? ?

Y = np.array([1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0])?

beta = np.random.rand(3,1) #隨機生成初始β值

def getP1(X,beta):? ? #得到p1?

? ? m,n = X.shape

? ? P1 = []? ? ?

? ? for i in range(m):

? ? ? ? P1.append((np.e ** np.dot(X[i],beta)[0,0])/(1+np.e ** np.dot(X[i],beta)[0,0]))? ? ? ? #因dot結果還是一個矩陣mat皆撩,所以要將其轉成一個標量數值,用[0,0]

? ? return np.array(P1)? ? ?

def getDbeta(X,Y,beta):? ? #一階導數

? P1 = getP1(X,beta)

? m,n = X.shape

? Dbeta = np.zeros((3,1))

? for i in range(m):

? ? ? ? Dbeta += X[i].T*(Y[i]-P1[i])

? ? ? ? return -Dbeta? ?

def getD2beta(X,beta):? ? ? #二階導數

? ? ? P1 = getP1(X,beta)

? ? ? m,n? = X.shape

? ? ? D2beta = np.zeros((3,3))

? ? ? for i in range(m):

? ? ? ? ? D2beta += np.dot(X[i].T,X[i])*P1[i]*(1-P1[i])

? ? ? return np.mat(D2beta)

while np.linalg.norm(-np.dot(getD2beta(X,beta).I,getDbeta(X,Y,beta)))>0.0001:

? ? ? #如果新的beta值與之前的beta值差距(用二范數判斷)大于0.0001則繼續(xù)牛頓迭代

? ? ? beta1=beta-np.dot(getD2beta(X,beta).I,getDbeta(X,Y,beta))#書上的牛頓迭代公式

? ? ? beta=beta1

print(beta)#小于則輸出最終結果





圖中為求出的參數w1,w2,b




3.5 編輯實現線性判別分析哲银,并給出西瓜數據集 3.0α 上的結果.

import numpy as np

import matplotlib.pyplot as plt

X0 = np.array([[0.697,0.460],[0.774,0.376],[0.634,0.264],[0.608,0.318],[0.556,0.215], [0.403,0.237],[0.481,0.149],[0.437,0.211]])? ? ? # 第一類數據

X1 = np.array([[0.666,0.091],[0.243,0.267],[0.245,0.057],[0.343,0.099],[0.639,0.161],[0.657,0.198],[0.360,0.370], [0.593,0.042],[0.719,0.103]]) # 第二類數據

u0 = np.mean(X0,axis=0,keepdims=True)? # u0 第一類向量均值

u1 = np.mean(X1,axis=0,keepdims=True)? # u1 第二類向量均值

Sw = (X0-u0).T.dot(X0-u0) + (X1-u1).T.dot(X1-u1) #類內散度矩陣公式

w = np.linalg.inv(Sw).dot((u0-u1).T)#w=sw**-1(u0-u1)

print(w)

print("y={}x".format(w))


圖中為求出的參數w和投影直線



3.4 選擇兩個 UCI 數據集扛吞,比較 10 折交叉驗證法和留 法所估計出的對 率回歸的錯誤率.

修改多次仍報錯,這部分之后再補了荆责。

放一個詳細說明如何使用uci數據集的鏈接 https://blog.csdn.net/qq_32892383/article/details/82225663

3.6 線性判別分析僅在線性可分數據上能獲得理想結果?試設計一個改進 方法喻粹,使其能較好地用于非線性可分數據

1、高維映射后再投影到直線上


2草巡、參考支持向量機的核方法高維映射守呜,通過改變樣本屬性的維度將樣本集投射到一個更高維的空間內進行線性劃分,并且用核函數直接得到高維特征空間中樣本的內積山憨。

3查乒、參考在神經網絡中使用多層功能神經元,在輸出層和輸入層之間增加一層隱含層(輸入層經過第一次激活函數加工并通過閾值分類之后再一次函數加工并通過閾值分類)郁竟,考慮是否可以二次投影玛迄。


令碼長為 9,類別數為 4棚亩,試給出海明距離意義下理論最優(yōu)的 ECOC 二元碼井證明之.

海明距離蓖议,兩個編碼對應位上編碼不同的位數虏杰,多個編碼的海明距離意義下的最優(yōu)碼為任意兩個編碼海明距離最大,我理解為每兩組編碼的海明距離的積最大勒虾。


每一列的分類結果為兩個正例兩個反例時纺阔,編碼不相同的組數最多為四組,所以只要一個分類器下四個類別的的分類結果為兩正兩負時修然,所有不同編碼的組數之和為36,所以當海明距離為6 6 6 6 6 6時笛钝,積最大,所以前三個編碼可以是


當最后一個編碼全為0時愕宋,可實現任意兩個編碼的海明距離為6,但考慮實際某類的編碼不能全為0玻靡,不然則沒有對這類有劃分意義的分類器,所以將任意一位改為一中贝。





3.8* ECOC 編碼能起到理想糾錯作用的重要條件是:在每一位編碼上出錯 的概率相當且獨立.試析多分類任務經 ECOC 編碼后產生的二類分 類器滿足該條件的可能性及由此產生的影響.

類別之間的差異越相同囤捻,分類器會將測試樣例判斷為與測試樣例特征相似的類別所被判斷為的結果,所以當類別之間的特征越相似邻寿,出錯的概率越大最蕾,即出錯概率和類別之間的差異程度有關,每一位編碼出錯概率 大約正相關于測試樣例類別和與其相似的類別的差異程度老厌,所以當每個類別的差異程度相當時瘟则,出錯概率相當的可能性越大。

影響 在此基礎上才能再理論上產生理想的糾錯作用枝秤,另一方面醋拧,并不是編碼的理論性質越好,分類性能就越好淀弹,因為機器學習問題涉及很多因素丹壕,例如將多個類拆解為兩個"類別子集 式所形成的兩個類別子集的區(qū)分難度往往不同即其導致的二分類問題的難度不同;于是一個理論糾錯性質很好,導致的三分類問題較難的編碼薇溃,與另一 個理論糾錯性質差一些菌赖、但導致的二分類問題較簡單的編碼,最終產生的模型 性能孰強孰弱很難說

3.9 使用 OvR 和 MvM 將多分類任務分解為二分類任務求解時沐序,試述為何 無需專門針對類別不平衡性進行處理.

對 OvR琉用、MvM 來說,由于對每個類進行了相同的處理策幼,

拆解出的二分類任務中類別不平衡的影響會相互抵消邑时,所以無需專門處理。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末特姐,一起剝皮案震驚了整個濱河市晶丘,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖浅浮,帶你破解...
    沈念sama閱讀 211,423評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件沫浆,死亡現場離奇詭異,居然都是意外死亡滚秩,警方通過查閱死者的電腦和手機专执,發(fā)現死者居然都...
    沈念sama閱讀 90,147評論 2 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來叔遂,“玉大人他炊,你說我怎么就攤上這事争剿∫鸭瑁” “怎么了?”我有些...
    開封第一講書人閱讀 157,019評論 0 348
  • 文/不壞的土叔 我叫張陵蚕苇,是天一觀的道長哩掺。 經常有香客問我,道長涩笤,這世上最難降的妖魔是什么嚼吞? 我笑而不...
    開封第一講書人閱讀 56,443評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮蹬碧,結果婚禮上舱禽,老公的妹妹穿的比我還像新娘。我一直安慰自己恩沽,他們只是感情好誊稚,可當我...
    茶點故事閱讀 65,535評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著罗心,像睡著了一般里伯。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上渤闷,一...
    開封第一講書人閱讀 49,798評論 1 290
  • 那天疾瓮,我揣著相機與錄音,去河邊找鬼飒箭。 笑死狼电,一個胖子當著我的面吹牛,可吹牛的內容都是我干的弦蹂。 我是一名探鬼主播漫萄,決...
    沈念sama閱讀 38,941評論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼盈匾!你這毒婦竟也來了腾务?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,704評論 0 266
  • 序言:老撾萬榮一對情侶失蹤削饵,失蹤者是張志新(化名)和其女友劉穎岩瘦,沒想到半個月后未巫,有當地人在樹林里發(fā)現了一具尸體,經...
    沈念sama閱讀 44,152評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡启昧,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,494評論 2 327
  • 正文 我和宋清朗相戀三年叙凡,在試婚紗的時候發(fā)現自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片密末。...
    茶點故事閱讀 38,629評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡握爷,死狀恐怖,靈堂內的尸體忽然破棺而出严里,到底是詐尸還是另有隱情新啼,我是刑警寧澤,帶...
    沈念sama閱讀 34,295評論 4 329
  • 正文 年R本政府宣布刹碾,位于F島的核電站燥撞,受9級特大地震影響,放射性物質發(fā)生泄漏迷帜。R本人自食惡果不足惜物舒,卻給世界環(huán)境...
    茶點故事閱讀 39,901評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望戏锹。 院中可真熱鬧冠胯,春花似錦、人聲如沸锦针。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽伞插。三九已至割粮,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間媚污,已是汗流浹背舀瓢。 一陣腳步聲響...
    開封第一講書人閱讀 31,978評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留耗美,地道東北人京髓。 一個月前我還...
    沈念sama閱讀 46,333評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像商架,于是被迫代替她去往敵國和親堰怨。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,499評論 2 348