Pylearn2でニューラルネットワーク(python3 + mac)

Pybrainのニューラルネットワークが遅すぎたので(Cで実装されたR nnetの100倍くらい?)、Deep learningで有名なPylearn2を使う。(CやGPU利用で高速化されている)

 

1. 依存ライブラリのインストール

Theano, Cythonをインストール。Theanoはpip3でインストールするとpython3かCコンライラ関連でエラーになるので、gitから直接インストール。

$ pip3 install --upgrade --no-deps git+git://github.com/Theano/Theano.git
$ pip3 install Cython

 

2. Pylearn2のインストール

公式ドキュメントに従って進める。

$ git clone git://github.com/lisa-lab/pylearn2.git
$ cd pylearn2
$ python setup.py develop

 

3. ニューラルネットワーク

Pylearn2は通常YAML形式で構造などを記述するが、慣れないのでここGist)を参考に普通のPythonコードっぽく構築する。

print文だけ、python3の形式に変更する必要がある。

 

参考

Vimのカラースキーマを変更する

画像

Vimのカラーを変更する。

 

1. カラースキーマのダウンロード

ここで紹介されている人気のmolokaiをダウンロード。

 

2. スキーマの設定

$ mkdir ~/.vim/colors
$ mv molokai.vim ~/.vim/colors/

~/.vimrcに以下を記載

colorscheme molokai

3. 設定後

スクリーンショット 2014-12-08 0.03.58

参考

Vimでpython開発環境を準備する

mac + vimでpython3の開発環境を準備する。(python3自体のインストールは$ brew install python3)

1. vimのインストール

macにデフォルトでインストールされているvimはクリップボード連携がサポートされていないため、homebrewでvimをインストールする。

この際、単純brew install vimだとpythonがサポートされていない(jedi-vimで必要な)ため、以下のオプションでインストール。すでにbrewでインストール済みの場合は事前にbrew remove vimする。

$ brew install vim install --enable-interp=python,python3

pythonをサポートしていることを確認。+pythonならサポート。-pythonだとサポートしていない。

$ vim --version | grep python
+python

 

2. プラグインのインストール

このエントリーのNeoBundleで下記のプラグインをインストールする。

  • quickrun → コードの簡易実行
  • jedi-vim → 入力補完
  • syntastic → 文法チェック
  • unite → unite-outlineに必要
  • unite-outline → アウトライン表示(originalの’h1mesukeha’はメンテナンスされていないためuniteのauthorのShougo/unite-outlineを使用)

3. quickrunの設定

.vimrcに下記を記載。実行時に縦分割でなく、横分割する。

let g:quickrun_config = {}
let g:quickrun_config = {'*': {'split': ''}}

4. jedi-vimの設定

mac + brewインストールのpython3を使用している場合、jedi-vimから呼び出されるpythonがdefaultのpython2.xを利用していることがあるのため、~/.vim/bundle/jedi-vim配下で以下を実行。

$ git submodule update --init

5. unite-outlineの設定

unite-outlineをctrl + oで実行できるようにする。.vimrcに以下を記載。

nnoremap <C-o> :Unite -vertical -no-quit -winwidth=32 outline<Esc>

6. 設定後

スクリーンショット 2014-12-08 0.06.58

参考

Vim PluginをNeobundleで管理する

Vimの管理にVundleを導入して、管理を容易にする。

1. インストール

公式のマニュアルに従って行う。

$ mkdir -p ~/.vim/bundle
$ git clone https://github.com/Shougo/neobundle.vim ~/.vim/bundle/neobundle.vim

~/.vimrcに以下を追記。今回は、quickrun, jedi-vim, syntastic, unite-outline(requiring unite)を管理対象にする。

" Note: Skip initialization for vim-tiny or vim-small.
if !1 | finish | endif

if has('vim_starting')
  set nocompatible               " Be iMproved

  " Required:
  set runtimepath+=~/.vim/bundle/neobundle.vim/
endif

" Required:
call neobundle#begin(expand('~/.vim/bundle/'))

" Let NeoBundle manage NeoBundle
" Required:
NeoBundleFetch 'Shougo/neobundle.vim'

" My Bundles here:
" Refer to |:NeoBundle-examples|.
" Note: You don't set neobundle setting in .gvimrc!
" Run commands quickly
NeoBundle 'thinca/vim-quickrun'
" autocompletion
NeoBundle 'davidhalter/jedi-vim'
" syntax checking plugin
NeoBundle 'scrooloose/syntastic'
" Outline plugin
NeoBundle 'Shougo/unite.vim'
NeoBundle 'Shougo/unite-outline'

call neobundle#end()

" Required:
filetype plugin indent on

" If there are uninstalled bundles found on startup,
" this will conveniently prompt you to install them.
NeoBundleCheck

2. 実行

vimを起動するか、起動時にインストールNoにした場合は起動後に以下のインストールコマンドでインストール可能。

操作 コマンド 備考
インストール :NeoBundleInstall
アップデート :NeoBundleUpdate
アンインストール :NeoBundleClean .vimrcの記述削除後に実行

 

参考

カテゴリー: Vim

Vim

モード変更 挿入モード i
挿入モード(右側) a
挿入モード(下に行追加) o
 ファイル 開く :e ファイル名
文字コードを指定して開き直す :e ++enc=文字コード
文字コードの確認 :set enc?
移動 ファイルの先頭 1G
ファイルの末尾 G
行の先頭 ^
行の末尾 $
指定行 行番号gg
編集 範囲選択 v
コピー y
カット(=削除) x
ペースト p
検索/置換 検索 /
置換 :%s/from/to/gc
%を外すと行単位で置換
取り消し 取り消し u
取り消しの取り消し Ctrl + r
ウインドウ操作 縦に分割 Ctrl + w, s
横に分割 Ctrl + w, v
別のウィンドウに移動 Ctrl + w, Ctrl + w
閉じる Ctrl + w, o
バッファ 一覧表示 :ls
表示 :b バッファ番号
閉じる :bd
 補完 前出の単語  Ctrl + p
後出の単語  Ctrl + n
ファイル名 Ctrl + x, Ctrl + f
マーク 付与 m[a-zA-Z]
移動 m マーク名
一覧表示 :marks
直前の編集行へ移動 ‘.
ジャンプ元の行へ移動
その他 外部コマンド実行 :!コマンド
実行の結果の貼り付け :r!コマンド
カテゴリー: Vim