出典: Yuer Hut、Data School THU
グラフィカルな機械学習アルゴリズム シリーズ 機械学習のコア知識と重要なモデルを鮮やかに説明し、アプリケーションの詳細をコードで説明します。
1. 機械学習の概要
1) 機械学習とは
人工知能は、人間の知能をシミュレート、拡張、拡張するための理論、方法、技術、およびアプリケーション システムを研究および開発する新しい技術科学です。これは一般的で幅広い概念であり、人工知能の最終的な目標は、コンピューターが人間の思考と行動をシミュレートできるようにすることです。
1950 年代頃、人工知能が台頭し始めましたが、データとハードウェア機器に制限されていたため、当時は開発が遅れていました。
機械学習(Machine learning) は人工知能のサブセットであり、人工知能を実現する方法の 1 つですが、それが唯一の方法ではありません。これは、コンピューターが人間の学習行動をシミュレートまたは実装して新しい知識やスキルを獲得し、既存の知識構造を再編成して自身のパフォーマンスを継続的に改善する方法を研究することを専門とする分野です。1980 年代に盛んになり、数学や統計学に関連する機械学習モデルが数多く生まれました。
ディープ ラーニングは、人間の脳にインスパイアされた機械学習のサブセットであり、人間の脳に存在する同様の構造を模倣する人工ニューラル ネットワーク (ANN) で構成されています。深層学習では、相互接続された「ニューロン」の深く多層的な「ネットワーク」を通じて学習が行われます。「深さ」という言葉は通常、ニューラル ネットワークの隠れ層の数を指します。2012 年以降に爆発的に普及し、多くのシナリオで広く使用されます。
海外の著名な学者による機械学習の定義を見てみましょう。
機械学習では、コンピューターが人間の学習行動をシミュレートして新しい知識やスキルを獲得し、既存の知識構造を再編成して自身を継続的に改善する方法を研究します。
実用的な意味では、機械学習はビッグデータによってサポートされており、機械が「自己学習」のためにデータの詳細な統計分析を実行できるようにするさまざまなアルゴリズムを通じて、人工知能システムが帰納的推論と意思決定機能を取得できるようにします。
従来の スパム フィルタリング アプリケーションを通して、機械学習の原理と、定義内の T、E、および P が何を指すかを理解しましょう。
2) 機械学習の 3 つの要素
機械学習の 3 つの要素には、データ、モデル、およびアルゴリズムが含まれます。これら 3 つの要素の関係は、次の図で表すことができます。
(1) データ
データドリブン:データドリブンとは、客観的な定量データに基づく積極的なデータ収集と分析を通じて、意思決定をサポートすることを意味します。反対は、私たちがよく言う「頭を叩く」など、経験に基づくものです。
(2) モデルとアルゴリズム
モデル: AI データ駆動型のカテゴリでは、モデルはデータ X に基づいて意思決定 Y を行う仮説関数を参照し、さまざまな形式、計算タイプ、ルール タイプなどを持つことができます。
アルゴリズム:学習モデルの具体的な計算方法を指します。統計学習は訓練データセットに基づいており、学習戦略に従って、仮説空間から最適なモデルが選択されます.最後に、最適なモデルを解決するためにどのような計算方法を使用するかを検討する必要があります. 通常は最適化の問題です。
3) 機械学習の発展史
人工知能という用語は、1956 年に、いくつかの問題に対する効果的な解決策を探るために初めて登場しました。1960 年、米国国防総省は「ニューラル ネットワーク」の概念を使用して、人間の推論を模倣するようにコンピューターを訓練しました。
2010 年以前に、Google や Microsoft などのテクノロジの巨人は、機械学習アルゴリズムを改善し、クエリの精度を新しいレベルに引き上げました。その後、データ量、高度なアルゴリズム、コンピューティングおよびストレージ容量の増加に伴い、機械学習がさらに発展しました。
4) 機械学習のコア技術
分類:アプリケーションは、分類されたデータをモデルのトレーニングに使用し、モデルに従って新しいサンプルを正確に分類および予測します。
クラスタリング:大量のデータからデータの類似点と相違点を特定し、最大の共通性に従って複数のカテゴリに集約します。
異常検出:データ ポイントの分布を分析し、正常なデータと大きな差がある外れ値を特定します。
回帰:既知の属性値データのトレーニングに従って、モデルに最適なパラメーターを見つけ、モデルに基づいて新しいサンプルの出力値を予測します。
5) 機械学習の基本的な流れ
機械学習ワークフロー (ワークフロー) には、データの前処理 (処理)、モデル学習 (学習)、モデル評価 (評価)、および新しいサンプル予測 (予測) といういくつかのステップが含まれます。
データの前処理:入力 (未処理データ + ラベル) → 処理 (特徴処理 + 振幅スケーリング、特徴選択、次元削減、サンプリング) → 出力 (テスト セット + トレーニング セット)。
モデル学習:モデルの選択、交差検証、結果の評価、ハイパーパラメーターの選択。
モデル評価:データセット テストに対してモデルがどのようにスコア付けされたかを調べます。
新しいサンプル予測:テスト セットの予測。
6) 機械学習の応用シナリオ
一連のデータ駆動型手法として、機械学習は、データ マイニング、コンピューター ビジョン、自然言語処理、生体認証、検索エンジン、医療診断、クレジット カード詐欺の検出、証券市場分析、DNA シーケンス シーケンス、スピーチで広く使用されています。手書き認識とロボット工学。
スマートヘルスケア:スマート義肢、外骨格、ヘルスケアロボット、手術ロボット、スマート健康管理など
顔認識:アクセス制御システム、出席システム、顔認識盗難防止ドア、電子パスポートと ID カード、および顔認識システムとネットワークを使用して、全国の逃亡者を検索することもできます。
ロボット制御の分野:産業用ロボット、ロボットアーム、多脚ロボット、掃除ロボット、ドローンなど
2. 機械学習の基本用語
教師あり学習: トレーニング セットにはラベル付きの情報があり、学習方法には分類と回帰が含まれます。
教師なし学習: トレーニング セットにはラベル情報がなく、学習方法にはクラスタリングと次元削減が含まれます。
強化学習: フィードバック ラベルが遅れてまばらになる学習方法。
例/サンプル:上記のデータ セットの一部のデータ。
属性・特徴:「色」「根」など
属性空間/サンプル空間/入力空間 X:すべての属性がまたがる空間。
固有ベクトル:空間内の各点に対応する座標ベクトル。
ラベル:((色=緑、根=カール、ノック音=大きい)、良いメロン)などのサンプル結果に関する情報。「良いメロン」はラベルと呼ばれます。
分類:「良いメロン」と「悪いメロン」などの離散値を予測する場合、このタイプの学習タスクは分類と呼ばれます。
仮説:学習したモデルは、データに関するいくつかの基本的な法則に対応しています。
真実:根底にある法律そのもの。
学習プロセス:真実を見つけたり、近づいたりすること。
一般化能力:学習したモデルを新しいサンプルに適用する能力。一般的に言えば、訓練サンプルが大きいほど、学習によって汎化能力の強いモデルが得られる可能性が高くなります。
3. 機械学習アルゴリズムの分類
1) 機械学習アルゴリズムに基づく問題シナリオ
過去 30 年間で、機械学習は、確率論、統計学、近似理論、凸解析、計算複雑性理論、およびその他の分野を含む多分野の学際的な主題に発展しました。機械学習理論は、主にコンピューターが自動的に「学習」できるようにするアルゴリズムを設計および分析することです。
機械学習アルゴリズムは、データから法則を自動的に分析して取得し、その法則を使用して未知のデータを予測します。
機械学習理論は、達成可能で効果的な学習アルゴリズムに関係しています。多くの推論問題はプログラムできないため、機械学習の研究の一部は扱いやすい近似アルゴリズムの開発です。
機械学習の主なカテゴリは、教師あり学習、教師なし学習、強化学習です。
教師あり学習:与えられたトレーニング データ セットから関数を学習し、新しいデータが到着すると、この関数に従って結果を予測できます。教師あり学習のトレーニング セットの要件は、入力と出力を含めることであり、これは特徴とターゲットとも言えます。トレーニング セット内のオブジェクトには、人間によって注釈が付けられます。一般的な教師あり学習アルゴリズムには、回帰分析と統計的分類が含まれます。
教師あり学習のアルゴリズム モデルの概要については、ShowMeAI の記事 AI Knowledge and Skills Quick Check | Machine Learning-Supervised Learning をご覧ください (公式アカウントはリダイレクトできません。この記事の最後にあるリンクを参照してください)。
教師なし学習:教師あり学習とは対照的に、トレーニング セットには人間がラベル付けした結果はありません。一般的な教師なし学習アルゴリズムには、生成的対立ネットワーク (GAN) とクラスタリングが含まれます。
教師なし学習のアルゴリズム モデルの概要については、ShowMeAI の記事 AI Knowledge Skills Quick Check | Machine Learning - Unsupervised Learning を参照してください。
強化学習:観察することで行動を学ぶ。すべての行動は環境に影響を与え、学習オブジェクトは周囲の環境からの観察されたフィードバックに基づいて判断を下します。
2) 分類問題
分類問題は、機械学習の非常に重要な部分です。その目標は、既知のサンプルの特定の特性に基づいて、新しいサンプルがどの既知のサンプル クラスに属しているかを判断することです。分類の問題は、次のように分類できます。
2 カテゴリの問題:既知のサンプル クラスが属する分類タスクに新しいサンプルの 2 つのクラスがあることを示します。
多クラス分類(Multiclass classification) 問題: 分類タスクに複数のカテゴリがあることを示します。
マルチラベル分類の問題: 各サンプルに一連のターゲット ラベルを付けます。
機械学習分類アルゴリズムの詳細: KNN アルゴリズム、ロジスティック回帰アルゴリズム、単純ベイジアン アルゴリズム、デシジョン ツリー モデル、ランダム フォレスト分類モデル、GBDT モデル、XGBoost モデル、サポート ベクター マシン モデルなど。(公式アカウントはリダイレクトできません。この記事の最後にあるリンクを参照してください)
3) 回帰問題
機械学習回帰アルゴリズムの詳細: デシジョン ツリー モデル、ランダム フォレスト分類モデル、GBDT モデル、回帰ツリー モデル、サポート ベクター マシン モデルなど。
4) クラスタリング問題
機械学習クラスタリング アルゴリズムの詳細については、クラスタリング アルゴリズムをご覧ください。
5) 次元削減問題
機械学習の次元削減アルゴリズムについて詳しくは、PCA 次元削減アルゴリズムをご覧ください。
4. 機械学習モデルの評価と選択
1) 機械学習とデータ フィッティング
機械学習における最も典型的な教師あり学習は、分類と回帰の問題です。分類問題では、データの微分を完了するための「決定境界」を学習し、回帰問題では、サンプル分布に適合する曲線を学習します。
2) トレーニングセットとデータセット
関連する概念を説明するために、例として住宅価格の見積もりを取りましょう。
トレーニング セット(トレーニング セット): モデルのトレーニングを支援するには、簡単に言えば、トレーニング セットのデータからフィッティング カーブのパラメーターを決定することです。
テスト セット(テスト セット): トレーニング済みモデルの精度をテストするため。
もちろん、テスト セットはモデルの正しさを保証するものではありません。これは、同様のデータがこのモデルで同様の結果を得ることを意味するだけです。モデルをトレーニングするとき、パラメーターはすべて既存のトレーニング セットのデータに従って修正および適合されるため、オーバーフィッティングが発生する可能性があるため、つまり、このパラメーターはトレーニング セットのデータに対してのみより正確です。これはモデルによって予測する必要があり、精度が低い可能性があります。
3) 経験の誤り
トレーニング セットのデータに対して学習が実行されます。トレーニング セット上のモデルのエラーは「経験的エラー」と呼ばれます。しかし、経験的な誤差は可能な限り小さくはありません。なぜなら、私たちは新しいデータや目に見えないデータで良い予測結果を得たいからです.
4) オーバーフィッティング
オーバーフィッティングとは、モデルがトレーニング セットで適切に機能することを意味しますが、交差検証セット テスト セットでのパフォーマンスは平均的です。つまり、未知のサンプルでのモデルの予測パフォーマンスは平均的であり、一般化能力が低いことを意味します。
過学習を防ぐには? 一般的な方法には、Early Stopping、Data Augmentation、正則化、Dropout などがあります。
正則化:目的関数の後に正則化項目を追加することを指し、一般に L1 正則化と L2 正則化があります。L1 正則化は L1 ノルムに基づいています。つまり、パラメータの L1 ノルム和項が目的関数の後に追加されます。つまり、パラメータとパラメータの絶対値和の積項です。
データセットの拡張:つまり、要件を満たすデータをさらに取得する必要があります。つまり、既存のデータと独立して同一に分散されているか、またはほぼ独立して同一に分散されています。一般的な方法は、データソースからより多くのデータを収集する、元のデータをコピーしてランダムノイズを追加する、リサンプリングする、現在のデータセットに基づいてデータ分布パラメータを推定する、分布を使用してより多くのデータを生成する、などです。
DropOut:ニューラルネットワーク自体の構造を変更することで実現。
5) 偏差
バイアス。通常、モデル フィッティングの偏差の程度を指します。無限の数のトレーニング セットが与えられた場合に適合すると予想されるモデルは、平均モデルです。バイアスは、真のモデルと平均モデルの差です。
単純なモデルは一連の直線であり、平均化後に得られた平均モデルは直線の破線であり、これは実際のモデル曲線 (大きな影付きの灰色) とは大きく異なります。したがって、単純なモデルはしばしば非常に偏っています。
複雑なモデルは、変動の大きい波線のグループです. 平均化すると、最大グループと最小グループが互いに打ち消し合い、実際のモデルとの曲線の差が小さいため、通常、複雑なモデルの偏差は低くなります (黄色の部分を参照)曲線と緑の点線はほぼ一致します)。
6) 差異
通常、モデルの滑らかさ (単純さ) を指します。単純モデルの対応する関数はまったく同じで、すべて水平直線であり、平均モデルの関数も水平直線であるため、単純モデルの分散は小さく、データの変化に敏感ではありません.
複雑なモデルの対応する関数は規則のないあらゆる種類の奇妙なものですが、平均的なモデルの関数も滑らかな曲線であるため、複雑なモデルの分散は大きく、データの変化に非常に敏感です。 .
7) 偏りと分散のバランス
8) パフォーマンス指標
パフォーマンス メトリックは、モデルの一般化能力を測定し、当面の問題 (タスク要件) を反映する数値評価基準です。異なるパフォーマンス指標を使用すると、異なる判断結果が生じる可能性があります。より詳細な内容は、モデルの評価方法とガイドラインに記載されています (記事の最後にあるリンクを参照してください)。
(1) 回帰問題
モデルの「良し悪し」の判断は、アルゴリズムとデータだけでなく、現在のタスク要件にも依存します。回帰問題で一般的に使用されるパフォーマンス メトリックは、平均絶対誤差、平均二乗誤差、二乗平均平方根誤差、R 二乗などです。
平均絶対誤差(Mean Absolute Error、MAE) は、平均絶対偏差とも呼ばれ、すべてのラベル値と回帰モデルの予測値との間の偏差の絶対値の平均です。
平均絶対パーセント誤差(Mean Absolute Percentage Error、MAPE) は、真の値に対する絶対誤差の比率を考慮して、MAE を改善したものです。
平均二乗誤差(Mean Square Error, MSE) 平均絶対誤差に対する平均二乗誤差は、すべてのラベル値と回帰モデルの予測値との偏差の二乗の平均です。
標準誤差とも呼ばれる二乗平均平方根誤差(二乗平均平方根誤差、RMSE) は、平均二乗誤差に基づく平方根演算です。RMSE は、観測値と真の値の間の偏差を測定するために使用されます。
決定係数である R 2 乗は、現在の回帰モデルを通じて、モデル内の独立変数によって説明できる従属変数のすべての分散の割合を反映しています。比率が 1 に近いほど、現在の回帰モデルはデータをより適切に説明でき、データの真の分布をより正確に説明できます。
(2) 分類問題
分類問題で一般的に使用されるパフォーマンス メトリックには、エラー率、精度、精度、再現率、F1、ROC 曲線、AUC 曲線、R 二乗などがあります。より詳細な内容は、モデルの評価方法とガイドラインに記載されています (記事の最後にあるリンクを参照してください)。
エラー率:サンプルの総数に対する誤分類されたサンプルの割合。
精度:サンプルの総数に対する正しく分類されたサンプルの割合。
精度率(精度率とも呼ばれます)、つまり、取得後に返された結果のうち、正しいと思われる結果に対する真に正しい数値の割合。
再現率(再現率とも呼ばれます)。つまり、取得結果の真の正解数とデータセット全体 (取得済みおよび未取得) の真の正解数の比率です。
F1は適合率と再現率を総合的に考慮した尺度であり、適合率と再現率の調和平均の定義、つまり F1 尺度-Fβ の一般形に基づいており、適合率、再現率 異なる好みのフルレート。
ROC曲線(Receiver Operating Characteristic Curve)の正式名称は「Receiver Operating Characteristic Curve」です。確率的予測ランキングの品質は、さまざまなタスクの下での学習者の「期待される汎化パフォーマンス」を反映して総合的に考慮されます。ROC曲線の縦軸は「真陽性率」(TPR)、横軸は「偽陽性率」(FPR)です。
AUC (ROC 曲線下の面積) は、ROC 曲線の下の面積であり、サンプル予測のソート品質を表します。
比較的高い観点から AUC を理解する: 引き続き異常なユーザーの識別を例にとると、AUC 値が高いということは、モデルができるだけ多くの異常なユーザーを識別できる場合でも、正常なユーザーのエラー率が低いことを意味します。異常なユーザーを特定するために、多数の正常なユーザーを異常と誤認することはありません。
9) 評価方法
手元に未知のサンプルがありませんが、どうすれば確実に評価できますか? 重要なのは、信頼できる「テスト セット データ」(テスト セット) を取得することです。つまり、テスト セット (評価用) は、トレーニング セット (モデル学習用) と「相互に排他的」でなければなりません。
一般的な評価方法には、ホールドアウト、クロス検証、およびブートストラップが含まれます。より詳細な内容は、モデルの評価方法とガイドラインに記載されています (記事の最後にあるリンクを参照してください)。
Hold-out メソッド(Hold-out) は、機械学習で最も一般的な評価方法の 1 つです. トレーニング データからの検証サンプル セットを保持します. データのこの部分は、トレーニングには使用されませんが、モデルの評価に使用されます.
機械学習では、もう 1 つの一般的な評価方法としてクロス検証(Cross Validation) があります。K-fold cross-validation は、k 個の異なるグループのトレーニング結果を平均して分散を減らすため、モデルのパフォーマンスはデータの分割にそれほど敏感ではなく、データの使用はより十分になり、モデルの評価結果はより多くなります。安定。
ブートストラップは、小さなサンプルで人口値を推定するためのノンパラメトリックな方法で、進化や生態学の研究で広く使用されています。
Bootstrap は、置換サンプリングによって多数の疑似サンプルを生成し、疑似サンプルを計算して統計の分布を取得し、データの全体的な分布を推定します。
10) モデルのチューニングと選択基準
現在の問題に対して、表現力が高く、モデルの複雑さが低いモデルを見つけたいと考えています。
優れた表現力を持つモデルは、トレーニング データのルールとパターンをよりよく学習できます。
複雑度の低いモデルは、分散が小さく、オーバーフィットしにくく、汎化表現が優れています。
11) 最適なモデルの選び方
(1) バリデーションセットの評価選択
データをトレーニング セットと検証セットに分割します。
準備された候補ハイパーパラメータについて、トレーニング セットでモデル化し、検証セットで評価します。
(2) グリッドサーチ/ランダムサーチクロスバリデーション
グリッド検索/ランダム検索を介してハイパーパラメーターの候補セットを生成します。
パラメーター セット内のハイパーパラメーターの各セットについて、クロス検証を使用してパフォーマンスが評価されます。
最も効果的なハイパーパラメータを選択します。
(3) ベイジアン最適化
ベイジアン最適化に基づくハイパーパラメータ調整。
終わり
Imagination GPU と人工知能のコミュニケーション グループ 2 へようこそ
グループに参加して、編集者の WeChat を追加してください: eetrend89
(会社名と役職を追記してください)
推奨読書
Imagination China 会長との対話: GPU を支点としてソフトウェアとハードウェアの連携を強化し、デジタル トランスフォーメーションを促進する
Bainong: Imagination は、自動車用半導体 IP 技術の革新と応用の促進に引き続き取り組んでいきます。
Imagination Technologies は 、チップとソフトウェアの知的財産 (IP) の研究開発を専門とする英国を拠点とする企業で、Imagination IP に基づく製品は、世界中の何十億もの人々の電話、自動車、家庭、職場で使用されています。モノのインターネット、スマート ウェアラブル、通信、自動車用電子機器、グラフィックスや画像開発などの最先端技術の詳細については、Imagination Tech へようこそ!