DISTRICT 37

なにか

QtConsoleを使う

jupyter notebookを普段使って書いているのだが、QtConsoleなるツールがあることを知った

f:id:dragstarclassic:20170911130213j:plain

シェル(ipython)上でグラフとか出せちゃうってツールだ。これはかっこいい。

QtConsoleのインストールと実行

公式ドキュメントはコチラ。

The Qt Console for Jupyter — Jupyter Qt Console 4.3.1 documentation

anacondaを使っていない場合はこんな感じでインストールできる

pip install pyqt5
pip install qtconsole

公式ドキュメントにはcondaなら一撃でインストールができると書いてあったが、その環境は作ってないので、一つ一つインストールを行った。ちなみに現在(2017/09/11)ではpyqt4はpipになかったので、pyqt5を選択。

インストール後はこれで実行

jupyter qtconsole

コアはjupyter notebookなので、「%matplotlib inline」とかの呪文が無いとグラフは表示されないので注意。上にあげた画像は日本語が豆腐化しているので、その対応もやらないと日本語は出ない。

dragstar.hatenablog.com

ちょっとしたコードを書いて、グラフとか表すにはこれで十分かも。シェル上にグラフが出るのはうれしいが、それでもブラウザで動かすjupyter notebookの使いやすさには敵わないかなという印象。

ゲストOSのDjangoサーバーをホスト側のブラウザで見る

やりたいことは表題の通り

前にJupyterの記事にDjangoのためにポートフォワーディングの設定をしたと書いたが、実際のやり方を忘れたので備忘録的に

dragstar.hatenablog.com

解決策

Djangoのデフォルトポートは8000でポートフォワーディングの設定の時にそれを入れるだけではだめだった。で、jupyterの時と同じように、アクセス可能なIPを指定したらいい。具体的にはこんな感じで

python manage.py runserver 0.0.0.0:8000

Django側のポートを変えたければこう書いたらいい

python manage.py runserver 0.0.0.0:8500

あとはヘルプを見るとか。

python manage.py runserver -help

といいてもヘルプにはこのあたりが書いてないから、直接Documentを漁るのが一番早いかも

Django documentation

これで解決。

Ubuntu16.04でapt updateに失敗する

現象としてはapt updateしたときにこんなエラーが出たところから始まる

E: http://jp.archive.ubuntu.com/ubuntu/dists/xenial-backports/main/dep11/icons-64x64.tar の取得に失敗しました  ファイル /var/lib/
apt/lists/partial/jp.archive.ubuntu.com_ubuntu_dists_xenial-backports_main_dep11_icons-64x64.tar.gz をオープンできませんでした -
open (13: 許可がありません)

調べると「許可ないってエラーメッセージ出てるじゃん!ちゃんとrootでやれ」みたいな解決法がずらずらと。そんなもん当然rootでやってるっつーの!!

解決?

ということでackubuntuより解決(?)法を引用

askubuntu.com

以下の通りコマンドを打てばいい。回答者曰く「The easiest way to fix this is」とのこと

sudo apt-get clean
sudo apt-get update

無事にエラーはでなくなった。けどこれはうまく、、いったのか?なんとなくキツネにつままれた気分。

Kaggleに挑戦

まえまえからやってみたかった

始め方

とっかかるにあたって、ここを参考にした

qiita.com

今はKaggleのマイナーバージョンアップにより、微妙に違っているところもあるし、これからも変わっていくのだろうけど、まぁ迷わずに進められると思う。

RapidminerでNNET

今回は感触を確かめる意味でもRapidminerのニューラルネットワーク分類を使ってみた。プロセスフローはこんな感じ。

f:id:dragstarclassic:20170725090809p:plain

TrainデータとTestデータを読み込んで、欠損値やらなんやらごちゃごちゃと前処理をしたのち、NNET分類器のモデルにかけて結果を確認。あとはCSVに書き出すと、いわゆるデータ分析のシンプルなフロー。分析のプロセスが簡単すぎて、結果が逆に心配になるレベルで完了する。

結果

結果はスコア0.76077で5501位(2017/07/05時点)。7割の正答率といえば聞こえはいいがこのランキングなので、目標の0.8オーバーまでははるかに遠く、高い壁がある事がわかった。NNETのパラメータをもう少しいじれば変わるのかどうかは試していないのでわからない。しかしスコア1.0とか出している人はなんなんだろう?つまり全問正解って事だろ?本当に分類器つかったのかなぁと疑問になる。次はちゃんとpythonとかつかってやってみてスコアを出してみようかと思う。もし今回出したこのスコアより低いとなるとまだまだ甘いんだなと思い知らされることになるだろう。

お楽しみはこれから

Kaggleを眺めていて何よりも楽しいのは「ほかの人はどうやったんだろう」というのが見ることができることだ。「Kernels」というのがそれで、実際にコードが確認できる。pythonだったりRだったりとそれぞれだが、思考のプロセスやコードのテクニックなんかを見ることができて、これを写経するだけでも本当に参考になる。rapidminerみたいなのはコードを書いていないから投稿できないんだろうなぁ、、、すまねぇ、、ずるしてしまって、、、

「Discussion」では任意に投稿できる掲示板のようになっており、なんかアイデアとか出し合ったりというのを期待していたのだけど、メン募みたいなスレッドが乱立しているのが残念。タイタニックのCompetitionにかぎりだろうか?

他にも懸賞金がかけられているCompetitionがあり、1万ドルから100万ドルのものまである。データ分析はまだまだ夢が広がる分野なんだなぁと実感させられる。

これこそがスパイ大作戦 映画「ミッション:インポッシブル/ローグ・ネイション 」

スパイ大作戦はこうでなくっちゃ

阿里巴巴集団

オープニングにアリババの名前が出てきたので、トランスフォーマーの再来を予感したけど、この作品ではそんなことなかった。しかしながらも中国感はにおわせており、それは「トゥーランドット」に集約されている。さりげないといえばさりげないが、登場する女スパイが何かを話す度に荒川静香でおなじみの「誰も寝てはならぬ」がほのかに聞こえてくるという演出にとどめられている。

トゥーランドット

物語はなんとなくそのトゥーランドットにリンクしているということに、何度か見て気が付いた。トゥーランドットは言ってみれば竹取物語であり、絶世の美女であるトゥーランドット姫が三つの謎かけをだして、答えられた者と結婚を許されるというお話。 映画では謎の美女が登場し、謎が謎を呼ぶ。暗号化されたデータに対して「三つ」の仕掛けをクリアしないと復号できないという、なんとなくテーマを沿った形でなぞっていく。

IMF

カーアクション、バイクアクション、水中アクション、格闘アクションと、アクションフルコースを堪能しながら物語の最後であるボスとのバトルを迎える。ちょっとネタバレになるが、よくあるアクション映画にありがちな主人公の超人的な体術によってボスを倒すのではない。なんならトムはジャッキーチェンさながら、ちょっとずつやられながらも相手を倒すという展開だ。そういったやり取りをしながらも最後は個人ではなく、IMFのチームとしてボスを倒すという展開で決着がつく。しかもそれが物語の最初とリンクしていてもう鳥肌ものだ。お見事としか言いようがない展開で、ほんとうに満足が行く結末だった。

超人による無双も面白いが、オーシャンズイレブンとか、Aチームとかチーム感のある映画が好きだってことに気づかされる。思えば戦隊モノとか好きだったなぁ。

ジョリビー・フーズが19年に日本進出へ

フィリピンにいるときに何回か行ったなぁ

www.manila-shimbun.com

小腹がすいたときに屋台で買うチキンもいいけど、こういうジャンクフードって無性に食べたくなる時があるんだよね。でもマクドナルドは高いし、、、。ということで選ばれるのがこれ、jollibee。なんといってもマスコットがロナルドに負けず憎たらしい顔をしている。

f:id:dragstarclassic:20170705095213p:plain

名前はMr.Jollibeeとそのまんま

味?味はまぁ値段相応ですよ。現地で食べるご飯はやっぱりクセがあるので、こういうジャンクフードを食べるとなんか落ち着く。