Python の基礎: FP 成長アルゴリズムの構築

Python の基礎: FP 成長アルゴリズムの構築

Apriori アルゴリズムと比較すると、FP-growth アルゴリズムではデータベースを 2 回走査するだけで済むため、頻繁に出現するアイテムセットを効率的に検出できます。検索エンジン会社にとっては、インターネット上で使用されている単語を調べて、どの単語が頻繁に一緒に出現するかを調べる必要があります。したがって、頻繁に出現するアイテムセットを効率的に発見できる方法が必要であり、FP 成長アルゴリズムはこのタスクを達成できます。

FP 成長アルゴリズムは、アプリオリ原理に基づいており、データ セットを FP (頻繁パターン) ツリーに格納することで頻繁なアイテム セットを検出します。

FP-growth アルゴリズムではデータベースを 2 回スキャンするだけで済みますが、Apriori アルゴリズムでは各潜在的頻出アイテム セットを見つけるときにデータ セットを 1 回スキャンするだけで済むため、FP-growth アルゴリズムの方が効率的です。

[[212909]]

頻繁なアイテムセットを発見する FP アルゴリズムのプロセスは次のとおりです。

(1)FPツリーを構築する。

(2)FP木からの頻出アイテムセットのマイニング

FP は頻繁なパターンの略で、類似の要素をリンクで接続します。接続された要素は、リンクされたリストと見なすことができます。

トランザクションデータテーブル内の各トランザクションに対応するデータ項目をサポートに従ってソートした後、各トランザクション内のデータ項目をNULLをルートノードとするツリーに降順で挿入し、各ノードにノードのサポートを記録します。

トランザクション データ サンプルがあると仮定すると、FP ツリーを構築する手順は次のようになります。

Apriori アルゴリズムの最小サポートしきい値と組み合わせて、ここでは最小サポートを 3 と定義します。上記の表のデータと組み合わせて、最小サポート要件を満たさないものは、最適な FP ツリーには表示されません。

これに基づいて FP ツリーが構築され、ヘッド ポインター テーブルを使用して特定の型の最初のインスタンスを指すことで、FP ツリー内のすべての要素にすばやくアクセスできるようになります。ヘッド ポインターを使用して構築された FP ツリーを図に示します。

描画された FP ツリーとヘッド ポインタ テーブルを組み合わせると、テーブル内のデータは次のようにフィルタリングされ、並べ替えられます。

データ項目をフィルタリングおよびソートした後、NULL から開始して、フィルタリングおよびソートされた頻繁な項目セットを継続的に追加して、FP ツリーを構築できます。このプロセスは次のように表現できます。

このようにして、FP ツリーに対応するデータ構造が構築されます。これで、FP ツリーを構築できます。FP ツリーの構築関数については、Python ソース コードを参照してください。

上記の例を実行する前に、実際のデータセットが必要であり、以前のデータを組み合わせてデータセットをカスタマイズする必要があります。このようにして FP ツリーが構築され、次のステップではそれを使用して頻繁なアイテム セットをマイニングします。

<<:  機械学習コードを単体テストするにはどうすればいいですか?

>>:  SSDの寿命は短いですか?寿命を延ばすバランスアルゴリズム

ブログ    
ブログ    
ブログ    
ブログ    
ブログ    
ブログ    
ブログ    

推薦する

パフォーマンスを犠牲にすることなく、メモリ使用量を90%削減。FacebookがQuant-Noiseモデル圧縮方式を提案

数百メガバイトのサイズのニューラル ネットワークの場合、モデル圧縮によりメモリ使用量、通信帯域幅、計...

Google の家庭用ロボットがスタンフォード大学のエビ揚げロボットに挑む!猫と遊ぶためにお茶と水を出し、3回続けてフリックして猫と遊ぶ

インターネット上で話題となったスタンフォード大学のエビ揚げロボットは、1日で人気が急上昇した。結局の...

ByteDance は給与の大幅調整を行いましたが、これは隠された 20% の給与増額です。ネットユーザー:業界の清流!

18日夕方、バイトダンスは全従業員宛ての電子メールで重大イベントを発表した。手紙の全内容が明らかに...

...

AI | 人工知能、プログラマーの終焉?

AIといえば、一般の人はまだそれが何なのか知らない人が多いかもしれません。 Baidu 百科事典で...

李開復「2021年を予測」:4つの主要分野が前例のない発展の機会をもたらす

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

CTR は成功と失敗の鍵です。なぜクリックスルー率はアルゴリズム エンジニアにとって悪夢となっているのでしょうか?

[[409064]]みなさんこんにちは。私は梁唐です。今日は、検索、広告、推奨アルゴリズムにおける...

MLP および Re-Parameter シリーズに関する人気の論文を含む、注目メカニズムの 17 個の PyTorch 実装

[[415286]]注意メカニズムは、最初はコンピューター ビジョンで使用され、その後 NLP の分...

Windows コンピューターでディープラーニング モデルをトレーニングしますか?非常に詳細な設定チュートリアルはこちら

ほとんどのディープラーニング モデルは Linux システムでトレーニングされていますが、Windo...

2021年4月の自動運転分野における重要な進展の概要

2021年に入ってから、自動運転分野の開発は着実に進展しており、4月には自動運転関連のさまざまな動き...

[私はジャービスです]: FaceIDの背後にあるディープラーニング視覚アルゴリズムについて語る

先週発売されたiPhoneXで私が一番惹かれたのは、かわいいウサギの耳ではなく、AppleのFace...

2020年に人工知能はどのように発展するでしょうか?機械学習のトップ専門家が予測するトレンド

[[311763]]人工知能はもはや、いつか世界を変える準備をしているのではなく、すでに世界を変えて...

自動運転のための2Dおよび3D視覚認識アルゴリズムについて話す

環境認識は自動運転における最初のリンクであり、車両と環境を結び付けるものです。自動運転システムの全体...

倫理的な AI の今後はどうなるのでしょうか?

今日のデジタル時代では、人工知能 (AI) と機械学習 (ML) はあらゆるところに存在しています。...

ロボットと自動化技術は、パンデミックの新たな常態の中でどのように新しい雇用を生み出すのでしょうか?

AI テクノロジーと自動化ソリューションは、仕事を奪う諸悪の根源なのでしょうか、それとも新しいプラ...