第二回日立ハイテク主催画像分類オンラインコンペティション 最優秀賞 萩原 涼さん慶應義塾大学商学部3年
「第二回AWSの計算資源を用いた画像認識コンペティション」が2021年9月4日-5日、オンライン開催された。本イベントでは、計算資源として日立ハイテクが用意したAWSを使い、その環境でディープラーニング等を用いた画像分類タスクに挑戦。課題を通じてスキルを伸ばしたい学生、画像認識の業務活用について学びたい学生、ナノテク、分析技術、製造業改革などに興味がある学生らが競い合った。
主催の日立ハイテクは、日立グループにおいて特に先端技術領域で存在感を発揮し、世界27カ国に事業展開しているグローバル企業だ。モノづくり力もまさに世界レベルで、メカトロニクスや情報技術の世界的な大会である、国際技能競技大会で複数の金メダルを獲得。年間の研究開発費は300億円を超える。同社が取り組む主要3分野(ナノテクノロジーソリューション・アナリティクスソリューション・インダストリアルソリューション)は、今後ますますデータ活用が求められる分野で、深層学習への投資、研究が盛んになっている。
学生へのサポートとして日立ハイテクで実際にAI・データサイエンスに携わるデータサイエンティストがメンタリングを担当。学生は日立グループでも特に先端技術(ナノテクノロジー、バイオ・メディカル分野での分析技術、先端産業部材など)を手がけるメンター陣から、学生と1on1によるフィードバックなど手厚いフォローが受けられた。
微小な半導体の不良品検知にディープラーニングで挑むことを通して、日立ハイテクの事業やデータ活用事例等について知り、同社のデータ活用や自分自身の活躍可能性を考えることができる2日間となっていた。
本イベントで見事最優秀賞に輝いたのは、慶應義塾大学商学部の萩原涼さん。大学では計量経済学のゼミに所属。回帰分析、多変量時系列モデル、パネル分析を中心に学び、Python、Rによるデータ分析などを行う傍ら、学外の活動ではプログラミングと機械学習にも挑戦。現在は都内企業で機械学習エンジニアの長期インターンとして参画する。「ハッカソンの印象は?」「好成績につながったポイントとは?」お話を伺った。
―現在の研究内容や学外での活動について教えてください
大学では計量経済学のゼミに所属しています。主に統計学と計量経済分析の手法である回帰分析、多変量時系列モデル、パネル分析を中心に学び、Python、Rによるデータ分析などを行っています。並行して現在は卒論を書き始めており、テーマに沿った様々な企業の商品データの分析を進めています。
学外の活動としては、プログラミングと機械学習にも挑戦しています。約2年間、企業でのバックエンドエンジニアとして、AWS・Typescript・Go・Pythonを用いたアプリのAPI開発やAWSインフラ構築に携わりました。また、学習アプリのバックエンド開発リーダーも担当し、2021年4月にはリリースを経験。現在は都内企業で機械学習エンジニアの長期インターンとしての活動も続けています。
―コンペティションに参加してみていかがでしたか?
コンペティションへの参加は2回目です。以前に参加したのは、教育業界におけるAI・データの活用をテーマとしたチーム制のコンペティションでした。2年ほどアプリのエンジニアをしていた経験を最大限活かすことができたという背景もあり優勝することができました。
今回は、前回のような得意分野ではなく、ほとんど経験のない画像処理でした。機械学習に関してもまだまだ経験が浅く、苦戦しながらも、インターンで得た知見を活かしながら挑みました。
―好成績を収めましたが、どのような工夫をしましたか?
2日間という時間の中で、やるべきことは限られていました。
まずは分析対象となる半導体の欠損の画像について、Pythonでイメージを出して、特徴をいくつか捉えました。すると、欠損が画像の中心に表れていることや画像によってコントラストに違いがあることなどが見えてきました。
次に、アルゴリズムはCNNを用いました。実際に使用したことはなかったのですが、画像認識ではCNNを用いると良い結果が出るということは知識として知っていたため、これを選びました。今回はサンプル数が少なかったので、画像の水増し処理が必要でした。ノイズを加えたりコントラストを変えたりすることでデータ量を水増ししました。さらに細かいパラメータチューニングなどを行った結果、94%という精度を出すことができました。
―苦労した点や、もっと伸ばせたと思うところはありますか?
今回使用したAWSは、機械学習専用のものでした。AWS内で使用経験があるのは、Lambda、API Gateway、S3、Aurora Serverlessなどのアプリ開発用のサービスばかりだったので、それらとは使い方が全く異なることに戸惑いました。慣れるまで少し時間がかかり、1日目の終わり頃に、ようやく慣れてきました。
最も苦労したのは、CNNのハイパーパラメーターの調整、さらに層をいくつ追加すればいいかという点でした。最初は手作業で行っていましたが、効率が悪く、正解に辿り着けるかわからない状態でした。そこで、ハイパーパラメーターチューニングができるライブラリ(Optuna)を用いました。結果、時間内に最適なパラメータを上手く見つけることができました。
―主催企業やメンターさんへの印象について、率直な感想を教えてください
本コンペティションに参加する前は、世界的な大企業であることからクールで堅い印象を持っていました。しかし、メンターの方々とのやり取りを通じて、「あたたかくて人間味のある人たちがすごい技術を持って世界企業を動かしている」という印象に変わりました。
今回、EC2を使って機械学習を進めたのですが、途中でEC2の制限がかかったり、ディスク容量が一杯になったり、CPUに制限がかかったりすることがありました。
このようなマシンの問題に直面した時、メンターの方にわかりやすくコマンドを教えていただき、非常に助けられました。メンターの方との1on1では、メンターの方が私のコードを実際に見たうえで、問題点のアドバイスをしてくださいました。優しく丁寧に教えていただけたおかげで、問題を乗り越えることができたと思っています。
―今後、どのようなチャレンジをしていきたいですか?
今後の大きな目標としては「人と社会の役に立つサービス開発」です。この目標は学部1年の時から持っており、その中でプログラミングに出会いました。プログラミングは、パソコン1台でアプリ開発ができ、自分の夢に近づける最短ルートだと思っています。
ベンチャー企業でのインターン経験から、挑戦することの大切さを学び、安定志向から挑戦志向に変わってきています。現在は、大学院への進学も視野に入れています。大学院で専門性を深めることが「社会の役に立つサービス開発」に繋がるのではという想いがあるからです。
学部の卒業までにはKaggleなどのコンペティションにも挑戦したいと考えています。
これらの目標に向けて理系の数学も勉強しており、直近では数学検定1級合格も目指して勉強しています。「文系は数学やデータサイエンスに弱い」というイメージを持つ人もいると思います。しかし、数学、データサイエンス、機械学習に関する知識はどのようなビジネスにも必要になってくるのではないでしょうか。文理の垣根なく、誰もが挑戦できる世界を目指して、まずは自分自身が挑戦を続けたいと思います。