CS231n-2017 Lecture2圖像分類筆記

圖像分類問題

定義:

在已有固定的分類標簽集合的前提下,能夠對輸入的圖像進行識別處理,從集合中找到該圖像所對應的標簽。

對于計算機而言,圖像并非直觀的圖像,而是一個n\times m的像素集合,對于每個像素,其又有RBG三個顏色通道。因此,一張圖片可以被認為是一個n \times m \times 3?的三維數組,數組內每個元素都是在[0,255]?范圍內的整型。而計算機圖像分類的任務,就是將這樣的一個三維數組映射到其對應的標簽上

困難點:

Viewpoint variation:對于同一個物體,圖片可能從多個角度來展現

Scale variation:由于攝影距離的遠近、物體尺寸大小不同,物體的可視大小通常是變化的

Deformation:同一個物體可能以不同的形態出現,會發生形變

Occlusion:目標物體可能會被無關物體擋住,只有部分可見

Illumination conditions:光照會極大程度地影響同一個形狀物品的RGB值

Background clutter:物體可能會混入背景中,難以被分辨

Intra-class variation:同一類物體的外觀差異可能也會較大

流程:

1.輸入:輸入是包含N個圖像的集合,每個圖像的標簽是K種標簽的一種,我們把這個圖像集合成為訓練集

2.模型學習/訓練分類器:使用訓練集來學習每個標簽具體長什么樣

3.評價:使用分類器來給其從未見過的圖像打標簽,并以此正確率來評價分類器

Nearest Neighbor分類器

原理:

對于輸入的圖像,我們將其與訓練集中的所有圖像進行差異比較,找到與輸入圖像差異最小的圖像,并將這個圖像的標簽作為輸入圖像的標簽

差異的量化:

假設我們需要比較圖片p_1?和圖片p_2,則我們先將這個兩個三維數組分別展開成為向量I_1?和?I_2?,然后將這兩個向量的L1距離作為差異的量化標準,即

d_1(I_1,I_2) = \sum_p|I_1^p-I_2^p|

即將兩個向量每對元素的差的絕對值求和

我們也可以選擇L2距離作為量化的標準,即

d_2(I_1,I_2) = \sqrt{\sum_p(I_1^p-I_2^p)^2}?

L1與L2距離的使用情景其實并沒有區分的很清楚,更多的是要實際去嘗試哪個更好

缺點:

每次對輸入圖像進行預測時,如果圖片的尺寸很大,像素很多(稱為高維數據),則需要耗費大量的時間進行比較,這對使用帶來了極大的不便,雖然這種缺點可以通過PCA降維的方法進行彌補(但PCA也只能夠提取線性相關的主成分)。再者,僅通過像素來比較圖像之間的差異是完全不夠的,這更像是對圖片按顏色分布進行分類,而不是按照圖片的語義來進行分類

K-Nearest Neighbor分類器

對于上述的Nearest Neighbor分類器而言,只選1個最相近的圖片可能會出現較大偏差,因此,我們可以選擇k個最相近的圖片,然后再在這k個圖片中選出頻數最高的標簽作為輸入圖像的標簽

優點:

選取更高的k值,可以使得分類的決策邊界(在選取差異最小的圖片的時候,相當于是尋找輸入圖片應當落入哪片合適的分類標簽區間)更加平滑,對于異常點的處理能力更強,使得分類器針對測試數據的泛化(generalization)能力更好

但K-Nearest Neighbor分類器會存在一些空白區間,它不屬于任何分類標簽,這是由于這些區間內的點到多種標簽的頻數相同導致的

Hyperparameter:

對于上文提到的K-Nearest Neighbor分類器,其中出現了k這個參數,而這個參數是我們人為提前預設好的,不同的k值會影響分類器的正確率,以及對差異量化的距離函數的選擇,是L1距離還是L2距離,都會影響分類器的性能。所有這些選擇,被稱為超參數(Hyperparameter)

超參數調優與驗證集(validation set):

想要找到使分類器性能最好的超參數,通常的辦法就是在一定范圍內嘗試多個不同的超參數的值,并驗證它的好壞,那么關鍵問題就是如何去評價一個超參數的好壞

做法:

將數據集合分為三部分,分別是訓練集(training set),驗證集(validation set),和測試集(test set)

在訓練時,我們使用training set進行訓練,并使用validation set來對超參數進行調優,找到最合適的超參數,然后使用test set來檢驗分類器的最終性能,這樣可以有效減少模型對訓練集、驗證集的過擬合現象

交叉驗證:

當訓練集數量較少時,(通常不用于深度學習),我們將訓練集分為n份,第i輪訓練時,我們按順序地選取其第i份作為validation set,剩下的n-1份作為training set,來得到驗證結果i,最后取i次驗證結果的平均值作為模型的評價

優點是能夠使用少量數據進行訓練,缺點是會耗費大量的計算資源,因為需要訓練的輪數變得很多

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/89880.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/89880.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/89880.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Typecho博客Ajax評論功能實現全攻略

文章目錄 Typecho實現Ajax評論功能的完整指南 引言 一、技術選型與準備工作 1.1 技術棧分析 1.2 環境準備 二、前端實現方案 2.1 基礎HTML結構 2.2 JavaScript處理邏輯 三、后端處理實現 3.1 創建插件處理Ajax請求 3.2 錯誤處理增強 四、安全性考慮 4.1 CSRF防護 4.2 輸入過濾 …

【計算機考研(408)- 數據結構】樹與二叉樹

樹與二叉樹 樹的定義及相關概念 樹是n(n≥0)個結點的有限集合,n 0時,稱為空樹,這是一種特殊情況。在任意一棵非空樹中應滿足: 1)有且僅有一個特定的稱為根的結點。 2)當n > 1時…

MacOS:如何利用終端來操作用戶

MacOS:如何利用終端來操作用戶MacOS:如何利用終端來操作用戶1. 創建用戶并賦予管理員權限步驟:2. 取消用戶的管理員權限解釋:3. 查看組成員查看 admin 組成員:查看 users 組成員:4. 其他常見的用戶管理命令…

基于SpringBoot+MyBatis+MySQL+VUE實現的醫療掛號管理系統(附源碼+數據庫+畢業論文+答辯PPT+項目部署視頻教程+項目所需軟件工具)

摘 要 在如今社會上,關于信息上面的處理,沒有任何一個企業或者個人會忽視,如何讓信息急速傳遞,并且歸檔儲存查詢,采用之前的紙張記錄模式已經不符合當前使用要求了。所以,對醫療掛號信息管理的提升&#x…

學成在線項目

黑馬程序員學成在線項目學習過程記錄 解決跨域問題

Shell腳本-grep工具

一、前言在 Linux/Unix 系統中,grep 是一個非常強大且常用的文本搜索工具,它可以幫助我們快速從文件或標準輸入中查找匹配特定模式的內容。無論是查看日志、調試腳本,還是進行自動化數據提取,grep 都扮演著至關重要的角色。本文將…

深入解析Ext2文件系統架構

要在硬盤上存儲文件,必須先將硬盤格式化為特定類型的文件系統。文件系統的主要功能就是組織和管硬盤中的文件。在Linux系統中,最常見的文件系統是Ext2系列,其早期版本為Ext2,后續又發展出Ext3和Ext4。雖然Ext3和Ext4對Ext2進行了功…

商業秘密保護:從法律理論到企業實戰

作者:邱戈龍、柯堅豪深圳商業秘密律師廣東長昊律師事務所在商業競爭中,商業秘密就像企業的"隱形護城河"。從法律角度看,它的保護路徑經歷了三次重要升級:從最初的"合同約定"到后來的"財產保護"&…

AI產品經理面試寶典第36天:AI+旅游以及行業痛點相關面試題的指導

一、AI如何解決旅游行業核心痛點? 面試官提問: "請結合具體案例說明AI在旅游行業的應用價值,以及它如何解決傳統旅游服務的痛點?" 你的回答: 以騰訊"一部手機游云南"為例,AI技術通過四大核心體系重構旅游體驗: 數字身份體系:通過人臉識別與用戶…

【conda】Linux系統中部署Conda環境

目錄 一、安裝 Miniconda 1.1 下載 Miniconda 安裝腳本 1.2 運行安裝腳本 1.3 初始化 Conda: 安裝完成后,初始化 Conda 環境 1.4 驗證安裝 二、設置虛擬環境默認存放路徑(可選) 三、conda創建虛擬環境 3.1 創建 Conda 環境…

Spring Boot 解決跨域問題

在 Spring Boot 中解決跨域問題(CORS)主要有三種常用方式,下面詳細說明每種實現方法: 方案一:全局配置(推薦) 在配置類中實現 WebMvcConfigurer 接口,統一配置所有接口的跨域規則&am…

Softhub軟件下載站實戰開發(十九):軟件信息展示

上一篇文章中我們上線了軟件分離展示&#xff0c;本篇文章我們聚焦軟件信息展示 軟件列表信息展示 點擊一級分類查詢該分類下所以軟件分類切換要有動畫效果分頁支持 核心實現 <transition-grouptag"div"class"software-grid"before-enter"before…

[HDLBits] Cs450/gshare

Branch direction predictor 分支方向預測器 A branch direction predictor generates taken/not-taken predictions of the direction of conditional branch instructions. It sits near the front of the processor pipeline, and is responsible for directing instructio…

[學習] 雙邊帶調制 (DSB) 與單邊帶調制 (SSB) 深度對比

雙邊帶調制 (DSB) 與單邊帶調制 (SSB) 深度對比 文章目錄雙邊帶調制 (DSB) 與單邊帶調制 (SSB) 深度對比**數學原理****調制表達式與頻譜****時域特性****頻域特性****Python 仿真代碼****仿真結果分析****工程應用建議**數學原理 設基帶信號為 m(t)m(t)m(t)&#xff08;帶寬為…

Gitee 提交信息的規范

在使用 git push 命令將代碼推送到 Gitee&#xff08;或任何 Git 平臺&#xff09;時&#xff0c;引號中的信息通常指的是 提交信息&#xff08;Commit Message&#xff09;。提交信息是對本次代碼修改的簡要描述&#xff0c;規范的提交信息有助于團隊協作和版本管理。 Gitee 提…

C 語言經典編程題實戰:從基礎算法到趣味問題全解析

在 C 語言學習過程中&#xff0c;通過實戰編程題鞏固知識點是非常有效的方式。本文整理了一系列經典 C 語言編程題&#xff0c;涵蓋基礎計算、邏輯判斷、圖形打印等多個維度&#xff0c;并附上完整代碼與解析&#xff0c;適合初學者參考學習上機題1.計算n以內所有正奇數的和 ?…

Chapter 3 Design of Switching Power Regulators

Chapter 3 Design of Switching Power Regulators Power Management Techniques for Integrated Circuit Design by Ke-Horng Chen 這本書比較深, 簡單介紹基本概念后, 就直接拋出大段公式和結論, 一章講其他書幾章內容, 適合有一定基礎, 想進一步做電源系統的人查閱. 優點是不…

算法題(176):three states

審題&#xff1a; 本題需要我們找到最佳鋪設道路&#xff0c;將三個國家聯通起來&#xff0c;然后輸出最佳鋪設道路的鋪設數量&#xff0c;若沒有聯通方法則輸出-1 思路&#xff1a; 首先我們正面思考&#xff1a;只需從某個點出發然后搜索到三個國家即可&#xff0c;最后對比所…

BIOS+MBR微內核加載loader程序實現過程

上一篇講到的微內核程序是由BIOS例程自動加載到內存中運行的,而且大小有限,能做的事情有限。我們知道內核程序大小是可以擴展的不能只有512字節,同時在加載運行內核前還需要完成一些必要的實模式下才能做的準備工作。所以單純在實模式下只使用微內核程序是不太夠的,就有了加…

使用Proxy設計模式來增強類的功能:ToastProxy和DesktopToast的設計關系

使用代理模式來增強類的功能&#xff1a;ToastProxy和DesktopToast Documentation: v1.0.0 Specified for Version v1.12.0&#xff0c;First Release in 2025/7/12 Documenation belongs to Projects: Charliechen114514/CCIMXDesktop: This is a Simple Desktop with Common …