データ分野では、多くの人が機械学習について語っていますが、それが何であるかを明確に説明できる人はごくわずかです。インターネット上の機械学習に関する記事のほとんどは、さまざまな定理が詰まった分厚い学術三部作(定理の半分も理解できないほどです)か、人工知能、データサイエンスの魔法、仕事の未来に関する素晴らしい物語です。 実際のデータ分析業務で機械学習を活用する機会は本当に多くありませんが、それでもデータ分析実務者に求められるスキルの一つだと思うので、本日の記事では主に機械学習について学びたい方向けに簡単に紹介します。高度な原理は扱いませんが、簡単な言葉を使って現実世界の問題と実用的な解決策について説明します。プログラマーでもマネージャーでも理解できます。 機械学習とは何かを理解する方法
賢いアナリストであるビリーは、車の価格は年数によって決まるというパターンを発見しました。年数が経つごとに価格は 1,000 ドル下がりますが、10,000 ドル未満になることはありません。 機械学習の用語で言えば、ビリーは「回帰」、つまり既知の履歴データに基づいて価値(価格)を予測する手法を発明しました。人々が eBay で中古の iPhone の適正価格を見積もったり、バーベキュー パーティーに何本のリブを用意すればよいかを計算したりするとき、彼らはビリーズと似た方法を使っています - 1 人あたり 200g? 500g? 私たちは皆、世界のすべての問題を解決する簡単な公式があればいいのにと思っていますが、明らかにこれは不可能です。 車を買う状況に戻りましょう。今の問題は、車の年式に加えて、製造日が異なり、付属品が数十種類あり、技術的条件があり、季節的な需要変動があるということです...他にどんな隠れた要因があるかは神のみぞ知る...普通の人ビリーは、価格を計算するときにこれらすべてのデータを考慮することはできませんし、私もできません。 彼らに代わって計算を行うロボットが必要です。そこで、私たちはコンピューターのアプローチを採用しました。つまり、機械にデータを与えて、価格に関連するすべての根本的なパターンを解明させるのです。すると、機械は、頭の中ですべての依存関係を分析する実際の人間よりもはるかにうまく処理できます。こうして、機械学習が誕生したのです。 機械学習の3つの要素 人工知能 (AI) に関連するすべてのナンセンスはさておき、機械学習の唯一の目的は、入力データに基づいて結果を予測することです。すべての機械学習タスクはこのように表現できますが、そうでなければ最初から機械学習の問題ではありません。 サンプルが多様であればあるほど、関連するパターンを見つけて結果を予測しやすくなります。したがって、マシンをトレーニングするには 3 つの部分が必要です。 データ
データを取得するには、手動と自動の 2 つの主な方法があります。手動で収集されたデータはエラーが発生しにくくなりますが、時間がかかり、コストも高くなることがよくあります。自動化された方法は比較的安価であり、見つけられるデータ(できれば高品質のデータ)を何でも収集できます。 Google のような賢い人たちは、ユーザーを利用して無料でデータに注釈を付けています。ReCaptcha (人間と機械の認証) で「すべての道路標識を選択する」ように強制されたのを覚えていますか?彼らはこのようにデータを入手しており、それは無料の労働です。よくやった。もし私が彼らだったら、こうした検証画像をもっと頻繁に表示するだろうが、ちょっと待ってください... 良質なデータセットを見つけるのは本当に難しく、それらは非常に重要であるため、一部の企業はアルゴリズムをオープンソース化しても、データセットを公開することはほとんどありません。 特徴
データがテーブルに格納されている場合、特徴は列名に対応します。これは単純なケースです。しかし、猫の写真が 100GB あったらどうでしょうか?すべてのピクセルを特徴として扱うことはできません。このため、適切な特徴を選択する作業は、機械学習の他のどのステップよりも時間がかかることが多く、大きなエラーの原因にもなります。人間の本性にある主観的な傾向により、人々は自分が好む機能や「より重要」だと感じる機能を選択することになりますが、これは避ける必要があります。 アルゴリズム
概念上の区別
古典的な機械学習アルゴリズム
広く使用されているにもかかわらず、古典的なアルゴリズムは実は非常に単純であり、幼児にも簡単に説明できます。これらは基本的な算数のようなもので、私たちは何も考えずに毎日使っています。以下に、いくつかの古典的な機械学習アルゴリズムを示します。 1.1 教師あり学習
「教師あり学習」では、写真が猫なのか犬なのかといった学習を支援するために機械にすべての答えを提供する「教師」または「監督者」が存在します。 「教師」はすでにデータセットを「猫」または「犬」として分類しており、機械はこのサンプルデータを使用して、猫と犬を 1 匹ずつ区別する方法を学習します。 教師なし学習とは、機械が動物の写真の山から誰が誰であるかを判別する作業を任されることを意味します。データには事前にラベルが付けられておらず、「教師」もいません。機械は自分ですべての可能なパターンを見つけなければなりません。これらについては後で説明します。 明らかに、機械は「教師」が存在するとより速く学習するため、実生活では教師あり学習がより一般的に使用されています。教師あり学習は 2 つのカテゴリに分けられます。 分類、オブジェクトが属するカテゴリを予測する。
分類アルゴリズムは次のような場合によく使用されます。
よく使用されるアルゴリズム:ナイーブベイズ、決定木、ロジスティック回帰、K近傍法、サポートベクターマシン 機械学習は主に「分類」の問題を解決します。機械は、おもちゃを分類することを学んでいる赤ちゃんのようなものです。これは「ロボット」、これは「車」、これは「機械車」… ああ、待ってください、それは違います!間違い! 分類タスクでは、「教師」が必要です。機械がラベルに基づいて分類することを学習できるように、データには事前にラベルを付ける必要があります。すべてを分類できます。ユーザーは興味に基づいて、記事は言語と主題に基づいて(検索エンジンにとって重要)、音楽はジャンルに基づいて(Spotify プレイリスト)、メールも例外ではありません。 ナイーブベイズアルゴリズムはスパムフィルタリングに広く使用されています。機械は、スパムメールと通常のメールにおける「バイアグラ」などの単語の出現頻度を数え、ベイズ方程式を適用してそれぞれの確率を掛け合わせ、結果を合計します。これで機械は学習を完了したことになります。 その後、スパマーは、メールの末尾に「良い」単語をたくさん追加することでベイジアン フィルターを回避する方法を学びました。この手法は皮肉を込めて「ベイジアン ポイズニング」と呼ばれるようになりました。ナイーブベイズは、最もエレガントで最初の実用的なアルゴリズムとして歴史に名を残していますが、スパムフィルタリングの問題に取り組むアルゴリズムは他にもあります。 分類アルゴリズムの別の例を見てみましょう。
このデータを使用することで、機械がパターンを見つけて答えを導き出すようにトレーニングすることができます。答えを見つけることは問題ではありません。問題は、銀行が機械が出した答えを盲目的に信頼できないことです。システムが故障したり、ハッキングされたり、酔った卒業生がシステムに緊急パッチを適用したりしたらどうなるでしょうか? この問題に対処するには、決定木を使用する必要があります。決定木は、すべてのデータを「借り手の収入は 128.12 ドルを超えているか?」などの「はい/いいえ」の質問に自動的に分割しますが、これは少し非人間的に聞こえます。ただし、マシンは各ステップでデータを最適に分割するためにこのような問題を生成します。 こうして「木」が誕生したのです。ブランチが上位になるほど(ルート ノードに近づくほど)、問題の範囲は広くなります。すべてのアナリストは、このアプローチを受け入れて、後で説明することができます。たとえアルゴリズムが何であるかを知らなくても、結果を簡単に説明することができます (典型的なアナリスト)。 決定木は、診断、医療、金融など、責任の重いシナリオで広く使用されています。 最もよく知られている 2 つの決定木アルゴリズムは、CART と C4.5 です。 現在、純粋な決定木アルゴリズムはほとんど使用されていません。ただし、決定木はより大規模なシステムの構成要素であり、決定木の集合体はニューラル ネットワークよりも優れたパフォーマンスを発揮できます。これについては後で話します。 Google で検索すると、答えを見つけるのに役立つ不器用な木の集まりが表示されます。検索エンジンは、このタイプのアルゴリズムが高速に実行されるため好みます。 論理的に言えば、サポートベクターマシンが最も人気のある分類方法であるはずです。写真内の植物を形状別に分類したり、文書を種類別に分類するなど、存在するあらゆるものを分類するために使用できます。 SVM の背後にある考え方は単純です。データ ポイント間に 2 本の線を引き、2 本の線の間の距離を可能な限り最大化しようとします。以下のように表示されます。 分類アルゴリズムには非常に便利なシナリオがあります -異常検出です。特徴をすべてのカテゴリに割り当てることができない場合は、それをマークします。このアプローチは現在、医療分野で使用されています。MRI(磁気共鳴画像)では、コンピューターが検出範囲内のすべての疑わしい領域または逸脱をマークします。株式市場では、インサイダーを見つけるためにトレーダー間の異常な行動を検出するためにこれを使用します。コンピュータに何が正しいかを認識させるようにトレーニングすると、何が間違っているかも自動的に認識させることになります。 経験則としては、データが複雑になればなるほど、アルゴリズムも複雑になります。テキスト、数値、表などのデータについては、古典的な方法を選択して操作します。これらのモデルはより小さく、より速く学習し、よりクリーンなワークフローを備えています。画像、ビデオ、その他の複雑なビッグデータについては、ニューラル ネットワークを検討することをお勧めします。 わずか 5 年前には、SVM に基づく顔分類器が存在していました。数百の事前トレーニング済みニューラル ネットワーク モデルからモデルを選択するのが簡単になりました。ただし、スパム フィルターはあまり変更されていません。依然として SVM を使用して記述されており、これを変更する理由はありません。私のウェブサイトでも、コメント内のスパムをフィルタリングするために SVM ベースのフィルタリングを使用しています。 回帰
回帰アルゴリズムは現在、以下の目的で使用されています。
「回帰」アルゴリズムは、カテゴリではなく数値を予測する点を除いて、本質的には「分類」アルゴリズムです。たとえば、走行距離に基づいて車の価格を予測したり、一日のさまざまな時間帯の交通量を見積もったり、会社の成長に伴って供給がどのように変化するかを予測したりします。時間関連のタスクを扱う場合、回帰アルゴリズムが最適な選択です。 回帰アルゴリズムは、金融業界や分析業界で働く人々に好まれています。これは Excel に組み込まれた機能でもあり、プロセスはシームレスです。機械は平均相関を表す線を描画しようとするだけです。しかし、ペンとホワイトボードを使う人間とは異なり、機械は各点と線の間の平均距離を計算することで、数学的な精度でこれを実行します。 描いた線が直線であれば「線形回帰」、曲線であれば「多項式回帰」となります。これらは回帰の 2 つの主なタイプです。他のタイプはあまり一般的ではありません。ロジスティック回帰の「厄介者」に騙されないでください。これは回帰ではなく分類アルゴリズムです。 ただし、「回帰」と「分類」を混同しても問題ありません。一部の分類器は、パラメータを調整すると回帰になります。オブジェクトのカテゴリを定義することに加えて、オブジェクトがそのカテゴリにどれだけ近いかも覚えておく必要があり、これが回帰問題につながります。 クラスタリング
クラスタリング アルゴリズムは現在、次の目的で使用されています。
クラスタリングは、事前にカテゴリにラベルを付けずにカテゴリを分割するプロセスです。靴下の色をすべて覚えていなくても、靴下を分類できるようなものです。クラスタリング アルゴリズムは、(特定の特性に基づいて) 類似するものを見つけ、それらをクラスターにグループ化します。多くの類似した特徴を持つオブジェクトはグループ化され、同じカテゴリに分類されます。一部のアルゴリズムでは、各クラスター内のデータ ポイントの正確な数を設定することもできます。 クラスタリングを示す良い例として、オンライン マップ上のマーカーを示します。周辺のベジタリアン レストランを検索すると、クラスタリング エンジンによってそれらのレストランがグループ化され、数字の付いたバブルとして表示されます。これを行わないと、この流行の街にある 300 軒のビーガン レストランすべてをマップしようとするときにブラウザがフリーズしてしまいます。 分類アルゴリズムと同様に、クラスタリングを使用して異常を検出できます。ユーザーがログインした後に異常な動作はありますか?マシンで彼のアカウントを一時的に無効にし、チケットを作成して、サポートに何が起こっているか確認してもらいます。もしかしたら相手は「ロボット」なのかもしれません。 「通常の行動」がどのようなものかを知る必要すらありません。ユーザーの行動データをモデルに渡し、相手が「典型的な」ユーザーかどうかを機械に判断させるだけでよいのです。 この方法は分類アルゴリズムほどうまく機能しませんが、試してみる価値はあります。 次元削減
「次元削減」アルゴリズムは現在、次の目的で使用されています。
一般的に使用される「次元削減」アルゴリズム:主成分分析、特異値分解、潜在ディリクレ配分、潜在意味解析、t-SNE (視覚化用) 初期の頃、これらの方法は、数字の山から「何か面白いもの」を見つけようと決意した「筋金入りの」データ サイエンティストによって使用されていました。 Excel のグラフが機能しなかったため、パターンを見つける作業は機械に任せざるを得ませんでした。そこで彼らは次元削減や特徴学習の手法を発明しました。 2D データを直線上に投影する (PCA)
たとえば、三角形の耳、長い鼻、大きな尻尾を持つ犬を組み合わせて、「牧羊犬」という抽象的な概念を作成します。特定のシープドッグと比較すると、確かにいくつかの情報は失われますが、新しい抽象化は、名前付けと説明が必要なシナリオでは非常に役立ちます。ボーナスとして、これらの「抽象的な」モデルは学習が速く、トレーニングに必要な機能が少なくなり、過剰適合が減少します。 これらのアルゴリズムは、「トピック モデリング」のタスクで優れたパフォーマンスを発揮します。特定のフレーズの意味をその意味から抽出することができます。潜在的意味解析 (LSA) はまさにそれを実現するもので、LSA はトピックで特定の単語がどのくらいの頻度で表示されるかに基づいています。たとえば、科学論文にはテクノロジー関連の単語が間違いなく多く登場するようになるだろうし、政治ニュースには政治家の名前が多く登場するようになるだろう、などです。 すべての記事内のすべての単語から直接クラスターを作成することもできますが、そうすると重要なつながりがすべて失われます (たとえば、バッテリーとアキュムレータは異なる記事で同じ意味を持ちます)。 LSA はこの問題を非常にうまく処理できるため、「潜在的意味論」と呼ばれています。 したがって、単語と文書を 1 つの特徴に組み合わせて、それらの間の基本的な関係性を維持する必要があります。この問題は、特異値分解 (SVD) によって解決できることがわかりました。グループ化された単語のグループから、有用なトピック クラスターを簡単に見つけることができます。 相関ルール学習
関連付けルールは現在、次の目的で使用されています。
ショッピングカートの分析、マーケティング戦略の自動化、その他のイベント関連タスクのためのアルゴリズムがすべてここにあります。 古典的な「ビールとおむつ」の話の原理は、連想ルールの適用です。たとえば、顧客が 6 本入りのビールを持ってレジに行きます。レジの通路にオムツを置くべきでしょうか? ビールとオムツを同時に買う人はどのくらいいるでしょうか?他にどのようなシーケンスを予測するために使用できますか? 商品の配置を少し変更するだけで、利益が大幅に増加する可能性がありますか? この考え方は、タスクがより興味深い「顧客は次回何を購入するか?」である電子商取引にも当てはまります。 |
<<: 日本政府は国民が人生のパートナーを見つけるのを支援するためにAI技術を活用することを計画している
>>: AI分野 | ゲームのルールを変える画期的なアイデア10選
[[410827]] [51CTO.com クイック翻訳]急速な技術開発と進歩の時代において、個人情...
人工知能(AI)の急速な発展は人々の生活に便利さをもたらしたが、労働市場には大きな変化をもたらすだろ...
自動運転タクシー、バス、道路清掃車、物流配送車... 自動運転技術の急速な発展により、これらの無人車...
[[428056]]この記事はLeiphone.comから転載したものです。転載する場合は、Lei...
「人工知能」という用語は、人間の意思決定を模倣または複製できる機械とは対照的に、複雑でインテリジェ...
テクノロジーは発見に依存し、発見はテクノロジーの進歩に依存します。これは計算知能の文脈ではまさに真実...
ショートビデオの推奨やソーシャル推奨などのアプリケーションシナリオでは、推奨システムは大量の急速に変...
機械学習は、車内外のセンサーからのデータを融合して、運転者の状態を評価し、運転シナリオを分類するため...
01 ロボティックプロセスオートメーション(RPA) RPA (ロボティック プロセス オートメーシ...
Twitterは木曜日、自動/ボットアカウントラベルを導入すると発表した。 Twitter社は、ユー...
最近、中国薬科大学は試験的に教室に顔認識システムを導入しました。学生の出席を自動的に識別するだけでな...
人工知能は歴史的に、やや相反する2つの陣営の間を揺れ動いてきました。一方では、ノーム・チョムスキー、...
7月20日、滴滴出行の第一回グローバルDi-Techアルゴリズムコンテストが本日正式に終了しました...