タグ付けされた質問 「tensorflow」

TensorFlowは、ディープラーニング用に設計されたオープンソースライブラリおよびAPIであり、Googleによって記述および保守されています。このタグを言語固有のタグ([python]、[c ++]、[javascript]、[r]など)とともに使用して、APIを使用して機械学習の問題を解決する方法について質問します。TensorFlow APIで使用できるプログラミング言語はさまざまであるため、プログラミング言語を指定する必要があります。[オブジェクト検出]などのアプリケーション領域も指定します。

6
TensorFlowでグラデーションクリッピングを適用する方法は?
サンプルコードを考えてみましょう。 グラデーションが爆発する可能性があるRNN上のこのネットワークにグラデーションクリッピングを適用する方法を知りたいです。 tf.clip_by_value(t, clip_value_min, clip_value_max, name=None) これは使用できる例ですが、どこに導入すればよいですか?RNNのデフォルトで lstm_cell = rnn_cell.BasicLSTMCell(n_hidden, forget_bias=1.0) # Split data because rnn cell needs a list of inputs for the RNN inner loop _X = tf.split(0, n_steps, _X) # n_steps tf.clip_by_value(_X, -1, 1, name=None) しかし、テンソル_Xは入力であり、何がクリップされる卒業生ではないので、これは意味がありませんか? これに対して独自のオプティマイザを定義する必要がありますか、それともより簡単なオプションがありますか?

6
TensorFlowで事前トレーニング済みの単語埋め込み(word2vecまたはGlove)を使用する
最近、畳み込みテキスト分類の興味深い実装を確認しました。ただし、私が確認したすべてのTensorFlowコードは、次のようなランダムな(事前トレーニングされていない)埋め込みベクトルを使用しています。 with tf.device('/cpu:0'), tf.name_scope("embedding"): W = tf.Variable( tf.random_uniform([vocab_size, embedding_size], -1.0, 1.0), name="W") self.embedded_chars = tf.nn.embedding_lookup(W, self.input_x) self.embedded_chars_expanded = tf.expand_dims(self.embedded_chars, -1) 誰かがランダムなものの代わりにWord2vecまたはGloVeの事前訓練された単語の埋め込みの結果を使用する方法を知っていますか?

10
TensorFlowで正則化を追加するにはどうすればよいですか?
TensorFlowを使用して実装された多くの利用可能なニューラルネットワークコードで、正則化用語はしばしば損失値に手動で追加の用語を追加することによって実装されることがわかりました。 私の質問は: 手動で行うよりも洗練された、または推奨される正則化の方法はありますか? 私はそれにもget_variable議論があると思いますregularizer。それはどのように使用すべきですか?私の観察によると、レギュラライザーをそれに渡すと(など)tf.contrib.layers.l2_regularizer、正則化された項を表すテンソルが計算され、という名前のグラフコレクションに追加されtf.GraphKeys.REGULARIZATOIN_LOSSESます。そのコレクションはTensorFlowによって自動的に使用されますか(たとえば、トレーニング時にオプティマイザーによって使用されます)?またはそのコレクションを自分で使用する必要があると思いますか?

5
Dataset.map、Dataset.prefetch、およびDataset.shuffleでのbuffer_sizeの意味
TensorFlowのドキュメント、prefetchおよびクラスのmapメソッドにはtf.contrib.data.Dataset、両方ともというパラメータがありますbuffer_size。 ためのprefetch方法は、パラメータとして知られているbuffer_sizeとマニュアルに従って。 buffer_size:tf.int64スカラーtf.Tensor。プリフェッチ時にバッファーされる要素の最大数を表します。 ためのmap方法は、パラメータとして知られているoutput_buffer_sizeとマニュアルに従って。 output_buffer_size:(オプション)バッファリングされる処理済み要素の最大数を表すtf.int64スカラーtf.Tensor。 同様に、shuffleメソッドについては、同じ数量が表示され、ドキュメントに従っています: buffer_size:新しいデータセットがサンプリングする、このデータセットからの要素の数を表すtf.int64スカラーtf.Tensor。 これらのパラメータ間の関係は何ですか? Dataset次のようにオブジェクトを作成するとします。 tr_data = TFRecordDataset(trainfilenames) tr_data = tr_data.map(providefortraining, output_buffer_size=10 * trainbatchsize, num_parallel_calls\ =5) tr_data = tr_data.shuffle(buffer_size= 100 * trainbatchsize) tr_data = tr_data.prefetch(buffer_size = 10 * trainbatchsize) tr_data = tr_data.batch(trainbatchsize) buffer上記のスニペットのパラメーターはどのような役割を果たしていますか?

4
np.meanとtf.reduce_meanの違いは何ですか?
でMNIST初心者チュートリアル、ステートメントがあります accuracy = tf.reduce_mean(tf.cast(correct_prediction, "float")) tf.cast基本的にオブジェクトがあるが、違いは何であるテンソルの種類を変更tf.reduce_meanしてはnp.mean? ここにドキュメントがありtf.reduce_meanます: reduce_mean(input_tensor, reduction_indices=None, keep_dims=False, name=None) input_tensor:削減するテンソル。数値型である必要があります。 reduction_indices:削減する寸法。None(デフォルト)の場合、すべての寸法が縮小されます。 # 'x' is [[1., 1. ]] # [2., 2.]] tf.reduce_mean(x) ==> 1.5 tf.reduce_mean(x, 0) ==> [1.5, 1.5] tf.reduce_mean(x, 1) ==> [1., 2.] 1Dベクトルの場合はのように見えますがnp.mean == tf.reduce_mean、で何が起こっているのか理解できませんtf.reduce_mean(x, 1) ==> [1., 2.]。tf.reduce_mean(x, 0) ==> [1.5, 1.5]種類作るのは、平均するので、感知[1, 2]と[1, 2]ある[1.5, 1.5]が、何をして起こっているのtf.reduce_mean(x, 1)?

4
Tensorflowでglobal_stepはどういう意味ですか?
これはTensorFlowウェブサイトのチュートリアルコードです。 誰かがglobal_step意味を説明するのを手伝ってもらえますか? TensorflowのWebサイトで、グローバルステップがトレーニングステップのカウントに使用されていることがわかりましたが、正確な意味がわかりません。 また、設定時に数字の0はどういう意味global_stepですか? def training(loss,learning_rate): tf.summary.scalar('loss',loss) optimizer = tf.train.GradientDescentOptimizer(learning_rate) # Why 0 as the first parameter of the global_step tf.Variable? global_step = tf.Variable(0, name='global_step',trainable=False) train_op = optimizer.minimize(loss, global_step=global_step) return train_op Tensorflow doc global_stepによると、変数が更新された後、1ずつインクリメントします。それは、1回の更新global_stepが1になった後という意味ですか?

6
Tensorflowテンソルの次元(形状)をint値として取得するにはどうすればよいですか?
Tensorflowテンソルがあるとします。テンソルの寸法(形状)を整数値として取得するにはどうすればよいですか?私は2つの方法があります知っている、tensor.get_shape()そしてtf.shape(tensor)、私は、整数として形状値を取得することはできませんint32値。 たとえば、以下では2次元テンソルを作成しました。int32呼び出しreshape()て形状のテンソルを作成できるように、行と列の数を取得する必要があります(num_rows * num_cols, 1)。ただし、このメソッドtensor.get_shape()はDimension、ではなく型として値を返しますint32。 import tensorflow as tf import numpy as np sess = tf.Session() tensor = tf.convert_to_tensor(np.array([[1001,1002,1003],[3,4,5]]), dtype=tf.float32) sess.run(tensor) # array([[ 1001., 1002., 1003.], # [ 3., 4., 5.]], dtype=float32) tensor_shape = tensor.get_shape() tensor_shape # TensorShape([Dimension(2), Dimension(3)]) print tensor_shape # (2, 3) num_rows = tensor_shape[0] # ??? num_cols …



5
TensorFlowでCSVデータを*実際に*読み取る方法は?
私はTensorFlowの世界に比較的慣れていないので、CSVデータをTensorFlowで使用可能なサンプル/ラベルテンソルに実際に読み込む方法にかなり戸惑っています。CSVデータの読み取りに関するTensorFlowチュートリアルの例はかなり断片化されており、CSVデータでトレーニングできるようにする方法の一部しか得られません。 これが、CSVチュートリアルに基づいてまとめたコードです。 from __future__ import print_function import tensorflow as tf def file_len(fname): with open(fname) as f: for i, l in enumerate(f): pass return i + 1 filename = "csv_test_data.csv" # setup text reader file_length = file_len(filename) filename_queue = tf.train.string_input_producer([filename]) reader = tf.TextLineReader(skip_header_lines=1) _, csv_row = reader.read(filename_queue) # setup CSV decoding …
83 python  csv  tensorflow 

2
TensorFlowでクロスエントロピー損失を選択する方法は?
ロジスティック回帰や多項ロジスティック回帰などの分類問題は、クロスエントロピー損失を最適化します。通常、クロスエントロピー層はソフトマックス層の後に続き、確率分布を生成します。 テンソルフローには、少なくとも1ダースの異なるクロスエントロピー損失関数があります。 tf.losses.softmax_cross_entropy tf.losses.sparse_softmax_cross_entropy tf.losses.sigmoid_cross_entropy tf.contrib.losses.softmax_cross_entropy tf.contrib.losses.sigmoid_cross_entropy tf.nn.softmax_cross_entropy_with_logits tf.nn.sigmoid_cross_entropy_with_logits ..。 どちらが二項分類にのみ機能し、どれがマルチクラス問題に適していますか?sigmoid代わりにsoftmaxいつ使用する必要がありますか?sparse機能は他の機能とどのように異なり、なぜそれだけなのsoftmaxですか? 関連する(より数学指向の)議論:KerasとTensorFlowのこれらすべてのクロスエントロピー損失の違いは何ですか?。

4
TensorFlowモデルを使用して予測を行う
与えられたmnistチュートリアルに従い、モデルをトレーニングしてその精度を評価することができました。ただし、チュートリアルでは、モデルを指定して予測を行う方法は示されていません。精度には興味がありません。モデルを使用して新しい例を予測し、出力にすべての結果(ラベル)が表示され、それぞれにスコア(並べ替えられているかどうか)が割り当てられています。
82 tensorflow 

4
警告:tensorflow:sample_weightモードは…から['…']に強制変換されました
.fit_generator()または.fit()を使用して画像分類子をトレーニングclass_weight=し、引数としてに辞書を渡します。 TF1.xでエラーが発生することはありませんが、2.1ではトレーニングを開始すると次の出力が表示されます。 WARNING:tensorflow:sample_weight modes were coerced from ... to ['...'] 何かをから...に強制するとはどういう意味['...']ですか? tensorflowのリポジトリに関するこの警告の出典はこちらです。コメントは次のとおりです。 sample_weight_modesをターゲット構造に強制変換しようとしました。これは、Modelが内部表現の出力をフラット化するという事実に暗黙的に依存しています。

2
カスタムTensorFlow Kerasオプティマイザー
tf.kerasAPIに準拠するカスタムオプティマイザークラスを記述したいとします(TensorFlowバージョン> = 2.0を使用)。これを行うための文書化された方法と実装で何が行われるかについて混乱しています。 ドキュメントtf.keras.optimizers.Optimizer の状態、 ### Write a customized optimizer. If you intend to create your own optimization algorithm, simply inherit from this class and override the following methods: - resource_apply_dense (update variable given gradient tensor is dense) - resource_apply_sparse (update variable given gradient tensor is sparse) - create_slots (if …

4
nodejs(tensorflow.js)でモデルをトレーニングする方法は?
画像分類器を作りたいのですが、Pythonがわかりません。Tensorflow.jsは、私がよく知っているJavaScriptで動作します。モデルはそれでトレーニングできますか?そうするためのステップは何ですか?率直に言って、どこから始めればよいかわかりません。 私が考え出した唯一のことは、どうやら事前にトレーニングされたモデルのセットである「mobilenet」をロードし、それを使って画像を分類する方法です。 const tf = require('@tensorflow/tfjs'), mobilenet = require('@tensorflow-models/mobilenet'), tfnode = require('@tensorflow/tfjs-node'), fs = require('fs-extra'); const imageBuffer = await fs.readFile(......), tfimage = tfnode.node.decodeImage(imageBuffer), mobilenetModel = await mobilenet.load(); const results = await mobilenetModel.classify(tfimage); これは機能しますが、私が作成したラベル付きの画像を使用して自分のモデルをトレーニングしたいので、それは私にとっては役に立ちません。 ======================= 画像やラベルがたくさんあるとします。それらを使用してモデルをトレーニングするにはどうすればよいですか? const myData = JSON.parse(await fs.readFile('files.json')); for(const data of myData){ const image = await fs.readFile(data.imagePath), labels …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.