タグ

ブックマーク / yusuke-ujitoko.hatenablog.com (2)

  • KL divergenceとJS divergenceの可視化 - 緑茶思考ブログ

    Kullback-Leibler(KL) diviergence 同じ確率変数xに対する2つの確率分布P(x)とQ(x)があるとき、 これらの確率分布の距離をKullback-Leibler(KL) divergenceを使い評価できる。 KL divergenceは以下の式で表される。 $$ \begin{align} D_{KL}(P||Q) &= \mathbb{E}_{x \sim P}[log \frac{P(x)}{Q(x)}] \\ &= \mathbb{E}_{x \sim P}[log P(x) - log Q(x)] \\ &= \int_{x} P(x) (log P(x) - log Q(x)) \end{align} $$ このKL divergenceは交差エントロピーで以下のように表すこともできる。 $$ D_{KL}(P||Q) = -\mathbb{H}(

    ZAORIKU
    ZAORIKU 2019/04/18
  • TensorFlowのRNNを追ってみる - 緑茶思考ブログ

    TensorFlowのRNN実装はサンプルが少なく、 かつそういったサンプルコードでは、 限定された一部のAPIしか使っていないなど全体を網羅しづらい感じがあるので、 なるべく全体感を思い出しやすいように、自分用にメモ。 (と言う割に基的なAPIしか使ってないが...) TensorFlowのRNNのAPIを使わないRNNの実装 まずは2(タイム)ステップだけ動作するRNNをつくる。 各ステップで入れるデータをX0, X1としてplaceholderをつくる。 各ステップでは、入力ユニット数(=4)にあたるデータを用意。 今回は隠れ層は1つとして、 唯一の隠れ層のユニット数は6。 n_inputs = 4 n_neurons = 6 X0 = tf.placeholder(tf.float32, [None, n_inputs]) X1 = tf.placeholder(tf.float

    TensorFlowのRNNを追ってみる - 緑茶思考ブログ
  • 1