高效計算基礎與線性分類器
標籤: 深度學習
線性分類器
2016-06-29 16:01
131人閱讀收藏
舉報
深度學習筆記(1)
作者同類文章x
目錄(?)
[+]
深度學習與應用
高效計算基礎
影象識別難點與knn
線性分類器
1 線性分類器
2 損失函式
實踐more
七月演算法5月深度學習班課程筆記——no.2
1. 影象上的應用:可以根據,識別的內容,描述影象;模仿人的創造性生成畫作;相簿自動歸類等。
2. nlp上的應用:用rnn學習某作家的文筆風格進行寫作、學習**寫作等。下圖為rnn學習了200m的**量後自動生成的**片段,**的格式已經比較相似了。
3. 綜合應用:識別物體,再根據識別出來的物品組織成文字描述。
python基本型別、容器等基礎的語言知識,請移步:python基礎教程
numpy:矩陣運算
scipy:稀疏矩陣求距離。
科學計算庫的安裝與使用可以移步:python及科**算庫的安裝
影象識別的核心問題:乙個影象給計算機輸入的是乙個矩陣,每乙個畫素點上都是乙個rgb顏色值,根據矩陣去做影象識別,計算置信度。
難點:
1. 視角不同:每個事物旋轉或者側視最後的構圖都完全不同
2. 尺寸大小不統一:相同內容的也可大可小
3. 變形:很多東西處於特殊的情形下, 會有特殊的擺放和形狀
4. 光影等干擾/幻象重點內容
5. 背景干擾
6. 同類內的差異(比如椅子有靠椅/吧椅/餐椅/躺椅…)
影象識別的基本流程:
評估:就像我們上學學了東西要考試檢測一樣, 我們也得考考計算機學得如何, 於是我們給定一些計算機不知道
類別的讓它判別, 然後再比對我們已知的正確答案。
k最鄰近法(knn):k最近鄰,就是k個最近的鄰居的意思,說的是每個樣本都可以用它最接近的k個鄰居來代表。knn演算法的核心思想是如果乙個樣本在特徵空間中的k個最相鄰的樣本中的大多數屬於某乙個類別,則該樣本也屬於這個類別,並具有這個類別上樣本的特性。
knn做影象識別有一些缺點,比如準確度不高,因為找不到影象合適的特徵,而且knn需要記錄全部訓練資料。那麼可以試試線性分類器,用邏輯回歸或者linearsvm。
線性分類器會有乙個得分函式,比如cifar-10資料集,資料集裡有10個類別,每個影象的大小都是32x32,每個畫素點有rdb的值,所以總共有32x32x3=3072 個數,線性分類器就是把這些數作為輸入,即3072x1的向量,給定權重矩陣w[n*3072],n是要判定的類別的數量。通過矩陣相乘得到得分函式:
f(x,w)=
wx+b
其中w是通過訓練得到的。那麼得到的得分高低就可以判定類別。
1. 空間劃分:wx+b是空間的點。
2. 模板匹配:w的每一行可以看做是其中乙個類別的模板。每類得分,實際上是畫素點和模板匹配度,模板匹配的方式是內積計算。
損失函式:由得分函式我們知道,給定w,可以由畫素對映到類目得分。損失函式用來評估w、b的好壞,衡量吻合度,可以通過調整引數/權重w, 使得對映的結果和實際類別吻合。有兩種損失函式:
一是hinge loss/支援向量機損失。
對於訓練集中的第i張資料xi
,在w下會有乙個得分結果向量f(
xi,w
) ,第j類的得分為我們記作f(
xi,w
)j,則在該樣本上的損失我們由下列公式計算得到:
li=∑j≠y
imax(0
,f(x
i,w)
j−f(
xi,w
)yi+
δ)假如有貓、狗、船三個類別,得分函式計算某張的得分為 f
(xi,
w)=[
13,−7
,11] ,而實際的結果是第一類 y
i=0 。假設 δ
=10,用上面的公式把錯誤類別 (
j≠yi
) 都遍歷了一遍,則求值加和: l
i=ma
x(0,
−7−13
+10)+
max(
0,11−
13+10)
計算得到狗的損失函式為0,船的損失函式為8,所以被判定為船的概率還是比較高的。所以 δ
可以看做乙個超引數,規定乙個警戒線用來平衡損失。
二是互熵損失(softmax分類器)。
對於訓練集中的第i張資料 x
i ,在w下會有乙個得分結果向量 f
yi,則損失函式記作: l
i=−l
og(e
fyi∑
jefj
)
把得分求exp再做歸一化,計算損失。兩種損失函式得到的結果會有些區別,實際的求解過程比較如下:
knn分類器、用svm和softmax分類器做影象分類,詳見ipython。
python做科學計算
高效計算基礎與線性分類器
七月演算法5月深度學習班課程筆記 no.21.影象上的應用 可以根據,識別的內容,描述影象 模仿人的創造性生成畫作 相簿自動歸類等。2.nlp上的應用 用rnn學習某作家的文筆風格進行寫作 學習 寫作等。下圖為rnn學習了200m的 量後自動生成的 片段,的格式已經比較相似了。3.綜合應用 識別物體...
3 線性分類器與非線性分類器的區別與優劣?
首先線性和非線性是針對模型引數和輸入特徵來講的 比如輸入x,模型y ax ax 2那麼就是非線性模型,如果輸入是x和x 2則模型是線性的。再看定義考慮二類的情形,所謂線性分類器即用乙個超平面將正負樣本分離開,表示式為 y wx 這裡是強調的是平面。而非線性的分類介面沒有這個限制,可以是曲面,多個超平...
線性分類器和非線性分類器
線性和非線性的區別 1.線性linear,指量與量之間按比例 成直線的關係,在數學上可以理解為一階導數為常數的函式 非線性non linear則指不按比例 不成直線的關係,一階導數不為常數。2.線性的可以認為是1次曲線,比如y ax b 即成一條直線 非線性的可以認為是2次以上的曲線,比如y ax ...