神經網路有計算FLOPs計算量的方法,請問svm,dt,xgboost knn 如何計算呢?

時間 2021-05-06 09:40:10

1樓:GorgeousShar

FLOPs是每秒浮點運算次數,但是並不能直接反應計算速度和複雜度,會和核心硬體系統等因素有關。而且框架不一樣計算方式也不一樣,並不是單純比較計算次數的問題。

ML計算複雜度大多是以樣本數量為基礎的方程式。但cnn這種除了input_size還有和網路特點的計算,相比較更為複雜,除非能指定N的大小。

回到這個問題,用一些硬體測試的指令碼可以解決。

2樓:lee

與神經網路不同,傳統機器學習演算法一般通過比較複雜度(計算複雜度、空間複雜度)來衡量模型的好壞。

可以通過演算法的公式進行推導。

可以參考周志華的《機器學習》和李航的《統計學習》。

3樓:Tracing

任何乙個演算法都可以計算計算量,簡單來說就是研究下演算法有多少加減乘除以及記憶體讀取寫回。

神經網路之所以FLOPs很常見,是因為神經網路通常是計算密集型演算法,多少計算量意味著需要多長時間執行,而傳統機器學習演算法大部分不是計算密集型,而且記憶體敏感型,執行時間受限於記憶體頻寬,所以FLOPs沒有多大意義。

還有一種可能傳統演算法是latency約束,就是後乙個操作依賴前乙個操作的結果,計算資源空等和浪費,這種情況FLOPs也沒有意義。

我沒有具體研究過svm演算法結構,至於具體什麼情況題主可以按著思路研究下,我估計大概率是memory或latency bound。

神經網路中的歸一化除了減少計算量,還有什麼作用?

Nango 明楠 梯度下降時,讓模型收斂到正確的地方,而在不同量綱下梯度更新方向被帶偏。並且歸一化到合理範圍有利於模型泛化性 不會訓飛 但是歸一化後的範圍太小就又會削弱表徵能力。夜蘭 機器學習之歸一化 Normalization 鄭小柒是西索啊 1 歸一化之後的資料,能夠減少計算複雜度,加快收斂 2...

FPGA為什麼適合做神經網路的計算加速?

知否知否 其實用FPGA進行加速是一種折中方案,CPU不合適矩陣運算,GPU挺好,只不過對比FPGA來說,各有優劣勢.專用晶元當然會更好,然後現有神經網路技術並不是很成熟,新模型會被不斷提出並得到改進與發展,即使是專用神經網路晶元,對付各種模型,也很難做到通用。吐槽一句 在某些人眼裡,什麼東西都是A...

研究類腦計算,脈衝神經網路以後該怎麼找工作?

聊了下某top2組裡研究該方向的博士也要畢業轉行去工業界,不幹snn了,說明了啥?據說是正常發cnn發不過其他組,只能另闢蹊徑搞個snn,自己組裡實際都沒說服過去,不過這東西好忽悠,十篇總有一兩篇能忽悠上去,好發文章。因為大家都不懂 Yannan 2020 9 19 本人英國直博SNN小博士一枚,今...