機械学習/ディープラーニング プロジェクトを始める 8 つの方法

機械学習/ディープラーニング プロジェクトを始める 8 つの方法

[[392342]]

[51CTO.com クイック翻訳]探索的データ分析から自動機械学習 (AutoML) まで、組織はこれらのテクノロジーを使用してデータ サイエンス プロジェクトを前進させ、より優れたモデルを構築する必要があります。

データを分類したり、結果を予測したりする必要がありますか? 機械学習プロジェクトを始めるのに苦労していませんか? 問題の解決に役立つテクノロジーは数多くあります。

以下で説明する 8 つの方法の中には、機械学習のプロセスを大幅に高速化するものもあれば、プロセスを高速化するだけでなく、より優れたモデルの構築にも役立つものもあります。これらの方法のすべてが特定のプロジェクトに適しているとは限りませんが、探索的データ分析を無視してはなりません。

機械学習またはディープラーニング プロジェクトを開始するための 8 つの方法をご紹介します。

1. 探索的データ分析から始める

データを深く調べずに機械学習のトレーニングに飛び込むのは、スポーツの試合のウォーミングアップをしないようなもので、その過程でやるべき作業がたくさんあります。

探索的データ分析では、グラフィック手法と統計手法を組み合わせます。より一般的な手法としては、個々の変数のヒストグラムや箱ひげ図、変数のペアの散布図、変数間の相関関係をペアワイズ相関のヒートマップとして示す記述統計プロットなどがあります。

探索的データ分析には、主成分分析 (PCA) や非線形次元削減 (NLDR) などの次元削減手法も含まれます。時間ベースのデータの場合、時間に基づいて元の変数と統計の折れ線グラフをプロットする必要もあります。これにより、季節や周期的な変化、嵐や伝染病などの外部要因によって引き起こされる異常な急上昇などを強調できます。

探索的データ分析は単なる統計グラフではありません。これはデータ分析に対する哲学的なアプローチであり、データをモデルに無理やり当てはめようとするのではなく、オープンな考え方を保つために設計されています。今日では、探索的データ分析からの多くのアイデアがデータマイニングに組み込まれています。

2. 教師なしクラスタの構築

クラスター分析は、モデルが類似したデータ ポイントのクラスターを見つけることを必要とする教師なし学習の問題です。現在使用されているクラスタリング アルゴリズムはいくつかありますが、それぞれ特性が若干異なります。通常、クラスタリング アルゴリズムは、データ ポイントの特徴ベクトル間のメトリックまたは距離関数を調べ、互いに「近い」メトリックまたは距離関数をグループ化します。クラスタリング アルゴリズムは、クラスターが重複していない場合に最適に機能します。

最も一般的なクラスタリング手法の 1 つは k 平均法です。これは、ユークリッド距離メトリックを使用して n 個の観測値を k 個のクラスターに分割し、各クラスター内の分散 (二乗和) を最小化することを目的としています。これはベクトル量子化の方法であり、特徴学習に役立ちます。

ロイドのアルゴリズム (重心更新による反復クラスタリング) は、この問題を解決するために最も一般的に使用されるヒューリスティック アルゴリズムです。効率的ではありますが、グローバル収束を保証することはできません。これを改善するには、多くの場合、Forgy 法またはランダム分割法によって生成されたランダムな初期クラスター重心を使用して、アルゴリズムを複数回実行します。

k-means では、球状星団は分離可能であり、その平均が星団の中心に向かって収束すると想定し、また、データ ポイントの順序は重要ではないと想定します。最も近いクラスター センターへの割り当てが正確になるように、クラスターは同様のサイズである必要があります。

k-means クラスタリングが適切でない場合は、階層的クラスター分析、混合モデル、または DBSCAN の使用を検討してください。オートエンコーダやモーメント法など、他の種類の教師なし学習も考慮する必要があります。

3. 半教師あり学習を使用したデータのラベル付け

ラベル付けされたデータは機械学習に必須です。ラベル付けされたデータがなければ、目標値を予測するモデルをトレーニングすることは不可能です。簡単な方法は、すべてのデータに手動でラベルを付けることですが、これは経済的に実現可能ではありません。

より安価なアプローチとしては、データの一部に手動でラベルを付け、1 つ以上のモデルを使用して残りのターゲット値を予測してみることです。これは半教師あり学習と呼ばれます。自己トレーニング アルゴリズム (半教師あり学習の一種) を使用すると、特定のしきい値を超える確率で単一のモデルから任意の予測を取得し、はるかに大きなトレーニング データセットを使用して、洗練されたモデルを構築できます。その後、モデルは別の予測ラウンドに使用され、予測がなくなるまでこのプロセスが繰り返されます。自己トレーニングは効果的な場合もありましたが、誤った予測によってモデルが破損してしまう場合もありました。

複数のモデルを構築し、それらを使用して相互にチェックすると、トリプルトレーニングなどのより堅牢なアプローチを採用できます。もう 1 つの選択肢は、半教師あり学習と、異なるデータに基づいて構築された既存のモデルからの転移学習を組み合わせることです。

これらのソリューションはいずれも自分で実装できます。または、Amazon SageMaker Ground Truth、Hive Data、Labelbox、Dataloop、Datasaur などのトレーニング済みラベル付きデータを備えた Web サービスを使用することもできます。

4. 補足データセットの追加

外部性により、データセット、特に時系列データセットの異常が明らかになることがよくあります。たとえば、自転車レンタルのデータセットに気象データを追加すると、大雨の際のレンタル数の急激な減少など、多くの偏差を説明できます。

小売売上の予測にも他の良い例があります。販売活動、競合製品、広告の変更、経済情勢、天候などはすべて売上に影響を与える可能性があります。つまり、データが意味をなさない場合は、コンテキストを追加すればすべてが明確になるかもしれません。

5. AutoMLを試す

データに最適なモデルを見つける唯一の方法は、考えられるすべてのモデルをトレーニングして、どれが最も優れているかを確認することです。多くの種類のデータ、特にラベル付きの表形式のデータでは、データセットに自動機械学習 (AutoML) ツールを適用し、後で戻って適切な回答を得ることができます。場合によっては、最善のモデルが他のモデルのアンサンブルになることがあります。これはコストがかかる可能性がありますが、最善のシンプルなモデルは、多くの場合、アンサンブルとほぼ同じくらい優れており、実行コストがはるかに低くなります。

舞台裏では、自動機械学習 (AutoML) サービスは、適切なモデルをすべて盲目的に試すわけではありません。たとえば、標準化されエンジニアリングされた特徴セットを自動的に作成し、欠損値を補完し、相関する特徴を削除し、時系列予測のために遅延列を追加するものもあります。もう 1 つのオプションのアクティビティは、いくつかの最適なモデルに対してハイパーパラメータの最適化を実行し、それらをさらに改善することです。指定された時間内に最良の結果を得るために、一部の自動機械学習 (AutoML) サービスでは、あまり改善されていないモデルのトレーニングをすぐに終了し、より有望なモデルにさらに多くのサイクルを投入することができます。

6. 転移学習を通じて訓練済みモデルをカスタマイズする

大規模なニューラル ネットワークを最初からトレーニングするには、通常、大量のデータ (数百万のトレーニング項目は珍しくありません)、多くの時間、およびコンピューティング リソース (複数のサーバー GPU を使用すると数週間かかる場合があります) が必要です。強力なショートカットの 1 つは転移学習と呼ばれ、これは、ネットワーク上のいくつかの新しいレイヤーを新しいデータでトレーニングすることによって、またはネットワークから特徴を抽出し、それらの特徴を使用して単純な線形分類器をトレーニングすることによって、トレーニング済みのニューラル ネットワークをカスタマイズすることです。これは、Azure Custom Vision や Custom Language Understanding などのクラウド コンピューティング サービスを使用するか、TensorFlow や PyTorch を使用して作成されたトレーニング済みのニューラル ネットワーク ライブラリを活用することで実行できます。転移学習や微調整は、通常、単一の GPU で数分で実行できます。

7. 「モデル動物園」でディープラーニングアルゴリズムを試す

好みのクラウド コンピューティング サービスやディープラーニング フレームワークを使用して転移学習で必要なモデルを簡単に作成できない場合でも、ディープ ニューラル ネットワーク モデルをゼロから設計してトレーニングする手間を省くことができます。ほとんどの主要フレームワークのネイティブ モデル ライブラリである Model Zoo は、モデル API よりも広範囲にわたります。複数のフレームワークや、特定の表現を処理できる任意のフレームワーク (ONNX0 など) の Model Zoo を管理する Web サイトもあります。

Model Zoo には、完全にトレーニングされ、すぐに使用できるモデルが多数あります。ただし、一部のスナップショットは部分的にトレーニングされたスナップショットであり、その重みは独自のデータセットを使用したトレーニングの開始点として使用できます。

8. モデルのハイパーパラメータを最適化する

通常、モデルを初めてトレーニングしてもプロセスは終了しません。機械学習モデルは、さまざまなハイパーパラメータを試すことで改善できることが多く、ハイパーパラメータの最適化やチューニングを通じて最適なモデルを見つけることができます。これは本当の始まりではありませんが、初期のあまり良くないモデルからより良いモデルに移行するための方法です。

ハイパーパラメータは、学習プロセスを制御するモデル外部のパラメータです。モデル内部のパラメータ (ノードの重みなど) は、モデルのトレーニング中に学習されます。ハイパーパラメータの最適化は、本質的には、特定のモデルに最適なハイパーパラメータのセットを見つけるプロセスです。各最適化ステップでは、モデルを再トレーニングし、損失関数の値を取得する必要があります。

重要なハイパーパラメータは、モデルとモデルで使用されるオプティマイザーによって異なります。たとえば、オプティマイザーが異なる期間にわたって学習率を制御しない限り、学習率はニューラル ネットワークの一般的なハイパーパラメータです。ラジアル基底カーネル関数とサポートベクターマシン分類器の場合、ハイパーパラメータは正規化パラメータとカーネル関数定数になります。

ハイパーパラメータ オプティマイザーはさまざまな検索アルゴリズムを使用できます。グリッド検索は従来のアプローチです。一方で、グリッド検索では、複数のハイパーパラメータのすべての組み合わせをカバーするために多数のトレーニング実行が必要になります。他方、十分なコンピューティング リソースがあれば、すべてのトレーニング実行を並列に実行できます。ランダム検索は、場合によってはより効率的であり、簡単に並列化することもできます。その他の選択肢としては、ベイズ最適化、勾配降下法、進化的最適化、早期停止アルゴリズムなどがあります。

要約すると、探索的データ分析を使用してモデル構築プロセスを開始できます。教師なし学習を使用して、データと機能についてさらに詳しく学習します。自動機械学習 (AutoML) を使用して、多数のモデルをすばやくテストしてみてください。ディープ ニューラル ネットワーク モデルが必要な場合は、独自のネットワークをゼロから設計してトレーニングする前に、転移学習または Model Zoo を試してみる必要があります。良いと思われるモデルが見つかったら、ハイパーパラメータの調整を通じてそのモデルを改善することができます。その後、モデルを本番環境で試用し、監視することができます。

そして、まだ終わっていません。時間の経過とともに、データや概念は現実世界の出来事によって変化するため、モデルを最適化して再トレーニングする必要が生じます。新しいデータには、異なるタイプのモデルの方が適していることがわかる場合もあります。

原題: 機械学習をスタートさせる 8 つの方法、著者: Martin Heller

[51CTOによる翻訳。パートナーサイトに転載する場合は、元の翻訳者と出典を51CTO.comとして明記してください]

<<:  この国産トランスフォーマーは自動変形、音声制御、プログラミングが可能。外国人は狂ったように気に入っている

>>:  人民日報オンライン:「初の顔認証事件」の最終判決は極めて重要な意味を持つ

ブログ    
ブログ    
ブログ    

推薦する

Oracle データベース初期化パラメータの分析: システム構成を最適化するための究極のガイド!

Oracle データベースでは、初期化パラメータは非常に重要な構成項目であり、データベースのパフォ...

Apple、Googleなど大企業のAI面接の質問を入手しました。あなたは挑戦してみますか?

何?大手テクノロジー企業の面接の質問が漏洩した?そんなわけないですよね~。海外の有名なブログプラット...

5分で様々な人工知能技術を紹介

人工知能は、コンピューターが人間と同様のレベルの知能を発揮できるようにするさまざまな技術を網羅する幅...

十分なデータを使用してモデルをトレーニングしたかどうかをどのように確認しますか?

[51CTO.com クイック翻訳]ディープニューラルネットワーク (DNN) には大量のトレーニ...

...

...

...

予測分析が米国におけるインフルエンザ流行の乗り切りにどのように役立つか

新型コロナウイルスの武漢での感染拡大が続く中、米国でのインフルエンザも大きな注目を集めている。毎年の...

AIを活用した自動化はエンタープライズレベルの自動化2.0です

新たな常態に対応するために自動化プロセスを拡大多くの企業は、ニューノーマルに対処するための重要な技術...

自動化されたAIで予期せぬ収益機会を発見

急速に変化する今日の市場で競争力を維持するために、企業は次の大きな成長機会や運用上の優位性を発見する...

...

Microsoft TensorFlow-DirectML 正式版リリース: WSL での GPU による機械学習の高速化

IT Homeは9月12日、Microsoftが最近、Windows Subsystem for L...

...

ゲームオーバー?強いAIと弱いAIの戦い

数週間前、Googleの人工知能(AI)子会社DeepMindが、Gato(同じトレーニング済みモデ...

...