Spark機械学習APIの選び方

Spark機械学習APIの選び方

この記事では、主に統計アルゴリズム、分類アルゴリズム、クラスタリング アルゴリズム、協調フィルタリング アルゴリズムなど、Spark MLlib API のさまざまな機械学習アルゴリズムと、さまざまなアルゴリズムのアプリケーションについて簡単に紹介します。

[[198135]]

あなたはデータサイエンティストではありません。 「テクノロジーおよびビジネスメディアによると、機械学習は地球温暖化を防ぐだろう」。どうやら、このようなフェイクニュースを報道するのは中国のニュースメディアだけらしい。機械学習はフェイクニュースを識別できるかもしれない(分類​​アルゴリズムに関連)?実際、機械学習は本当にそれができるのだ!

では、機械学習で何ができるのでしょうか? どうすればわかるのでしょうか? すでにバッチ処理やストリーム処理に Apache Spark を使用している場合は、これをより効率的に実行できるものがあります。 Spark SQL と Spark Stream Processing を使用するときに使用する可能性が高いものの 1 つは、API 形式の機械学習ライブラリと統計アルゴリズムである Spark MLlib です。

以下では、主にその機能とアプリケーションを含む、最も基本的な 4 つの MLlib API の簡単な紹介を示します。追記:記事内の青いフォントの部分については、下部をクリックすると原文で詳細を読むことができます。

統計アルゴリズム

これらの API は主に AB テストまたは ABC テストに使用されます。ビジネスでは、2 つのものの平均が等しい場合、それらはほぼ同等であると想定されることがよくあります。実は必ずしもそうではありません。自動車メーカーが車のシートを交換した後のシートの快適性に関する調査を行っていると想像してください。背の低いユーザーにとってはシートの快適性が高く感じられるかもしれませんが、背の高いユーザーにとっては非常に不快に感じて車の購入を諦めるかもしれません。一方、中程度の身長のユーザーはこの差をちょうどバランスさせます。通常、新しい座席はより快適かもしれませんが、身長 6 フィートを超える人が購入しない場合は、失敗したことになります。 Spark の仮説検定では、まずピアソンのカイ二乗検定またはコルモゴロフ・スミロフ検定を実行して、何かの「適合性」、またはその値が「正規分布している」かどうかを検定できます。この方法は基本的に、2 つのデータ文字列を比較する必要があるすべての状況に適用できます。 「適合性」は、「それが気に入るかどうか」、または新しいアルゴリズムが古いものよりも「優れている」という目標を達成するかどうかを示します。

分類アルゴリズム

あなたの属性は何ですか? さまざまな属性を持つものがたくさんある場合、コンピューターにそれらを正しく分類させることができます。ここでの秘訣は、各属性を各「クラス」にマッピングすることです。この分類には標準的な正解はありませんが、間違った答えはたくさんあります。誰かが一連の表を見て、それをカテゴリに分類するのを想像してみてください。それが分類アルゴリズムです。スパムフィルターを使用すると、スパムによく使用される単語を含むメッセージをフィルター処理する分類アルゴリズムにすでに触れたことがあるでしょう。分類アルゴリズムは、患者の状態を診断したり、ケーブルテレビの契約を解除する可能性が高いユーザー(通常はスポーツを観ない人)を予測したりするためにも使用できます。本質的に、分類学習は過去のデータ ラベルに基づいており、それらのラベルを適用して将来の展開を予測します。

クラスタリングアルゴリズム

誰かと「機械学習」について議論するとき、相手が k-means アルゴリズムしか言えないのであれば、それは相手が「カンニングペーパー」を読んだだけで、何も理解していないことを意味します。属性のセットがある場合、これらの属性をさまざまなカテゴリに分類するためのいくつかの重要なポイントを見つけることができます。これがクラスタリング アルゴリズムです。異なるクラス間の違いはわかりますが、いくつかのクラスはより近い可能性もあります。大きいものと小さいものを同じカテゴリに分類し、別の小さいものを大きいカテゴリに分類することも可能です。他のさまざまな複雑な属性やさまざまな次元と組み合わせると、実際には多くのクラスタリング アルゴリズムが存在します。クラスタリング アルゴリズムは分類アルゴリズムとは異なりますが、クラスタリング アルゴリズムは、人々のグループをグループ化するためによく使用されます。 2 つのアルゴリズムの最大の違いは、クラスタリング アルゴリズムでは、クラスターの前のラベル (またはグループ) が何であるかがわからないのに対し、分類アルゴリズムでは、ラベルが非常に明確であることです。顧客セグメンテーションは一般的なアプリケーションです。顧客によって好みは異なります。たとえば、顧客をクレジット グループ、保持リスク グループ、購入グループ (生鮮農産物または調理済み食品) に分けることができますが、既存のデータに基づいて不正行為を識別するために分類することもできます。

協調フィルタリングアルゴリズム

そうですね、協調フィルタリングは人気のあるアルゴリズムです。当社では、検索結果の精度を向上させるために協調フィルタリング アルゴリズムを使用しています。関連する講義も行いました。十分な数の人々が 2 番目の猫の写真をクリックした場合、その猫の写真は 1 番目の猫の写真よりも優れているはずです。ソーシャル メディアや電子商取引の環境では、さまざまなユーザーの「好き嫌い」をフル活用すれば、大多数のユーザーや特定のユーザー グループにとって「最適な」結果を見つけることができます。これは、パーソナライゼーション システムのマルチ属性フィルタリングによって実現されます。たとえば、Google マップや Yelp でレストランを検索するときに、この原則が使用されます (サービス品質、料理の種類、内装スタイル、子供に適しているかどうか、雰囲気があるかどうか、ユーザー レビュー、消費レベルなどでフィルタリングできます)。

上記は機械学習のアルゴリズムのすべてではありませんが、最も一般的に使用されているアルゴリズムでもあります。上記の 4 つのカテゴリにはそれぞれ、オプションのアルゴリズムまたは派生アルゴリズムがいくつか含まれています。どれを選択すればよいでしょうか。選択する特定のアルゴリズムは、数学的背景、実験プロセス、既知のデータなど、さまざまな要因の総合的な結果です。これらのアルゴリズムは問題を分析するための単なるツールであり、これらのアルゴリズムを使用した後に役に立たない結果が得られる可能性があることに留意してください。

<<:  Uber劉延東:Uberがフードデリバリーサービスを開始したとき、世界中のフードデリバリー会社は衝撃を受けた

>>:  見逃せない 7 つのディープ ニューラル ネットワーク可視化ツール

ブログ    
ブログ    

推薦する

...

ガートナーが中国のAIスタートアップに関するレポートを発表:ほとんどの企業がこれら3つの技術に注目

最近、著名な国際データ調査機関であるガートナーが「市場ガイド:中国AIスタートアップ」調査レポートを...

OpenAI の公式チュートリアル: GPT-4 で議事録生成 AI を作成する方法

このチュートリアルでは、OpenAI の Whisper と GPT-4 モデルを使用して自動会議議...

人間同士のやりとりを人工知能に置き換える時期が来ているのでしょうか?

人工知能 (AI) は、面倒で時間のかかるすべての手動プロセスを置き換え、人間が価値の高いタスクに集...

Chen Danqi 氏のグループによるマスク言語モデルに関する研究: 15% のマスク率は最適ではないが、40% は維持可能か?

少し前に、スローン財団は2022年度スローン研究賞の受賞者を発表しました。Chen Danqi、Fa...

年末ですね!ファーウェイクラウド開発者デーと2023イノベーションサミットが成功裏に開催されました

12月20日、ファーウェイクラウド開発者デーと2023イノベーションシェアリングサミットが成功裏に開...

新しい形の人工知能が登場: AIaaSについてお話しましょう

「サービスとしての」配信モデルの誕生以来、SaaS と PaaS は日常的な技術用語の一部となり、企...

変化する生活: テクノロジーと私たちの未来

私たちがテクノロジーによってますます、そして不可逆的に動かされている世界に生きていることは疑いの余地...

AIは実際にチップを生成できます! GPT-4はわずか19回の対話で130nmチップを構築し、チップ設計業界におけるHDLの大きな課題を克服しました。

GPT-4 はすでに人間がチップを作るのに役立っています!ニューヨーク大学タンドン工学部の研究者た...

...

人工知能導入の第一歩:企業で最も一般的な3つのアプリケーション

人工知能はあらゆる業界の基盤になりつつありますが、多くの企業はまだどのように始めればよいかわかってい...

300 万行から 100 行へ: 機械学習により開発エクスペリエンスが向上

この記事は、公開アカウント「Reading the Core」(ID: AI_Discovery)か...

「ZAO」かっこいいですね!ディープフェイクを使って顔を変える方法

最近、SNS上で「ZAO」と呼ばれるAI顔変換ソフトが話題になっている。人気が出る一方で、多くの疑問...

...

C++ kmp アルゴリズム テンプレート コード解釈

C++ プログラミング言語でのテンプレートの適用は、比較的複雑な適用技術です。今日は、C++ kmp...