紙読み日記 (1)

ひまつぶしにぱらぱら論文を読む活動は続けたいと思い、昼休みとかにちょこちょこ読んでる。論文単位で記事にすると細かすぎるが、日記にまぜると見失いがちなので、何本かまとめて書き出してみる。

[1910.02190] Kornia: an Open Source Differentiable Computer Vision Library for PyTorch

PyTorch を使って OpenCV みたいな伝統的 CV を実装してみたよという話。GPU が使えて割と速いし、NN のアルゴリズムでも前処理に OpenCV つかったりするからぜんぶ PyTorch になってると便利だよと主張する。OpenCV の contributor の一人が書いている事実は面白い。

有り難みに実感はないが、NumPy の上に作られたライブラリたちを PyTorch 用に再実装すると嬉しいケースはぼちぼちあるのかもしれない。

A Landscape of the New Dark Silicon Design Regime

しったかぶりをしてしまった反省を踏まえ、関連論文を読む。これは Dark Silicon をテーマにやっていた UCSD のプロジェクトの終盤にかかれたまとめ論文みたいな内容。Dark Silicon の有効活用として色々な方針があるという話をしている。一つは Near Threshold Voltage Design という、要するにクロックを下げまくるという話。あまりピンとこない。あとはキャッシュに使うのも良いと行っており、最近のサーバサイドの CPU のキャッシュがやたらでかいのは余り面積を活用するためだったのか・・・と腑に落ちた。

特殊用途の回路を作る話としては Android platform の一部を C からコンパイルするハードウェアで置き換えた GreenDroid という研究が紹介されていた。おなじ UCSD のグループが 2011 年にやったもの。Domain Specific Architecture の前進みたいな Conservation Cores というアイデアに基づいているらしい。

[1909.09436] CodeSearchNet Challenge: Evaluating the State of Semantic Code Search

GitHub が MSR と共同ではじめたコードサーチランキングの competition を紹介する論文。自然言語でコードを検索したいんだけどどうしようという問題。

サーチとかランキング以外の部分を作るだけでも大変じゃん・・・と思っていたが、ランキング以外の部分はぜんぶ前処理して JSON を用意してくれており、それをランキングするという趣旨だった。あと LTR みたいなログ頼りではなく伝統的 (?) な IR に近い。

具体的にはコードのコメントをクエリーにしてメソッドを特定するような構成。メソッドは本文も適当に tokenize した文書になっている。最終的なテストは Stakcoverflow のデータを使っている。コメントをクエリーに見立てるのはどうなの、というと、若干いまいちだけど他に良い教師データがないから仕方ないと主張している。