CV 研究からソフトウェア開発まで

筆者:笠井誠斗

2019-2021 の修士課程在籍時、産総研 RA / cvpaper.challenge のメンバーとしてお世話になった笠井誠斗と申します。最近は CV の研究から離れ、ソフトウェア開発や、ビッグデータ処理の分野で仕事をしています。

この記事では、研究生活を振り返って、CV の研究からソフトウェア開発に至った過程について記します。

・産総研での研究生活に興味のある方
・ソフトウェア開発の分野に興味のある方
・(CV だとほぼすべての人がそうだと思いますが) 研究でコードを書く機会のある方

など参考になると幸いです。

学部・修士時代の振り返り

大学の理工学部では、テニス部に所属し没頭していたのもあり、成績はなんともいえないくらいのものでした。数学・物理にはとても強い関心があったのですが、それ以外の分野には全く関心が持てず電子工学科に進みました。

研究室配属を考える時期になって初めて、視覚的に研究成果がわかりやすく、さらにその当時から興味のあったプログラミングが活用できそうというざっくりとした理由で CV 分野の研究室を選びました。学部時代の研究内容は Conditional GAN に関するもので、簡単な指示文によって顔画像の属性を変更するといったテーマでした。その時は国内会議で発表をして運良く論文誌まで着地させることができました。

このように研究の経験ができ、画像・言語という両方の分野に触れることができたのは非常に良い経験でした。一方で、生成結果や研究の問題設定など、当時の自分でも満足の行く内容とは言い難い状態でした。

今思うと非常に幸運なことに、所属した研究室が片岡さんの出身研究室であり、かつ先輩方に産総研 RA 出身者も多かったため、研究に没頭し、より満足のいく研究のできる環境を求めて産総研 RA のメンバーとして受け入れていただきました。研究室同期の石川や、大学は違えど同期の若宮などと同時期に RA となったため、三人で研究をキックオフしました。

産総研 RA での思い出

修士一年の間、東京都世田谷区にある自宅から、茨城県つくばの産総研まで片道二時間かけて行ったり、神奈川県横浜市にある研究室に行ったり、非常に移動に多くの時間がかかる状況でした。そのため、産総研での勤務日を週 2-5 日連続にし、つくばにある XX 館 (福原さんの記事にあるものです) に石川・若宮と宿泊してまとめて研究したり、つくばの美味しいラーメンを食べたりして楽しくすごしたりしていました。

この期間に動画研究班でActivityNet Challengeへの参加をし、その関係で CVPR 2019 に現地参加 (!!) させていただきました。CVPR 2019 への現地参加は非常に鮮烈に記憶に残っていて、世界の著名研究者と対面でポスター発表の議論をしたり、巨大な企業ブースに圧倒されたり、ロングビーチの下町の治安にビクビクしたりもしました。このように周囲の友人・研究者との議論や、このような会議に参加したことがモチベーションとなり、実りのある修士課程の生活を過ごせました。

さらに、産総研での研究を国際会議の CVPR 2020 や ICIP 2020 に投稿し、ICIP 2020 では採択されました (CVPR の方は自分のミスで残念ながら Desk Reject されてしまいました...)。テーマは動画中の行動マップの可視化で、こちらは学部での研究とは打って代わり少し問題設定として面白そうなもので、このテーマ設定をしてよかったと思えるものでした。同期の石川との研究も WACV 2021 に採択され、チームで研究することによる研究のスピード・質の向上も強く感じました。

ソフトウェア開発との出会い

CV 研究の中で非常に大きなウェイトを占める実装の重要性は年々さらに上がっていると感じます。再現性のある実装が求められるのはもちろんのこと、論文を書くためのコードを公開することは一般的になっているようです。

私が研究していた時に、自分の一ヶ月前に書いたコードのどこを修正すれば良いのかわからなくなったり、実装ミスによって得られる結果が著しく悪くなったりすることが往々にしてありました。このように「静かに死ぬ」プログラムは深層学習を用いた領域では特に多く、実装が正しいことを保証する術を修士課程ではよく考えていました。

そこでたまたま、ソフトウェア開発系のインターンシップに参加した際に、衝撃を受けました。実際にプロダクションで使用されているコードは、品質保証に大きな労力が割かれていました。ほとんどのロジックに単体テストが書かれていたり、凝集度を極力下げるように関数の切り分けが細かくなされていたり、コードの更新には QA を必ず挟んで変更の正しさがチェックされていたり、といった具合です。このような質の高いソフトウェア開発に強く惹かれ、現在はソフトウェアエンジニアとして働いています。

最後に

簡単な振り返りになってしまいましたが、産総研 RA として、また cvpaper.challenge の一員として研究した経験は色々な面で私を成長させてくれました。片岡さんや、研究をともにしていただいたメンバーのみなさんにも感謝しています。

以上です。ありがとうございました!


この記事が気に入ったらサポートをしてみませんか?