Classification
為什麼VC維度很重要?
維基百科說:
VC 維度是算法可以粉碎的最大點集的基數。
例如,線性分類器的基數為 n+1。我的問題是我們為什麼要關心?您對其進行線性分類的大多數數據集往往非常大並且包含很多點。
什麼是VC維度
正如@CPerkins 所提到的,VC 維度是模型複雜性的度量。正如你提到的,它也可以根據粉碎數據點的能力來定義,就像你提到的維基百科一樣。
基本問題
- 我們想要一個模型(例如一些分類器)可以很好地泛化看不見的數據。
- 我們僅限於特定數量的樣本數據。
下圖(取自此處)顯示了一些模型(取決於) 具有不同的複雜性(VC 維度),此處顯示在 x 軸上,稱為.
圖像顯示,較高的 VC 維度允許較低的經驗風險(模型對樣本數據造成的錯誤),但也會引入較高的置信區間。這個區間可以看作是模型泛化能力的置信度。
低 VC 尺寸(高偏置)
如果我們使用低複雜度的模型,我們會引入某種關於數據集的假設(偏差),例如,當使用線性分類器時,我們假設數據可以用線性模型來描述。如果不是這種情況,我們給定的問題就不能通過線性模型來解決,例如因為問題是非線性的。我們最終會得到一個性能不佳的模型,它無法學習數據的結構。因此,我們應該盡量避免引入強烈的偏見。
高 VC 維度(更大的置信區間)
在 x 軸的另一邊,我們看到更高複雜度的模型,這些模型可能具有如此大的容量,以至於它寧願記住數據而不是學習它的一般底層結構,即模型過擬合。在意識到這個問題之後,我們似乎應該避免使用複雜的模型。
這似乎有爭議,因為我們不會引入偏差,即具有低 VC 維度但也不應該具有高 VC 維度。這個問題在統計學習理論中有很深的根源,被稱為偏差-方差-權衡。在這種情況下我們應該做的是盡可能複雜和盡可能簡單,因此在比較兩個最終具有相同經驗誤差的模型時,我們應該使用不太複雜的那個。
我希望我能告訴你,VC維度的想法背後還有更多的東西。