用什么工具做網(wǎng)站百度站長
提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔
文章目錄
- 摘要
- Abstract
- 文獻閱讀:學習數(shù)一切東西
- 1、研究背景
- 2、提出方法
- 3、模塊詳細
- 3.1、多尺度特征提取模塊
- 3.2、密度預測模塊
- 4、損失函數(shù)
- 5、性能對比
- 6、貢獻
- 二、RNN代碼學習
- 2.1、什么是RNN
- 2.2、RNN的處理過程
- 2.3、RNN簡單代碼實現(xiàn)
- 總結
摘要
本周主要閱讀了CVPR文章,Learning To Count Everything。文章提出了一種名為FamNet的新型網(wǎng)絡結構,是卷積神經(jīng)網(wǎng)絡(CNN)的改進版本??梢詫AMNet與CNN或其他類型的神經(jīng)網(wǎng)絡結合,形成更復雜的深度學習模型,以處理更復雜的圖像識別任務。FamNet利用提供的示例對象和查詢圖像之間的相似性來估計密度圖,從而實現(xiàn)物體計數(shù)。。除此之外,還學習學習了RNN代碼的學習。
Abstract
This week, I mainly read the CVPR article Learning To Count Everything. The article proposes a new network structure called FamNet, which is an improved version of convolutional neural network (CNN). FamNet can be combined with CNN or other types of neural networks to form more complex deep learning models to handle more complex image recognition tasks. FamNet estimates a density map using the similarity between provided example objects and query images to achieve object counting. In addition, I also learned how to learn RNN code.
文獻閱讀:學習數(shù)一切東西
Title: Learning To Count Everything
Author:Viresh Ranjan, Udbhav Sharma, Thu Nguyen, Minh Hoai
From:2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)
1、研究背景
在面對密集場景或新類別時的計數(shù)問題。在現(xiàn)實生活中,我們經(jīng)常會遇到需要計數(shù)的場景,如統(tǒng)計人群數(shù)量、貨架上的物品數(shù)量或書架上的書本數(shù)等。然而,當目標物體數(shù)量龐大月分布密集時,傳統(tǒng)的人工計數(shù)方法不僅效率低下,而且容易出錯。因此,開發(fā)一種能夠自動、準確地進行目標檢測與計數(shù)的方法變得尤為重要。當前,大多數(shù)物體計數(shù)方面的研究主要關注單個類別的計數(shù),且大多需要大量的標注數(shù)據(jù)進行訓練。然而,在實際應用中,我們往往面臨標注數(shù)據(jù)不足或需要計數(shù)的新類別不斷出現(xiàn)的情況。因此,如何在小樣本或新類別的情況下實現(xiàn)準確的目標檢測與計數(shù)成為了一個亟待解決的問題。
2、提出方法
對于物體計數(shù)和分類的任務,通常需要大量的標注數(shù)據(jù)來進行訓練。然而,獲取這些標注數(shù)據(jù)是一個昂貴且耗時的過程。因此,文章提出了一種名為FamNet(Fast Adaptive Matching Network)的新方法,用于解決在只有少量標注實例的情況下進行物體計數(shù)的問題。FAMNet是一種深度學習模型,主要用于圖像識別和計算機視覺任務。它是深度神經(jīng)網(wǎng)絡的一種變體,特別是卷積神經(jīng)網(wǎng)絡(CNN)的改進版本。可以將FAMNet與CNN或其他類型的神經(jīng)網(wǎng)絡結合,形成更復雜的深度學習模型,以處理更復雜的圖像識別任務。FamNet利用提供的示例對象和查詢圖像之間的相似性來估計密度圖,從而實現(xiàn)物體計數(shù)。
3、模塊詳細
3.1、多尺度特征提取模塊
使用ImageNet預訓練的網(wǎng)絡進行特征提取,可以處理廣泛的視覺類別。多尺度特征提取模塊由來自預訓練ResNet-50骨干網(wǎng)絡的前四個塊組成(這些塊的參數(shù)在訓練期間被凍結)。利用第三和第四個塊處的卷積特征映射來表示圖像。通過對第三和第四個Resnet-50塊卷積特征映射執(zhí)行ROI池化獲得一個示例的多尺度特征。
3.2、密度預測模塊
為了使密度預測模塊不受視覺類別的影響,不直接使用從特征提取模塊獲得的特征進行密度預測。相反,只使用范例特征和圖像特征之間的相關映射作為密度預測模塊的輸入。為了解釋在不同尺度下感興趣的對象,將樣本特征縮放到不同尺度,并將縮放后的樣本特征與圖像特征關聯(lián),從而獲得多個相關map,每個尺度一個。在實驗中,使用0.9和1.1的scales,以及原始的scales。將相關圖串聯(lián)并送入密度預測模塊。
密度預測模塊由5個卷積塊和3個上采樣層組成,分別位于第一、第二和第三個卷積層之后。最后一層是1*1的卷積層預測2維密度圖,其大小與輸入圖像一致。
4、損失函數(shù)
-
Min-Count loss:每個框對應位置的物體數(shù)量應該至少是1個,若小于1個就產(chǎn)生損失。大于等于1不產(chǎn)生損失,框可能包含超過一個物體。
-
Perturbation Loss:從目標跟蹤的研究借用correlation filter而來的。給定一個需要跟蹤的物體以及它的標注框,當一個框位于標注框的位置有最大的響應值,當這個框偏離了標注框,它的響應值根據(jù)距離指數(shù)型下降。
5、性能對比
最終的性能對比結果顯示,FamNet在計數(shù)任務上的表現(xiàn)優(yōu)于其他幾種方法。具體來說,FamNet在平均絕對誤差(MAE)和均方根誤差(RMSE)兩個評價指標上均取得了最佳結果。此外,FamNet還可以通過增加示例數(shù)量來提高計數(shù)性能。在與其他幾種基線方法的比較中,FamNet也表現(xiàn)出色,尤其是在處理未見過的新類別時。在CARPK數(shù)據(jù)集上的計數(shù)汽車性能測試中,FamNet的表現(xiàn)也優(yōu)于其他方法??傊?#xff0c;FamNet是一種有效的多目標計數(shù)方法,具有良好的泛化能力。
6、貢獻
文章提出了FamNet(Family of Neural Networks)方法,其是一種用于圖像識別和計算機視覺任務的神經(jīng)網(wǎng)絡框架。它旨在通過構建一系列相關的神經(jīng)網(wǎng)絡模型來解決不同但相關的任務,這些模型共享一些基礎結構和參數(shù),從而提高效率和性能。在FamNet中,不同任務之間的模型共享部分網(wǎng)絡層,這使得模型能夠學習到跨任務的有用特征表示。通過共享網(wǎng)絡層,FamNet可以減少計算量,加速模型訓練,并在多個任務之間實現(xiàn)知識遷移。
二、RNN代碼學習
2.1、什么是RNN
循環(huán)神經(jīng)網(wǎng)絡(Recurrent Neural Network,RNN)是一種深度學習模型,用于處理序列數(shù)據(jù)。RNN的核心特點是具有記憶單元,能夠捕捉序列數(shù)據(jù)中的長期依賴關系。在RNN中,神經(jīng)網(wǎng)絡單元按照時間序列連接,每個單元的輸出作為下一個單元的輸入,從而實現(xiàn)信息的循環(huán)傳遞。RNN的應用領域非常廣泛,包括自然語言處理、語音識別、機器翻譯、時間序列預測等。常見的RNN變種包括長短時記憶網(wǎng)絡(LSTM)和門控循環(huán)單元(GRU),它們通過引入不同的機制來改善RNN的訓練和性能。
2.2、RNN的處理過程
- 對數(shù)據(jù)集進行向量化表示,例如使用詞向量或one-hot編碼。
- 前向過程:定義一個輸出向量,該網(wǎng)絡由n個RNN模塊組成。將向量化的數(shù)據(jù)與一個矩陣W1相乘得到輸出out1,將上一個RNN模塊的輸出out與一個矩陣W2相乘得到out2,將out1與out2相加得到當前RNN模塊的輸出out3,給out3施加一個激活函數(shù)得到out4,out4即為當前RNN模塊的輸出。
- 反向傳播:利用梯度下降法對所有的RNN模塊的W1和W2進行更新。
2.3、RNN簡單代碼實現(xiàn)
class SimpleRNN(nn.Module): def __init__(self, input_size, hidden_size, output_size): super(SimpleRNN, self).__init__() self.hidden_size = hidden_size self.rnn = nn.RNN(input_size, hidden_size, batch_first=True) self.fc = nn.Linear(hidden_size, output_size) def forward(self, x): # 初始化隱藏狀態(tài) h0 = torch.zeros(1, x.size(0), self.hidden_size).to(x.device) # 前向傳播RNN out, _ = self.rnn(x, h0) # 獲取最后一個時間步的輸出 out = self.fc(out[:, -1, :]) return out
總結
本周主要閱讀了CVPR文章,Learning To Count Everything。文章提出了一種名為FamNet的新型網(wǎng)絡結構,是卷積神經(jīng)網(wǎng)絡(CNN)的改進版本。可以將FAMNet與CNN或其他類型的神經(jīng)網(wǎng)絡結合,形成更復雜的深度學習模型,以處理更復雜的圖像識別任務。FamNet利用提供的示例對象和查詢圖像之間的相似性來估計密度圖,從而實現(xiàn)物體計數(shù)。。除此之外,還學習學習了RNN代碼的學習。