ぱたへね

はてなダイアリーはrustの色分けができないのでこっちに来た

OMEN by HP 15にUbuntuを入れ、GPU有効なTensorFlowを動かす

HP omen 15を買う

DELLのエイリアンと悩んだのですが、最後重さで選んでしまいました。
http://h50146.www5.hp.com/notebooks/personal/omen_hp_15/

本当はもう一回り小さいほうが好みなのですが、値段、GPU、ストレージ容量などで妥協してしまいました。

Ubuntuをインストールする

USBでUbuntuのブータブルディスクを作成しました。これは、いくらでもやり方が見つかるので省略。

BIOSの設定で起動順序を変更する。Legacyなブートを有効にし、USBの優先順位を上げます。
BIOS画面の入り方は、起動時にESCキーです。連打してください。
Ubuntuのバージョンは今良くわからないですが、この記事の日付で最新のものです

ソフトウェアのインストール

pyhtonのアップグレード

sudo apt-get install python3-pip python3-dev

最近のPythonTkinterが標準で入っていないので、気になる人は python3-tk もインストールしておきましょう。やっつけGUIを作るには便利ですよ。

Nvidiaドライバ

Nvidiaのドライバは、「ソフトウェアとアップデート」から、「追加のドライバータブ」を開いてインストールしてください。Ubuntuが動いているノートPCにNvidiaのドライバを入れる方法を検索すると、たくさん情報がでますが、この方法が正解です。それ以外はうまく行かないです。

cudnn

https://developer.nvidia.com/cudnn
から登録してダウンロード。7.5を選びました。

Tensorflowのインストール

最近はテンサーフローらいしですよ。奥さん
ここを見ながら、普通にpip3でインストール
https://www.tensorflow.org/versions/r0.11/get_started/os_setup.html#pip-installation

実行してみる

pythonを起動して、tensorflowをimportする。

natu@natu-OMEN-by-HP-Laptop:~/txt/howm$ python3
Python 3.5.2 (default, Sep 10 2016, 08:21:44) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow
I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcublas.so locally
I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcudnn.so locally
I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcufft.so locally
I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcuda.so.1 locally
I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcurand.so locally
>>> 

こんな感じで表示されれば成功です。

☆2週連続☆秋のTECH祭☆ Deep Learning、Java、ブロックチェーンが集結!

あかん、順番めちゃくちゃになってる。
9/3に行われた2週連続なにわTECH祭の2回目です。
今回も一週間前と同じく会社の同僚に特に来て欲しかったのですが、一般のお客様の方が多くほぼ満員状態で、パソナテック大阪の本気を見せたイベントになりました。

Googleがめざす、誰もが使える機械学習 佐藤さん

今回のイベントで、同僚、上司に一番聞いて欲しかった発表です。いつも、安定した発表で勉強になります。
何気に雑談の中での海外動向はとても面白い。

https://cloud.google.com/ml/?hl=ja
のリリースに期待。

ブロックチェーンのこれまでとこれから 栗元さん

今回のイベントで一番僕が聞きたかった発表。
分かりやすく説明してもらったってのもあるんだけど、ブロックチェーンもどちらかというと実装よりも発想がすごいと思いました。
実際に仮想通貨のポジションを得るには、結局交換所みたいなのが必要になってくるなというのが僕の感想。現実世界を変えるのは、超大手が参入してこないと難しそう。栗元さんの話を聞いてから、日経のニュースを見るたびに「こいつもしかして分かってないんじゃ・・・」的な感じを持てるようになりました。アルゴリズム的には、ビットコインの勝者が一定期間リソースのアクセス権を確保すると考えると、管理者無しのアービター的な動きで何かできそうだがもう少し煮詰めないと。

P2P技術に関しては、日本もWinnyで先行していたので、いろいろなんとかならんかったのかなと。

TensorFlowで趣味の画像収集サーバーを作る 有山さん

眼鏡、眼鏡、眼鏡。今回のイベントで僕のテンションが一番上がった発表。

アニメの女の子画像を集める方法として、なんちゃらbotが紹介されていた。最初はネタだと思っていたけど理由を聞くと納得できる。
聞いただけで納得できるくらいそのbot画像を見ているかといわれると、決して僕がフォローしているわけでなくRTされてくるだけで、特に何の感情もげふんげふん。

最終的に欲しいものが2値であっても、カテゴリーを増やすことで精度が上がる事例。
http://www.slideshare.net/recruitcojp/ss-55725591
ぜひ世界中から眼鏡っ娘画像を集めていただきたい。

この発表を聞いてビジネスとしてDLを考えたとき、半年前は用途に応じたNNを作るのが仕事かと思っていたが、今は用途に応じたNNを選ぶのが現実的と思ってる。そうなると、必要なのは用途に応じたNNを提案できる知識であり、用途に応じてNNをカスタマイズするシステムが必要になってくる。

イメージとしては、16bitのCPUで動かしたいからそこそこの認識精度で軽いNN、とにかくコンボリューション計算を減らして精度があまり変わらないCNN、逆にコンボリューションはハードウェアサポートがつくからコンボリューションはいくら増えても良いけど全体の段数を減らして欲しいとか、そういうのに対応できるとビジネスが広がりそう。

今の組込DLのトレンドはビットをどこまで落とせるかだけど、もう一歩踏み込んだ仕組みが面白いと思う。バッテリーが減ってきたら、計算精度落として消費電力を抑えるとか応用もありそう。

これからのコンピューティングの変化とJava きしださん

今回のイベントで一番ハラハラした発表。
関西の画処理半導体をやっている人たち(関西の有名企業はだいたい参加されてました)の前で、半導体の仕組みを説明し始めるきしださんをみて、マサカリが飛んでこないかドキドキしてました。終わった後に聞いてみたらみなさん評判が良かったようで安心です。
個人的にはもっとJavaについて聞きたかったなあ。俺クラスでも普通の配列が使えるところとかさらっと説明されてましたが、じゃあその配列をコピーした場合の問題点とか、いっぱいありそうでもっと詳しく聞きたかった。が、懇親会でのLTが面白すぎて突っ込むのを忘れてしまいました。

人工知能社会へ向けての”AIネイティブ”教育 浅谷さん

今回のイベントで一番予想外でおもろかった発表。
教育という観点からの人工知能は、まずやらせてみるから入って中学生、高校生の発想がとても面白かったです。

汎用的な人工知能(ロボット)の例として、アトムやドラえもんが来ないのがとても意外でした。キャミィとか長門を押しのけてランクインしていたソードアートオンラインとやらは見ないといけませんね。

今後人工知能が社会に入っていくとして、昨今の原子力のような「よく分からない恐怖」を煽る人たちが必ずでてくるので、正しい判断が出来る人を少しでも増やしていかないといけないですね。

DL用大量データの収集&クレンジングでJob-Hubがお役に立てる理由 株式会社パソナテック Job-Hub事業部

真ん中のスクリーンでは文字が良く見えなくて、左右のモニターを見ていたら、みんなそうだったらしい。
別のイベントと掛け持ちで駆けつけてもらったのに、しばらくはネタにされ続けてました。

データ活用/処理技術 勉強会

https://machine-learning-osaka.doorkeeper.jp/events/50807

行ってきました。MOTEXさんの会場がかっこいいぞ。

パソコン上で行われた操作の履歴を使い、価値を出せないかについて考えてみた。 阿知波さん

ソーシャルとか社内人事系のDeep Learning案件。退職リスク、モチベーション管理、人事評価どれもセンシティブで実際にやってみるのにはハードル高そうです。ただ、僕が思っているDLは最終的に客観的な数値に落ちるもの(識別であったり、エンジンの制御であったり)に対して、モチベーションや退職リスクというのはゴールすら数値に落とせない気がしています。

懇親会で聞いてみようと思ったのですが、自社の社員ではなくクラウドワーカーならどうだろうと思いました。
クラウドワーカーなら、勤務している時間や、次の案件への登録間隔などでモチベーションを数値化できないだろうか、加えて比較的単純作業が多い業務であれば、成果も数値化しやすいと思いました。

詳しくは鹿島先生の本をお勧めしておきます。

ヒューマンコンピュテーションとクラウドソーシング (機械学習プロフェッショナルシリーズ)
https://www.amazon.co.jp/dp/4061529137/

この本最後まで読んだけど感想かけてないな。学部生の教科書レベルなので読みやすかったです><

データの秘匿を目的として、モデル学習の前処理について考えてみた。 平田さん

最初に参加者をエンジニアとビジネスという単位で切り分けたのが面白かった。
業界が変わるとこういうのが聞けるのが面白い。僕達だとエンジニアと営業って分け方だよね。

データをハッシュ化する事でリスクを減らす。やばい、いまいちすごいのかすごくないのかさっぱりわからんし、なんでハッシュ化したら精度が下がるのかも良く分からない(普通のマッピングなら精度そのままでは・・・)

その後に、辞書の作り方がわかったらだいたい分かるんじゃないのって質問がすごい。僕達がCNNのコンボリューション見たらハードウェア化したくなるのと同じレベルで、この人達はセキュリティのテクニックを聞くとまず破りたくなるんだろうな。

発表終わった。同じ資料で4回も発表するのは初めてなので、ちょっと申し訳ない気持ちがあった。
思ったより反応が良かった。楽しんでもらえたようでよかったです。

Kobe.Rの紹介やらなんやら 足立さん

ここも人間関係。次数(人数)、中心性(影響力のある人)、コミュテイィ(クラスタ、派閥)
複雑ネットワーク理論面白そうだった。老後に勉強しよう。
RapidMinerはExcel直読みできるのがうれしい。ちょっと使ってみたくなった。

全体的に、独特のぐだぐだ感が面白かったです。

ふと気づいたら希少なビッグデータを持ってたので、活用を模索してる話。橋本さん

橋本さんは初対面だと思っていたけど、もしかしてGDG神戸で会っているのか。気がつかなくて本当すいません。
ビジネスよりも学術的な価値がありそうでした。

中小企業の現場に、もっとデータ活用を普及したい → やってることの紹介など 中井さん

データ活用の勉強を始めたモチベーションが驚きました。
この人の発表を見ていると、高校生の段階で行列、数列、微積分を習っておくというのは実は大事なんじゃないかと思いました。それと、お金に結構絡んでくる確率、統計。技術大国日本というのは一部の人がすごいことをやるんじゃなくて、普通の人がこんなの当たるわけ無いだろと理解したうえでガチャを楽しむ、似非科学を笑い飛ばしながら水素水をとりあえず買って飲んでみる、そういう状態なのかなと思います。

次の勉強会は僕も参加します。よろしくお願いします。

Tensorflowのチュートリアルを通して、ニューラルネットワークを理解しよう! 宮崎さん

HTMLから勉強し始めたという話がすごかった。
良く似た商標をDLで見つけるサービス、こういうのを国がお金出して補助してあげたらよいのにねと思います。

最後

懇親会は力尽きて行けず・・・
次は万全の体制で臨みたい。

☆2週連続!秋のテック祭 『はじめてのDeep Learning』

https://www.pasonatech.co.jp/skill_up/event/naniwa_tech.jsp
8月27日の秋のテック祭り、2週連続の一週目です。
上野山さん、@kmt_tさん、僕の3人で発表しました。

「TensorFlow を使った 機械学習ことはじめ」

センスタイムジャパンの上野山さんの説明。

いつもながら非常に分かりやすい説明でした。
気まぐれな八百屋さんを題材に、世の中そんな簡単に数式化できるもんじゃないよね。そこでDeep Learningという流れがとても好きです。「ことはじめ」なのでかなり初心者向けにレベルを落としていただいているようで、資料に書いていないさらっと口頭で入る補足がとても参考になって、できるだけ聞き逃さないように聞いています。

実はこの説明を自社のエンジニアに聞かせたくて講演依頼をしたのですが、自社の半導体系のエンジニアからも分かりやすいと評判でした。懇親会ではセンスタイムジャパンの取り組みも少し教えてもらいました。今、関西の注目企業です。

GDG京都でご活躍されているので、他の勉強会でもお話がきけるかもしれません。聞き逃した人は今すぐ予約だ。

Deep Leaningを使った超解像の話

SRCNN (Super Resolution Convolutional Neural Net) の話から、最近話題のGANまで勉強になりました。
実際に超解像をやってどうなったというのが聞けるのがうれしいです。特に画像を綺麗にする系の発表は、資料だけだとどこを見て上手く行ったのかが良く分からないことが多く、着眼点を分かりやすく聞けたのが良かったです。途中で計算量に踏み込んでいるのが組込屋さんらしいなと思いながら聞いていました。

懇親会では、超解像をするにあたって色空間をどうするのかという話が面白かったです。YだけやってUVはそれに合わせる方法とか、そんなのDeep Learningが勝手に独自の色空間でやってくれるよ説と、僕ももっと突っ込んでやってみたいです。

僕の発表

FPGAXと同じです><

FPGAエクストリーム・コンピューティング 第8回

いつの話やねんと突っ込みが入りそうですが、今回も面白かったので簡単に感想を。

各資料はこちらから見れます。
http://connpass.com/event/33859/

1.ドキュンFPGA

中原先生がひたすら面白かった。全方位的に攻撃を繰り出しつつも、非常に分かりやすい説明でした。
日本の大学がクソだから、Verilog書いている暇が無いと言っていた所が良かったですね。弾圧から生まれる文化もあるように、辛い状況の中生産性を高めるノウハウを共有していきたいです。

まじめなところでは、確率的な乗算の話が一番気になっていて、こういうハードウェアに特化したアルゴリズムは注目していきたい。

2、 FPGAによる津波シミュレーション――GPUを超える高性能計算の手法

こちらも大学の佐野先生。とにかく大学の先生は話が上手い、資料がわかりやすい、後の発表者が辛いという特徴がある。
ただし、笑いを取りにいくところで、AKBとか微妙に我々と違っていてアウェイ感はあった。
津波シミュレーションを簡単に説明していただいたが、やっぱりこういうのをやってみたい。
ぜひGPUに負けないような、かつスパコンより圧倒的にコストパフォーマンスの良い物が、一般的に使えるにして欲しいです。

3.FPGAにおけるニューラルネットワーク

日本アルテラ・竹村さんの発表。前二人がすごかったので、やり難いのにありがとうございました。僕はとても助かりました。
特に「これはビジネスの話です」という説明があったのが非常によくて、これで僕もビジネスの話できるわと胸をなでおろしてました。
発表内容は、あえて深く突っ込まずというような内容でこれからに期待です。次回は、Xilinx関係者とAltera関係者はご遠慮いただいて思いっきり話して欲しいです。

4.動き検出のSW実装とHW実装について

僕の発表。前3人と違って、資料が一気に素人っぽくなって、次の人の敷居を下げたはず。
その分、丁寧に笑いを取りに行きましたよ。

CNNの動作でアニメーションしてないの僕だけだよ、クラスのみんなはアニメーションしてたよと会社に言うことで、次回から発表資料のアニメーションを誰か社内で作って欲しい。

今回は、お目付け役として弊社広報が来ていました。最初の二人の発表を聞いて「のりが思っていたのと違うから、この会社の紹介みたいなページ全部今から消して」と無茶振りをされましたが、竹村さんが先にビジネスの話をしてくれたので、事なきを得ました。

5.ライトニングトーク

shinhさんがいない!
shinhさんの同僚っぽい人いわく、いつものことらしい・・・

次回も楽しみにしつつ、次は最新の話題が出せるように仕込んでまーす。

alienware 13にtensorflowを入れようとした時のメモ

NvidiaUbuntu用のドライバは、ソフトウェアとアップデートからインストールできる。

・CUDAをインストールするときに、ドライバのインストールにNoを選択

これだけで1日潰した。ノートPCなので、失敗すると何も画面が映らなくなったり、操作できなくなって辛かった。その時は、Ubuntuのインストールからやり直した。

Tensorflowは、とにかくエラーメッセージで検索するとStackOverflowでいろいろ見つかるので、順番に対応してけばOKだった。

結局、

tensorflow/core/common_runtime/gpu/gpu_device.cc:814] Ignoring gpu device (device: 0, name: GeForce GT 335M, pci bus id: 0000:01:00.0) with Cuda compute capability 1.2. The minimum required Cuda capability is 3.0.

GPUが古すぎるようで動かなかった。新しいGPU付きノートPCがほしい。