fc2ブログ
pylearn2のメモ
pylearn2でdenoising autoencodersを使ったDeep Learningの続報です。
データを読み込む際に、

pyln_data = CSVDataset('file name',delimiter='\t',one_hot=True)

とすると、サンプルが行方向にならんで、1列目がクラス分けになっているCSVファイルからデータを構築できたのですが、いつのまにかone_hot引数がなくなっていました。これがあると、たとえば0/1のクラス分けを[1,0]と[0,1]に自動的に変換してくれて便利だったのですが・・・。ドキュメント読むと自動でやってくれるようなことが書いてありますが、やってくれません。仕方無いので、データの構築は、CSVを介さず、こんな感じでやることにしました。

c = cls[idx].values #クラス分けを格納した1DのArray
d = _data.ix[feature_list][idx].T #行がサンプル、列が説明変数のDataFrame
input_data = DenseDesignMatrix(X=d.values, y=c)
input_data.convert_to_one_hot() #この1行でクラス分けがそれぞれVectorに変換される。
with open('{}.pkl'.format(prefix),'w') as f:
pickle.dump(input_data, f)

最後、fine tuningのときのyamlの設定を変えれば、クラス分けが0/1とかの整数になっていても大丈夫なんじゃないかと思いますが、float64を適切にint64にキャスト出来ませんでした的なエラーが出るので、とりあえず、これで回避。
スポンサーサイト



【2015/01/27 16:30】 | 未分類 | トラックバック(0) | コメント(0) | page top↑
1つのフォーム(form)と2つのsubmitボタン
formが一つあって、その中に二つのボタンがあり、それぞれ少し違った内容でsubmitしつつ、片方は結果を新しいwindowに出したいという、よくあるのか無いのか分からない状況のお話です。

<script>
function openWindow(form){
form.target = window.open("about:blank", "win" + new Date().getTime()).name;
form.output_type.value="csv";
form.submit();
}
function submitForm(form){
form.target="_self";
form.output_type.value="";
form.submit();
}
</script>

<form name="fm1" action="***" method="post">
<input type="hidden" name="output_type" value="">
<input type="button" value="そのまま表示" onclick="submitForm(document.fm1)">
<input type="button" value="CSV表示" onclick="openWindow(document.fm1)">
</form>

新しいwindowがその都度変わるようになっているのは、まあいいのですが、こうして、両方ともJavascriptを使ってsubmitしないと、なぜかうまくいきません。
なんか勘違いなのかもしれませんが、まあ動いているのでよしです。

【2008/01/05 17:39】 | 未分類 | トラックバック(0) | コメント(0) | page top↑
Macで隠しフォルダを表示
MacOSXはUnixとしても使えるので、非常に重宝していますが、デフォルトでは/usrなどのフォルダがシステム所有になっているためか、Finderで見えません。ターミナルでは、普通に
cd /usr
とできるので、不便だなーと思っていましたが、ドット(.)から始まる隠しファイルも含め表示する方法があるようです。ターミナルから以下のコマンドを入力して起動しているFinderを再起動すればOKです。
defaults write com.apple.finder AppleShowAllFiles TRUE
もとに戻したければ、最後をFALSEに。
しかし、/usrなどがFinderで見えるようになったのはいいんですが、Finderでのフォルダ、ファイルの色がしらっぱけてしまって、見にくい・・・
しかも、ホームディレクトリのトップにドットから始まるファイルが膨大に出現。
一方、ターミナルからFinderを、カレントディレクトリを開く形で起動できたらいいなと思っていたところ、それは、
open .
でいけるらしい。
/usrから同様にすると、Finderで普通に開けます。この方が便利です。

テーマ:Mac - ジャンル:コンピュータ

【2007/12/10 11:35】 | 未分類 | トラックバック(0) | コメント(1) | page top↑
| ホーム |