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

画像認識に使われる畳み込みニューラルネットワーク(以下CNNと呼ぶ)というものがあります。Tensorflow のチュートリアル(Deep MNIST for Experts)にも出てきますが、ネットワークが複雑で理解するのに苦労します。そこで、畳み込み層とプーリング層の中身を画像化して、何が行われているのかなんとなく体感したいと思います。 #ベースとなる Deep MNIST for Experts のコード 今回使用するコードは github(tf-cnn-image) に上げてあります。 まずはCNNのコードを用意します。Deep MNIST for Expertsのコードから不要な箇所を削除したものを用意しました。コメントは最小限にしてあるので、詳しい動作を知りたい場合はこちらなどを参考にしてください。 # -*- coding: utf-8 -*- import sys sys.
はじめに 近年流行りのディープラーニングを理論を知らなくてもとりあえず試してみたい人やただ使いたい人向けの投稿になります。自分のメモのために書いているので、分かりにくい箇所や間違いがあればご指摘ください。 Kerasとは、TensorflowとTheanoのためのPythonによるラッパーであり、深層学習ライブラリです。このライブラリを使用することで、非常に簡単に深層学習を体感することができると共に、多くのネットワーク構造を難しい理論を意識することなくコーディングすることができます。 この記事では、TensorflowとKerasの導入とまず手始めに多層パーセプトロンで四角形の識別を行います。 (追記)多くの方に見ていただけているようなので、学習済みパラメータを読み込んでの識別も追加しました。皆様の参考になれば幸いです。 (2017/03/09追記)2017年2月15日にGoogleからT
##結論から ChainerやTensorFlowなどの機械学習(特にDeepLearning)フレームワークでGPUを使うと、誤差程度ではあるものの演算結果が毎回変わってしまいます。(非決定的な演算) 「乱数使ってるから当たり前でしょ」って話ではなく、乱数種を指定してもGPU内部での演算順序が非決定的であるためGPU演算の結果は安定しません。 浮動小数点演算なので誤差が出るのは当然だが、その誤差が安定しない(非決定的)なのが気になるところです。 Chainerでは環境変数(CHAINER_CUDNN)の指定またはConvolution2Dなどへのパラメータ追加で本事象を回避可能。 TensorFlowについてはGoogle社曰く「EigenライブラリまたはcuDNNの仕様によるとのこと」であり現状では対応策無し。(詳細は次の記事に記載のIssuesを参照のこと) 尚、Caffeでも同様の
概要 機械学習でTensorFlowを使っていみたいなと思い、調べたらDockerを使うと良いとの事だったのでDockerでTensorFlowを使ってみました。実際にやってみるとJupyter Notebookを使うことになったのでそちらに関しても書いておこうと思います 用語の説明 Docker 簡単に仮想環境を作り、動作させられるオープンソース。Paasのようなもの。 [注目を浴びる「Dockerコンテナ」、従来の仮想化と何が違うのか?](http://cn.teldevice.co.jp/column/detail/id/102) TensorFlow TensorFlow(テンソルフロー)とは、Googleの機械学習/ディープラーニング/多層ニューラルネットワークライブラリ。基本的にPythonで書く。 [TensorFlowとは](http://www.ossnews.jp/os
def build_embedding_graph(self): self.x = tf.placeholder(tf.float32, shape=[None, None, None, self.channels], name="X") self.y = tf.placeholder(tf.float32, shape=[None, None, None, self.channels], name="Y") # H-1 conv self.Wm1_conv = util.weight([self.cnn_size, self.cnn_size, self.channels, self.feature_num], stddev=self.weight_dev, name="W-1_conv", initializer=self.initializer) self.Bm1_conv = ut
タイトルは論文っぽく書いていますが、要はTensorFlowのページにAndroid / iOS で動かせるぜーとあったのでどんなものかやってみた、という話です。 やってみると、確かにAndroid、iOS両方でビルドすることができたので、その手順などを書きたいと思います。 Android まずはAndroid版から。 https://github.com/tensorflow/tensorflow/tree/master/tensorflow/examples/android 基本的にはこちらに従います。ビルドできると、GoogleのInceptionモデルを使ったTF Classify, Scalable Object Detection using Deep Neural Networks をベースにしたTF Detectが作られます。 さらににスタイル変換するTF Stylizeま
Raspberry Pi4 追加 7/7/2019 TensorFlow1.5 最適化済みバイナリ効果検証, Mac Pro追加 2/6/2018 GeForce GTX1080 Ti の検証 10/3/2017 MacBook Pro Core i7 の検証 10/1/2017 Amazon EC2 / Microsoft Azure 環境の検証 9/17/2017 TensorFlow 1.0/XLA での導入効果 仮検証 2/24/2017 CPU / GPU 性能やOSによる違い検証 1/19/2017 Windows環境下 (正式版 / docker / bash on Ubuntu) での違い検証 1/19/2017 TensorFlowのmnistでの CPU / GPU 計算速度について自分の実測値を載せておきます。5000回のトレーニングにかかった時間です。3回の計測値の
この記事は、自身のブログ、Data Science Struggleを翻訳したものになる。 ##目的 Tensorflowが何なのかを大雑把に理解し、簡単なモデルを作成していく。 ##Tensorflowの概略 様々なところで聞くようになったTensorflowとは結局何であって、機械学習においてどのような位置付けになるのかというところから簡単に見ていく。 Tensorflowとは何なのか? まず、Tensorflowとは、実際に使って行く上では、ニューラルネットのパラメーターを決めるための計算を自動でやってくれる計算機ぐらいの考え方で構わない。 ここでいう計算機とは、1+1の答えを出してくれるというような、文字通り、計算を行ってくれるものだ。 機械学習においてはどのような位置付け? 機械学習を用いる方法は大きくわけて三つある。 一つ目は、アルゴリズム、数理を正しく理解した上で、各言語でモ
私的Chainer入門してみたイキオイで、続きをやってみることにする。 とはいえ、chainerを極める方向に行くよりも、いろいろと食い散らかしておきたい。 まあ、そんなワケで、TensorFlowである。 MNIST For ML Beginnersを参照しつつすすめる。 私的Chainer入門やPythonでKNNを使った手書き文字認識でもMNISTを扱ったワケだけれど、こいつをつかって「数字判別機を作る」というのは、機械学習のチュートリアルの基礎中の基礎だ。言うなれば、Oracleデータベースを初めて触る人がscott/tigerのempデータベースをselectするSQL文から入るようなもんだ。 TensorFlowの準備から PythonからTensorFlowを使う。AnacondaでPython環境を作っているので、ドキュメントに従い、以下のようにインストールする。
GTX-1080を入手したものの、pip でインストールしたTensorFlowでは使えないとのこと 四苦八苦したのでメモ Pythonの経験がまだ半年程度なのでインストール周りで無駄が多そう... 環境 Ubuntu 16.04 Python 3.5.2 Nvidiaのドライバが入ってないからかDVDブートだと画面が表示されなかったので、GTX-1080を取り外してインストール Ubuntuのインストールが終わったらGTX-1080を取り付けて起動しSSHで接続した Nvidiaドライバーのインストール GTX-1080 など GeForce を Ubuntu 16.04 LTS で CUDA-8.0RC と共に使う をがっつり参考にさせてもらってインストール とりあえず、 まずは Ubuntu 16.04LTS で nVIDIA GeForce を使う一般設定から だけを行った これで
この記事は、 TensorFlow Advent Calendar 2016 25日目の記事です。 今年の10/7、TensorFlow UserGroup (TFUG) が発足しました。 「TensorFlow User Group立ち上げの儀」 に私も参加させていただいたのですが、そこで議題となったのが 「TensorFlowの読み方(カタカナ表記)」 でした。その場で多数決をとって、TFUGとしては 「テンソルフロー」 にすることに決定したのですが、思い通りに進まないのが世の常。 TFUG コアメンバの多数決の結果、 TFUGでは 「テンソルフロー」 に統一することに決定 TFUG #1 で、 NHKの取材が入り、 「テンサーフロー」 と書かれる Googleの中の人に聞くと 「テンサーフロー」 だと言われる と、混乱を極めております。そこで、 TensorFlow Advent C
TensorFlow のモデル保存ってほとんど全てのユーザーが通る道なのに、結構細かい仕組みまで知っておかないとよくわからない部分が多くて意外とややこしいと思ったので、躓きやすい部分(もしくは自分が実際に躓いた部分)を中心にまとめてみようかと思いました。 Variable の値を save/restore するときのアレコレ tf.train.Saver のコンストラクタについて 以下のコードを実行するとエラーが発生します。 import tensorflow as tf # Save variables with tf.Graph().as_default() as g1: v0 = tf.Variable(0, name="variable_0") saver1 = tf.train.Saver() # variable_0 を save/restore するオペレーションがグラフ g
以前、『TensorFlowの学習済みモデルを拾ってきてiOSで利用する』という記事を書いたのですが、そのとき用いたモデルデータはいずれも Protocol Buffers 形式でした。 (YOLOモデルでリアルタイム一般物体認識) Protocol Buffersはプラットフォーム等を問わない汎用的なフォーマットですが、上の記事を書いたときにわからなかったのが、.pbでエクスポートされたTensorFlow用のモデルでも、iOSで使えるものと使えないものの違いはあるのかないのか、あるとしたら何なのか(単にサイズや使用メモリ量とかが制限になってくるのか)、という点です。 理解の手がかりになるかわかりませんが、TensorFlowのiOSサンプルがどうやってモデルデータを読み込んでいるか、コードをちょっとだけ追ってみます。 なお、今回利用するサンプルはsimpleです。 .pbファイル読み込
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? これはTensorFlow Advent Calendar 2016の記事です。 といっても、皆さんみたいにTFで面白いもん作ってみた、みたいなネタがない(TF力が足りない)ので、TensorFlowとMLサービスのエバンジェリストとしての2016年の布教活動をまとめたいと思います。 ちなみに私は2012年〜2014年はGCPのソリューションアーキテクトとしていろんなソリューションを作るのがお仕事でしたが、2015年からはデベロッパー・アドボケイトとして布教活動とコミュニティ支援活動を担当しており、もうすぐ2年(Googleに入って6年
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く