完全ワイヤレスイヤホン

電車の移動時にイヤホンを使用して音楽を聴いている。

音楽は好きだがあまり音質にこだわりがあるわけではないため安い(3000円程度の)イヤホンを買い、飽きるか断線するまで使用して交換するサイクルがここ4年ほど。

現在使用している中華製のイヤホンが断線したため、新しいイヤホンを物色している話。

 

断線したイヤホンはこれ。

【ノーブランド品】 iPhone Samsung 用  KZ ZS3 HIFIスポーツ 高音質 重低音 イヤホン

昨年12月ごろ購入。当時2500円ほど。安くなってやがる・・・。

新しいイヤホンを例のごとくアマゾンで物色。どうやらiPhone7の影響からか、Bluetoothのワイヤレスイヤホンが流行っているらしい。

値段は予算の範囲。ガチャじゃないけどレビュー見て安定してそうなのをポチる予定。

 

 

 

リッチなプログレスバー、tqdm

機械学習をしていると進捗状況をみつつ作業することが多い(らしい)。

確かに仕事で機械学習を行う際に、終了時間の検討がつかないことには次の作業に移りづらい。上司に報告しづらい。メンタル的につらい。仕事辞めたい。

 

そんなあなたにtqdm

 

for文にかませるだけで、進捗パーセンテージ、経過時間、終了までの残り時間を表示してくれる。

以下、使用例。まずは普通のfor文

import time
for i in range(100)
sleep(0.1)

 

このfor文に、以下のようにtqdmをかませる。

from tqdm import tqdm
import time
for i in tqdm(range(100))
time.sleep(0.1)

そうすると

26%|███████████▏ | 26/100 [00:02<00:07, 9.36it/s]

なんかこんな感じの進捗バーが出る。おしゃみが高い。

 

なおimport時に import tqdmだけだと以下のエラーが出る。たまにミスるからメモ。

TypeError: 'module' object is not callable

 

Anacondaを使用したPython仮想環境の構築

1台のPCにPythonの環境を複数作成する方法はいくつかあるが、
Windowsはほぼ1択っぽいのでメモ。

 

環境

Windows10 x64 Home

Python 3.6.1 (Anaconda3 4.4.0 64-bit)

 

下記コマンドをコマンドプロンプトで入力することで、

簡単に仮想環境を作成できる。

conda create -n [仮想環境名] python=[Pythonバージョン番号] anaconda

例えば

conda create -n py27 python=2.7 anaconda

と入力して実行すると、Python2.7の環境が仮想環境として作成される。

 

作成後は

conda info -e

と入力することで、作成済みのバージョンを確認可能。

 

仮想環境の使用および構築の続きは、下記コマンドで仮想環境をアクティベート後に行う。

activate [仮想環境名]

activateに成功すると、コマンドの行頭に仮想環境名が追加される。この状態で導入したパッケージや設定は、activateしている環境でのみ適用される。

root環境に戻る場合は下記コマンドでdeactivateする。

deactivate

 

 作成した仮想環境を削除する場合は以下。

conda remove -n [仮想環境名] --all

 

 

 

 

 

PC買いました。

DeepLearning用にPCを買ったのでスペックメモ。

 

購入店:PC SEVEN

pc-seven.jp

OS:Windows 10 x64 Home

CPU:Core i7-7700
マザーボード:ASRock B250M-HDV (別VGA)
ケース:Silverstone Precision PS14
メモリ:Crucial DDR4-2400 8GB (8GBx1枚)
HDD:HDD 1TB(1000GB) SATA3 6Gbps
光学式ドライブ:DVDスーパーマルチ GH24NSD1 BL ブラック
グラフィック(カード):GeForceGTX1060 3GB
地デジチューナー:なし
カードリーダー:なし
電源ユニット:80PLUS Bronze 600W 電源

下記リンク先のセミオーダーです。

pc-seven.jp

 

以下、カスタマイズ
ケースファン追加:スリーブベアリング超静音ファン1個 +1,480円
無線LAN:ELECOM WDC-433DU2HBK +3,580円
オフィスソフト:Microsoft Office Home and Business Premium DSP版 +19,800円

 

注文時から発送まで2~5営業日でとのことだったが、水曜に注文して金曜には発送してもらえた。

 

梱包は大きめの箱に

  • PCケースの箱
  • 各パーツの箱
  • パーツ・ソフトの説明書類、電源ケーブル

が、緩衝材(ビニール袋に空気が入ってるタイプ)と共に詰められていた。

パーツの箱の中身はどれも緩衝材以外は空であったが、一応全ての中身を確認したほうが良いかもしれない。またモノによっては箱に保証書がついている場合もありそう。

 

PCケースの箱を開けると組みあがったPC。

電源ケーブルを差して起動を確認。HDMIケーブルは付属していなかった。(オプションで付属できたかも。忘れた。)

バイスマネージャーでGPUの認識も確認。また以下のソフトでも動作や温度を確認。

ELSA System Graph | 株式会社 エルザ ジャパン

f:id:rew05:20170702125452j:plain

Graphics Clockが上がったのはyoutubeを起動して動作を確認した。

 

 

CUDAとか整えてmnistをGPUで動かしたら再度更新する。

【とりあえず動かすChainer】mnist

前回作成した環境を使って、実際にChainerを動かしてみる。

rew05.hatenablog.com

 

 

mnistとは

mnistとは、0~9までの手書き文字のデータセットのこと。

このデータセットを使用して手書き文字判別を行うことが、動作確認およびニューラルネットワーク界の「Hello World!」になっている様子。

ソースコードは以下からダウンロード。

github.com

 

mnistを動かす

ダウンロードが完了したら、

 chainer\examples\mnist

の配下のファイルを作業ディレクトリにコピー。

f:id:rew05:20170627005302j:plain

今回はC:\python\mnistに設置。

 

配置したフォルダでコマンドプロンプトを開き、下記コマンドを実行。

> python train_mnist

f:id:rew05:20170627005514j:plain

(GPUを使用する場合は引数に「-g 0」を付ける。)

 

頑張れぼくのVAIO(Core i 5 メモリ4GB)

f:id:rew05:20170627005713j:plain

 

データセットのダウンロードが終わり、学習を始める。

18分ほどかかる模様。会社のハイスペックマシンだと2分かからなかった。GPU欲しい。

f:id:rew05:20170627005737j:plain

 

待つこと18分。

f:id:rew05:20170627005926j:plain

 

無事完了した様子。

作業フォルダを見るとresultフォルダが作成されているはず。

f:id:rew05:20170627010117j:plain

 

この中の「snapshot_iter_12000」を使用して手書き文字を判別する。

中身はネットワークの重みになっている。

 

任意の画像でのテストは後程編集

【とりあえず動かすChainer】Chainer環境構築

 

上司「来月からChainerを使ってDeepLearningやってくれ」

ぼく「!?」

という、急にDeepLearningをやれと言われてどこから手を付けていいか分からない人(自分)向けの環境構築メモ。

各要素のメモを簡単に残しつつ、他の方のページへリンク。

 

目次

 

Pythonについて

www.python.org

書きやすく読みやすい、教育用に開発された言語とのこと。

概要はさておき、まずPythonについて説明したいのは、

PythonにはPython2系と呼ばれるものとPython3系と呼ばれるものの

2種類あるということ。

これは単純にバージョン番号に起因する呼び方だけれど、

問題なのは後方互換がないということ。ことこと。

なのでChainerを使ってやりたいことが決まっている場合、

それがPython2系用のソースだったりしないか確認する必要がある。

 

上記が問題なかったり、よくわからなかったら

とりあえず3系を使用すればよい。

仮想環境やライブラリなどで2系用ソースも

のちのち動かすことは可能のため。

 

 

Anacondaのインストー

Download Anaconda Now! | Continuum

Anacondaとは、PythonPython用の便利なライブラリやIDEを一度にインストールできるしゅごいソフト。

ライブラリの依存関係とか考えなくて良くて、インストーラ一発でやってくれる。(ディストリビューションというらしい。)

WindowsMacOSLinuxに対応しているよう。今回はWindows前提で記載する。

 

リンク先からインストーラをダウンロードする。

Python2系、3系でインストーラが分かれているので注意。前述の通り仮想環境などでなんとかなるので、理由がなければ3系のインストーラを使用する。

  1. インストーラを起動
  2. I Agree
  3. インストールする範囲を選択(ログインユーザのみorPC全体)
  4. ファイルのインストール先を選択
  5. 「Add Anaconda to the system PATH enviroment variable」にチェック
  6. インストー

 

インストールが完了したらコマンドプロンプトを開き、

python」と入力して実行してみる。

Pythonインタプリタが起動すればAnacondaのインストール終了。

インタプリタを終了するには

> quit()

と入力。

 

CUDA/cuDnn

謎の半導体メーカーこと、NVIDIAGPUを使用する際に必要。

使わないなら不要。

自宅PCは低スペックノートでGPU非搭載なのでメモとれなかった。

会社でインストールしたときは以下のページが参考になった。

qiita.com

 

 

 

Chainerについて/インストー

Chainerはディープラーニング用に作られたPython用国産フレームワーク

ディープラーニングを行うためには

などの方法がある。

前者はChainerの他にGoogleのTensorFlowやFacebookのCaffeなどがあり、

後者はIBMのWatson、AmazonのAzuru、富士通のZinraiなどがある。

Chainerは国産ということもあり、日本語でぐぐればある程度の問題なら解決する。

 

インストールは

 > pip install chainer

を叩く。以上。

と言いたいところなのだけれど、

6月からChainer 2.0.0が正式リリースされ、上記コマンドを叩くと2.0.0がインストールされる。

これもPython同様、Python 1.x以下から互換のない仕様変更が存在するため、

Githubなどからソースを取得する際に適したバージョンである必要がある。

> pip install chainer==1.23.0

など、chainerのあとにバージョン番号を指定することで目的のバージョンを取得できる。

バージョンを変更してインストールしなおす場合は、

> pip uninstall chainer

> pip install chainer==x.xx.x --no-cache-dir

とする。「--no-cache-dir」を使用しないと以前のバージョンが入ってしまう場合がある。

 

また、バージョン2.0.0を使用する場合はcupyもインストールする。

コマンドは

> pip install cupy

失敗する場合は

> easy_install cupy

 

インストールが完了したら下記コマンドを使用して、インストール状況を確認する。

> pip freeze

chainer(2以上ならcupyも)がインストールされていればOK。

 

 

以上、思い出したら追記する。

書初め

ブログを始めてみます。

 三日坊主のプロなので、意識は低く月に1回更新が目標です。

 

書きたいこと
  • 仕事でつまずいたことのメモ
  • 家で遊んだ内容
  • 勉強したことのメモ

 

上記内容を、以下のパーソナルデータを絡めて

書いていきます。

仕事
  • Chainerを使って物体認識したり画像生成したり
  • 前部署ではセキュリティ製品のパッケージ開発

 

趣味

 

続けるためにも趣味を交えた内容を更新していきたいです。

 

おわり