大多數分類算法都是爲提高訓練速度而開發的。但是,有沒有關於決策速度的任何分類器或算法(低計算複雜度和簡單的可實現結構)?我可以獲得足夠的訓練數據,並且可以忍受很長的訓練時間。有沒有能夠非常快速地做出決定的分類器?
-3
A
回答
0
一般分類速度不應該是一個問題。一些例外是具有時間複雜度的算法,這取決於您訓練樣本的數量。一個例子是沒有訓練時間的k-Nearest-Neighbors,但是爲了分類,它需要檢查所有點(如果以一種天真的方式實現的話)。其他的例子都是與內核一起工作的分類器,因爲它們計算當前樣本和所有訓練樣本之間的內核。
許多分類器使用特徵和學習係數向量的標量乘積。幾乎在所有情況下,這些應該足夠快。例如:Logistic迴歸,線性SVM,感知器等等。見@lejlot的答案是一個不錯的名單。
如果這些速度仍然太慢,您可能會嘗試先減小特徵空間的尺寸,然後重試(這也會加快訓練時間)。
順便說一句,這個問題可能不適合StackOverflow,因爲它是相當廣泛和推薦,而不是面向問題。下次可能試試https://stats.stackexchange.com/。
0
有很多分類,其快速的方法,你可以更或以下面的方式通過分類速度少排序模型(第一批 - 最快,最慢的最後所)
- 決策樹(尤其是與有限的深度)
- 線性模型(線性迴歸,邏輯迴歸,線性svm,lda,...)和樸素貝葉斯非線性模型基於顯式數據變換(Nystroem核近似,RVFL,RBFNN,EEM),核方法(如核SVM)和淺層神經網絡
- 隨機森林和其他委員會
- 大型神經網絡(即。 CNN)
- KNN任意距離
顯然這份名單並不詳盡,它只是顯示一些基本的想法。
獲得這種模型的一種方法是建立一個複雜的慢模型,然後用它作爲黑盒子標籤生成器來訓練一個簡單的模型(但是在潛在的無限訓練集上) - 從而以成本獲得快速分類器非常昂貴的培訓。有很多作品表明,例如,通過在深度nn的輸出上訓練淺層神經網絡,可以做到這一點。
相關問題
- 1. Tkinter .after()沒有足夠快速地響應按鍵
- 2. 沒有能夠解決的com.google.appengine.tools.cloudstorage.GcsFilename的Eclipse
- 3. Mozilla Firefox瀏覽器沒有足夠快速存儲Cookie?
- 4. 具有快速地圖/縮小功能的NoSQL解決方案
- 5. 非常慢的宏,沒有它更快?
- 6. 快速服務器404ing從索引做出的所有請求
- 7. PHP7很慢,沒有配置非常快
- 8. 做的rails有'response.write',想做一個動作的快速輸出
- 9. 有沒有Flex(「快速LEXical分析儀」)調試器?
- 10. 爲什麼AS3中的定時器功能不夠快速地更新0.05秒?
- 11. 快速有效地重用類
- 12. AppleScript的,因爲它沒有加載速度不夠快
- 13. cocos2d的問題 - 層沒有更新速度不夠快,
- 14. 紅寶石 - 地理編碼的API沒有響應速度不夠快
- 15. CppDepend.Console.exe非常快速關閉
- 16. 幀速率非常高的複用器不能有效地支持它
- 17. NG-風格沒有更新速度不夠快
- 18. 我需要知道如何非常快速地執行非常特定的按位功能
- 19. MySQL的PHP的查詢有時非常快ANSD有時非常非常慢
- 20. $(window).scrollTop();沒有足夠快的解僱
- 21. 有沒有可以快速合併的地圖數據結構?
- 22. ViewPager沒有快速響應
- 23. 沒有排序快速JSON
- 24. self.userInteractionEnabled = FALSE沒有激活得足夠快..任何解決方法?
- 25. 如何在有非常大的數據庫時快速登錄?
- 26. 有非常好的庫來做非負矩陣分解(NMF)嗎?
- 27. 你如何對編碼任務做出非常快速(和骯髒)的估計?
- 28. iPhone:快速枚舉,速度不夠快?
- 29. 有沒有快速註釋某個功能的工具?
- 30. 沒有能夠解決一個運行時異常,在我的項目