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を使…

レシピの材料名の表記ゆれに対処する

tl;dr 日本語における自然言語処理では表記ゆれが大きな問題である。 word2vecを使えば辞書や正解ラベルに頼らない(作らない)で済む。 文章ではなくてもdoc2vecを使うと安定する。 はじめに こんにちは、さかぱ(@zacapa_23) です。8ヶ月前に修論が終わり、今…

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という自動着色アプリが流行っているようです。どういう仕組みで着色しているか気になった人も多いのではないでしょうか。そしてちょこっと調べてみると「最新の人工知…

multiprocessingのあれこれ

はじめに こんにちは。さかぱ(@zacapa_23)です。12月になると修論でとても忙しい。しかも2ヶ月前の自分が「12月でも余裕あるでしょ」と思っていたせいでAdvent Calenderに参加してしまいました...。本記事は18日目の記事です。 qiita.comせっかくの機会なの…

PokemonGAN

はじめに こんにちは。修論で忙しいM2のさかぱ(@zacapa_23)です。今日はChainer Advent Calendar 2016 - Qiitaの17日目の記事としてGANをやります。GANといえば去年のAdvent CalenderにDCGANを使ったイラスト生成の記事がありましたね。当時の僕はとても関心…

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

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

ChainerのNStepLSTMでニコニコ動画のコメント予測。

はじめに こんにちは、さかぱ(@zacapa_23)です。先日、情報セキュリティスペシャリスト試験を受けてきました。これはIT系の国家資格試験、情報処理技術者試験の1つで合格率は16%前後です。 その試験会場の女性比率は学部4年に基本情報を受けた3年前に比べて…

ニコニコ動画のコメント次文字予測をChainer LSTMで実装した。

はじめに こんにちは、さかぱ(@zacapa_23)です。9月下旬に内定式のスピーチに任命され、就職前からパワハラを受けていました。おかげさまで顔と名前を覚えてもらった反面、各所から「新人研修でも期待しているよ」とプレッシャーをかけられました。仕事をこ…

Pythonを使ってSlack Botを作成してみた

bot

Duramenteです。 今月のテーマがBotということで、ここ最近使い始めたSlackで動くBotを作成しました。この記事では、 Slack Botの作成方法 Bot作成でつまづいた部分 簡単な機能実装例 を紹介します。

IFTTTとZapierとmyThingsを用いてslackに天気予報botを作成した

bot

はじめに どうもこんにちは。研究室のしがないB4生です。 7月のMonthly Hackのテーマは「Bot」。ということで、アプリケーション連携サービスを使用して、slackに天気予報を流してくれるbotを作成することにしました。使用するサービスは以下の3つです。IFTT…

はてなブログのアクセス解析情報をSlackbotで共有する

はじめに こんにちは、さかぱ(@zacapa_23)です。最近はPokemon GOが大流行ですね。私のキャンパスにもポケストップとジムが設置されていて、常に桜が舞い散り、ジムが建て替えられています。(追記: たった1週間の幻でした。 矢上キャンパスからポケストップ…

Jupyter Notebookの次世代版「JupyterLab」を紹介する

はじめに インストール JupyterLabの特徴 まとめ はじめに SciPy 2016 conferenceで、Jupyter Notebookの次世代版「JupyterLab」が発表されました。早速導入したところ、とても使い勝手がよかったので紹介します。詳しくは以下の記事でご確認ください。 blog…

MNIST分類コードをChainer-v1.11.0のTrainerで書き換える

2016年7月21日に更新しました。 はじめに Chainerがv1.11.0にバージョンアップし、Trainerが新たに導入されました。Released #Chainer v1.11.0! Dataset/training loop abstraction is added. Get free from manual iteration over datasets! https://t.co/2…

Yahooスポーツナビから競馬データをスクレイピングする

やること 使用したライブラリ 取得対象について 取得の流れ 結果 ソースコード やること Yahooスポーツナビ 競馬 keiba.yahoo.co.jpから、競走馬の出走レースの記録をスクレイピングします。 使用したライブラリ 使用したライブラリは ・Beautiful Soup(以…

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

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

Monthly Hack in June - Scraping -

6月のテーマ「Scraiping」に関する記事です。www.monthly-hack.comwww.monthly-hack.comwww.monthly-hack.comwww.monthly-hack.com