UFLDL向量化程式設計練習 遇到問題

2021-06-23 05:17:00 字數 457 閱讀 8721

本以為ufldl的向量化程式設計一節沒有什麼知識點,只是matlab技巧而已。不料程式設計遇到的麻煩令人頭大。

首先,**上提供的讀入mnist資料的matlab程式就執行不了,一執行就是記憶體溢位錯誤(out of memory)。想盡辦法折騰,這個問題還算解決了。

其次,引數優化過程中也有記憶體溢位錯誤,即執行minfunc函式時記憶體溢位,想了兩個辦法,一是用global變數,把樣本設成全域性變數,不用在函式呼叫間帶來帶去多佔記憶體,結果改進不大,原來執行10來個迴圈後溢位,延長到了20來個迴圈還是溢位;其次是減少樣本數,從10000降到1000,再到100,還是溢位。沒轍了。

溢位報錯都在minfunc函式內部,找過去有上千行的**,怎麼讀得明白!

懷疑是待優化引數造成的溢位308308個引數,越迴圈保留的舊值越多,記憶體開銷越大。只是不知道該怎麼驗證。

作業系統是win 8,記憶體2g;matlab版本是2011b。機器過時了嗎?

機器學習 numpy向量化程式設計

numpy 提供了專門的矩陣資料結構和線性代數庫,完全實現了向量化程式設計 import numpy as np from numpy import mylist 1,2,3,4,5 a 10 mymatrix np.mat mylist print a mymatrix 輸出結果為 10 20 3...

R語言的向量化程式設計思維

1.計算缺失值比例 perna mean is.na data1 2.按值替換 which返回值是符合條件的下標 naidx which data2 3 data2 8 data2 naidx na 3.找到連續不變且長度超過50的數值片段的起 始行號和片段的總長度。judger1 x v 2 nr...

機器學習014 Python中的向量化程式設計

我們推薦使用向量化的形式進行編碼,盡可能避免使用for迴圈而採用向量化形式。對於機器學習領域廣為使用的python語言而言,沒有內建對於矩陣 向量的支援,畢竟python是一門通用語言。但是,借助一些第三方庫 數值線性代數庫 如下面的numpy,我們也可以很容易的處理向量數值運算。numpy是num...