マネーフォワード主催・オフラインコンペハッカソン」が行われた。本イベントは個人戦の機械学習コンペティション。個人向け家計簿アプリや法人向けバックオフィスのクラウドサービスで著名なマネーフォワード社が、Peakersとの共同で初主催した学生向けハッカソンである。参加者は同社提供のデータを用いて多クラス分類の課題に取り組んだ。生一氏など、様々なバックグラウンドを持つ方が参加者のサポートにあたった。数値データの取り扱いに加え、自然言語処理の知識も求められた今回のハッカソン。慣れない言語処理に苦戦した参加者が多く、長時間ランキングが停滞する場面もあった。そんな難易度の高いハッカソンを制し、見事上位を獲得した2名の学生にインタビューを実施した。Recommendation)を研究し国内学会での発表経験も持つ。研究の傍らオンラインコンペティションにも積極的に参加している経験豊富な森澤さんだが、今回はどのような方法で精度を向上させていったのか。これまでのご経歴を教えてください。データマイニングに関する研究室に所属しています。卒業後は就職して、技術の社会実装に携わっていきたいです。院では特にレコメンデーションを研究しています。なかでも関心があるのは、説明可能性(explainability)。ある商品をレコメンドいうのではなく、「なぜ、この商品をレコメンドするのか」をテキストで生成するという新しい分野に興味を持って研究しています。今回参加されたきっかけは何だったのですか?実は、マネーフォワードさんのアプリを自分でも使っているんです。そのマネーフォワードさんで取り組んでいる課題の精度向上に自分でチャレンジできるというテーマに惹かれました。KaggleやSIGNATEには参加経験がありますが、ハッカソンへの参加は今回が2回目。レベルの高い学生さんと交流できるのが楽しかったです。SVCというモデルで学習させました。1位の方との差は1%未満と僅差でしたね。追いつきそうで、なかなか追いつきませんでしたね。1位の方も特徴量やモデルは同じだったんですが。理由としては、提供されたデータに欠損の多いカラムがあったんです。そこに対しての補完が違っていたからだと思います。僕は単純に全データの平均を入れてしまったんですが、1位の方は違うやり方をしていたんですね。そこが差になったかなと。1位の方は、1日目の時点ですでに最終に近いスコアを出していて、ぶっちぎりでした。そこで、根本的に何かが違うんだろうなと。2日目の朝、さりげなくメンターの方がおっしゃっていたことがヒントになって、そのときはじめてn-gramに気づいたんです。1位の方は1日目にもう気づいていたみたいです。そこから精度を急激に上げていけたんですが、追いつけそうで追いつけませんでしたね。時間があれば試してみたかったことはありますか?モデルのアンサンブルをやりたかったです。各モデルの出力値を別のモデルに入れて学習させるスタッキングと呼ばれる手法をやってみたかったです。2、3時間あったらやってみたかったです。失敗した点、反省点はありましたか?コードをきれいに管理していなかったので、途中でバグを発生させてしまって、その原因を探るのに時間をかけてしまいました。早くきれいなコードが書けるようにしたいです。n-gramに関しても、古典的な手法なんですが今回のように使えるケースもあるので、こういうのもきちんと試すべきだなと思いました。マネーフォワードさんに対するイメージはいかがでしたか?自分がアプリを使っているので身近な存在でしたが、思ったよりも社員数が多い規模が大きい会社で、企業向けサービスもいろいろやっているんだなと知りました。会社の業務の具体的なイメージがわきました。将来はどんな挑戦をしてみたいですか?データを分析・学習して、その学習結果をユーザーに届けるところまで、すべての工程を知っているエンジニアになりたいです。集中して学べるハッカソンには今後もどんどん参加してみたいと思います。