Rtoaster × Myndエンジンによる
興味キーワード分析機能開発事例
Mynd株式会社
取締役 / エンジニア
森口 正之
株式会社ブレインパッド
DPG グループマネージャー
田崎 雄一郎
# brainpadtech
自己紹介
2012年 4月 SNS系企業 新卒入社
ぴちぴちの社会人6年目です
2014年11月 ブレインパッド入社
データ マネジメント プラットフォーム グループ グループ マネージャー
Rtoasterのユーザー分析機能や
外部パートナー連携など頑張ってます的な人です
来週からドイツ/フランス/スイス旅行なのでそわそわしてます
興味キーワード分析機能について
Rtoaster 分析機能について
DMPに蓄積された行動情報をもとに、
様々な角度からどんなユーザーがいるかの分析を支援
● 期間
● URL
● キーワード
● 属性
● 自動分析
などなど
キーワード分析機能
Rtoaster契約サイト
10,000人
寿司
カレー豆腐
ユーザーが何に興味を持っているか
直感的にわかりやすく、
次のアクションに繋げやすい
10人
2,000人
600人
うどん
米
ピザ
クーポン発行
カレーに興味あるなら
インド行くでしょ
🍣
📛
🍛
キーワード分析機能の構成
キーワード抽出部分について
● 自社製品のロジック部分考案にデータサイエンティストなどに
協力を依頼することはままある
○ 今回はキーワード機能ということで、自然言語処理の得意なMynd社と協力
● 協業の中でうまくいったこと
○ 物理的に距離が近く、スムーズにコミュニケーションできた
○ キーワードデータをサマリ過ぎずに出力してもらうことで、
今回の機能向けに限定し過ぎたものとならず、
それを利用した新機能の検討などを我々だけで閉じることができた
Mynd株式会社
2015年4月にブレインパッドグループにJOIN
自然言語処理系に強み
あとで詳しく☆
ユーザー分析システム
分析画面
データ集約基盤
キーワード分析機能 構成図
Rtoaster内部は
マイクロサービス構成になってます
連携ハブシステム
自動レコメンドシステム
airflowクラスタ
Auto
Scaling
Group
コアエンジン
などなど
SparkクラスタPrestoクラスタ
処理部分のインスタンス構成
● master node
○ 1台
○ r4.xlarge
● core / task node
○ 計20台
○ r4.xlarge
夜間バッチ負荷のため多め
今後オートスケール予定
● job-manager
○ 1台
○ c4.xlarge
● job-worker
○ 2〜10台
○ c4.2xlarge
並列実行にコア数が欲しいだけで
こんな強い必要はない
リリースしたばかりで負荷検証途中のため、やや力技の構成(参考値程度に)
キーワード処理だけでなく全ての分析機能処理で共通利用
● Array型の処理時間が遅かったため
文字列型で持ち、クエリを早くしている
● 約3000万UUの中から抽出する処理で
○ 単一条件,AND条件で3秒程度
○ OR条件だと25秒程度
■ 400万UUくらいだと7秒程度
● キーワード分析機能においては、
あまり凝った使い方はしていない
○ 単純に数を力でこなす感じ
● 別の分析機能ではSparkMLを利用して
機械学習とかもしている
スケールさせやすい
なんやかんや高速
リリース間隔早い
最近も月2回くらいリリース
ただし追うのも大変
スケールさせやすい
SparkMLなどライブラリも充実
ドキュメントや事例がWeb上に多い
EMRでの構築事例も多い
事例ケースも多く最適解は難しいたまにバグもまじる
調整すべきパラメータが多い
ここまでの伝えたいこと
● キーワード分析機能をMynd社と協力して実現した
○ 社内に自然言語処理や機械学習などに強みを持つメンバーがおり、
一緒に考えられるのはブレインパッドならではの安心感かと!
● Spark, Presto, Airflowなどの大規模処理向けの
アプリケーションを採用して処理をしています
○ エンジニア主体で技術採用も積極的に行えている
○ スモールなサービスだと使わなくても処理として事足りるので、
しっかり業務で携われるのはNo.1 DMPならではのデータ量
● 分散処理からインフラから画面開発までまで
ひとりひとりがフルスタックに開発してます
Myndについて
● 2010年4月 組み込み系開発企業 新卒入社
● 2012年4月 Mynd社立ち上げ
● 2015年4月 BrainPadグループにJoin
● 2017年4月 現職
自己紹介
元々は組み込み系→ネイティブアプリも....→クラウドも....→なんか色々やってます
● エンジニアばかりの小さな会社
○ フルタイムメンバーは現在5人
○ 内4人がエンジニア
● 自然言語処理、機械学習に強みを持っています
キーワード抽出って何するの?
...日本企業が世界で勝てない理由のひとつに、
各国政府への「ロビイング」の不足があります。
日本企業が今後...
日本企業
世界
各国政府
ロビイング
不足
今後
日本企業
世界
各国政府
ロビイング
不足
今後
意外と簡単そう....?
● システム化って難しいですよね....
○ お客様に合わせた実装
○ 運用・保守
● 他のモジュールではもっと凝った事もしています!
○ クラスタリング・意味タグ付与・etc
とは言え....
簡単だと思っていただけた方!
是非声をかけてください!

エンジニア勉強会資料_④Rtoaster×Myndエンジンによる興味キーワード分析機能開発事例