昨日は「Repro Tech Meetup #4 AI実戦投入 Supported by AWS」という勉強会に参加してきました。
会場は AWS Loft Tokyo さん。増枠になって会場が Reproさんから変更になりました。
AWS Loft Tokyo は先月来たときに記事を書いたので、興味があればどうぞ。
先月、Repro Tech Meetup には前回の #3 CRE にも参加しています。Customer Reliability Engineer (CRE) に興味があれば、こちらもどうぞ。
kabukawa.hatenablog.jp kabukawa.hatenablog.jp
今回の勉強会
テーマが「AI実戦投入」ということで、様々な知見が聞けるといいなと思い、参加しました。
テーマの説明ページには、以下のように書かれています。
AIを利用したサービス開発は日々行われています。 また、AI開発を支える機械学習・DeepLearning・前処理のためのエコシステムは日々拡充され、その技術は早くもコモディティ化しはじめている状況でです。
エコシステムの後押しもあり、Repro AI Labs (コミュニケーションの個人最適を求めて。ReproがAI研究所を設立した理由 )を立ち上げ、マーケティング施策の結果には一定の効果をあげるまでに至りました。
しかし、AIを利用したサービスを実際に提供し、運用していくには数多くのことを考える必要があります。例えば
・学習に用いるデータのパイプラインとその前処理
・処理のパフォーマンス
・モデルへのフィードバック・精度検証
・機能、サービスへの組み込み
・上記を推進する組織・チームづくり
・etc...
今回のmeetupでは、そんなAIの実戦投入に関わる苦悩や工夫を共有し、実践的なAI利用についての知見を深めていきましょう!
しかも、講演者がまたすごい。これはぜひ聞きたい内容ですね!50席近く増員が行われたのも納得です。
セッション
今回も最初から乾杯で始まりました。
かんぱーい! #reprotech pic.twitter.com/WhdwBDh5m5
— kabukawa (@kabukawa) 2018年11月6日
「ゆるく始める」ということでしたが、最初にみんなで「かんぱーい」と声を出して始めると会場の一体感も出るしリラックスして聞くことができていいですね。
尚、内容についてはトゥギャられていますので、そちらもどうぞ。
AI 部門の実戦投入
[資料が公開されたら追加します]
最初のセッションはクックパッド R&D(研究開発部(部長の原島さん。先月、部署ができて2年ということで、こんな記事を書かれたそうです。 この記事に クックパッド R&D(研究開発部)のやっていることがわかりやすく書かれているので興味があれば読んでみてください。
また、今月始めにはこんなイベントも開催されていて、こちらではより具体的な内容が紹介されています。 cookpad.connpass.com
参加報告も書いているので、興味があればこちらもどうぞ。 kabukawa.hatenablog.jp
内容メモ:
今日伝えたいこと
個人や友人の経験上、AI部門の実戦投入には少なくとも3つのステージがあり、ステージごとに違う苦悩がある。
ステージ1
AI部門は存在しないが、AIに明るい人や、それらを学びはじめた人(社内専門家)は数人いる
- 社内専門家の苦悩
- AI関連業務に専念できない(メインの業務が他にある)
- AIについて相談できる人が少ない
- 上司が自分のAI関連業務を適切に評価できない
- 周囲の苦悩
- 世間がAIブームなので漠然と不安
- そもそもAIって何?メリットは?デメリットは?
- サービスで使ってみたいけど社内専門家のリソース(人数や時間)が足りない
ステージ2
社内でAIへの理解が進み、AI部門が発足している。 中途採用や社内異動を通じて数人が同部門に所属し、評価もその中の誰かが担当している
- 社内専門家の苦悩
- データはたくさんあるが整備されていない
- GPU環境がない
- 人が足りない
- まだAI関連業務に専念できない(メインの業務は採用)
- 周囲からのAI関連業務(ニーズ)が捌ききれない
- 周囲の苦悩
- AI部門が発足したものの、当然、まだ成果は見えてこない
- 思った以上に足回りの整備(データ、インフラ、採用)に時間がかかる
- 人が足りない
- とはいえ、早く成果を見せてほしい
ステージ2
— kabukawa (@kabukawa) 2018年11月6日
データはたくさんあるが整備されていない。
あるある、、、
#reprotech
ステージ3
最低限の人数が確保され、データやインフラもある程度整備されている 周囲からのニーズ以外にもシーズ(ここではAIベースの機能)を開発する余裕が生まれている
- 社内専門家の苦悩
- 周囲に貢献したいけどなんかうまくいかない(都度発生するニーズでは貢献できる)
- 自分のシーズがサービスで使われない(何故か周囲の受けが良くない)
- 周囲と時間の感覚が合わない
- 周囲の苦悩
- AI部門と協業したいけどなんかうまくいかない(都度発生するニーズでは協業できる)
- AI部門のシーズがサービスで使えない(ユーザーや会社の利益に繋がらない)
- 社内専門家と時間の感覚が合わない
ステージ3
— kabukawa (@kabukawa) 2018年11月6日
社内専門家の苦悩
・自分のシーズがサービスに使われない
・ステージ2ではニーズがさばききれない。
異なる悩み。
#reprotech
どうすればいいのか?
基本的に裏技はない
- ステージ1からステージ3にワープとかはできない
- ステージ3の他社に転職したり、そういった会社を買収するという裏技はある(テーマ外)
苦悩は「巻き込むこと」で緩和できる
- 専門家は周囲を巻き込む
- AIのメリット/デメリットを説明する。
- ユーザーや会社の利益を理解する
- 周囲は専門家を巻き込む
- AIのメリット/デメリットを理解する。
- ユーザーや会社の利益を説明する
「苦悩が変わりゆくことを認識」することでも緩和できる
- ステージの変化を捉え、新しい苦悩にすばやく対応する(特にマネージャー)
- ステージ3まで来ると本質的な課題に取り組めて楽しいが、それでも苦悩はある。
どうすればいいのか
— kabukawa (@kabukawa) 2018年11月6日
・基本的に裏技はない
一方、苦悩は「巻き込むこと」で緩和できる
また「木右脳が変わりゆくことを認識」しておくことでも緩和できる
戦いはずっと終わらない、ということを認識しておけばある程度緩和できる。
#reprotech
まとめ
苦悩を緩和するため、関係者を巻き込み、苦悩が変わりゆくことを認識する。
待ってても来ない
— kabukawa (@kabukawa) 2018年11月6日
他部署へのアプローチは研究開発部門からする。
どちらから見ても越境なんだと思うけど、ちゃんとそれを超えられるのはいいですね。
#reprotech
AIで改善可能なものは何かデータサイエンティスト養成読本の解説+書き忘れたこと
www.slideshare.net
Shinta Nakayama a.k.a tokoroten(@tokoroten) さん from NextInt, Repro AI Labs 顧問
内容メモ:
こういう背景で、セッションの内容を変えたそうです。
「AIで改善可能なものは何か」(tokoroten氏)
— n.siena (@n_siena) 2018年11月6日
「寄稿した『データサイエンティスト養成読本』が発売されたばかり! 10人の著者が示し合わせたように似たようなことを書いていて、悩みは共通していると感じた。今日は、主に書き忘れたことを。
#reprotech
データサイエンティスト養成読本 ビジネス活用編
データサイエンティスト養成読本 ビジネス活用編 (Software Design plusシリーズ)
- 作者: 高橋威知郎,矢部章一,奥村エルネスト純,樫田光,中山心太,伊藤徹郎,津田真樹,西田勘一郎,大成弘子,加藤エルテス聡志
- 出版社/メーカー: 技術評論社
- 発売日: 2018/10/30
- メディア: 大型本
- この商品を含むブログを見る
AIブームの背景、日本と北米の違い
北米
- BIによる経営のインテリジェンス化が2000年代から進行
- ひとしきりデータがDWHに溜まっている
- 溜まったデータでなにかできないか?
- データあるし、AIをやっていこう
日本
- BIブームを経ないでAIブームが到来
- データが無いのにAIやりたい
- 死
- BIの導入を説くも「それは時代遅れだから」で一蹴される
顧客に何を売るべきか?
日本企業はLv0、北米はLv2が多い。 PLv0企業がLv2商材を導入して事故る。
データサイエンティスト養成読本 ビジネス活用編 p92より
顧客レベル | 顧客の状態 | 次に販売すべきもの |
---|---|---|
Lv0 | * 各環境にあるシステムにログインしてデータを取得できる | データ収集基盤、簡易BI環境の販売 |
Lv1 | * データ収集基盤にデータが蓄積されている SQL等による基礎統計ができている 統計などからインサイトが得られる |
探索的データ分析ができるBI環境の販売、SQLなどのトレーニング |
Lv2 | * 基礎統計が充実し、BIツールによるダッシュボードが整備できている ピボットテーブルなどによる探索的な手動データ分析ができる 手動データマイニングから施策を立案できる、手動で実行できる |
データ分析代行、データサイエンティストの派遣 |
Lv3 | * 機械学習アルゴリズムを利用した探索的データ分析ができる * A/Bテストなどを利用した、データに基づく意思決定ができる |
機械学習システムの開発、安定運用のための仕組みの提供 |
Lv4 | * 機械学習などを利用して、自動的に施策実行される環境を構築できる * 機械学習により安定的に稼ぐ仕組みが作れる |
ディープラーニング環境のためのインフラの提供 |
Lv5 | * LV4で作ったシステムで使われている機械学習アルゴリズムをより高度なもの(例えばディープラーニングなど)に置き換えていき、収益性を改善する | ー |
こうやって整理されると、分かりやすいですね。
「顧客が本当に必要だったもの」と予算取り
- 偉い人
- 「XXXXXというビジネス課題を解決したい」
- ぶちょー
- AIで解決することにすれば予算獲得できるのでは?
- 細かいシステム投資を一緒にやりたい
- AIベンダーに投げたろ
- 実際にあった怖い話
- 詳細は懇親会で
- 偉い人から本当の課題を聞き出す交渉力が必要
こういう話は本当に怖い。。。
機械学習と売上のレバレッジ
- 機械学習により売上が0.1%上がると仮定
- 売上が1000億円であれば、1億円増
- 売上が1億円であれば、10万円増
- 大企業ほど機械学習の効果は大きい
- システム構築コストを考えると。。。
- 機械学習は「専門家の労働集約産業」を「設備産業」に転換する
- 設備産業に転換するだけの費用は支払えるのか?
- 設備産業に転換するだけの需要はあるのか?
- 中小企業が機械学習案件やっても、なかなか効果は出ない
めちゃくちゃ納得できる話が続いていて凄い。
— kabukawa (@kabukawa) 2018年11月6日
来てよかった。
#reprotech
キュウリ分類はなぜ失敗したのか?
半年後にはわたしの判断能力が向上したため現在は使っていない。
- 何が問題か?
- 人間の能力が高い
- 人間の価値が安い
- 専門家の労働集約産業から設備産業に切り替わったことを理解していない
- 事業拡大や外販を指向していない
コンサルティングを使えない企業
コンサルティングファームは高い
- コンサルティングファームのコストを回収するには、元々の売上が十分に高い必要がある
- 売上規模が小さい企業はコンサルティングファームに頼めない
売上規模が小さい会社がAI企業やSIerに来る
- コンサルティングファームに頼めない規模の企業がやってくる
- コンサルティングが行われていない案件が舞い込んでくる
- 顧客の言うままに作ると確実に炎上
フリーのコンサルを雇おう
- コンサルOBとかところてん氏のようなフリーランスは割といる
- 業務分析をきちんとやってから発注しよう
人事制度の問題
日本企業はメンバーシップ型雇用
- 会社に人が所属するという考え方
- 同一賃金・同一役職
- 逆は職務記述書に書かれている仕事を行うジョブディスクリプション型雇用
- 仕事に人が所属する
- 同一賃金・同一労働
メンバーシップ型雇用は市場価値の高い人間を雇用できない
- 給与を上げるには、高い役職を与えなければならない
- データサイエンティストを年収1000万円で雇用するには、部長職を与える必要があるため雇用できない
- 労働市場で適切な人材を雇用できなくなる
大企業はなんだかんだ言いつつも体力があるのでなんとか自社内に抱えられるかもしれないけど、中小企業だと結局
- 売上規模が小さい会社がAI企業やSIerに来る
になっちゃう気がするんですよね。
金融システムとの連携
- 保険との連携
- 予測モデルの精度が高ければ、それはリスクモデルとして機能する
- リスクモデルとして機能するのであれば、保険料が算定できる
- 融資との連携
- リスクを兼ねで解決することによる事業スケーラビリティの確保
- 専門家の雇用を機械学習+金融システムで設備産業化
- 金があれば勝てる構造を作り出す
精度を上げすぎると駄目。
— kabukawa (@kabukawa) 2018年11月6日
予測精度が上がって、1年後に死ぬことが分かってしまうと保険をかけられない。
これは駄目、と。
#reprotech
企業間の契約とリスク分配
保守
SIerが機械学習の保守ができない。
— kabukawa (@kabukawa) 2018年11月6日
わかりみがありすぎる、、、
#reprotech
まとめ
腹をくくれ
腹をくくれ
— kabukawa (@kabukawa) 2018年11月6日
じゃないと大企業に負ける。
大企業が全力でやり始めたらもう勝てない。
つらみ、、、
#reprotech
最速で AI 機能をリリースする技術
Taiso Imai a.k.a taison(@taison124) さん from Repro
内容メモ:
スライドがわかりやすく書かれているので、ここは自分のツイートをいくつか。
Repro AI Labs
Rewpro AI Lab 設立のスピード感、ハンパない!
— kabukawa (@kabukawa) 2018年11月6日
#reprotech
AI機能をリリースするということ
AI機能をリリースするということ
— kabukawa (@kabukawa) 2018年11月6日
#reprotech pic.twitter.com/TfcqI2p31O
AI機能を開発するということ
— kabukawa (@kabukawa) 2018年11月6日
・ボトルネックは発生する
→丁寧に解決していく
地道な作業が大事ということですね。
#reprotech
進めていく上でやったこと
進めていく上でやったこと
— kabukawa (@kabukawa) 2018年11月6日
・PoC
業務理解と信頼関係の構築が大事
#reprotech
スライドの色々なところに出てくる「感謝」。
— kabukawa (@kabukawa) 2018年11月6日
信頼関係を構築する上で感謝って大事ですよね。
それをこうやって表明できるの、いいですね!
#reprotech
まとめ
腹くくってます!
成果の早道https://t.co/wHyJvdRIIm
— kabukawa (@kabukawa) 2018年11月6日
#reprotech
実務(仕事)で機械学習やりたいときの障壁やコツ
[資料が公開されたら追加します]
Kazuya Gokita a.k.a kazoo(@kazoo04) さん from Usagee, テグザム
内容メモ:
ありがちなやつ
- Deep Learningならいけるのでは?
- 思ったよりうまく行かなくて挫折
- どんどん妥協していって最後はよくわからないヒューリスティックになる
- ただの正規表現だけど人工知能と言い張る
- 結局エンドユーザーが割りを食う
ありがちなやつ
— kabukawa (@kabukawa) 2018年11月6日
#reprotech pic.twitter.com/CDBeWDYIVi
こ、これは!!! #reprotech pic.twitter.com/87hmdVNdm1
— kabukawa (@kabukawa) 2018年11月6日
あるべき姿
- 機械学習(Deep Learning)は最後の手段
- 他の手法で解決できるならそのほうが良い
- 業務フローの見直し
- 電子化
- 人を雇う
- 人間は汎用性が高く柔軟で賢い
あるべき姿
— kabukawa (@kabukawa) 2018年11月6日
#reprotech pic.twitter.com/gU4JBVRoAt
つらい話
需要予測を機械学習でやっているが社内からはダメ出しされる
- 「どれくらい精度出ているんですか?」
- 「96%くらいです。」
- 「よくわからない…いま人手でやっているのはどれくらいなんですか?」
- 「92%くらいですね。」
機械学習が向いているとき
- 捌くデータが大量にあって人手では厳しい(十分にペイできる)
- 倫理的に問題がある(人間が触れたくない、人間にいてほしくないなど)
- 低レイテンシが要求される
- 小型・省電力などが求められる(組み込み、IoT)
- 人間が直接観測するのが難しい
- 人間でもできるが教育コストが非常に高い
など
機械学習が向いているとき
— kabukawa (@kabukawa) 2018年11月6日
#reprotech pic.twitter.com/7f2Ko7a8Ig
まず確認しなきゃいけないことは...
まず確認しなきゃいけないことは
— kabukawa (@kabukawa) 2018年11月6日
・クライアントが望んでいることは何か?
・どんなタスクなのか?
#reprotech
そうは言っても「精度どのくらい出るの?」って聞かれない?
- 聞かれる…
- 雑な資料だけから「だいたいでいいから教えて」と聞かれるケースはよくある
- 不確実性が高いものを答えるのは気が引けるが、経験と勘から答えるしかない
- そんなに大きく外したことはないと思う
雑な資料だけから「だいたいでいいから教えて」と効かれるケースはよくある。
— kabukawa (@kabukawa) 2018年11月6日
これはツラ、、、
#reprotech
手法にはそんなにこだわらない
- 機械学習だと大変だが情報工学の知見を活かすと案外簡単にできるタスクは多い
- OpenCVのAPIを組み合わせるだけでも相当複雑なことはできる
- 自然言語処理タスクではDeep Learning 一強というわけでもない
- 銀の弾丸はない
Deep Learning 使ってる?
- 適していると思えば使う
- 社内GPUサーバーにタスクを投げるだけで良い
- 転移学習ができ、学習済みモデルの入手が容易という点は非常に強い
- ただ、簡単な問題だったら依頼が来ない
- だいたい変な仕事しか来ない(たのしい!)
「だいたい大変な仕事しか来ない」(楽しい!)
— kabukawa (@kabukawa) 2018年11月6日
このポジティブさが凄い。
#reprotech
リサーチ業務は結構している
- arXivの話題になっているっぽい手法を追試する
- 当面お金にはならないが「面白そうだから」という理由で勝手に始める
- その他個人的に興味がある手法を勝手に試したりする
- 勝手プロジェクトが成長してお金になることもある(ないことのほうが多い)
弊社の方針
企業としての懐の深さだと思います。 #reprotech pic.twitter.com/SyAyvO3ApV
— kabukawa (@kabukawa) 2018年11月6日
1. Prototyping
- 色々な考え方があると思うが、まずはとにかく動かすことを優先
- そもそも「この手法自体が駄目」という可能性が高い
→ 早く失敗する - 駄目だった場合は「何がどう駄目だったか」 を共有
- そもそも「この手法自体が駄目」という可能性が高い
- 但しDockerfileだけはちゃんと書くルール
→ 再現性の確保のため
2. Writing Compornents
社内で活発なもの
- 自然言語処理系
- Graph Convolution
- その他
ありがちな or 遭遇した悩み
- 再現性が低い
- 銀の弾丸かと思って飛びついた手法がハズレ
- 機械学習 "以外" のことをたくさんやらないといけない
- インフラ
- データ構造
- UI
- ロギング
- API
- 営業
- etc...
- 計算リソース
- 解決済み(GPUサーバー導入、Kubernetesなど)
基本的に変な案件が多い
- 機械学習、特に画像認識はコモディティ化していて誰でも使える
- 実際、体感として単純な画像認識案件のようなものはかなり減った
- わざわざ変な名前の会社に問い合わせてくるようなものは変わった案件
- 追加学習が頻繁に走る
- レイテンシが重視される
- センサーが特殊
- その他よくわからない一筋縄ではいかないもの
まとめ
大変は大変だが...
- データが豊富に有ってきれいに正規化されていて問題と評価法が明確でディープラーニングに突っ込んだら終わる仕事...なら誰でも解決できる
- そうではないから取り組む意義があるし、高い付加価値が生まれる
- そもそもクライアントはなにかの問題を解決して価値を生みたいのであって機械学習を使いたいわけではない
- 手法にとらわれず問題解決をするのが大事
・クライアントはなにかの問題を解決して価値を生みたいのであって機械学習を使いたいわけではない
— kabukawa (@kabukawa) 2018年11月6日
・手法にとらわれず問題解決をするのが大事
#reprotech
全体まとめ
バーン!
懇親会
懇親会、会場の時間の関係で実質15分くらいでしたが、美味しい料理とお酒、ありがとうございました!
食べもの、飲み物がデプロイされて、歓談中です。和やかな雰囲気で良き! #reprotech
— kabukawa (@kabukawa) 2018年11月6日
まとめ
どのセッションも非常に内容が濃く実践的で、とても参考になりました。 こうやってブログに書き起こしてみて、あらためて「素晴らしい勉強会だったな」と思いました。
ノベルティとしてTシャツもいただきました。
参加できてよかったです!次回も是非また参加したいと思いました。
今回も、とても参考になる内容を聞くことができ、非常に有意義な時間を過ごすことができました。登壇者、スタッフ、参加者の皆様、本当にありがとうございました! #reprotech
— kabukawa (@kabukawa) 2018年11月6日