エンタープライズグレードの人工知能アプリケーションを開発するためのガイド

WBOY
リリース: 2023-11-13 14:29:01
転載
1394 人が閲覧しました

人工知能アプリケーション開発プロセスをさらに深く掘り下げたい場合は、まずこれらのプロジェクトが通常のアプリケーション開発プロジェクトとどのように異なるかを理解する必要があります。人工知能に関しては、たとえ企業がすでに同様のプロジェクトを開発しているとしても、あらゆる問題には独自の解決策が必要です。一方で、人工知能を構築するためのさまざまな事前トレーニングされたモデルと実証済みの方法があります。さらに、AI はさまざまなデータやビジネスケースに基づいているため、独特です。このため、AI エンジニアは通常、ビジネス ケースと利用可能なデータを詳しく調査し、既存の手法とモデルを調査することから作業を開始します。

エンタープライズグレードの人工知能アプリケーションを開発するためのガイド

これらの側面により、人工知能の作成はプロジェクトは、古典的なソフトウェア開発よりも科学研究に近いものです。ここでは、この現実を理解することが、組織がプロジェクトのプロセスと予算を実装する準備をするのにどのように役立つのか、そしてどのように役立つのかを見ていきます。

人工知能プロジェクトの分類

人工知能プロジェクトは 4 つのカテゴリに分類できます:

  • 単純なプロジェクト: 典型的な例には、公開データを適用することで達成できるものが含まれます。よく知られているテクノロジーを使用して実装されたセットと実稼働対応モデル。たとえば、ImageNet は、画像の分類を目的としたプロジェクトに適しています。
  • 評判の良いテクノロジー プロジェクト: このような場合、プロジェクトに必要な適切なテクノロジーはわかっていますが、データの収集と準備に懸命に取り組む必要があります。
  • 詳細な調査が必要な項目: 原則として、モデルがどのように機能するか、既存のデータを適用する方法、または特定のタスクを完了するためにモデルをトレーニングするためにどのような手順を実行する必要があるかを理解できます。モデルがどのように動作するかわからないため、経験のみに基づいて予測を行うことはできません。起動プロセスには追加のテストとケース処理が必要です。
  • 実稼働プロジェクトには追加の労力が必要です。この一連のケースのデータもモデルも実際には十分に試されていません。

人工知能プロジェクトはなぜこれほど予測不可能なのですか?

人工知能プロジェクトの開発環境は、テクノロジーとすぐに使えるソリューションで構成される 3 層のピラミッドとして視覚化できます。

上位層には、サードパーティのライブラリや実績のある企業ソリューションなど、人工知能の使用に適した既製の製品が含まれています。たとえば、小切手詐欺、顔認識、物体検出を検出するための Google のソリューションが好例です。

2 番目のレベルには、ビジネス上の課題の新しい領域の説明が含まれます。課題を解決するための適切なモデルはあるかもしれませんが、実装中にその有効性を証明するには、テクノロジーをわずかに変更または適応させる必要があります。モデルはその特定のユースケースに特化する必要があり、これが人工知能の使用における新しいニッチ市場の出現につながりました。

科学研究は下位レベルを構成します。モデルがどのような結果を示すかわからないため、科学研究は生産の準備ができていません。これは人工知能システムの深い側面ですが、この方向に向けて努力することは可能です。

AI アプリケーション開発と従来のアプリケーション

AI アプリケーションの開発と非 AI アプリケーションの開発には基本的な違いはなく、どちらも概念実証 (PoC) とデモンストレーション段階が必要です。ユーザー インターフェイス (UI)/ユーザー エクスペリエンス (UX) フェーズは、デモと AI コンポーネントの準備が整った後に始まります。 お客様のニーズとデータについて質問します。AI は製品のコアですか、それともアドオンですか?この質問に対する答えは、ソリューションの複雑さに影響します。

お客様は、最も正確で最新のソリューションを必要としない場合があります。したがって、AI コンポーネントの欠如が成熟した製品開発の妨げにならないか、AI コンポーネントなしで製品を作成することに意味があるかどうかを確認することが重要です。これで先に進むことができます。

最初、AI プロジェクトは 2 つのサブカテゴリに分類できます。

スクラッチから構築されたアプリケーション
  • 既存のアプリケーションに統合された人工知能コンポーネント
  • AI アプリケーションを最初から構築する

つまり、新しい AI 対応アプリケーションを最初から開発することにした場合。このため、AI アプリケーションを統合するためのインフラストラクチャがありません。ここで最も重要な疑問が生じます。AI 機能の開発は、ログイン/ログアウト、メッセージや写真の送受信などの通常のアプリ機能と同じように処理できますか?

一見すると、AI はユーザーに関する機能です。とやりとりされる。たとえば、AI を使用して、メッセージがスパムであるかどうかを検出したり、写真内の笑顔を識別したり、顔認識と音声認識を利用して AI ベースのログインを有効にしたりできます。ただし、AI ソリューションの開発はまだ歴史が浅く、研究に基づいています。これにより、特にビジネス目標のために革新的で複雑な AI ソリューションを考案する必要がある場合、アプリケーションの AI 機能がプロジェクト全体の中で最もリスクの高い部分であるという認識につながりました。

たとえば、ログイン/ログアウト画面、メッセージング システム、ビデオ通話機能を備えたチャット アプリケーションを構築したいとします。ビデオ通話機能はSnapchatと同様のフィルターをサポートする必要があります。以下は、アプリケーションのさまざまな機能の複雑さのリスク表と概要です。 開発プロセスを開始するタスクは不合理です。なぜ Snapchat のようなフィルターが最も危険なのかと疑問に思われるかもしれませんが、これが簡単な答えです: Snapchat のようなフィルターを作成するには、拡張現実 (AR) や深層学習などの多くの最先端のテクノロジーを使用する必要があります。これらを適切に組み合わせて、コンピューティング リソースの少ない携帯電話に配置します。これを行うには、多くの並外れたエンジニアリング タスクを解決する必要があります。

AI コンポーネントを既存のアプリケーションに統合する

AI 機能を既存のプロジェクトに統合することは、AI アプリケーションを最初から構築することとは少し異なります。まず、AI で拡張する必要がある既存のプロジェクトが、AI の機能を考慮したアーキテクチャを持たずに開発されることがよくあります。 AI 機能が一部のデータ パイプラインの一部であることを考慮すると、AI 機能の開発にはアプリケーション アーキテクチャへの少なくとも一部の変更が確実に必要になると結論付けています。人工知能の観点から、既存のアプリケーションは次のカテゴリに分類できます。

データベース ベースのプロジェクト:

テキスト処理

レコメンデーション システム
  • チャットボット
  • 時系列予測
  • 非データベースベースのプロジェクト:
画像/ビデオ処理

音声/サウンド処理
  • 人工知能アプリケーション開発の主な段階
  • 次に、典型的な人工知能アプリケーション開発プロセスの 5 つの段階を示します。 1 つ目は問題定義フェーズです。この段階で、開発チームはアプリケーションの目標と解決したい問題を明確にする必要があります。彼らは顧客または関連する利害関係者と話し合いを行って、ニーズと期待を決定します。 次に、データの収集と準備のフェーズが始まります。この段階で、チームは人工知能アルゴリズムのトレーニングと最適化に使用される大量のデータを収集します。データの品質と多様性は、アプリケーションのパフォーマンスにとって重要です。 第 3 段階はモデルの選択とトレーニングです。この段階で、チームは適切な AI モデルを選択し、以前に収集したデータを使用してトレーニングします。トレーニングの目標は、モデルがさまざまな状況を正確に予測して処理できるようにすることです。 次に、モデルのテストと評価のフェーズが始まります。この段階で、チームはトレーニングされたモデルをテストして、さまざまな状況でのパフォーマンスを確認します。彼らはテスト データ セットを使用してモデルの精度とパフォーマンスを評価します。 最後に、展開とメンテナンスのフェーズが始まります。この段階で、チームはトレーニングされたモデルを実際のアプリケーション環境にデプロイし、モデルのパフォーマンスの監視と維持を継続します。変化するニーズやデータに対応するために、変更や更新が必要になる場合があります。 これらのフェーズの順序は異なる場合があり、具体的な開発プロセスはプロジェクトごとに異なります。ただし、これらの段階では、典型的な人工知能アプリケーション開発プロセスの概要を示します

1. ビジネス分析

最初の段階では、顧客の意見やビジョンを取得します。一般的な考え方の概要を記載した文書。ここからビジネス分析プロセスを開始します。入力を準備するには、ビジネス上の問題を考慮する必要があります。企業はビジネス上の問題を使用してアプリケーション開発会社を解決します。アプリケーション開発会社の仕事は、ビジネスと人工知能の機能の交差点を見つけることです。

レストランや食料品チェーン店などのシナリオでは、事業主は食品廃棄物を削減し、購買と販売を分析することでバランスを達成することに強い関心を示しています。人工知能エンジニアにとって、このタスクは時系列予測または関係分析タスクに変換され、そのソリューションは人々が特定の数値を予測するのに役立ちます

2. 機械学習の問題の特定

次 次の段階では、議論して解決する必要がある機械学習 (ML) の問題を特定する必要があります。このステップでは、コンピューター ビジョン、自然言語処理、音声認識、予測および生成人工知能などの人工知能サブフィールドの技術的能力を考慮する必要があります。

3. データ収集

データは機械です 学習のための燃料は、人工知能アプリケーションの開発における重要なステップです。データには、特定データと一般データの 2 つの主なタイプがあります。一般的なデータはオープンソースのデータウェブサイトから入手できるので、対象者を絞り込み、特定の地域、性別、年齢などの重要な要素に焦点を当てるだけで済みます。大量の共通データによりプロセスを合理化できます。

したがって、お客様がフィットネス トラッカー アクティビティに基づいたアプリをお持ちの場合、データを適用して学習を転移し、できるだけ早く実装を開始できます。同じことが、大規模なコレクションから開始できる画像分類にも当てはまります。

書き直す必要がある内容は次のとおりです: (1) 新しいプロジェクト用の AIPoC の開発

新しい人工知能プロジェクトの概念実証 (PoC) フェーズは AI 中心である必要があります。これは何を意味するのでしょうか? リスク最小化戦略を満たすには、プロジェクトの最もリスクの高い部分である AI 機能から開始する必要があり、可能であればプロジェクトの他の機能には触れないでください。概念実証 (PoC) フェーズは、適切な結果を得るために複数回繰り返すことができます。満足のいく結果が得られたら、自由に MVP/産業化フェーズに移行して、アプリケーションの残りのすべての機能を開発できます。

(2) 既存プロジェクト向け AIPoC の開発

エンド ユーザーが人工知能機能を使用するには、まず機能を開発し、次に既存のアプリケーションと統合する必要があります。言い換えれば、アプリケーションのコード ベース、アーキテクチャ、インフラストラクチャを考慮する必要があります。

次のように書き換えます。 人工知能の最も魅力的な点は、主要なアプリケーションに触れずに研究、開発、テストできることです。これにより、メインのアプリケーションを危険にさらさずに人工知能の概念実証 (PoC) を開始できるというアイデアが生まれました。これは実際にはリスク最小化戦略の中核です。

従うべき 3 つの手順は次のとおりです。

(1) 次の方法で既存のアプリケーションからデータを収集します。

  • Makeデータベース ダンプ
  • 画像/ビデオ/オーディオ サンプルを収集します
  • 収集したデータにタグを付けるか、オープン ソース ライブラリから関連データセットを取得します

分離された AI 環境を構築する前に、次のことを行ってください。最初にデータを収集します

  • トレーニング
  • テスト
  • 分析

(3) 導入トレーニング 成功する AI コンポーネント:

  • 現在のアプリケーション アーキテクチャに備えるための変更
  • 新しい AI 機能のためのコードベースの適応

プロジェクト タイプに応じて、コード ベースの調整により次の結果が得られる場合があります:

  • 人工知能モジュールによるデータベース スキーマへのアクセスを簡素化および高速化するためのデータベース スキーマの変更
  • ##ビデオ/オーディオ処理マイクロサービス トポロジの変更
  • モバイル アプリの最小システム要件の変更
4.PoC フェーズの見積もり

ビジネス オーナーは、概念実証 (PoC) フェーズを進めるときにソフトウェア ベンダーによく質問します。必要となる可能性のある予算、スケジュール、作業負荷についてです。前述したように、AI プロジェクトは通常の開発プロセスと比較して非常に予測不可能です。これは、タスクの種類、データセット、手法、手法がすべて非常に多様であるためです。これらすべての要因が、仮説プロジェクトの見積もりがかなり難しい作業である理由を説明しています。それにもかかわらず、プロジェクトの複雑さに基づいて、上記の AI プロジェクトの 1 つの可能な分類を示します

5. 新しいイテレーションまたはプロダクション

最初の概念実証 (PoC) の後、次のステップ新しいラウンドの概念実証 (PoC) や、さらなる改善や展開が可能です。新しい概念実証 (PoC) を作成するということは、データの追加、ケースへの取り組み、エラー分析の実行などを意味します。反復回数は条件付きであり、特定のプロジェクトによって異なります。

人工知能プロジェクトはリスクに直接関係します。アルゴリズムや実装のリスクだけでなく、データの適合性から生じるリスクも存在する可能性があります。リスクを軽減するには、AI コンポーネントの精度がビジネス目標と期待を満たした場合にのみ製品開発を開始することが賢明です。

以上がエンタープライズグレードの人工知能アプリケーションを開発するためのガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
AI
ソース:51cto.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート