機械学習の分野が発展し続けるにつれて、機械学習を扱うチームが単一のマシンでモデルをトレーニングすることが困難になり、機械学習はもはや単純なモデルトレーニングではないというのが業界のコンセンサスとなっています。 特に独自の ML モデルを生成しているチームの場合、モデルのトレーニングの前、最中、後に行われるアクティビティは多数あります。この状況を説明するために、次の図がよく引用されます。 多くのチームにとって、機械学習モデルを研究環境から本番環境に適用するプロセスは困難でストレスの多いものです。残念ながら、市場にはあらゆる種類の問題に対応する膨大な数のツールがあり、それらはすべて機械学習の課題をすべて解決すると約束しています。 しかし、チーム全体が新しいツールを習得するには時間がかかることが多く、これらのツールを現在のワークフローに統合するのは必ずしも簡単ではありません。この時点で、機械学習パイプラインを構築する必要のあるチーム向けに構築された機械学習プラットフォームである Kubeflow を検討できます。これには、モデルの提供やハイパーパラメータの調整のための他の多くのツールが含まれています。 Kubeflow が目指すのは、最善の ML ツールを集めて単一のプラットフォームに統合することです。 出典: https://www.kubeflow.org/docs/started/kubeflow-overview/ 名前が示すように、Kubeflow は Kubernetes 上にデプロイする必要があります。この記事を Rancher のプラットフォームから読んでいるということは、おそらくどこかに Kubernetes クラスターをデプロイしているはずです。 Kubeflow の「フロー」は Tensorflow を意味するわけではないことに注意してください。 Kubeflow は PyTorch や任意の ML フレームワークでも使用できます (ただし、最もよくサポートされているフレームワークは Tensorflow と PyTorch です)。 この記事では、Kubeflow をできるだけ簡単にインストールする方法を紹介します。クラスターにすでに GPU がセットアップされている場合、プロセスははるかに簡単になります。機械学習の多くは NVIDIA GPU で実行する必要があるため、まだ行っていない場合は追加のセットアップ手順を実行する必要があります。 Kubeflow での GPU サポートの設定 Docker 19.x がすでにインストールされていることを前提としています。 1. NVIDIA コンテナ ランタイムをインストールする GPU を搭載したすべてのノードで:
次に、Docker デーモンのランタイム フィールドを変更します。
以下を貼り付けます。
Docker デーモンを再起動します。
2. NVIDIAデバイスプラグインをインストールする マスター ノードで、NVIDIA デバイス プラグインを作成します。
次に、Kubeflow のインストールを開始します。 Kubeflowをインストールする 注: この記事の執筆時点では、Kubeflow の最新バージョンは 1.0 です。 Kubernetes バージョン 1.14 および 1.15 と互換性があります。 ステップ0: ダイナミックボリューム構成を設定する Kubeflow をインストールする前に、動的構成を設定する必要があります。 1 つの方法は、hostPath ベースのノード永続ボリュームを使用する Rancher の local-path-provisioner を使用することです。セットアップは非常に簡単です。ノード上のパスを指定して、YAML ファイルをデプロイするだけです。欠点は、ボリューム容量の制限を制御できないことです。 もう 1 つの方法は、ネットワーク ファイル システム (NFS) を使用することです。その手順を以下で説明します。 マスターノードにネットワークファイルシステムを設定する ほとんどのデータをローカルに保存する場合は、NFS を設定する必要があります。ここでは、NFS サーバーがマスター ノード 10.64.1.163 に配置されていると想定します。 まず、NFS の依存関係をインストールします。
次に、ルート ディレクトリを作成します。
/etc/exports に次のエントリを追加します。
10.64.0.0 は Kubernetes Pod CIDR ではなく、ノードの CIDR であることに注意してください。 次に、sudo として次のコマンドを使用して共有ディレクトリをエクスポートします。
最後に、すべての設定を有効にするには、次のように NFS カーネル サーバーを再起動します。
また、サーバーの再起動時に nfs-kernel-server が起動されていることを確認してください。
ワーカーノードでの NFS の設定 NFS の依存関係をインストールします。
NFSクライアントプロビジョナーをインストールする これで、NFS クライアント プロビジョナーをインストールできるようになりました。最後に、私のお気に入りの Rancher 機能の 1 つである App Store を紹介します。 デフォルトでは、Rancher にはテスト済みのアプリケーションが多数付属しています。さらに、Helm Chart 全体を自分でアプリ ストアに追加することもできます。 「アプリ」をクリックし、「カタログの管理」をクリックします。 次に[カタログを追加]を選択します。 次の値を入力してください。 [作成]をクリックして[アプリ]ページに戻ります。しばらく待つと、helm セクションに多くのアプリケーションが表示されます。 [更新] をクリックすると進行状況が表示されます。 ここで、検索ボックスに nfs と入力すると、2 つのエントリが表示されます。 そのうちの 1 つは、まさに私たちが探しているものです: nfs-client-provisioner。クリックすると次の画面が表示されます: これらは nfs-client-provisioner チャートで使用できるすべてのオプションであり、これらを使用して次の項目を入力する必要があります。 フォームに入力後、[起動]ボタンをクリックします。 Kubernetes が Docker イメージをダウンロードしてすべてをセットアップするまでしばらくお待ちください。すべての操作が完了すると、次のページが表示されます。 私は App Store 機能がとても気に入っています。これは、クラスター上でアプリケーションのインストールと監視が簡単かつ便利になるため、私のお気に入りの機能の 1 つです。 ステップ1: kfctlをダウンロードしてインストールする これは、kubectl に似た Kubeflow の制御ツールです。 Kubeflow リリース ページからダウンロードできます。 https://github.com/kubeflow/kfctl/releases/tag/v1.0.2 次に、ファイルを解凍し、バイナリを $PATH に配置します。 ステップ2: Kubeflowをインストールする まず、すべての Kubeflow YAML ファイルを保存するフォルダーを指定します。
kfctl 構成ファイルをダウンロードします。
注意: Istio がすでにインストールされている場合は、kfctl_k8s_istio.v1.0.2.yaml を編集し、istio-crds および istio-install アプリケーション エントリを削除する必要があります。 次に、CONFIG_URI をエクスポートします。
次に、Kubeflow 構成ファイルをダウンロードする場所を示す一連の環境変数を指定する必要があります。
Kubeflow をインストールします。
すべての設定が完了するまで、しばらくお待ちください。 Kubeflow UI にアクセスする UI にアクセスするには、Web UI が配置されているポートを知る必要があります。
以下を返します。
この場合は 80:31380 であり、http://localhost:31380 で Kubeflow UI にアクセスできることを意味します。 このページが正常に表示されたら、おめでとうございます。Kubeflow のセットアップは成功です 🎉 結論は この記事では、まず、機械学習自体の複雑さを制御するために Kubeflow のようなツールが必要な理由について検討しました。次に、機械学習ワークロード用にクラスターを準備する手順に従い、特にクラスターが利用可能な NVIDIA GPU を活用できるようにしました。 NFS をセットアップしながら、Rancher App Store を調べて、Helm Chart を App Store に追加しました。 Kubernetes クラスターにインストールできるすべての Kubernetes アプリケーションが提供されます。最後に、クラスターに Kubeflow をインストールする手順が完了しました。 |
<<: 顔認識システムのセキュリティに関する簡単な分析: どの業界が攻撃に対して脆弱ですか?
>>: AIが教育技術分野にもたらす変化 パーソナライズされた学習が従来の教育方法を超える
PCと比較すると、モバイルデバイスは携帯性に優れており、普及率も高くなっています。近年、モバイルデバ...
ドローンは警報装置、検出器、カメラなどを搭載し、多くの機能を実現でき、セキュリティ監視、スマートビル...
[[318012]] Microsoft、Google、Facebook、Amazon、Uber な...
最近、外国メディアは複数の情報筋の話として、トランプ大統領は自動運転技術を承認していないと報じた。ト...
人工知能が世界を形作っています。コロナウイルスを克服する方法、自動車の自動化、ロボット工学など、世界...
ノアとシャオウが編集制作:51CTO テクノロジースタック(WeChat ID:blog)昨日、テク...
51CTO 編集者注: 「Java ガベージ コレクション メカニズムの簡単な分析」では、Java ...
テクノロジーが急速に進歩するにつれ、人工知能プログラミングはますます成熟しつつあります。その開発は、...
メタの主任科学者であり、ディープラーニングの先駆者であるヤン・ルカン氏は、現在のAIシステムが、山の...
5月19日、海外メディアの報道によると、人工知能はヘルスケア分野で多くの用途があるため、Google...
[[315351]]少し前、グーグルの元CEOであるシュミット氏は下院科学宇宙技術委員会の公聴会で...
9月28日、市場調査会社オールリサーチが発表したレポートでは、2027年までに人工知能ガバナンス市場...
科学者たちは最近、AI に数学の授業をさせることに夢中になっていると言わざるを得ません。現在、Fac...