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

Googleが開発したディープラーニング用のPythonライブラリ。このタグは、(a)質問の重要な部分または予想される回答のいずれかとしてテンソルフローが含まれるトピックの質問に使用します。&(b)は、テンソルフローの使用方法だけではありません。

2
2Dでの空間ドロップアウトの実装方法
これは、「畳み込みネットワークを使用した効率的なオブジェクトのローカリゼーション」という論文を参照しており、ドロップアウトは2Dで実装されていると理解しています。 空間2Dドロップアウトの実装方法に関するコードをKerasから読んだ後、基本的に形状[batch_size、1、1、num_channels]のランダムバイナリマスクが実装されます。しかし、この空間2Dドロップアウトは、形状[batch_size、height、width、num_channels]の入力コンボリューションブロックに対して正確に何をしますか? 私の現在の推測では、ピクセルのレイヤー/チャンネルのいずれかが負の値を持っている場合、そのピクセルのチャンネル全体がデフォルトでゼロになります。これは正しいです? しかし、私の推測が正しい場合、元の入力ブロックの次元に正確にある形状[batch_size、height、width、num_channels]のバイナリマスクを使用すると、通常の要素ごとのドロップアウトが得られます(これはバイナリマスクの形状を入力の形状として設定するtensorflowの元のドロップアウト実装)convブロックのピクセルが負の場合、convブロック全体がデフォルトで0になります。これは、私がよく理解していない紛らわしい部分です。

2
合計ではなくバッチの平均損失を最小限に抑えることは一般的な方法ですか?
Tensorflowには、CIFAR-10の分類に関するサンプルチュートリアルがあります。チュートリアルでは、バッチ全体の平均クロスエントロピー損失が最小化されます。 def loss(logits, labels): """Add L2Loss to all the trainable variables. Add summary for for "Loss" and "Loss/avg". Args: logits: Logits from inference(). labels: Labels from distorted_inputs or inputs(). 1-D tensor of shape [batch_size] Returns: Loss tensor of type float. """ # Calculate the average cross entropy loss across the …

2
ニューラルネット:ワンホット変数圧倒的連続?
約20列(20フィーチャ)の未加工データがあります。それらのうちの10個は連続データであり、10個はカテゴリカルです。一部のカテゴリデータには、50個の異なる値(米国の州)が含まれる場合があります。データを前処理した後、10個の連続した列が10個の準備された列になり、10個のカテゴリ値が200個のワンホットエンコード変数のようになります。これらの200 + 10 = 210の機能すべてをニューラルネットに入れると、200の1ホットフィーチャ(10のカテゴリ列)が10の連続フィーチャを完全に支配するのではないかと心配しています。 おそらく、1つの方法は、列などを「グループ化」することです。これは有効な懸念事項ですか?この問題に対処する標準的な方法はありますか? (私はKerasを使用していますが、それほど重要ではないと思います。)

5
回帰のコンテキストでは、クロスエントロピーコストは意味がありますか?
クロスエントロピーコストは、(分類ではなく)回帰のコンテキストで意味がありますか?もしそうなら、TensorFlowを通じておもちゃの例を挙げていただけますか?そうでない場合、なぜでしょうか? 私はマイケルニールセンによるニューラルネットワークとディープラーニングのクロスエントロピーについて読んでいましたが、それは回帰や分類に自然に使用できるもののようですが、TensorFlowでそれを効率的に適用する方法がわからないので、損失関数はロジットを取り(私もどちらも理解していません)、ここで分類の下にリストされています

4
グラディエントディセントをオプティマイザーとして使用して、学習率を(体系的に)調整する方法は?
ML / DLフィールドの部外者。Tensorflowに基づくUdacity Deep Learningコースを開始しました。課題3の問題4を行います。次の設定で学習率を調整しようとしています: バッチサイズ128 ステップ数:2エポックを満たすのに十分 隠しレイヤーのサイズ:1024、305、75 重みの初期化:標準で切り捨てられた通常。sqrt(2 / n)の偏差。nは前のレイヤーのサイズ ドロップアウト維持確率:0.75 正則化:適用されません 学習率アルゴリズム:指数関数的減衰 学習率パラメーターをいじくりまわした。ほとんどの場合、効果がないようです。ここにコード ; 結果: Accuracy learning_rate decay_steps decay_rate staircase 93.7 .1 3000 .96 True 94.0 .3 3000 .86 False 94.0 .3 3000 .96 False 94.0 .3 3000 .96 True 94.0 .5 3000 .96 True 学習率を体系的に調整するにはどうすればよいですか? 学習率はステップ数とどのように関係していますか?

2
ミニバッチ勾配降下法は、バッチ内の各例の重みをどのように更新しますか?
10個の例をバッチで処理すると、各例の損失を合計できることは理解できますが、各例の重みの更新に関して逆伝播はどのように機能しますか? 例えば: 例1->損失= 2 例2->損失= -2 この結果、平均損失は0(E = 0)になるので、これにより各重みが更新されて収束するでしょうか。遅かれ早かれ「うまくいけば」収束するのは、単にバッチのランダム化によるものですか?また、これは処理された最後の例の最初の重みのセットの勾配のみを計算しませんか?

2
Keras:val_lossが増加する一方で損失が減少するのはなぜですか?
一連のパラメーターのグリッド検索を設定しました。バイナリ分類を行うKerasニューラルネットに最適なパラメーターを見つけようとしています。出力は1または0です。約200の機能があります。グリッド検索を行ったとき、一連のモデルとそのパラメーターを取得しました。最良のモデルには次のパラメーターがありました。 Epochs : 20 Batch Size : 10 First Activation : sigmoid Learning Rate : 1 First Init : uniform そしてそのモデルの結果は: loss acc val_loss val_acc 1 0.477424 0.768542 0.719960 0.722550 2 0.444588 0.788861 0.708650 0.732130 3 0.435809 0.794336 0.695768 0.732682 4 0.427056 0.798784 0.684516 0.721137 5 0.420828 0.803048 0.703748 0.720707 …

2
Tensorflow `tf.train.Optimizer`はどのように勾配を計算しますか?
Tensorflow mnistチュートリアル(https://github.com/tensorflow/tensorflow/blob/master/tensorflow/examples/tutorials/mnist/mnist_softmax.py)に従っています。 チュートリアルではtf.train.Optimizer.minimize(具体的にはtf.train.GradientDescentOptimizer)を使用しています。グラデーションを定義するために引数がどこにも渡されていないようです。 Tensorフローはデフォルトで数値微分を使用していますか? あなたができるようにグラデーションを渡す方法はありますscipy.optimize.minimizeか?

1
ニューラルネットワークは通常、トレーニング中に「キックイン」するのにしばらく時間がかかりますか?
バックプロパゲーションを使用して、分類用のディープニューラルネットワークをトレーニングしようとしています。具体的には、Tensor Flowライブラリを使用して、画像分類に畳み込みニューラルネットワークを使用しています。トレーニング中に私は奇妙な行動を経験しており、これが典型的であるのか、それとも私が何か間違ったことをしているのかと思っています。 したがって、私の畳み込みニューラルネットワークには8つのレイヤーがあります(5つの畳み込み、3つが完全に接続されています)。すべての重みとバイアスは、小さな乱数で初期化されます。次に、ステップサイズを設定し、Tensor FlowのAdam Optimizerを使用して、ミニバッチでトレーニングを進めます。 私が話している奇妙な振る舞いは、私のトレーニングデータの最初の約10ループでは、トレーニング損失は一般に減少しないということです。ウェイトは更新されていますが、トレーニングロスはほぼ同じ値のままで、ミニバッチ間で上昇または下降する場合があります。しばらくこのままで、損失は減らないという印象を常に持っています。 その後、突然、トレーニングロスが劇的に減少します。たとえば、トレーニングデータの約10ループ内で、トレーニングの精度は約20%から約80%になります。それ以降、すべてがうまく収束します。トレーニングパイプラインを最初から実行するたびに同じことが起こります。以下は、実行例を示すグラフです。 だから、私が疑問に思っているのは、これがディープニューラルネットワークのトレーニングによる通常の動作であり、「キックイン」に時間がかかるかどうかです。それとも、この遅延を引き起こしている何か間違っていることがあるのでしょうか? どうもありがとう!

1
ランダムフーリエの特徴が負ではないのはなぜですか?
ランダムフーリエ機能は、カーネル関数の近似を提供します。これらは、SVMやガウスプロセスなど、さまざまなカーネルメソッドに使用されます。 今日、TensorFlow実装を使用してみましたが、機能の半分で負の値が得られました。私の理解では、これは起こらないはずです。 それで、私は元の論文に戻りました。これは、期待したとおり、機能は[0,1]にあるはずだと述べています。しかし、その説明(以下で強調表示)は私には意味がありません。余弦関数は[-1,1]のどこでも値を生成でき、表示されるほとんどの点には負の余弦値があります。 私はおそらく明白なものを見落としているでしょうが、誰かがそれが何であるかを指摘することができればそれを感謝します。

2
WaveNetは拡張された畳み込みではありませんか?
最近のWaveNetの論文では、著者はモデルを拡張された畳み込みの層が積み重なっていると言及しています。彼らはまた、「通常の」畳み込みと拡張された畳み込みの違いを説明する次のチャートを作成します。 通常の畳み込みは次のようになります。 これは、フィルターサイズが2でストライドが1の畳み込みで、4層で繰り返されます。 次に、モデルで使用されるアーキテクチャを示します。これは、拡張畳み込みと呼ばれます。こんな感じです。 彼らは、各層の膨張が(1、2、4、8)増加していると言います。しかし、私にとってこれは、フィルターサイズが2でストライドが2の通常の畳み込みのように見え、4つのレイヤーで繰り返されます。 私が理解しているように、フィルターサイズが2、ストライドが1、拡張が(1、2、4、8)の拡張畳み込みは次のようになります。 WaveNetダイアグラムでは、どのフィルターも使用可能な入力をスキップしません。穴はありません。私の図では、各フィルターは(d-1)の利用可能な入力をスキップします。これは、拡張が機能しないことになっていますか? だから私の質問は、次の命題のどれが(もしあれば)正しいですか? 拡張された畳み込みや定期的な畳み込みが理解できません。 Deepmindは実際には拡張された畳み込みを実装していませんが、ストライドされた畳み込みを実装していましたが、拡張という単語を誤用していました。 Deepmindは拡張された畳み込みを実装しましたが、チャートを正しく実装しませんでした。 TensorFlowコードを十分に理解していないため、コードが正確に何をしているのかを理解できませんが、この質問に答えられるコードが含まれているStack Exchangeに関連する質問を投稿しました。

1
相互に排他的でないカテゴリを分類できる深層学習モデル
例:仕事の説明に「英国のJavaシニアエンジニア」という文があります。 私は2つのカテゴリとして、それを予測することは、深い学習モデルを使用したい:English とIT jobs。従来の分類モデルを使用する場合softmax、最後のレイヤーで機能を持つ1つのラベルのみを予測できます。したがって、2つのモデルのニューラルネットワークを使用して、両方のカテゴリで「はい」/「いいえ」を予測できますが、さらに多くのカテゴリがあると、コストがかかりすぎます。では、2つ以上のカテゴリを同時に予測するためのディープラーニングまたは機械学習モデルはありますか? 「編集」:従来のアプローチによる3つのラベルでは、[1,0,0]によってエンコードされますが、私の場合、[1,1,0]または[1,1,1]によってエンコードされます 例:3つのラベルがあり、文がこれらすべてのラベルに収まる場合。したがって、softmax関数からの出力が[0.45、0.35、0.2]である場合、3つのラベルまたは2つのラベルに分類する必要がありますか、それとも1つにすることができますか?それを行うときの主な問題は、1、2、または3つのラベルに分類するための適切なしきい値は何ですか?
9 machine-learning  deep-learning  natural-language  tensorflow  sampling  distance  non-independent  application  regression  machine-learning  logistic  mixed-model  control-group  crossover  r  multivariate-analysis  ecology  procrustes-analysis  vegan  regression  hypothesis-testing  interpretation  chi-squared  bootstrap  r  bioinformatics  bayesian  exponential  beta-distribution  bernoulli-distribution  conjugate-prior  distributions  bayesian  prior  beta-distribution  covariance  naive-bayes  smoothing  laplace-smoothing  distributions  data-visualization  regression  probit  penalized  estimation  unbiased-estimator  fisher-information  unbalanced-classes  bayesian  model-selection  aic  multiple-regression  cross-validation  regression-coefficients  nonlinear-regression  standardization  naive-bayes  trend  machine-learning  clustering  unsupervised-learning  wilcoxon-mann-whitney  z-score  econometrics  generalized-moments  method-of-moments  machine-learning  conv-neural-network  image-processing  ocr  machine-learning  neural-networks  conv-neural-network  tensorflow  r  logistic  scoring-rules  probability  self-study  pdf  cdf  classification  svm  resampling  forecasting  rms  volatility-forecasting  diebold-mariano  neural-networks  prediction-interval  uncertainty 

1
セマンティックセグメンテーションの出力形式について
セマンティックセグメンテーションペーパーとそれに対応する実装を読んでいると、ソフトレベルを使用するアプローチもあれば、ピクセルレベルのラベリングにシグモイドを使用するアプローチもあることがわかりました。 たとえば、u-netペーパーの場合、出力は2つのチャネルを持つ機能マップです。 これらの2つのチャネル出力でsoftmaxを使用する実装をいくつか見ました。以下の理解が正しいかどうかわかりません。 説明のために、マスクされた部分はクラス1に属し、他の部分はクラス2に属しています。私は、マスクまたは非マスクの2つのクラスのみを想定しています。 xy出力マップを形状(1、image_row、image_col、2)で表すために使用します。次に、xy[1,0,0,0]クラス1に属する(0,0)xy[1,0,0,1]のピクセルの確率を表しますが、クラス2に属するピクセル(0,0)の確率を表します。xy[1,row,col,0]+xy[1,row,col,1]=1 私の理解は正しいですか?

2
tf.nn.dynamic_rnn()の出力は何ですか?
私は公式文書から私が何を理解しているかについて確信がありません、それは言う: 戻り値:ペア(出力、状態)ここで: outputs:RNN出力テンソル。 time_major == False(デフォルト)の場合、これはTensorシェイプになります: [batch_size, max_time, cell.output_size]。 の場合time_major == True、これはTensorシェイプになります[max_time, batch_size, cell.output_size]。 場合注は、cell.output_size整数またはTensorShapeオブジェクトの(おそらくネスト)タプルは、次に、出力タプルが、cell.output_sizeと同じ構造を有するにおける形状データに対応する形状を有するテンソルを含むであろうcell.output_size。 state:最終状態。cell.state_sizeがintの場合、これはShapedになります[batch_size, cell.state_size]。TensorShapeの場合、これは整形され[batch_size] + cell.state_sizeます。それが(おそらくネストされた)intまたはTensorShapeのタプルである場合、これは対応する形状を持つタプルになります。セルがLSTMCellsの場合、状態は各セルのLSTMStateTupleを含むタプルになります。 であるoutput[-1]は常に(RNN、GRU、LSTMすなわち3つのすべての細胞型において)状態に(リターンタプルの2番目の要素)を等しく?どこにでもある文献は、隠された状態という用語の使用においては自由主義的すぎると思います。3つすべてのセルの非表示状態がスコアになりますか?

3
TensorFlowの計算モデルで、一般的な機械学習アルゴリズムを実装することは可能ですか?
https://www.tensorflow.org/ GitHubで見たTensorFlowのプロジェクトはすべて、ある種のニューラルネットワークモデルを実装しています。TensorFlowがDAGよりも改善されていることを考えると(これはもはや非循環ではありません)、いくつかの固有の欠点により一般的な機械学習モデルに適さなくなるのではないかと思っていましたか? TensorFlowの計算モデルで、一般的な機械学習アルゴリズムを実装することは可能ですか?

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