計算結果の問題は、入力データのshapeの違いによるものだったみたい。元のモデルと違うデータを入れないとダメってことみたい。何らかの都合によるものなんだろうな、たぶん…と言うわけで、どうにか正しくなった。
graphファイルの入力データのshape情報とかCPU数の情報とかも、何となく分かってきた。gistのファイルは修正済み。
ようやく次に進めそうな感じ。道のりはそれなりに長いが。
計算結果の問題は、入力データのshapeの違いによるものだったみたい。元のモデルと違うデータを入れないとダメってことみたい。何らかの都合によるものなんだろうな、たぶん…と言うわけで、どうにか正しくなった。
graphファイルの入力データのshape情報とかCPU数の情報とかも、何となく分かってきた。gistのファイルは修正済み。
ようやく次に進めそうな感じ。道のりはそれなりに長いが。
先日のNCSだが、caffeのモデルをそのまま使ってCPUで計算した値と、NCS用にコンパイルしてNCSで実行した場合の結果が異なるという事件に悩まされている。
例えばexampleのcat.jpgはこんな画像なんだが…
caffe> 0.469843 n02123045 tabby, tabby cat
ncs> 0.18958 n02124075 Egyptian cat
そもそも自分にもこいつが何キャットなのかうまく判別できないんですが、普通のネコじゃ…ダメなのかな? しかし同じモデルで同じデータを食わせているので、結果は同じになってほしいんだがなぁ。色々やっていると、caffe側が正しそうな気がした。NCSの使い方を間違ってるのかも。イメージのロードのTransformerの引数に固定値を入れているのが間違いなのかもしれない。そこ以外に思いつかないよ。
作ってみたテストプログラムは以下のgistに。bycaffeとbyncs2サブコマンドに同じ引数を与えて使ってます。なかなか難しい。そもそも画像認識したいわけじゃないんだ俺は。誰もが「ひよこ鑑定士」を失業させたいわけじゃない。ここはサクッと終わらせたいのに!
計算スピードはさすがに高速な感じですね。それほど期待していなかったので、そう感じるのかもしれない。GPU使ったらもっと速いんだろうと思う。
ルヴァン決勝。何とつらい帰り道か。
今日は忘れられない記念日になりました。ルヴァンパーティでオンザルヴァンを振る舞われていたのがずいぶん昔のことに思えます。
ワリと長らく使っている、電動歯ブラシ。単3乾電池1本で動くのはいいんですが、電池がヘタるの早くない? と思っていた。で、駄目だなと思って電池交換した際に、乾電池の電圧をテスターで測ってみたんです。
それがタイトルの1.221V。ま、このテスターも年代物で、校正もしたことないからどれだけの精度か疑わしくはあります。
新品の電池が1.5V、満充電のエネループが1.2〜1.3V。1.2Vで満足に使えなくなる設計はアリなのか、ナシなのか。
まあこれ安物なので、という考えもあるでしょうけどね、
天皇杯は寒い等々力で、19:30から始まった。こんなに冷える季節になったんですね。雨も降って。少なくとも私が行った時にはシャトルバスも出ていなかった。まあ時間も余裕があって急いでなかったし普通に小杉から歩くので、いいんですけどね。
試合の方は、ここ最近の内容の悪さが続いての、この結果なのかな。ごまかしが効かない相手ってのもいるもんで。なんと表現するのがいいのか、プレーの精度は柏とどっこいどっこいに見えたが、スピードで負けていたような。まあメンバーを変えて挑んだ、という事情もあるのかもしれない。ただ今日出ていたのは他の試合で出てきても普通に通用している選手なんで、ラインナップを見ても、確かに中村憲剛や小林悠はベンチだったけど、落とした感じはなかったよね。このメンバーが相手のプレースピードについていけてない状態で、同じ相手と週末にアウェイでリーグ戦がある…というのは不安材料しか見つけられない。
失点シーン自体は相手のシュートが上手かった。柏はCKでショートコーナーを多用していて、そこまではあまり有効な攻撃になっていなかったんだけど、ここではクリスティアーノがショートコーナーから持ち出して、素晴らしいシュートを決めた。まあそういう流れだからショートコーナー対応が甘くなったという見方もできるかな。
ルヴァンカップの決勝は張り切って行くし、勝ってほしい思いは非常に強いけど、実はあんまり期待していないんだ。一発決勝ですんなり勝てるクラブならここまで無冠は続いてないよ。これまでの川崎のカップ戦決勝の戦績をAIに学習させたら、今回の結果をどう予想するか? ちょっと考えてみて下さい。というわけで、リーグ戦で1年を通じた成績で押し切るのが一番の近道であろうと思っている。
だから、私は毎日毎日、取らぬ狸の星勘定ですよ。
残り4試合で鹿島が2敗するとは思えず、ベストでも2勝1敗1分くらい。実際は3勝1分か3勝1敗くらいまでしか期待できない。だとすると川崎は4勝する必要がある。それがタイトルの前提になる。まずは今週末のアウェイ柏戦がいきなりの山場となるだろう。
鹿島もA札幌→H浦和→H柏→A磐田で、決して当たりは良いとは言えないが、そういうところで勝ってタイトルの山を築いてきたのが鹿島というクラブ。川崎はA柏→Hガンバ→A浦和→H大宮。柏と浦和は両方が対戦を残しているが、川崎はいずれもアウェイ、鹿島はいずれもホーム。
とりあえず、久々にtotoを買おうと思います。
やはり学習には使えないのかこれ。
コンパイラへの入力は現在はtensorflowのチェックポイントファイル(?)とcaffeのファイルだけ(?)みたいですね。良くわかってないけど、mvNCCompileもmvNCCheckもmvNCProfileも”graph”という名前のファイルを吐き出す。コンパイル結果って要はこのファイルだよね?? で、device.AllocateGraph(open(“graph”, “rb”).read())でプログラムを送り込み、データをdevice.LoadTensor()で送り込み、device.GetResult()で結果を受け取る、と。
機械学習系のやつで私がこれまで使うことがあったのはsklearnとkerasで、つまりsklearnの.pklかkerasの.hdf5。tensorflowやcaffeを生で使うのはちょっとめんどくさいと感じるところ。どうせ行くならPyTorchとか? と思っていた。だいたい私、理論を理解していないですし。kerasでtensorflowのチェックポイントを吐き出す設定を探して、やればいいんだろう、たぶん。
SDKについてくるサンプルは画像認識ばかりだけど、画像認識はまあ…余興に過ぎないし、どうでもいいかな。
自分がやってるのは株価予測だけで、画像と比べるとデータ量は圧倒的に少ない。一定期間の終値…数個から数十個のfloatのデータが、数年間の営業日数…数百セットくらいで銘柄ごとに学習させて、当たりやすい銘柄を探して実際に投資して観察する、という感じに使っているんですよね。学習は週1で週末にやって、スコアの評価と予測は毎日。この、スコアの評価と予測に使えたら元は取れるのかも。
いずれはtotoを当てたいという思いは強く持っているんだけど、今は昔馴染みの現物株で肩慣らしの日々。現物株はやっぱいいよね。かなり好きで、ずっと気に入ってますよ。真面目な投資はこれに限る。
一番大きな問題としては、実はこの株価予測に対して、TensorflowでやっているようなCNNがまだ全然使えてないんだよね。少し試したけど、ほとんど当たらなかったので今は諦めている状態。理解不能なパラメータも多いし。しょうがないので古典的なアルゴリズムで片っ端からやっていくスタイルになってしまっている。
このNCSを発注するときはCNNが使えると思っていたんだけどね。totoと違って株価ってのは美人投票と表現されるように、世間の標準レベルに合わせる必要がある。つまり出し抜くのも良くないし置いてかれるのも良くない。今はCNNが世界標準だから、CNNで予測するのが正解に違いないと思っていたんだ。その気持ちは今も持っている。ただ、当たらない以前に、まともに予測してくれないんだよホントに…
Intelが少し前に発表していたMovidius Neural Compute StickというUSB接続のプロセッサがやっと届いた。7月にニュースになって数日後には正規代理店(?)に注文を出していたのだけど、3ヶ月かかって今日、やっと届いたのね。発注した時はcaffeにしか対応していなかったはずだが、到着した時にはTensorflowにも対応していた。VMに対応するための情報も出ていた。Raspiにつないで動かすことすらできるらしい。そんなことだろうと思ったよ。
モノは割と高級感のある作り。プラッチックではない。アルミかな?? 放熱ちゃんとやってくれそう。重量はずっしりではないがしっかりとあって、スカスカ感は全く感じない。
中のプロセッサはMyriad VPUっていうVLIWのプロセッサのことなのかな? 機械学習専用ってわけではないと思うんだけど、機械学習系の事しか考えていないっぽいSDKになっている。消費電力が少なくて性能が高いからすごい! しかも1万円程度と非常に安い!! ただし届くのが遅い!!! そして、Movidiusを買収したIntelがこいつを機械学習向けデバイスとして細々と売っている、という構図ね。
とりあえずVagrantで作るVMで操作できるようにしてみた→Vagrantfile。SDKについてきたサンプルは動いた。
今回Vagrantだけど、本当はdockerで動かしたいんだよね。ただdocker-machine / boot2dockerのせいか、Virtualboxのusbfilterかけて–privilegedコンテナにしても、デバイスに接続できない! みたいなエラーが出るんだよねー。困ったことに。今日はその辺の試行錯誤をやっていた。手でインストールしたVMと、vagrant、あとはdockerね。dockerだけうまく行かなかった。この問題はいずれ解決するとして、とりあえずvagrant環境で遊んでいくかな。
あーあと、vagrantは現在VirtualBox 5.2に対応していなくて、ホイホイアップデートしてしまう私が例によって目をつぶったままbrew cask reinstall virtualboxしてしまっていたため、若干面倒だった。こいつを当てれば対応できる。vagrantも早く新しいのをリリースして欲しいところ。
で、さっき軽く手元のtensorflowのモデル生成のプログラムとかも動かしてみたけど、全く速くなっている気がしない…使い方が何か違っちゃっているんだろうな、たぶん。topで見ていても、CPUを使いまくっていてこのUSB側のプロセッサを動かしている気がしないんだ。
もしや、学習するところはCPUでやって、生成したモデル(パラメータ)をこのプロセッサ向けにコンパイルして実行する、とかなのかなぁ。…この種の処理で一番時間がかかるのは学習の部分になることが多いと思うが。
MacのTimeMachineのバックアップが壊れたっぽいなと思っている。「っぽいと思っている」という曖昧な表現にしているのはなぜかというと…
High Sierraにした日よりも後に何度か成功しているから、High Sierraが原因というわけでもないのかな。とにかくバックアップ作成の準備中の状態から前に進まなくなっているのだ。変なlocalsnapshotのマウントができている状態。ただアクティビティモニタで見ていると、backupdというプロセスがディスクアクセスを続けているので、単に時間がかかっているだけなのかもしれないと。ただ終わる気配…というかバックアップが始まる気配がないんだよねー。
(追記)
…と思っていたところ、先ほど久々のバックアップが始まった。何日ぶりなんだろう。驚かせやがって。
ハロウィンイベントということで色々やっていた。とりあえず投票してビールを飲んで…まあそのくらいでいいか。
試合はかなり白熱した展開に。川崎はスロースターターで、前半はかなりリードされたが途中で持ち直して、終盤の競り合いも制して接戦をモノにした。後半は辻も要所でスリーポイントを決めていく。ニックは今日は冴えない感じ? スタッツ見ると並以上の活躍はしてますね。ただいつもはもっと行けていた気がする。
開幕戦は負けてしまったし、私にとっては久々の勝利でした。こういう接戦をしっかりモノにしていくのは重要ですよ。
今日は来場者アンケートを受けたりもしました。Jリーグでも何度か受けてますが、似たような感じ。何ももらえなかったけど(Jリーグではアンケートを書くのに使ったボールペンをもらえたりする)。ただ設問に「誰と来たか」とか「観戦頻度」とか「アウェイも行くか」みたいな、当然聞かれそうな項目がなかったような気がするんだけど大丈夫か? ちょっと心配になったよ。「負けると悲しいか」みたいな、心理テストっぽい項目ばかりだった印象。
あとなぜか同時刻に等々力で横浜FCのホームゲーム(町田との神奈川ダービーだったらしい)があったみたいで、行きがけはサッカーっぽい通行人も多かったし、通りがかったら陸上競技場でサッカーっぽい応援の声が聞こえました。なぜに横浜が等々力で…???
選挙あるんですね。いまいち掴めていないんだ。神奈川18区に移ってから以前より熱意が薄れていることを感じる…まあ以前も熱意があったかと言うとそれほどでもなかったんですけどね。
今回は市長選と衆院選ですか。
市長選はまあどうしても現職有利になっちゃうよね。変な、スキャンダルみたいなものがなければそうなるだろうな。全員無職…じゃなくて無所属扱いか。現職の福田さんは旧民主党系、吉沢さんは自民党系、市古さんは共産党系。福田さんに対して吉沢さんがどこまで突っ込めるかという感じかな。
投票者としては、市長の失政がどれほどあったかという観点だよね。小杉の駅ホームの混雑は失政と言えるだろうか? 問題意識は持ってくれているようだが、対策は進んでいない。しかしマジであれはほっとくと死人が出るよ。一義的にはJRの問題ではあるんだけど、小杉という街の価値を左右する問題。
衆院選は首相が解散で仕掛けて、民進党の前原さんが彼なりに考えてカウンターを繰り出した形だが、これが妙手だったかというとちょっと…ね。候補者は自民党の現職「まっしぐら」を軸に、旧民主党系? で今回は希望から出ている三村さん、共産党の若林さんの三人か。三村さんは以前民主党が取ったあの選挙で現官房長官に僅差で迫る活躍を見せたことがあるらしい。
しかしまあ、このラインナップはどうしても萎えるなぁ。まっしぐらか否か、という選択なのよね。まっしぐらの評判は…どうなのか。
あと比例代表の投票もあるんだよね。どうしようかな。今回、民進党がなくなって希望と立憲民主党に分別された状態。希望(名称は希望党? 希望の党?)はどうしても立つ理由がないよね。都知事が国政に打って出る必然性がない。大阪から維新が国政に進出した時はまだ必要性が説明されていたと思う。まあ彼らもその後はグダグダで、少なくとも関東では存在感ゼロになってしまった。全体的な興味としては自民党がどこまで勝つか。始まる前は前回ほどの大勝には至らないと思っていたんだけど、相手がこの状態だと、記録更新もありうる状況。
自分の考えとしては、私は小沢一郎信者であり、二大政党制で競争がある政治というシステムが理想形。競争のない環境には成長はない。思想的に保守かリベラルかという部分は当然あるんだけど、そこの優先度はシステム構築の必要性と比べると高くない。ゆえに今回もその考え方をベースに吟味して投票先を決めることになるだろう。