kivantium活動日記

プログラムを使っていろいろやります

C89 3日目に行ってきた

C89 3日目に面白そうな同人誌がたくさん売っていたので参戦していろいろ買ってきました。買ったもの・中身の紹介・感想を書いていきます。


SIG2D'15

今回のメインターゲットはこれでした。新刊の'15と既刊の'14を買いました。 (サークルのWebサイト
ご注文はDeep Learningですか? - kivantium活動日記はSIG2D'14の「葉月ちゃんでも出来るDeep Learning」のコードを使って書いたものです。「ソースコード上げていいのだろうか」とTwitterに書いたら中の人がMITライセンスであることを追記してくれたのでとても助かりました。友利奈緒判定botとかもこれの派生なのでSIG2Dにはとても感謝しています。本当にありがとうございます。

今回の記事も参考になりそうなものがたくさんありました。

妹へのケモミミ付加

二次元キャラにケモミミを半自動で付加するWebシステムの作成記録でした。
ultraistさんのPerl版AnimeFaceを使って顔検出を行い、髪の色と連動するように色を変更したケモミミを適切な位置に付加するようになっています。特に色変換手法にこだわりが感じられてデモサイトで試した結果もとても良い感じでした。


AnimeFaceで取得した目の位置を顔の傾きや髪の毛の位置の推定に活かしていてすごいと思いました。色変換も僕ならHSVのHだけ揃えて終わりにしてしまいそうなところを線形補間できれいに変換できていて、妹ドリブン開発の優秀さを感じさせられました。

Illustration2Vecに基づく高精度な二次元画像判別器の生成

ある画像が二次元画像かどうかを判定する判別器をIllustration2Vecのファインチューニングで作成した記事でした。
タグ出力のモデルにInnterProduct, SoftmaxWithLoss, Accuracyレイヤーを追加したフルネットワーク、モデルのうち最初のいくつかの層のみを使ったミニネットワークで精度を調査し、フルネットワークでは99.3%の正解率・6層中最初の4層だけでも98.9%の正解率が出ることを実験していました。

手元で動かしたことがありますが、Illustration2Vecは二次元画像に対してかなり優秀な特徴抽出を行ってくれるのでとても良いネットワークです。今後も活用事例がどんどん上がってくるのを楽しみにしています。

R-CNNによる二次元画像顔位置検出

R-CNNで顔位置検出を行いultraistさんのOpenCV版AnimeFaceと精度を比較していました。
顔位置候補の検出にはdlibのSelective Search、顔画像かどうかの判定にはCIFAR-10のfullネットワークを利用していました。それなりの精度が出ているようでしたが十分ではなく、また速度が遅いことが指摘されていました。

近いうちに前回の記事で紹介したFaster R-CNNを実装しようと思っていたのですが、この方も実装したいと書いていらっしゃったので競争になりそうです。次回作も楽しみにしています。

Twitter絵師のジャンル分け

同じ人物によってリツイートされた絵師は類似しているという考えに基づき、Twitterに投稿された絵が誰によってリツイートされたかを見ることによって絵師のクラスタリングを行う試みでした。
Spectral ClusteringとHierarchial Clusteringを試し、後者によって男性向け・女性向け程度のクラスタ構造は明らかにできたもののそれよりも深い構造については課題が残るという内容でした。

Twitterに流れてくる絵については記録が残りにくいこともあって、推薦や分類・検索の研究開発が重要だと思っているのでこの方向性での研究が進んでいくことに期待しています。

とある艦船収集ゲームの自動実行

「艦船収集を目的とする、とあるオンラインFlashゲーム」の自動化システムの枠組みを考察した記事でした。自動操作であることがバレないように画像認識でクリックを実行したり、クリック位置をランダムにしたりと様々な工夫がなされていました。

C89コンパイラの実装

コミックマーケット89であることにちなんでC89コンパイラを実装する記事でした。
Ocamlの字句解析・構文解析に関するライブラリを使ってアセンブリを出力するまでが簡単に解説されていました。

僕はコンパイラに関する知識がまったくないのですが、これを見ると思ったほどは難しくなさそうだと感じました。500行のCコンパイラなどもあり、死ぬ前に一度実装してみたい気持ちが高まりました。

SIGNICO

SIGNICO vol.1のPDF版を買いました。(サークルのWebサイト

フレーム補完

waifu2xで有名になったCNNによる超解像技術の応用で、前後フレームから中間フレームを予測するネットワークを組んでフレーム補完を行っていました。

CNNによる補完はさぁカメラが下からグイッとパンしてタイトルロゴがドーン!みたいな動きに対しては有効だと思いますが、キャラクターの動きのような非線形な動きの補完はCNNでは無理そうな感じがあるのですがどうなんでしょうか。SHIROBAKOでも語られていたように中割りは結構特殊な動かし方をした方が自然に見えるみたいな話もあり、かなり高度な知能が必要そうなタスクなので今後に注目していきたいです。

トピックモデルを用いた次クールのアニメ視聴予測

Animetickの視聴データからトピックモデルを用いてアニメのレコメンドを行い、ベースラインの協調フィルタリングと比べてより良いレコメンドができることが示されていました。

単語ではなくアニメに対してトピックモデルを適用している点が非常に面白かったです。追っていなかったアニメが途中から盛り上がって話題についていけず歯がゆい思いをしたことが何度もあるのでこのような研究には深い意義があると思います。ぜひデモサイトが欲しいです。

丼丸認識API

丼丸という店の丼を画像認識で発見するプログラムの作成記録でした。dlibのSelective Searchで物体候補を発見したあと、Dense Sampling Siftで特徴量を抽出し、libsvmによる1クラスSVMで判定を行うという手法です。丼と判定された部分については同様の方法でどの具なのかを判定し丼の推定を行っていました。

本文中で

実は本稿のネタ探しに詰まっていたところ, 機械学習界隈で著名な方の blog 記事 [kivantium] にたどり着き
Selective Search なる部分画像を提案してくれるアルゴリズムが存在することが分かり, 本稿のテーマを決定し
た. 記事を書かれた @kivantium 氏には大変感謝している.

という形でdlibを用いたselective search - kivantium活動日記が引用されていました。こちらこそ言及いただきありがとうございます。

Structure from Motionsで復元する3Dアニメの世界

街の写真から街の3Dモデルを生成する技術を3D CGアニメに適用することで、アニメの3Dモデルを構成するという内容でした。

かなりそれらしい結果が得られていましたがMMDとかに使うには荒すぎる印象だったので今後の技術発展に期待です。ところで、実験データとしてRWBYが使われていたのを見て、おすすめされていたのにイベント上映を見逃したことを思い出してしまってつらい気持ちになりました。

ディープバストアップ

Illustration2Vecのモデルを使って、テクスチャを保ったままhuge breastsなどの巨乳っぽいタグの確率を上げるように画像を変えていくという面白い試みでした。結果画像を見ると確かに巨乳化しようとしている気持ちが分かります。

誤差逆伝搬で特定のクラスの出力値を強めると意味不明な画像になりがちですが、テクスチャの制約を加えることで近い画像にしたのがすごいと思います。貧乳キャラを巨乳化することが望まれているかどうかについては言及しないことにしておきます。

収束祈祷中

猫と狐と機械学習 #0を買いました。製本をミスってしまったそうでお悔やみ申し上げます。

ディープラーニングの解説、顔画像を切り出して絵師の判定を行う記事、ニコニコ静画の学習済みChainerモデルでタグ予測を行う記事がありました。領域切り出し→物体判定という流れがどこのサークルでも行われているようで、機械学習の分かりやすい例として人気なんだなという印象でした。

SunPro

SunPro 2016をいただきました。今日入手したなかで一番厚い冊子なのに無料配布されていてすごいです。SunPro C89 特設ページでPDFが配布されています。

  • 機械学習石川啄木の未完の短歌を完成させる」マルコフ連鎖で生成した文章から五七五七七を切り出し、ナイーブベイズ分類器で石川啄木っぽいものを抜き出すという感じでした
  • 「実装でわかる統計的性質変換」実装を示しながら固有声を使った統計的声質変換を解説していました。今度自分でもやりたいです。
  • 「絵を描いて理解する圏論」いま流行りの圏論の話でした。あとで読む
  • 「Raspberry Piで照明のスイッチと永遠におさらばする方法」RaspiでドアのNFCタグを読み取り、照明のリモコンを操作する話でした。こういうDIYやりたい。

生命科学同女子会

実験好学 vol.1を買いました。表紙も内容もすごくよかったです。誰が書いてるんだろう?

  • 「そういえばiPS細胞というので同性の間でも子供ができるらしいです」本当にできるか最近の幹細胞研究を引用しながら検証した記事。結論にはけっこう辛いものがありました。
  • 「口腔内細菌叢を利用したかくれ百合カップルの同定」キスで唾液が交換されることからカップルの細菌の構成が似るだろうという考えを検証した論文の紹介。僕の卒論にできそう。
  • 「アニメキャラの眼の色に関する考察」眼の色を決定する因子に関するレビュー。あまり考えたことがなかったので新鮮でした。
  • 数理モデルから見た女子寮効果について」女子寮効果を数理モデルを立てて検証した記事。かなりの力作だと感じました。こういうことができるようになりたい。

石貫會

「Effective 量子コンピュータ」を買いました。すごくしっかり書かれているように見えます。量子コンピュータは勉強したいテーマなのでちゃんと読んで勉強したいです。

東京都市大学コンピュータ技術研究会

CTRL JOUNALを買いました。「Twitterから『バブみ』を感じるキャラクターを抽出する」の記事に惹かれました。Word2Vecを使ってバブみの高いキャラクターを探したようです。
たぶんこれと同内容Twitterの投稿でWord2Vecに「バブみ」とは何かを答えてもらった - 因幡めぐるのミックスジュース

京大マイコンクラブ

独習KMC vol.8を買いました。C89コンパイラの記事が出るはずだったのですがまだ完成してないらしいです。たぶんこれの増補版。コミックマーケット89記念!ANSI C89コンパイラを作る【KMCアドベントカレンダー12日目】 - prime's diary

メークドラマ推進派

MDP Tech Review Vol.2を買いました。ACM SIGGRAPH Asia 2015のレビューでした。

チラ裏商事フリーソフト調査室

「標準ライブラリ関数printf()のソースコード解説」を買いました。入出力と可変長引数についての説明が中心だったので、書式変換・システムコールについては扱われていないのが残念でした。

Tsukuba Coq User's Group

おつかいで「Coqによる定理証明」を買いました。しっかりしたつくりであることは分かりましたが、前提知識がないので簡単には読めませんでした。いつかCoq入門したい。

おわりに

年が明けてから書いた部分は適当になってますね……。「あとで読む」に分類してしまった本もちゃんと読んで身につけたいところです。

会場で見つけたこのブログと関係ありそうな本は全部買ったのですが、こんなのもあったという事例があったら教えてくれると嬉しいです。(こう書いて教えてもらえたことほとんどないんだよな……)

2016年は頑張りたいです。