Keep Innovating! Blog
目次
話題の C3.ai 社(https://c3.ai )が12月10日にニューヨーク株式市場(NYSE)に上場した。今後の躍進に期待が高まっている注目のAI企業である。
彼らが推進しているビジネスは、エンタープライズ用AIアプリケーションのプラットフォーム提供。いわゆるB2B型のビジネスモデルである。
このプラットフォームは、かなり出来の良いものらしく、彼らの高評価につながっている。3M(スリーエム社)、シェル石油や米空軍といったハイレベルな採用事例からも、これはタダモノではないなという感じがする。
一体、このプラットフォームはどういうものなのか? どういうイノベーションが含まれているのだろうか? AI技術とオープンイノベーションに関わっている私たちとしてもとても気になる。まずは、彼らの公式サイトの資料を調査してみた。なかなか良くできたサイトで、彼らのコンセプトが明快に述べられている。とても興味深い内容だったので、今回はそれを紹介してみたいと思う。
まずは、彼らの主張から見てみよう。後半では、それについて考察した内容を書いている。
1. 何が問題か?:「溢れかえるAIプラットフォーム」
そもそも C3.ai社が解決しようとする問題は何なのか?それは、エンタープライズユーザにとって使い物になるAIプラットフォームが存在しない(しなかった)ことだ。
ご存知のように、現在、AI技術の世界はさまざま要素技術が乱立していて統一性がない。かろうじてAI系のプログラミング言語はPythonで統一された感があるものの、ライブラリやフレームワークや自称プラットフォームが数え切れないほど存在している。
実際、エンタープライズ用に本格的にAIのシステム化を行おうとすると、一つで満足のいくものはなかなかない、というのが実情である。エンジニアには、さまざまな言語やツールやデータモデルを組合せるという、複雑で膨大な仕事が待っている・・・というのが彼らの主張(出典:Awash in "AI Platforms";(溢れかえるAIプラットフォーム) )である。
2. C3.ai の解決策:C3 AI Suite アーキテクチャ
前述の「溢れかえるAIプラットフォーム」問題を解決するという C3.ai のビジネスモデルの中核になっているのが、C3 AI Suite と呼ばれるソフトウェアプラットフォームである。エンタープライズAI向けに必要な要素を包括的に盛り込んだプラットフォームであり、モデル駆動型アーキテクチャを採用していることが最大の特徴となっている。
2.1. モデル駆動型アーキテクチャ
モデル駆動型アーキテクチャ(MDA)とは、ソフトウェア開発手法の一種である。システムの機能的仕様と実装アーキテクチャとを分離させ、それぞれを独立して扱えるようにすることを目的とする。機能仕様は専用のドメイン固有言語(DSL)を使って記述し、プラットフォームに依存しないモデル(PIM)とするのが標準的なスタイルだ。(下図参照)
C3 AI Suite の MDAにおいても、中心となるのは AIの仕様をプラットフォームの詳細と切り離して記述するための「モデル」の概念である。
少し長いがC3.aiによる説明(https://c3.ai/what-is-enterprise-ai/c3-ai-suite-model-driven-architecture/ )から引用してみよう。
『モデルを使用することで、開発者は、AIにまつわるデータ型やデータの相互接続の詳細について気にする必要がなくなる。開発者は、システム上に登場する概念ーーー例えば:「顧客」・「トラクター」・「医師」・「売上」などの「エンティティ」ーーーにモデルを設定するだけでよい。それだけで、そのモデルの基礎となるすべてのデータ、データの相互関係、ポインター、API、関連付け、接続、およびそれらのデータを操作するために使用されるプロセスが、モデル自身の中で抽象化されて提供される。
これにより、開発者が設計時に意識しなければならないシステムの要素、プロセス、そしてそれら同士の接続等の個数を大幅に削減できる。例えば、MDA を使わない場合の1013個オーダーからMDA使用時には 103個オーダーへと削減され、非常に扱いやすくなる。』
とC3.ai は説明している。
2.2. プラットフォーム独立性
2.2.1. マルチクラウド対応
C3 AI Suite は、前述のモデル駆動アーキテクチャ(MDA)を採用していることからも分かるように、プラットフォームに依存しないAIシステムの提供を目指している。いわゆるマルチクラウド対応である。
すなわち、C3 AI Suite のMDAで作成したアプリケーションは、実装プラットフォームとしてパブリッククラウドもオンプレミス(ベアメタル)でも自由に選んでデプロイ(実行)できるのである。アプリケーションコードを一切変更することなく、プラットフォームを自由に切り替えることもできる、とC3.ai は説明している。
クラウド化を推進する企業の多くが、クラウドベンダーへのロックインを懸念しているため、この特長は多くのユーザに歓迎されるだろう。
2.2.2 ポリグロット(Polyglot)クラウド展開能力
ポリグロットなクラウド展開能力(polyglot cloud deployment)とは、複数のクラウドベンダーの様々なサービスをミックスして利用したり、それらのサービスを簡単に入れ替えたり、交換したりすることができる能力のことである。
C3 AI Suite はモデル駆動アーキテクチャにより、ポリグロット展開能力を持っている、とC3.aiは説明している。
3. 既存手法との比較
C3 AI Suite でAIシステムを開発した場合、モデル駆動アーキテクチャの効果により、具体的にどれぐらいの生産性の向上となるのだろうか?
公式サイトに生産性データが掲載されているので、それを見てみよう。C3.ai社が第三者に依頼して作成させたデータなので、やや客観性・中立性に疑念はあるものの、ある程度参考にはなると思う。内容は、C3 AI Suite上での開発と、他の単一のクラウド基盤での開発を比較したものである。
3.1. AWSネイティブより26倍速い開発
AWSのクラウドコンピューティングとAIマイクロサービスは、強力なテクノロジー群である。しかし、エンタープライズAIアプリケーションを開発するには、カスタムメイドのサービスを多数作成して組合せて運用する必要があり、複雑で時間のかかる作業になることがある。C3 AI Suite を使えばこの時間を短縮できる。
この短縮効果を比較実験によって確認した。ここでは、同じ仕様のAIアプリを、それぞれAWS用および、C3 AI Suite on AWS 用に開発して比較している。その結果、C3 AI Suite のほうが26倍高速(1/26の工数)に開発できたとのこと。詳細は、第三者機関に依頼して作成した報告書(https://c3.ai/wp-content/uploads/2020/05/C3ai-plus-AWS-accelerates-time-to-value.pdf )を参照のこと。
3.2. Azure上より18倍速い開発
Microsoft Azureについても前述のAWSと同様に比較を行っている。
第三者機関に依頼して作成された報告書がこちら(https://c3.ai/wp-content/uploads/2020/05/C3ai-plus-Azure-accelerates-time-to-value.pdf )である。結果として、C3 AI Suite のほうが 18倍高速(1/18の工数)に開発できた、という結果となっている。
4. 考察
ここまで C3.ai のアーキテクチャについて調べてみて、私なりに感じたことをいくつか書いてみる。
4.1. モデル駆動アーキテクチャを維持できるか?
既述のごとく、C3 AI Suite はモデル駆動アーキテクチャ(MDA)を採用している。MDAは2000年代前半に登場し一時注目されたが、主流にはなれずに終わったコンセプトである。このオワコンとも言える MDA を C3.ai が採用していることに私は少し驚いた。
当時のMDAが「失敗」した主な理由は、おそらくその理想主義にある。
MDAの開発スタイルは、開発者はモデル作成にのみ注力し、そこから自動的に実装コードが生成されるというものである。開発者は実装コードのプログラミングをしなくて良い!ーーーこれは、理想的で素晴らしいことに思えるが、かならずしもそうではない。逆に、開発者は実装コードに関与することができない、というネガティブな意味合いも含んでいるからだ。
例えば、速度チューニングの問題がある。MDAで作成したシステムの速度が遅いという問題が生じた場合を考えてみよう。従来の開発手法であれば、速度低下の要因を分析し、該当する箇所のコードを修正して対処できる。しかし、MDAではそれはできないか、できたとしても非常に困難な道である。
もし、実装コードを手動で修正してしまうと、以後その修正を自力で維持しつづけなければならなくなるからである。
システムを運用しつづける限り、機能変更や拡張はつきものである。その際にはモデルを修正して再度実装コードの自動生成を行うことになる。しかし当然その生成コードには上記の手動修正は反映されていない。再度自力で修正を行わねばならないのだ。そして、エンタープライズ向けのシステムでは、こうした修正箇所が何十箇所・何百箇所になってもおかしくない。またプラットフォーム側のバージョンアップにより、修正方法自体を再検討しなければならない事もあるだろう。こうした膨大な修正の維持・管理作業がモデル修正のたびに必要となり、せっかくのMDAによる生産性向上効果が薄れてしまう。
C3 AI Suite も同じ問題を抱えてしまう可能性がある。
企業がAIでやりたいタスクは現状でも多数あるし、今後も増えていくだろう。プラットフォーム側の機能強化も継続するだろう。こうしたさまざまな機能を組合せて複雑なモデルを作るケースも増えていく。そうした複雑化するモデルを今後も矛盾なく実装に自動変換可能な状態にすること自体が難しい仕事である。さらにそれを常に満足のいく性能で動かすというのは至難の技に思える。
C3.ai はこうした問題に将来に渡って対処しつづけることができるのだろうか? ノーフリーランチ定理(あらゆる問題に対して最高の性能を発揮し続けるアルゴリズムは存在しないという定理)などから考えても、ここは疑問の残るところである。
4.2. AIの歴史はパソコンの歴史ーーウィンテル化をめざすか?
C3.ai 社が指摘している「溢れかえるAIプラットフォーム」という問題は、多くのAI関係者が同意する内容だろう。私も全く同感である。この問題が今後どのように解決されていくのか歴史に学んで予想してみよう。
私は、こうしたAI技術の現状は黎明期(1980年代から90年代ごろ)のパソコンの状況に似ているなと思う。
当時は各メーカーからそれぞれ異なる仕様のパソコンが販売されていた。プログラミング言語もAPIセットもそれぞれに異なるものだった。同じメーカーの製品間にもソフトウェアの互換性がないのが普通だった。今では信じられないが、それら多種多様なパソコンが何十種類もあったのだ。
その後(日本では、NECのPC-9801シリーズ+MS-DOSが主流の時代を経て)ウィンテル=「WindowsをインテルCPUのパソコンで動かす」という形でほぼ統一され、広く世界に普及して現在に至っている。
今や、ウィンテル機であればどのメーカーのパソコンを選んでもソフトウェアは共通という環境が至極当然のことになった。そして、一般のユーザがOSやハードウェアの技術的差異を気にすることもほぼ無くなった。
AIも、広く社会に浸透していくためには、こうしたパソコンの歴史と同じ流れをたどることになるのではないだろうか。ウィンテルのような統一化プラットフォームがAIにもおそらく必要だ。パソコンの場合と同様に、一般のユーザにとってはそのAIで「何ができるか」が問題なのであり、その裏で動作しているメカニズムについては「どうでもよい」からだ。
問題は、統一プラットフォームをいつ誰が完成させるかだ。
現在のAIブームが始まって約8年が経過した。GAFAMを頂点とする世界のITトップ企業もAIの覇者を目指して激しく研究開発競争を行っている。このままGAFAMの中からAIの覇者が登場するのだろうか?それはまだ誰にも分からないことだが、もう一つ面白い技術の歴史的法則がある。「ある時代の覇者が、次の時代の覇者になることが少ない」という法則である。
例えば、かつての Google がそうだった。Google 以前にもインターネット検索エンジンを発表しているIT大手企業は複数あったが、最終的には当時の新興企業であった Google が検索の覇者となった。
有名なクリステンセンの著書「イノベーションのジレンマ」でも述べられているように、こうした図式は歴史上何回も繰り返されている。守旧的な動きの大企業を、新興企業が「破壊的イノベーション」によって打ち破るというパターンだ。
C3.ai は、こうした破壊的イノベーターになる可能性を秘めている。「エンタープライズ向け」という切り口でターゲットを絞って取り組んでいるからである。新興企業として正攻法のランチェスター戦略である。
ライバル(?)のGAFAMのAI研究開発の問題点は、全方位的であることだと思う。膨大な研究開発資金を使って、自動運転・ロボット制御・医療向け・自然言語処理・ゲーム・映像制作・・・など、ありとあらゆる分野のAIに同時に投資を行っている。その結果、C3.ai が指摘するように、GAFAM(主にGAM)のクラウドプラットフォームは、エンタープライズAI向けとして見るとしっくり来ないものになっている。ここに C3.ai 社が付け入る隙がある。
5. さいごに
C3.ai のようなビジネスモデルが、GAFAM以外から登場したことはとても興味深い。さすがイノベーションの国アメリカである。2009年に設立された若い企業であるが、すでに優良な顧客を抱えて成長を続けている。
設立者でCEOの トーマス・M・シーべル氏( https://en.wikipedia.org/wiki/Thomas_Siebel )は単なるビジネスマンではなくIT技術に造詣が深い方のようだ。ウォールストリート・ジャーナルに幾度も寄稿し、DXに関するベストセラー書も数冊著している。人間性も評判の良い方らしい。
オーナー社長であること、技術を深く理解していることは、成功するIT企業経営者の重要な条件と言わている。その意味でトム・シーベル氏はDX時代・ソフトウェアファースト時代にふさわしい経営者であろう。
「考察」で書いたようにMDAという方法論に技術的な懸念を感じる面もあるが、この経営者なら上手く解決策を見出してくれるという期待も感じる。また、C3.ai 全体に感じる理想主義的でまじめなチャレンジ精神には好感が持てる。成長に期待しつつ今後も彼らの動向を見て、私たちも学んでいきたいと感じている。
ここまで読んでいただき、ありがとうございました!
プロフィール
著者:寺田英雄
株式会社オープンストリームCTO/技術創発推進室 室長/電気通信大学特別研究員
画像処理ソフトウェア開発歴30年以上。最近はディープラーニング応用の研究開発に取り組んでいる。
以前はC++プログラマーだったが、最近はもっぱら Python しか使わなくなった。でも、今でもネィティブコードの感触が好きである。
- テレワーク
- リリースノート
- リネージ管理
- knitfab
- OpeN.lab
- ChatGPT
- 画像生成
- 画像認識
- 書籍紹介
- 対話
- 自然言語処理
- Open Innovation
- アカデミック
- 活動報告
- ビジネス
- ガジェット
- オープンイノベーション
- TIPS
- 線型代数
- 数学
- Airflow
- 論文紹介
- MediaPipe
- 顔認識
- 可視化
- 異常検知
- プラモデル
- イノベーション
- 自動運転
- AI
- MLOps