TensorFlowは、計算グラフを構築して計算を実行するデータフロープログラミングを採用しています。計算グラフの実行パラダイムについては以下の記事で解説しました。
ビッグデータを分散学習するDeep LearningライブラリTensorFlowとは /tensorflow/2016/12/30/what-is-tensorflow.html
最初は、Pythonの算術演算とは違うため混乱するかもしれません。計算グラフの構築はTensorFlowの関数APIを基本的には使っていきます。
本記事では、TensorFlowの基本的な算術演算の種類をまとめて、実行例を示します。本記事を通して、計算グラフの構築と実行の仕方について慣れていきましょう。
算術演算の関数API
対応演算子があるものは表記しています。テンソル同士を演算子のオーバーロードを使ってTensorFlowの関数APIを呼び出すことができるようになっています。
tf.add
テンソルの要素の和です。対応演算子は+
です。
tf.add(x, y, name=None)
params:
パラメータ名 | 型 | 概要 |
---|---|---|
x |
Tensorの型 | |
y |
Tensorの型 | |
name |
string | 変数の名前。デフォルトでは自動でユニークな名前を割り当てます。 |
returns:
x + yの計算結果を表すNodeのテンソルを返します。
実行例は以下の通りです。
tf.subtract
テンソルの要素の差です。対応演算子は-
です。
tf.subtract(x, y, name=None)
params:
パラメータ名 | 型 | 概要 |
---|---|---|
x |
Tensorの型 | |
y |
Tensorの型 | |
name |
string | 変数の名前。デフォルトでは自動でユニークな名前を割り当てます。 |
returns:
x - yの計算結果を表すNodeのテンソルを返します。
実行例は以下の通りです。
tf.multiply
テンソルの要素の掛け算です。対応演算子は*
です。
tf.multiply(x, y, name=None)
params:
パラメータ名 | 型 | 概要 |
---|---|---|
x |
Tensorの型 | |
y |
Tensorの型 | |
name |
string | 変数の名前。デフォルトでは自動でユニークな名前を割り当てます。 |
returns:
x * yの計算結果を表すNodeのテンソルを返します。
実行例は以下の通りです。
tf.divide
テンソルの要素の割り算です。対応演算子は/
です。tf.truediv
と同義です。
tf.divide(x, y, name=None)
params:
パラメータ名 | 型 | 概要 |
---|---|---|
x |
Tensorの型 | |
y |
Tensorの型 | |
name |
string | 変数の名前。デフォルトでは自動でユニークな名前を割り当てます。 |
returns:
x / yの計算結果を表すNodeのテンソルを返します。
実行例は以下の通りです。
tf.floordiv
テンソルの要素の割り算です。結果の小数点以下は切り捨てになります。対応演算子は//
です。
tf.floordiv(x, y, name=None)
params:
パラメータ名 | 型 | 概要 |
---|---|---|
x |
Tensorの型 | |
y |
Tensorの型 | |
name |
string | 変数の名前。デフォルトでは自動でユニークな名前を割り当てます。 |
returns:
x // yの計算結果を表すNodeのテンソルを返します。
実行例は以下の通りです。
tf.mod
テンソルの要素の除算です。対応演算子は%
です。tf.floormod
と同義です。
tf.mod(x, y, name=None)
params:
パラメータ名 | 型 | 概要 |
---|---|---|
x |
Tensorの型 | |
y |
Tensorの型 | |
name |
string | 変数の名前。デフォルトでは自動でユニークな名前を割り当てます。 |
returns:
x % yの計算結果を表すNodeのテンソルを返します。
実行例は以下の通りです。
tf.pow
テンソルの要素の累乗です。対応演算子は**
です。
tf.pow(x, y, name=None)
params:
パラメータ名 | 型 | 概要 |
---|---|---|
x |
Tensorの型 | |
y |
Tensorの型 | |
name |
string | 変数の名前。デフォルトでは自動でユニークな名前を割り当てます。 |
returns:
x ** yの計算結果を表すNodeのテンソルを返します。
実行例は以下の通りです。
まとめ
本記事では、TensorFlowの基本的な算術演算子の使い方について解説しました。
本記事を通して、算術演算子の関数APIについて知っておくと役に立つはずです。