たれぱんのびぼーろく

わたしの備忘録、生物学とプログラミングが多いかも

AI

prediction in 機械学習

PredictionとReconstruction prediction: 対応する特徴量無しに対象の観測値を推定すること reconstruction: 対応する特徴量から対象の観測値を生成すること Predictionの場合、contextを基に観測値を推定する. イメージとしては、1枚だけ裏返しで他が全部表…

論文解説: Polyak (2021) Speech Resynthesis from Discrete Disentangled Self-Supervised Representations

ニューラルな音響特徴量(content, fo, speaker)からneural vocoderで音声合成/変換/圧縮できるかなチャレンジ. 表現学習とボコーダ学習は完全分離 (表現モデルをpretraining -> fix). fixされたモデル出力からボコーダ学習. content表現モデルはCPC, HuBER…

ビット分割

n-bitの整数を整数の組み合わせで表現する方法. 上位ビット/下位ビットみたいなやつ. 表現 6bit == 26 == 0~63 これを上位3bitと下位3bitに分割し、そのペアで表現する. (3bit, 3bit) == (23, 23) == (0~8, 0~8) 変換法 上位decimal = valuedecial // 2nbit/…

論文解説: Valin (2018) LPCNet: Improving Neural Speech Synthesis Through Linear Prediction

LPCNet: 線形予測ボコーダーにexcitation/残差予測のWaveRNNを組み合わせ1、 full neural Vocoders より省パラメータで同精度 スパース化やノイズあり学習、全結合層の工夫など色々最適化してそんな強くないCPUでもリアルタイム合成に成功. speech synthesis…

PyTorchラッパーとCheckpointing

※CoI: PyTorch-Lightning のcontributor (Checkpointing周り) です 比較 wrapper checkpoint local/remote resume/nullable Catalyst ☑ ☑ / □ ☑ / ? Lightning ☑ ☑ / ☑ ☑ / ☑ Ignite ☑ ☑ / △ ☑ / ? △: no direct support, but implementable (handler argume…

Energy-Based Model

Energy-Based Model: "不安定さ"に相当するEnergyを確率変数に割り当てるモデル. エネルギーから確率を得たり、確率変数間のエネルギー比を計算したりして使う. 確率として扱う場合は確率密度関数をボルツマン分布とする. ボルツマン分布はポテンシャル関数…

機械学習コードの抽象化/透過処理

Checkpoint 前提: CheckpointのIOは無視できるほど小さい(爆速でCheckpointをread/writeするやつはいない) 学習開始時に pull checkpoint, 学習終了/中断時に push checkpointが必要. 抽象化をしない場合、remote->local checkpointダウウンロード、checkp…

GPU深層学習 in Container

登場人物は5人. GPU Kernel Mode Driver (nvidia.ko) CUDA User Mode Driver ("CUDA driver", libcuda.so) Docker CUDA Toolkit and Runtime ("CUDA Toolkit") cuDNN CUDA driver / CUDA Toolkit / cuDNNに気を使う事が多い。配置場所は以下の通り ref. Host…

Preemptible/Spotインスタンスで数日かかる機械学習Jobを走らせる

安いクラウドサービスを使って楽々機械学習! まとめ 機械学習ジョブを停止有り格安インスタンスで回せるやつを使う。 @2020-11-17 service scheduling auto-scaling auto-retry preemptible e.g. AWS Batch ☑ ☑ ☑ ☑ AWS SageMaker ☑ ☑ ☑ □ GCP AI Platform ☑…

データのセットアップ・ロード in Python for 機械学習・ニューラルネットワーク

機械学習・ニューラルネットワークにおいて、データを用意・ロードすることは簡単そうに見えて難しい。 corpusのダウンロード・展開 データの前処理・保存 データセット(processed corpusの部分集合)のセットアップ datumのロード アクセス順・バッチ化 分…

PyTorch Lightning

datamodule LightningDataModuleはPyTorch Datasetの軽いWrapper. Train/Eval/Testの分割やDataset preparation & runtime setupなどを包括. moduleがやってくれる仕事はほとんど無くて、どうも分散環境だといいことがあるみたい. newしてtrainerにぼんっと…

Close to Human Quality TTS with Transformer

AI

Close to Human Quality TTS with Transformer (2018) Transformer (phoneme2spec) + WaveNet vocoder を用いたE2E Neural TTS. 2018のTTS SOTA (this system 4.39 vs human 4.44) 概要 Tacotron系のencoderとDecoder 1 をTransformerに置き換えたもの. inpu…

ボイチェンは声のメイク - 声そのものの権利は認められない -

AI

ボイスチェンジは声のメイク/化粧だ。 知人そっくりのメイクをしたら、その人の顔面権侵害になるだろうか? 然るに、声のそのものの権利 - 音紋権 - は存在しない。 ボイスチェンジは声のメイク ボイスチェンジとは、機械によって声質を変換することである。…

声質変換 (Voice Conversion, ボイチェン) とは

声質変換(こえしつへんかん、せいしつへんかん1)とは、声がもつ意味を変えずに質感のみを変えること。正確には、「入力音声に対して, 発話内容を保持しつつ, 他の所望の情報を意図的に変換する処理」2のこと。 英語では「Voice Conversion」や「Voice Tran…

徹底解説!CycleGANで声質変換 (voice conversion, ボイチェン)

AI

CycleGANの声質変換における利用を調べ、技術的詳細を徹底解説する。 CycleGAN-VCとは CycleGANを話者変換 (声質変換, Voice Conversion, VC) に用いたもの。 CycleGANは2つのGeneratorが2つのドメインを相互変換するモデルであり、ドメイン対でペアデータが…

日本語声質変換 (ボイスチェンジ) の先駆者たち

アカデミアは一切フォローできていない。だれかフォローしてくださいお願いします。 バ美肉 選ばれしおじさん達による奇跡の調音。ディープラーニングなんていらなかったんや! ディープラーニングの力で結月ゆかりの声になってみた デモが聞ける日本語VCの…

チャットボット・会話型AIの根源的な利点は何か

根源的な利点は道具の使い方を覚えなくていいこと. 今まで人は、 道具を作り 道具の使い方を覚え習熟する ことで、物事の効率を良くしてきた。 AIはステップ2を消滅させてくれる. 学習コストが極端に低くなるのだ AIは一般論として、デバイスが人間をより理…