ライフイズストレンジおもしろい。 iOSで出てたのでiPadでやっている。 ほとんどマーケティングのために流行ってるものをやってるんだけど。
mac に python3 + OpenCV3 の環境をつくる(できてない)
Tensorflow で機械学習を試してみてると 画像処理をするためにpythonでOpenCVを使う必要が出てきます。
新しいバージョンを使いたいということでpython3, OpenCV3 で環境をつくりたかったのですが、 うまくいきませんでした。
環境
pyenvでpython 2.7と3.6を切り替えらるようにしてpython3.6にした状態で OpenCV3 をインストールしたのですが、 Macの環境変数にpython2.7が残っているようで 1日かけて頑張ってみたのですが次のように python3.6ではなく、python2.7としてOpenCV3がインストールされてしまい、 うまくいきませんでした。
/usr/local/Cellar/opencv3/3.2.0/lib/python2.7/site-packages/cv2.so
Tensorflowを試しているネットの記事もPython2系のものが多いので あきらめて2.7で使うことにしました。
環境
インストール手順
brew update brew tap homebrew/science brew install opencv3 brew link opencv3 --force cd /Users/<ユーザー名>/tensorflow/lib/python2.7/site-packages ln -s /usr/local/Cellar/opencv3/3.2.0/lib/python2.7/site-packages/cv2.so ./
時間に余裕ができたらまたチャレンジします。
EC2のt2.microインスタンスのubuntuにTensorFlowをインストールしようとしたがスペックが足りなかった
EC2の無料トライアルにインスタンスをつくったので V1.0がリリースされたTensorFlowを動かしてみようとしたけど無理でした
スペック
インスタンス:t2.micro OS:Ubuntu Server 16.04 vCPU;1 (2.5 GHz, Intel Xeon Family) メモリ:1GiB ストレージ:8GiB
やったこと
TensorFlow公式に従ってpythonのvirturalenv環境を作成 (Python 2.7.12がインストールされました)
$ mkdir tensorflow $ sudo apt-get install python-pip python-dev python-virtualenv $ virtualenv --system-site-packages tensorflow $ source ~/tensorflow/bin/activate (tensorflow)$
TensorFlowをインストール!
(tensorflow)$ pip install --upgrade tensorflow Collecting tensorflow Downloading tensorflow-1.0.0-cp27-cp27mu-manylinux1_x86_64.whl (44.1MB) 99% |████████████████████████████████| 44.1MB 59.3MB/s eta 0:00:01Exception: Traceback (most recent call last): File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/basecommand.py", line 215, in main status = self.run(options, args) File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/commands/install.py", line 335, in run wb.build(autobuilding=True) File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/wheel.py", line 749, in build self.requirement_set.prepare_files(self.finder) File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/req/req_set.py", line 380, in prepare_files ignore_dependencies=self.ignore_dependencies)) File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/req/req_set.py", line 620, in _prepare_file session=self.session, hashes=hashes) File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/download.py", line 821, in unpack_url hashes=hashes File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/download.py", line 659, in unpack_http_url hashes) File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/download.py", line 882, in _download_http_url _download_url(resp, link, content_file, hashes) File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/download.py", line 603, in _download_url hashes.check_against_chunks(downloaded_chunks) File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/utils/hashes.py", line 46, in check_against_chunks for chunk in chunks: File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/download.py", line 571, in written_chunks for chunk in chunks: File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/utils/ui.py", line 139, in iter for x in it: File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/download.py", line 560, in resp_read decode_content=False): File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/response.py", line 357, in stream data = self.read(amt=amt, decode_content=decode_content) File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/response.py", line 314, in read data = self._fp.read(amt) File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/_vendor/cachecontrol/filewrapper.py", line 63, in read self._close() File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/_vendor/cachecontrol/filewrapper.py", line 50, in _close self.__callback(self.__buf.getvalue()) File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/_vendor/cachecontrol/controller.py", line 275, in cache_response self.serializer.dumps(request, response, body=body), File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.py", line 55, in dumps "body": _b64_encode_bytes(body), File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/_vendor/cachecontrol/serialize.py", line 12, in _b64_encode_bytes return base64.b64encode(b).decode("ascii") MemoryError
メモリーエラーみたい
https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.0.0-cp27-none-linux_x86_64.whl
でもダメ
メモリが足りないようなので500MBのスワップ領域を作成
$ sudo dd if=/dev/zero of=/swapfile bs=1024 count=524288 $ sudo chown root:root /swapfile $ sudo chmod 0600 /swapfile $ sudo mkswap /swapfile $ sudo swapon /swapfile
もう一度TensorFlowインストールしてみる
(tensorflow)$ pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.0.0-cp27-none-linux_x86_64.whl : Exception: Traceback (most recent call last): File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/basecommand.py", line 215, in main status = self.run(options, args) File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/commands/install.py", line 342, in run prefix=options.prefix_path, File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/req/req_set.py", line 784, in install **kwargs File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/req/req_install.py", line 851, in install self.move_wheel_files(self.source_dir, root=root, prefix=prefix) File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/req/req_install.py", line 1064, in move_wheel_files isolated=self.isolated, File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/wheel.py", line 377, in move_wheel_files clobber(source, dest, False, fixer=fixer, filter=filter) File "/home/ubuntu/tensorflow/local/lib/python2.7/site-packages/pip/wheel.py", line 323, in clobber shutil.copyfile(srcfile, destfile) File "/usr/lib/python2.7/shutil.py", line 84, in copyfile copyfileobj(fsrc, fdst) File "/usr/lib/python2.7/shutil.py", line 52, in copyfileobj fdst.write(buf) IOError: [Errno 28] No space left on device
ディスク容量が足りなくなった
以前挫折したCourseraの機械学習コースを再開
機械学習を勉強しはじめたときに始めて挫折したCourseraの機械学習コースを shu223さんの記事を読んで再開。 まだ教師あり学習についての最初の動画を見たとこだけど。 2ヶ月で最後まで行きたい。
aws ec2のubuntuにMacからvncで接続する
昨日はVagrantでつくったubuntu環境にMacからvnc接続する方法について書きました。 今日はec2上につくったubuntu環境に接続する方法を書きます
1. ec2にubuntuのインスタンスをつくる
ec2のアカウント登録については省略しますが、1年間無料トライアルがあるので私は無料で使っています 私は次のインスタンスを選択しました
Ubuntu Server 16.04 LTS (HVM), SSD Volume Type
2. vnc接続を許可するセキュリティグループを追加
ec2にvnc接続を許可するセキュリティグループを作成し、先ほど作成したインスタンスのネットワーキングの設定に追加します
3. デスクトップ環境を作成する
ec2にSSHで接続し、デスクトップ環境を作成します
$ sudo apt-get update $ sudo apt-get install xfce4 $ sudo apt-get install ubuntu-desktop
4. vncサーバーを立てる
vncserver をインストール
$ sudo apt-get install vnc4server
vncserver起動
$ vncserver :1
パスワードを設定
$ vncpasswd
起動しているか確認
$ netstat -an | grep 5901
vncの設定を次に変更
vi ~/.vnc/xstartup #!/bin/sh unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS startxfce4 &
vnc再起動
$ vncserver -kill :1 $ vncserver :1
5. macのvncクライアントで接続
Finderの「移動」「サーバへ接続」から「vnc://192.168.33.10:5901」に接続すると
完成
VagrantとVirtualboxでubuntu環境を構築し、Macからvnc接続する
vncを使ってみたかったのでMacにVagrantとVirtualboxで ubuntu環境をつくり、vncで接続できるようにしました。
macOS 10.12.3 で作業しました。
Mac上にubuntu環境構築
1. Vagrantインストール
次からVagrantをダウンロード・インストール https://www.vagrantup.com/downloads.html
2. Virtualboxをインストール
次からVirtualboxをダウンロード・インストール https://www.virtualbox.org/wiki/Downloads
3. ubuntuセットアップ
$ mkdir 任意のディレクトリ $ mkdir ubuntu $ cd ubuntu $ vagrant init ubuntu/trusty64 $ vagrant up
インスタンスに接続
$ vagrant ssh
デスクトップ環境を作成
$ sudo apt-get update $ sudo apt-get install xfce4 $ sudo apt-get install ubuntu-desktop $ exit
ホストからゲストにつなぐためのプライベートネットワークを設定
$ vi Vagrantfile
Vagrantfileの次のコメントアウトをはずす
config.vm.network "private_network", ip: "192.168.33.10"
インスタンス再起動
$ vagrant reload
vncサーバ構築
vncserver をインストール
$ sudo apt-get install vnc4server
vncserver起動
$ vncserver :1
パスワードを設定
$ vncpasswd
起動しているか確認
$ netstat -an | grep 5901
vncの設定を次に変更
vi ~/.vnc/xstartup #!/bin/sh unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS startxfce4 &
vnc再起動
$ vncserver -kill :1 $ vncserver :1
macのvncクライアントで接続
Finderの「移動」「サーバへ接続」から「vnc://192.168.33.10:5901」に接続すると
完成