Monthly Hacker's Blog

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

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

Python3でurllib.requestとBeautifulSoupを使って音域データのスクレイピングをしてみる

はじめに 大まかな方法 使用するモジュール 条件の指定 指定したアーティストのWebページのスクレイピング 検索、出力 ソースコード 問題点・改善案 はじめに 6月のMonthly Hackのテーマは「スクレイピング」。ということで、自分が普段から見ているWebサイ…

Selenium with Pythonで読者になっておきたいブログを見つける

はじめに 推薦モデルの概要 Seleniumの紹介 ソースコード解説 機械学習界隈でのオススメブログ 振り返り はじめに 6月のMonthly HackはScrapingということで、はてなブログを対象にしました。人気エントリーなどで面白い記事を探せるけれども、特定のキーワ…

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

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