2016年08月03日
_ [computer] Windows 10 Anniversary Update 早速完了
8月2日の深夜、午前2時丁度(US西海岸で10:00AMですね)に配信が始まり、即適用。2時37分にアップデート完了しました。
詳細は、明日。
=========================
8月2日に提供されるという、Windows 10 Anniversary Updateですが、2日の日中から更新をかけていたのですが、提供されませんでした。たまたま夜遅くまで起きていて、夜中の2時前で、「夜も遅いし、2時過ぎで提供されなければ、また明日」と思っていたのですが、2時丁度(アメリカ西海岸では、朝の10時です)に更新のチェックをかけると、Windows10バージョン1607の更新がかかりました。
更新が殺到してダウンロードに時間がかかるかも、と言う懸念は無用でして、ダウンロードは3分少々で終わり、その後の「インストールの準備」とかが終わって、更新のために再起動させるまで、約10分少々でした。
シャットダウン時の「Windowsの更新の構成」に6分少々かかり、リブートしたのが2時16分過ぎでした。
先の大きなアップデートと違って、更新の進行状況の表示がリング状のグラフでなくて、%表示のみでした。30%と75%あたりで2度のリブートが有って、無事更新が終わってデスクトップが出たのが、2時36分過ぎでした。あまり時間がかからなくて良かったです。ちなみに、このパソコンのCPUはi7-5930Kで、ストレージはM.2(PCIe2x4)のSSDです。
=========================
今、翌日の朝(3日)になって、他のパソコンでも更新をかけてみましたが、未だに更新が提供されない個体が結構あります。どれも一斉に更新、って訳では無い様ですね。
昼前になって、やっとアップデートについてのネット記事が出始めました。まだ更新プログラムが提供されない場合でも、マイクロソフトの「Windows 10の更新履歴」のページから、「Windows 10 アップグレード アシスタント」と言う、"Windows10Upgrade28084.exe"をダウンロードして、実行すれは良いみたいです。今、実行しています。
WindowsUpdateからはアップデートが来ない機種を何台かアップグレード・アシスタントでアップグレードしましたが、概ね問題なく終わりました。1台だけ、割と非力な機種が、「更新プログラムの準備」の後のリブートしてからの更新で、途中での再起動時に止まってしまい、元に戻されてしまいました。2、3度やり直しても同じで、少々困りましたが、何とか解決しました。
「更新プログラムの準備」が終わった後、30分カウントダウンのリブートのメッセージが出るのですが、当然ここでは「すぐ再起動をする」を選択します。しかしサインアウトのメッセージの後、暫く待ってもサインアウトも再起動がかからないので、(根がせっかちなので)待ちきれず手動で再起動させていました。どうもこれがいけなかった様です。何も変化無くても、根気よく待っていると、その内再起動してくれます。それを待ってから続けると、ちゃんと更新できました。しかし、すぐに再起動動作に入れないのなら、何かメッセージが欲しかったです。少し待っても何も始まらないので、てっきり再起動プロセスが失敗したのだと思い、手動で行ってしまいました。
このアップデートには空き領域20G以上必要とあるのですが、システムドライブが小さい機種で、なんとか22G程空けて最初のチェックは通過したものの、すぐ空き領域不足でエラーになった事があります。何度かやり直しても同じ。結局最初のチェックと実行時のチェックに差が有るようで、仮想メモリを切って、もう少し空けたら大丈夫でした。
また、元々システムドライブが32Gの機種が有るのですが、これはどうにもならないです。以前のアップデート(TH1)だと、別ドライブに領域をとれれば大丈夫だった気がするのですが、今回はそういう選択は見つかりませんでした。
2016年08月31日
_ [computer] TensorFlowを、Windows10のBashにインストール
先日碁のプロ棋士を破って話題になったGoogleのAlphaGoですが、AIとしてニューラルネットワークを使用している情報に衝撃をうけまして、先日大阪に行った折、大きな書店に寄り、ニューラルネットワークによるデープラーニングの本を2冊ほど買って帰りました。この2冊です。

コンピュータで実装できる物なので、パソコン上でも実際に動かせる環境とかあるだろうと思っていたのですが、「イラストで学ぶディープラーニング」の方にそういった解説も有り、その中のGoogleが提供しているTensorFlowをインストールしてみることにしました。
TensorFlowの実行環境はUbuntuかOS-Xらしいので、Ubuntuを何処かにインストールしようかと思って居たとき、PC WatchでWin10のBashについての西川和久氏コラム(http://pc.watch.impress.co.jp/docs/column/nishikawa/1017333.html)を読みました。それによると、「WindowsにおけるBashは、GUIなしのUbuntuと何ら変わらない・・」らしいです。
そういう事ならば、"Bash on Win10"にTensorFlowをインストール出来るだろうと、直ぐやってみました。普通のUbuntuと同じで、殆ど問題なくインストール出来ます。
とりあえず、
$ sudo apt-get update
$ sudo apt upgrade
をやってみますが、全く普通のUbuntuの様に終わります。
実際のインストールのやり方は、TensorFlowのHPの"Download and Setup"(https://www.tensorflow.org/versions/r0.10/get_started/os_setup.html#download-and-setup)に書かれていますので、その通りにやればOKです。(結構簡単)
幾つか方法が書かれていますが、"Virtualenv install"が良さそうなので、virtualenvを使う方法でやってみました。pythonとpip、開発環境とvirtualenvをインストールします。
$ sudo apt-get install python-pip python-dev python-virtualenv
環境を作ります。
$ virtualenv --system-site-packages ~/tensorflow
アクティベイトします。
$ source ~/tensorflow/bin/activate
とりあえずGPUを使わないCPUのみのTensorFlowをインストールします。
# Ubuntu/Linux 64-bit, CPU only, Python 2.7
(tensorflow)$ export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.10.0rc0-cp27-none-linux_x86_64.whl
(tensorflow)$ pip install --upgrade $TF_BINARY_URL
終わった後は、以下のコマンドでデアクティブ、また開始する場合はアクティブします。
(tensorflow)$ deactivate ## ==> 無効化 ##
$ source ~/tensorflow/bin/activate ## ==> 有効化 ##
ちゃんと動くかどうかは、TensorFlowのHPのとおり、まずpythonを起動して1行づつのコマンドを入れてみて確かめます。
(tensorflow)$ python
>>> import tensorflow as tf
>>> hello = tf.constant('Hello, TensorFlow!')
>>> sess = tf.Session()
>>> print sess.run(hello)
Hello, TensorFlow!
>>> a = tf.constant(10)
>>> b = tf.constant(32)
>>> print sess.run(a+b)
42
ちゃんとアンサーが出たら、次は、いくつかあるチュートリアルの中の、"MNIST For ML Beginners"というものをやってみます。HPで1行づつ解説してくれていますが、"mnist_softmax.py"プログラムを走らせてみます。これは手書き数字の画像認識らしいのですが、データのダウンロードから、認識まで、全部自動でやってくれます。ちゃんとそれらしい答えが出るので、上手くいっているのでしょうが、プログラムを見ても、まだ何が何だかさっぱりです。まぁ、とりあえず動いたと言うだけです。
(tensorflow)$ python mnist_softmax.py
Successfully downloaded train-images-idx3-ubyte.gz 9912422 bytes.
Extracting /tmp/data/train-images-idx3-ubyte.gz
Successfully downloaded train-labels-idx1-ubyte.gz 28881 bytes.
Extracting /tmp/data/train-labels-idx1-ubyte.gz
Successfully downloaded t10k-images-idx3-ubyte.gz 1648877 bytes.
Extracting /tmp/data/t10k-images-idx3-ubyte.gz
Successfully downloaded t10k-labels-idx1-ubyte.gz 4542 bytes.
Extracting /tmp/data/t10k-labels-idx1-ubyte.gz
0.92
ちなみに、興味を持つきっかけとなったGoogleのAlphaGoですが、実際の動作の仕組みを考察したHP(http://www.slideshare.net/yuk1yoshida/alphago-61311712)を読んでみますと、(十分理解出来ない点も多々ありますが)別にデープラーニングした能力だけで碁を指している訳では無いようですね。色々な方策を併用して、また大量のリソースを用いた力技も使って、手を指していそうです。

