ディープラーニング/機械学習のビジネスフレームワーク「5D」

LeapMindの三室です。
引っ越しとか人事とか色んなことやっておりましたが、現在は主にセールス/ビジネス開発に携わっております。そんな中、考えていたことをまとめてみたいと思い、久々にブログを書くことにしました。

いきなりですが結論から言うと、下記の5つの観点が必要かなと考えています。(なんとなくDでまとめてみた

以下で説明していきます。

【ディープラーニングとか機械学習とかAI()プロジェクトでよくある状態】

数年ディープラーニング/機械学習のビジネス周りをやっておりますが、よくある状態としてはこんな感じです。
「そもそもどんなことできるかわからんですわ〜」
「ROI見えないんで、予算取れないですわ〜」
「ディープラーニングブラックボックスだから、不安ですわ〜」
「モデルはいいけどセキュリティの観点からクラウド使うの無理ですわ〜」
「まだ既存システムとのインテグレーションまで考えられていないですわ〜」
「処理環境にそんなに投資できないですわ〜」
とかとか。
新しい技術を導入検討しようとする時にはいつでも障壁がつきものですね。
そもそもディープラーニングや機械学習なんて使わなくて良いケースもたくさんあるので、きちんと自分が今どのPhaseなのかを把握した上で、やるべきことを明確にする必要があるかと思います。

【導入に向けた3つのPhase】

何事にも順序がありますよね。いきなり本開発はなかなか難しいです。ざっくりと3つに分けてみました。

-Phase1 技術検証
そもそもどんな技術があるのかを調査し概要を理解する
-Phase2 概念検証(PoC)
解決したい課題/実現したいアイディアが想定アプローチで達成できるかを実証する
-Phase3 本開発
本番に向けた開発を行う

結構ありがちなのが、Phase1がないパターンですね。特にビジネスサイドの方々は思ったよりどんな技術があるのかきちんと理解している人が少ないと思います。勉強するなり、自分で触ってみるなりするのが良いかと思います。もちろんこれはディープラーニングや機械学習に限った話じゃないと思います。

技術が一定理解できたら、どんな課題が解決できそうかなどのアイディアを出して、その検証に移っていく流れかと思います。大事なのは、技術が目的化しないことかと思います。いわゆる「AI」が目的になっちゃダメってやつですね。

最後のフェーズは本開発に向けてっていう感じです。
プロジェクトマネジメント的な観点で見るとスーパーざっくりではありますが、ビジネス導入という観点ではこんな感じでとりあえず大丈夫かと思います。

【ディープラーニング/機械学習のビジネスフレームワーク「5D」】

再掲ですが、今回伝えたかったことです。

ビジネスへの導入まで行かず頓挫するケースは、どれかの観点が不足しているのがほとんどです。特にディープラーニング/機械学習周りは、developに依りすぎで、deployやdriveが抜けているケースが多いかなと感じています。どれだけ精度高いモデルを作るかよりも、どうやって使ってどんな価値を生ませるのか、の方が重要かと思います。

あとは各要素が密接に関係していることも大事かと思います。deploy見据えたdevelopとか。drive見据えたdefineとか。develop見据えたdataとか。

また、検討段階(Phase)に応じて、各「D」で行うべきことが異なってくるかなとも考えました。
技術検証の段階でデータ集めてモデルをベンダーに作ってもらう必要あるんだっけ?
とか
PoCでPCBまで設計する必要あるんだっけ?
とかのイメージです。

先ほどの各Phaseを縦軸に、5Dを横軸に置いて表にしてみました。

今、自分がどのPhaseにいて、どこで詰まっているのかを把握するのに使っていただけると嬉しいです。
特にこれから重要になってくる「D」は、「Deploy」かなと考えています。今、全体的に抜け落ちている観点も「Deploy」かなと。

実際にサーバー/クラウド含めて環境構築しちゃってランニングコスト半端ないっすみたいな状況もちらほら聞くので、そこも鑑みてモデル構築行なっていただきたいです。

「じゃあそのDeployの環境ってどうやって見極めてたらええねん」となると思いますので、LeapMindで考えている観点を最後にお伝えできればと思います。

1.求められる精度がどのくらいか
2.応答速度はどのくらい欲しいか
3.インターネット環境ってどんな感じか
4.電力やコストの面でハードウェアどこまで許容できるか

精度低下すると生命とかに関わる!という場合は、Deploy環境も一定リッチにしていた方が良いかと思います。
応答速度については、速さを求めるのであれば、通信の分時間がかかるクラウドではなく、エッジ側で処理した方が良いかなと。
インターネット環境は、クラウド使えるかどうかですね。インターネットが不安定な場所だったり、扱うデータがプライバシーに関わる部分であれば、エッジ側で処理するべきかと思います。
ハードウェア環境は、電力やコスト面でどこまで許容できるかです。エッジ側で処理するべきとなった場合、GPUのコスト/電力が許容できるのか、などを判断すべきです。電力やコストの観点で制約がある場合は、FPGAやCPU、ASICなどを検討すべきかと思います。

【まとめ】

文量少ない割にちょっと内容詰め込みすぎましたが、伝えたいこととしては、
「自分のPhaseを知った上で、5Dでどこが足りていないのかを分析し、やるべきことを明確にしましょう」
ということでした。

「D」でまとめてみたので、最後にトラファルガー・ロー「”D”はまた必ず嵐を呼ぶ」を貼っときたかったのですが、著作権とかなんか言われそうだったのでのやめときました。個人的には特に「Deploy」が嵐を呼ぶのではないかと考えています。実用環境でそのモデルって走るんでしったけ?ってところですね。あとは、これからは「Drive」も非常に重要かと。PoCはビジネスメリットを産みません。現場で活用される際にきちんと結合できるのかというIntegrationの視点も重要になってくるかなと思っています。

結構個人的に考えたことが多いので、ご意見あればいただけると嬉しいです。

三室 佑貴

Posted by 三室 佑貴

Leave a reply

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です