簡體   English   中英

一袋詞訓練樣本

[英]Bag of words training samples

我實施了Bag Of Words,一切順利。 但是,我對一些步驟以及如何實現它感到困惑。

我可以創建弓形描述符作為創建樣本的Bag中的最后一步,如此處所示bowDE.compute(img, keypoints, bow_descriptor); ..事情是我對下一步感到困惑。

我知道在BOW中我必須用非類(可樂)訓練和測試一個類(汽車),我在bow_descriptor向量中創建的僅用於類車,因此我有僅適用於汽車的樣本矢量。 以下是我培訓系統和測試的問題。

1-我應該為類(可樂)制作一半的bow_descriptor向量,其余用於非類(可樂),或者我必須為非類(可樂)創建一個新的bow_descriptor?

2-我需要進行多級分類,在完成第一個班級(汽車)系統后,我需要訓練一個新班級(公共汽車+火車等),我是否應該為每個班級創建一個新的訓練模型,或者可以通過以前的培訓進行培訓程序(即培訓班巴士,在同一系統中與班車一起訓練)?

無論是為所有類創建一個對象還是為每個類創建一個對象都無關緊要,只要您對所有類使用相同的字典即可。 僅創建一個對象可能更經濟。 但是提取的圖像描述符應該是相同的。

關於多類SVM:

您使用了SVM標記。 所以我假設你想使用SVM。 存在使用SVM明確地進行多類分類的方法,更常見的是訓練幾個二進制SVM並將它們組合以獲得多類結果。

您可以使用1對1設置,每個類對訓練一個SVM。 為了測試,您可以在每個SVM上評估測試示例。 贏得那些決賽的班級最常成為你的最終成績。

另一種流行的方法是1-vs-all SVM。 在這里,您可以為每個類訓練一個SVM,其中當前類的樣本標記為正,所有其他樣本標記為負。 在測試期間,得分最高的班級獲勝。

因此,如果要使用1-vs-1設置,則可以在添加新類時重用某些二進制SVM。 1-vs-All設置是不可能的,因為您需要將新類添加到每個SVM的負樣本中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM