Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

はじめに 仕事の話がきっかけですが、顔写真に対する証明写真としての適正具合を画像分類で判定できるんじゃないか? という個人的興味がわいたため、適当にWebで顔写真を集めて VGG16 をベースに転移学習した Keras のお試しモデルを作りました。0.0 ~ 1.0 の不適切度を出力し、しきい値 0.5 で 93% くらいの精度でした。 現場のサーバーが Windows Server なので、もしそこで動かすならということで「C#で学習済みVGG16モデルを使ってアプリを作る方法」を参考に VisualStudio2017 と TensorFlowSharp を使って動くことを確認しましたが、ついでに現場の開発用IDEである VisualStudio2010 でもビルドできるようにしてみました。 作ったもの github に TensorFlowSharpNet40 というレポジトリで公開
--profile-child-processesと-oについてる%pに注意。 前者のオプションでjupyterからpythonまで芋づる式に拾ってくれるようになります。このオプションを指定した場合は出力ファイル名に%p(プロセス番号に置換)を含めないと駄目らしい。 2. Jupyter側で操作 Jupyter notebook側(ブラウザ)でtensorflow実行、終わったらDOS窓でCtrl+Cして終了させます。 最初は前記事のImages/Pix2Pixを解析しようとしたんですが、プロファイル結果が訳わからないことになったのでもう少し単純なものを。 Keras作者の本を写経したやつが残ってたので、これを使うことにしました。3.5章のやつです。 fp16/fp32の切り替えは例によってkeras.backend.set_floatx()で行っています。 # 題材はロイター記事の解析
という状況で、どちらもCUDA10は組み込まれていません(10/9現在)。 なければビルド...ということでビルドしてみましたが、どちらも一筋縄ではビルドできず。 そもそもWindowsビルドなんてそんな検証されてない(であろう)ため、解決策を探すのに難儀しましたが、こちらの神記事のお蔭で無事解決。 自分がWindowsビルドで嵌った以下4か所はすべてこの文書でカバーされてました。 VC2015 update3以上じゃないとだめ(VS2017 CommunityはOK) checkout version/configure.pyで成功する組み合わせ(v1.11+CUDA10.0+CuDNN7.3.1でOK) cuda/half.hでビルドエラーが出る問題(patchで対応) ビルドは通るんだけどパッケージができない問題(zipファイルが2GBを超えないよう手修正) なおビルド時のconfi
これまで、KerasでAutoEncoderとか、KerasでAutoEncoderその2とかの記事を書いてきたんだけれど、これをGoogle Colaboratoryで動かしてみようか、というココロミについて。 Google Colaboratoryで動かせば、GPUが使えるのが大きい。 目的 手書きの数字の「1」を学習する 手書きの「1以外の数字」が入力された際に、その画像が「1」とは何やら違う、ということを示す まずは、KerasでAutoEncoderその2で書いたネタを、tensorflowのKerasで動作するようにするのがゴール。 Colab上で実装する Colabでpip install -U Kerasしようかと思ったけれど、tf.kerasを使うことにする。 まずは、Colabの「ファイル」メニューで「Python3の新しいノートブック」を選択して、ノートブックを作成す
以下のshell sessionでは (base) root@f19e2f06eabb:/#は入力促進記号(comman prompt)です。実際には数字の部分が違うかもしれません。この行の#の右側を入力してください。 それ以外の行は出力です。出力にエラー、違いがあれば、コメント欄などでご連絡くださると幸いです。 それぞれの章のフォルダに移動します。 dockerの中と、dockerを起動したOSのシェルとが表示が似ている場合には、どちらで捜査しているか間違えることがあります。dockerの入力促進記号(comman prompt)に気をつけてください。 ファイル共有または複写 dockerとdockerを起動したOSでは、ファイル共有をするか、ファイル複写するかして、生成したファイルをブラウザ等表示させてください。参考文献欄にやり方のURLを記載しています。 複写の場合は、dockerを
コードの解説 (2)もお読み頂きありがとうございます。 それでは、さっそく、コードの解説に移らせていただきたいと思います。まずはganの仕組みをしっかり理解する必要があります。原論文をきちんと読んだ上で、実装に即した形で説明したいと思います。 GANの実装の仕組み 基本の構成要素 GANは、2つのニューラルネットワークでできています。 generaterとdescriminaterです。面倒なので、g,dと呼びます。gは、ニセの画像を作り出すニューラルネットワークです。dは、gが作ったニセの画像と、本物の画像を識別するニューラルネットワークです。 なので、gが偽造者、dが判別者などと呼ばれたりもします。 gとdをトレーニングしていくと、最終的には、本物っぽい画像を生み出すgが得られることになります。このgを使えば、以後、本物っぽい画像をいくらでも生成できることになります。 gとdの実装理念
概要 TensorFlowに導入されているEager Modeについて、プログラムの書き方を理解するため、Kerasとの書き方の比較をしてみました。また、学習結果の差がどうなるかを検証しました。 環境 TensorFlow v1.10 Windows10 Eager Modeの起動 まずは、TensorFlowをEagerModeに切り替えます。KerasはEagerModeにしておいても動くようです。 import tensorflow as tf tf.enable_eager_execution() tfe = tf.contrib.eager print("TensorFlow version: {}".format(tf.VERSION)) # TensorFlowのバージョン確認 print("Eager execution: {}".format(tf.executing_e
(base) root@5d7f67ae9b0a:# ls bin boot dev etc handson-ml home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var (base) root@5d7f67ae9b0a:/# cd handson-ml/ (base) root@5d7f67ae9b0a:/handson-ml# ls 01_the_machine_learning_landscape.ipynb book_equations.ipynb 02_end_to_end_machine_learning_project.ipynb datasets 03_classification.ipynb docker 04_training_linear_models.ipynb extra_autodi
(base) root@5d7f67ae9b0a:# ls bin boot dev etc handson-ml home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var (base) root@5d7f67ae9b0a:/# cd handson-ml/ (base) root@5d7f67ae9b0a:/handson-ml# ls 01_the_machine_learning_landscape.ipynb book_equations.ipynb 02_end_to_end_machine_learning_project.ipynb datasets 03_classification.ipynb docker 04_training_linear_models.ipynb extra_autodi
論文を読んでたら**PSNR(Peak signal-to-noise ratio:ピーク信号対雑音比)**を訓練の評価に使っていたのがあったので、実装してみました。画像の拡大、縮小といった超解像ではよく出てくる概念です。 ざっくり言ってPSNRって? (拡大や縮小、圧縮などで)画像がどれだけ劣化をしたかを示す値。値が小さいほど劣化していて、大きいほど元の画像に近い。 Wikipediaによると以下の式で定義されます。 $$PSNR=10\cdot\log_{10}\frac{MAX_I^2}{MSE} $$ 本来の定義はこの式です。MSEは2つの画像の画素ごとの平均2乗誤差、$MAX_I$は画素値の取りうる最大の値で、0~255なら255、0~1.0なら1です。機械学習では大抵0~1のスケールに変換するため、後者の$MAX_I=1$が多いと思います。 なぜこれが劣化の尺度になるのかという
MatplotlibでRuntimeError,ImportErrorになった時の対処法 経緯 Pythonの学習を進めている途中で以下のようなエラーにぶち当たり、色々試行錯誤して理解しました。せっかくなのでそれを解決するに至ったストーリーをQiitaの練習がてら残します。。。 該当のコード /Users/MYNAME/.pyenv/versions/anaconda3-5.1.0/envs/Pycharm_test/bin/python /Users/MYNAMEo/math_training/liner_function Traceback (most recent call last): File "/Users/MYNAME/math_training/liner_function", line 3, in <module> import matplotlib.pyplot as
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く