Lasagne(n.烤寬麪條),大概是一種美食,是不是就是我們的炒麪或者是焗麪條。
我感覺Lasagne是對Theano的一種封裝。Theano的Symbolic Math非常漂亮,但是可能比較難理解。Lasagne將Theano的封裝了一下,構造DNN的時候,用Lasagne
就基本夠用了,Lasagne的接口就比較容易理解一點。當然,如果你有自己的其他想法,還是需要用Theano來自己實現(甚至Theano也不一定能實現,只能自己寫Python或者C++程序)。
Lasagne據說還沒有正式版本,但是開源的。Daniel Nouri有一個很好的Tutorial,去年12月寫的,可惜我昨天纔看到,相見恨晚。
環境:ubuntu 14.04,Python2.7, 以前已經裝過Theano。
Installation
目前還只能從源代碼安裝。
git clone https://github.com/Lasagne/Lasagne.git # 會建立一個Lasagne目錄
cd Lasagne
pip install -r requirements.txt
sudo python setup.py install # 這一步需要root權限
Daniel Nouri[Tutorial]上是這樣安裝的
pip install -r https://raw.githubusercontent.com/dnouri/kfkd-tutorial/master/requirements.txt。
這樣需要以root用戶來執行,不推薦這樣做。
test on mnist
cd examples
python mnist.py
可以得到下面的結果。(我的機器還是比較慢的)
Epoch 103 of 500 took 11.717s
training loss: 0.045202
validation loss: 0.059163
validation accuracy: 98.16 %%
Epoch 104 of 500 took 11.702s
training loss: 0.046228
validation loss: 0.058582
validation accuracy: 98.14 %%
Epoch 105 of 500 took 11.704s
training loss: 0.044530
validation loss: 0.058295
validation accuracy: 98.18 %%
Epoch 106 of 500 took 11.694s
training loss: 0.045262
validation loss: 0.057991
validation accuracy: 98.26 %%