データ分析未経験者がシス研に異動し1年足らずで世界的なデータ分析国際大会KDD Cup「マルチデータセットの時系列異常検知」で10位入賞
左から、岩田 泰士さん、鈴木 瑛二さん
事業部でSEとして活躍していた鈴木 瑛二さんは1年前にシステム研究開発センター(以下シス研)のデータ分析の研究グループに異動し、未経験だったデータ分析を持ち前の「自走」する力で勉強を重ねKDD Cupに入賞するまで実力をつけました。このようにNSSOLは今、社内のデータ分析人材の育成に注力しています。その取り組みの目指すこととは何か。グループリーダーの岩田 泰士さんも交えて話を伺いました。
データ分析の経験なしでシステム研究開発センターに異動。
異常検知の勉強のために単独でKDD Cupに挑戦
―鈴木さん、KDD Cup10位に入賞。おめでとうございます。
鈴木:ありがとうございます。
―今回は一人で挑戦しての入賞。しかもシス研に異動になってまだ1年だとうかがっています。異動前からデータ分析に取り組んでいたのですか?
鈴木:いえ、全然(笑)。異動前は産業ソリューション事業部という主に製造業をお客様とする事業部でシステム開発の現場でSEをしていました。それがある日、お客様のDXを支援するためにもシス研でデータ分析技術を学んできてもらいたいと、シス研への異動の辞令が出たんです。
―どう思いましたか?
鈴木:私はもともと技術力を高めて会社に貢献したいと日ごろから言っていたので嬉しかったです。シス研は入社時に配属希望していた部署でしたし。異動と言ってもシス研が本務ですが、産業ソリューション事業部も兼務しています。
―今、シス研でどのような研究をしているんですか?
鈴木:特定の技術領域の研究というよりは、シス研の成果を事業部の実案件に適用できるようにシス研と産業ソリューション事業部のつなぎ役を担っています。
―つなぎ役というと例えば?
鈴木:お客様から画像の類似検索の話があったことを営業から相談されたときに、それならシス研にもありますよ、と紹介して案件化したり。
岩田:逆に事業部にシス研の研究テーマを紹介する場を設けてもらってディスカッションしたり。ビジネスのことも理解しているし研究テーマもよく知っている鈴木さんのような人材がいるとお客様の課題と技術のマッチングがスムーズにいくのでとても助かります。
―なるほど。そういう人材は貴重ですね。今回のKDD Cupのテーマである「異常検知」もシス研の研究テーマのひとつですか?
岩田:はい。私たちのグループでは数年前に一度体系的に調査した技術です。特に製造業のお客様から異常検知の相談をちょくちょくいただくので鈴木さんにも勉強をしてみたらと勧めました。
―では、KDD Cupのテーマは鈴木さんにとってまさにピッタリなテーマだったということですね。
鈴木:ちょうど勉強中でしたのでコンペにも自然に挑戦しようと思いました。
KDD Cupでは250のマルチデータから異常箇所を特定する
汎用的なアルゴリズムを考える
―では、KDD Cupのことについてお聞きします。今回解いた「マルチデータセットの時系列異常検知」とはどんな内容だったのですか?
鈴木:長さが1万~30万くらいの250種類の一次元時系列データが提示され、各データのどこか1箇所にある異常を答えるという問題です。その異常を検知する汎用的なアルゴリズムを考えろ、というものでした。
―なんのデータなんですか?
鈴木:それぞれのデータの内容については非公開でした。私たちにはデータのどこか1箇所に異常がある、という情報しか与えられませんでした。
―え、それだけ?鈴木さんはどう進めたのですか。
鈴木:まずは提示されたデータをダウンロードし、グラフにしました。すると一定時間に同じ現象が繰り返される、周期的なデータが多いことが分かりました。一方で周期性のないイレギュラーなデータもありました。
―まさに、マルチなデータセットだったんですね。
鈴木:はい。まずは周期的なデータに対応できるアルゴリズムを作成しようと、データを特定期間で区切り、平均的な形状を算出しました。その標準形状との差分が最も大きい区間が異常箇所だと判断するアルゴリズムをまず試しました。
岩田:「形状の類似性」を使った手法です。異常検知では他にも、予測モデルを作り、その予測と実際の値の差分で異常を検知するなど、さまざまな手法があります。
―ただ鈴木さんのアイデアだと、ホワイトボードに描かれた下部のグラフでは、異常検知はできないですよね?
鈴木:そうなんです。実際には、岩田さんが解説したように、さまざまな異常検知モデルを考え、それらを組み合わせていく流れで進めていきました。
岩田:アンサンブルですね。機械学習ではよく使う手法で、「モデルアンサンブル」と言われ、機械学習のモデルを組み合わせることで、汎用性を高める技術です。
鈴木:ただ、このアンサンブルが難しくて。あるデータには有効でも、別のデータでは当てはまらないということがありました。20ほどのアルゴリズムを試しましたが、結局アンサンブルしたのは2つでした。
―大会期間はどれくらいあったんですか?
鈴木:約2ヶ月です。1日1回回答を投稿できるのですが、私はほぼ毎日投稿していました。序盤はずっと6位だったんです。でもそこからスコアを伸ばせないまま他のチームがどんどん順位を上げていって。
―10位という成績についてはどう思っていますか?
鈴木:くやしいですね。大会が終わった後に上位の入賞者が自分の手法を発表するのですが、解法が自分と似ている人が多くて、自分ももう少し頑張れば、あとひと捻りあれば生み出せたのではと思ってしまいます。
―そこがくやしさのポイントですね。
鈴木:もちろんそのあと一歩二歩改善できるかどうかが、大きな実力の差なんですけどね(笑)。ただ、時系列データの研究を長年されている方と近い見解を持てた事は嬉しかったです。他にも、アンサンブルではなく1つのアルゴリズムだけで挑んだかなりアプローチの違うチームもあって学ぶことが多かったです。
―岩田さんは鈴木さんの健闘をどのように感じていますか?
岩田:KDD Cupの問題は、マルチデータセットというのが特殊でした。何にでも役に立つ異常検知って荒唐無稽なんです。それに1つのデータセットの中に異常データが1カ所しかない。そしてその異常データがどこにあるかわからない。こうした状況だと何を目標にアンサンブルすればいいかわからなくなるんですね。そういう難しい問題ではありましたが、鈴木さんは自分の勉強のためにコツコツと努力して、その結果10位入賞を果たしたというのは素晴らしいですし、当社の「異常検知」のPRに貢献してくれています。
異常検知-“発生しない”が当たり前の事象を捉える難しさ
―シス研の異常検知は、お客様に適用した事例はあるのですか?
岩田:実案件はいくつかあります。代表的なのは当社と同じ日本製鉄のグループ企業である日鉄エンジニアリング様の事例になります。異常検知プラットフォームを導入して工場内の発電機からデータを集めて異常があったら通知する機能まで含めたシステムです。
―異常検知の対象は製造業に特化しているのですか?
岩田:特化していると言えるまでには至っていませんが、ひとつひとつの案件に私たちが担保している技術を適材適所で組み合わせて提供しています。ただ異常検知って難しいところがあって。
―難しいとは?
岩田:そもそも設備の「異常」というものがおこりにくいんです。例えば、数年間のデータに2、3個の異常があったので、この異常を検知してほしいというお話をいただいたことがあります。しかし異常であるとわかるデータが2、3個だけでは汎用的な検知手法になっているか評価することが難しい。さらに、今後どれくらいの頻度で「異常」が起こるかもわからないので、投資対効果を測るのも難しいです。
―確かに、異常が起こる頻度がわからないならシステムを導入した費用対効果を測るのは難しいですね。
岩田:それでもお客様には課題感があって、たびたび異常検知の話がきます。更に難しい話として、異常の「兆候」をみつけたいという要望もよくいただきます。予防保全の分野ではCBM(Condition Based Maintenance)といって、異常の「兆候」が検出されたらすぐに修理するという考え方が注目されてきており、これがお客様の一番目指していることです。
―説明を聞いていると異常検知の難しさがわかりました。KDD Cupの問題も難しいなと思いましたが。実際の異常検知も難しいんですね。
社内教育を充実させシス研と事業部、そしてお客様のパスとなるDX人材を増やしていきたい
―鈴木さんはKDD Cupに向けてどういう勉強をしたんですか?
鈴木:異常検知の本・論文を読んだりWeb上の技術記事サイトを見たり。あと岩田さんやシス研メンバーから異常検知で実装するときの便利なライブラリを教えてもらうなど技術面でアドバイスをいただきました。
岩田:鈴木さんはこちらがきっかけを与えれば、あとは勝手に自走するので、そこがすごいと思います。
鈴木:でもシス研のメンバーはみんなそうですよね。勉強会なども積極的に開くし、また参加もする。技術を吸収する文化が醸成しているシス研にいるからこそ私も周りにつられて自走できたのだと思っています。勉強のためにみんなコンペにもよく参加してます。
岩田:コンペに参加することが、一番成長が速い。みんな本気になると時間を忘れて夢中になるので、コンペは勉強がてら技術を磨くのにはよい機会なんです。シス研にはKDD Cupの他にもKaggleで日本トップクラスの人たちがいます。鈴木さんも他にNishikaの「航空機のエンジン寿命予測」といったコンペにも参加して5位をとってますよね。
鈴木:岩田さんもKDD Cupで2位になった実績がありますからね。
岩田:かなり前の話ですが、参加チームメンバに恵まれたこともあり、とてもいい経験でした。
―すごい!大先輩っているんですね。最後に今後の展望などがありましたらお聞かせください。
岩田:鈴木さんのような人材や事例を増やしたいと考えています。まさに鈴木さんが取り組んでいるように、事業部さらに、その先にいるお客様の課題解決に貢献していく。事業部とシス研のパスとなる人材が、より増えることを期待しています。
実際、そのような人材を増やすための取り組みもしています。シス研メンバーが講師となって全社に向けたデータ分析人材育成の研修を開催し、すでに数百人規模が受講しています。その参加者の中から鈴木さんように、事業部とシス研との橋渡しになる人材をピックアップできればいいなと、考えています。
―いわゆるDX人材ですね。
岩田:はい。こうしてパスができた事業ドメインに対しては、事業部やお客様の課題やニーズを発掘するとともに、その課題やニーズに対してシス研が直接挑んでいこうと思っています。こうした取り組みは次世代の研究テーマやシーズ発見にもつながると考えています。
鈴木:現時点ではまだ、AIが社会実装されているとは言えないと感じています。現在の活動を続けることで多くの事例を積み上げていき、日常業務の中でAIが組み込まれて仕事が回っていくような、そんな社会を実現したいと考えています。
―ありがとうございました。