Bag of ML Words

ML = Machine Learning, Music Love, and Miscellaneous things in daily Livings

小技:linuxでn行おきに何かしたいとき

awk使うマン! # 3行おきに出力 cat file.txt | awk '(NR%3==0){print}' # 10行おきに改行入れる cat file.txt | awk '(NR%10==0){$0=$0"\n"}{print}' qiita.com

読みました:年収は「住むところ」で決まる ─ 雇用とイノベーションの都市経済学

shoeihidoさんの sla.hatenablog.com に触発されて、「年収は「住むところ」で決まる-─-雇用とイノベーションの都市経済学」 を買って読んでみました。 結論:かなり面白かったです。読む価値あります。 すらさんありがとう!良い本に出合いました! だいた…

Installing CUDA8+CUDNN5.1+Torch on CentOS7 (Japanese/English mixed post)

ほぼ真っ白なCentOSだとあまり情報がないので、自分用のメモもかねて忘れないうちに。 I found there are few posts about CUDA8 + GPU-enabled Torch on 'vanilla' CentOS. Hope this post helps somebody... 基本ライブラリ群のインストール (Installing v…

C++学習記(5): boost mpi (+openmpi) on multiple CPUs (machines)

Boost MPIに複数コア分散計算のお仕事は終わったので、いよいよ複数マシンによる盛大な負荷分散をやろうと思う。 簡単じゃない?簡単じゃない hostsを指定するファイルを作って # nodes_for_MPI.txt host.1.xx.yyy cpu=4 host.2.xx.yyy cpu=2 mpirun起動時に…

C++学習記(4): boost mpi (+openmpi)

ようやく本来の目的であった並列計算に。 最初はOpenMPによるお手軽並列計算を使ってみたのですが、メモリの共有の切り分けがうまくいかず、並列度を上げれば上げるほど遅くなっていく残念な結果に・・・ ということで、結局急がば回れ、MPIでちゃんと書くほ…

C++ 学習記(3): vector

C++といえばvectorというくらい、配列は全部vectorにするのがいいっぽい。 どこで見たのか覚えていないのですが、webで見つけた資料を基に vectorの挙動を調べるためのコードを書きました。ふーんって感じ。 *1 #include <iostream>#include <vector>#include <string>using namespace </string></vector></iostream>…

C++ 学習記(2): cmake

IDEが使えない可能性を考慮して、C++はlibtool chainかcmakeで何とかしようと思っていた。 で、とりあえずcmakeが簡単そうだったのでやってみる。 情報源は ごく簡単なcmakeの使い方 - Qiita Learning CMake <-- これ素晴らしい! いま、cmake_testというデ…

C++ 学習記(1): まずは環境確認整備

業務の都合でいままで書いたことのないC++を使わざるを得なくなった。 業務のほうは既存のC++コードを書き換える方向なので、まあなんとかなるだろうと思っているんだけど、スクラッチから起こすことができないので makeの書き方も-Iや-Lオプションの意味もa…

Linux便利コマンドの覚書

コマンドラインでいろいろ文字列処理できるよっていうね。 常にpythonやperlさん使うより、覚えていたらずっと早かったりする。 そこで、便利だったコマンドを、実際の自分のusageに即してメモする。 というか100本ノックの第二章やってるだけです www.cl…

screenの使い方!

実に10年ぶりくらいぶりにマシンをつけっぱなしにできない状況になったので、改めてscreenを再勉強。 screenの特徴は、一つのターミナル画面上で番号の切り替えで多数のセッションを作ることだけど、もう一つの特徴として「セッションはバックグラウンドで…

Cygwin <--> Poderosaの鍵の流用不可能?

www.mk-mode.com の一番最後にあったのですが、 タイトルの通りなんですかね・・・ せっかくcygwin入れたのに。

ansible導入テスト(Docker, Jenkinsへの道 on Windows(3))

続いて、構成管理ツール(?)であるansibleを試す。 ansibleのほうがchefよりも後発でネガをつぶしているのと簡単構成向きらしい。 試す qiita.com これにならって、サーバ二つ構成の最小セットアップをvagrant + virtual box上に構成、そこで片方のサーバ…

「オブジェクト指向と10年戦ってわかったこと」が素晴らしかった

qiita.com これです。 自分はJava使い*1なのですが、オブジェクト指向の価値を全然活かせていないなぁと常々思っていました。 色々原因がありそうですが、この記事にあるようにしっかり考えてないからだ、ということがわかりました。 幾つか、自分に刺さった…

Ubuntu-based Docker imageでDocker初体験(Docker, Jenkinsへの道 on Windows(2))

最初はvagarnt上のcentosで改めてvirtual box, vagrant, そしてdockerと思っていたのですが・・・ こけたので、バイパスルート。 とりあえずvirtual vox + vagrantができたのでcoreosを落としてきます。 それには初めからdockerあるらしいので!(あるだけだ…

Vagrantで仮想マシンぽこぽこ(Docker, Jenkinsへの道 on Windows(1))

ちょっとアレでアレなので、DockerとかJenkinsとかいう流行りものを触るだけでも触っておきたい*1という動機が出てきました。 で、いろいろ調べると、こういうものは仮想開発環境による開発/テスト/サービスデプロイ環境の環境同定・構築のために使うのが基…

有益情報ですね(VMware + Ubuntu on Windowsとか)

埼玉大学の後藤先生(http://www.ke.ics.saitama-u.ac.jp/)が、ご自身の研究室HPで公開されている、「研究室メンバー向け」コンテンツが非常に良いです。 特に、「Ubuntuで作業環境を整えよう」(http://www.aise.ics.saitama-u.ac.jp/~gotoh/HowToUbuntu…

JUnitよちよち歩き on IntelliJ Idea

itelliJ idea上でJUnit4使ってテストコードを書くという練習。 基本的に"JUnit 実践入門"の第一章をreproduceするのが目的。 JUnitのjarをゲットする なにはともあれ、JUnitのjarをゲットしましょう。 junit-4.12.jarとhamcrest-core-1.3.jarをゲットしてお…

moses on Cygwin/Windows

いまちょっと個人的にstatistical machine translationに興味があるので、とりあえずmosesをインストールして動かしてみよう!ってなった。 まずはありものの言語モデル等でmosesを動かすことが目標。 あと仕事じゃないので家のWIndows、すなわちCygwin環境…

Binary DNNs: articles(自分のメモもかねて)

岡野原さんのツイートで、binary netが話題になっていますね。重みも出力もすべて1 or -1に制限しても、性能が落ちずに計算が早くなると話題です。 [1602.02830] BinaryNet: Training Deep Neural Networks with Weights and Activations Constrained to +1 …

Topic modeling survey on pattern recognition perspective

トピックモデルのサーベイ講演したので貼っておきますね。 複数のパターン認識応用の立場でサーベイした話はたぶんないので価値あると思います。詳細版はPRMUの2015年12月予稿を入手(購入)してください。 さて、これを英語論文化しないといけないわ…

魔王様おもしろいよねぇ、ついていきます

娘が生まれて、そのお世話でほぼすべての時間を使いきっていました。 タイトルは、残りわずかな時間ではたらく魔王さま!を読み返して思ったこと。 アムスラムスちゃんを見る目が完全にパパ視線になっていることを自覚。 そろそろ続巻を買い揃えていかないと…

Gartner Hype Cycle 2015の話を読んで、10年間分まとめた

ハイプサイクル(Hype Cycle)は、Gartnerの使っている有名な技術トレンドですね。 技術に対する期待値の趨勢を 黎明期 --> 流行期 --> 幻滅期 --> 回復期 --> 安定期 に分けて絵にしたやつで、毎年公開しています。 今年のレポートは <a href="http://www.gartner.com/newsroom/id/3114217" data-mce-href="http://www.gartner.com/newsroom/id/3114217">Gartner's 2015 Hype Cyc</a>…

PDFのワードカウント (word counting of PDF files)

論文を英文添削に出す際など、word countで値段が決まる業者が多数あるのですが、 PDFってword countないんですよね。 かといってtexソースファイルはたくさんコマンドがあるので正しくカウントできないことは明白です。 じゃあどうするかなんですが、 PDFを…

Oriol Vinyals, Quoc Le, "A Neural Conversational Model" (arXiv:1506.05869 [cs.CL]) ざっと読んでの(非専門家の)感想

一部で話題のこの論文、 [1506.05869] A Neural Conversational Model ざっと読んでみました。 なお、私は対話モデリングの専門家じゃないので、 評価は大外ししている可能性があります。そのへんは自己責任で。 3行でまとめ NIPS2014で提案された「任意長…

ユニットテストについて(情報まとめるだけ)

記事のスペースで集めておくのも申し訳ない気がしますが。 職業プログラマではないので、テストを「強制」される機会がなくてなあなあにしていたのですが、どうもそうも言っていられないような感じがしてきた(気のせい)。 ということで、少し役立ちそうな…

python: ソート(sort)

いつもソートのやり方で迷うので,まとめておくことにしましょう。 基本の挙動 リストでもndarrayでascendします。 >>> a = np.random.rand(10)>>> aarray([ 0.32496596, 0.74999976, 0.77499606, 0.20691008, 0.307734 , 0.72823673, 0.28689177, 0.4067034…

実は3曲目を投稿していました

コメントもマイリスもさらに減っています まあ、コメントやマイリスが欲しくて音を作っているわけじゃないですけど。 ないですけどね!!

LaTeX: 図に対する文章の回り込み

普通に真ん中とかに図を置くのじゃなくて、絵の周りに文字が回り込むようにするには、wrapfigureを使えば良いよ。 lkj;lkj;lkj;lkじじょmどkめj;lkぽ ------------------ asdfkjlkjlkjlkdsjfoijl ---- figure ----- akjlkjlkjlkjljeiljfljhljkj --------…

OpenCV python(anaconda)でインストール Ubuntu 14.04

(前のエントリの日本語バージョン) Ubuntu14.04でOpenCV pythonラッパをインストールしました。 普通のpythonライブラリじゃなくてAnacondaを使ってるので、それようにオプションとか変えないといけないところで主にハマってました。 参考となるページ 1. I…

OpenCV python wrapper install on Ubuntu 14.04 (w/ anaconda)

I tried many and finally succeeded in installing OpenCV python wrapper on Ubuntu 14.04. I use the Anaconda package for the main python library, thus all python-related dependencies would watch for the Anaconda package directory. That was t…

Python: 外部コマンドの呼び出し方

普段はos.system('command')を使っていたのですが、 pythonで外部のシェルスクリプトやコマンドを実行する方法 - Qiita pythonで外部のシェルスクリプトやコマンドを実行する方法 - Qiita これによると、commandsパッケージ使ったほうがいいみたいですね。 …

Cython

Cython使ったことないんですけど。前はnumba使ったんですけど、 指導している子によると使える範囲せまいらしいので、 やっぱCythonかな~って。 というわけで@taki_taki__くんのブログエントリをメモっておく そもそもomakeを知らないというところから始め…

Java: args4jによるコマンドラインのパース

今まではString[] argsを使ってたけど、 今後はこれで決まりっぽいな。各種フラグを簡単に指定できるようになるのはいいね Parsing command line options in JDK 5.0 style: args4j | Java.net

優先度とToDoリストによる仕事の効率化について:私に欠けていた1つのポイント

自分は仕事が遅いという自覚があり、ずっと悩んでいるので仕事術の類の記事は色々読んできました。仕事柄、とくに研究についてのものが多いですが。 それらの中でも、実に多くの記事が 「ToDoリストを活用せよ」 と言っています。色々なやり方がありますが、…

NIPS 2014 所感とか概要とかまとめ

今年はワークショップに論文とおったのでNIPSに参加してきました。 会社への報告書をまとめたので、利益背反(?)にならない範囲&&個人的趣味のフレーバー載せて所感書いてみますね。 概要 NIPSなにそれ美味しいのって方はそもそもこの記事読まないと思い…

Ubuntu14インストールとトラブルメモ

Fedoraやめて懐かしのdebian系列Ubuntuに乗り換えました。 安定安心のdebian系列。 Acrobat どうも最新のstableにはacrobatは無くなったらしい。ということで古いパッケージをとってきてインストールするようです。 ここにあるようにすればOK.足りないso…

Python: try-Exception (javaみたいだな・・・)

有益情報を見つけたので保存していこうかなと。 本当に、try-exceptionはちゃんと書くべきだよね!っていう。 Pythonでtry exceptの書き方と、エラー内容の取得方法 - Symfoware

Python: Numbaによる高速化

同僚のpython expertにNumbaの存在を教えてもらいました。 Examples — numba 0.14.0-63-ge5ceea5 documentation 事前のコンパイルがいらないってのはよろしいですね。 必要そうな関数レベルだけで書けば良さそうだし、exampleみると大体使い方がわかったよう…

Python:: matplotlibのファイル出力設定

どうもmatplotlibでepsを吐き出すと (Matlabに比べて)異常にファイルサイズが大きい フォントが埋め込まれてないのでイラレで修正しにくい プロットの線とかのオブジェクトの判定もわかりにくい の三重苦になって、もっぱらテキストに書き出す-->matlabで描…

東大名物教授がゼミで教えている(研究者)人生で大切なこと

小町先生のブログ 2014-09-06 - 武蔵野日記 で紹介されていた 「東大名物教授がゼミで教えている(研究者)人生で大切なこと」 を買ってみました。 まだ第1章(本の読み方)しか読んでないですが、この章だけで研究者的には元取った気がします。 メモはとに…

Graph spectral theoryのお勉強

ぢつは勉強したことなかったのですが、ちょっと必要ぽいので良いlecture noteを探していたところ、「他の教員の講義の元ネタになる講義ノート」を発見したのでメモ。 Spectral Graph Theory, course announcement YaleのDan Spielman先生のやつ。 一通り落と…

Python: urllibはやっぱりなし。requestsを使いましょう

昨日のエントリに対して n4_tさんが "requestsがいいですよ" とさっそくコメントくださったので試してみました。 もっと簡単でした。 Requests: HTTP for Humans — Requests 2.4.1 documentation urllibだとこうすれば良い import urllib import urllib2 # #…

arXivへの投稿について

いやー死んだ死んだ。 主に画像周りで。 EPSのサイズ大きすぎ!って言われたのでpngに直したりしてたら、 普通のEPSをコンパイルできなくなったり。 どうもgrpahicsに対してdvipdfmxオプションは効かないらしい。 なので、画像epsは全部PDFにして、dvipdfmx…

Python: urllib, urllib2でページいじれるの?

研究・・・ではない仕事でちょっと試したくなったので、テクニシャンの方に相談してちょっと調べたら、pythonはweb叩くのもライブラリ全部そろってるんですね・・・ 素晴らしい。 urllib, urllib2というライブラリで解決するのか・・・ 20.5. urllib — URL …

土曜日は

QoL高くなり気味なので嬉しい。この状況がいつまで続くか分からないけども・・・ 最近はようやく音楽もできるようになりつつある。トロイメライの練習を開始。あとボカロの調声。いま取り組んでいる(といっても1年以上か・・??)のはデュエットで、今…

Python: Cythonやらなければ

予備実験ですら二進も三進もいかない状況になりそう・・・ 個人的メモとして、参考になるページのリンクを張っておきます。 公式のチュートリアル(英語だけど十分よめる) Working with NumPy — Cython 0.20.2 documentation これを読んで試してくれた人の…

git shell上でエイリアスを設定したい

おうちでのpython環境はwindowsでgit shellからipython notebookでやる本を買ったのですが、毎回 ipython notebook --pylab=inlineっていうのも面倒なので、エイリアスを設定しようと思います。 ちょっとググったらすぐ見つかりました^^ Windows Powershell…

Python: Pycharmのテンプレートの作り方

生活環境激変により少々つらい日々です。本当にシアワセになれるんでしょうか・・・?不安だ。 Pycharmのテンプレートの作り方とか例があったのでメモです。 Jump if overflow: PyCharmのテンプレートで使える変数 JetBrains本家のページも見つけた。こっち…

Python: リスト内包表記(List Comprehensions)

えー、気づけばずいぶん書いていませんね・・・。 書きたいことのストックはあって NIPS13のRapid distance-based outlier detectionの解説 Bayesian for Hackersの続き ぐらいは書く時間さえ取れればかけるんですけど・・・*1 でも久々に書きます。 Python…

うーむ

結構、疲れがキテるかも知れない・・・ 肉体的にも精神的にも。 まあ、長くてもあと2週間なので、 NIPS出してトークしたらキーボード買い換えるぞ!(宣言) それを励みに頑張るのみ! ・・・えーーーー、さる事情により延期となりました・・・・・・