[解決済み] TensorFlowにおけるさまざまな分割の種類
質問
私はTensorFlowの超初心者です。そこで、TensorFlowのさまざまな種類の分割について、以下の記事で知りました。 こちら . コードは以下のようになります。
a = tf.constant([2, 2], name='a')
b = tf.constant([[0, 1], [2, 3]], name='b')
with tf.Session() as sess:
print(sess.run(tf.div(b, a))) ⇒ [[0 0] [1 1]]
print(sess.run(tf.divide(b, a))) ⇒ [[0. 0.5] [1. 1.5]]
print(sess.run(tf.truediv(b, a))) ⇒ [[0. 0.5] [1. 1.5]]
print(sess.run(tf.floordiv(b, a))) ⇒ [[0 0] [1 1]]
print(sess.run(tf.realdiv(b, a))) ⇒ # Error: only works for real values
print(sess.run(tf.truncatediv(b, a))) ⇒ [[0 0] [1 1]]
print(sess.run(tf.floor_div(b, a))) ⇒ [[0 0] [1 1]]
私はプログラミング言語には疎いので、"computes division python style"などのドキュメントを理解することが出来ませんでした。もしどなたか、それぞれの違いや実用面について説明していただけるとありがたいです。
どのように解決するのですか?
tf.div - Python v2 の除算セマンティクスを適用します。例えば、両方の引数が整数の場合は整数除算 ("floor division") を使い、引数が浮動小数点数または複素数の場合は通常の浮動小数点数除算を使用します。結果は、両方の引数が整数の場合は整数、それ以外は浮動小数点になります。
tf.div(7, 5)
# >>> 1
tf.div(-7, 5)
# >>> -2
tf.div(7.0, 5.0)
# >>> 1.4
tf.truediv - 例えば、両方の引数が整数の場合、それらはまず float 型にキャストされ (ドキュメントのウェブページに、どの整数がどの float 型に変換されるかが書かれています)、それから通常の浮動小数点数の除算が適用されます。
tf.truediv(7, 5)
# >>> 1.4
tf.truediv(-7, 5)
# >>> -1.4
tf.truediv(7.0, 5.0)
# >>> 1.4
tf.divide(x,y)
は、基本的に
x/y
の動作に依存します。
/
演算子を使用します。
tf.floordiv
と
tf.floor_div
と同じ結果を返します。
tf.div
両引数が整数で
tf.floor(tf.div(x,y))
は、両方の引数が浮動小数点数である場合。
tf.floordiv(7, 5)
# >>> 1
tf.floordiv(-7, 5)
# >>> -2
tf.floordiv(7.0, 5.0)
# >>> 1.0
tf.floordiv(-7.0, 5.0)
# >>> -2.0
tf.realdiv - 通常の浮動小数点数の除算では、この演算は tf.truediv は、引数をキャストした後に呼び出されます。
tf.truncatediv - は、除算の結果を 0 に丸めます。
tf.truncatediv(7, 5)
# >>> 1
tf.truncatediv(-7, 5)
# UNLIKE tf.floordiv and tf.div
# >>> -1
関連
-
PythonによるLeNetネットワークモデルの学習と予測
-
Pythonコンテナのための組み込み汎用関数操作
-
Python カメの描画コマンドとその例
-
[解決済み】お使いのCPUは、このTensorFlowバイナリが使用するようにコンパイルされていない命令をサポートしています。AVX AVX2
-
[解決済み】TypeErrorを取得しました。エントリを持つ子テーブルの後に親テーブルを追加しようとすると、 __init__() missing 1 required positional argument: 'on_delete'
-
[解決済み] virtualenvで異なるバージョンのPythonを使用する
-
[解決済み] と'is'のどちらかを使って文字列を比較すると、異なる結果になることがあるのはなぜですか?
-
[解決済み] pythonシェルからtensorflowがGPUアクセラレーションを使用しているかどうかを確認する方法は?
-
[解決済み] tensorflowのtf.nn.max_poolのパディングの'SAME'と'VALID'の違いは何ですか?
-
[解決済み】ilocとlocはどう違うのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
python string splicing.join()とsplitting.split()の説明
-
任意波形を生成してtxtで保存するためのPython実装
-
[解決済み] _tkinter.TclError: 表示名がなく、$DISPLAY環境変数もない。
-
[解決済み】「RuntimeError: dictionary changed size during iteration」エラーを回避する方法とは?
-
[解決済み】OSError: [WinError 193] %1 は有効な Win32 アプリケーションではありません。
-
[解決済み】Django: ImproperlyConfigured: SECRET_KEY 設定は空であってはならない
-
[解決済み】TypeErrorを取得しました。エントリを持つ子テーブルの後に親テーブルを追加しようとすると、 __init__() missing 1 required positional argument: 'on_delete'
-
[解決済み】IndexError: invalid index to scalar variableを修正する方法
-
[解決済み] TypeError: 'DataFrame' オブジェクトは呼び出し可能ではない
-
[解決済み】Python - "ValueError: not enough values to unpack (expected 2, got 1)" の修正方法 [閉店].