機械学習アルゴリズムを使用して配信リンクを最適化する方法

機械学習アルゴリズムを使用して配信リンクを最適化する方法

【51CTO.comオリジナル記事】

1. 背景紹介---VODソース配信の問題点

オンデマンドビデオ視聴のプロセスとソースサイトの定義

オンデマンドとは、ライブストリーミングの反対語です。英語ではVOD(Video on Demand)といいます。その名の通り、視聴者が要求した時にのみ動画を視聴できるもので、視聴できる内容は動画の冒頭部分です。

生放送の場合、視聴者がいるかどうかに関係なく、映像はどんどん進んでいき、視聴者が見ているのはその瞬間の映像です。

オンデマンド動画のコンテンツは、テレビシリーズ、映画、スポーツ動画、セルフメディアで制作された動画、さらには短編動画(現在非常に人気があります)など、非常に多様です。

ビデオオンデマンドを開くたびに、その背後でどのような操作が行われているのか考えたことがありますか?

​​

簡単に説明すると次のようになります。

  • ビデオ ウェブサイトは、新しい TV シリーズや映画を公開する PPTV や、新しい短編ビデオを提供する短編ビデオ ウェブサイトなど、オンデマンド リソースを提供します。
  • 視聴者はウェブページやアプリなどを通じてウェブサイトにアクセスし、動画を視聴する

実際、状況はそれほど単純ではない

ビデオ ウェブサイトが提供するオンデマンド リソースまたはファイルは、購入またはレンタルできる自社のサーバーに保存されます。

これらのファイルを保存するサーバー クラスターは、オリジン サーバーと呼ばれます。

これらのビデオ ファイルは実際にはユーザーが直接アクセスすることはできませんが、CDN を通じて段階的に配布されるため、これらのストレージ クラスターは CDN への接続も担当します。

そのため、オリジンサイトは保存とCDNとの接続を担当します。ここで役割分担が行われます。動画サイトは動画の著作権を所有し、CDNは配信を得意としています。

次に、オンデマンド動画やショート動画に対応した動画サイトの処理フローを見てみましょう。

​​

プロセスは次のとおりです。

  • コンテンツ生成(ビデオ Web サイト以外でも実行できます)。ビデオウェブサイトが著作権を購入したり、セルフメディアの作者がビデオを制作したり、ショートビデオの作者が携帯電話でビデオを録画したりします。
  • コンテンツをビデオ Web サイトのソース ストレージにアップロードします。動画サイトの編集者は購入した著作権のある動画をアップロードし、セルフメディアやショートビデオの作者は自分の動画をアップロードする
  • 抑制するかどうかを選択します(機能によって異なります)。ビデオ Web サイトは、ビデオの特性に基づいてビデオを圧縮するかどうかを選択します。たとえば、短いビデオは通常、携帯電話で再生するために圧縮する必要はありませんが、映画や TV シリーズは通常、複数のビット レートで圧縮されます。
  • 分割して保管します。圧縮された(または圧縮されていない)ビデオはフィルムと呼ばれ、保存されます。
  • ソースに戻る。 CDNはこれらのビデオを完成したストレージからソースにダウンロードし、視聴者が視聴できるようにします。

オリジンサーバーとCDNのネットワークトポロジ

私たちは以下の事実を知っています:

  • 動画サイトの(完成した)動画は、通常、1 つのコンピュータ ルームにのみ保存されるわけではありません。たとえば、PPTV のスポーツ動画は、スポーツ スタジオが上海にあり、ローカル録画が便利でインターネット帯域幅を必要としないため、上海のコンピュータ ルームに保存されています。映画やテレビの動画は、編集センターが武漢にあるため、武漢のコンピュータ ルームに保存されています。
  • ビデオ Web サイトは複数の CDN に接続することも、独自の CDN を構築することもあります。たとえば、PPTV は独自の CDN をベースに、国内外の大手有名 CDN メーカーと緊密に協力しています。
  • 各CDNプロバイダー(自社構築のものも含む)のネットワークアクセスポイントの場所と品質は大きく異なります。

さらに、ビデオ Web サイトの場合、必要なビデオ ファイルのコピーは 1 つまたは 2 つだけです (もちろん、ビデオ会社はコールド バックアップやホット バックアップなどを実行するため、ディスク上の実際のストレージはそれほど小さくはありません。この詳細はストレージの高可用性のカテゴリに属する​​ため、詳しく説明しません)。

データを異なるコンピュータ ルームに保存し、単一のデータ コピーを複数の CDN に同時に送信するには、ソース サイト内でマルチレベル キャッシュ構造を使用する必要があります。

​​

内部配信とは、ビデオ ソース ステーション内の複数のキャッシュ間、つまり複数のコンピュータ ルーム間の配信を指します。

ビデオソースサイト(L2 クラスター)と CDN アクセスポイント間の配信を外部配信と呼びます。通常、L2 クラスタを CDN アクセス ポイントに接続すると、オペレータのコンピュータ ルームでも高品質の回線が選択されます。

したがって、私たちの紹介の焦点は、N 個のストレージ クラスターから K 個の L1 クラスターを介して M 個の L2 クラスターにビデオ ファイルを配布する方法にあります。

オンデマンドビデオソースステーションの配信プロセスにおける問題

  • オンデマンド ビデオが中央クラスタから L1 および L2 クラスタ (コンピュータ ルーム) に配信される場合、ツリー配信が採用されます (このツリーの構築は、経験またはネットワーク自体の特性に基づきます)。各中央ノードから異なる L1 コンピュータ ルームへの回線の品質は大きく異なり、異なる L1 コンピュータ ルームから L2 コンピュータ ルームへの品質も大きく異なります。
  • 配信処理はインターネット回線を通じて行われます (専用回線は高価すぎるため)。インターネット回線の安定性は予測できません。ネットワークのジッタにより配信に失敗することもありますし、光ケーブルが切断されて特定のバックボーン ネットワークが利用できなくなるなどの事故も頻繁に発生します。特定の回線や特定のコンピュータ ルームに問題が発生すると、地域的に利用できなくなることもあります。
  • 異なるクラスター (コンピュータ ルーム) を計画して構築する場合、サーバー (コンピューティング、ストレージ、IO) の機能と入出力帯域幅は異なります。異なるクラスターが下方に分散されると、対応するノードの数も不一致になります。異なるクラスター間で負荷に大きな差が生じます。これは、一般的に、ビジー状態のクラスターはビジー状態が過度に高く、アイドル状態のクラスターはアイドル状態が過度に高いことが知られています。ビジー状態のノードはボトルネックになる可能性があります。

オンデマンド動画配信局の配信リンク最適化の意義

上記の問題をどのように解決するのでしょうか? 当然ながら、各ファイルの配布プロセスで、固定構成のソース ツリーではなく、最適なリンクを自動的に選択できれば、配布プロセスには次のような利点がもたらされると考えられます。

  • より効率的で安定的
  • 地域的な失敗を避ける
  • 異なるクラスター(コンピュータルーム)の負荷がより合理的かつバランスよくなります

​​

2. ノード間のデータ配信品質の評価

なぜ最初に 2 つのサーバー ノード間の配信品質を評価するのでしょうか?

先ほども述べたように、最適化の方法は良い配信リンクを選択することです。では、良いリンクとはどのような配信リンクでしょうか?まず、次の事実を見てみましょう。

  • リンクは、データが通過するサーバー ノードで構成されます。
  • リンク内の隣接サーバー ノードの伝送品質の最悪値によって、この配信リンクの品質の上限が決まります。

​​

したがって、まず 2 つのサーバー ノード間の伝送品質を調べます。

2つのサーバーノード間の伝送品質の評価

では、2 つのサーバー ノード間の伝送品質を評価するには何を使用できるでしょうか。当然、定量的なデータが必要です。簡単なアイデアは「ファイルのダウンロード時間」です。

2 つのサーバー ノード間の伝送品質 (ダウンロード時間) に影響を与える要因は次のとおりです。

  • ファイルサイズ
  • データ遅延、パケット損失率、ホップ数など、サーバー間のネットワーク回線の状態。
  • 送信サーバー(受信サーバー)の現在の負荷(CPU負荷、メモリ使用量、IO負荷、現在の帯域幅、ストレージ使用量など)
  • 現在の時刻

これらの要因がダウンロードにどのように影響するかを簡単に分析します。

ファイルサイズ: ファイルが大きいほど、ダウンロードに時間がかかり、遅くなります。

サーバー間のネットワーク回線: 2つのサーバー間のネットワーク状態、これらのインジケーターを含む

  • 遅延: 下の図の ping コマンドは、2 つのサーバー間の遅延をテストできます。データ転送の場合、遅延が小さいほど良好です。
  • MTU (最大転送単位): 通信プロトコルの特定の層を通過できる最大データ パケット サイズ (バイト単位) を指します。 *** 送信単位パラメータは通常、通信インターフェース(ネットワークインターフェースカード、シリアルポートなど)に関連しています。 下の図に示すように、3000 バイトを送信する場合、mtu が 1500 に設定されている場合は 2 つのパケットにパッケージ化する必要があり、mtu が 1492 に設定されている場合は 3 つのパケットにパッケージ化する必要があります。 もちろん、3 つのパケットを送信すると、2 つのパケットを送信するよりも時間がかかります。
  • パケット損失率: 下の図の ping コマンドは、現在のパケット損失が 0 であることをテストします。ネットワークに問題がある場合、このデータは 0 にならない可能性があります。ビデオのダウンロードは HTTP に基づいており、基礎となるプロトコルは TCP です。パケットは損失後に再送信する必要があります。パケット損失率が低いほど良いです。
  • ホップ数: ホップ数は、通信時に 2 つのサーバーが通過するルーティング デバイスの数を表します。データがルーターを通過すると、ルーターにデータ パケット キューが作成されます。キューがいっぱいになると、データが破棄される可能性があります。また、ルーターはデータ パケットの次のホップを計算するのに一定の時間がかかります。
  • サーバーの最大帯域幅: サーバーの最大帯域幅は、もちろん大きいほど良いです (もちろんコストも高くなります)。たとえば、自宅にブロードバンドを設置する場合、500M は 100M (これも高価) よりも間違いなく優れています。
  • ​​

  • ​​

送信サーバー(受信サーバー)の現在の負荷

  • CPU 負荷: CPU 負荷がそれほど高くない場合は、ダウンロードにほとんど影響しません。CPU 負荷が一定値を超えると、ダウンロードの効率に重大な影響を及ぼします。
  • メモリ使用量: メモリ使用量が高くない場合、ダウンロードにはほとんど影響がありません。メモリ使用量が特定の値を超えると、ダウンロードの効率に重大な影響を及ぼします。
  • IO 負荷: IO 負荷が大きくない場合、ダウンロードへの影響はほとんどありません。IO 負荷が特定の値を超えると、ダウンロードの効率に重大な影響を及ぼします。
  • 現在の帯域幅の使用状況: 現在の帯域幅が最大帯域幅に近くない場合、ダウンロードにはほとんど影響がありません。最大帯域幅に近い場合、データ パケットの送信がブロックされ、ダウンロードの効率に重大な影響を及ぼします。

​​​​

この図はtopコマンドで表示される現在のマシン負荷を示しています。

現在の時刻:

上記のデータはいずれも時間とともに変動します。たとえば、帯域幅データでは、動画サイトを視聴する人は午前中は少なく、夕方は多くなります。平日と週末の視聴者数は一致しません。休日には新しい特徴があります。インターネットの利用は全体的に増加傾向にあるため、長期的に見ると、帯域幅データも増加傾向にあるはずです。

ここで疑問が生じます。同じサイズで同じリンクのダウンロード速度は、異なる時点で大きく異なるため、動的な推定メカニズムを導入する必要があります。

たとえば、ファイルのサイズが 2G だとします。ダウンロードを開始する前は、リンク A が最適だと考えています。しかし、300M をダウンロードした後、リンク A の品質はもはや良くありません。リンク B の方が良いかもしれません。ここで達成したいのは、2G ファイルをダウンロードするのにどのリンクが最も時間がかかるかを計算することです。

2つのノード間のデータ伝送の品質モデルを確立する概念

2 つのノード間の配信品質を測定するには、ダウンロード時間 (DT) という数値を使用できます。このデータは、時間の経過とともに特定のパターンを示す多くの特定の要因 (変数) の影響を受けます。そのため、モデルまたは関数を使用して、これらの要因と DT の関係を説明するという素晴らしいアイデアがあります。新しいファイルをダウンロードするときは、このモデルを使用して、現在の変数を入力し、ファイルのダウンロードにかかる時間を予測します。

関数が次のようになっていると仮定します。

DT = Func(ファイルサイズ、現在の時刻、遅延、CPU負荷、メモリ負荷、IO負荷、…)

ファイル サイズが 100 MB であること、現在の時刻がわかっていること、ノード間のこれらの変数がわかっていることがわかっています。この関数に基づいて期間を計算できます。

3. 機械学習アルゴリズムの設計と実装

機械学習の導入

先ほど、DTを予測するためのモデル(関数)を確立するというアイデアを提案しました。このモデルをどのように確立するのでしょうか?

まず、数学でどのように行われるかを見てみましょう。数学では、既知の独立変数と従属変数のセットの関数を見つけるプロセスをフィッティングと呼びます。

2 次元空間では、1 つの独立変数と 1 つの従属変数が単純な曲線フィッティングになります。

3 次元空間、2 つの独立変数と 1 つの従属変数は、サーフェス フィッティングです。

N 次元空間では、N-1 個の独立変数と 1 個の従属変数を当てはめることもできます。

最小二乗法などの特定のアルゴリズムは数学の本に記載されています。興味のある学生は自分で調べることができます。

コンピュータサイエンスの分野では、AI 研究の先駆者たちがこの問題に対処するために機械学習にニューラルネットワークを使用することを提案しています。

機械学習とは何か?ネット上には多くの説明があります。ここでは簡単に説明しましょう。

​​

マシン(コンピュータ上のプログラム)に既知の入力と出力を与え、パターンを見つけるように要求します(知識発見)。次に、新しい入力を使用して、見つかったパターンに基づいて新しい出力を計算するように要求し、出力結果を評価します。結果が適切であれば、肯定的な奨励を与えます。結果が適切でない場合は、マシンにそれが間違っていることを伝え、パターンを再度見つけるように要求します。

実際、このプロセスは、新しい知識やスキルを習得し、既存の知識構造を再編成してパフォーマンスを継続的に向上させるための人間の学習行動をシミュレートまたは実現します。

機械学習の本質は、機械が既存のデータを分析し、データの背後に隠されたルール(機能)を表すモデルを考案できるようにすることです。

このパターンを見つけるプロセスをどのように実現するのでしょうか?

まず、関数を数学的に確立する方法(適合させる方法)について説明します。プロセスは次のとおりです。

  • フィッティング関数(べき乗関数、指数関数、対数関数、三角関数など)を選択します。
  • パラメータの設定
  • エラーを比較してパラメータを調整する
  • 反復

​​

図のこの一連の点については、これらの点の配置が正弦関数に適合していると思われるため、三角関数の正弦関数を使用してフィッティングし、関数の周期、振幅、位相などのパラメータを設定します。 x > 5 以降でも一定の誤差があることがわかったので、誤差が許容できるかどうかを判断する必要があります。許容できない場合は、再度フィッティングする必要があります。

​​

上の図の点を当てはめると、これらの点の分布は放物線になることがわかります。中学校の数学の知識によれば、放物線はべき乗関数の2次べき乗関数のイメージなので、2次べき乗関数を使用して当てはめ、最終的に方程式を取得します。

数学の分野と同じように、AIの分野でも入力はモデル(関数)を通じて出力に変換されます。このモデル(関数)はどうやって決まるのでしょうか?それは推測です!

推測することが問題なのではなく、より正確に推測する方法が問題なのです。

AIの先駆者たちは、モデルを推測する方法の問題を解決するために、人間の脳のニューロンをシミュレートするというアイデアを提案した。

ニューラルネットワークと人工ニューラルネットワーク

脳内のニューロンは次のようになります。

​​

脳の神経ネットワークは次のようになります。

[[227671]]

脳のニューロンの特徴は、各ニューロンが特定の入力を処理し、特定の出力を生成し、それを下位のノードに渡す役割のみを担っていることです。これらが一緒になって、人間の脳内のニューラル ネットワークを形成し、これが動物の思考プロセスとなります。

人工ニューラル ネットワークは、人工的に構築された処理ノード (脳のニューロンをシミュレート) のネットワークです。各ノードには機能があり、複数の入力を処理し、複数の出力を生成します。各ノードは他のノードと組み合わされてモデル (機能) を形成します。

​​

左から右に、出力層、隠れ層、出力層です。

入力層は入力の受信、出力層は結果の出力、隠れ層は中間計算プロセスを担当します。

隠れ層の各ノードは処理関数です。隠れ層の構造、つまり層の数、ノードの数、あるいは各ノードの機能によって、ニューラル ネットワーク全体の処理結果が決まります。

Tensorflow 入門

Tensorflow の紹介はインターネット上にたくさんあります (検索して閲覧できます)。この記事の文脈に沿って、簡単に紹介すると次のようになります。

​​

Tensorflow は、ニューラル ネットワークを通じてディープラーニングを実装するプラットフォームです。入力と出力を与え、いくつかの (推測モデル) ルールに同意することで、特定のモデルを推測できるようになります。

TensorFlow を使用する手順は、トレーニング データの収集、トレーニング、比較、反復… と簡単にまとめることができます。

トレーニングデータの収集

2 つのノード間の伝送品質をモデル化するためのトレーニング データを収集する方法について説明します。

前述したように、データは入力データと出力データに分けられます。

入力データは次の 4 つのカテゴリに分類されます。

  • ダウンロードしたファイルのサイズ - 直接記録できます
  • 現在の時刻 - Unix タイムスタンプを使用
  • ネットワーク統計 - いくつかの速度テストツールから
  • 送信(受信)サーバーの負荷 - Zabbix からの記録

出力データはファイルのダウンロードの時間記録であり、離散化する必要があります(離散化の理由は後で説明します)。

Zabbix の紹介:

  • Webインターフェースに基づいて分散システム監視およびネットワーク監視機能を提供するエンタープライズレベルのオープンソースソリューション
  • Zabbixは、サーバーシステムの安全な運用を確保するためにさまざまなネットワークパラメータを監視し、システム管理者がさまざまな既存の問題を迅速に特定/解決できるように柔軟な通知メカニズムを提供します。
  • zabbix サーバーとオプション コンポーネント zabbix エージェント
  • Linux、Solaris、HP-UX、AIX、Free BSD、Open BSD、OS Xをサポート

Zabbix の anget は送信ノード上に展開され、マシンの負荷や帯域幅の使用状況データを定期的に収集し、センター (zabbix サーバー) にまとめます。

次の図は、Zabbix の現在の帯域幅の統計を示しています。

​​

次のグラフは、3 か月間の帯域幅負荷を示しています。

​​

次の図は、3 か月間の CPU 負荷を示しています。

​​

IPERF ツールを使用してネットワーク データを収集する

IPERF ツールは次のデータを収集できます。

  • サーバー間の現在の伝送帯域幅
  • パケット損失率
  • MSS、MTU
  • TCP/UDPをサポート

次の図は、iperf の使用状況のスクリーンショットです。

​​

Ping ツールはレイテンシを収集し、ノードの接続性をテストします。

​​

Tractrouteツールはノード間のホップ数に関する情報を収集します

​​

(Windows cmdでは、コマンドはtracertです)

トレーニングの準備

データの組み合わせとフォーマット:

ネットワーク データ、ロード データ、ファイル サイズ、時間を結合し、JSON にフォーマットします。

ダウンロードした時間のかかるデータをセグメントに分割し、離散化します。結果(出力)を離散化する必要がある理由を説明します。TensorFlow は分類処理の学習が得意です。分類結果セットが連続セットの場合、考えられる結果は無限にあり、トレーニングの難易度が大幅に上がり、トレーニングの速度が低下します。結果をうまく離散化して、時間に近い時間を 1 つの値として扱い、一定の閾値を超えた時間を 1 つの値として扱います。これにより、結果の範囲が制限され、トレーニングの難易度が大幅に軽減されます。

トレーニング モデル パラメータのプリセット:

先ほど数学の分野でフィッティングについてお話ししたとき、まずフィッティングの基礎として、私たち自身の経験に基づいて、べき乗関数、三角関数、指数関数、対数関数の 1 つ以上の組み合わせを選択しました。

ニューラル ネットワークの場合、すべてを無視してランダムに推測させることはできません。代わりに、既知の経験に基づいてモデルとパラメーターを設定する必要があります。

前述のように、各ノードは関数です。では、どの関数を選択すればよいでしょうか。まず、最も単純なケースである線形関数を考えてみましょう。一連の線形関数を組み合わせてネットワークを作成します。このネットワークによって記述されるモデルは、間違いなく線形モデルであり、世界のほとんどの法則を記述するには不十分です。

次の図は一般的な線形関数です。

​​

次に、各関数を再び非線形にすることを考えてみましょう。つまり、線形関数に非線形関数 (活性化関数と呼ばれる) を追加し、それらをネットワークに組み合わせます。このネットワークによって記述されるモデルは、基本的に世界のほとんどの法則をカバーできます (理由は聞かないでください。私も理解していません...)。

以下に、よく使用される非線形関数をいくつか示します。

​​

ネットワークは以下から構成されます:

​​

まず各ノードの機能タイプを推測しましたが、ネットワークの構造はどうでしょうか? いくつのレイヤーを使用し、各レイヤーにいくつのノードを使用すればよいでしょうか? 異なる分野でニューラル ネットワークに取り組む場合、選択肢は本当に異なります。

ノード間の伝送品質を評価する際には、まず経験に基づいてレイヤー数を 15 に設定し、各レイヤーに 50 ノードを配置し、ノード機能も基本的な経験に基づいて設定します。

次のパラメータは TensorFlow のトレーニング結果に影響します。

  • 初期学習率
  • 学習率減衰率
  • 隠れ層ノードの数
  • 反復ラウンド
  • 正則化係数
  • 移動平均減衰率
  • バッチサイズ
  • 線形関数、活性化関数の設定

その中で、隠れ層ノードの数、反復回数、バッチトレーニング回数、線形関数、活性化関数の設定はより大きな影響を与えます。それらの設定方法は前に説明しましたが、残りのパラメータの影響はやや小さくなります。興味のある学生は自分で検索することができます。

TensorFlow 処理

単一ノードの処理は次のとおりです。

​​

1 つのノードが ReLU (Wx+b) を実行し、他のノードと組み合わせて最終的に出力結果を生成します。

全体的なプロセスは次のステップに分かれています。

  • データ入力
  • 電車
  • トレーニング結果のレビュー
  • 調整パラメータ
  • 再訓練
  • トレーニング結果のレビュー
  • 満足のいくトレーニング結果

Tensorflowの結果から***伝送経路を計算する

多くのトレーニングとチューニングを経て、2 つの (必要な) サーバー ノード間のトレーニング モデルを取得しました。このモデルでは、現在のファイル サイズ、時間、サーバーおよびネットワーク テストの状態を入力することで、予想されるダウンロード転送時間を計算できます。

​​

ノード間のペアワイズ計算の結果をネットワークトポロジー図に代入する。

​​

最短経路アルゴリズムを使用して、最適な(および最適ではない)伝送経路を計算する

ダイクストラのアルゴリズムのアルゴリズムは次のとおりです(ダイクストラのアルゴリズムと翻訳)。

​​

これは非常に古典的な最短経路アルゴリズムなので、ここではあまりスペースを割いて紹介しません。興味のある学生は自分で検索してください。

全体的な処理フローの確認

​​

  • まず、トレーニング データを収集し、Zabbix データ、ネットワーク速度テスト データ、ファイル サイズ、現在の時刻情報を入力として使用し、ダウンロード時間を出力として使用してモデルをトレーニングし、モデルを継続的に最適化します。
  • 現在の Zabbix データ、ネットワーク速度テスト データ、ファイル サイズ、現在の時刻情報を入力として使用し、トレーニング済みモデルを使用して計算を実行し、予想されるダウンロード結果を取得します。
  • 関連するノードは、期待される結果を 2 つずつ計算して伝送ネットワークを形成し、ダイクストラ アルゴリズムを使用して伝送ネットワーク内の最小パスを計算します。

IV. 今後の展望

*** ストリーム アルゴリズムを使用してファイルをセグメントでダウンロードします

現在のアルゴリズムは、ファイル全体のダウンロードを目的としています。実際、ストリーミング メディア サーバーはすでに仮想ファイル分割を実装しており、HTTP プロトコルにも範囲要求があります。これに基づいて、ファイルを分割し、複数のリンクを介して同時にダウンロードすると、ダウンロード速度が向上し、ネットワークの使用率がさらに向上します。

詳細については、EKアルゴリズム、Dinicアルゴリズムなどを参照してください。

最小コストの***フローを使用して***フローアルゴリズムを改善する

各コンピューター室と各ラインの構築コストが異なることを考慮すると。

*** フローに複数のソリューションがある場合、各エッジに単位コストが添付され、*** フローが満たされた場合の最小コストが計算されます。これにより、コストの使用状況をより正確に把握でき、コンピュータ ルームを拡張する必要がある場合のガイダンスが得られます。

ライブ放送での応用

現在、上記のデータは、オンデマンドソースステーションの内部配信におけるモデルトレーニングの入力データとして使用されており、ダウンロードに時間がかかるという結果が出ています。ライブブロードキャストの場合、ライブブロードキャストに関連するデータを組み合わせてトレーニングすることができ、その結果、QoSが得られます。ライブブロードキャストをソースに戻すための内部スケジュールに最適なリンクを予測する新しいモデルが生成されます。

【著者紹介】

PP Cloud Technology の副ディレクターである Zeng Xiaowei 氏は、画像コーディングと高性能コンピューティングのバックグラウンドを持ち、AI (NLP) を副専攻としています。ストリーミング メディア サーバーの開発とアーキテクチャ設計で 12 年以上の経験があります。

[51CTO オリジナル記事、パートナーサイトに転載する場合は、元の著者とソースを 51CTO.com として明記してください]

<<:  初の高校向けAI基礎教科書が出版:唐暁氏が編集、重点中学校40校が導入

>>:  現在人気の人工知能専攻の年収は30万元にも達する

ブログ    

推薦する

AIは依然として人気、テクノロジー企業の人材育成の道筋を見てみよう

人工知能ブームが始まって以来、人材不足が業界の「主要テーマ」となっている。これを踏まえ、大手テクノロ...

Appleが記者会見でFaceIDを発表。あなたは顔認識機能を使ってみますか?

[[203619]] 「もし私が諜報員だったら、生体認証機能をオンにすることは絶対にありません。」...

自動運転車の実現はAIと人間のゲームである

「人間がテクノロジーを生み出すペースは加速しており、テクノロジーの力は指数関数的に成長しています。指...

Microsoft Office Family Bucket Edition GPT-4 の価格は月額 30 ドル、Azure は Llama 2 と提携

ここ数カ月、国内外のテクノロジー大手は大規模モデルをめぐって動きを見せているが、OpenAIを所有す...

2018 年に人工知能アプリケーションはどのように実装されるのでしょうか?

[[229403]]現在の人工知能の発展は「実用的な」段階に入っています。 2018年の初め、国家...

グラフ分野における初のユニバーサルフレームワークが登場しました。 ICLR'24 Spotlightに選ばれ、あらゆるデータセットと分類問題を解決できる

普遍的なグラフモデルはありますか?分子構造に基づいて毒性を予測するだけでなく、ソーシャル ネットワー...

DeepMindは、オンラインで攻撃的な言葉を出力することに特化したZaun AIを提案している

言語モデル (LM) は、不快な言葉を生成する可能性がしばしばあり、モデルの展開にも影響を及ぼします...

...

わずか6秒で、AIはあなたの声を聞くだけであなたの外見を説明できる

信じられますか?人工知能は最近、あなたの声からわずか6秒で性別、年齢、人種を判別し、さらにはあなたの...

Google翻訳では対応できない?ドイツ語ハードコア翻訳DeepL体験

[[321121]]インターネットを頻繁に利用する人のほとんどは、お気に入りの翻訳ツールを持っていま...

無人配送はJD.com、Alibaba、SF Expressの「新たなお気に入り」となっているが、全国的に普及するには10年かかるかもしれない!

[[222058]]無人運転車、ドローン、無人倉庫、無人駅、配達ロボットなどの「無人技術」が、電子...

シンプルな人工ニューラル ネットワークをゼロから構築する: 1 つの隠れ層

[51CTO.com クイック翻訳] 前回の記事「人工ニューラルネットワークをゼロから構築する(パー...

...

2つのAIデートがネットワーク全体の注目を集めました。アルゴリズムがどれだけ強力であっても、失敗は免れません

この世界では、AI チャットボットを扱ったことがある人は、いつかは自分の言葉によって大人としての尊厳...

...