純粋に学術的な目的で機械学習モデルを構築することと、製造、金融サービス、小売、エンターテインメント、ヘルスケアなどの企業にエンドツーエンドのデータ サイエンス ソリューションを提供することとの間には大きな違いがあります。 機械学習に関して企業が直面する最も一般的な問題は何でしょうか? 機械学習モデルのトレーニング以外に何ができるでしょうか? データを準備するにはどうすればよいでしょうか? データセットを拡張するにはどうすればよいでしょうか? 特徴エンジニアリングがそれほど重要な理由は何でしょうか? モデルを本番環境に導入し、完全に実行可能なシステムにするにはどうすればよいでしょうか? すべてのデータ サイエンス ツールをオープン ソース ソフトウェアから入手できる場合、データ サイエンス プラットフォームの存在に意味はあるのでしょうか? この記事では、上記の質問のいくつかに答え、機械学習で現在直面している課題と困難を明らかにし、さらに特定の業界の事例を通じて最適なソリューションを提案します。
機械学習は単なるモデルのトレーニングではない 多くのデータ サイエンティストの間では、機械学習に関して依然として誤解が広がっています。 「特定の特性を持つデータセットが与えられ、変数の 1 つを推測する必要がある場合、どうしますか?」 多くのデータ サイエンティストは次のように答えるでしょう。 「データセットをトレーニングとテストの部分に分割し、ロジスティック回帰、ランダムフォレスト、SVM、ディープラーニング、XGBoost プログラムを実行します。その後、精度、再現率、F1 スコアを計算し、最後に最適なモデルを選択します。」 しかし、いくつかの問題は見落とされてきました。 「このプロセス中にデータ自体を見ましたか?いくつかの値を見逃していたらどうしますか?間違った値や不良データを取得した場合はどうなるでしょうか?カテゴリ変数はどのように設定しましたか?特徴エンジニアリングはどのように行いましたか?」 この記事では、データ収集、データキュレーション、データ探索、特徴抽出、モデルトレーニング、評価、デプロイメントなど、エンドツーエンドの機械学習システムを正常に作成するために必要な 7 つのステップを紹介します。 データをください!
データ サイエンティストにとって、主なリソースは明らかにデータです。しかし、データ収集自体が難しい場合もあります。データ サイエンス チームは、適切なデータセットを取得するために数週間、場合によっては数か月を費やすこともあります。困難には次のようなものがあります:
ビッグデータはビッグではない 過去 10 年間、ビッグ データ ベンダーはビッグ データの規模と機能に対する需要を積極的に推進し、強調してきました。これがビッグ データブームのきっかけとなりました。そのため、「ビッグデータはビッグではない」という見解は、より大きな論争を引き起こしました。ただし、生データ (現在の問題に役立たないデータを含む) と特徴セット (機械学習アルゴリズムの入力マトリックス) を明確に区別する必要があります。生データを特徴セットに処理するプロセスはデータ処理と呼ばれ、次の手順が含まれます。
データ準備が完了した後、最終的な特徴セット (機械学習モデルへの入力) が最初のものよりはるかに小さくなることは珍しくありません。もう 1 つの一般的な状況は、R や scikit-learn などのインメモリ フレームワークでモデルをトレーニングするのに十分であるということです。機能セットが依然として非常に大きい場合は、アルゴリズムの選択は制限されますが、Apache Spark などのビッグデータ ツールを使用できます。 汚いデータです! 汚いデータはよくある もちろん、人々はまだ知らないことを学びたいと思っていますが、これは非常に重要です。つまり、汚れたデータはよくあることです。企業間の協力において、多くの顧客は、データ レイクがいかに素晴らしいか、そこからどれだけ多くの洞察を引き出せるかなど、自社のデータ レイク構築に誇りを持っていることがよくあります。そこで、データ サイエンティストとして、私たちは次のようなことを頭の中で思い描いています。
しかし、クライアントが実際のデータを提示すると、次のようになりました。
この場合、すべてのデータキュレーション変換プロセスをすべての生データに対して完了する必要があるため、Apache Spark などの大規模なフレームワークが特に重要になります。以下に、典型的な規制事例をいくつか示します。
特徴エンジニアリングはどこにでもある つまり、特徴とは、機械学習アルゴリズムが学習する必要がある特性のことです。当然のことですが、ノイズの多いデータや無関係なデータはモデルの品質に影響を与える可能性があるため、優れた機能を持つことが重要です。特徴エンジニアリングで使用できる戦略をいくつか紹介します。
異常検出はどこにでもある 企業における機械学習の最も一般的なユースケースの 1 つを選ぶとすれば、それは異常検出です。不正検出、生産テスト、顧客離れ、医療リスク、顧客債務不履行、システムクラッシュ予測などを研究している場合でも、常に疑問になるのは、「干し草の山から針を見つけられるか」ということです。これは、不均衡なデータセットに関連する別のトピックにつながります。 異常検出のための一般的なアルゴリズムをいくつか紹介します。
不均衡なデータ ラベル付けされたクレジットカード取引のデータセットがあるとします。取引の0.1%は虚偽の情報であり、残りの99.9%は通常の取引です。決して誤った取引を行わないモデルを作成したらどうなるでしょうか? このモデルは 99.9% の確率で正しい答えを出すので、99.9% の精度になります。このよくある精度に関する誤りは、精度や再現率などのさまざまな指標を考慮することで回避できます。これらは、真陽性 (TP)、真陰性 (TN)、偽陽性 (FP)、偽陰性 (FN) などの用語で表されます。
異常検出の典型的なケースでは、偽陰性(偽の取引を無視する、欠陥のあるチップを無視する、患者を健康として扱うなど)を最小限に抑えながら、偽陽性のインスタンスを大量に発生させないようにします。
精度は偽陽性を助長せず、再現率は偽陰性を助長しないことに注意してください。誤った情報を推測しないモデルは再現率がゼロで、精度は不明です。対照的に、常に誤った情報を推測するモデルは、再現率が 100% で、精度が非常に低くなります。これは、多数の誤検知例が存在するためです。 異常検出に受信者動作特性曲線 (FPR) を使用することは強く推奨されません。 FPR の基礎となる偽陽性率は、データセット内の陰性のインスタンスの数 (偽陽性 + 真陰性など) に大きく依存するため、偽陽性のインスタンスの数が多い場合でも FPR は小さくなる可能性があります。 受信者動作特性曲線 = 偽陽性 / (偽陽性 + 真陰性) 対照的に、False Discovery Rate (FDR) は、異常検出モデルに対する誤検出インスタンスの影響をよりよく理解するのに役立ちます。 誤検出率 = 1 - 精度 = 誤検出数/(真検出数 + 誤検出数) 予測するのはやめて、理由を説明してください。 ほとんどの機械学習アルゴリズムは因果関係ではなく相関関係に基づいているため、一部のプロジェクトではリアルタイムの予測モデルを作成することを目的とせず、仮説を説明したり、特定の動作を説明できる要因を分析したりすることを目指しています。以下にいくつか例を挙げます。
この種の問題に対処する 1 つの方法は、ランダム フォレスト、決定木、XGBoot などのアルゴリズムから取得できる特徴の重要度を計算することです。さらに、LIME や SHAP などのアルゴリズムは、ニューラル ネットワークやその他の「ブラック ボックス」モデルから生成されたものであっても、モデルや予測を説明するのに役立ちます。 ハイパーパラメータの調整 機械学習アルゴリズムには、パラメーターとハイパーパラメーターの 2 種類のパラメーターがあります。違いは、前者はアルゴリズムによって直接推定される(回帰の係数やニューラル ネットワークの重みなど)のに対し、後者は推定されず、フォレスト内のツリーの総数、ニューラル ネットワークの正規化方法、サポート ベクター マシンのカーネル関数など、ユーザーが手動で設定する必要があることです。 機械学習モデルに正しいハイパーパラメータ値を設定することは非常に重要です。たとえば、サポート ベクター マシンの線形カーネルは、線形に分離できないデータを分類できません。たとえば、最大深度と分割数が高すぎると、ツリー分類器が過剰適合する可能性があります。一方、最大特徴数が低すぎると、適切に適合しない可能性があります。 ハイパーパラメータの最適値を見つけることは、非常に複雑な最適化問題です。ここにいくつかの提案があります:
ディープラーニングは万能薬か? ここ数年、ディープラーニングは学術研究と産業発展の焦点となってきました。 TensorFlow、Keras、Caffe などのフレームワークを使用すると、高レベルのアプリケーション プログラミング インターフェイス (API) を通じて複雑なニューラル ネットワークを迅速に適用できます。アプリケーションは無数にあり、コンピューター ビジョン、チャットボット、自動運転車、機械翻訳、さらにはゲームまで含まれており、世界トップの囲碁とチェスのコンピューター プレイヤーの両方に勝つことができます。 ディープラーニングの最も重要な前提条件の一つは、データが増加しても学習を継続できることであり、これはビッグデータ時代に特に有効です(下図参照)。この継続的な学習能力と、グラフィック プロセッサなどのハードウェアの最近の進歩を組み合わせることで、大規模なディープラーニング ジョブの実行が可能になります。過去には、リソースの制約により、これは厳しく禁止されていました。 では、ディープラーニングはすべての機械学習の問題に対する万能薬であるということでしょうか? 実際にはそうではありません。理由は次のとおりです。
データを漏らさない フライトの到着遅延を予測するプロジェクトに取り組んでいたこのモデルは、データセット内の利用可能なすべての機能を使用することで 99% の精度を達成することができました。しかし、出発の遅延時間を使用して到着の遅延時間を推定している可能性があることに気付いていただけると幸いです。これはデータ漏洩の典型的な事例です。予測時に利用できない、または不明な特徴を使用すると、データ漏洩が発生します。皆さん気をつけて! オープンソース ソフトウェアですべてを見つけることができる場合、プラットフォームの意味は何でしょうか? 機械学習モデルの構築は、今日ほど簡単になったことはありません。モデルを構築するには、数行の R または Python コードで十分です。また、複雑なニューラル ネットワークを構築するためのリソースやコースもインターネット上に多数あります。現在、Apache Spark はデータの準備に非常に役立ち、大規模なデータセットを正規化することもできます。さらに、Docker や Plumber などのツールを使用すると、ハイパーテキスト転送プロトコル (HTTP) を介した機械学習モデルの展開が簡素化されます。オープンソース プラットフォームのリソースに完全に依存することで、エンドツーエンドの機械学習システムを構築できるようです。 概念実証としては、そうなのかもしれません。大学生は卒業論文を完成させるためにオープンソース コードに完全に依存することができます。しかし、企業にとって物事はそれほど単純ではありません。 結局のところ、オープンソース ソフトウェアにも多くの欠陥があります。企業がビッグデータ サイエンス プラットフォームを選択する理由はいくつかあります。
|
>>: このロボットはアリよりも小さく、電気なしで動くことができる
2024 年に向けて、CIO は生成型 AI の可能性とリスクを考慮してデジタル アジェンダを再構築...
8月6日、今年初めから、生成型人工知能への熱狂がテクノロジー業界全体を席巻しているというニュースが...
1週間前、OpenAIはユーザーに特典を配布しました。GPT-4が怠惰になる問題を修正した後、より...
最近、OpenAIのビデオ生成モデルSoraが人気を集めており、生成AIモデルのマルチモーダル機能が...
高度なサイバー攻撃が増加していることから、サイバーセキュリティは今日マイクロソフトにとって最優先事項...
[[187530]]人工知能 (AI) がどのように未来を予測し、職場を変え、さらには雇用を生み出...
人工知能 (AI) は、コンピューター サイエンス、数学、心理学、言語学などの分野が関わる学際的な分...
OpenCVを使用して顔認識をカスタマイズする方法[[412851]]匿名化とは、データを匿名化する...
従来の 3 チャンネル RGB 画像と比較すると、ハイパースペクトル画像には数十または数百のバンドが...
私はほぼ 10 年間コードを書いてきましたが、挿入ソートや赤黒木を書いたことはなく、再帰を使用したこ...
2009年、当時プリンストン大学に勤務していたコンピューター科学者のフェイフェイ・リー氏が、人工知...
CyberArk の 2023 年アイデンティティ セキュリティ脅威ランドスケープ レポートでは...