Intelligence)に関するさまざまなツールが発表され、ビジネスにAIを組み入れる必要性が強く意識された年でした。多くの企業が、ビジネスにどうAIを活用すればよいかを検討しはじめた年でもありました。2018年は、実行段階に移行する企業も増え、AIによるビジネスへのインパクトを実感できるシーンも増加すると思います。この記事では、AI・データ導入戦略を手掛けるDataStrategy株式会社と、AIプロトタイピングサービスを提供するAnyTech株式会社が、手掛けてきた多くのプロジェクトの中でうまくいかないプロジェクトの傾向を洞察し、成功に向かうヒントを対談形式で分析してみました。「導入の失敗」に焦点を当てています。記事は前半後半の2部構成で、前半はよくある失敗の原因、後半は「こうすれば良くなる」という経験に基づいた内容となっています。AIを導入してみたものの、なかなかうまくいかないと悩んでいる方たちの参考になれば幸いです。NPO団体、フリーランスを経て現職。モデルの開発、サービスプロトタイプの開発などにも従事。株式会社リクルートテクノロジーズのビッグデータ部など複数の企業で開発に従事。開発コンテストでアプリ賞を受賞。AnyTech株式会社を設立し、AIプロトタイピングサービス「AnyTech」を提供。PAAK」に採択されている。AIを導入してみた企業から「思っていたより難しかった」、あるいは「当初想定していたことができなかった」という話があります。実際に「こんなケースがあった」という話を聞かせてください。うまくいかない理由は2つあります。1つは開発期間が長期化してしまうこと、2つ目は開発ツールの選定です。1つ目の長期化というのは、データが十分足りているかなどの検証を含めて最初から開発期間を大幅に取ってしまうことで、その後のプロジェクト進行がうまく回らず、結果として精度の良いエンジンが上がらないという状況があります。これまでの大規模な業務システム開発の考え方をベースに設計したケースがあるかなと思います。AI開発のプロセスはこれまでの大規模な業務システム開発のプロセスが大きく異なります。AI開発の場合、最初の段階で実際データをシステム化する前に完全に要件を定義しきるのが難しいと思います。業務システムとなるとやはりなかなか小さい変更やエラーも許容できないケースもあり、それによってシステム要件をガチガチに決めるということがあると思いますが、そこが大きく変化しているのではないでしょうか。システム開発では「いつまでにこの機能を」というマイルストーン(進捗管理のために途中で設ける節目)の置き方ができると思います。AI開発の場合はいったん形にしてからチューニングといったフローになっています。マイルストーンは置けますが考え方は変わってきますね。適切な開発期間ではない事案は、大手企業に多いです。有名企業はそれまでの得意先との長年の付き合いもあり、名の知れたところと仕事をすることが多くなります。すると、これまで業務システムを得意としている開発会社と組んだ場合に、このようなことが起きることが多いです。2つ目の開発ツール選定ですが、開発企業によっては既にあるツールやエンジン以外はあまり使わないという縛りがあったりします。開発企業がどこかとパートナー契約を交わしている事例もあります。そのツールを使わないといけないという縛りの中で実際に作ろうとしているものに最適化できないケースがあります。僕たちは既存ツールの強みや弱みを知っているので、その相談から始まり、以降のプロジェクトを進めることもあります。さまざまなツールを使えることがAnyTechの魅力として映っているのかもしれません。武田さんはいかがでしょうか。うまくいかないケースは大きく3パターンあると考えています。1つ目は、「作ってみた、導入してみたけれど精度が上がりません」です。理由はケースバイケースですが、そもそも「当てるのがかなり難しいものを当てようとしている」とか、データ収集方法が適切ではないことが挙げられます。2つ目はそれと関連しますが「作ったけれど、想定していた人や社内の人、あるいはお客さまに使ってもらえない」ということです。使ってもらえないときは、精度の問題であれば精度改善が必要ですし、UI・UXに問題があることもあります。期待値を下げるというのも有効なアプローチだと考えています。お客さま対応のChatbotだとそれなりに高い精度が求められますが、マイクロソフトの女子高生AIりんななどは、うまく期待値を下げている例だと思います。多少おかしなことを言っても許される設計ですね。業務プロセスのなかで、期待値が低いところ、ある程度間違いが許容されるところから始めていくというのも、アプローチとしては有効だと思います。いえいえ、その取り組みを続けて、どんどん精度が上げられれば良いかなと思います。最初狙った精度はいきなり出ないので、できるだけの期待値に下げて評価データを集め、徐々に事業インパクトが出るような精度を目指して上手くいくことが多いです。そのほか、3つ目としてよく聞く話は「外部のAIが入っているサービスを買ったのだが思うように使いこなせない」ということです。それもAI導入の中の問題の1つとしてはあります。実現したいことに対して、どの程度の精度が達成できそうかを判断することは難しいことのように思いますが、分かるものなのでしょうか。精度担保をすることは困難ですが、モデルを作ったことがある技術者が見れば、見当はつけられます。無理か、頑張れば何とかなるか、は経験的に肌感覚で分かると思います。判断基準の1つとして、人間が判断できないようなものは結構難しいと思います。過去の大手企業の事例でも、人間でも判断できないようなものを判断させることを目標として、うまくいかなかったケースが散見されました。失敗は当然ですが、なかなか外に言わないですよね。大規模な失敗なら耳に入ることもあるかもしれません。今回AIに特化したアクセラレータ・プログラムに参加しましたが、とても新鮮で刺激を受けました。各社AI系のスタートアップは、初期に受託で立ち上がっている会社が多いので、割とどこでも失敗経験があるようですが、そのあたりはオンラインには出てきていないようです。狭いコミュニティーでは共有されることもあるので、その失敗例の情報は重要だと感じました。プランニングをいかに適切にできるかが最重要。今度は「こうやれば、うまくいった」「うまくいく」というご自身の経験からお話しいただければと思います。事前のプランニングが一番重要だと考えています。いうデータと技術があれば、これぐらいの精度のものはできそうだ、ということを事前にプランニングして、検証し、実際に使えるものを開発していく、というところが重要ですね。タスク設定が難しければ精度は出ませんし、精度が出ても事業(P/L)へのインパクトがなければ、後から振り返ったときに「なんだったのだろう?」ということになりかねません。精度が出そうか、事業インパクトがありそうかという視点でタスク設定をする必要があります。AI導入の事業へのインパクトの出し方としては、大きくいうと顧客向け(プロダクトに組み入れる)と社内向け(コスト削減)に分類されます。顧客向けであればAIに求められる精度水準も高くなりますが、社内向けであれば、AIを単独で使うのではなく、AIと社内人員とを組み合わせて行うことで、結果として業務の精度を上げたり効率を上げたりといったこともあります。今あるデータや技術をもとに、どの程度の水準であれば達成できそうか、そのためにはどう事業に組み込むかを適切に設計する必要があります。結局僕もプランニングの話になってしまいます。Concept、概念実証のための試作品を作ること)の開発を組み込んだプランニングと捉えることが大事だと考えています。従来のプランニングはあくまで開発着手する前のものという認識で、計画をしっかりと練ってから作り始めていくというのが一般的です。AI開発の場合はPoCを作ることでようやくある程度確度のあるプランニングができるので、「プランニングの中にPoCはある」という前提でプロジェクトを進めるのが重要だと考えています。しないと最初のプランニングが机上の空論になってしまい、ズレた予算・期間・精度と全体的にズレたものになってしまうこともあり得ます。人間がやっている判断を再現することが精度向上の近道なので、まずは実際にその業務の現場担当者が何を見て判断しているのかをきちんと把握することです。それを踏まえて2つ目は、その人が判断材料としている情報を「きちんとデータ化して入れましょう」です。3つ目は、その上で「アルゴリズムを改善して頑張りましょう」です。すごいアルゴリズムを開発できる人を連れてくれば精度が上がるのでは、と一般的には思われるかもしれません。データがダメだとアルゴリズムでどう頑張っても難しいので、まずはデータをリッチにしてアルゴリズムを頑張る、というのが王道です。僕も2つあって、チューニングの方法を再検討する、見直すということがあります。チューニングは、かなり人力というか、属人(その人に属すること)的な部分も多いし、この事業だったらこの方法が良いという正解があるわけでもないので、そこは再検討の余地がありますし、違う手法をもっている企業に相談に行くという手もあるかもしれません。2つ目は逆にチューニングの問題ではない場合も多々あるので、最初の設計から見直すという、事業の意思決定としてはかなり痛手というか損切りとして痛いのですが、その方がスムーズにいくというパターンもあります。この点に関しては、逆に従来のシステム開発に近いかもしれません。途中まで作ってしまったけれど、そもそも設計が良くなかったということになります。AIの技術は非常に幅広くて、かつ日々進化しています。AIに関連したデータ分析ができる人材も非常に人気で、需給が逼迫(ひっぱく)しているという状況を踏まえると、AI導入に関して必要な知識や人材を一つの会社内で賄うのは非現実的になっていると思います。無理に全部自社で実行しようとせずに、適切なタイミングで適切なパートナーを選び、良い意味で「使っていく」というのが必要だと思います。「良いベンチャー企業にアクセスできない」という話もよく聞きます。そもそもどこが技術をもっているか分からない。ならないためにも、普段から良いコミュニティーにアクセスすることは重要だと思っています。技術をもったベンチャーの周りには、きちんと技術をもったベンチャーがいますし、技術をもったエンジニアの周りには、技術をもったエンジニアがいると思います。AnyTechはフリーランスや本業以外の仕事をするトップエンジニアのコミュニティー集団です。その経験から言うと、各専門家が必要だという話に加えて、さらに2つあります。1つはその領域の失敗経験があるかどうか。技術力が高いところは失敗経験も豊富なので、それが1つのサイン(判断材料)になります。1つは失敗だけでもよくないわけで、イテレーション(ソフトウエア開発、特にアジャイル開発における短い間隔で反復しながら行われる開発サイクルのこと)のサイクルが早いかどうかになります。1つのマイルストーンを達成するのに1年、2年と掛かるのではなく、そこを細分化してイテレーションを回していけるかどうかがよいパートナーの指標になるのかなと考えています。新しい技術が出てくるのも早いのでそれらを取り入れられるかどうかというのもイテレーションの早さであり、重要だと考えています。AnyTechもさまざまな開発を通じて失敗経験を積んでおり、適切なサイクルの設定の勘所も分かる開発サービス集団です。DataStrategy。