Python 転移学習: 機械学習アルゴリズム

Python 転移学習: 機械学習アルゴリズム

機械学習は、非常に幅広い領域をカバーする人工知能の人気のあるサブフィールドです。その人気の理由の 1 つは、その戦略の基盤となる洗練されたアルゴリズム、テクニック、方法論の包括的なツールボックスが存在することです。ツールボックスは長年にわたって開発、改良されており、新しいツールボックスが常に研究されています。機械学習ツールボックスをより有効に活用するには、まず機械学習の次の分類方法を理解する必要があります。

[[358137]]

人間による監視の有無による分類は以下のとおりです。

  • 教師あり学習。このカテゴリは、人間の監督に大きく依存します。教師あり学習のカテゴリに属する​​アルゴリズムは、2 つの変数とトレーニング データからの対応する出力間のマッピングを学習し、このマッピングをこれまでに見たことのないデータに適用します。分類タスクと回帰タスクは、教師あり学習アルゴリズムの 2 つの主なタスク タイプです。
  • 教師なし学習。このようなアルゴリズムは、関連する出力やラベルなしで(人間の監督下で)入力データから基礎となる潜在的な構造、パターン、関係性を学習しようとします。クラスタリング、次元削減、関連ルールのマイニングなどのタスクは、教師なし学習アルゴリズムの主なタスクの種類です。
  • 半教師あり学習。このタイプのアルゴリズムは、教師あり学習アルゴリズムと教師なし学習アルゴリズムのハイブリッドです。このカテゴリのアルゴリズムは、少量のラベル付きトレーニング データと大量のラベルなしトレーニング データを使用するため、特定の問題を解決するには、教師あり学習と教師なし学習の方法を創造的に使用する必要があります。
  • 強化学習。このタイプのアルゴリズムは、教師あり学習アルゴリズムや教師なし学習アルゴリズムとは少し異なります。強化学習アルゴリズムの中心となるのはエージェントであり、トレーニング中に環境と対話して報酬を最大化します。エージェントは反復的に学習し、環境とのやり取りから受け取る報酬またはペナルティに基づいてポリシーを調整します。

データの可用性に基づく分類は次のとおりです。

  • バッチ学習。オフライン学習とも呼ばれるこのタイプのアルゴリズムは、必要なトレーニング データが利用可能な場合に使用でき、また、モデルを本番環境や実際の環境に展開する前にトレーニングして微調整するためにも使用できます。
  • オンライン学習。名前が示すように、このタイプのアルゴリズムでは、データが利用可能である限り学習が継続されます。また、このようなアルゴリズムでは、データは小さなバッチでシステムに入力され、次のトレーニングでは新しいバッチのデータが使用されます。

上で説明した分類方法は、機械学習アルゴリズムを整理、理解、活用する方法を抽象的に理解するのに役立ちます。機械学習アルゴリズムの最も一般的な分類方法は、教師あり学習アルゴリズムと教師なし学習アルゴリズムです。これら 2 つのカテゴリについてさらに詳しく説明します。これにより、後で説明するより高度なトピックを理解するのに役立ちます。

1.2.1 教師あり学習

教師あり学習アルゴリズムは、データ サンプル (トレーニング サンプルとも呼ばれる) と対応する出力 (またはラベル) を使用して、両者間のマッピング関数を推測するアルゴリズムのクラスです。推定マッピング関数または学習された関数は、このトレーニング プロセスの出力です。学習した関数は、新しいデータ ポイントやこれまでに見たことのないデータ ポイント (つまり、入力要素) を正しくマッピングして、関数自体のパフォーマンスをテストできます。

教師あり学習アルゴリズムのいくつかの主要な概念の概要は次のとおりです。

  • トレーニングデータセット。トレーニング プロセスで使用されるトレーニング サンプルと対応する出力は、トレーニング データと呼ばれます。正式には、トレーニング データセットは、入力要素 (通常はベクトル) と対応する出力要素または信号で構成される 2 つのタプルです。
  • テストデータセット。学習した関数のパフォーマンスをテストするために使用される未知のデータセット。このデータセットも、入力データ ポイントと対応する出力信号を含む 2 つのタプルです。このセットのデータ ポイントはトレーニング フェーズでは使用されません (このデータセットはさらに検証セットに分割されますが、これについては後続の章で詳しく説明します)。
  • 学習機能。これはトレーニング フェーズの出力であり、推定関数またはモデルとも呼ばれます。関数は、トレーニング データセット内のトレーニング インスタンス (入力データ ポイントとそれに対応する出力) に基づいて推論されます。理想的なモデルまたは学習関数は、これまでに見たことのないデータにも一般化されるマッピングを学習します。

利用できる教師あり学習アルゴリズムは多数あります。使用要件に基づいて、主に分類モデルと回帰モデルに分けられます。

1. 分類モデル

簡単に言えば、分類アルゴリズムは客観的な質問に答えたり予測を行ったりするのに役立ちます。たとえば、これらのアルゴリズムは、「今日は雨が降るだろうか?」や「この腫瘍は癌になる可能性が高いだろうか?」といったシナリオで役立ちます。

正式に言えば、分類アルゴリズムの主な目標は、入力データ ポイントに基づいて本質的にカテゴリ的な出力ラベルを予測することです。出力ラベルは本質的にカテゴリ的であり、つまり個別のクラスまたはカテゴリに属します。

ロジスティック回帰、サポートベクターマシン (SVM)、ニューラルネットワーク、ランダムフォレスト、K 最近傍 (KNN)、決定木などのアルゴリズムはすべて一般的な分類アルゴリズムです。

さまざまな自動車モデルを評価するという実際のユースケースがあるとします。簡単にするために、モデルは複数の入力トレーニング サンプルに基づいて、各自動車モデルの出力が許容可能か許容不可能かを予測すると想定します。入力トレーニング サンプルの属性には、購入価格、ドアの数、収容人数 (人数)、セキュリティ レベルが含まれます。

クラス ラベルに加えて、各レイヤーの他の属性を使用して、各データ ポイントが許容可能かどうかを示します。図 1.3 は現在のバイナリ分類問題を示しています。分類アルゴリズムは、トレーニング サンプルを入力として受け取り、教師ありモデルを生成し、それを使用して新しいデータ ポイントのラベルを予測します。

図1.3

分類問題では、出力ラベルは個別のクラスであるため、出力クラスが 2 つしかない場合は、そのタスクはバイナリ分類問題と呼ばれ、それ以外の場合は、マルチクラス分類問題と呼ばれます。たとえば、明日雨が降るかどうかを予測することはバイナリ分類問題 (出力は「はい」または「いいえ」) であり、スキャンした手書き画像から数字を予測することは 10 個のラベルを持つマルチクラス分類問題 (可能な出力ラベルは 0 ~ 9) です。

2. 回帰モデル

このタイプの教師あり学習アルゴリズムは、「いくつあるか」などの定量的な質問に答えるのに役立ちます。正式に言えば、回帰モデルの主な目的は評価です。このタイプの問題では、出力ラベルは本質的に連続値です(分類問題のような離散出力ではありません)。

回帰問題では、入力データ ポイントは独立変数または説明変数と呼ばれ、出力は従属変数と呼ばれます。回帰モデルも、入力 (または独立変数) データ ポイントと出力 (または従属変数) 信号で構成されるトレーニング データ サンプルを使用してトレーニングされます。線形回帰、多変量回帰、回帰ツリーなどのアルゴリズムはすべて教師あり回帰アルゴリズムです。

回帰モデルは、従属変数と独立変数の関係をどのようにモデル化するかに基づいてさらに分類できます。

単純線形回帰モデルは、単一の独立変数と単一の従属変数を持つ問題に適しています。通常最小二乗 (OLS) 回帰は、一般的な線形回帰モデルです。多重回帰または多変量回帰とは、従属変数が 1 つのみ存在し、各観測値が複数の説明変数のベクトルである問題を指します。

多項式回帰モデルは、多重回帰の特殊な形式です。このモデルでは、独立変数の n 乗を使用して従属変数をモデル化します。多項式回帰モデルは従属変数と独立変数間の非線形関係を適合またはマッピングできるため、このタイプのモデルは非線形回帰モデルとも呼ばれます。

図1.4は線形回帰の例を示しています。

図1.4

さまざまな種類の回帰を理解するために、車の速度に基づいて車が移動した距離(単位は省略)を推定する実際の使用例を考えてみましょう。この問題では、既存のトレーニング データに基づいて、距離を車の速度の線形関数 (単位は省略) として、または車の速度の多項式関数としてモデル化できます。覚えておいてください、主な目標はトレーニング データ自体を過剰適合させることなくエラーを最小限に抑えることです。

上の図 1.4 は線形近似モデルについて説明しており、図 1.5 は同じデータ セットを使用した多項式近似モデルを示しています。

図1.5

1.2.2 教師なし学習

名前が示すように、教師なし学習アルゴリズムは、教師なしで概念を学習または推論します。教師あり学習アルゴリズムは、入力データ ポイントと出力信号で構成されるトレーニング データセットに基づいてマッピング関数を推測しますが、教師なし学習アルゴリズムのタスクは、出力信号なしでトレーニング データ内のパターンと関係を見つけることです。このようなアルゴリズムは、入力データセットを利用してパターンを検出し、ルールをマイニングしたり、データポイントをグループ化/クラスター化したりして、生の入力データセットから意味のある洞察を抽出します。

対応する出力信号またはラベルを含むトレーニング セットがない場合には、教師なし学習アルゴリズムが役立ちます。多くの現実のシナリオでは、データセットは出力信号なしで利用可能であり、手動でラベル付けすることは困難です。したがって、教師なし学習アルゴリズムはこれらのギャップを埋めるのに役立ちます。

教師あり学習アルゴリズムと同様に、教師なし学習アルゴリズムでも、理解と学習を容易にするために分類を実行できます。以下は、教師なし学習アルゴリズムのさまざまなカテゴリです。

1. クラスタリング

分類問題のための教師なし学習アルゴリズムはクラスタリングと呼ばれます。これらのアルゴリズムは、入力データセットやトレーニング データセットに出力ラベルを含めずに、データ ポイントをさまざまなグループやカテゴリにクラスタリングまたはグループ化するのに役立ちます。これらのアルゴリズムは、入力データセット内のパターンと関係を見つけようとし、固有の特徴を活用して、何らかの類似性尺度に基づいてそれらをグループ化します。

クラスタリングを理解するのに役立つ実際の例として、ニュース記事があります。毎日何百ものニュース記事が作成され、それぞれが政治、スポーツ、エンターテイメントなどのさまざまなトピックに焦点を当てています。クラスタリングは、図 1.6 に示すように、これらの記事をグループ化できる教師なし手法です。

クラスタリング プロセスを実行するにはさまざまな方法がありますが、最も一般的なものは次のとおりです。

  • 重心に基づく方法。たとえば、一般的な K-means アルゴリズムや K-medoids アルゴリズムなどです。
  • 凝集型および分割型の階層的クラスタリング手法。たとえば、一般的な Ward アルゴリズムやアフィン伝播アルゴリズムなどです。
  • データ分布に基づく方法。たとえば、ガウス混合モデル。
  • 密度ベースの方法。たとえば、ノイズを含む密度ベースの基本クラス メソッド (Density-Based Spatial Clustering of Applications with Noise、DBSCAN) などです。

図1.6

2. 次元削減

データと機械学習は最高の友達ですが、データが増えて大きくなると多くの問題が起こります。属性の数が多い場合や特徴空間が拡張されている場合は、よくある問題です。大きな特徴空間は、データ分析と視覚化の問題だけでなく、トレーニング、メモリ、および空間制約に関連する問題も引き起こします。この現象は次元の呪いと呼ばれています。教師なし手法は、ラベル付けされていないトレーニング データセットから洞察やパターンを抽出するのに役立つため、次元を削減するのに役立ちます。

言い換えれば、教師なし手法は、利用可能な完全なリストから代表的な特徴のセットを選択するのに役立ち、それによって図 1.7 に示すように、特徴空間を縮小するのに役立ちます。

図1.7

主成分分析 (PCA)、最近傍分析、判別分析は、一般的に使用される次元削減手法です。

図 1.7 は、PCA ベースの次元削減手法がどのように機能するかを説明する有名な図です。画像の左側は、3 次元空間でロールケーキとして表現できるデータのセットを示しており、画像の右側は、PCA を適用してデータを 2 次元空間に変換した結果を示しています。

3. 相関ルールマイニング

このような教師なし機械学習アルゴリズムは、トランザクション データセットからパターンを理解して抽出するのに役立ちます。これらのアルゴリズムはマーケットバスケット分析 (MBA) と呼ばれ、取引される商品間の興味深い関係を特定するのに役立ちます。

関連ルールマイニングを使用すると、「特定の店舗で一緒に購入される品目は何ですか?」や「ワインを購入する人はチーズも購入しますか?」などの質問に答えることができます。 FP-growth、ECLAT、Apriori は、関連ルール マイニング タスクで広く使用されているアルゴリズムです。

4. 異常検出

異常検出は、履歴データに基づいてまれなイベントまたは観察を識別するタスクであり、外れ値検出とも呼ばれます。異常な値または外れ値は通常、まれにしか発生しないか、短期間内に突然発生するという特徴があります。

このタイプのタスクでは、アルゴリズムに履歴データセットを提供し、教師なし方式でデータの通常の動作を識別して学習できるようにします。学習が完了すると、アルゴリズムは以前に学習した動作とは異なるパターンを認識するのに役立ちます。

<<:  製造業における人工知能の8つの応用シナリオ

>>:  企業に利益をもたらす 5 つの AI トレンド

ブログ    
ブログ    

推薦する

Megvii、AIイノベーションを加速させるため7億5000万ドルのシリーズD資金調達を完了

北京Megviiテクノロジー株式会社(以下、「Megvii」)は、シリーズDの株式資金調達の第2フェ...

...

...

2020年版ネイチャーインデックス年次リストが発表:中国の研究機関がリストを独占、中国科学院は8年連続で1位

科学研究機関の世界総合ランキングでは、中国科学院、中国科学技術大学、北京大学がトップ10にランクイン...

失敗が頻発する中、AI 翻訳者はどのように進歩の道を続けるべきでしょうか?

[[248512]]当時、英語に支配されていた恐怖を覚えている人がどれだけいるでしょうか?前日に覚...

中国人民大学高陵人工知能学院のネイチャーサブジャーナル:マルチモーダル基本モデルを使用して汎用人工知能への移行を試みている

最近、中国人民大学高陵人工知能学院の陸志武教授、孫昊准教授、温継栄学院長教授が共同責任著者として国際...

AI に適切なデータ戦略を構築するにはどうすればよいでしょうか?

適切なデータ戦略を使用して人工知能 (AI) を実装すると、データがシステムにシームレスに流れ込み、...

5分でPythonのランダムヒルクライミングアルゴリズムをマスターする

ランダム化ヒルクライミングは最適化アルゴリズムです。検索プロセスの一部としてランダム性を使用します。...

中国の新世代人工知能レポートが発表:中国はAI論文数で世界一

[[266390]] 5月24日、浦江イノベーションフォーラムで「中国の新世代人工知能発展報告書20...

ディープラーニングを使って夢に現れる物体を分析する

この記事の主な内容は機械学習と神経科学を組み合わせたものであり、読者にはこれら 2 つの方向に関する...

AI + リアルタイム監視技術が公共サービスを改善する10の方法

石油やガスの価格変動、運用コストの増加、サイバー/物理的な脅威の増大により、公益事業会社はセキュリテ...

AIがデジタル変革に与える影響

デジタルトランスフォーメーションは10年以上にわたってビジネス変革の中核を担ってきましたが、AIの台...

...