Monthly Hacker's Blog

プログラミングや機械学習の記事を中心に書きます。

ClariNetの再現実装で得たParallel WaveNetのノウハウをまとめてみた。

できること はじめに ClariNetとは Autoregressive WaveNet Student Gaussian IAF Text-to-Wave Model さいごに できること この記事では、次のことができるようになります。 Parallel WaveNetを使ったメルスペクトログラムボコーダーの学習

声優統計コーパスWaveNetプロジェクトその2 問題設定編

はじめに プロジェクトについて 現状達成しているアライメントの精度 手法1 人手によるアライメント付与 手法2 Deep Voiceの追試 さいごに はじめに こんにちは、@dhgrsです。 本記事は、声優統計コーパスWaveNetプロジェクトの問題設定確認編です。

声優統計コーパスWaveNetプロジェクトその1 前処理編

はじめに プロジェクトについて プロジェクトの流れ 手法1 CTCロスによる音素アライメントの学習 手法2 Juliusによる音素セグメンテーション さいごに はじめに こんにちは、@dhgrsです。以前こんな記事を書きました。 www.monthly-hack.com 本記事は、この…

声優統計コーパスを使ったWaveNet音声合成/歌声合成に挑戦します

はじめに 声優統計コーパスとは 声優統計コーパスに足りないもの WaveNet音声合成/歌声合成プロジェクト さいごに はじめに こんにちは、dhgrsです。3月に研究室の先生の退官パーティがあったのですが、現役時代に代が被っていない先輩(つまりほぼ初対面の先…

chainerでUNetのようなネットワークをfor文を使って簡単に書く方法

できること はじめに 注意 for文でネットワークを書く動機 サンプルコード 基本形 活性化関数を適用する linkの種類で場合分けする 実用的な例(GANsのgenerator) UNet(concatなし) UNet(concatあり) chainerに詳しい人向けの補足 できること この記事では、…

WaveRNN解説[ネットワーク構造編]

できること はじめに 何がすごいのか ネットワークの出力 Step1: coarseの予測 Step2: fineの予測 さいごに できること この記事では、次のことができるようになります。 シンプルなwaveRNNのネットワーク構造の理解

VQ-VAEの追試で得たWaveNetのノウハウをまとめてみた。

できること はじめに 「膨大な計算資源が必要」に対する回答 前処理 ネットワーク構造 チャンネル数 レイヤー数 ロスと音質の関係 VQ-VAE特有の知見 さいごに できること この記事では、次のことができるようになります。 VQ-VAEを使った声質変換 WaveNetを…

MosaicChainer -自動モザイクサービス-

できること はじめに 利用上の注意 技術的な解説 今後について できること この記事では、次のことができるようになります。 MosaicChainer(自動モザイクサービス) 分類問題を学習したResNetを用いて画風変換

chainerでVQ-VAEを実装した

できること はじめに VQ-VAEとは ネットワーク構造 chainer v3でfunctionおよびlinkを自作する(WIP) CVTK-Corpusを使ってVQ-VAE(speaker-unconditional) パラメータ調整 最後に できること この記事では、次のことができるようになります。 CVTK-Corpusを使…

dockerでディープラーニング(chainer)環境を整える

できること 経緯 dockerを使ったほうが良いケース インストール 一般的な環境構築 FROM RUN 機械学習に特化した環境構築 ARG USER ビルドする イメージを使う エイリアスを登録 nohupなどバックグラウンドで計算を回し続けたいとき(2017/10/22追記) 最後に …

NNablaのImage Augmentationを試してみた

NNablaのimage augmentationの特徴 augmentation一覧 Random Crop Random Flip Random Shift Image Augmentation 最後に NNablaがリリースされて1ヶ月以上経ちました。研究室の先輩が開発のコアメンバーということもあり、リリース直後から注目していたので…

chainerのtrainer機能を使ってDiscoGANを実装した

できること はじめに DiscoGANとは CelebAデータセットのダウンロード updaterの書き換え extensionの追加 前処理の追加 結果 できること この記事では、次のことができるようになります。 CelebAデータセットをダウンロードする updaterを書き換える make_e…

【保存版】chainerのconvolutionとdeconvolution周りを理解する

MathJax.Hub.Config({ tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']]} }); chainerのdeconvolutionがどういう演算をしているのか理解していなかったので、ソースコードとにらめっこしました。ちなみに、以下の可視化は非常に参考になりました。github.c…

chainerのtrainer機能を使ってWGAN(Wasserstein GAN)を実装した

できること 経緯 コードを書き換えるときの注意点 WGANについて できること この記事では、次のことができるようになります。 updaterを書き換える make_extensionでextensionを追加する chainerのtrainerを使ってMNISTでWGAN

修論(卒論)の進捗を確認するslackbot「進捗どうですかbot」を作った

bot

できること 経緯 システムの全体像 pdfのページ数を取得する slackbotを作る botを定期的に実行する できること この記事では、次のことができるようになります。 pdfのページを取得 slack APIを使った投稿 botの定期的な実行

PaintsChainerを数学知識ゼロでも分かるように解説してみた

PaintsChainerの仕組み PaintsChainerの隠し機能 もっと詳しく知りたい人へ 今、chainerという自動着色アプリが流行っているようです。どういう仕組みで着色しているか気になった人も多いのではないでしょうか。そしてちょこっと調べてみると「最新の人工知…

chainerでEBGAN(Energy-Based Generative Adversarial Network)を実装した

できること 経緯 updaterを書き換える chainerでのコサイン類似度の計算 make_extensionでextensionを追加する 結果 パラメータや構造について 出力層の活性化関数 バッチ正規化( BatchNormalization ) 今後 2017/03/09 @akira_you さんにご指摘いただぎ、コ…

chainer 1.11.0のMNISTサンプルを例にtrainerを読み解く

どんな記事? ソースコード Dataset Training Updater Trainer Extension 最後に どんな記事? Chainer 1.11.0で、trainerなどの新機能が追加されました。詳しくはこちら。この記事では、MNISTのサンプルを読みながら、次の機能を理解していきます。 Dataset I…

NHK番組表APIを使って番組情報を取得するCGIをpythonで作った

できること 経緯 NHK番組表APIのユーザー登録 App name アプリのURL プロダクト コード NHK番組表APIの使い方 最後に できること この記事では、次のことができるようになります。 NHK番組表APIを使って任意の番組の番組表を取得する APIで取得した情報を表…