2024.12.19
システムの穴を運用でカバーしようとしてミス多発… バグが大量発生、決算が合わない状態から業務効率化を実現するまで
Machine Learning室のミッション・組織のご紹介(全1記事)
提供:LINE株式会社
リンクをコピー
記事をブックマーク
菊地悠氏(以下、菊地):Machine Learning室の菊地と申します。私からは全体の概要をお伝えして、この後の発表における理解の助けになればと思っています。
LINEでは2つのビジネスドメインで仕事をしています。このうちMachine Learning室は、大量のデータが日々生成される事業領域を主にターゲットにして、コア事業と呼ばれる大勢のユーザーがいる部分であったり、あとはすでにいるユーザーベースをテコにし、新しい事業領域に拡大していくところでも仕事を進めようとしています。
また、サービスがたくさんあるということは、サービスで共通化したり、横断的に何かをやりたいというニーズも当然生まれてくるわけで、こうしたものも開発の対象としていろいろ仕事をしています。
ちなみに、月1回でもLINEを使ってくれるユーザーのうち、毎日利用してくれる人の割合は80パーセントくらいあります。
たくさんデータがあるということは、これを下支えするような大きなシステムというのが必要です。このために、LINEにはデータプラットフォームがあり、ML室も利用させてもらっています。
こちら2020年のLINE DEVELOPER DAYで発表された数字になりますが、ストレージサイズは270PB(ペタバイト)、毎日入ってくるレコード数でいうと7,000億レコードのような規模のデータがあります。
簡単に説明すると、いろいろな事業のデータがHadoopのクラスタに流れ込んできて、こうしたデータをHiveやSparkなどで前処理し、機械学習の高負荷な計算はKubernetesクラスタにいったん移動させてGPUノード上で並列計算し、結果物をもう一回Hadoopに書き戻す、ということをやることが多いです。その後、サービスにデータを提供する、というような処理が、典型的な仕事のパターンになっています。
更に、データがリアルタイムで流れ込んでくるようなケースや、オンラインでサービングをするケースだと、KafkaやElasticsearch、Redisのなどを使います。
あと、Business Intelligence(BI)系についてもいくつか描いてありますが、内製のWebアプリケーションやtableauのような一般的なものを利用しています。
ここで2つほど、プロジェクトの例を紹介します。まず1つ目、サービス横断系でやっているMachine Learningで、スマートチャンネルというものがあります。トークの画面の上のほうに、コンテンツや広告が出てくる枠がありまして、ここにいろいろなコンテンツ、例えば天気、スタンプ、ニュース、マンガなどが連携されています。
どのように連携されているかというと、各サービスに関して「このユーザーにはこういうコンテンツを出したい」という、個人化されたコンテンツとユーザーの対応関係の情報(ルールベースでもMachine Learningでもよい)が提供されます。
表示する枠は1つしかないため、スマートチャンネルでは、「あるユーザーに出せるコンテンツの中から、ある1つのコンテンツを選ぶ」という処理を行っており、この計算は、ユーザーがこの画面を訪問したタイミングで行われています。
私たちMachine Learning室では、MLエンジニアの人たちが、さまざまなサービスに複数、計数十に上るターゲティングのロジックを提供しています。また、表示するコンテンツを1つだけ選ぶという2番目の処理に関しても、ロジックを提供しています。
SMART CHANNELの表示画面におけるコンテンツのインプレッション数は、1日およそ10億インプレッションになっていて、この訪問のたびになんらかの機械学習の推論理が裏で走っていたりします。これが1つ目の例です。
もう1つの例は、サービス横断でユーザーの行動ログやコンテンツの情報を使いやすく整形する例です。こちらは、どちらかというと機械学習を下支えするような取り組みになります。
ユーザーはいろいろなサービス利用しているので、さまざまなサービスに向けて機械学習を提供していると、入ってくるログのデータなどを共通化して使えるようにしたいというニーズが出てきます。
で、私たちはz-featuresと呼んでいるサービス横断のユーザーの行動ログデータを開発・運用しています。dtype(データ種別)としては45、データの次元数は6,000万を超える規模のデータになっています。あとはユーザーID数(のべ数)では、9億6,000万ユーザー分のデータが格納されています。
このサイズのデータをそのまま扱って機械学習することもありますが、いろいろなところで同じような処理を繰り返すのは非効率ですし、また次元の大きい大規模データはやや扱いづらいという問題もあります。このため、z-featuresを事前に加工するというようなこともしています。
具体的には、表現学習などを利用して、データを3,600次元くらいまで圧縮し、提供しています。このデータは自分たちでも使いますし、他の組織にも提供しています。具体的にどうやって使っているかの事例に関しては、この後の発表でいくつか紹介されると思います。
こうした仕事を実際どういうふうにやっているか、役割やプロジェクトの体制などの組織という観点で、少し紹介したいと思います。
今までお話してきたとおり、LINEの中にはデータプラットフォームがあって、それを管理・運営するプラットフォーム系のエンジニアがたくさんいます。
私たちはこの環境を利用してMachine Learningの機能を開発し、サービス側に提供することをしています。サービス側には企画者も、開発者がいます。また、作ったものがいいかどうかとか改善を継続的にしていくという観点で、効果検証に協力してくれるるデータサイエンティストがいます。
こうしたさまざまな人たちと連携し、仕事を進めていくため、ML室では、メンバーを複数のロールを定義し、プロジェクトを組んで仕事をやっていく方法を採用しています。
ここに大きく4つ、色分けしていますが、まずMachine Learningエンジニアという丸が2つ(青色・黄色)あります。よりプラットフォームとかシステムに近いレイヤーで仕事をしてもらうMachine Learningエンジニア(青色)と、サービスに寄り添うい、アプリケーションとかサービスに近いMLをやるエンジニア(黄色)が存在します。
また、Machine Learning自体もなんらかのプラットフォームやフレームワーク、あるいはライブラリを開発する必要があるので、インフラ周りを見てもらったり、API部分を開発してくれるエンジニアもいます。
最後に、こうした人たちを全員取りまとめてプロジェクトを成立させたり、作るものを決めていくため、プロジェクトマネージャー、プロダクトマネージャーの人もいます。
以上が役割(ロール)の簡単な説明になりますが、プロジェクトを推進していく際は、プロジェクトの規模感によって、参加するメンバーをそれぞれ変えています。
例えば、個別のサービス向けにMachine Learningのエンジン開発を行うようなケースだと、割と業務の型のようなものがあるので、比較的小規模の人数で短い時間で開発を進めていきます(一番左)。Machine Learningのモデル自体の開発に注力する場合には、機械学習エンジニアがメインで仕事をするようになります(左から2番目)。
Machine Learningを提供しようとすると、当然Machine Learningのモデルだけでは足りないので、周辺のシステムがいろいろと必要になりますが、そういう場合にはインフラ周りやサーバーサイドのシステムが開発できるエンジニアが入ってくれますし(右から2番目)、大規模なサービスになればみんなで開発する(右から1番目)、というように比較的弾力的にプロジェクトに対して人をアサインしています。
チームの構成は、基本的にはロール別になっていて、この後の発表で、各チームのマネージャーがいろいろなプロジェクトに関して紹介します。
最後に私からは、Machine Learning室でオープンになっているポジションを紹介します。今日の発表の中では、この左側4つがメインの発表内容になっています。
冒頭お話したとおり、この資料後ほど共有するので、ぜひ自分のポジションがどこにマッチしてそうかを見ていただきつつ、今日の話でいろいろ疑問に思ったところは質問していただいて、この後の発表を楽しんでもらえたらなと思っています。私からの発表は以上になります。
司会者:はい、菊地さん、ありがとうございました。
LINE株式会社
関連タグ:
2024.12.20
日本の約10倍がん患者が殺到し、病院はキャパオーバー ジャパンハートが描く医療の未来と、カンボジアに新病院を作る理由
2024.12.19
12万通りの「資格の組み合わせ」の中で厳選された60の項目 532の資格を持つ林雄次氏の新刊『資格のかけ算』の見所
2024.12.16
32歳で成績最下位から1年でトップ営業になれた理由 売るテクニックよりも大事な「あり方」
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
PR | 2024.12.20
モンスター化したExcelが、ある日突然崩壊 昭和のガス工事会社を生まれ変わらせた、起死回生のノーコード活用術
2024.12.12
会議で発言しやすくなる「心理的安全性」を高めるには ファシリテーションがうまい人の3つの条件
2024.12.18
「社長以外みんな儲かる給与設計」にした理由 経営者たちが語る、優秀な人材集め・会社を発展させるためのヒント
2024.12.17
面接で「後輩を指導できなさそう」と思われる人の伝え方 歳を重ねるほど重視される経験の「ノウハウ化」
2024.12.13
ファシリテーターは「しゃべらないほうがいい」理由 入山章栄氏が語る、心理的安全性の高い場を作るポイント
2024.12.10
メールのラリー回数でわかる「評価されない人」の特徴 職場での評価を下げる行動5選
Climbers Startup JAPAN EXPO 2024 - 秋 -
2024.11.20 - 2024.11.21
『主体的なキャリア形成』を考える~資格のかけ算について〜
2024.12.07 - 2024.12.07
Startup CTO of the year 2024
2024.11.19 - 2024.11.19
社員の力を引き出す経営戦略〜ひとり一人が自ら成長する組織づくり〜
2024.11.20 - 2024.11.20
「確率思考」で未来を見通す 事業を成功に導く意思決定 ~エビデンス・ベースド・マーケティング思考の調査分析で事業に有効な予測手法とは~
2024.11.05 - 2024.11.05