に投稿

教師データの作成~再学習

AI導入のサブプロセスの中間に位置する、「❹教師データの作成」では、アノテーションと呼ばれる、手入力で「タグ付け」作業を行ないます。ディープラーニングの場合にはそれこそ1万枚とか2万枚など、かなりの枚数が必要です。そうすると、教師データの作成のための人集め(海外含む)も必要ですし、作業を効率化するためのツールがないと大変厳しいことになります。PaaS(Platform as a Service)を導入しようとする企業の場合、社内で手入力でタグ付けをしようとして行き詰まったり、諦めたりするケースもあります。アノテーションのアシストツールを開発しているAI企業もありますので、誰が入力するのか(別に入力部隊がいるのか)、外注するときはその予算を取ってあるか、アシストツールはあるのか。その辺のことはAI企業を選択するときの判断材料の一つになりますので、きちんと確認しておいたほうがよいでしょう。そうでないと、高給取りのエンジニアがカチカチと一人でタグ付け作業をすることになります。また、アノテーションの精度も重要です。アノテーションを頼りにモデルを学習させることになるためアノテーションが正しくないとモデルの精度は高くなりません。アノテーションはAIの自動化イメージとはほど遠いアナログの人海戦術の世界です。しかし、越えなければならないプロセスでもあります。次に、「❺モデルの設計」ですが、ここはかなり専門的な人材を必要とします。「こういうケースなら、4層か5層のニューラルネットワークを使えばいい」とか、「もっと複雑なものを使うほうがいい」と判断できるような人材がいない限り、イチからモデル設計をするのは、相当ハードな話になります。「❻学習」も同様です。GPUの環境の準備、仮想化、分散など、それぞれ技術的な話ですが、これらができるかどうか。どのモデルを使ってどういう結果が出てきたかということを、すべてバージョンごとに管理する必要があります。どのデータで試したとき、どうなったかが不明になると、データ量が多いだけにカオス状態に陥ります。次の「❼デプロイ」は、学習から推論に引き渡していくフェーズです。そういうと簡単そうですが、実は、環境の異なる本番環境に、学習のフェーズでつくったモデルだけを引き渡す作業は、技術的にかなり高度です。最終的に「❽推論していく場合には、冗長性やGPUリソースの担保の問題があります。また、クラウドでなくエッジ側(現場)で動かす場合には、どのようにしてエッジ側にそのシステムをもっていくのかという連係も課題です。「冗長性の担保」というのは、予備システムのことです。一つの推論システムだけで動かしていると、何らかの不具合で止まったときに困ります。最低限、二つの推論システムを同時に運用するということです。GPUのリソースも推論用に確保できていなければ問題です。エッジ側に推論システムを置く場合、常にクラウド側から運用状況を監視しておく必要があります。検査などの推論システムが止まると、たとえば工場の製造ラインも止めざるを得ず、そうすると1時間で数億円の損失になる、といったケースも珍しくありません。それらをきちんと監視する必要があります。❾再学習のプロセスに関しても、環境の変化で精度が下がってしまうおそれがあるので、どのタイミングで再学習を行なうのか、この辺もむずかしい判断が求められます。ただ、再学習を行なう場合でも、パージョン管理が正しくできていないと❾再学習の方針を決めることができません。ですから、このパージョン管理は後の工程にも影響を及ぼす大事な作業です。