初心者向けガイド: 機械学習とディープラーニング

初心者向けガイド: 機械学習とディープラーニング

ウェッジ:

機械学習とディープラーニングは現在注目されており、突然多くの人がそれについて話していることがわかります。下図は機械学習とディープラーニングのトレンド比較です(Google トレンドより、縦軸は検索人気度を表しています)。

この記事では、シンプルでわかりやすい言葉と例を使って、ディープラーニングと機械学習の違いを詳しく説明し、関連する用途を紹介します。

機械学習とディープラーニング入門

機械学習

トム・ミッチェルによる広く引用されている機械学習の定義は次のとおりです。

ある種のタスク T とパフォーマンス メトリック P について、P によって測定される T でのパフォーマンスが経験 E によって向上する場合、コンピュータ プログラムは経験 E から学習していると言われます。

  • 「コンピュータプログラムは、タスクTとパフォーマンス測定Pに関して経験Eから学習するとは、Pで測定されるTのタスクのパフォーマンスが経験Eとともに向上する場合である。」

上記の抽象的な定義は混乱を招くかもしれませんが、次の簡単な例を見れば明らかになると思います。

[例1 身長から体重を予測する]

身長に基づいて人の体重を予測するシステムを作成したいとします。最初のステップは、データの収集です。データを収集したら、下図のようにデータ分布グラフを描きます。図の各点はデータを表し、水平軸は身長、垂直軸は体重を表します。

たとえば、身長から体重を予測するために単純な直線を描くことができます。

  1. 体重( kg )=身長( cm )-100

この直線が高さを正確に予測できる場合、そのパフォーマンスをどのように測定するのでしょうか? たとえば、予測値と実際の値の差によって予測モデルのパフォーマンスを測定できます。もちろん、ソース データが多ければ多いほど、モデルは良くなります。効果が良くない場合は、変数(性別など)を追加したり、予測ラインを変更したりするなど、他の方法を使用してモデルのパフォーマンスを向上させることができます。

【事例2 暴風雨予測システム】

嵐の予測システムを構築したいと考えており、過去の嵐のデータとその嵐の 3 か月前の気象データがあるとします。では、嵐予測システムはどのように構築するのでしょうか?

最初に行うべきことは、データをクリーンアップし、嵐の形成につながる条件など、データ内の隠れたパターンを見つけることです。温度が 40 度以上かどうか、湿度が 80 から 100 の間かどうかなどの条件をモデル化し、これらの特徴をモデルに入力することができます。

必要なのは、過去のデータを最大限に活用し、嵐が発生するかどうかを予測することだけです。この例では、メトリックは正しく予測された嵐の数です。予測プロセスを複数回繰り返し、パフォーマンス結果をシステムに報告することができます。

機械学習の本来の定義に戻ると、嵐予測システムを次のように定義します。タスク T は嵐を引き起こす大気条件を見つけること、パフォーマンス P はモデルパラメータを学習した後の正しい予測の数、経験 E はシステムの反復プロセスです。

ディープラーニング

ディープラーニングは実は随分前に登場したのですが、近年の盛り上がりにより、徐々に再び人気が出てきています。

ディープラーニングは、現実世界を入れ子になった階層的概念システム(一般的な抽象的な一般化から高レベルの抽象的な表現まで、より単純な概念間の接続によって複雑な概念が定義される)として表現する特殊なタイプの機械学習であり、強力なパフォーマンスと柔軟性を実現します。

  • ディープラーニングは、世界を概念のネストされた階層として表現することを学習することで、大きなパワーと柔軟性を実現する特別な種類の機械学習です。各概念はより単純な概念との関係で定義され、より抽象的な表現はより抽象度の低い概念に基づいて計算されます。

【例1 グラフィックス検出】

長方形を他の図形と区別したいとします。人間の目はまず、その形状に 4 つのエッジがあるかどうかを検出します (単純な概念)。 4 つのエッジがある場合は、それらが接続され、閉じられ、垂直であり、等しいかどうかを確認します (ネストされた階層の概念)。実際、複雑なタスク (長方形の認識) をいくつかの単純で低レベルのタスクに分解します。ディープラーニングは本質的にこれをはるかに大規模な規模で実行します。

[例2 猫か犬]

このケーススタディでは、写真に写っている動物が猫なのか犬なのかを認識できるシステムの構築について説明します。

この問題を解決するために機械学習を使用する場合、動物にひげや耳があるかどうか、耳がある場合は耳が尖っているかどうかなど、いくつかの特徴を最初に定義する必要があります。簡単に言えば、顔の特徴を定義し、動物を分類する上でどの特徴が重要かをシステムに識別させたいと思っています。ディープラーニングはこれらのタスクを一度に完了できます。ディープラーニングは分類タスクに重要な特徴を自動的に見つけますが、機械学習は手動で指定する必要があります。

ディープラーニングのワークフローは次のとおりです。

1. まず、画像内で猫または犬に最も関連のある境界を見つけます。

2. 次に、ひげや耳を見つけられるかどうかなど、形と境界の組み合わせを見つけます。

3. 複雑な概念を継続的に階層的に認識することで、猫と犬を識別する上で重要な特徴を判断できるようになります。

機械学習とディープラーニングの比較

データ依存性

ディープラーニングと従来の機械学習の最も重要な違いは、データ量に応じてパフォーマンスが向上することです。ディープラーニング アルゴリズムは、そこに含まれるパターンを理解するために大量のデータを必要とするため、データが少ないとうまく機能しません。この場合、手動で指定されたルールを使用する従来の機械学習が優先されます。次の図に示すように:

ハードウェアサポート

ディープラーニング アルゴリズムはハイエンド マシンに大きく依存しますが、従来の機械学習はローエンド マシンでも実行できます。ディープラーニングでは多数の行列乗算演算が必要であり、GPU はこれらの演算を効果的に最適化できるため、GPU はディープラーニングに欠かせない要素となります。

機能エンジニアリング

特徴エンジニアリングは、ドメイン知識を特徴抽出器に供給し、データの複雑さを軽減し、データ内のパターンを学習アルゴリズムにとってより明白にすることで、より良い結果をもたらします。このプロセスは、時間と専門知識の点で非常にコストがかかります。機械学習では、使用される特徴のほとんどは専門家によって指定されるか、データドメインやデータタイプごとに事前の知識に基づいて決定されます。たとえば、特徴としては、ピクセル値、形状、テクスチャ、位置、方向などがあります。ほとんどの機械学習手法のパフォーマンスは、これらの特徴を識別して抽出する精度に依存します。

ディープラーニング アルゴリズムは、データから高レベルの特徴を学習しようとします。これがディープラーニングの独自性の一部であり、従来の機械学習を超える重要なステップです。ディープラーニングでは、各問題が、下部のエッジや線などの低レベルの特徴、次に顔の部分の特徴、最後に顔の高レベルの特徴を学習する畳み込みニューラル ネットワークなどの新しい特徴抽出器の開発にまで縮小されます。

問題解決

従来の機械学習手法を使用して問題を解決する場合、全体を部分に分割し、個別に解決してから、結果を組み合わせて問題を解決するという戦略がよく採用されます。ディープラーニングは、トレーニングデータを入力して最終結果を直接出力するエンドツーエンドのモデルを提唱しており、ネットワークが主要な特徴を抽出する方法を学習できるようにします。

たとえば、ターゲット検出を実行する場合は、ターゲットのカテゴリを識別し、画像内での位置を指摘する必要があります。

一般的な機械学習手法では、この問題をターゲット検出とターゲット認識の 2 つのステップに分割します。まず、grabcut などの境界ボックス検出技術を使用して画像全体をスキャンし、考えられるすべてのオブジェクトを見つけ、HOG/SVM などのターゲット認識アルゴリズムを使用して関連するオブジェクトを識別します。

ディープラーニング手法は、この問題をエンドツーエンドで処理します。たとえば、YOLO ネットは畳み込みニューラル ネットワークを通じてターゲットを特定して識別できます。つまり、元の画像が畳み込みニューラルネットワークに入力され、画像内のターゲットの位置とカテゴリが直接出力されます。

実行時間

通常、ディープラーニングのトレーニングには長い時間がかかります。これは、ディープラーニングの多くのパラメータが通常よりもはるかに長いトレーニング時間を必要とするためです。 ResNet をゼロからトレーニングするには約 2 週間かかりますが、機械学習のトレーニングには数秒から数時間しかかかりません。テストに必要な時間はまったく逆で、ディープラーニング アルゴリズムの実行にはごくわずかな時間しかかかりません。ただし、KNN(K近傍法、機械学習アルゴリズム)と比較すると、テストデータの量が増えるにつれてテスト時間も長くなります。ただし、すべての機械学習アルゴリズムの実行に長い時間がかかるわけではなく、短いテスト時間しか必要としないアルゴリズムもあります。

説明可能性

ディープラーニングを使用して記事を自動的にスコアリングすると、パフォーマンスが非常に良くなり、人間によるスコアリングレベルに近くなることがわかります。しかし、なぜそのようなスコアが付けられたのかは説明されていません。操作中は、ディープ ニューラル ネットワークのどのノードがアクティブになっているかはわかりますが、これらのニューロンが何をモデリングしているか、各レイヤーが何を実行しているかはわからないため、結果を解釈することはできません。

一方、決定木などの機械学習アルゴリズムは、ルールに従って各ステップで選択を行う理由を明確に説明します。そのため、決定木や線形/ロジスティック回帰などのアルゴリズムは、その解釈性の良さから産業界で広く使用されています。

機械学習とディープラーニングの応用シナリオ

Wiki では機械学習のいくつかの応用分野を紹介しています:

1. コンピュータービジョン:ナンバープレート認識や顔認識など。

2. 情報検索:検索エンジン、テキスト検索、画像検索など。

3. マーケティング:自動電子メールマーケティング、ターゲット識別。

4.医療診断:がん診断、異常検出

5. 自然言語処理:意味解析、写真のタグ付け

6. オンライン広告等

下の図は機械学習の応用分野をまとめたものです。一般的に、応用範囲は非常に広いです。

Google は、機械学習/ディープラーニングを活用する業界ではよく知られた企業です。下の図に示すように、Google はさまざまな製品にディープラーニングを適用しています。

インスタントテスト

機械学習とディープラーニングの違いを本当に理解しているかどうかを評価するために、ここで簡単なクイズに答えて送信してください。必要なのは、機械学習とディープラーニングの両方を使用して次の問題を解決し、どちらのアプローチが優れているかを判断することです。

[シナリオ 1] カメラで撮影した生データを入力として受け取り、ハンドルの方向と角度を予測する無人車両システムを開発するとします。

[シナリオ 2] ある人物の信用情報と経歴情報に基づいて、その人に融資が認められるかどうかを評価します。

【シナリオ3】ロシア語のテキストをインドの言語に翻訳するシステムを作成します。

今後の動向

前のセクションでは、機械学習とディープラーニングの違いについてまとめました。このセクションでは、2 つの将来の動向について説明します。

1. 産業界でデータサイエンスと機械学習を利用する傾向が高まっていることを考えると、生き残りたい企業にとってビジネスでの機械学習の活用はますます重要になります。同時に、より基礎的な知識を理解することも必要です。

2. ディープラーニングはますます多くの驚きをもたらし、それは今後も続くでしょう。ディープラーニングは、利用可能なテクノロジーの中で最も先進的かつ最高のテクノロジーの 1 つであることが証明されています。

3. ディープラーニングと機械学習の研究は継続しており、以前のように学術界に限定されていません。現在、機械学習とディープラーニングは産業界と学術界で爆発的に発展しています。そして、これまで以上に資金が投入されれば、人材開発における重要なポイントの一つとなる可能性が高い。

終わり

この記事では、ディープラーニングと機械学習を詳細に比較し、皆さんがさらに学習するきっかけになれば幸いです。機械学習ロードマップとディープラーニングロードマップを参照してください。

<<:  あなたはまだ自分が特別だと思っていますか?人工知能はあなたにノーと言うでしょう

>>:  正義がアルゴリズムを採用したとき、最後に笑うのは正義か、それともテクノロジーか?

ブログ    
ブログ    

推薦する

...

AIによる決定をどのように説明するのでしょうか?この記事では、アルゴリズムの適用シナリオと解釈可能性を整理します。

英国の情報コミッショナー事務局(ICO)とアラン・チューリング研究所は共同で「AIによる説明決定」ガ...

Google が Mirasol をリリース: 30 億のパラメータで、マルチモーダル理解を長時間動画にまで拡張

11月16日、Googleは、動画に関する質問に答えたり、新たな記録を樹立したりできる小型人工知能モ...

人工知能、自動化、そして仕事の未来: 答えが必要な 10 の質問!

[[264418]]職場で機械が人間の労働に取って代わるようになるにつれ、私たち全員が機械から利益...

エンジニアリングチームでよく使用される 6 つの AI ツール

アレックス・オメイヤー翻訳者 | 陳俊レビュー | Chonglou人工知能(AI)の急速な進化と発...

UAI Trainプラットフォームに基づく分散トレーニング

序文大規模なデータセットでトレーニングされた最新のニューラル ネットワーク アーキテクチャは、画像認...

「人間の顔認識」は事故が多発していますが、「豚の顔認識」は信頼性が高いです!アリババは正しい賭けをした

科学技術の発展に伴い、人々は次第にプライバシーに気を配るようになり、「顔認識」という新興技術に対して...

...

突如、Stable Diffusion 3がリリースされました!ソラと同じアーキテクチャですが、すべてがよりリアルです

1年以上の開発期間を経て、前世代に比べて3つの主要な機能に進化しました。さあ、効果を直接確かめてみま...

人工知能ロボットの開発にはどのプログラミング言語を選択すればよいでしょうか?

この記事では、ロボット開発で使用される最も人気のあるプログラミング言語のトップ10を見ていきます。そ...

人工知能企業が利益を上げるのは難しいと言われていますが、具体的に何が難しいのでしょうか?

[[272155]] 2016年にAlphaGoが「人間対機械」の競争に勝利して以来、人工知能への...

...

...