2020-01-01から1年間の記事一覧

エルミート行列の性質z*Mzについて

エルミート行列についての値は実数になる 証明 ここでとおく.() 両辺の共役転置をとると, 上の3式からでありが実数であることがわかる. よっての値が実数であることが示された.

「半正定値行列が対称行列である」ことの意味

複素数まで拡張しても使用できる定義 この定義なら,はエルミート行列であることが保証される.の要素がすべて実数のときは,当然は実対称行列であることが保証されることになる. 証明 と定義する.ここで,はに注目するとエルミートだとわかることに注意する. こ…

半正定値行列は半正定値の平方根をただ一つ持ち,それを主平方根と呼ぶ

主平方根が存在することの証明 半正定値行列に関して,を満たすが存在することを証明する. は半正定値であるから,対称行列でもある.よって,ある直交行列によって,と表せる.() ここで,とおき,とする.ここで,Bは半正定値行列となることに注意する. を計算する. …

実対称行列の固有値は実数であることの証明

実対称行列の固有値は実数である 証明 準備 両辺の共役転置をとって, ここでについて二つの表現を導き,比較する. 固有値が実数であることがいえた. 参考 mathtrain.jp

実対称行列が直交行列によって対角化できる理由

実対称行列が直交行列によって対角化できる理由 ①実対称行列は固有ベクトルが直交する. ②固有ベクトルを並べてできた直交行列によって対角化が可能 実対称行列の固有ベクトルは直交する 証明 参考 risalc.info https://www.cck.dendai.ac.jp/math/support/ch…

直交行列の性質

直交行列の定義 直交行列とその転置行列の積をとると,単位行列になる. 直交行列の性質 証明 であることが示せた. 証明 よって示すべきことが言えた. 証明 略 証明 示すべきことがいえた. 証明 示すべきことが言えた. 参考 mathtrain.jp

Fréchet Inception Distanceが2048個以上のサンプルを必要とする理由

Fréchet Inception Distanceを計算するためにはサンプルの分散共分散行列の平方根を計算する必要がある. この分散共分散行列は2048次元のベクトルに対して求められる.つまり,行列のサイズは2048*2048である. この分散共分散行列のランクはサンプルの個数分と…

行列のランク

行列のランクの性質のうち,よく使うものを列挙する. ・ ・ 行列C=ABはAのベクトルの線形和によって表現されているから,CのランクがAのランクを下回ることはない. ・ 番外編 当たり前だが,対称行列が常にフルランクであるということはない.

Python ModuleNotFoundError: No module named 'foo' の解決策

import os import sys sys.path.append('モジュールの完全パス') これで一時的にパスが追加され,moduleが読み込めるようになる.

GAN元論文日本語

定義 本文 生データの分布からのサンプルとGeneratorによって生成された分布からのサンプルの間を識別するため,GANは,同時に識別分布を更新することによって学習される. 学習当初はDiscriminatorの学習が未熟であることを加味しても,Generatorの性能が悪い…

通信関連の基礎知識

パケット通信 情報を小包のように小分けにして通信 ルーター デフォルトゲートウェイの役割を果たす Local Area Network 例えば家庭なら、ノートパソコンからルーター(デフォルトゲートウェイ)までのネットワークを示す。 イーサネット LANの規格の一種。広…

UpSamplingの解説

UpSampling 画像を拡大させる方法を広くUpSamplingと呼ぶらしい tf.keras.layers.UpSampling2D 入力 拡大前の二次元の画像を表現する四次元のテンソル(batch_size,rows,cols,channnels) 出力 拡大後の二次元の画像を表現する四次元のテンソル(batch_size,row…

CGAN元論文のMNISTでの実験結果パートまとめ

CGANでMNISTを学習した。エンコード形式はone-hotベクトルである。 Generator GeneratorではReLU->ReLU->sigmoid Discriminator

ヤコビアンを用いた重積分におけるdxdy=|J|dsdtの直感的な理解

ヤコビアンを用いた重積分におけるの直感的な理解 を証明する。以下の議論では座標系はxy直交座標系で考える。 という近似が成立する。 この2式から が導かれる。また、 であることに気を付けて、 この式の意味を図示すると、以下の2画像のように異なる経路…

最適なエンコードと情報量の関係

問題設定 情報を"0"と"1"の二つの記号を用いて伝達するときの最適なエンコード方法について考察する。 そしてその方法とは、シグナルの発生確率に反比例した語長(具体的には)のコードワードを割り当てることであることをこれから説明する。 最後に情報量と…

イェンセンの不等式と期待値

イェンセンの不等式 ここでを満たし、は凸関数であるとする。 イェンセンの不等式と期待値 凸関数に対して上が成立する。 であり、であるから、に注目するとイェンセンの不等式が適用できて、である。 上に凸な関数についての補足 が凸関数のとき(下に凸な…

HDF5ファイルについて

拡張子.h5のファイルはh5pyをインストールして操作することができる github.com

verbose=1について

tf.kerasのSequentialモデルAPIにおいてverbose=1とするとログを吐いてくれえるが、verbose=0として消しても問題ない

Inception Score

情報量 確率で起こる事象の情報量はで表現される。(底は2) 情報量 情報量は「ある事象が起こった」という情報のインパクトを定量的に表す。 の形は事象が起きる確率が高ければ小さく、低ければ非常に大きくなるように設計されている。起こる確率0の事象が起…

tf.keras.layers.Conv2D

カーネルの設定は特に指定しなけてば自動でtf.Kerasがしてくれる。ユーザーがカーネルをカスタマイズすることも可能 ストライドは次元それぞれに対してセッティングすることができる Conv2D(64,(5,5),の意味:5*5のカーネルを64枚使う(フィルター数64) 参考 q…

Pythonのスライスの基本

Pythonのスライス +---+---+---+---+---+---+ | P | y | t | h | o | n | +---+---+---+---+---+---+ 0 1 2 3 4 5 6 -6 -5 -4 -3 -2 -1 インデックスは上のように表現される numpy arrayを切り取る from keras.datasets import mnist import numpy as np (X_…

Conditional GANのone-hot表現を利用した条件付けのコードを読む

データのロード部分の実装を読む 次元をひとつ追加している (60000, 28, 28)->(60000, 28, 28,1) (X_train, y_train), (_, _) = mnist.load_data() X_train = (X_train.astype(np.float32) - 127.5)/127.5 X_train = X_train.reshape(X_train.shape[0], X_tr…

tf.keras.Input

Input layerについて このKerasテンソルはTensorFlowのシンボリックテンソルオブジェクトで、モデルの入力と出力を知るだけでKerasモデルを構築できるように、Input属性を付与する。 例えば、a, b, cがKerasテンソルの場合、次のようになる: model = Model(…

tf.keras.Model.train_on_batch()

train_on_batch(x,y) バッチサイズ分のデータを使って一回重みを更新する。 xはinput data, yはtarget data.(与えられる正解ラベル 教師) Returnsは重み更新後のネットワークの出力とラベルから計算される損失関数の値とmodel.complile()のときに指定されたm…

GANの損失関数

Conditional GANの実装について

Generator->Discriminatorと接続されている github.com d_lossはdiscriminator.train_on_batch()を用いてdiscriminatorの損失関数を計算する g_lossはGenerator->Discriminatorと接続したネットワーク(gan)に対してgan.train_on_batch()を利用して計算する。…

TensorFlowのsymbolic Tensor

symbolic Tensorとは特定の値を保持していないTensorのことらしい データを流す前のモデルのイメージ?

GANs in Action Chapter8 Trainingのコードを読む

train accuracies = [] losses = [] def train(iterations, batch_size, sample_interval): # Load the MNIST dataset (X_train, y_train), (_, _) = mnist.load_data() # Rescale [0, 255] grayscale pixel values to [-1, 1] X_train = X_train / 127.5 - …

One-Hot layer in Keras's Sequential API 解説

tf.KerasのSequential APIでインデックスをone-hot表現に変換するlayerに変換する githubで記事を見つけたので日本語で解説する まず、この実装のAPIのもととなったEmbedding layerの引数について Embedding(input_dim,output_dim,input_length=None) これら…

Tensorflow入門 カスタムレイヤー

tf.keras.layers.Denseについて Denseの挙動 import tensorflow as tf test_layer = tf.keras.layers.Dense(10) test_layer(tf.zeros([3, 5])) このコードだと、test_layerの挙動は input: <tf.Tensor: shape=(2, 5), dtype=float32, numpy= array([[0., 0., 0., 0., 0.], [0., 0., 0., 0., 0.]], dtype=float32)> output: </tf.tensor:>