1. 程式人生 > >機器學習習題(5)

機器學習習題(5)

1. 前言

書到用時方恨少!

2. 習題1(矩陣相乘)

深度學習是當前很熱門的機器學習演算法,在深度學習中,涉及到大量的矩陣相乘,現在需要計算三個稠密矩陣A,B,C的乘積ABC,假設三個矩陣的尺寸分別為mnnppqm<n<p<q,以下計算順序效率最高的是()
A.(AB)C

B.AC(B)

C.A(BC)

D.所以效率都相同

正確答案:A

解析:
首先,根據簡單的矩陣知識,因為 A*B , A 的列數必須和 B 的行數相等。因此,可以排除 B 選項,
然後,再看 A 、 C 選項。在 A 選項中,mn 的矩陣 A 和n

p的矩陣 B 的乘積,得到 mp的矩陣 A*B ,而 AB的每個元素需要 n 次乘法和 n-1 次加法,忽略加法,共需要 mnp次乘法運算。同樣情況分析 A*B 之後再乘以 C 時的情況,共需要 mpq次乘法運算。因此, A 選項 (AB)C 需要的乘法次數是 mnp+mpq 。同理分析, C 選項 A (BC) 需要的乘法次數是 npq+mnq
由於mnp<mnqmpq<npq,顯然 A 運算次數更少,故選 A 。

3. 習題2(貝葉斯)

Nave Bayes是一種特殊的Bayes分類器,特徵變數是X,類別標籤是C,它的一個假定是:()
A.各類別的先驗概率P(C)是相等的

B.以0為均值,sqr(2)/2為標準差的正態分佈

C.特徵變數X的各個維度是類別條件獨立隨機變數

D.P(X|C)是高斯分佈

正確答案:C

解析:

樸素貝葉斯的條件就是每個變數相互獨立。

4. 習題3(支援向量機)

關於支援向量機SVM,下列說法錯誤的是()
A.L2正則項,作用是最大化分類間隔,使得分類器擁有更強的泛化能力

B.Hinge 損失函式,作用是最小化經驗分類錯誤

C.分類間隔為1/||w||,||w||代表向量的模

D.當引數C越小時,分類間隔越大,分類錯誤越多,趨於欠學習

正確答案:C

解析:

A正確。考慮加入正則化項的原因:想象一個完美的資料集,y>1是正類,y<-1是負類,決策面y=0,加入一個y=-30的正類噪聲樣本,那麼決策面將會變“歪”很多,分類間隔變小,泛化能力減小。加入正則項之後,對噪聲樣本的容錯能力增強,前面提到的例子裡面,決策面就會沒那麼“歪”了,使得分類間隔變大,提高了泛化能力。

B正確。

C錯誤。間隔應該是2/||w||才對,後半句應該沒錯,向量的模通常指的就是其二範數。

D正確。考慮軟間隔的時候,C對優化問題的影響就在於把a的範圍從[0,+inf]限制到了[0,C]。C越小,那麼a就會越小,目標函式拉格朗日函式導數為0可以求出w=求和aiyixi,a變小使得w變小,因此間隔2/||w||變大

5. 習題4(HMM)

在HMM中,如果已知觀察序列和產生觀察序列的狀態序列,那麼可用以下哪種方法直接進行引數估計()
A.EM演算法

B.維特比演算法

C.前向後向演算法

D.極大似然估計

正確答案:D

解析:
EM演算法: 只有觀測序列,無狀態序列時來學習模型引數,即Baum-Welch演算法

維特比演算法: 用動態規劃解決HMM的預測問題,不是引數估計

前向後向演算法:用來算概率

極大似然估計:即觀測序列和相應的狀態序列都存在時的監督學習演算法,用來估計引數

注意的是在給定觀測序列和對應的狀態序列估計模型引數,可以利用極大似然發估計。如果給定觀測序列,沒有對應的狀態序列,才用EM,將狀態序列看不不可測的隱資料。

6. 習題5(貝葉斯)

假定某同學使用Naive Bayesian(NB)分類模型時,不小心將訓練資料的兩個維度搞重複了,那麼關於NB的說法中正確的是:
A.這個被重複的特徵在模型中的決定作用會被加強

B.模型效果相比無重複特徵的情況下精確度會降低

C.如果所有特徵都被重複一遍,得到的模型預測結果相對於不重複的情況下的模型預測結果一樣。

D.當兩列特徵高度相關時,無法用兩列特徵相同時所得到的結論來分析問題

E.NB可以用來做最小二乘迴歸

F.以上說法都不正確

正確答案:BD

解析:暫時沒有很好的完整解析。

7. 小結

我們這一章中,主要講解了矩陣相乘、貝葉斯、支援向量機和隱馬爾可夫模型的相關習題。