AutoDL の仕組み

典型的なディープ ラーニング (DL) プロジェクト ワークフローでは、初めに業務上の問題を特定し、問題点の定義または質問を作成します。 続いて、データ準備 (または前処理)、モデル トレーニング、ハイパーパラメーターの調整、モデルの評価などの一連のステップを行います。 このプロセスが反復され、多くの場合、最適なモデルは複数の反復と実験の後にしか得られません。

ディープ ラーニング ワークフロー

データに最適なモデルに特定するには、DL プロセス全体で多くの時間、労力、専門知識を必要とします。 [AutoDL を使用したトレーニング (Train Using AutoDL)] ツールは、このワークフローを自動化し、そのデータに最も適合するハイパーパラメーター セットを使用して最適なニューラル ネットワークを特定します。 以下に、DL プロセスの各ステップについて詳細に説明します。

AutoDL を使用したトレーニングのワークフロー

[AutoDL を使用したトレーニング (Train Using AutoDL)] ツールは次の処理を自動化します。

  • データ拡大 - DL プロジェクトを成功させるには、特定の問題に対応する高品質な入力データが大量に必要です。 ただし、実際には、分類およびラベル付与済みデータを大量に取得するのは困難です。 データ拡大手法は、データの量およびデータの密度を増やして実世界のデータに似せるために適用されます。 データ拡大には、ジオメトリック変換、反転、トリミング、変換、ノイズ注入などがあり、いずれも、DL の実行者によるかなりの時間と労力を必要とする可能性があります。 このステップは通常、時間と手間がかかり、分野固有の詳細な知識と経験が必要な場合があります。
  • 自動バッチ サイズ推論 - [ディープ ラーニングを使用したトレーニング データのエクスポート (Export Training Data Using Deep Learning)] ツールの出力は、ディープ ラーニング トレーニング データセットを含むフォルダーです。 このエクスポートされたデータには、使用可能な計算リソースに基づいて一括で送信する必要がある大量の画像が含まれます。 このツールは、使用可能なリソースに基づいて、ディープ ラーニング モデルのトレーニングに最適なバッチ サイズを計算するプロセスを自動化します。
  • モデルのトレーニングとモデル選択 - モデルのトレーニング ステップでは、DL 実行者は、問題とデータ特性に基づいて適切な DL ネットワークを選択します。 次に、データに適合するようにモデルをトレーニングする反復プロセスを開始します。このプロセスには多くの場合、複数の異なる DL ニューラル ネットワークによる実験が含まれます。 これらのアルゴリズムにはそれぞれ、多数の異なるハイパーパラメーターがあります。ハイパーパラメーターは、DL 実行者によって手動で指定される値で、モデルが学習する方法をコントロールします。 次に、指定されたハイパーパラメーターは、アルゴリズムのパフォーマンスを改善し、より最適な結果を達成できるよう調節 (調整) されます。 これは、DL 実行者の時間と専門知識が必要な反復プロセスです。 各種ニューラル ネットワーク モデルには、SingleShotDetector、RetinaNet、YoloV3、FasterRCNN、MMDetection などのオブジェクト検出モデルがあります。 UnetClassifier、PSPNetClassifier、DeepLab、MMSegmentation モデルなどのピクセル分類モデルはどのデータでも適切に機能します。 特定のデータセットでどのモデルがうまく機能するかを予測することは難しいので、データに最適なモデルを決定する前に、すべてのモデルを試して各パフォーマンスを比較する必要があります。
  • ハイパーパラメーターの調整 - これより前のステップのほとんどは反復プロセスでしたが、機械学習モデルのトレーニングで最も面倒なステップになることが多いのは、ハイパーパラメーターの調整です。

    ハイパーパラメーターは、各モデルに付属するレバーと考えることができます。 モデルのトレーニングで使用されるハイパーパラメーターには、学習率と適切なバックボーンの推定が含まれます。

  • モデルの評価 - DL ワークフローの最後のステップは、モデルの評価です。このステップでは、トレーニングおよび調整された DL ニューラル ネットワークが、適合しなかったデータに対して適切に一般化されることを検証します。 この見えないデータは通常、検証セットまたはテスト セットと呼ばれ、モデルのトレーニングに使用される残りのデータとは別に保持されます。 この最後のステップの目標は、DL ネットワークが確実に、新しいデータで許容可能な予測精度を達成することです。
  • DL ワークフローでは、さまざまな程度の人的入力、意思決定、および選択がすべてのステップで行われています。

    • 問題に対応するための適切なデータを収集したか?また、データは十分か?
    • データのコンテキストでバックグラウンド クラスを示すのは何か?
    • ラベルが誤っているデータが見つかった場合、何と置き換えるか?
    • いくつのエポックに対して DL モデルをトレーニングすべきか?
    • どの DL ニューラル ネットワークを使用したらよいか?
    • 許容できるモデルのパフォーマンス レベルはどの程度か?
    • 所定のモデルで、ハイパーパラメーターの最適な組み合わせは何か?

この最後の決定には、反復可能なハイパーパラメーターについて数百または数千の組み合わせが含まれる可能性があります。 複数の DL ネットワークをトレーニングおよび調整すると、プロセス全体が管理しにくく非生産的になり始めます。 さらに、DL ワークフローの複数のステップで、データ サイエンス技術、統計、およびディープ ラーニング アルゴリズムに関する専門的な技術の理解が必要です。 そのため、DL プロジェクトの設計と実行は、時間と多くの労力を要し、コストがかかり、多くの場合は、トレーニングされた DL 実行者とデータ サイエンティストに大きく依存する可能性があります。

この 10 年間で、ディープ ラーニングは、それが適用されるアプリケーションの範囲と、機械学習で生み出された新しい研究の量の両方で、劇的な成長を遂げてきました。 この成長の背後にある最大の原動力には、DL アルゴリズムと手法自体の成熟、アルゴリズムで学習するための大量データの生成と増大、アルゴリズムを実行するための多数の安価なコンピュート、DL アルゴリズムが複雑なデータ構造と問題に対処できる企業での意識の高まりなどがあります。

多くの組織は、DL を使用してデータを活用し、そこから実用的な新しい洞察を得ようと考えていますが、潜在的な DL アプリケーションの数と、それらに対処するためのトレーニングを受けた専門家の DL 実行者の数との間に不均衡があります。 その結果、DL を組織全体で広くアクセスできるようにし、DL 以外の専門家や分野の専門家がすぐに使用できるツールを作成することで、組織全体で DL を民主化する必要性が高まっています。

近年、すべての経験およびスキル レベルにわたって組織内の DL に対する膨大な需要に対処する方法として、自動ディープ ラーニング (AutoDL) が登場しました。 AutoDL は、データの準備、データ拡大、モデルの選択、ハイパーパラメーターの調整、モデルの評価など、DL ワークフローを可能な限り自動化 (人手による入力の削除) する単体システムを作成することを目的としています。 自動化システムの作成は、DL への参入障壁を下げることから非専門家にとって有益になり得ますが、DL ワークフローで最も手間で時間のかかる手順のいくつかを取り除くという点で、訓練を受けた DL 実行者にとっても有益になり得ます。

非 DL 専門家 (分野の専門家である GIS アナリスト、ビジネス アナリスト、またはデータ アナリスト) 向けの AutoDL - AutoDL を使用する主な強みは、最も技術的な専門知識と理解を必要とする DL ワークフローの一部のステップを省けることです。 分野の専門家であるアナリストは、ビジネス上の問題を定義して適切なデータを収集し、残りの作業をコンピューターに学習させることができます。 データ クリーニングや拡大のためのデータ サイエンス技術を深く理解する必要はありません。また、すべての DL ニューラル ネットワークが行う処理を知る必要も、さまざまなネットワークやハイパーパラメーター構成を探索する時間を費やす必要もありません。 代わりに、アナリストたちは、DL ワークフロー自体は意識せず、特定分野の専門知識を特定のビジネス上の問題やドメイン アプリケーションに適用することに集中できます。 さらに、多くの場合コーディングの経験を必要とせずに高度なモデルを独自に構築して使用できるため、トレーニングを受けた組織のデータ サイエンティストや DL 技術者への依存度が低くなります。

DL 専門家 (データ サイエンティストまたは DL 技術者) 向けの AutoDL - AutoDL は、DL 専門家にとっても非常に有益ですが、理由がそれほど明白ではない場合があります。 一例としては、DL 専門家は、組織内の分野の専門家をサポートするために多くの時間を費やす必要がないので、固有のより高度な DL 作業に集中できます。 DL 専門家の DL プロジェクトに関して言えば、AutoDL は大幅な時間の節約と生産性の向上を可能にします。 データ拡大、モデルの選択、ハイパーパラメーターの調整など、DL ワークフローでの時間のかかるステップの多くは自動化できます。 これらの予備的な反復ステップの多くを自動化することによって節約された時間は、代わりに、より高度な技術的タスやより多くの人的入力を必要とするタスク (分野の専門家との共同作業、ビジネス上の問題の理解、DL の結果の解釈など) に費やすことができます。

時間節約に加え、AutoDL では、DL ワークフローに伴う主観的な選択や実験の一部が省かれるので、DL 実行者の生産性向上にも役立ちます。 たとえば、新しいプロジェクトに取り組む DL 実行者は、作成すべき新しいフィーチャ、特定の問題に最適な DL ネットワーク、最適なハイパーパラメーターなどを特定するためのトレーニングを受け、専門知識を持っています。 ただし、特定の新しいフィーチャの構築を見落とす場合や、DL ワークフローの実行中に使用できるハイパーパラメーターの組み合わせをすべて試すことができない場合があります。 さらに、DL 実行者は、以前の作業やそれまでに経験した他の DL アプリケーションでの成功に基づいて特定の DL ネットワークを好むため、フィーチャ選択プロセスやアルゴリズムの選択にバイアスが生じる可能性があります。 実際には、1 つの DL アルゴリズムがすべてのデータセットで最高のパフォーマンスを発揮するわけではありません。特定の DL アルゴリズムは他のアルゴリズムよりもハイパーパラメーターの選択の影響を大きく受けます。多くのビジネス上の問題には、それらの問題の解決に使用される DL アルゴリズムの解釈可能性に対し、さまざまな程度の複雑さと要件があります。 AutoDL は、同じデータセットに多くの異なる DL ネットワークを適用し、いずれのパフォーマンスが最も高いかを判断することで、この人間のバイアスの一部を減らすことができます。

DL 実行者にとって、AutoDL は、DL プロジェクトの最初の開始点またはベンチマークとしても機能します。 これを使用して、データセットのベースライン モデルを自動的に開発でき、特定の問題に対する一連の予備的な洞察を得ることができます。 ここから、入力データセットに特定のフィーチャを追加または削除するか、特定の DL ネットワークに重点を置いてそのハイパーパラメーターを微調整するかを決定できます。 この意味で、AutoDL は、トレーニングを受けた DL 実行者の最初の選択肢セットを絞り込む手段と見なすことができ、DL システム全体のパフォーマンスの向上に集中できます。 これは実際に非常によく使用されるワークフローです。DL 専門家は AutoDL を使用してデータ主導のベンチマークを開発し、専門知識を組み込んで結果を改善し、このベンチマークに基づいて構築します。

最終的には、組織で AutoDL を介して DL を民主化することで、分野の専門家は、ビジネスの問題に注意を向け、実用的な結果を得ることができ、より多くのアナリストは最適なモデルを構築できます。また、組織は、必要とする DL 専門家の雇用者数を減らすことができます。 また、トレーニングを受けた DL 実行者やデータ サイエンティストの生産性の向上により、専門知識が最も必要とされる他の多数のタスクに、専門知識を集中させることができます。

出力レポートの解釈

[AutoDL を使用したトレーニング (Train Using AutoDL)] ツールは、トレーニング済みディープ ラーニング パッケージ (.dlpk) を生成して、ツールの出力ウィンドウの一部としてリーダーボードも表示します。

リーダーボードには、評価したモデルとその指標値が表示されます。 オブジェクト検出問題のこのケースでは、平均精度スコアが最も高いモデルが最適なモデルと見なされ、ピクセル分類問題のケースでは精度が最も高いモデルが最適なモデルと見なされます。