午後を費やしてラベルのない画像10万枚にラベルを付け、上司の費用を3万ドル節約しました

午後を費やしてラベルのない画像10万枚にラベルを付け、上司の費用を3万ドル節約しました

[51CTO.com オリジナル記事] 上司がラベルのない写真 10 万枚を渡して、サンダル、パンツ、ブーツなどに分類するように頼んだと想像してください。

[[220286]]

現在、ラベル付けされていないデータが大量にあるので、それにラベルを付ける必要がある。何をすべきでしょうか?

この問題はよくあることです。多くの企業は、取引データ、IoT センサーによって生成される膨大なデータ、セキュリティ ログ、画像や音声データなど、データの海に溺れています。これらはすべてラベルのないデータです。

ラベル付けされたデータが非常に少ないため、機械学習モデルの構築は、あらゆる企業のデータ サイエンティストにとって面倒なプロセスです。

Google のストリートビュー データを例に挙げて、Gebru 氏は、ごくわずかなラベル付きデータを使用して 5,000 万枚の画像内の自動車にラベルを付ける方法を考えなければなりませんでした。

Facebookでは、エンジニアがアルゴリズムを使用して50万本のビデオにラベルを付けましたが、これは他の方法であれば16年かかる作業です。

この投稿では、わずか午後で数十万枚の画像に注釈を付ける方法を紹介します。画像に注釈を付ける場合でも、従来の表形式データに注釈を付ける場合でも(たとえば、サイバーセキュリティ攻撃やコンポーネントの障害の可能性を識別する場合)、同じアプローチを使用できます。

手動注釈方式

ほとんどのデータ サイエンティストは、何かを依頼された場合、まずそれを実行できる他の代替手段があるかどうかを考えます。

[[220287]]

しかし、Mechanical Turk や他の同様の競合プラットフォームでは、10 万枚の画像を作成するのに少なくとも 3 万ドルかかるでしょう。

結局のところ、あなたを雇ったのは上司なので、上司はこれを低価格で行うことを期待しています。現在、彼女にはあなたの給料以外の予算はありません (信じられない場合は、pydata にアクセスしてください)。

深呼吸して、1 時間で 200 枚の画像にラベルを付けることができると考えます。つまり、3 週間休みなく作業すれば、すべてのデータにラベルを付けることができるということです。おっと!

シンプルなモデルを構築する

最初のアイデアは、画像のサブセットにラベルを付け、それを使用して機械学習モデルをトレーニングし、それを使用して残りの画像のラベルを予測することです。

この演習では、Fashion-MNIST データセットを使用します (quickdraw を使用して独自のデータセットを作成することもできます)。

識別すべき画像には 10 のカテゴリがあり、その内容は次のとおりです。

各画像は 28×28 ピクセルで構成されており、784 個の固有の機能/変数が含まれているため、このデータセットを見て興奮しました。

これらの機能は、私が書きたいブログ投稿には最適ですが、現実世界ではこのようなデータセットは絶対に見かけません。現実世界では、データセットの幅がはるかに狭い (従来の表形式のビジネス問題データセット) か、はるかに広い (実際の画像ははるかに大きく、さまざまな色で構成されています) 傾向があります。

モデルの構築には、ロジスティック回帰、サポート ベクター マシン (SVM)、ランダム フォレスト、勾配ブースティング マシン (GBM) など、最も一般的なデータ サイエンス アルゴリズムを使用しました。

100、200、500、1000、2000 枚の画像にラベルを付ける際のパフォーマンスを評価します。

これを見たら、ゆっくりして絵を注意深く観察するべきです。この写真には良いところがたくさんあります。

どのアルゴリズムが最適ですか? (データ サイエンティストであれば、この質問に混乱することはないはずです。) この質問に対する答えは、実際には要件環境によって異なります。

すぐに使える高速で信頼性の高いものが必要な場合は、ロジスティック回帰アルゴリズムを選択できます。ランダムフォレストアルゴリズムは最初からはるかに先を進んでおり、SVM は開始点が低いにもかかわらず、非常に速い速度で追いついています。ラベル付けされたデータが増えるにつれて、SVM はランダム フォレストよりも優れたパフォーマンスを発揮します。

GBM はうまく機能しますが、最高のパフォーマンスを実現するには追加の作業が必要です。ここでの各アルゴリズムのスコアは、R で実装されたライブラリ (e1071、randomForest、gbm、nnet) を使用して評価されます。

ベンチマークが 10 個のカテゴリを持つ画像分類タスクで 80% の精度を達成することである場合、1,000 枚の画像を使用してランダム フォレスト モデルを構築することでこの目標を達成できます。

しかし、1,000 枚の画像にラベルを付ける作業量は依然として非常に多く、5 時間かかると見積もっています。では、これをどう改善できるか考えてみましょう。

データについて考えてみましょう

少し考えた後、あなたは他の人によく言う一文を思い出します。「データはランダムではなく、パターンがある。」これらのパターンを活用することで、データをより深く理解できるようになります。

まずはオートエンコーダー (AE) から始めましょう。オートエンコーダーは、スープをブイヨンキューブに変えるのと同じように、データを圧縮することを目的としています。オートエンコーダーは、非線形変換をサポートする、非常に流行している主成分分析 (PCA) を使用します。

実際には、これは、幅広いデータ (784 個の特徴/変数) を 128 個の特徴に削減することを意味します。次に、新しい圧縮データを使用して機械学習アルゴリズムをトレーニングします (この場合は SVM を使用)。

以下のグラフは、オートエンコーダーによって圧縮されたデータ (AE_SVM) でトレーニングされた SVM と、元のデータでトレーニングされた SVM のパフォーマンスの違いを示しています。

情報を 128 個の特徴に圧縮することで、最終的な SVM アルゴリズムのパフォーマンスを実際に向上させることができました。

ラベルが 100 個の場合、精度は 44% から 59% に上がります。ラベルが 1000 個の場合、オートエンコーダーは引き続き機能し、74% から 78% に改善されます。

つまり、私たちは目標に一歩近づいたことになります。あとは、活用できるデータの分布とパターンについてもう少し考える必要があります。

データについて深く考える

私たちのデータは画像であり、2012 年以降、画像処理に最適なツールは畳み込みニューラル ネットワーク (CNN) であることがわかっています。

CNN を使用するには、事前にトレーニングされたネットワークから、または画像を前処理する単純なモデルからなど、いくつかの方法があります。

この記事では、Kingma らによる論文を参考にして、畳み込み変分オートエンコーダを使用して目標を達成します。

それでは、畳み込み変分オートエンコーダ (CVAE) を構築してみましょう。ここでの技術は、以前と比べて 2 つの「飛躍」を遂げています。

まず、「変分」とは、オートエンコーダが情報を確率分布に圧縮することを意味します。 2 つ目は、エンコーダーとして畳み込みニューラル ネットワークを追加することです。

ここではディープラーニング技術が一部使用されていますが、私たちの焦点は最新かつ最も流行している技術を披露することではなく、問題を適切に解決する方法にあることを強調したいと思います。

CVAE をコーディングするために、RStudio の Keras ページにあるこの例のリストにあるサンプル CVAE を使用しました。

以前のオートエンコーダと同様に、潜在空間を設計してデータを 128 個の特徴に削減します。次に、この新しいデータを使用して SVM モデルをトレーニングします。

以下は、元のデータでトレーニングされた SVM とランダム フォレストを使用した CVAE_SVM のパフォーマンス比較チャートです。

おお!新しいモデルはより正確です。わずか 500 個のラベルで、80% を超える精度を達成できます。

これらの技術を使用することで、パフォーマンスが向上し、注釈付きの画像が少なくて済みます。ハイエンドでは、このアプローチはランダム フォレストや SVM モデルよりも優れたパフォーマンスを発揮します。

次のステップ

オートエンコーダーを使用した非常に単純な半教師あり手法を使用することで、データに迅速かつ正確にラベルを付けることが可能です。しかし、重要なのはディープラーニングエンコーダーを使用することではありません。

代わりに、ここでのアプローチを理解し、非常に単純なものから始めて、徐々により複雑なソリューションを試していただきたいと思います。

最新の技術の使用にこだわらないでください。真のデータ サイエンスは、arXiv の最新の方法を使用することではありません。

この半教師あり学習法は、間違いなくあなたにインスピレーションを与えるでしょう。この記事は半教師あり学習におけるロジスティック回帰アルゴリズムに相当します。

半教師あり学習とドメイン適応についてさらに詳しく知りたい場合は、変分オートエンコーダーの使用に関する Brian Keng の優れたチュートリアルを参照してください。

彼の仕事は、私たちがここで話しているものや、ディープラーニングを使って半教師あり学習を改善し、コードをオープンソース化したCurious AIの仕事を超えています。

最後に、少なくとも理解していただきたいのは、すべてのデータにラベルを付ける必要があるとは想定してはいけないということです。

[51CTO オリジナル記事、パートナーサイトに転載する場合は、元の著者とソースを 51CTO.com として明記してください]

<<:  ブックマークにおける不正行為の特定におけるグラフィカル モデルの応用

>>:  MITが世界の画期的な技術トップ10をランク付け、アリババはそのうち4つを研究中

ブログ    
ブログ    
ブログ    

推薦する

AIは人類にとって脅威でしょうか?人工知能には強いものと弱いものがあるが、本当の危険は強い人工知能である

近年、科学技術分野で最もホットな言葉は人工知能であり、これは近年の人工知能の急速な発展によるものです...

2024年までにAIがすべての仕事をどう変えるのか

仕事の環境は、主に GenAI の進歩によって、前例のない変化を遂げています。ほんの数年前には初期段...

深層強化学習: 知能機械のトッププレイヤー

ラボガイドロボットがゲームの分野でもスーパーマスターになれると想像したことがありますか?あなたの夢を...

Weilingsi チームは、グラフ同型性の下での同変性と高い計算効率を備えた「自然グラフ ネットワーク」メッセージ パッシング メソッドを提案しました。

最近、ウェリングスチームによる研​​究では、グラフの局所的な対称性を研究することで新しいアルゴリズム...

3D特殊効果アーティストはもう家に帰れる丨科学

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

蘭州テクノロジーの周明氏:大きなモデルは必ずしも大きいほど良いというわけではありません。100億規模のモデルでも十分かもしれません。

この記事は、WOT2023カンファレンスでの蘭州科技の創設者兼CEOである周明氏の基調講演からまとめ...

Pythonアルゴリズムの一般的なテクニックと組み込みライブラリ

[[347377]] Pythonアルゴリズムの一般的なテクニックと組み込みライブラリ近年、Pyth...

...

Amazon Web Services は、5 つのステップで企業の生成 AI の実現を支援します。

アマゾンのCEO、アンディ・ジャシー氏はかつて、アマゾン ウェブ サービスの目標は、誰もが大企業と同...

AI を活用した新たなフィッシング攻撃に対抗するにはどうすればよいでしょうか?

サイバーセキュリティは、攻撃と防御の継続的なゲームです。防御戦略が進化し続ける一方で、攻撃者も攻撃の...

...

ChatGPTのメタバージョンが登場: Llama 2がサポートされ、Bing検索に接続され、ザッカーバーグがライブでデモを実施

今朝早く、毎年恒例の Meta Connect カンファレンスで、AI に焦点を当てた一連の発表が行...

GPT-3: 高く評価されている交通の星ですが、大きな欠陥があり、非常に危険です...

昨年、最も人気があったトラフィックスターはGPT-3でした。GPT-3は質問に答えたり、記事を書いた...

OpenAIがGPTストアを正式に開始

1月11日、リーダーシップの混乱を経験した後、人工知能スタートアップOpenAIは製品とサービスのプ...