AI開発内製化サービス
社内にAIエンジニアを育成するプランです。
御社のエンジニアと当社の開発講師が一緒にAIを開発してリリースまでを行います。一緒に開発しながら開発手法を学ぶことにより、3か月でAI開発ができるエンジニアの育成を目指します。
※対象エンジニア:エンジニア歴3年目以上を想定しています。
本サービスの位置づけ
これは段階的にサービスを完成させることを示した図です。
ポイントは、各段階において「動く製品を顧客に提供すること」です。
顧客の要望に沿うであろうシンプルなものを提供し、徐々に複雑なものを提供します。
本サービスの目的は「最初の一歩」を作ることです。
本サービスはAIの中での主力的な位置づけである「深層学習」を用いた開発を目指しています。
機械学習はシンプルな認識や分類に適した手法で、深層学習は複雑な認識や分類に適した手法です。
深層学習でできることは以下のようなことです。
本サービスの流れ
本サービスは、3か月間でサービスをリリースするまでを念頭に置いて開発を進めます。
本サービスと相性が良い企業
- 社内にエンジニアが在籍している(※ SE歴3年以上)
- DXを推進したいけど、エンジニアはAI開発が苦手
- 社内の貴重なデータをAIベンダに渡したくないと考えている
- 社内に面白い画像データがたくさんある。または、録画するとデータが撮れる
- お客様の意見要望などを保存している。または何らかの文章としてのテキストデータが大量にある
- これらのデータを使って、社内のエンジニアだけでAIサービスを作れるようになりたい
- AIを使ったサービスを安く実施していきたいと考えている
なぜ一緒に開発しながら学ぶ形式が良いのか
本サービスは、AIベンダとe-learningで起きるであろう問題を解消します。
AIベンダに外注する際の問題点
AIベンダに開発をお願いする際には、メリットとデメリットを把握しておきましょう。
■ラボ型開発の問題
AIベンダは主にラボ型開発方式でAIを開発します。
ラボ型開発とは、御社のデータをベンダ社内に持ち込み、AI開発を行う開発方式です。 発注者のもとに出向して開発すると、まず、環境を構築する必要がありますが、ラボ型開発の場合はベンダ社内に構築済みの環境を使うため、構築する手間が省けます。そのため、短期間でAIを開発できるメリットがあります。しかし、データを社外に持ち出すため、情報漏洩のリスクがどうしてもあります。また、自社のウリである貴重なデータはAIベンダとの共同開発により、AIベンダも使用することができ、希少性が薄れてしまいます。さらにAIベンダは作成したAI(学習済みモデル)をファインチューニングという手法で別方向に進化させることができます。発注側はデータを提供したにも関わらず、技術を持たないため進化させることはできません。また、日本の法律ではソフトウェア(この場合は学習済みモデル)の著作権は開発した側(AIベンダ)が持つため、発注側は大金をかけて依頼したにも関わらず、学習済みモデルを勝手に改造することはできません。さらに、学習済みモデルを追加で学習するときは同じような環境が必要になるため、仮に別のベンダに頼むと一から開発になる可能性もあります。
そのため、最初は共同でサービスを開発していると感じますが、次第にAIベンダの発言力が増していきます。
■契約の問題
AIの開発では準委任契約を結ぶことが多いです。準委任契約とは「期間を定めて何かを依頼し、その期間に作業をすること」を約束する契約です。これはAI開発の性質上、仕方がないことです。AI開発はシステム開発とは異なり、精度が出るか出ないかは開発してみないと分かりません。開発した結果、AIの精度が悪すぎてサービスとして展開できないということはよくあります。そこでベンダ側はもめ事を防ぐために準委任契約を結びます。仮にAIの精度が悪く、サービスが展開できなかったとしても働いた分の報酬は頂く契約です。
しかし、発注側は大金を支払ったにも関わらず、サービスも展開できず、技術的な蓄積もないとなると発注者の立場が問われかねません。
■追加学習の問題
では、常駐契約にしてみたらどうでしょう。 AIベンダの社員が御社の社内に常駐してAIを開発してくれます。御社のエンジニアは技術的なことを覚える必要がなく、スムーズにAIシステムが出来上がります。問題なくいきそうです。しかし、サービスには改修がつきものです。顧客獲得のための新しい取り組みや、AIのブラッシュアップ、ユーザビリティの強化など、お客様の要望に応えてユーザ数を増やしていかなくてはいけません。DX時代はこれまで以上に改修が求められる時代です。社内に技術力がないと、都度、AIベンダに改良(追加学習)を依頼することになります。追加学習のコストはこれまでのシステム開発とは違い、かなり割高です。依頼のたびに数百万円の出費になってしまいます。これではサービスの改良があまりできないのではないでしょか。 サービスをよりよく育て続けるには、米中のように社内のエンジニアが自ら育てていく内製化スタイルが一番適しています。
※追加学習が割高な理由
深層学習アルゴリズムで作られたAIの判別能力が高い理由は、複雑なパラメータを絶妙なバランスで最適化しているからです。追加で学習させる行為はこのバランスを崩しかねません。せっかく長い時間かけて最適化していた状態が追加学習で崩れてしまうのです。そのため、以前は正確に判別出来ていたものが判別できなくなることがあります。以前と同じ精度を保ちつつ、追加で学習したことの精度も上げることは難しいのです。
※追加学習が割高な理由
深層学習アルゴリズムで作られたAIの判別能力が高い理由は、複雑なパラメータを絶妙なバランスで最適化しているからです。追加で学習させる行為はこのバランスを崩しかねません。せっかく長い時間かけて最適化していた状態が追加学習で崩れてしまうのです。そのため、以前は正確に判別出来ていたものが判別できなくなることがあります。以前と同じ精度を保ちつつ、追加で学習したことの精度も上げることは難しいのです。
e-Learningの問題点
e-Learningは、動画を視聴しながらプログラミングを体験していく学びのスタイルです。
自分の空き時間に進められることが特徴です。
■環境との相性問題
e-LearningでAIを勉強するにあたっては手順に沿って環境を表示(構築手順は省略する工夫が施された動画が多いです)して、手順に従いモデルを学習します。e-Learningは個人レッスンではなく、不特定多数に向けたサービスなので当然です。その分、リーズナブルな価格で提供されており、様々なコースを受講して多くの学びを得ることができます。
ただ、AI開発を実務として行うときは、勉強したときと同じ環境とモデルではありません。サービスに適したモデルを選定してモデルに沿った環境を構築する必要がでてきます。実務で応用するには手順の意味・意図まで理解しておく必要があります。
また、e-Learningは点の学びです。現場では点と点を上手く繋げて線にするスキルが必要になってきます。 実務でe-Learningの学びを実践するのは難しいのです。
本サービス「AI内製化支援サービス」では、実務で開発を行います。サービスに適したモデルの調査&選定ロジックを学び、点と点をつなぐ考え方を学んでいきます。実務で使える学習スタイルが特徴です。
ただ、AI開発を実務として行うときは、勉強したときと同じ環境とモデルではありません。サービスに適したモデルを選定してモデルに沿った環境を構築する必要がでてきます。実務で応用するには手順の意味・意図まで理解しておく必要があります。
また、e-Learningは点の学びです。現場では点と点を上手く繋げて線にするスキルが必要になってきます。 実務でe-Learningの学びを実践するのは難しいのです。
本サービス「AI内製化支援サービス」では、実務で開発を行います。サービスに適したモデルの調査&選定ロジックを学び、点と点をつなぐ考え方を学んでいきます。実務で使える学習スタイルが特徴です。
■デバッグの問題
e-Learningでは、決まった手順でプログラミングします。手順通りであればエラーは発生しません。しかし、実際の開発現場では、プログラミングよりもエラーと悪戦苦闘する時間のほうが多いのが実情です。エラーを解消するデバッグ力が必要になります。
モデルのデバッグは難しいものです。他人が書いたコードであり、設計書はありません。設計思想を論文から読み解く必要があります。長年システム開発を続けていたエンジニアであってもコードを理解することは容易ではありません。コードを理解にするには、AIフレームワークの仕組みの他に、その分野の代表的なアルゴリズムの理解が必須です。また、基本的な画像処理の仕組み、自然言語処理の仕組みなどにも精通しておく必要があります。このあたりの知識は通常のシステム開発ではほぼ関わらない領域であるため、専門的に学ぶ必要があります。
本学習スタイルでは、モデルの仕組みを学び、コードと対比させながら学びを深めていきます。
■AI(学習済みモデル)完成後の問題
e-LearningでのAI開発は「学習済みモデル」を完成した時点で終わる動画もみうけられます。しかし、実際の現場ではそこから先にたくさんの工程があります。学習済みモデルの精度を確認したり、システムに組み込み、ユーザがアプローチできる状態にまで作り込む必要があります。
本学習スタイルでは、サービスをリリースするまでの流れを通して作りこむため、PDCAのループを回し続けることが可能になります。
本サービスの詳細