1. パドルライトとパドルスリム現在、ディープラーニングの分野には 2 つの派閥があります。1 つは、より高いパフォーマンスを追求するために強力で複雑なモデル ネットワークと実験方法を研究する学術派です。もう 1 つは、効率を目標として、ハードウェア プラットフォーム上でアルゴリズムをより安定的かつ効率的に実装することを目指す工学派です。複雑なモデルは確かにパフォーマンスが優れていますが、ストレージスペースとコンピューティングリソースの消費量が多いことが、さまざまなハードウェア プラットフォームに効果的に適用することが難しい重要な理由です。そのため、畳み込みニューラル ネットワークの深さとサイズが増大したことで、モバイル デバイスでのディープラーニングの展開に大きな課題が生じています。ディープラーニング モデルの圧縮と高速化は、学界と産業界の両方が注力する研究分野の 1 つになっています。 1. クライアント側推論エンジンの背景ディープラーニングの急速な発展、特に小規模ネットワークモデルの継続的な成熟により、もともとクラウドに適用されていたディープラーニング推論が、携帯電話、時計、カメラ、センサー、スピーカーなどの端末上で実行できるようになり、エンドインテリジェンスが実現しました。さらに、ディープラーニングコンピューティングに使用できるハードウェアも、Intel、Nvidia、ARM、Mali、Cambrianなど、爆発的に増加しています。サーバー側インテリジェンスと比較して、エンド側インテリジェンスには、低レイテンシ、リソース節約、データプライバシー保護などの利点があります。 AI写真撮影や視覚効果などのシナリオで広く使用されています。 ただし、ディープラーニング推論シナリオでは、多様なプラットフォームとさまざまなチップにより、推論ライブラリの機能に対する要求が高くなります。エッジサイド モデルの推論は、多くの場合、計算能力とメモリの制限に直面します。ますます多様化するハードウェア プラットフォームと複雑なエッジサイドの使用条件が相まって、エッジサイド推論エンジンのアーキテクチャ機能は非常に困難になっています。エンドサイド推論エンジンは、エンドサイドインテリジェントアプリケーションのコアモジュールです。限られた計算能力とメモリの制約下で、リソースを効率的に活用し、推論を迅速に完了する必要があります。そのため、PaddlePaddle は、さまざまなビジネス アルゴリズム シナリオ、さまざまなトレーニング フレームワーク、さまざまな展開環境向けに、シンプルで効率的かつ安全なエッジ推論エンジンを提供したいと考えています。 2. パドルライトの特徴幅広いハードウェア アーキテクチャを完全にサポートし、これらのハードウェアに基づくさまざまな AI アプリケーションのパフォーマンス最適化を実現するために、PaddlePaddle はエッジ側推論エンジン Paddle Lite を提供します。これまで、Paddle Lite は、検索広告、Baidu Mobile、Baidu Maps、Kuaishou など、多くの重要なビジネスで広く使用されてきました。 Paddle Lite には次の製品機能があります。 1) モバイルおよび組み込みデバイス用のモデル展開ツール。MobileNetV1、YoloV3、UNet、SqueezeNet などの主流モデルを含む、PaddlePaddle、TensorFlow、Caffe、ONNX などの複数のプラットフォーム向けの主流モデル形式を展開するために使用できます。 2) 複数の言語での API インターフェース: C++/Java/Python、さまざまなビジネス プログラムに簡単に組み込むことができます。 3) 豊富なエンドサイドモデル: resnet、effcientnet、shufflenet、mobilenet、unet、facedetection、unet、ocr_attention など。 4) さまざまなモバイルおよび組み込みチップをサポートします: ARM CPU、Mali GPU、Adreno GPU、Ascend & Kirin NPU、MTK NeuroPilot、RK NPU、Cambrian NPU、X86 CPU、NVIDIA GPU、FPGA、その他のハードウェア プラットフォーム。 5) Lite 自体が提供するパフォーマンス最適化戦略に加えて、PaddleSlim を組み合わせてモデルを圧縮および量子化し、パフォーマンスを向上させることもできます。 3. 建築設計アーキテクチャ図は上図のとおりです。Paddle-Lite アーキテクチャは、マルチハードウェアと高性能サポートに重点を置いています。主な設計思想は次のとおりです。 1) 複数のハードウェア、量子化方法、およびデータ レイアウトのハイブリッド スケジューリング機能を強化するために、タイプ システムを導入します。 2) ハードウェアの詳細は分離されています。さまざまなコンパイル スイッチを通じて、サポートされているハードウェアを自由に接続および取り外しできます。 3) 実行環境での最適化サポートを強化するために、MIR(Machine IR)の概念を導入します。 4) グラフ最適化モジュールと実行エンジンは適切に分離・分割されており、予測実行フェーズの軽量化と高効率化が保証されます。 2. AIOpsについて考える1. 背景AIOps は、もともとアルゴリズム IT 運用として定義されており、運用と保守のアルゴリズムを使用して運用と保守を自動化し、最終的には無人運用と保守に移行します。技術が成熟するにつれて、人工知能を運用保守の分野に適用する「IT運用のための人工知能 - インテリジェント運用保守」として徐々に認識されるようになりました。既存の運用保守データ(ログ、監視情報、アプリケーション情報など)に基づいて、機械学習を使用して、自動運用保守では解決できない問題をさらに解決します。 当初は、運用・保守作業のほとんどを運用・保守担当者が手作業で行っていましたが、インターネットビジネスの急速な拡大と人件費の高騰の時代には、手作業による運用・保守を維持することは困難でした。そこで、自動化された運用と保守が生まれました。これは、自動的にトリガーできるスクリプトと事前定義されたルールを通じて、主に一般的な反復的な運用と保守タスクを実行し、人件費を削減し、運用と保守の効率を向上させます。一般的に、自動化された運用と保守は、業界のドメイン知識と運用と保守のシナリオのドメイン知識に基づいたエキスパート システムと考えることができます。インターネットビジネス全体の急速な拡大とサービスタイプの複雑化・多様化に伴い、「人間が定めたルールに基づく」エキスパートシステムでは徐々に対応できなくなり、自動化された運用・保守の欠点がますます顕著になってきました。 DevOpsの登場により、上記の問題は部分的に解決されました。DevOpsは価値提供のグローバルな視点を重視していますが、DevOpsは水平統合と接続をより重視しています。AIOpsは、運用と保守(技術運用)側でのDevOpsの高度な実装です。この2つは矛盾していません。 AIOps は、手動で指定されたルールに依存せず、大量の運用保守データ (イベント自体や運用保守担当者による手動処理ログを含む) から機械学習アルゴリズムが自動的に学習し、ルールを継続的に改良して要約することを提唱しています。 AIOps は、自動化された運用と保守に基づいて、機械学習に基づく頭脳を追加し、監視システムに指示して、頭脳が決定を下すために必要なデータを収集し、分析と決定を行い、自動化されたスクリプトに指示して頭脳の決定を実行させることで、運用と保守システムの全体的な目標を達成します。 次の図は、Baidu の運用と保守の開発履歴を示しています。 2014年から、初期の業界知識と運用・保守の専門家の経験からAIOpsへと進化し、その後、人工知能アルゴリズムが追加されました。データ構築とインテリジェント監視シナリオから始まり、徐々にインテリジェント障害管理、変更管理、容量管理、サービスコンサルティングをカバーしてきました。 要約すると、自動化された運用と保守のレベルは、AIOps の重要な基礎です。AIOps は、自動化された運用と保守に基づいて AI と運用と保守を組み合わせます。このプロセスには、次の 3 つの側面の知識が必要です。 1) 業界や業務分野に関する知識、業務特性に関する知識と経験の蓄積、生産実務で遭遇する困難に対する精通。 2) 指標監視、異常検出、障害発見、障害予防、コスト最適化、容量計画、パフォーマンスチューニングなどの運用および保守ドメインの知識。 3) アルゴリズムと機械学習の知識、実際の問題をアルゴリズムの問題に変換する。一般的に使用されるアルゴリズムには、クラスタリング、決定木、畳み込みニューラル ネットワークなどがあります。 Baidu の障害管理シナリオは図に示されており、主に障害の発見、障害の予防、障害の診断、インテリジェントな早期警告などが含まれます。 2. 障害検出運用と保守の黄金指標には、リクエスト数(流入状況)、成功率(流出状況)、応答時間(ユーザー応答エクスペリエンス)、システム容量(システム同時負荷)などがあります。予測の難しさは、休日などの不規則な状況に遭遇すると、ベースライン予測アルゴリズムが不正確になるという事実にあります。もう 1 つの難しさは構成にあります。マシンの需要は、ビジー時間とアイドル時間で大きく変化するため、リソースの無駄になりやすくなります。 2.1 ベースライン予測アルゴリズムベースライン予測アルゴリズムは、主にロバスト回帰と周期データのマルチモードマイニングを組み合わせたアルゴリズムを採用しています。ロバスト回帰アルゴリズムの考え方は、線形傾向がより小さなウィンドウ内で変化する、つまり局所的に線形であると仮定することです。マルチモード定期データのアイデアは、複数のベースラインモデルを使用して、さまざまな休日、春節、その他の特別な期間に一致させることです。 3. 障害の自己修復障害が発生したときの第一の原則は、原因を突き止めたり問題を解決したりすることではなく、損失を止めることです。まず損失を止めてから分析します。 従来の手動による障害停止には、応答が十分に速くない、決定が十分に正確でない、操作中にエラーが発生する可能性があるという 3 つの欠点があります。 AIOps における障害停止は、障害自己修復と呼ばれます。人工知能の停止の欠点と比較すると、24 時間いつでも迅速に対応し、グローバルに一貫した情報決定を行い、正確な操作を自動化できます。 障害の自己修復とストップロス方式のシナリオは次のとおりです。 4. トラブルシューティング下の図はシステムの動作フローチャートであり、この時点でノード G に障害が発生します。 人工的な障害検出は通常、2 つの方向から始まります。1 つは A 上の特定の障害とノード G の関係を見つけることであり、もう 1 つはノード G の異常の原因を追跡することです。これは手作業による過去の経験に大きく依存しており、原因を正確かつ迅速に特定することは容易ではありません。 AIOps のインテリジェントな障害診断方法は、次のようにゴールデンインジケーターを総合的に使用することです。 5. インテリジェントな早期警告非常に重要な運用および保守方法は、障害が発生する前に早期に警告を発し、実際の損失を削減することです。手動による早期警告方法は、通常、経験に基づいており、考慮される指標の範囲が狭く、しきい値の設定が困難なため、誤報や警報の見逃しが発生しやすくなります。 AIOps のインテリジェントな早期警告は、数万の指標をカバーし、人間の介入を必要とせずに機械学習を通じて対応するしきい値を自動的に学習します。インテリジェント早期警告を下の図に示します。 3. 快手推薦システムのDragonflyアーキテクチャからのインスピレーション1. 背景推奨システムを例にとると、オンライン推奨システムには通常、リコール、ソート、再配置の 3 つのモジュールが含まれます。リコールでは、ANN 検索と逆検索アルゴリズムを使用して、候補アイテムの数を数千万から 10 万程度に減らします。ソートでは、CTR や LTR などの指標を使用して、候補アイテムの数を 10 万から 1,000 程度に減らします。最後に、再ランキングでは、多様性の断片化、強制挿入、および混合ソート手法を使用して、候補アイテムの数を数千から 10 程度に減らします。 迅速に再利用するために、上図に示すように分離されたシステム アーキテクチャが採用されています。アルゴリズム担当者のコードとアーキテクチャ担当者のコードは絡み合っています。では、ビジネス コードとアーキテクチャ コードをどのように分離すればよいのでしょうか。デビッド・ウィーラー氏は、抽象化の層を追加することで、すべてのコンピューターの問題を解決できると述べました。 2. 実施方法Kuaishou のアーキテクチャの基本的な考え方は、DSL 言語 Dragonfly を構築することです。これにより、アルゴリズム担当者は、基盤となる実装に注意を払うことなく、Python のような方法で開発できます。アーキテクトは、基盤となるアーキテクチャを C++ で実装することに集中できます。下の図の右側は、アルゴリズム担当者が実装したアルゴリズムの例です。純粋な Python コードなので、実装しやすく、読みやすいです。 具体的な解決策は、下の図に示すように、アルゴリズムを演算子の粒度に細分化することです。すべての人工知能アルゴリズムは、さまざまな演算子を組み合わせて構築されます。アーキテクトはこれらの演算子の実装の開発を担当し、アルゴリズム担当者はカプセル化された演算子に基づいてそれらを使用します。したがって、アルゴリズム担当者は基礎となる実装には注意を払わず、上位レベルのロジックに集中し、DSL 言語を記述してから構成を送信します。一方、アーキテクチャ担当者は上位レベルのロジックには注意を払わず、基礎となる演算子の記述のみを担当します。 この改善を実施した後の最大の利点は、新しいシナリオへのアクセス コストが 7 人日から 1 人日に削減されたことです。演算子と言語の粒度を分離するというこの考え方から学ぶことができます。アルゴリズムを開発しているとき、多くのコードが絡み合っていて抽出できず、多くの繰り返し作業が発生します。これらのアルゴリズムを段階的に非常に小さな演算子の粒度に分割すると、簡単に分離できるため、アルゴリズム担当者は演算子を任意に組み合わせてつなぎ合わせて、ビジネス アルゴリズムを実装できます。 参考文献: [1] パドルライトエンドツーエンドデプロイメント、Wu Jianming著 https://www.cnblogs.com/wujianming-110117/p/14398502.html [2] パドルライト https://paddlepaddle.github.io/Paddle-Lite/v2.2.0/architecture/ [3] 「AIOpsの実践と障害管理シナリオの探究」著者:チェン・ユン https://ppt.infoq.cn/slide/show?cid=83&pid=3355 [4] 「Dragonfly Kuaishouのユニバーサル戦略DSLのレコメンデーションシステムアーキテクチャへの応用と進化」Fang Jianbing著 https://ppt.infoq.cn/slide/show?cid=83&pid=3295 [5] ヤン・チュンウェイ著「BaiduのPaddle Lite軽量推論エンジンの実装と応用」 https://ppt.infoq.cn/slide/show?cid=83&pid=3273 |
<<: AIが生成した小説が静かに人気を集めている。人間ならではの創造性がAIにコピーされてしまったのだろうか?
>>: AI対決シリーズ:あなたのレコメンデーションアルゴリズムは破られましたか?
IBMは最近、新たな企業投資ツールであるEnterprise AI Venture Fundを立ち上...
Mike Ferguson は、MIT 脳認知科学部 (MIT BCS) の研究ソフトウェア エンジ...
市場調査会社MarketsandMarketsによると、世界のエッジ人工知能(エッジAI)ソフトウェ...
AIが特定のタスクを完了することは目新しいことではありません。結局のところ、AIは産業、医療、農業な...
ビッグデータダイジェスト制作編集者: JIN、Hope、Jiang Baoshangタイトル画像のパ...
[[399115]]事前トレーニングにより、下流のタスクのパフォーマンスが大幅に向上することが示され...
絶えず変化するテクノロジー環境において、ChatGPT とその AI チャットボットは先頭に立って、...
AI界の巨匠アンドリュー・ン氏が最近、新型コロナウイルスの検査で陽性反応を示し、多くのネットユーザー...
7月24日、Appleは社内で従業員の業務を支援するためにチャットボットを使用しており、将来的には顧...
人工知能 (AI) と機械学習 (ML) は互換性があると考えられる場合もありますが、概念的には関連...
人工知能は常に人々に非常に高級感を与えます。人々に役立つものの意味と価値を理解する必要があります。 ...
オープンソースの詳細については、以下をご覧ください。 51CTO オープンソース基本ソフトウェアコミ...