(57)【要約】電子メッセージ２２を自動的に発見し、フィルタリングする改良されたシステム及び方法である。これらのシステム及び方法は、従来の手法に比べて、処理リソース、データストレージリソース、ネットワークリソース及びフィルタ１７５の生成回数の大幅な削減を達成できるようにコンピュータ装置の動作を改良する。いくつかの例では、改良は、ネットワーク通信環境における特定の電子メッセージ処理ルールの独自のシーケンスを実行するようにコンピュータ装置を構成することに起因する。この点について、これらの例は、機械生成の電子メッセージヘッダの構造及びセマンティックを自動的に学習でき、新しいメッセージソース及び新しいマーケットをサポートする能力を高める。これらの例は、多種多様な電子メッセージフォーマットにわたる購入関連電子メッセージ２２を高精度で識別しフィルタリングすることのできる、購入関連電子メッセージの発見及びフィルタリングのサービスを提供する。【選択図】図７
2020520609.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークノード間で送信され、１以上のメッセージサーバによって管理される１以上のネットワークデータストレージシステム（１２２、１２４、１２６）において各ユーザアカウントに関連付けられて記憶される電子メッセージ（２２）の集合をフィルタリングする方法であって、
各電子メッセージ（２２）は、送信者とヘッダと本文とに関連付けられており、
あるネットワークノードが、１以上の前記メッセージサーバから、複数の前記ユーザアカウントにわたって、１以上の前記ネットワークデータストレージシステム（１２２、１２４、１２６）に記憶されている前記集合内のヘッダをフェッチするステップと、
１以上の送信者の各々につき、当該送信者に関連付けられているフェッチされたヘッダを、クラスタ（１６０）をクラスタリングデータ空間内の密な各領域と関連付ける密度ベースのクラスタリングプロセスに基づいて、前記クラスタ（１６０）にグループ化するステップであって、前記クラスタリングデータ空間において、フェッチされた複数の前記ヘッダは、フェッチされた前記ヘッダの各ペア間の類似度に基づいて互いに離れている、ステップと、
１以上の前記クラスタ（１６０）の各々につき、
あるネットワークノードが、１以上の前記メッセージサーバから、当該クラスタ（１６０）内のフェッチされたヘッダに関連付けられ、１以上の前記ネットワークデータストレージシステム（１２２、１２４、１２６）に記憶されている前記集合内の前記電子メッセージ（２２）の各サンプル（１６４）を取得し、
機械学習分類器（１６６）により、１以上の購入関連ラベル（１６８）と、関連する信頼度とを含む所定のラベルセット（１６８）内の各ラベル（１６８）を用いて、取得された前記サンプル（１６４）内の各電子メッセージ（２２）を分類し、当該クラスタ（１６０）についての各分類データセットを生成し、
各分類データセットを各クラスタラベル（１６８）にマッピングする少なくとも１つのクラスタ分類ルールに基づいて、前記所定のラベルセット（１６８）から選択される各クラスタラベル（１６８）を当該クラスタ（１６０）に割り当てるステップと、
購入関連ラベル（１６８）の１つが割り当てられた１以上のクラスタ（１６０）の各々につき、購入関連電子メッセージ（２２）をフィルタリングする各フィルタ（１７５）を自動的に生成するステップと
を含む方法。
【請求項２】
プロセッサが、１以上のメッセージサーバによって管理される１以上のネットワークデータストレージシステム（１２２、１２４、１２６）において各ユーザアカウントに関連付けられて記憶されている電子メッセージ（２２）の集合から購入関連の電子メッセージ（２２）を選択するために、少なくとも１つのネットワーク通信チャネルに１以上の前記フィルタを設けるステップを更に含む請求項１に記載の方法。
【請求項３】
前記グループ化は、
各メッセージヘッダの件名フィールド内の文字列の比較に基づいて、フェッチされたメッセージヘッダの各ペア間の類似度スコアを計算するステップと、
計算された前記類似度スコアに基づいて、フェッチされたヘッダをクラスタ（１６０）にグループ化するステップと
を含む、請求項１に記載の方法。
【請求項４】
前記グループ化は、フェッチされた前記メッセージヘッダのクラスタ（１６０）を生成するために、計算された前記類似度スコアに類似度閾値を適用するステップを含む、請求項３に記載の方法。
【請求項５】
前記グループ化は、
前記類似度閾値を反復的に調整するステップと、
前記クラスタ（１６０）の数が収束したと判定されるまで、調整された前記類似度閾値に基づいて、フェッチされた前記メッセージヘッダをクラスタ（１６０）にグループ化するステップと
を含む、請求項４に記載の方法。
【請求項６】
前記調整は、初期の類似度閾値の値から徐々に小さくなるように前記類似度閾値を調整するステップを含む、請求項５に記載の方法。
【請求項７】
前記調整の少なくとも１回の反復につき、前記グループ化は、各クラスタ（１６０）内のヘッダが共通した語を有することを要件とするステップを含む、請求項５に記載の方法。
【請求項８】
前記グループ化は、前記サンプル（１６４）内のヘッダに関連付けられている本文とは無関係に行われる、請求項１に記載の方法。
【請求項９】
取得される電子メッセージ（２２）の各サンプル（１６４）は、所定数の電子メッセージ（２２）から構成される、請求項１に記載の方法。
【請求項１０】
各電子メッセージ（２２）の分類は、前記電子メッセージ（２２）にそれぞれ関連付けられているヘッダ及び本文の内容に基づくものである、請求項１に記載の方法。
【請求項１１】
前記所定のラベルセット（１６８）は、
電子メッセージ（２２）を受取りとして分類する第１のラベル（１６８）と、
電子メッセージ（２２）を受取りではないものとして分類する第２のラベル（１６８）と
を含むものである、請求項１に記載の方法。
【請求項１２】
各フィルタ（１７５）の生成は、
各クラスタ（１６０）内のヘッダに共通する部分文字列を特定するステップと、
特定された前記部分文字列に基づいて各フィルタ（１７５）を生成するステップと
を含む、請求項１に記載の方法。
【請求項１３】
各フィルタ（１７５）の生成は、
各クラスタ（１６０）内のヘッダに現れる各バイグラムの数を求めるステップと、
顕著な数に関連する１以上のバイグラムを各フィルタルールに組み込むステップと
を含む、請求項１２に記載の方法。
【請求項１４】
各フィルタルールは、電子メッセージ（２２）内の件名フィールド文字列の各セットについての照合パターンを定めるものである、請求項１２に記載の方法。
【請求項１５】
前記設けるステップは、あるネットワークノードと、１以上の前記メッセージサーバとの間に１以上の前記フィルタを設けるステップを含む、請求項１に記載の方法。
【請求項１６】
各フィルタ（１７５）は、１以上の抽出パーサの各セットに関連付けられ、
前記セット内の各電子メッセージ（２２）と照合される各フィルタ（１７５）につき、前記電子メッセージ（２２）を、照合されたフィルタに関連付けられている１つ以上の前記抽出パーサを用いて解析しようとするステップを更に含む請求項１に記載の方法。
【請求項１７】
ネットワークノード間で送信され、１以上のメッセージサーバによって管理される１以上のネットワークデータストレージシステム（１２２、１２４、１２６）において各ユーザアカウントに関連付けられて記憶されている電子メッセージ（２２）の集合をフィルタリングするフィルタを生成する装置であって、
各電子メッセージ（２２）は、送信者とヘッダと本文とに関連付けられており、
前記装置は、プロセッサ可読型命令を記憶するメモリと、前記メモリに接続され、前記命令を実行し、前記命令の実行に少なくとも部分的に基づいて処理を行うプロセッサとを有し、
前記処理は、
１以上の前記ネットワークデータストレージシステム（１２２、１２４、１２６）から前記集合内のヘッダをフェッチするステップと、
１以上の送信者の各々につき、フェッチされたヘッダをクラスタ（１６０）にグループ化するステップであって、前記グループ化は、いずれのメッセージ本文の内容とは無関係に、前記クラスタ（１６０）内のヘッダ間の類似度に基づいて、フェッチされた各ヘッダを前記クラスタ（１６０）に割り当てるステップを含む、ステップと、
１以上の前記クラスタ（１６０）の各々につき、
１以上の前記ネットワークデータストレージシステム（１２２、１２４、１２６）から、フェッチされ前記クラスタ（１６０）に割り当てられたヘッダに関連付けられている１以上の電子メッセージ（２２）のサンプル（１６４）を取得し、
機械学習分類器（１６６）により、前記サンプル（１６４）内の１以上の取得された電子メッセージ（２２）のヘッダ及び本文の内容に基づいて、受取りに関係するもの又は受取りに関係しないものとして前記クラスタ（１６０）を指定するステップと、
受取りに関係するものとして指定された１以上の前記クラスタ（１６０）の各々につき電子メッセージフィルタ（１７５）を自動的に生成するステップであって、各電子メッセージフィルタ（１７５）は、電子メッセージ（２２）のヘッダの件名フィールド文字列の各パターンを照合する各ルールを定めるものである、ステップと
を含むものである、装置。
【請求項１８】
前記グループ化は、
類似度閾値を反復的に調整するステップと、
前記クラスタ（１６０）の数が収束したと判定されるまで、調整された前記類似度閾値に基づいて、フェッチされた前記メッセージヘッダをクラスタ（１６０）にグループ化するステップと
を含む、請求項１７に記載の方法。
【請求項１９】
前記プロセッサは、前記命令の実行に少なくとも部分的に基づき、
１以上のメッセージサーバによって管理される１以上のネットワークデータストレージシステム（１２２、１２４、１２６）において各ユーザアカウントに関連付けられて記憶されている電子メッセージ（２２）のセットから購入関連の電子メッセージ（２２）を選択するために、少なくとも１つのネットワーク通信チャネルに１以上の前記フィルタを設けるステップを更に含む処理を実行する、請求項１７に記載の装置。
【請求項２０】
前記フェッチは、前記送信者に関連付けられ、複数の前記ユーザアカウントにわたって、１以上の前記ネットワークデータストレージシステム（１２２、１２４、１２６）に記憶されている前記集合内のヘッダのサンプル（１６４）のフェッチを含む、請求項１７に記載の方法。
【請求項２１】
コンピュータ可読プログラムコードが具現化されている少なくとも１つのコンピュータ可読媒体であって、
前記コンピュータ可読プログラムコードは、ネットワークノード間で送信され、１以上のメッセージサーバによって管理される１以上のネットワークデータストレージシステム（１２２、１２４、１２６）において各ユーザアカウントに関連付けられて記憶されている電子メッセージ（２２）の集合を処理する方法を実施するためにネットワークノードによって実行されるものであり、
各電子メッセージ（２２）は、送信者とヘッダと本文とに関連付けられており、
１以上の前記メッセージサーバから、複数の前記ユーザアカウントにわたって、１以上の前記ネットワークデータストレージシステム（１２２、１２４、１２６）に記憶されている前記集合内のヘッダをフェッチする実行可能命令と、
１以上の送信者の各々につき、当該送信者に関連付けられているフェッチされたヘッダを、クラスタ（１６０）をクラスタリングデータ空間内の密な各領域と関連付ける密度ベースのクラスタリングプロセスに基づいて、前記クラスタ（１６０）にグループ化する実行可能命令であって、前記クラスタリングデータ空間において、フェッチされた複数の前記ヘッダは、フェッチされた前記ヘッダの各ペア間の類似度に基づいて互いに離れている、実行可能命令と、
１以上の前記クラスタ（１６０）の各々につき、
１以上の前記メッセージサーバから、当該クラスタ（１６０）内のフェッチされたヘッダに関連付けられ、１以上の前記ネットワークデータストレージシステム（１２２、１２４、１２６）に記憶されている前記集合内の前記電子メッセージ（２２）の各サンプル（１６４）を取得し、
機械学習分類器（１６６）により、１以上の購入関連ラベル（１６８）と、関連する信頼度とを含む所定のラベルセット（１６８）内の各ラベル（１６８）を用いて、取得された前記サンプル（１６４）内の各電子メッセージ（２２）を分類し、当該クラスタ（１６０）についての各分類データセットを生成し、
各分類データセットを各クラスタラベル（１６８）にマッピングする少なくとも１つのクラスタ分類ルールに基づいて、前記所定のラベルセット（１６８）から選択される各クラスタラベル（１６８）を当該クラスタ（１６０）に割り当てることを含む処理を行う実行可能命令と、
購入関連ラベル（１６８）の１つが割り当てられた１以上のクラスタ（１６０）の各々につき、購入関連電子メッセージ（２２）をフィルタリングする各フィルタ（１７５）を自動的に生成するステップと
を含む少なくとも１つのコンピュータ可読媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
人々は、多くの販売業者から様々な支払いオプションを使って商品を購入する。このような購入の取引は、通常、店舗での物理的なレシート又は購入者のメッセージアカウント（例えば、購入者の電子メールアカウント）宛ての電子的確認メッセージによって確認される。確認メッセージが大量、多様であることにより、人々が自身の購入を確認し、購入履歴を全体的に把握することが困難となっている。加えて、人々が商品を購入する販売業者の多様性が大きいことにより、販売業者が正確な顧客プロファイルを作るための十分な購入履歴データを得ることが難しくなっている。ある人が、その人の全ての購入について共通の識別子（例えば、ポイントカード又はクレジットカード）を用いたとしても、これらの購入は、通常、その識別子をその顧客に発行した販売業者によってしか追跡されない。このように顧客情報が不足することで、販売業者をまたいだ顧客の購入取引情報を効率的に見いだす能力には限りがある。
【０００２】
このような問題を改善するために、購入確認メッセージ及び配送確認メッセージ等の、販売業者から直接、消費者に対して発行されるデータソースから購入関連情報を抽出するレポートシステムが開発されている。
【発明の概要】
【０００３】
本発明は、ネットワークノード間で送信され、１以上のメッセージサーバによって管理される１以上のネットワークデータストレージシステムにおいて各ユーザアカウントに関連付けられて記憶される電子メッセージの集合を処理する、コンピュータ装置によって実行される方法を特徴とする。各電子メッセージは、送信者、ヘッダ、及び本文に関連付けられる。この方法によれば、ネットワークデータストレージシステムのうちの１つ以上に記憶された集合内のヘッダは、メッセージサーバのうちの１つ以上から、複数のユーザアカウントにわたって、ネットワークノードによってフェッチされる。１以上の送信者の各々に関して、クラスタを、クラスタリングデータ空間内のそれぞれの密な領域と関連付ける密度ベースのクラスタリングプロセスに基づいて、送信者に関連付けられてフェッチされたヘッダは、クラスタにグループ化される。クラスタリングデータ空間内では、フェッチされたヘッダは、フェッチされたヘッダの各ペア間の類似度に基づいて互いに離れている。複数のクラスタのうちの１つ以上の各々につき、ネットワークノードによって、メッセージサーバのうちの１つ以上から、クラスタ内のフェッチされたヘッダに関連付けられ、ネットワークデータストレージシステムのうちの１つ以上に記憶された集合内の電子メッセージのそれぞれのサンプルが取得される。取得されたサンプル内の各電子メッセージは、クラスタに関する各分類データセットを生成するために、１つ以上の購入関連ラベルと、関連する信頼度とを含む所定のラベルセットの各ラベルを用いて、機械学習分類器によって分類される。クラスタは、それぞれの分類データセットをそれぞれのクラスタラベルにマッピングする少なくとも１つのクラスタ分類ルールに基づいて、所定のラベルセットから選択された各クラスタラベルを割り当てられる。購入関連ラベルのうちの１つが割り当てられた１以上のクラスタの各々に関して、購入関連電子メッセージをフィルタリングするフィルタが自動的に生成される。
【０００４】
また、本発明は、ネットワークノード間で送信され、１以上のメッセージサーバによって管理される１以上のネットワークデータストレージシステムにおいて各ユーザアカウントに関連付けられて記憶されている電子メッセージの集合を処理する、コンピュータ装置によって実行される方法を特徴とする。各電子メッセージは、送信者、ヘッダ、及び本文に関連付けられる。この方法によれば、集合内のヘッダは、１人以上の送信者の各々に関して、ネットワークデータストレージシステムのうちの１つ以上からフェッチされる。１人以上の送信者の各々に関して、フェッチされたヘッダは、クラスタにグループ化される。フェッチされたヘッダをグループ化するプロセスは、メッセージ本文の内容に関係なくクラスタ内のヘッダ間の類似度に基づいて、フェッチされたヘッダを複数のクラスタのうちのそれぞれのクラスタに割り当てることを含む。複数のクラスタのうちの各々につき、ネットワークデータストレージシステムのうちの１つ以上から、フェッチされクラスタに割り当てられたヘッダに関連付けられた電子メッセージのうちの１通以上のサンプルが取得される。クラスタは、サンプル内の１通以上の取得された電子メッセージのヘッダ及び本文の内容に基づいて、受取りに関係するもの又は受取りに関係しないものとして、機械学習分類器によって指定される。それぞれの電子メッセージフィルタは、受取りに関係するものとして指定された複数のクラスタのうちの１つ以上の各々に関して自動的に生成され、各電子メッセージフィルタは、電子メッセージのヘッダ内の件名フィールド文字列のそれぞれのパターンを照合するそれぞれのルールを定める。
【０００５】
いくつかの例では、フィルタのうちの１つ以上は、１つ以上のメッセージサーバによって管理される１つ以上のネットワークデータストレージシステムにおいて各ユーザアカウントに関連付けられて記憶された電子メッセージのセットから購入関連電子メッセージを選択するために、少なくとも１つのネットワーク通信チャネルにプロセッサによって設けられる。
【０００６】
また、本発明は、上述した方法を実施するように動作可能なコンピュータ装置及び上述した方法をコンピュータ装置に実施させるコンピュータ可読命令を記憶するコンピュータ可読媒体を特徴とする。
【図面の簡単な説明】
【０００７】
【図１】ネットワーク通信環境の一例を示す説明図である。
【図２】購入取引データ検索システムの一例によって行われる電子メッセージ処理ステージの全体説明図である。
【図３】電子メッセージの一例を示す説明図である。
【図４】電子メッセージフィルタを生成するプロセスの一例を示すフロー図である。
【図５】図４の電子メッセージフィルタ生成プロセスの複数のステージに関係するデータの説明図である。
【図６】電子メッセージフィルタを生成するプロセスの一例を示すフロー図である。
【図７】電子メッセージフィルタを生成するシステムの一例を示す説明図である。
【図８】クラスタリングデータ空間におけるヘッダのクラスタの一例を示す説明図である。
【図９】電子メッセージのヘッダをクラスタへとグループ化するプロセスの一例を示すフロー図である。
【図１０】電子メッセージフィルタを生成するシステムの一例を示す説明図である。
【図１１】電子メッセージフィルタを生成するプロセスの一例を示すフロー図である。
【図１２】コンピュータ装置の一例を示すブロック図である。
【発明を実施するための形態】
【０００８】
以下の説明において、同じ要素を識別するために同じ符号を用いる。さらに、図面は、例示的な実施形態の主要な特徴を図示するためのものである。図面は、実際の実施形態のあらゆる特徴を示すことを目的としているわけではなく、描かれている要素の相対的な寸法を示すためのものでもなく、一定の縮尺で描かれているわけでもない。
【０００９】
［Ｉ．用語の定義］
「商品（product）」は、購入又は利用の対象となり得る任意の有形又は無形の物品又はサービスである。
【００１０】
「電子メッセージ」は、物理的なネットワークノード間で送信者から受信者へと送られ、非一時的なコンピュータ可読型メモリに記憶される永続的なテキストベースの情報記録である。電子メッセージは、構造化されたもの（例えば、構造化タグ要素を含むハイパーテキストマークアップ言語（ＨＴＭＬ）メッセージ）又は構造化されていないもの（例えば、プレーンテキストメッセージ）とすることができる。
【００１１】
「購入関連電子メッセージ」は、商品の購入に関連する電子メッセージである。購入関連電子メッセージの例には、注文確認、配送確認、払戻し、キャンセル、取寄せ注文、クーポン、及び販売促進が含まれる。
【００１２】
電子メッセージにおける「送信者ドメイン」は、電子メッセージの送信元であるメッセージアドレスの管理範囲を指す。例えば、電子メッセージアドレスが「ｌｏｃａｌ−ｐａｒｔ＠ｄｏｍａｉｎ」というフォーマットを有する場合、「ｌｏｃａｌ−ｐａｒｔ」はメッセージアドレスを特定し、「ｄｏｍａｉｎ」はメッセージアドレスの管理範囲を特定する。複数のメッセージアドレスが同じ送信者ドメインを共有する場合がある。
【００１３】
「受領（受取り、receipt）」は、１つ以上の商品の購入ステータスを確認する電子メッセージである。受領の例には、注文確認電子メッセージと配送確認電子メッセージとが含まれる。
【００１４】
「購入取引情報」（「購入取引データ」とも呼ぶ）は、商品の購入に関連する情報である。購入取引データは、例えば、インボイスデータと、購入確認データと、商品注文情報（例えば、販売者名、注文番号、注文日、商品説明、商品名、商品数量、商品価格、消費税、送料、及び注文金額）と、商品出荷情報（例えば、請求先住所、配送会社、送付先住所、出荷予定日、配送予定日、及び追跡番号）とを含む。
【００１５】
「コンピュータ」は、コンピュータ可読型媒体に一時的又は恒久的に記憶されているコンピュータ可読型命令に従ってデータを処理する任意の機械、デバイス、又は装置である。「コンピュータ装置」は、１つ以上の独立したコンピュータを指す。「コンピュータオペレーティングシステム」は、タスクの動作と、コンピューティングリソース及びハードウェアリソースの共有とを管理及び調整するコンピュータのソフトウェア構成要素である。「ソフトウェアアプリケーション」（ソフトウェア、アプリケーション、コンピュータソフトウェア、コンピュータアプリケーション、プログラム、及びコンピュータプログラムともいう）は、コンピュータが解釈及び実行して１つ以上の特定のタスクを実行することができる一組の命令である。「データファイル」は、ソフトウェアアプリケーションによって用いられるデータを永続的に記憶する情報のブロックである。
【００１６】
「コンピュータ可読型媒体」（「メモリ」ともいう）という用語は、機械（例えば、コンピュータ）によって読み出すことができる情報（例えば、命令及びデータ）を記憶することが可能な任意の有形で非一時的なデバイスを指す。このような情報を有形なものとして具現化するのに適した記憶デバイスには、例えば、ランダムアクセスメモリ（ＲＡＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、及びフラッシュメモリデバイス等の半導体メモリデバイス、内部ハードディスク及びリムーバブルハードディスク等の磁気ディスク、光磁気ディスク、ＤＶＤ−ＲＯＭ／ＲＡＭ、並びにＣＤ−ＲＯＭ／ＲＡＭを含むあらゆる形態の物理的で非一時的なコンピュータ可読型メモリが含まれるが、これらに限定されるわけではない。
【００１７】
「ネットワークノード」は、通信ネットワーク内の物理的な接合点又は接続点である。ネットワークノードの例には、端末、コンピュータ、及びネットワークスイッチが含まれるが、これらに限定されない。「サーバシステム」は、１つ以上のネットワークノードを備え、情報又はサービスの要求に応じるものである。「クライアントノード」は、情報又はサービスをサーバシステムに要求するネットワークノードである。
【００１８】
本明細書において、「含む（備える）」という用語は、その対象を含む（備える）が、それらに限定されないことを意味し、「含んでいる（備えている）」という用語は、その対象を含んでいる（備えている）が、それらに限定されないことを意味する。「基づく」は、その対象に少なくとも部分的に基づくことを意味する。
【００１９】
［ＩＩ．購入関連電子メッセージのフィルタリング］
Ａ．序論
人々は、世界中で毎日、２０００億通近くの電子メールを送受信している。しかし、これらの電子メールのうち、購入に関するものはごく少数にすぎない。結果として、ユーザのメッセージアカウントを取捨選択し、目下実用的な情報を定期的に得るのに十分な量の購入関連電子メールを特定し、取得するのに、相当量の時間及びリソースが必要である。
【００２０】
本明細書において説明する例によれば、購入関連情報を指定された受信者に伝えるために物理的なネットワークノード間で送信される購入関連電子メッセージを発見してフィルタリングする改良されたシステム及び方法が提供される。これらのシステム及び方法は、各販売業者によって使用され、販売業者間で異なる様々な電子メッセージフォーマットが急増した結果として生じている実際的な問題を解決するものである。この点につき、これらの例は、機械生成の電子メッセージヘッダの構造及びセマンティックを自動的に学習でき、これにより、新しいメッセージソース、新しいマーケット、及び種々の言語をサポートする能力が促進される。これらの例は、多種多様な電子メッセージフォーマットにわたる購入関連電子メッセージを高精度で識別しフィルタリングすることができる、購入関連電子メッセージの発見及びフィルタリングのサービスを提供する。
【００２１】
本明細書において説明する例は、機械により生成された購入関連電子メッセージに特有の構造的特徴に関する知見を利用して、購入関連電子メッセージを自動的に発見しフィルタリングするプロセスを実施するものである。このプロセスは、コンピュータ装置の処理を改良し、従来の手法に比べて、処理リソース、データストレージリソース、ネットワークリソース、及びフィルタ生成回数を大幅に削減する。いくつかの例では、この改良は、ネットワーク通信環境における特定の電子メッセージ処理ルールの独自のシーケンスが実行されるようにコンピュータ装置を構成することによる。いくつかの例では、複数の販売業者によって送られる、複数の機械生成による購入関連電子メッセージの個別の特性を自動的に学習し、処理がそれらの特性に自動的に合うようにコンピュータ装置を構成することによって、従来の手法を上回る更なる利点が得られる。いくつかの例は、例えば、機械生成の購入関連電子メッセージのテンプレートの各セットを生成するために、複数の販売業者によって用いられるそれぞれのテンプレートにおける種々のレベルの違いに合わせてコンピュータ装置の処理を自動的に調整することによって、メッセージ発見プロセスの精度及び効率を実質的に向上させる。
【００２２】
特定の例において、これらのシステム及び方法は、一組の電子メッセージから、購入関連電子メッセージの本文の構造的要素を定める各メッセージテンプレートに従って、機械により生成される購入関連電子メッセージのヘッダを照合する電子メッセージフィルタを自動的に学習できるようにプログラミングされる改良された特定用途のコンピュータ装置を含む。また、これらのシステム及び方法は、１つ以上のメッセージサーバによって管理される１つ以上のネットワークデータストレージシステムにおいて各ユーザアカウントに関連付けられて記憶された一組の電子メッセージから購入関連電子メッセージを選択できるように、少なくとも１つのネットワーク通信チャネルに学習済み電子メッセージフィルタを設ける（インストールする）ようプログラミングされる改良された特定用途のコンピュータ装置を含む。
【００２３】
これらの改良されたシステム及び方法によれば、商品購入情報を多種多様な電子メッセージのタイプから識別、抽出し、集約することで、個人の購入履歴を可視化及び整理する強化ツールを個人に提供できるとともに、的を絞った、あまり押し付けがましくない広告戦略及び他のマーケティング戦略を可能にする様々な消費者層にわたる改良された販売業者間の購入情報を販売業者及び他の組織へ提供することができる。これらの改良されたシステム及び方法を展開して、消費者の購入を経時的にモニタし、個別の消費者について又は多くの消費者にわたって集約することができる更新された購入履歴情報を取得し、消費者の行動及び組織的マーケティング戦略を導く実用的な情報を提供することができる。例えば、これらの改良されたシステム及び方法は、個別の電子メッセージから抽出された異なる商品購入情報を、消費者が自身の以前の購入を整理し、自身の購入行動の理解を高めるために用いることができるとともに、販売業者及び他の組織が自身のマーケティングキャンペーンの精度及び投資利益率を改善するために用いることができる実用的なデータへと編成することができる。
【００２４】
Ｂ．動作環境の例
図１に、ネットワーク１１を有するネットワーク通信環境１０の例を示す。ネットワーク１１は、購入取引データ検索システム１２と、商品を販売する１以上の商品販売業者１４と、購入商品を購入者に配送する１以上の商品配送業者１６と、メッセージ処理サービスを提供する１以上のメッセージプロバイダ１８と、商品情報及びマーケット情報並びにサービスを購入取引データ検索システム１２から購入する１以上の購入取引情報利用者２０とを相互に接続する。
【００２５】
ネットワーク１１は、ローカルエリアネットワーク（ＬＡＮ）、メトロポリタンエリアネットワーク（ＭＡＮ）、及びワイドエリアネットワーク（ＷＡＮ）（例えば、インターネット）のうちの任意のものを含むことができる。ネットワーク１１は、通常、購入取引データ検索システム１２と、１以上の商品販売業者１４と、商品配送業者１６と、メッセージプロバイダ１８と、購入取引情報利用者２０との各ネットワークノード間での多種多様な異なるメディアタイプ（例えば、テキスト、音声、オーディオ、及びビデオ）の伝送をサポートする複数のコンピューティングプラットフォーム及び配信設備を有する。購入取引データ検索システム１２と、商品販売業者１４と、商品配送業者１６と、メッセージプロバイダ１８と、購入取引情報利用者２０との各々は、通常、ネットワークノード（例えば、クライアントコンピュータ又はサーバシステム）を介してネットワーク１１に接続する。このネットワークノードは、有形のコンピュータ可読型メモリと、プロセッサと、入出力（Ｉ／Ｏ）ハードウェア（ディスプレイを含みうる）とを備える。
【００２６】
商品販売業者１４のうちの１以上は、通常、個人及び会社が、ウェブブラウザ等のネットワーク対応ソフトウェアアプリケーションを使用しネットワーク１１を通じて商品を直接購入することを可能とする。商品販売業者１４のうちの１以上は、個人及び会社が物理的な小売店舗において商品を購入することも可能とすることができる。いずれの場合も、購入取引が完了した後、商品販売業者１４は、商品購入者に関連付けられているメッセージアドレスに商品購入確認電子メッセージを送信することができる。この商品購入確認メッセージは、例えば、販売業者名、注文番号、注文日、配送予定日、商品説明、商品名、商品数量、商品価格、消費税、送料、及び注文金額等の商品注文情報を含むことができる。商品販売業者１４は、商品を商品配送業者１６のうちの一者によって配送してもらうように手配することもできる。購入された商品のタイプに応じて、商品配送業者１６は、商品を購入者へ物理的又は電子的に送ることができる。いずれの場合も、商品配送業者１６又は商品販売業者１４は、購入者に関連付けられているメッセージアドレスに配送通知電子メッセージを送信することができる。この配送通知電子メッセージは、例えば、商品注文情報、請求先住所、配送会社、送付先住所、出荷予定日、配送予定日、及び追跡番号等の商品出荷情報を含むことができる。
【００２７】
一般に、購入者のメッセージアドレスは、電子メッセージを送信することができる任意のタイプのネットワークアドレスとすることができる。そのようなメッセージアドレスの例には、電子メール（ｅメール）アドレス、テキストメッセージアドレス（例えば、電話番号又はテキストメッセージサービスのユーザ識別子などの送信者識別子）、ソーシャルネットワーキングサービスのユーザ識別子、及びファクシミリ電話番号が含まれる。購入に関連した電子メッセージは、通常、購入者のメッセージアドレスに関連付けられているメッセージプロバイダ１８の各々を経て購入者へとルーティングされる。メッセージプロバイダ１８は、通常、１つ以上のメッセージサーバによって管理される１つ以上のネットワークデータストレージシステムにおいて購入者のメッセージアドレスに関連付けられた各メッセージフォルダに購入者の電子メッセージを保存する。
【００２８】
購入取引データ検索システム１２は、商品購入者の電子メッセージから購入取引情報を抽出する。いくつかの例では、購入取引データ検索システムは、メッセージプロバイダ１８によって管理される商品購入者の各メッセージフォルダにアクセスする許可を商品購入者から得る。別の例では、商品購入者は、購入取引データ検索システム１２が、商品購入者のローカル通信デバイス（例えば、パーソナルコンピュータ又はモバイルフォン）に記憶された電子メッセージにアクセスすることを許可する。
【００２９】
図２に示すように、購入取引データ検索システム１２は、購入者の電子メッセージ２２にアクセスする許可を得たのち、複数のステージを通じて電子メッセージ２２を処理し、購入取引情報利用者２０に提供されることになる処理済みデータ２４を生成する。これらのステージには、メッセージ発見ステージ２６と、フィールド抽出ステージ２８と、データ処理ステージ３０とが含まれる。
【００３０】
メッセージ発見ステージ２６では、購入取引データ検索システム１２は、商品購入に関係する電子メッセージ２２を特定する。いくつかの例では、ルールベースのフィルタ及び機械学習分類器を用いて、購入関連電子メッセージを特定する。
【００３１】
フィールド抽出ステージ２８では、購入取引データ検索システム１２は、電子メッセージ２２のうち、特定されたものから商品購入情報を抽出する。このような商品購入情報の例には、販売業者名、注文番号、注文日、商品説明、商品名、商品数量、商品価格、消費税、送料、注文金額、請求先住所、配送会社、送付先住所、出荷予定日、配送予定日、及び追跡番号が含まれる。
【００３２】
データ処理ステージ３０では、購入取引データ検索システム１２は、種々のタイプの購入取引情報利用者２０に従って、抽出された商品購入情報を処理する。例えば、個人ユーザの場合、抽出された商品購入情報は、例えば、そのユーザの購入についての情報が示されるように処理される。この情報は、配送中の注文を追跡するための情報と、購入の詳細にアクセスするための情報と、集約された購入サマリ情報とを含む。広告主の場合、抽出された商品購入情報は、例えば、消費者の購入履歴に基づいて消費者への的を絞った広告を支援できるように処理される。マーケットアナリストの場合、抽出された商品購入情報は、例えば、小売業者、カテゴリ、及びデバイスにわたる匿名の品目レベルの購入詳細を提供できるように処理される。
【００３３】
Ｃ．購入関連電子メッセージの発見及びフィルタリング
以下で詳細に説明する例では、購入取引情報データ検索システム１２は、フィルタ学習システムを有する。このフィルタ学習システムは、購入関連電子メッセージの構造的要素をそれぞれ定める各メッセージテンプレートに従って機械により生成される電子メッセージの組などの、類似した購入関連電子メッセージの各組のヘッダを照合する電子メッセージフィルタを自動的に学習する。
【００３４】
図３に、商品注文の確認電子メッセージ３２の一例を示す。確認電子メッセージ３２は、ヘッダ３４及び本文３５を含む。ヘッダ３４は、以下の標準の構造的要素、すなわち、「Ｆｒｏｍ：」と、「Ｔｏ：」と、「Ｄａｔｅ：」と、「Ｓｕｂｊｅｃｔ：」とを含む。また、ヘッダは、図３には示されていない以下の構造的要素、すなわち、「Ｃｃ：」と、「Ｃｏｎｔｅｎｔ−Ｔｙｐｅ」と、「Ｐｒｅｃｅｄｅｎｃｅ：」と、「Ｍｅｓｓａｇｅ−ＩＤ：」と、「Ｉｎ−Ｒｅｐｌｙ−Ｔｏ：」と、「Ｒｅｆｅｒｅｎｃｅｓ：」と、「Ｒｅｐｌｙ−Ｔｏ：」と、「Ａｒｃｈｉｖｅｄ−Ａｔ：」と、「Ｒｅｃｅｉｖｅｄ：」と、「Ｒｅｔｕｒｎ−Ｐａｔｈ：」とのうちの１つ以上を含む。本文３６は、以下の、販売業者ごとの機械生成による構造的要素、すなわち冒頭の「Dear」３６と、情報を有する標準的なテキスト３７（すなわち、「Thank you for placing your order ... once your item has been shipped.」）と、「Order Number:」３８と、「Order Summary」４０と、「Product Subtotal:」４２と、「Discounts:」と、「Shipping Charges:」４６と、「Tax:」４８と、「Total:」５０と、「Part No」５２と、「Product Price」５４と、「Discount」５６と、「Part No」５８と、「Product Price」６０と、「Discount」６２とを含む。構造的要素３４〜５０は、固定要素であり、構造的要素５２〜５６の組及び５８〜６２の組は、それぞれ反復する要素において繰り返される同じ固定要素を含む。電子メッセージの非構造的要素（例えば、価格、注文番号、及び品番）は、商品購入情報プロバイダ１２のパーサ部によって抽出及び分類されるデータフィールドである。
【００３５】
図４に、一例として、１以上の電子メッセージフィルタを自動的に作る方法６６を示す。この方法により、コンピュータ装置は、ネットワークノード間で送信され、１以上のメッセージサーバによって管理される１以上のネットワークデータストレージシステムにおいて各ユーザアカウントに関連付けられて記憶されている電子メッセージの集合を処理する。この集合における電子メッセージの各々は、送信者とヘッダと本文とに関連付けられている。
【００３６】
図示の例では、コンピュータ装置は、１以上の電子メッセージ送信者の各々に関して図４の方法を実行するようプログラムが組まれている（図４、ブロック６８）。送信者は、単一の電子メッセージアドレス（例えば、ｓａｌｅｓ＠ｓｔｏｒｅ．ｃｏｍ）又は複数の電子メッセージアドレスに関連付けることができる送信者ドメイン（例えば、＊＠ｓｔｏｒｅ．ｃｏｍ）に対応しているものとすることができる。
【００３７】
コンピュータ装置は、ネットワークデータストレージシステムのうちの１つ以上からヘッダをフェッチする（図４、ブロック７０）。フェッチされたヘッダは、特定の送信者ドメインに関連付けられる場合もあれば、送信者ドメインとは無関係にフェッチされる場合もある。コンピュータ装置は、フェッチされたヘッダをクラスタへとグループ化する（図４、ブロック７２）。このプロセスでは、各送信者につき、フェッチされた各ヘッダは、メッセージ本文の内容とは無関係に、クラスタ内のヘッダ同士の類似度に基づいてクラスタに割り当てられる。１以上のクラスタの各々につき（図４、ブロック７４、８０）、コンピュータ装置は、１つ以上のネットワークデータストレージシステムから、フェッチされてクラスタに割り当てられたヘッダに関連付けられている電子メッセージのうちの１つ以上の各サンプルを取得する（図４、ブロック７６）。また、コンピュータ装置は、機械学習分類器を用いて、サンプル内の検索された１つ以上の電子メッセージのヘッダ及び本文の内容に基づいて、クラスタを受取りに関係するもの又は受取りに関係しないものとして指定する（図４、ブロック７８）。コンピュータ装置は、受取りに関係するものとして指定された１以上のクラスタの各々につき、各電子メッセージフィルタを自動的に生成する。各電子メッセージフィルタは、電子メッセージのヘッダ内の件名フィールド文字列の各パターンを照合するそれぞれのルールを定めるとともに、１つ以上のネットワークデータストレージシステムによって管理される１つ以上のデータストレージシステムにおいて各ユーザアカウントに関連して記憶されている電子メッセージのクロールを行う（図４、ブロック８２）。
【００３８】
図４に示す手法は、３つの主要なステージ、すなわち、（ｉ）ヘッダを、類似した構造的要素を有する電子メッセージのクラスタにグループ化するヘッダ構造学習ステージと、（ｉｉ）どのヘッダクラスタが１つ以上の購入関連電子メッセージタイプに対応しているかを正確に特定するサンプルベースの分類ステージと、（ｉｉｉ）フィルタ生成ステージとを有する。（例えば、ヘッダ及び本文を含む）完全な電子メッセージの処理は、ヘッダのみの処理よりも実質的に多くのリソースを消費する。検索され、分類ステージにおいて処理される完全な電子メッセージの数を、サンプリングにより大幅に減らすことができる。このように、図４の方法によれば、従来の手法に比べて、処理リソース、データストレージリソース、ネットワークリソース、及び電子メッセージフィルタを作るのに必要なフィルタ生成回数を大幅に減らすことができる。加えて、本システムは、ヘッダと、ヘッダクラスタに対応する（通常、受領等の機械生成の電子メッセージに対応する）完全な電子メッセージの少数のサンプルとのみを取得するため、ユーザの個人的な電子メッセージを不注意で取得してしまう可能性が低く、したがってユーザプライバシは本質的に守られる。
【００３９】
この手法は、各クラスタに関連付けられる完全な電子メッセージのサンプルのみに基づいてヘッダが分類されているものの、高精度なフィルタを生成するために機械生成の電子メッセージの本質的な構造的性質を利用するものである。特に、ヘッダ構造学習ステージでは、機械生成の電子メッセージに適用されると、同じメッセージテンプレートによって生成されている可能性のある電子メッセージヘッダの密なクラスタを生成することができる。結果として、分類ステージにおいて各クラスタを表すのに必要なのは、ほんのわずか又はたった１つの、サンプルとなる完全な電子メッセージのみである。
【００４０】
図５に、図４のフィルタ構築方法の複数のステージにおいて処理されるデータの一例を示す。この例では、フェッチするステージ８４は、特定の送信者ドメインに対応する電子メッセージの例としての集合内の１０００万個のヘッダ全てをフェッチすることを含む。クラスタリングステージ８６は、１０００万個のヘッダを２００個のヘッダクラスタに分けることを含む。クラスタ分類ステージ８８は、２００個のクラスタの各々につき１０通の電子メッセージからなる所定の固定的なサイズのサンプルに対応する２０００通の完全な電子メッセージを取得することと、機械学習分類器を用いてそれぞれの電子メッセージサンプルを分類することとを含む。フィルタ生成ステージ９０は、購入に関連するものとして分類される各クラスタのフィルタを構築することを含む。したがって、この仮定的な例では、電子メッセージフィルタを生成するために処理される完全な電子メッセージの数（すなわち、２０００通）は、この集合における電子メッセージの総数のたった０．０２％に過ぎない。結果として、従来の手法に比べて、処理リソース、データストレージリソース、ネットワークリソース、及びフィルタ生成回数が大幅に削減される。
【００４１】
いくつかの例では、これらの実質的な利点は、少なくとも部分的に、コンピュータ装置が購入関連電子メッセージのヘッダを特定する方法を改良する特定のコンピュータ可読型命令をコンピュータ装置にプログラミングすることから得られる。場合によっては、コンピュータ装置の購入関連ヘッダの識別能力は、コンピュータ装置に、電子メッセージヘッダを密なクラスタに分類させ、次いで、機械学習分類器を用いて、各ヘッダクラスタに関連付けられる完全な電子メッセージの少数のサンプルに基づいて購入関連ヘッダクラスタを識別させる特定の命令をコンピュータ装置に設定することによるものである。
【００４２】
図６は、図４の電子メッセージフィルタ構築プロセスの一例９８のフロー図である。この方法によれば、コンピュータ装置は、ネットワークノード間で送信され、１つ以上のメッセージサーバによって管理される１つ以上のネットワークデータストレージシステムにおいて各ユーザアカウントに関連付けられて記憶されている電子メッセージの集合を処理する。この集合における電子メッセージの各々は、送信者とヘッダと本文とに関連付けられている。
【００４３】
この例では、コンピュータ装置は、１以上の電子メッセージ送信者からの電子メッセージに基づいて、図６の方法の１つ以上の要素を実行できるようにプログラミングされている（図６、ブロック１００）。前述のとおり、送信者は、単一の電子メッセージアドレス（例えば、ｓａｌｅｓ＠ｓｔｏｒｅ．ｃｏｍ）又は複数の電子メッセージアドレスに関連付けることができる送信者ドメイン（例えば、＊＠ｓｔｏｒｅ．ｃｏｍ）に対応したものとすることができる。
【００４４】
図６の方法によれば、コンピュータ装置（例えば、クライアントネットワークノード）は、１以上のメッセージサーバから、送信者に関連付けられ、複数のユーザアカウントにわたってネットワークデータストレージシステムのうちの１つ以上に記憶されている集合内のヘッダをフェッチする（図６、ブロック１０２）。ある例では、コンピュータ装置は、電子メッセージの集合内の全ての電子メッセージヘッダをフェッチする。別の例では、コンピュータ装置は、この集合内の電子メッセージヘッダの１つ以上のサンプルをフェッチする。
【００４５】
ヘッダをフェッチする前に、コンピュータ装置は、通常、ユーザから直接、又は、アクセス許可サービス等の第三者サービスにより間接的にユーザのメッセージアカウントにアクセスする許可を取得する。コンピュータ装置は、その後、アクセス許可により、ユーザのメッセージアカウントから送信者に関連付けられたヘッダをフェッチする。いくつかの例では、コンピュータ装置は、（例えば、電子メッセージＡＰＩを呼び出すことによって）ユーザのメッセージアカウントのクロールを行い、電子メッセージヘッダの内容を解析し評価する電子メッセージクローリングエンジンを実装する。いくつかの例では、電子メッセージクローリングエンジンは、「Ｆｒｏｍ：」フィールド及び「Ｓｕｂｊｅｃｔ：」フィールドの一方又は両方を解析し、１つ以上のフィルタ（例えば、正規表現フィルタ）を解析された結果に適用して、対象の送信者に対応するヘッダを特定する。
【００４６】
コンピュータ装置は、クラスタを、クラスタリングデータ空間内のそれぞれの密な領域と関連付ける密度ベースのクラスタリングプロセスに基づいて、フェッチされたヘッダをクラスタにグループ化する（図６、ブロック１０４）。クラスタリングデータ空間において、フェッチされたヘッダは、フェッチされたヘッダの各ペア間の類似度に基づいて互いに離れている。一般的に、任意の密度ベースのクラスタリングプロセスを用いることができる。いくつかの例では、図８及び図９に関連して後述する反復型クラスタリングプロセスを用いて、フェッチされたヘッダをクラスタに分ける。別の例では、コンピュータ装置は、ノイズを認める密度ベースの空間クラスタリング（ＤＢＳＣＡＮ：Density-Based Spatial Clustering of Applications with Noise）というクラスタリングプロセスを用いて、フェッチされたヘッダをクラスタに分ける。
【００４７】
いくつかの例では、コンピュータ装置は、ヘッダをクラスタに分ける前に、電子メッセージヘッダ内の件名フィールドの前処理を行う。いくつかの例では、コンピュータ装置は、空白スペースによって隔てられた、記号（例えば、英数字を表す記号）の連続する文字列を抽出することによってヘッダ内の件名フィールドのテキストベースの内容をトークン化する。連続する記号文字列は、通常、単語及び数字に対応する。いくつかの例では、コンピュータ装置は、大文字を小文字に置き換えることと、句読点を削除することと、電子メッセージヘッダ内の整数及び実数のパターンに合うトークンをワイルドカードトークンに置き換えることとによって、件名フィールドの内容を正規化する。いくつかの例では、整数は「ＩＮＴ」というワイルドカードトークンに置き換えられ、実数は「ＦＬＯＡＴ」というワイルドカードトークンに置き換えられる。件名フィールドの正規化により、コンピュータ装置が購入関連電子メッセージを見いだす能力が向上する。
【００４８】
いくつかの例では、フェッチされたヘッダの各ペア間の類似度は、電子メッセージのヘッダ内の文字列のペアの内容の類似度及び相違の度合いを比較する内容類似度の基準に基づいて求められる。これらの例のうちのいくつかでは、各ヘッダの件名フィールドは、バイグラム（すなわち、２文字の語句）の組に分解される。これらの例のうちのいくつかでは、類似度の基準は、ジャッカード（Ｊａｃｃａｒｄ）類似度係数に対応する。ジャッカード類似度係数は、２つのヘッダ間の類似度を、両ヘッダのバイグラムの共通集合のサイズを和集合のサイズで割った結果に基づいて測るものである。
【００４９】
ヘッダがクラスタに分けられたのち、コンピュータ装置は、１つ以上のクラスタの各々につき、以下のプロセスを実行する（図６、ブロック１０８）。
【００５０】
コンピュータ装置（例えば、クライアントネットワークノード）は、メッセージサーバのうちの１つ以上から、クラスタ内のフェッチされたヘッダに関連付けられ、ネットワークデータストレージシステムのうちの１つ以上に記憶されている集合内の電子メッセージのそれぞれのサンプルを取得する（図６、ブロック１０８）。いくつかの例では、コンピュータ装置は、各クラスタにつき、所定の数（例えば、１０通、５通、又は１通）の電子メッセージを取得する。他の例では、コンピュータ装置は、例えば、クラスタ内のヘッダを特徴付ける統計的な基準に応じた、各クラスタについて変えられる数の電子メッセージを取得する。
【００５１】
コンピュータ装置は、機械学習分類器により、１以上の購入関連ラベルと、関連する信頼度とを含むラベルの所定の組の各ラベルを用いて、検索されたサンプル内の各電子メッセージを分類し、当該クラスタのそれぞれの分類データセットを生成する（図６、ブロック１１０）。
【００５２】
いくつかの例では、機械学習分類器は、教師あり機械学習モデル（例えば、ロジスティック回帰モデル又は単純ベイズモデル）により、購入関連電子メッセージのバッグオブワーズ（bag-of-words）表現についての学習がなされている。これらの例のうちのいくつかでは、バッグオブワーズ表現は、特定の購入関連電子メッセージを記述する記述的特徴を含む。いくつかの例では、各特徴は、文字列（例えば、単語）及びその文字列が所定の辞書に現れる回数を表す。いくつかの例では、その辞書は、件名フィールド内の単語又はｎグラムと、送信者アドレスの態様（例えば、「＠」記号の前のテキスト）と、メッセージ本文内の単語と、メッセージ本文内の画像の数とを含む。
【００５３】
いくつかの例では、ラベルの所定の組は、電子メッセージが受取りに関係するものか、又は受取りに関係しないものであるかを示すラベルからなる。このタイプの一例としてのラベルセットは、｛「受取り」、「不明」｝である。他の例では、機械学習分類器は、電子メッセージを複数の購入関連電子メッセージのカテゴリに分類する。このタイプの一例としてのラベルセットは、以下のラベルすなわち｛「注文通知」、「配送通知」、「払戻し」、「キャンセル」、「取寄せ注文」、「クーポン」、「販売促進」、「不明」｝のうちのいくつか又は全てを含む。
【００５４】
いくつかの例では、機械学習分類器は、各クラスタにつき、サンプリングされた電子メッセージの各々に、所定のラベルセットから選択されたそれぞれの予測されるラベル、及び、予測されたラベルに関連付けられる信頼度を割り当てる。各クラスタのそれぞれの分類データセットは、電子メッセージの対応するサンプルに関する予測されたラベル及びそれらの関連付けられたラベルの信頼度のセットを含む。
【００５５】
コンピュータ装置は、それぞれの分類データセットをそれぞれのクラスタラベルにマッピングする少なくとも１つのクラスタ分類ルールに基づいて、各クラスタに、所定のラベルセットから選択されたそれぞれのクラスタラベルを割り当てる（図６、ブロック１１２）。いくつかの例では、クラスタ分類ルールは、コンピュータ装置に対し、１つ以上の信頼因子に基づく特定のラベルを使ってクラスタのラベル付けをするように命令する。信頼因子は、同じラベルが割り当てられた対応するサンプル内の電子メッセージの数、及び、割り当てられたラベルに関連付けられた信頼度などである。このようなクラスタ分類ルールの一例に従って、特定のラベルが、信頼度閾値（例えば、９８％以上）を満たすそれぞれの信頼度を持ってサンプル内の全ての電子メッセージに割り当てられた場合、クラスタは、その特定のラベルでラベル付けされる。いくつかの例では、特定のクラスタの信頼因子が信頼閾値を満たさない場合、クラスタ内の電子メッセージは手動分類用としてのフラグが付けられる。
【００５６】
いくつかの例では、特定の電子メッセージの予測されたラベルが、信頼度閾値未満であると判断されると、コンピュータ装置は、手動分類用としてその特定の電子メッセージにフラグを付ける。いくつかの例では、手動でラベルが付けられた電子メッセージを用いて、機械学習分類器の学習用セットを拡張する。
【００５７】
コンピュータ装置は、購入関連ラベルが割り当てられた各クラスタにつき、購入関連電子メッセージをフィルタリングするそれぞれのフィルタを自動的に生成する（図６、ブロック１１６）。いくつかの例では、フィルタを生成するプロセスは、それぞれのクラスタにおけるヘッダ内の共通の部分文字列を特定することと、特定された部分文字列に基づいて、それぞれのフィルタ（例えば、正規表現フィルタ）を生成することとを含む。各フィルタは、通常、電子メッセージ内の件名フィールド文字列のそれぞれのセットの一致パターンを定める。いくつかの例では、シーケンスマイニングを用いて、ヘッダ内のｎグラム（すなわち、テキストの所与のシーケンスに関するｎ個のアイテムが連続するシーケンス）の解析に基づいてフィルタを生成する。これらの例は、各クラスタ内のヘッダの件名フィールドに現れるｎグラムのそれぞれの個数を求めることと、それぞれのフィルタに、顕著な個数（例えば、そのｎグラムは、高い割合でこのヘッダ内に現れる）に関連付けられるｎグラムのうちの１つ以上を組み込むこととを含む。これらの例のうちのいくつかでは、シーケンスマイニングは、ヘッダの件名フィールド内のバイグラムを解析することを含む。各クラスタからそれぞれのフィルタを自動的に生成する方法の一例は、図１１に関連して以下に説明する。
【００５８】
各購入関連クラスタのそれぞれのフィルタを生成した後、プロセッサは、１つ以上のメッセージサーバによって管理される１つ以上のネットワークデータストレージシステムにおいて各ユーザアカウントに関連付けられて記憶されている電子メッセージのセットから購入関連電子メッセージを選択するために、少なくとも１つのネットワーク通信チャネル内にフィルタのうちの１つ以上を設ける（インストールする）ことができる。いくつかの例では、コンピュータ装置は、ユーザのメッセージアカウントのクロールを行い、電子メッセージヘッダの内容を解析し評価する電子メッセージクローリングエンジンを実装する。いくつかの例では、電子メッセージクローリングエンジンは、ユーザの電子メッセージの「Ｆｒｏｍ：」というヘッダフィールド及び「Ｓｕｂｊｅｃｔ：」というヘッダフィールドを解析し、生成されたフィルタ（例えば、正規表現フィルタ）のうちの１つ以上を解析された結果に適用して、対象の送信者に対応する購入関連ヘッダを識別する。その後、電子メッセージクローリングエンジンは、識別された購入関連ヘッダに対応する完全な電子メッセージを検索する。いくつかの例では、各フィルタは、１つ以上の電子メッセージ本文抽出パーサのそれぞれのセットに関連付けられる。これらの例では、そのセット内の電子メッセージのうちのそれぞれ１つに一致する各フィルタに関して、コンピュータ装置は、一致したフィルタに関連付けられた１つ以上の電子メッセージ本文抽出パーサを用いて電子メッセージ本文を解析することを試みる。メッセージ本文抽出パーサの例は、米国特許第８，８４４，０１０号、米国特許第９，５６３，９１５号及び米国特許第９，５６３，９０４号に記載されている。
【００５９】
図７は、メッセージフィルタを構築するシステム１１８の例の説明図である。システム１１８は、ネットワークノード間で送信され、それぞれのメッセージサーバ（例えば、メッセージプロバイダ１、メッセージプロバイダ２、．．．、メッセージプロバイダＭ）によって管理される１つ以上のネットワークデータストレージシステム１２２、１２４、１２６において各ユーザアカウント（例えば、alice、bob、clark、dan、eric、peter、及びrob）に関連付けられて記憶されている電子メッセージの集合を処理する。
【００６０】
システム１１８は、１人以上の送信者の各々につき、送信者に関連付けられ、複数のユーザアカウントにわたってネットワークデータストレージシステム１２２〜１２６のうちの１つ以上に記憶されている電子メッセージの集合内のヘッダのそれぞれのサンプルをフェッチするヘッダサンプラ１２０を有する。送信者に関連付けられている全てのヘッダをフェッチするのではなく、利用可能なヘッダのサンプルのみをフェッチすることにより、ヘッダサンプラ１２０は、処理リソース、データストレージリソース、ネットワークリソース、及び、電子メッセージフィルタを作るのに必要な生成回数を削減することでコンピュータ装置の動作を向上させる。他の例では、ヘッダサンプラ１２０は、送信者ドメインにわたるヘッダのサンプルをフェッチする。
【００６１】
プリプロセッサ１２８は、ヘッダをクラスタに分ける前に電子メッセージヘッダのフェッチされたサンプル内の件名フィールドの前処理を行う。いくつかの例では、プリプロセッサ１２８は、図６の方法について上述のフェッチプロセスに関して上述した前処理ステップのうちの１つ以上を実行する。いくつかの例では、プリプロセッサ１２２はまた、同一の件名フィールドコンテンツを有する全てのヘッダを単一のインスタンスとして扱うことによりヘッダデータの重複を取り除く。このようにして、プリプロセッサ１２８は、処理リソース、データストレージリソース、ネットワークリソース、及び電子メッセージフィルタを構築するのに必要な生成回数を更に削減する。
【００６２】
クラスタエンジン１３０は、送信者ドメインによりサンプル内の前処理されたヘッダをクラスタに分ける。いくつかの例では、グループ分けは、クラスタを、クラスタリングデータ空間内のそれぞれの密な領域と関連付ける密度ベースのクラスタリングプロセスに基づく。クラスタリングデータ空間内では、前処理されたヘッダは、前処理されたヘッダのそれぞれのペア間の類似度に基づいて互いに離れている。いくつかの例では、フェッチされたヘッダのそれぞれのペア間の類似度は、電子メッセージのヘッダ内の内容の類似度及び相違度を比較する内容類似度の基準に基づいて求められる。比較される一例としてのヘッダ内容は、件名フィールド及び送信者メッセージアドレス内のテキスト（例えば、文字列、ｎグラム、及び／又は語）を含む。これらの例のうちのいくつかでは、２つのヘッダの件名フィールドの類似度は、ジャッカード類似度係数を用いて測定される。ジャッカード類似度係数は、両ヘッダの類似度を、件名フィールド内のバイグラムの共通部分のサイズを和集合のサイズで割った結果に基づいて測るものである。
【００６３】
図８に示すように、前処理されたヘッダの各ペア間で計算される類似度スコアは、ヘッダが、クラスタリングデータ空間１３２内で互いにどれほど近接しているかを定めるものである。いくつかの例では、クラスタリングプロセスは、グラフ内で接続される要素を特定することを含む。それらの接続類似度スコアが類似度閾値レベルよりも大きい場合、（ヘッダを表す）円形ノード間には関連性がある。図８は、前処理された２０個のヘッダのサンプルを、（破線で囲まれて示されている）１２個のクラスタに分けた例を示している。
【００６４】
図９に、変えられる類似度閾値を用いた代替的なクラスタリングプロセスを示す。これは、複数の送信者によって生成される機械生成の電子メッセージ内のそれぞれの可変性を本質的に表す、ヘッダ間の関連性の最適なセットを反復的に求めるためのものである。
【００６５】
クラスタリングプロセスは、現在の類似度閾値レベルを類似度閾値の初期値Ｔ０に設定することで開始する（図９、ブロック１４０）。いくつかの例では、類似度閾値は、ジャッカード類似度基準に対応する。いくつかの例では、類似度閾値の初期値Ｔ０は、０から１の類似度尺度に関して初期レベルに設定される。いくつかのこれらの例では、類似度閾値の初期値Ｔ０は、０．６≦Ｔ０≦０．８の範囲である。
【００６６】
次に、サンプル内のヘッダは、現在の閾値レベルＴ０に基づいてセットＣ０内のクラスタに分けられ（図９、ブロック１４２）、セットＣ０内の分けられたクラスタのセット内のクラスタの数Ｎ０が記憶される（図９、ブロック１４４）。いくつかの例では、ヘッダを分類するプロセスは、それぞれのメッセージヘッダの件名フィールド内のテキスト（例えば、文字列、ｎグラム、及び／又は単語）の比較に基づいて、フェッチされたメッセージヘッダのそれぞれのペア間の類似度スコアを計算することと、計算された類似度スコアと現在の閾値レベルとの比較に基づいて、フェッチされたヘッダをクラスタに分けることとを含む。
【００６７】
プロセスの第２回目の反復は、別の閾値Ｔ１を用いて繰り返される（図９、ブロック１４６、１４８、１４２、１４４）。いくつかの例では、各反復につき、現在の閾値は、それまでの閾値よりも小さい。閾値のセット｛Ｔｉ｝は、（例えば、数式又はアルゴリズムに基づいて）動的に定めることができるか、前もって定めておくことができる。いくつかの例では、所定の値（例えば、０から１の類似度尺度において０．１）だけ、それまでの閾値をデクリメントすることによって、一連の閾値の各々が求められる。
【００６８】
クラスタリングプロセスの第２回目の反復において、サンプル内のヘッダは、現在の閾値レベルＴ１に基づいてクラスタのセットＣ１に再び分けられ（図９、ブロック１４２）、分けられたクラスタＣ２のセット内のクラスタ数Ｎ１が記憶される（図９、ブロック１４４）。独自の件名のヘッダからなるＣ１内のクラスタが識別され、独自の件名のヘッダからなるＣ１内の全ての識別されたヘッダ数Ｍ１が求められる（図９、ブロック１５０）。いくつかの例では、件名がクラスタ内の他のヘッダの件名と共通する単語を一切含まない場合、ヘッダは、独自の件名を有していると判断される。他の例では、独自の件名フィールドラインは、クラスタ内のヘッダの件名フィールドライン内の文字列又はｎグラムの間の比較等、件名フィールドコンテンツの他のテキストベースの比較に基づいて識別される。
【００６９】
独自の件名を有するヘッダからなるクラスタ内のヘッダ数Ｍｊが、閾値ＭＴＨよりも大きい場合（図９、ブロック１５２）、独自の件名の数が多すぎると見なされ、複数のクラスタのうちの先行するセット内のクラスタ（すなわち、Ｃｉ−１）が、ヘッダの現在のサンプルの出力クラスタセット１６０として、クラスタエンジン１３０から返される（図９、ブロック１５６）。また、現在の反復におけるクラスタ数Ｎｉ及び先行する反復におけるクラスタ数Ｎｉ−１が、類似度基準を満たす場合（図９、ブロック１５２）、クラスタの数は収束したと見なされ、複数のクラスタのうち、前回のセット内のクラスタ（すなわち、Ｃｉ−１）が、ヘッダの現在のサンプルの出力クラスタセット１６０として、クラスタエンジン１３０により返される（図９、ブロック１５６）。
【００７０】
いくつかの例では、類似度の基準は、現在のクラスタ数及び先行するクラスタ数の間の差の比を、先行する反復におけるクラスタの数と比較する。いくつかのこれらの例では、類似度基準は、以下の式に対応する。
【数１】
2020520609.tif 000003
【００７１】
ブロック１５２及びブロック１５４におけるテストがいずれも満たされない場合、クラスタリングプロセスの別の反復が、次のクラスタリング閾値を用いて繰り返される（図９、ブロック１４８）。
【００７２】
図７を再び参照すると、クラスタエンジン１３０が、ヘッダのサンプルをクラスタ１６０に分類した後、電子メッセージサンプラ１６２は、各ヘッダクラスタ１６０内のヘッダのそれぞれのサンプルを選択し、メッセージプロバイダから、選択されたヘッダに関連付けられている完全な電子メッセージ１６４を取得する。その結果は、ヘッダ１６０の各クラスタｉに関する電子メッセージ１６４のそれぞれのサンプルｉである。
【００７３】
電子メッセージ１６４の各サンプルｉに関して、電子メッセージ分類器１６６は、サンプル内の要素の電子メッセージの各々を分類する。いくつかの例では、電子メッセージ分類器１６６は、図４及び図６に関して上述したタイプの機械学習分類器である。機械学習分類器は、ラベル及び関連付けられた信頼度のそれぞれのセット１６８を、各サンプル内の電子メッセージ１６４に割り当てる。いくつかの例では、特定の電子メッセージの予測されたラベルが、信頼度閾値未満であるとの判断に応じて、コンピュータ装置は、手動の分類用として特定の電子メッセージにフラグを付ける（図７、ブロック１７０）。いくつかの例では、手動でラベル付けがされた電子メッセージを用いて、電子メッセージ分類器１６６に学習させる。
【００７４】
いくつかの例では、クラスタ分類ルールは、コンピュータ装置に対し、同じラベルを割り当てられた対応するサンプル内の電子メッセージの数、及び、割り当てられたラベルに関連付けられた信頼度などの１つ以上の信頼因子に基づく特定のラベルを用いてクラスタにラベル付けするように命令する。いくつかの例では、信頼因子が、１つ以上の信頼閾値を満たさない場合（図７、ブロック１７２）、クラスタ内の電子メッセージは、手動分類用としてのフラグが付けられる（図７、ブロック１７０）。
【００７５】
それぞれの購入関連ラベルが割り当てられた各クラスタに関して（図７、ブロック１７４）、コンピュータ装置は、購入関連電子メッセージをフィルタリングするそれぞれのフィルタ１７５を自動的に生成する（図７、ブロック１７６）。
【００７６】
図示の例では、あるクラスタに各購入関連ラベルが割り当てられない場合（図７、ブロック１７４）、コンピュータ装置は、ヘッダ１６０の次のクラスタに関する電子メッセージ１６４の次のサンプルｉ＝ｉ＋１を処理することに直接進む（図７、ブロック１７７）。このプロセスでは、コンピュータ装置は、次のサンプルｉ＝ｉ＋１内の構成要素の電子メッセージの分類に基づいてクラスタラベリングプロセスを繰り返す（図７、ブロック１６６〜１７２）。
【００７７】
代替的な例では、電子メッセージ１６４の次のサンプルｉ＝ｉ＋１を処理することに直接進む（図７、ブロック１７７）のではなく、コンピュータ装置は、購入関連ラベルが割り当てられていない各クラスタに関して、非商品購入関連電子メッセージをフィルタリングするそれぞれのフィルタ１７９を自動的に生成する（図７、ブロック１７８）。これらの例のうちのいくつかでは、非商品購入関連電子メッセージフィルタ１７９は、ヘッダサンプラ１２０の構成要素（図７に示されている）又は別個のプリフィルタの部分として、メッセージフィルタ構築システム１１８のフロントエンドに設けられる（インストールされる）。非商品購入関連電子メッセージフィルタ１７９を用いて、ヘッダサンプラ１２０によってフェッチされた非商品購入関連電子メッセージのヘッダを取り除く。このようにして、それまでに識別された非商品購入関連電子メッセージに対応するヘッダを有する電子メッセージを取り除き、処理リソース、データストレージリソース、ネットワークリソース、及び、購入関連電子メッセージフィルタを構築するのに必要な生成回数を更に削減することができる。
【００７８】
図１０に、図７のメッセージフィルタ構築システム１１８の要素が組み込まれ、さらに、フェッチされたヘッダデータのサンプルからフィルタを構築する反復プロセスを実装したメッセージフィルタ構築システム１８０の一例を示す。
【００７９】
この例では、ヘッダサンプラ１２０は、１人以上の送信者の各々につき、送信者に関連付けられ、複数のユーザアカウントにわたってネットワークデータストレージシステム１２２〜１２６のうちの１つ以上において記憶されている電子メッセージの集合内のヘッダの各サンプルをフェッチする。他の例では、ヘッダサンプラ１２０は、送信者ドメインにわたってヘッダのサンプルをフェッチする。プリプロセッサ１２８は、ヘッダをクラスタに分ける前に、電子メッセージヘッダのフェッチされたサンプル内の件名フィールドの前処理をする。クラスタエンジン１３０は、クラスタを、クラスタリングデータ空間内のそれぞれの密な領域と関連付ける密度ベースのクラスタリングプロセスに基づいて、前処理されたヘッダをクラスタ１６０に分ける。クラスタリングデータ空間内では、前処理されたヘッダは、前処理されたヘッダのそれぞれのペア間の類似度に基づいて互いに離れている。購入関連ラベルが割り当てられたヘッダクラスタ１６０の各セットｉに関して、コンピュータ装置は、図７に関して上述した方法に従って、購入関連電子メッセージをフィルタリングするフィルタのそれぞれのセットｉを自動的に生成する（例えば、図７、ブロック１７６を参照）。
【００８０】
フィルタ構築プロセスの第１回目の反復において、メッセージフィルタ構築システム１８０は、送信者に関連付けられたヘッダのそれぞれの第１のサンプルから、各送信者に関するフィルタのそれぞれの第１のセット（すなわち、｛フィルタセットｉ｝）を構築する。
【００８１】
このプロセスは、各送信者に関する電子メッセージ集合内のヘッダのそれぞれの第２のサンプルに関して繰り返される。フィルタ構築プロセスのこの第２の反復では、メッセージフィルタ構築システム１８０は、送信者に関連付けられたヘッダのそれぞれの第２のサンプルから、各送信者に関するフィルタのそれぞれの第２のセット（すなわち、｛フィルタセットｉ＋１｝）を構築する。
【００８２】
フィルタ結果は、送信者ごとに比較される（図１０、ブロック１８２）。このプロセスにおいて、コンピュータ装置は、各送信者に関して、当該送信者に対応する集合内の全てのヘッダのそれぞれのセットを検索する（図１０、ブロック１８３）。送信者に関するフィルタのそれぞれの第１のセット及び第２のセット（すなわち、｛フィルタセットｉ｝及び｛フィルタセットｉ＋１｝）は、その後、｛フィルタ結果ｉ｝及び｛フィルタ結果ｉ＋１｝を生成するために、送信者に対応する集合内の全てのヘッダのそれぞれのセットに適用される。
【００８３】
フィルタリング結果が似ている場合（図１０、ブロック１８４）、フィルタ構築プロセスは終了する（図１０、ブロック１８６）。いくつかの例では、フィルタの第１のセット及び第２のセット内のどのフィルタにも一致しない、ヘッダの完全なセット内で検索されたヘッダの数の比較に基づいて、第１のフィルタリング結果と第２のフィルタリング結果との類似度が求められる。フィルタの第１のセット及び第２のセットに一致しないヘッダの数が類似している場合、フィルタのセットは十分類似であると見なされ、フィルタ構築プロセスは終了する（図１０、ブロック１８６）。
【００８４】
フィルタ結果が似ていない場合（図１０、ブロック１８４）、フィルタ構築プロセスは、以下のように続く。いくつかの例では、比較されたフィルタセット間で共有されるフィルタが、電子メッセージのフィルタリングで用いるためにメモリ１８８内に保存される（図１０、ブロック１９０）。前のヘッダサンプルサイズを増やし（図１０、ブロック１９２）、各送信者に関するヘッダのより大きいそれぞれのサンプルを用いて、フィルタ構築プロセスの別の反復が実行される（図１０、ブロック１９４）。
【００８５】
図１１に、ヘッダクラスタ１９８のためのフィルタを生成するプロセスを示す。いくつかの例では、コンピュータ装置は、各購入関連クラスタ（例えば、購入関連ラベルによりラベル付けされた各クラスタ）について本プロセスを実行する（図１１、ブロック２００）。コンピュータ装置は、クラスタ１９８内の全てのヘッダの件名内に各バイグラムが合計何回現れるかを数える（図１１、ブロック２０２）。コンピュータ装置は、クラスタ１９８からヘッダを選択する（図１１、ブロック２０４）。選択されたヘッダの件名フィールド内の各バイグラムに関して、コンピュータ装置は、バイグラムがヘッダの件名フィールド内に現れる頻度についてのそれぞれの基準を求める（図１１、ブロック２０６）。そのような頻度基準の例として、バイグラムを含む件名フィールドの数を、バイグラムを含まない件名フィールドの数で割った比と、バイグラムを含む件名フィールドの数を件名フィールドの合計数で割ることによる割合と、バイグラムを含む件名フィールドが件名フィールド内に現れる頻度の比とを含む。コンピュータ装置は、閾値（例えば、８０％）を満たすそれぞれの頻度基準に関連付けられた選択されたヘッダ内のバイグラムの各々を組み込むことによって、クラスタのフィルタを構築する（図１１、ブロック２０８）。コンピュータ装置は、クラスタのフィルタに組み込まれたバイグラムのセットが収束したか否かを判断する（図１１、ブロック２１０）。いくつかの例では、バイグラムのセットは、最後の反復において変化しなかった場合に、収束したと見なされる。バイグラムのセットが収束した場合（図１１、ブロック２１０）、セット内のバイグラムは、クラスタのフィルタに変換される（図１１、ブロック２１２）。いくつかの例では、バイグラムは、フィルタを定める１つ以上の正規表現に変換される。バイグラムのセットが収束していない場合（図１１、ブロック２１０）、このプロセスは、クラスタ１９８から選択された別のヘッダに関して繰り返される（図１１、ブロック２０４〜２１０）。
【００８６】
図１１のフィルタ構築プロセスの他の例では、バイグラムを使う代わりに、ヘッダ件名フィールドの解析が、件名フィールド内に現れる文字列、ｎグラム、及び単語を含む、他のテキストの特徴に対して行われる。
【００８７】
［ＩＩＩ．コンピュータ装置の例］
コンピュータ装置は、本明細書において説明したプロセスの機能を実行する改良された処理システムを提供できるようにプログラミングされる。いくつかの例では、電子メッセージフィルタを構築するプロセス及び１つ以上の電子メッセージフィルタで電子メッセージをフィルタリングするプロセスは、別個のかつ異なるコンピュータ装置によって実行される。他の例では、同じコンピュータ装置が、これらのプロセスを実行する。
【００８８】
図１２に、コンピュータシステム３２０によって実装されるコンピュータ装置の一例示の実施形態を示す。コンピュータシステム３２０は、処理ユニット３２２と、システムメモリ３２４と、処理ユニット３２２をコンピュータシステム３２０の様々な要素に接続するシステムバス３２６とを備えている。処理ユニット３２２は、１つ以上のデータプロセッサを含むことができ、それらのデータプロセッサの各々は、様々な市販のコンピュータプロセッサのうちの任意の１つの形態とすることができる。システムメモリ３２４は、通常、ソフトウェアアプリケーションに利用可能なアドレスを規定するソフトウェアアプリケーションアドレス指定空間に関連付けられた１つ以上のコンピュータ可読媒体を含む。システムメモリ３２４は、コンピュータシステム３２０の起動ルーチンを含む基本入出力システム（ＢＩＯＳ）を記憶する読み出し専用メモリ（ＲＯＭ）と、ランダムアクセスメモリ（ＲＡＭ）とを備えることができる。システムバス３２６は、メモリバス、周辺バス又はローカルバスとすることができ、ＰＣＩ、ＶＥＳＡ、Ｍｉｃｒｏｃｈａｎｎｅｌ（マイクロチャネル）、ＩＳＡ、及びＥＩＳＡを含む様々なバスプロトコルのうちの任意のものと互換性を有することができる。コンピュータシステム３２０は、永続的記憶メモリ３２８（例えば、ハードドライブ、フロッピードライブ、ＣＤ−ＲＯＭドライブ、磁気テープドライブ、フラッシュメモリデバイス、及びデジタルビデオディスク）も備える。この永続的記憶メモリは、システムバス３２６に接続され、データ、データ構造体及びコンピュータ実行可能命令の不揮発性記憶装置又は永続的記憶装置を提供する１つ以上のコンピュータ可読媒体ディスクを含む。
【００８９】
ユーザは、１つ以上の入力デバイス３３０（例えば、１つ以上のキーボード、コンピュータマウス、マイクロフォン、カメラ、ジョイスティック、物理運動センサ、及びタッチパッド）を用いて、コンピュータシステム３２０と対話する（例えば、コマンド又はデータを入力する）ことができる。情報は、表示コントローラ３３４によって制御される表示モニタ３３２上でユーザに提示されるグラフィカルユーザインタフェース（ＧＵＩ）を通じて提示することができる。コンピュータシステム３２０は、他の入出力ハードウェア（例えば、スピーカ及びプリンタ等の周辺出力デバイス）も備えることができる。コンピュータシステム３２０は、ネットワークアダプタ３３６（「ネットワークインタフェースカード」又はＮＩＣともいう）を通じて他のネットワークノードに接続する。
【００９０】
複数のプログラムモジュールは、システムメモリ３２４内に記憶することができ、これらのモジュールは、アプリケーションプログラミングインタフェース３３８（ＡＰＩ）、オペレーティングシステム（ＯＳ）３４０（例えば、Microsoft Corporation社（米国ワシントン州レドモンド所在）から入手できるＷｉｎｄｏｗｓ（登録商標）オペレーティングシステム）、電子メッセージフィルタを構築するプロセス及び電子メッセージフィルタで電子メッセージをフィルタリングするプロセスのうちの１つ以上を実行するようにコンピュータシステム３２０をプログラミングする１つ以上のソフトウェアアプリケーションを含むソフトウェアアプリケーション３４１、ドライバ３４２（例えば、ＧＵＩドライバ）、ネットワークトランスポートプロトコル３４４、及びデータ３４６（例えば、入力データ、出力データ、プログラムデータ、レジストリ、及び構成設定）を含む。
【００９１】
開示対象のシステム、方法、プロセス、機能的動作、及び論理フローを含む本明細書において説明された主題の例は、入力を操作し、出力を生成することによって機能を実行するように動作可能なデータ処理装置（例えば、コンピュータハードウェア及びデジタル電子回路）に実装することができる。また、本明細書において説明された主題の例は、データ処理装置による実行のために、１つ以上の有形で非一時的な搬送媒体（例えば、機械可読型記憶デバイス、基板、又はシーケンシャルアクセスメモリデバイス）上で符号化されるコンピュータ命令のうちの１つ以上のセットとして、ソフトウェア又はファームウェアに有形なものとして具現化することができる。
【００９２】
本明細書において説明された特定の実施態様の詳細は、特定の発明の特定の実施形態に特有のものである場合があり、特許請求される任意の発明の範囲を限定するものとみなされるべきではない。例えば、別々の実施形態に関して説明された特徴は、単一の実施形態にも組み込むことができ、単一の実施形態に関して説明された特徴は、複数の別個の実施形態内でも実施することができる。さらに、特定の順序で実行されるステップ、タスク、動作、又はプロセスの開示は、必ずしも、ステップ、タスク、動作、又はプロセスがその特定の順序で実行されることを必要とはせず、むしろ、いくつかの場合では、開示されているステップ、タスク、動作、及びプロセスのうちの１つ以上は、異なる順序で、又は複数のタスクスケジュールに従って、又は並行して実行することができる。
【００９３】
［ＩＶ．結論］
本明細書において説明された実施形態によれば、購入関連電子メッセージフィルタを構築し、購入関連電子メッセージをフィルタリングする改良されたシステム、方法、及びコンピュータ可読媒体が提供される。
【００９４】
他の実施形態も、特許請求の範囲に含まれる。
【図１】
2020520609.tif 000004
【図２】
2020520609.tif 000005
【図３】
2020520609.tif 000006
【図４】
2020520609.tif 000007
【図５】
2020520609.tif 000008
【図６】
2020520609.tif 000009
【図７】
2020520609.tif 000010
【図８】
2020520609.tif 000011
【図９】
2020520609.tif 000012
【図１０】
2020520609.tif 000013
【図１１】
2020520609.tif 000014
【図１２】
2020520609.tif 000015
【国際調査報告】
2020520609.tif 000016
2020520609.tif 000017
2020520609.tif 000018