CatBoost: XGBoost よりも優れた GBDT アルゴリズム

CatBoost: XGBoost よりも優れた GBDT アルゴリズム

[[242113]]

[51CTO.com クイック翻訳] インターネット アルゴリズムには、推奨システム、計算広告、金融詐欺防止など、多くの応用シナリオがあります。多くのインターネット機械学習およびデータマイニングの問題は、分類問題に変換できます。この種の分類問題を扱う場合、最も一般的に使用される方法には、ロジスティック回帰、GBDT、ディープラーニングなどがあります。中でもロジスティック回帰は、アルゴリズムの効率性が高く、大規模データを効率的に処理できるため、ディープラーニングが普及する前から大手インターネット企業で広く利用されてきました。

ディープラーニングは、百度が2012年に初めてディープラーニング研究所を設立して以来、中国で巻き起こっている人工知能のトレンドである。しかし、ディープラーニングはまだ急成長段階にあり、大規模データを処理するためのマシンに対する資金要件が比較的高いため、多くのアプリケーションシナリオでは機械学習は選択肢になりません。 GBDT は導入以来、業界だけでなく Kaggle コンペティションでも多くの機械学習の問題で優れた結果を達成してきました。

学界や産業界には、GBDT アルゴリズム用のオープン ソース アルゴリズム パッケージが数多く存在します。有名なものとしては、ワシントン大学の Tianqi Chen 氏が開発した XGBoost、Microsoft の LightGBM、Yandex 氏が開発した CatBoost などがあります。 XGBoostは業界で広く使用されており、LightGBMはGBDTの計算効率を効果的に向上させ、YandexのCatBoostはアルゴリズムの精度の点でXGBoostやLightGBMよりも優れたパフォーマンスを発揮するアルゴリズムと言われています。この記事では、Yandex が 2017 年に公開した「CatBoost: Unbiased Boosting with Categorical Features」という論文を紹介しながら、主に CatBoost アルゴリズムを紹介します。

CatBoost アルゴリズムを設計した本来の目的は、GBDT 機能におけるカテゴリ機能をより適切に処理することです。 GBDT 機能のカテゴリ機能を扱う場合、最も簡単な方法は、カテゴリ機能に対応するラベルの平均値に置き換えることです。決定木では、ラベル平均がノード分割の基準として使用されます。この方法は、Greedy Target-based Statistics (略して Greedy TBS) と呼ばれ、次の式で表すことができます。

この方法には明らかな欠陥があり、特徴には通常、ラベルよりも多くの情報が含まれています。ラベルの平均値を強制的に使用して特徴を表すと、トレーニングデータセットとテストデータセットのデータ構造と分布が異なる場合に問題が発生します(条件シフト問題)。

Greedy TBS を改善する標準的な方法は、事前分布項を追加することです。これにより、ノイズや低頻度データがデータ分布に与える影響を軽減できます。

ここで、P は追加された事前項であり、a は通常 0 より大きい重み係数です。

条件付き移行問題を解決するために、一般的な方法は、データセットを 2 つの部分に分割し、最初の部分で Greedy TBS と同様の方法でデータ機能を処理し、次に 2 番目のデータセットでトレーニングすることです。 CatBoost はオンライン学習法を指します。最初にトレーニング データをランダムに並べ替え、次にトレーニング サンプルとして選択し、データ セット全体をテスト サンプルとして使用します。

同様に、GBDT モデルのトレーニング フェーズでは、トレーニング データとテスト データの分布が異なるため、予測シフトと残差シフトの問題も発生します。対応する問題を解決するために、CatBoost の作者は順序付きブースティングの方法を採用し、最初にすべてのデータをランダムに配置し、次にモデルは i 番目のステップの残差を計算するときにランダム配置の最初の i-1 個のサンプルのみを使用しました。

元の GBDT のさまざまなオフセット問題を改善した後の CatBoost アルゴリズムの疑似コードは次のとおりです。

いくつかのよく知られたデータ セットでの CatBoost、XGBoost、LightGBM のテスト結果を次の表に示します。評価指標は Logloss と Zero-one Loss です。

CatBoost の基本原理は、元の GBDT におけるさまざまなデータ オフセット問題を解決することです。一部のオープンソースの機械学習およびデータマイニングアルゴリズム パッケージでは、呼び出すことができる既製のモジュールがあります。 CatBoost は、2017 年に Yandex によって初めて提案されて以来、幅広い注目を集めています。この記事の紹介が皆さんのお役に立てれば幸いです。

恒昌立通のビッグデータ部門責任者兼シニアアーキテクトの王昊氏は、ユタ大学で学士号/修士号を取得し、国際経済貿易大学で実務MBAを取得しています。 Baidu、Sina、NetEase、Doubanなどの企業で長年にわたり研究開発と技術管理に携わっており、機械学習、ビッグデータ、推奨システム、ソーシャルネットワーク分析などの技術に長けています。 TVCGやASONAMなどの国際会議やジャーナルに8本の論文を発表している。私の学部論文は 2008 IEEE SMI *** 論文賞を受賞しました。

[[242116]]

[51CTOによる翻訳。パートナーサイトに転載する場合は、元の翻訳者と出典を51CTO.comとして明記してください]

<<:  AI人材の競争は軍拡競争となっている。AIの創造性競争に賭けるAI大手の中で、勝利のポイントを獲得するのはどれだろうか?

>>:  機械学習 = 「新しいボトルに入った古いワイン」の統計?いいえ!

ブログ    
ブログ    

推薦する

チップレベルのエッジAIが次世代のIoTを推進

エッジ コンピューティングは、IT アーキテクトや組み込み開発者にさまざまな選択肢を提示する難しい問...

...

機械学習の運用はクラウドコンピューティングの運用には適していない

クラウド コンピューティング サービス チームに機械学習機能を備えたシステムを提供することは間違いで...

機械学習における勾配降下法

最大化問題は、機械学習アルゴリズムの非常に重要な部分です。ほぼすべての機械学習アルゴリズムの中核は、...

人工知能を活用して顧客サービスを向上させる方法

顧客エンゲージメント、パーソナライゼーションなど、5 つの異なる領域で AI を使用して顧客サービス...

人工知能が診断ツールをどのように変えるのか

医療においては、新しいアイデアが常に命を救うのに役立ちます。 1895 年にウィレム・アイントホーフ...

普通のプログラマーから人工知能の仕事に転職するにはどうすればいいでしょうか?

人工知能は非常にホットな話題になっています。普通のプログラマーとして、人工知能に転向する方法。プログ...

自動運転車にLIDARはなぜ必要ないのでしょうか?

[51CTO.com クイック翻訳]自動運転車の開発と生産にはどのような技術が必要か?この質問に対...

Huggingfaceによる大規模モデル進化ガイド:GPT-4を完全に再現する必要はない

ビッグデータダイジェスト制作ChatGPTが人気を博した後、AIコミュニティは「百式戦争」を開始しま...

日常生活におけるAIの応用

機械学習やその他の技術をバックグラウンドで使用することで、AI は私たちの日常生活に多くの素晴らしい...

超知能オートメーション: タマネギの皮をむく旅

翻訳者 | 李睿校正 | 孫淑娟 良策企業システムのインテリジェント自動化のプロセスでは、各段階の開...

...

...

Pytorch の核心であるモデルの定義と構築を突破しましょう! ! !

こんにちは、Xiaozhuangです!今日はモデルの定義と構築についてお話ししましょう。初心者に最適...