研究Tensorflowでは基本的な計算や処理を行う関数はライブラリに用意されており、基本的には不自由なくグラフ定義ができるとは思います。NumpyやScipyの関数に対応するものがTensorflowになく、どうしても直接利用しなければならないという場面があります。そこで活躍するのが、tf.py_funcになります。簡単に言うと、Pythonで定義された関数をtensorflowでそのまま使えるようにラップする役割を果たします。Pythonで定義した関数。テンソルに変換できるように、ndarrayもしくはそのリストを返り値としてもつ必要がある。inpと入力を対応させること。入力として与えるTensorオブジェクトのリスト。Tensorflowのデータ型のタプル。funcが返すデータ型を指定する。ステートフルorステートレスを指定する。ステートレスの場合、同じ入力対しては全く同じ値を出力することになる。処理の名称を指定する。下記にコーディング例を示します。Part1で定義したtensorグラフをinputsに入れます。inputを入力としてpythonで定義した関数funcを実行し、出力結果をtensorグラフとしてoutputに出力します。Part2では引き続きoutputの結果をもとにグラフを定義すれば、sess.runを一度実行するだけでPart1~Part2一連のグラフ処理を実行できます。placeholdersess.run(train_op)Py_funcが利用できない場合、Part1の結果を一度sess.runで出力してからPythonの関数に入力として与える必要があります。その結果をPart2にわたす際はPlaceholderを定義して実行時に与えなければなりません。以下のコードのようにグラフを2つに分割した処理となります。output_val})Py_funcを利用するメリット・デメリット上記で述べたとおり、グラフの中でsess.runを呼び出さなくてもPythonの関数をグラフに組み込んで利用することができるというメリットがあります。一方で、マルチスレッディングに対応させるのが困難であるため処理速度のボトルネックとなってしまう懸念があります。本日は画像変換のアルゴリズムについてまとめます。Learningベースでの画像変換研究の紹介。ディープラーニングの学習を本格的に進めるためにはNVIDIAのGPUを積んだマシンが現状は不可欠です。...記事を読むコードの見栄えをよくするために気をつけること自分のメモ用。コーディング時にコードの見栄えを良くするための備忘録。参照元はオライリーの”リーダブルコード”。SE(インフラ系)から研究職(AI系R&D)に転職してから3ヶ月が経ちました。今回は私が感じた「SEと研究職の違い」について...記事を読むDeepLearningにおける活性化関数のまとめニューラルネットワークでは線形変換+活性化関数で一層という考え方が基本になります。GANの学習はとても難しいといわれています。Learningでは訓練データを学習する際は一般にミニバッチ学習を行います。コメントをキャンセルメールアドレスが公開されることはありません。GANGANいこうぜ.。