模型介紹
卷積神經網路CNN
卷積神經網絡(CNN)是一種深度學習架構,通過使用卷積層來自動從數據中學習空間層次的特徵,使其在圖像識別、分類、物體檢測等視覺表現卓越。
卷積層(Convolution Layer)
當我們在做影像辨識時,像素是很重要的關鍵,我們需要從像素中,抓取特徵,除了像素
的值以外,我們還要考慮像素與像素之間的關聯
池化層(Pooling Layer)
池化目的只是在將圖片資料量減少並保留重要特徵的方法,提高計算效率,把原本的資料做一個最大化或是平均化的降維計算。
常見的池化操作有最大池化(MaxPooling)和平均池化(AveragePooling)。
平坦層(Flatten Layer)
將前面卷積層和池化層,產生的多維特徵圖,轉換成一維的向量。
這個一維向量隨後可以被送入到全連接層,進行進一步的處理和分析,進行分類。
全連接層(FullyConnected Layers)全連接層通常用於模型的最後幾層,負責將學到的特徵映射到最終的輸出,比如分類的類別。
Mobilenet V1
•前面提到CNN 的運作,非常吃電腦的運算資源,如果電腦的像素(矩陣)變大,那電腦的計算量以及執行的時間會大大的增加,如果是一般的機器學習如:影像識別、分類,不太會有太大的影響,但如果是自動駕駛或機器人,我們就不能忽略龐大的計算量以及長時間的計算。
•Mobilenet是一種特定的CNN架構,為移動和嵌入式設備提供輕量級的深度學習模型。相比於其他深度學習模型,Mobilenet設計了專門的結構和技術來減少計算量和參數量,從而能夠在計算資源有限的設備上高效運行。•Mobilenet總共有三個版本分別為v1 、v2以及v3 ,而我們今天使用的是Mobilenet V1
第一部份
原始圖片是7*7*16 ,我們使用的是3*3*16*32的卷積核,步數以及填充分別為2跟1 ,32則為輸出通道的數量,所以最後的計算量為: 3*3*16*32*4*4
第二部份
原始圖片是7*7*16 ,首先會是深度卷積,使用的是3*3*16的卷積核,步數以及填充分別為2跟1 ,所以計算量為3*3*16*4*4,再來執行逐點卷積,使用的是1*1*16*32的卷積核, 32則為輸出通道的數量, 所以最後的計算量為: 3*3*16*4*4+16*32*4*4
VGG
•前面提到CNN 的運作, filter size(或稱為卷積核大小),它可以為3*3或者4*4等, 但VGG是重複採用同一組基礎模組,並改用小卷積核,其架構由 n 個 VGGBlock 與3個全連接層所組成。
•VGG Block的構造就是由不同數量的3x3 卷積層,以及 2x2 的 Max pooling 組成
採用小的卷積核取代大的卷積核,這麼做可以達到相同的效果,減少參數量
研究結果
在人工智慧共創平台上有計算偵測瑕疵正確率的地方
公式如下:Accuracy=Number of correct predictions/Number of total predictions
我們使用了兩種方法去做圖片處理,以下分別是兩種前處理的準確度
使用直方圖均衡化以及局部均衡化
設定訓練次數為100為了避免過度配適
我們有設定如果準確度長期沒有進步就會停止訓練
結果
混淆矩陣
網站計算正確率 0.9432799
使用直方圖均衡化以及局部對比增強
結果
混淆矩陣
網站計算正確率 0.8939580
使用直方圖均衡化以及局部均衡化
混淆矩陣
網站計算正確率 0.8335388
權重數據增強
靜宜大學 AOI晶圓瑕疵分類專題 © 2024