パワースペクトルの変換に関するメモ
かなり久しぶりだけど、うまくは行ってないのでアイディアのメモだけ。 今の変換の問題の話 今はパワーを の範囲に正規化1ための として、 を使っている。これは 2 で 。 ただこれだと、畳み込み層の padding が 0 埋めのせいで、スペクトログラムの縁がすごいパワーが高い感じになってしまう。そのため、 な関数を使いたい3。 これは単純に とすれば良さそうだ。計算コストも...
実験記録 ae244bb7: Griffin-Lim の二次元拡張
びっくりするほど成果が出ないので、現実逃避に別のことをする。 今回試すのは、Griffin-Lim1 と呼ばれるアルゴリズムを画像に応用できるかということ。 やること STFT を2次元に拡張する 位相を捨てる Griffin-Lim で位相推定 画像を復元する STFT の二次元拡張 STFT を...
実験記録 bc7db4a2: AutoEncoder の修正
前回の実験で、周波数方向に全結合しようとしていたが、勘違いのため全結合できていなかった。 今回は、全結合を含めたモデルに変更し、潜在変数を時間方向に16、周波数方向に4096要素のベクトルとして得る。 モデル graph TD input("«Input»<br/>Spectrogram<br/>1 x 32 x 256...
実験記録 c9335bce: AutoEncoder の実装
声質変換のための AutoEncoder を実装する。 方針としては、以下の通り。 周波数方向への全結合を含む 時間に沿った複数の潜在変数を得る。 入力 入力スペクトログラムは、以下の手順で生成する。 16000Hz, 1ch にリサンプリングする。 任意の1689サンプル(約1秒間)を抽出し、[-1,...
module:vox.lve
さすがにそろそろ心が折れてきたので違うアプローチを試していきたい。 以下走り書き AutoEncoder とかでベクトル圧縮をする 潜在変数を編集する x’ = ax + b の a と b を学習するとか Conditional GAN
実験記録 cfcefd21
現在のモデルでは、VRAM 不足により、minibatch size を2のような小さい値1にしなければ学習できない。 そこで、入力のスペクトログラムのサイズを時間方向に小さくすることによって、必要な VRAM の大きさを減らすことができるのではないかと考えた。 特に、今までの実験では1枚のスペクトログラムで約4秒分の音声を表していた。これは声質変換目的では過剰だと考えられる。 今回は...
実験記録 fbf548f6
今までは記録されている全てのラベルを学習に使用していた。今回は、Data Augmentation として、確率でラベルを欠けさせることにした。 具体的には、指定した確率(デフォルトでは0.5)でどれか一つのラベルが欠け、これをラベルの数-1回だけ繰り返す。ラベルは最低でも1つ残る。 学習の方法は前回の実験と揃えた。 学習パラメータ optimizer: RMSpro...
実験記録 9ada9179
StarGAN によって声質変換を試みる。 これまでの実験では、CycleGAN に倣って Identity Mapping Loss が導入されていたが、これがどのように働いているか不明なため、いちど取り除いて実験する。 入力データ等は以前の実験と同じ。 モデル Discriminator のモデル 以前の実験と同じ。 Generator のモデル graph TD sub...
実験記録 31f31449
StarGAN によって声質変換を試みる。 前回の実験の結果を踏まえ、Generator モデルの ResBlock で横長のフィルタを使うことにした。 また、ただフィルタを横に広げるだけでは VRAM 不足に陥ってしまったため、Downsampling/Upsampling を一段深くすることにした。 入力データ、Discriminator モデル、学習方法は 前回の実験 と同じにな...
実験記録 47c97768
StarGAN によって声質変換を試みる。 StarGAN 論文 に近い形での実装をしたかったが、GPU で学習しようとした際に VRAM 不足により落ちてしまった。 そこで、VRAM 内に収めるためにネットワークを縮小した。これにより表現空間が小さくなりすぎている可能性がある。 入力データ スペクトログラム(音声データ)とラベル(教師データ)の二種類を扱う。 スペクトログラム 以...
実験記録 e19098ab
StarGAN (Conditional GAN) の実装にあたって、Discriminator にクラス分類できるだけの表現力があることを予め示したい。 以前の実験での話者分類精度の低さはある程度改善されたが、もう少し精度を上げたい。 今回は、StarGAN 論文での Discriminator 実装に準拠した classifier を実験する。 モデル graph TD inp...
実験記録 7a184ccb
StarGAN (Conditional GAN) の実装にあたって、Discriminator にクラス分類できるだけの表現力があることを予め示したい。 以前の実験では、話者を分類する能力が著しく低かったため、それを改善することが目標になる。 モデル graph TD input("«Input»<br/>Spectrogram&...
mermaid を GitHub Pages とかで使う
markdown 内に記述された mermaid を、GitHub Pages 等でグラフの形で表示するためのスニペット。
module:vox
深層学習による声質変換を目指す。 基本的なアプローチは、音声データを一度スペクトログラムに変換し、unpaird な pix2pix の domain-transform を行う。 目標となる要件は以下。 入力と出力で言語情報が維持される (同じ言葉を発していると感じることができる) 出力が目標のドメインに属すと認識できる 要する...
実験記録 54314b33
StarGAN もどきによる声質変換。 モデル graph TD subgraph Input input-spectrogram("«Input»<br/>Spectrogram<br/>1 x 256 x 256<br/>[0, 1]") input-speaker("«...