Package babel Error: You haven't defined the language en yet.

Latexでタイトルのようなエラーが出た. bibファイルの中にLanguageがあると出るみたいなので全部消した. Mendeleyでbibファイルを管理している場合,Property --> Document Details --> Journal Article (もしくは編集したい論文の種類) --> Languageにチェックで編集できる.

ValueError: Found array with dim 3. Expected <= 2

Scikit-learnでこんなエラーが出たら結構面倒なことになる. 0.15から起こるエラーらしくて,sklearnが受け付ける特徴ベクトルをn_samples x n_featuresのみに制限している. つまりXとして,行列しか受け付けないよ,ということらしい.

sklearn.utils.shuffle does not work with arrays of dim > 2 · Issue #4145 · scikit-learn/scikit-learn · GitHub

上のリンクの議論を読むと,たぶん,このままの仕様で進むと思われる. なので,「allow_ndというパラメータをいじる」という暫定的な解決策ではなくて,自分で定義した特徴抽出器,識別器に工夫する方が多分良い.

僕の場合,特徴抽出の段階ではサンプルとして行列(つまり3次元行列)を入力としていたので,入力の段階ではベクトルに直して,抽出器に入力されたときに,頑張ってreshapeを入れた.

こんなふうに仕様がころころ変わるのは解せない.

MacのOctaveでPTBを起動する

よく分からないけど,突然MacのPTBが使えなくなったので検索すると以下のページが出てきた.

4 MacのOctaveでPTBを動かすときの注意点

これによるとOctaveを起動する前にDYLD_LIBRARY_PATHの設定が必要なようだ. 僕の環境の場合,HomebrewでOctaveをインストールしたので,

>> export DYLD_LIBRARY_PATH=/usr/local/lib/octave/3.8.X

とすれば良かった.

いちいち打つのが面倒な場合は,~/.bashrcや~/.zshrcなどに

alias octave="DYLD_LIBRARY_PATH=/usr/local/lib/octave/3.8.X; octave"

と追記する.

ちなみにiMac 5K retinaだと,PTBは,Screen(0, 'OpenWindow') で引っかかって動かないけど,外部ディスプレイにすれば一応使える. あと,tmux上で起動するとPTB-Warningが何個か出る.

Fatal Python error: PyThreadState_Get: no current thread

Mac OS 10.10上のAnaconda python2.7でSPAMS (SPArse Modeling Software) をインストールするとタイトルのエラーが出てpythonが終了する. 次のようにsetup.pyを書きなおしてインストールすると,とりあえず動いた.

if osname.startswith("macosx"):
    cc_flags = ['-fPIC', '-fopenmp','-m32']
    # link_flags = ['-m32', '-framework', 'Python']
    link_flags = ['-m32']
    libdirs = ['/anaconda/lib'] # 自分の環境のanacondaのパスにする

再びインストールするには,

>> rm -r build
>> python setup.py install

とすれば良い.