サービス紹介

株式会社Accel Brain(アクセルブレイン)は、「AI開発」と「AI人材開発」を専門としたコンサルティング、技術顧問、社外CTOを展開しているラボです。

特に、「実学」志向の「AI開発」を通じて、「独立自尊」の「AI人材」を育成することを、事業コンセプトとして重視しています。

本ラボでは、単に機械学習詳解で解説しているような機械学習や統計学の理論や方法を詳解するだけではなく、お客様のニーズを明確化させるための「概念実証(proof of concept: PoC)」や、お客様のニーズに合わせてカスタマイズできる独自の機械学習ライブラリのソフトウェア・アーキテクチャ設計、Pythonコードの実装、性能の比較検証などを代行致します。

本ラボの実力を最も忠実に表しているのは、恐らく本ラボがオープンソースとして公開しているソースコードでしょう。GitHubのリポジトリ:accel-brain/accel-brain-codeには、本ラボで開発した自己符号化器(Auto-Encoder)、敵対的生成ネットワーク(Generative Adversarial Networks: GAN)、深層強化学習(Deep Reinforcement Learning)など、様々なアルゴリズムが実装されています。

また、本ラボは「AI人材」の育成も重視しています。単にAI関係のシステム開発を受注するだけではなく、本ラボのメンバーがお客様の現場に常駐して、お客様と共に「研究開発(Research and Development: R&D)」を実施していくことで、「AI人材」の実学で取り上げているようなプロトタイプ制作やサービス化・商用化のためのノウハウを皆様に伝授致します。

問題設定:費用の見積もり方がわからない

如何に「AI」と言っても、ビジネスとして取り組む以上、初期費用はなるべく抑えたいところです。しかしAIの場合、どのような観点から見積もり、技術選定していけば良いのかわからないというご相談を受けます。

確かに、「AI開発」には通常のソフトウェアの制作とは異なる論理が介在しています。機械学習のアーキテクチャ設計やアルゴリズム設計、モデリング、実装の経験が無ければ、正確な見積もりは難しいでしょう。

「AI開発」の技術選定もまた、専門知識が要求される試みです。例えばGPUサーバを選定する場合であっても、スペックが高ければ高いほど良いという訳ではありません。実際これは、「AI開発」の専門家の技術力や知識をはじめとした「実力」に依存して決まる変数でもあります。

人によっては、メモリが16~32GBのGPUサーバで無ければ動作させることのできないタスクであっても、弊社のメンバーが設計から実装まで見直せば、8GBのメモリで済んだという事例もございます。恐ろしいことに、「AI開発」のコストは1/2にもなれば1/4にもなり得るということです。

「AI開発」を発注する場合にせよ、「AI人材」の雇用を強化する場合にせよ、あるいは「AI」に関わるスタートアップ企業に「出資」する場合にせよ、こうした技術選定の背景知識をおさえておかなければ、貴社は「AI」の投資対効果の面で不利な立場に立たされることになります。巷の「AI開発」を担っている研究開発者たちやデータサイエンティストたちは、貴社に必ずしもこうした背景知識を教えてくれるとは限りません。

確かに、「AIの民主化」という発想が普及して久しいです。機械学習ライブラリやその他のフレームワークを利用すれば、誰でも一定程度は「AI開発」を実践できる「AI人材」になり得ます。しかし、「AI開発」と関わるのは、「民主主義的な」概念だけではありません。「AIの民主化」の先にあるのは、「資本主義的な」競争という冷徹な現実です。

問題解決策:「技術顧問」のデザイン

AIの民主化」により、誰でも一定程度は「AI開発」を実践できる「AI人材」になり得るようになった今、備えるべきなのは、より多くのプレイヤーが市場に参入してくる中でも生存できる「資本主義的な」競争力です。

この展望から株式会社Accel Brainは、貴社のCTO、PL、PMと連携し、ビジネスのソリューションとして機能する機械学習にフォーカスした見積もりと技術選定をお手伝い致します。

例えば、本ラボのメンバーが月に4~5回、2~3時間ほどのミーティングに参加することによって、貴社のビジネス上の課題とその目的達成に必要となる「AI」の費用や技術を代わりに見積もるか、もしくは見積もるために必要となる背景知識や情報を共有致します。

問題設定:モデルが思うように動作しない

高い費用をかけて内製・外注した機械学習モデルが、ビジネスのソリューションとして機能しないという問題は、「AI」という概念が大衆化されて以来、スタートアップ企業、中小ベンチャー企業、そして大企業が共通して直面し続けている問題です。

中長期の研究開発を通じて出来上がった「AI」が、ビジネスの何の役に立つのかわからないといった悲しい状況も発生しているようです。あるいは、納品された直後までは順調に機能している「AI」でも、その既存モデルを「横展開」した途端に精度が落ちてしまったといったご相談も頻繁に受けます。

問題解決策:「AI開発」のデザイン

本ラボでは、単に機械学習や統計学の理論や方法を詳解するだけではなく、お客様のニーズを明確化させるための「概念実証(proof of concept: PoC)」や、お客様のニーズに合わせてカスタマイズできる独自の機械学習ライブラリのソフトウェア・アーキテクチャ設計、Pythonコードの実装、性能の比較検証などを代行致します。

これまでラボのメンバーは、例えば以下のような事業ドメインを対象に機械学習や統計的機械学習のモデルやアルゴリズムを設計し、実装してきました。

  • インターネット広告の配信アルゴリズム
  • ECサイトのユーザーと商品のマッチングによるレコメンデーション
  • ソーシャルゲームの不正ユーザー検知
  • 株価変動率(volatility)の推論
  • 複数の自動車を対象とした走行経路の最適化
  • 工場の作業者を対象とした画像認識、動画認識に基づく製造行動の分類、および故障検知

いずれも、お客様のニーズを明確化させるための「概念実証(proof of concept: PoC)」のプロトタイプ開発から始まり、徐々にお客様のニーズを明確化していくお手伝いを経て、ソフトウェア・アーキテクチャの設計、実装、検証までの「研究開発」をサポートしてきました。

上記の事業ドメイン以外でも、例えば次のような問題を抱えているお客様に対しては、専門的な知見からサポート致します。

ありがちな問題(1):分類モデルを作りたくても、データが少ない

データが足りないという問題は、「AI開発」に取り組もうとするどの企業も直面している問題です。仮にデータを集められる状況にあるとしても、必要十分なデータ量を集めること自体が負担になる場合も多いでしょう。

特に分類モデルの場合は、各データに教師データとなる「ラベル」を付けなければなりません。その場合、人間のコストが発生します。

いわゆる「教師あり学習(supervised learning)」を敢行する場合、こうしたコストの問題は避けられません。

そこで本ラボでは、「半教師あり学習(semi-supervised learning)」や「教師なしドメイン適応法(unsupervised domain adaptation)」などのような理論を採用することで、ラベル付きサンプルが少ない状況でも機能する分類モデルのプロトタイプを提供致します。これにより、「AI開発」導入のコスト削減策を展開し、お客様の負担を軽減するようサポート致します。

ありがちな問題(2):他社に納品して貰ったモデルが、ある日突然動かなくなった

機械学習のモデルを他のシステム開発会社から納品して貰う場合、その品質を検収しなければなりません。しかし、そのためには機械学習の理論や統計学の方法についての理解が必要になります。

納品して貰った直後は十分に機能しているように視えていても、数週間後には性能が著しく劣化してしまうといったケースもございます。モデルそのものの「汎化性能」が不十分である場合や、モデルに入力されるデータの分布が変わってしまう「概念漂流(concept drift)」という問題が生じるためです。

そこで本ラボでは、お客様が他社から機械学習モデルを納品された際に、品質の研修をお手伝い致します。言わば「セカンドオピニオン」として、納品されたモデルのレビューやチェックを行います。

場合によっては、別途本ラボで改修や代替品のプロトタイピングを実施することもできます。また、貴社で中長期的に運用するご予定の機械学習モデルに関しては、数か月おきにモデルの定期メンテナンス、言うなれば「AIの定期健診」も行います。

ありがちな問題(3):そもそも何のモデルが必要なのかがわからない

「そもそも何のモデルが必要なのか」を機能要求水準で明確化できるというのは、AI開発を担うプロジェクトマネージャーにとっては理想的な状態かもしれません。しかし、そのようなマネージャーは、実際は少数派です。

本ラボでは、お客様のニーズに対応した研究開発のみならず、お客様のニーズを明確化させるための「概念実証(proof of concept: PoC)」にも注力します。短いPDCAサイクルでプロトタイプを反復的に制作していき、各モデルの機能に対するお客様のイメージが明快になるよう支援致します。

問題設定:社内に「AI人材」が定着しない

日本経済新聞によれば、日本企業の研究開発費は19年度まで10年連続で増加する見通しでしたが、アメリカや中国などの企業では、より積極的に投資が為されています。AI開発を巡る国際的な競争力や生産性の工場を目指す上で、日本企業が抱える問題は多いと言えます。

「課題の克服に向けてAI人材をどう確保していくかを尋ねたところ、69.8%の企業が『社内の人材の再教育』と回答した。(略)自社の事業に精通しながら、AIの知識も併せ持つ即戦力を育てたいという考えがあるとみられる。」
AI活用『人材不足』7割超 導入拡大も世界に後れ R&Dで切り拓け(4)」日本経済新聞社、公開日時:2019/9/28 2:00(最終閲覧日:2019年12月4日)より。

アメリカがITの活用で生産性を高めた背景にあるのは、人材や組織への手厚い投資があったことが知られています。この関連から上記の記事では、AIの力を引き出す上では、「体制の整備」が急務であると分析されています。

しかし、データと予算の余裕を持つ大企業ほど、動きが鈍く、「体制の整備」は遅いはずです。社内に実績や事例が無い企業ならば、尚更「体制の整備」は遅くなる恐れもあるでしょう。そのため、「体制の整備」が進んでいない企業では、「体制の整備」が進んでいない境遇でも、実績と事例をゼロから創り上げられる「AI人材」が必要となります。

問題解決策:「AI人材開発」のデザイン

本ラボは、大手IT企業への人材紹介の商流を持つ人材紹介会社と提携し、「AI人材」へのキャリアアップを目指しているお客様を対象に、概念実証のプロトタイプ制作やサービス化・商用化を通じたOn-the-Job Training形式でのコーチングやメンタリングも実施しています。

「R&DのAI人材」

一般的に研究開発は「研究(Research)」と「開発(Development)」で構成されています。研究開発を試みている多くの機関は、この「研究」と「開発」を専門分野として区別することで、それぞれの専門家を配置しています。例えば「研究」の側にはリサーチャーやデータサイエンティストをはじめとした専門家が、「開発」の側にはソフトウェア・アーキテクトやエンジニアのような専門家が、それぞれアサインされているのです。

しかし本ラボは、「研究」と「開発」の区別よりも、「研究開発(Research and Development: R&D)」そのものを重視しています。「R&D」そのものを重視する観点は、文字通り「R and D」を「R or D」から区別することで、明快となるでしょう。

R&D」とは、「R or D」ではなく、文字通り「R and D」です。本ラボが重要と考える「AI人材」は、まさにこの「R and D」の「AI人材」です。「R&DのAI人材」とはResearchとDevelopmentの双方を実践できる「AI人材」を意味します。

勿論、「R」と「D」とでは、それぞれ求められる実力が異なります。少々専門用語が増えてしまいますが、幾つか例示してみましょう。

「R」の例
  • 機械学習、統計的機械学習、ベイズ統計、ニューラルネットワーク最適化問題などの理論や方法に関するレビュー論文やサーベイ論文、もしくは新アルゴリズムや新モデルの提唱論文を読み込み、現行プロジェクトの機能要求やユースケースを満たし得る複数のアルゴリズムやモデルを選定し、それらの機能(メリット、利点)や逆機能(デメリット、リスク)を比較する。
  • プロジェクトの目的から、アルゴリズム設計やモデリング(誤差関数設計など)の問題設定へと落とし込む。
  • 統計的な方法に基づいて、選定した問題解決策の候補の精度・性能を定量的に比較する。
  • 複数の問題解決策の中から特定の問題解決策を選択した場合に伴う派生問題(リスクなど)を上記の定量的な比較の結果や論理的な推論によって発見する。
「D」の例
  • アジャイル型の開発プロセスや、「ユースケース駆動型開発」とソフトウェアの「アーキテクチャ中心設計」を合流させたIBM由来のRational Unified Processに適応した、短いリードタイムで、小刻みにPDCAサイクルを回す。
  • TensorFlowやmxnetやPyTorchなどのような機械学習ライブラリを前提に、モデルを実装する。
  • まだ誰もコーディングしておらず、「コピペ」で開発することのできない最先端(state-of-the-art)なモデルであっても、必要に応じてゼロから実装する。
  • 機械学習ライブラリを利用するだけではなく、そのコントリビューターの制作物として遜色無い品質のソフトウェアを開発する。
    • あるいはゼロから「mxnetベースの機械学習ライブラリ」、「TensorFlowベースの機械学習ライブラリ」、「PyTorchベースの機械学習ライブラリ」を制作する程度の品質で開発する。

何故「R or D」ではなく「R and D」なのか

上述した通り、「R」にせよ「D」にせよ、実施する内容の複合性は高いと言えます。

窮屈なスケジュールと限られたリソースの中で機械学習モデルを納品するためには、役割分担や分業は不可欠です。しかし、「R or DのAI人材」同士で役割を分担した場合と、「R and DのAI人材」同士で役割を分担した場合とでは、生産性は大きく異なるはずです。

プロジェクトマネジメントの観点から観れば、「RしかできないAI人材」と「DしかできないAI人材」がチームを組む場合、双方の間には緊密な相互依存関係が生じます。「RしかできないAI人材」は、Developmentを実践できるメンバーに依存しなければ、例えばプロトタイピングすら儘ならない状況が続いてしまいます。一方で「DしかできないAI人材」は、例えばResearch内容を詳解してくれるメンバーに依存しなければ、モデルのパラメタチューニングに躓いてしまうでしょう。

これに対して、「R and DのAI人材」同士でチームを組む場合、このような緊密な相互依存関係を回避することが可能になります。各メンバーは独立して動ける領分が広いために、双方の依存関係は「疎結合」で済ませることができます。

本ラボが「R or D」ではなく「R and D」を重視するのは、ただ単に合理性と効率性のためです。

学術論文の読み込みからソフトウェアのアーキテクチャ設計まで

本ラボが実施する「AI人材開発」で最も優先して重視しているのは、学術論文の読み込みからソフトウェアのアーキテクチャ設計までの結び付きです。

機械学習の研究開発を実施していく上で、学術論文の読み込みは必要不可欠です。何故なら、TensorFlow、MxNet、PyTorchなどのような既存の機械学習ライブラリで配布されているモデルやアルゴリズムだけでは、お客様の個別具体的で多種多様なニーズに対応できるとは限らないためです。

場合によっては、まだ誰も機械学習ライブラリとしては実装していないモデルやアルゴリズムを活用しなければ、お客様のニーズに応じられない可能性もあるでしょう。

こうした新しいモデルやアルゴリズムを実装するには、まず学術論文を読み込むことが必要になります。尤も、ただ読むだけでは意味がありません。その論文の内容をソフトウェアのアーキテクチャ設計へと落とし込まなければ、プロトタイプの制作も、商用化のための実装も、進めることができなくなるためです。

しかも、サービス化・商用化を見据えるなら、窮屈なスケジュールの中で論文を読破し、素早くソフトウェアのアーキテクチャ設計に着手しなければなりません。ただ論文が読めるだけでは不十分なのです。

そこで本ラボでは、機械学習の学術論文のリーディング・スキルとソフトウェアのアーキテクチャ設計をセットとしたノウハウを共有していきます。

実績紹介

2017年9月から現在まで

弊社代表が個人事業主時代の2017年9月から2019年11月までの間に携わったソニー株式会社のIoT事業で、「AI開発」代行を継続して実施しています。ソニーのIoT技術によって得られるセンシングデータを対象に、異常検知や動画認識のモデルについて、概念実証から研究開発のサービス化までサポートしております。