(57)【特許請求の範囲】
【請求項１】
受信したメッセージをフィルタ処理するシステムであって、前記システムはコンピュータ可読記録媒体に記録され、メッセージを受信したコンピュータによって実行可能であり、
１つのバルク分類の値から１つのノンバルク分類の値までを範囲とする分類の範囲に従い、１つまたは複数の受信メッセージを分類するバルクフィルタであって、前記バルクフィルタは、前記バルク分類の値と前記ノンバルク分類の値との間の区別を判定するよう設定する調整可能な閾値を備え、前記バルクフィルタは、予想緊急度の計算を使用し、その後、重み付け計算を行って、メッセージがバルクであるかどうかを判定し、前記予想緊急度は、関数ｆ（ｐ（緊急｜Ｅ１．．Ｅｎ），ｐ（バルク電子メール｜Ｅ１．．Ｅｎ））として計算され、ここでｆは関数、ｐは確率、Ｅは緊急度またはメッセージがバルクかどうかに関連した根拠である、バルクフィルタと、
前記メッセージの処理を自動的に行うために前記受信メッセージをさらに分類する少なくとも第２のフィルタであって、前記第２のフィルタは、緊急度スコアを割り当てるために使用される緊急度フィルタであり、前記緊急度フィルタは、緊急メッセージおよび非緊急メッセージに対し遅延レビューの予想コストを割り当てるユーティリティモデルを採用し、緊急メッセージおよび非緊急メッセージに対する遅延レビューの前記予想コストは、コスト関数とメッセージをレビューするまでの遅延時間とを用いて計算される、第２のフィルタと、
前記緊急度フィルタと同時に実行し、ノンバルクメッセージの重要度を判定するために使用される重要度フィルタと、
優先順位付けされたメッセージを１つまたは複数の通知シンクに導く通知プラットフォームであって、前記通知プラットフォームは、前記優先順位付けされたメッセージを受信し、ユーザの現在の通知シンク、あり得るロケーション、およびあり得るアテンションの焦点を判別することにより、いつ、どこで、どのように、前記ユーザに通知するかに関して決定を行い、その結果、高重要度の電子メールを受信した場合、前記通知プラットフォームは、前記ユーザのロケーションを判定し、前記ユーザに関連付けられた前記通知シンクに前記メッセージを書式設定し直し、低い優先度のメッセージを受信した場合、前記通知プラットフォームは、前記電子メールを望み通り後でレビューするため前記ユーザのインボックスに残すように構成される、通知プラットフォームと
を具備し、
前記バルクフィルタは、バルクスコアまたは該バルクスコアの離散化状態を、カスケードフィルタを形成する前記第２のフィルタへの直接入力として計算し、前記バルクスコアを用いるクラシファイアが次いで構築され、前記受信したメッセージをさらに分類することを特徴とするシステム。
【請求項２】
前記分類の範囲は、前記受信メッセージが前記バルク分類の値に向かう傾向があるか、あるいは前記ノンバルク分類の値に向かう傾向があるかを判定する公算を表す、連続した値を含む、ことを特徴とする請求項１に記載のシステム。
【請求項３】
前記メッセージは、電子メールおよび音声符号化テキストファイルの少なくとも一方を含む、ことを特徴とする請求項１に記載のシステム。
【請求項４】
前記バルクフィルタおよび前記第２のフィルタのうち少なくとも一方は、新規メッセージを調べ、メッセージに緊急度フィールド内に表される緊急度値と、バルクメールフィールド内に表されるバルクメールの公算値とを注釈として付ける、ことを特徴とする請求項１に記載のシステム。
【請求項５】
メッセージ緊急度に関係する推論を考慮したポリシーまたは規則、および／または、バルクに関する考慮事項を含んだポリシーコンポーネントを、さらに備えることを特徴とする請求項４に記載のシステム。
【請求項６】
前記規則または前記ポリシーは、バルクである公算が閾値よりも高いバルクメッセージをフォルダに再度割り当てて後でレビューするために、前記ポリシーコンポーネントにより使用される、ことを特徴とする請求項５に記載のシステム。
【請求項７】
緊急度別に分類されている残りの電子メールを他のフォルダに再度割り当てる、ことをさらに含むことを特徴とする請求項６に記載のシステム。
【請求項８】
前記バルクフィルタおよび前記第２のフィルタとの相互作用に関する閾値設定、トレーニング設定、およびバイパス設定のうちの少なくとも１つを有するユーザインターフェースを、さらに備えることを特徴とする請求項１に記載のシステム。
【請求項９】
前記バルクフィルタの考慮対象からいくつかのメッセージを自動的に除去するヘッダアナライザを、さらに備えることを特徴とする請求項８に記載のシステム。
【請求項１０】
メッセージに内部というマークを付けて、バイパスメカニズムを呼び出すことをさらに含む、請求項９に記載のシステム。
【請求項１１】
時間依存コスト関数から初期値の喪失を判別するための初期値を計算するコンポーネントを、さらに備えることを特徴とする請求項１に記載のシステム。
【請求項１２】
請求項１に記載の前記バルクフィルタおよび前記第２のフィルタのうちの少なくとも一方を実施するために格納されたコンピュータ可読命令を有する、ことを特徴とするコンピュータ可読媒体。
【請求項１３】
メッセージの処理を行う方法であって、前記メッセージの処理はメッセージを受信したコンピュータによって実行される方法において、
第１のフィルタを使用してメッセージに対するバルクメッセージスコアを判定するステップであって、前記第１のフィルタは、予想緊急度の計算を使用し、その後、重み付け計算を行って、メッセージがバルクかどうかを判定し、前記予想緊急度は、関数ｆ（ｐ（緊急｜Ｅ１．．Ｅｎ），ｐ（バルク電子メール｜Ｅ１．．Ｅｎ））として計算され、ここでｆは関数、ｐは確率、Ｅは緊急度またはメッセージがバルクかどうかに関連した根拠である、ステップと、
第２のフィルタを使用して前記メッセージに対する緊急度スコアを判定するステップであって、前記第２のフィルタは、緊急メッセージおよび非緊急メッセージに対し遅延レビューの予想コストを割り当てるユーティリティモデルを採用し、緊急メッセージおよび非緊急メッセージに対する遅延レビューの前記予想コストは、コスト関数とメッセージをレビューするまでの遅延時間とを用いて計算されるステップと、
前記第２のフィルタと同時に実行する第３のフィルタを使用してノンバルクメッセージの重要度を判定するステップと、
前記バルクメッセージスコア、前記緊急度スコア、および前記重要度スコアのうちの少なくとも１つに基づいて他のメッセージから前記バルクメッセージをソートするステップと、
バルクスコアまたは該バルクスコアの離散化状態を、カスケードフィルタを形成する前記第２のフィルタへの直接入力として計算するステップと、
前記バルクスコアを考慮したクラシファイアを構築するステップと、
優先順位付けされたメッセージを１つまたは複数の通知シンクに導く通知プラットフォームを使用するステップであって、前記通知プラットフォームは、前記優先順位付けされたメッセージを受信し、ユーザの現在の通知シンク、あり得るロケーション、およびあり得るアテンションの焦点を判別することにより、いつ、どこで、どのように、前記ユーザに通知するかに関して決定を行い、その結果、高重要度の電子メールを受信した場合、前記通知プラットフォームは、前記ユーザのロケーションを判定し、前記ユーザに関連付けられた前記通知シンクに前記メッセージを書式設定し直し、低い優先度のメッセージを受信した場合、前記通知プラットフォームは、電子メールを望み通り後でレビューするため前記ユーザのインボックスに残すように構成される、ステップと
を含むことを特徴とする方法。
【請求項１４】
調整可能な閾値を使用して前記ソートを行うステップを、さらに含むことを特徴とする請求項１３に記載の方法。
【請求項１５】
１つまたは複数のクラシファイアを使用して前記第１のフィルタおよび前記第２のフィルタのうち少なくとも一方を実行するステップを、さらに含むことを特徴とする請求項１３に記載の方法。
【請求項１６】
前記フィルタの少なくとも１つをバイパスし、他のメッセージから前記バルクメッセージをソートすることを可能にするステップを、さらに含むことを特徴とする請求項１３に記載の方法。
【請求項１７】
フィルタの並列結合およびフィルタの直列結合の少なくとも１つを使用し、他のメッセージから前記バルクメッセージをソートすることを可能にするステップを、さらに含むことを特徴とする請求項１３に記載の方法。
【請求項１８】
前記バルクメッセージスコアを判定するために重み付けオペレーションを実行するステップを、さらに含むことを特徴とする請求項１３に記載の方法。
【請求項１９】
重要度クラシファイアを使用し、その後に緊急度クラシファイア使用することによりバルクメッセージを分類するステップを、さらに含むことを特徴とする請求項１３に記載の方法。
【請求項２０】
初期値フィルタを使用した後に、時間依存コストフィルタを使用するステップを、さらに含むことを特徴とする請求項１３に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、デバイス、システム、プロセス、および／または個人の間の通信を円滑にするシステムおよび方法に関するものである。より具体的には、本発明は、受信したメッセージを管理するためマルチレベルフィルタ(multilevel filters)を採用することに関するものである。
【背景技術】
【０００２】
コンピュータおよび情報システム、さらに無線通信やインターネット通信などの関連ネットワーク技術が進歩するとともに、ユーザおよび／またはシステムによって伝達され、転送された後、処理される電子情報は増大する一方である。例えば、電子メールプログラムは、コンピュータのユーザの間では、そのような情報を作成し受信するためのポピュラーなアプリケーションとなっている。インターネットが出現してからは、例えば、電子メールあるいは音声またはオーディオ情報などの他の情報の交換は重要なファクタであり、多くの人々がコンピュータを購入する理由の１つともなっている。多くの企業環境において、例えば、電子メールは、仕事仲間同士が情報を交換し合うためのほとんど事実上の標準となっている。しかし、電子メールおよびその他の情報転送システムの普及が進むと、複数のソースから送られてくる増大する一方の情報の管理および処理に関する問題が出始めたのである。
【０００３】
これらの問題の中で、多くのユーザが現在直面しているのは、振り分けたり返信したりしなければならない電子メールおよび／またはその他の情報の氾濫であり、情報の送信、受信、および処理を行う能力は、生産性向上の障害になってしまったといっても過言ではない。電子メールおよび／またはその他の電子情報がこのように大量であるため、何が重要で、何が重要でないかに応じた情報の管理が困難な状況になってしまっており、貴重な時間を割いて重要度を個人で判断するしかない。こうした判断を行う例として、ユーザはメッセージに即座に応答するか、やり過ごしておいて後で読むか、重要でない（例えば、ジャンクメール:junk mail）として単に削除するかを決定しなければならないことがある。
【０００４】
情報管理問題に取り組むいくつかの試みがあった。例えば、ユーザが受け取るジャンクまたは販促用電子メールの量を抑える試みもあった。さらに、電子メールをプログラム内で管理する仕方を定める規則を生成する電子メールプログラムもある。例えば、「特定の同僚(coworker)またはアドレスから来るすべての電子メール」を特定のフォルダに入れるという規則を定める。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、これらの試みは、特定の種類の情報を制限しようというもので、一般に、電子メールおよびその他の情報の転送／受信システムの背後にある基本的な問題に取り組むものではない。つまり、従来のシステムでは、ユーザは受け取ったメッセージ全部でないとしても少なくとも一部は手作業で精読し、チェックし、どのメッセージをレビューするか、あるいはさらに処理すべきかを決定することが多い。上述のように、これは、より生産的な活動から時間を割くことになる。したがって、大量の情報を受信することから、関連する手作業による処理コストを低減するとともに、電子情報を効率よく処理できるようにするシステムと方法が必要である。
【課題を解決するための手段】
【０００６】
以下では、本発明のいくつかの態様の基本的な内容を理解できるように、本発明の要約を簡単に述べる。この要約は、本発明の概要を広範囲にわたって述べたものではない。この要約は、本発明の鍵となる要素や決定的な要素を示したり、本発明の範囲を定めることを目的としていない。後で述べる詳細な説明の前置きとして、本発明のいくつかの概念を簡略化した形式で述べることのみを目的とする。
【０００７】
本発明は、緊急度(urgency)または重要度(importance)スコアとともにバルクスコア(bulk scores)を１つまたは複数の通信アイテムまたはメッセージ（例えば、電子メール、音声符号化テキスト(voice encoded text)）に割り当てる(assign)ことも規定する。割り当てた後、割り当てられたスコアに応じてそれぞれのアイテムまたはメッセージを振り分け、かつ／またはフィルタ処理して、ユーザによるメッセージ処理を円滑に行えるようにする。本発明では、メッセージ／アイテム(message/items)の振り分け処理(sorting)またはフィルタ(filtering)処理に関して、マルチレベルのカスケード結合(multi-level cascade combination)および／または並列結合(parallel combination)を規定する。電子メールがバルクメール(bulk mail)である可能性(likelihood)の分類(classification)と突き合わせてアイテムを事前にフィルタ処理(pre-filteing items)し、ジャンクアイテム(junk item)を削除(remove)し、その後、バルクプリフィルタ(bulk pre-filter)および／またはジャンクプリフィルタ(junk pre-filter)に通した後残っているアイテムの優先順位付け(prioritization)を実行することにより、優先順位に基づくシステム(priority-based system)を実質的に最適化(optimize)することができる。
【０００８】
統計的クラシファイア(statistical classifier)を構築するために使用されるトレーニングセット(training set)の低緊急度(low urgency)または低重要度カテゴリ(low importance category)にバルクメールを入れることにより、バルクメールメッセージを低緊急度および／または重要度のメッセージであると識別(identify)するように単一レベルの緊急度または重要度クラシファイア(single-level urgency or importance classifiers)を作成することができる。しかし、低緊急度または低重要度カテゴリに入るバルクメールを使用してメッセージ緊急度または重要度フィルタ(message urgency or importance filter)を学習(training)させると、非緊急メール(non-urgent email)から緊急メール(urgent email)を理想的な形で区別するフィルタの能力(filters ability)が減じる(diminish)可能性がある。例えば、バルクメールに、重要または緊急メッセージ(importance or urgent message)に関連する特性(property)が記述(contain)されている可能性がある。緊急度クラシファイア(urgency classifier)の能力(power)を高める(enhance)ために、電子メールがバルクメールである公算(likelihood)を推論(infer)し、その結果に従ってその電子メールを緊急度(urgency)または重要度フィルタ(impotance folter)の対象(consideration)から外し、また重要度または緊急度クラシファイアにおける偽陽性(false positive)または偽陰性(false negative)を減らすことにより緊急度または重要度分類(urgency or importance classification)の精度(accuracy)を上げるように独立のバルクメールフィルタ(separate bulk email filter)を構築することができる。本発明の他の態様では、内部の電子メール(internal e-mail)またはその他のタイプのメッセージ(other type message)（ジャンク以外のものに対応する）を認証(authenticate)しバルクプリフィルタをバイパスすること、すなわち内部メッセージが自動的に優先順位付け(priorize)されること（例えば、バルクプリフィルタを通さない）、が提供される。
【０００９】
本発明によれば、様々なフィルタの組み合わせ(combination of filters)を用いて、ユーザメッセージを自動的に管理するようにできる。本発明の一態様では、バルクフィルタ(bulk filter)および緊急度フィルタ(urgency filter)は、受信メッセージ(received message)を並列に処理する。それぞれのフィルタからの出力には、メッセージがバルクバラエティメッセージ（例えば、大量販売広告メッセージ）またはノンバルクバラエティメッセージである可能性および受信メッセージの緊急度に基づく、受信メッセージのスコアリング(scoring of received message)が含まれる。割り当てられたスコア(assigned score)に従ってメッセージの振り分け（振り分け＝ソート）(sort)を可能にするポリシー(policy)を定めることができる。本発明の一態様では、バルクメールを特別なファイルまたはフォルダにソートし、ノンバルクメッセージについては、緊急度(urgency)、優先度(priority)、および／または、緊急(urgent)および非緊急メッセージ(non-urgent message)に対する遅延レビューの予想コスト(expected cost of delayed review)に従ってメッセージを分類(categorize)する実用新案(utility model)に基づいてソートする。本発明の他の態様において、緊急度フィルタ(urgency filter)は、バルクメッセージおよびノンバルクメッセージの予想緊急度スコア(expected urgency score)を計算する。その後、バルクフィルタは、緊急スコアメッセージ(urgency scored message)のバルクスコア(bulk score)を計算し、バルクスコアが与えられたバルクメッセージである公算（＝可能性）(likelihood)を考慮することにより、重みの付け直しプロセス(re-weighting process)を実行する。
【００１０】
さらに本発明の他の態様では、バルクフィルタを着信メッセージ(incoming message)に適用することができる。この態様では、カスケード接続されたフィルタ配列(cascaded filter arrangement)を有する緊急度フィルタ(urgency filter)により、バルクフィルタからの出力が処理される。このようなアプローチでは、緊急度フィルタ(urgency filter)または重要度フィルタ(importance filter)を使用して、電子メールがバルクメールでないことを条件とする緊急度または重要度の公算(likelihood of urgency or importance)、ｐ（緊急｜バルクメールでない）を推論(infer)することができる。周知のように、フィルタは様々な順序(order)および様々な組み合わせ(combination)により配列(arrange)することができる。この場合、特定のタイプとみなされるメッセージに対して、フィルタバイパスメカニズム(filter bypass mechanism)を採用する（例えば、内部対外部:internal versus external）。他のタイプのフィルタ処理配列(filtering arrangement)では、メッセージの重要度を分析し、その後、判定された緊急度に応じて分析されたメッセージを処理する。他のアプリケーションでは、様々な緊急度に分類(categorize)されたメッセージでの時間経過による値の喪失(loss of value over time)を考慮する。
【００１１】
前記の目的および関連する目的を遂行するために、本発明のいくつかの例示する態様について、以下の説明および付属の図面を参照しながら説明する。これらの態様は、本発明を実践する際の様々な手段を示しており、そのすべてが本発明に含まれるものとする。本発明の他の利点および新規性のある特徴は、図面を参照しながら本発明の以下の詳細な説明を読むと理解し易いであろう。
【発明を実施するための最良の形態】
【００１２】
本発明は、メッセージの効率的な自動処理を円滑にするシステムおよび方法に関するものである。一定の分類範囲に従い１つまたは複数の受信メッセージを分類するバルクフィルタを実現するのであるが、その範囲は値の少なくとも１つのバルク分類(bulk classification)から値のノンバルク分類(non-bulk classification)までを対象とする。これ以降、緊急度フィルタと呼ぶ、緊急度または重要度フィルタなどの第２のフィルタを用意して、受信メッセージをさらに分類し、メッセージの処理を自動的に円滑化する。分類の範囲は、受信メッセージが値のバルク分類の範囲に収まる傾向がある、または値のノンバルク分類に向かう／範囲に収まる傾向があると判定する公算(likelihood)に基づく値の連続範囲を含む。また、バルクフィルタ（またはフィルタ）は、バルク分類とノンバルク分類との差を判別または定義する調整可能な閾値設定を含むことができる。メッセージのフィルタ処理および振り分けを円滑化し、ユーザがそのような情報をタイミングよく効率よく処理できるようにする、複数のフィルタ配列、並列配列、カスケード配列、およびその他の配列を含む、様々なフィルタの組み合わせが可能である。
【００１３】
本明細書で使用されている「コンポーネント」、「フィルタ」、「モデル」、および「システム」という用語は、コンピュータ関連のもの、ハードウェア、ハードウェアとソフトウェアの組み合わせ、ソフトウェア、または実行中のソフトウェアのいずれかを指すものとする。例えば、コンポーネントとしては、プロセッサ上で実行されているプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行スレッド、プログラム、および／またはコンピュータがあるが、限定はしない。説明のため、サーバ上で実行されているアプリケーションとサーバは両方ともコンポーネントとする。１つまたは複数のコンポーネントを１つのプロセッサおよび／または実行スレッド内に常駐させることができ、またコンポーネントを１台のコンピュータにローカルとして配置し、かつ／または２台またはそれ以上のコンピュータ間に分散させることができる。
【００１４】
本明細書で使用しているように、「推論(inference)」という用語は、一般に、イベントおよび／またはデータを介して得られるような一組の観察結果から、システム、環境、および／またはユーザの状態を推理または推論するプロセスを指す。推論を使用して特定のコンテキストまたはアクションを識別したり、例えば複数の状態について確率分布(probability distribution)を生成することができる。推論は確率的(probabilistic)なものとすることができる、つまり、データおよびイベントの考察に基づいて注目している状態で確率分布を計算することができる。推論は、さらに、一組のイベントおよび／またはデータから高水準のイベントを構成するために使用される手法を指す場合もある。このような推論を行うことで、イベント同士が時間的に近い関係による相関関係があるか否か、またイベントおよびデータが１つまたは複数のイベントおよびデータソースを発生元としているかどうかに関係なく、一組の観察されたイベントおよび／または格納されているイベントデータから新しいイベントまたはアクションが構築される。
【００１５】
まず図１を参照すると、システム１００は、本発明の一態様によるメッセージ処理用のバルクフィルタを例示している。バルクメールが増大しているという問題に関して、本発明では、電子メールの緊急度の分類を強化するマルチレベルフィルタ方式を提示する。しかし、以下の説明では電子メールの処理を取り上げているが、本発明は実質的にどのようなタイプの電子メッセージ処理にも適用可能であることに注意されたい。例えば、音声メッセージは、自動的にテキストに符号化することができ、その後のテキスト処理は電子メールと同様に実行することができる。さらに、マルチレベルフィルタ処理の様々な組み合わせ（例えば、並列結合および／また直列結合）が、以下の図および説明で述べているように可能である。
【００１６】
システム１００によって例示されているアプローチの１つでは、少なくとも２つのフィルタを使用して電子メール１１０（またはその他のタイプのメッセージ）を処理する。バルクメールフィルタ(bulk email filter)すなわちクラシファイア(classifier)１１４は、バルクメールとノンバルクメールとを区別するために使用される。緊急度フィルタ(urgency filter)１２０は、電子メールの緊急度スコアを割り当てるために使用され、緊急メールと非緊急メールの遅延レビューの予想コストを割り当てる後述の実用新案を使用する場合も使用しない場合もある。本発明のこの態様では、フィルタ１１４および１２０では、新規電子メール１１０を調べ、電子メール１３０に注釈として、緊急度フィールド１３４で表される緊急度値(urgency value)、および１４０のバルクメールフィールドで表されるバルクメールの公算(likelihood of bulk email)を付加し、ポリシーコンポーネント１５０は、メッセージ緊急度および／またはバルクの考察に関係する推論を考察するためのポリシーまたは規則を含む。
【００１７】
２フィルタシステムの一態様では、ポリシーコンポーネント１５０では規則またはポリシーを使用して、バルクフォルダ１６０として示されている後でレビューするための特別なフォルダにバルクメールが入る公算の閾値（ユーザの調整可能設定またはプリファレンスに基づいて）よりも高い値を持つバルクメールを吸い去るか、または削除する。残りの電子メールは、他のフォルダ１６４の中に緊急度別に分類される。図の参照番号１７０では、バルク計算およびノンバルク計算について求めることができる値の範囲を例示している。バルクフィルタ１１４でバルク判定を行う場合、それぞれの電子メールがバルクタイプであるか、またはノンバルクタイプであるか公算つまり可能性を計算する統計的判定を行う。例えば、ある電子メールはバルクメールである公算(likelihood)が７０％であるが、他の電子メールはバルクと考えられる公算が６２％であると判定される。例示されているように、調整可能な閾値（例えば、ユーザインターフェースのスライダで確率の値(probability value)を調整する）をユーザ側で使用し、電子メールをバルクであるとみなすべきレベルを設定することができる（例えば、バルクであると判定される公算が０．５０未満である電子メールは、ノンバルク電子メールとして取り扱われる）。
【００１８】
次に図２を参照すると、システム２００は、本発明の一態様によるバルク計算を実行することに関して例示されている。この態様では、２１０で電子メールの予想緊急度を計算し、その後、重み付けコンポーネント２２０で、それぞれのメッセージがそれぞれ２３０と２３４でバルクバラエティメッセージであるかノンバルクバラエティメッセージであるかを判定する。２１０により、電子メールが予想緊急度スコアの範囲内でバルクメールである公算を考察することにより、予想緊急度スコアを計算する。この場合、緊急度は、関数
ｆ（ｐ（緊急｜Ｅ１．．Ｅｎ），ｐ（バルクメール｜Ｅ１．．Ｅｎ））
により計算される。ここで、ｆは関数(function)、ｐは確率(probability)、Ｅは緊急度または電子メールがバルクかどうかに関係する根拠(evidence)である。
【００１９】
例えば、上述の緊急度フィルタで緊急度の割り当てに従って、同様の方法で、バルクメールと通常電子メールを取り扱うと仮定した場合（つまり、緊急度スコアは電子メールがバルクメールであるかないかに関係しない）、電子メールの予想緊急度は、緊急度分析を実行し、その後２２０において、電子メールがバルクメールである公算を考察して重みを付け直すことにより計算することができる。
【００２０】
一般に、バルクメールの緊急度は、０（または他の低い値）と考えられる。したがって、緊急度分析から、（この例では）緊急メールと非緊急メールへの緊急度の２進分類法に関して、バルクメール分析の前に、予想緊急度を次のように求めることができる。
予想緊急度(expected urgency)
＝ｐ（緊急｜Ｅ１．．Ｅｎ）（遅延レビューのコスト（緊急電子メール））
＋（１−ｐ（緊急｜Ｅ１．．Ｅｎ））（遅延レビューのコスト（非緊急電子メール）
バルクメール分析を畳み込む(folding)と、次のようになる。
【００２１】
＝１−ｐ（バルクメール｜Ｅ１．．Ｅｎ）×
［ｐ（緊急｜Ｅ１．．Ｅｎ）（遅延レビューのコスト（緊急電子メール））
＋（１−ｐ（緊急｜Ｅ１．．Ｅｎ））（遅延レビューのコスト（非緊急電子メール））］
【００２２】
つまり、予想緊急度スコアを、後述の緊急度クラシファイア(urgency classifier)（および実用新案）から計算し、計算の後、メッセージがバルクメールである公算を考察することで重みを付け直すことを考慮し、バルクメールスコアを考慮して予想を判定することができる。以下の説明では、ジャンクフィルタ分析とバルクフィルタ分析との間の確率的依存関係を考察する。
【００２３】
図３を参照すると、システム３００は、本発明の一態様によるカスケードフィルタを例示している。この態様では、バルクフィルタ３１０は、バルクスコア（例えば、確率(probability)）、またはそのスコアの離散化状態を緊急度フィルタ３２０への直接入力として計算する。例えば、バルクスコアを考慮するクラシファイアを構築することができる。これを実現するために、バルクフィルタ３１０を最初に構築し、その後、バルクフィルタからの出力を使用して緊急度フィルタ３２０を後から学習させ構築する。このタイプのアプローチを、フィルタのカスケードと呼ぶ。周知のように、３３０に例示されている他のフィルタも、同様に、カスケードに追加することができる。
【００２４】
次に図４を参照すると、システム４００は、本発明の一態様によるメッセージのバイパスを例示している。この態様では、フィルタがある程度の有限偽陽性率を持ち得るため、ヘッダアナライザ４１０は一部の電子メールをバルクフィルタ４２０の考慮対象から自動的に除去する。電子メールまたは他のタイプのメッセージのヘッダを分析することにより、電子メールを外部で生成されたもの、つまり、例えば組織内で生成されたものとして識別することができる。内部メッセージは、特に、バルクメールフィルタ４２０に影響されないとして特別にマークされるかまたはフラグが立てられるので、このフィルタをバイパスする。
【００２５】
図５は、本発明の他の態様を例示している。この態様では、複数のフィルタおよび／またはフィルタカスケードを使用して、重要な電子メール（見ることが重要ではあるが、時間を重視していない電子メール）を緊急または時間重視メッセージから別々に識別する。そこで、５１０で重要度ためのクラシファイア(classifier for importance)を構築し、その後５２０でクラシファイアの第２の（または他の）層を利用して、異なる重要度値を与えられたメッセージの緊急度を計算する。複数のフィルタの他の応用では、５３０で、時間の経過とともに値の喪失が生じるメッセージに対して、メッセージの初期値を供給するフィルタを作成することができる。これにより、５３０で初期値を捕捉し、５４０でそれぞれのメッセージの時間による初期値の喪失を判別する時間依存のコスト関数を構築することができる。
【００２６】
また並列またはカスケードフィルタの様々な組み合わせを使用して、重要度と緊急度を別々に分類することもでき、その場合、一方のフィルタクラシファイアがメッセージを重要度別に分類し、第２のクラシファイアは緊急度に関してメッセージを分析することに注意されたい。そこで、例えば、フィルタのカスケードにおいて、バルクメールとノンバルクメールをすでに述べたようにソートすることができ、重要度フィルタを介してノンバルクメッセージの重要度を判定し、その後、重要なメッセージの緊急度を緊急度フィルタを介して判定する。
【００２７】
図６は、本発明によるフィルタ処理およびメッセージ処理を行う方法を例示している。説明を簡単にするために、これらの方法を図に示し、一連の活動として記述するが、本発明は活動の順序によって制限されるわけではなく、本発明により、いくつかの活動はその図に示されているここで説明しているのと異なる順序でかつ／または他の活動と同時に実行することも可能である。例えば、当業者であれば、方法を代わりに一連の相互に関連のある状態またはイベントとして状態図などの中に表すことが可能であることを理解し、認識するであろう。さらに、本発明によりこの方法を実装するために図に示されているすべての活動が必要なわけではない。
【００２８】
６０２において、電子メールまたは他のタイプのメッセージなどの着信メッセージを処理するため少なくとも１つのバルクフィルタを構築する。６０４では、他の少なくとも１タイプのフィルタを構築し、６０４で構築したバルクフィルタと連携させる。このようなフィルタには、例えば、緊急度フィルタ、重要度フィルタ、時間重視フィルタ、および／または重み付きフィルタなどがある。６０８では、６０２と６０４で構築したフィルタを様々な組み合わせで着信メッセージに適用する。これには、フィルタの並列結合、直列結合、および／またはいくつかの直列要素といくつかの並列要素を備える結合を含めることもできる。６１２では、メッセージは、６０８で構成された望む組み合わせに応じて自動的に分析され、フィルタ処理される。これは、動的な振り分け機能を含むことができ、バルクバラエティメッセージであるとみなされるメッセージは別のフォルダに振り分けられ、他のメッセージは、例えば、インボックス(inbox)内で優先順位付けられる。他の態様には、ユーザがアイテムがバルクとみなされるときの可能性の限界値を定める閾値を設定できるものもある。アイテムのスコアが例えば閾値よりも大きく、メッセージがバルクと判定されたことを示している場合、各バルクメールは削除、除去、および／または振り分けられる。
【００２９】
図７は、本発明の一態様によるフィルタ設定を説明するユーザインターフェース７００である。７１０で、ユーザが設定可能な値を超えるバルクスコアを持つアイテムをフィルタ処理できるようにする選択項目が用意されている（例えば、９０を超えるバルクスコアを有する項目については、それら項目をバルクメールフォルダに分別する）。７２０では、バイパス選択オプションが用意される。例えば、電子メールが内部タイプであると判定された場合に、バルクフィルタ分析結果からそのような電子メールを除除去するる。これらのコントロールにより、緊急度分析の前にバルクメールを別々に振り分けし、フィルタ処理することができ、かつ／または内部というマークが付けられている特定のいくつかのアイテムを例えば、バルクフィルタ分析の対象とすることから除除去するることができる。
【００３０】
図８は、本発明の一態様によるフィルタ設定を説明するユーザインターフェース８００である。インターフェース８００は、フィルタを構成するための様々な選択項目を備える。８１０では、ユーザにバルクフィルタを学習させるための選択項目が用意される（例えば、これらの選択されたバルクアイテムを観察してバルクアイテムを区別する方法を学習する）。他のオプションとしては、緊急度学習、グラフオプション、アクティブフィルタ選択、エージェントオプション、および優先順位付けオプションがある。
【００３１】
図９は、本発明の一態様による優先度スコアおよびバルクメールフィールドを説明するユーザインターフェース９００である。上記のように、優先度スコアは、一般に、ｐ（緊急電子メール｜Ｅ１．．Ｅｎ）から導かれるが、バルクスコアは、ｐ（バルクメール｜Ｅ１．．Ｅｎ）から導かれる。３つのサンプル注釈付きメッセージが、インターフェース８００に表示されるが、他のメッセージも同様に処理することができる。
【００３２】
ｐ（バルクメール｜Ｅ１．．Ｅｎ）＝．３１およびｐ（緊急｜ジャンクではない）＝．９９
８２０で、ｐ（バルクメール｜Ｅ１．．Ｅｎ）＝．６６およびｐ（緊急｜ジャンクではない）＝．３１
８３０で、ｐ（バルクメール｜Ｅ１．．Ｅｎ）＝．００およびｐ（緊急｜ジャンクではない）＝．９０
ただし、これらのスコアは、別々に使用するか、または複合スコアとして構築することができる。
【００３３】
図１０において、システム１０１０は、本発明の一態様による優先順位付けシステム１０１２および通知機能アーキテクチャを例示している。優先順位付けシステム１０１２は、１つまたは複数のメッセージまたは通知１０１４を受信し、関連するメッセージの優先順位または重要度の尺度（例えば、メッセージが高重要度または低重要度である確率値）を生成し、出力１０１６でそれらの１つまたは複数のメッセージに関連する優先度値を与える。以下で詳しく説明するが、優先度の尺度をメッセージ１０１４に自動的に割り当てるようにクラシファイアを構築し、学習させることができる。例えば、メッセージが高、中、低のカテゴリ、または他の重要度カテゴリに属する確率がメッセージに割り当てられるように出力１０１６の書式を設定できる。メッセージは、例えば、判定された重要度カテゴリに応じて、電子メールプログラム（図には示されていない）のインボックス(inbox)に自動的にソートすることができる。振り分け（ソート）機能は、さらに、重要度のラベルが定義されているシステムフォルダにファイルを導く機能も含むことができる。これは、低、中、および高などの重要度のラベルをフォルダに付けることを含むことができ、特定の重要度と判定されたメッセージはその関連付けられたフォルダに振り分けられる。同様に、１つまたは複数の音響または視覚的表示（例えば、アイコン、シンボル）を、望む優先度を持つメッセージが届いたことをユーザに警告するように適合させることができる（例えば、高優先度のメッセージにはビープ音を３回、中優先度のメッセージにはビープ音を２回、低優先度のメッセージにはビープ音を１回、高優先度のメッセージには赤色または点滅の警告シンボル、中優先度のメッセージを受信したことを示すには緑色と点滅しない警告シンボル）。
【００３４】
本発明の他の態様によれば、通知プラットフォーム１０１７を優先順位付けシステム１０１２とともに使用し、優先順位付けされたメッセージをユーザからアクセス可能な１つまたは複数の通知シンク(notification sink)に導くようにできる。以下で詳しく説明するが、通知プラットフォーム１０１７は、優先順位付けされたメッセージ１０１６を受信し、例えばユーザにいつ、どこで、どのようにして通知するかを決定するように適合させることができる。例えば、通知プラットフォーム１０１７は、通信の様相（例えば、携帯電話またはパーソナルデジタルアシスタント（ＰＤＡ）などのユーザの現在の通知シンク１０１８）およびユーザのあり得るロケーションおよび／またはあり得るアテンション(attention)の焦点を判別することができる。例えば、高重要度の電子メールを受信した場合、通知プラットフォーム１０１７は、ユーザのロケーション／注目する焦点を決定し、ユーザに関連付けられた通知シンク１０１８にそのメッセージを導く／書式設定し直すことができる。優先度が低いメッセージ１０１６を受信した場合に、例えば、電子メールを望み通り後でレビューするためユーザのインボックス(inbox)に残しておくように通知プラットフォーム１０１７を構成することができる。以下で詳述するように、他のルーティングおよび／または警告システム１０１９を使用して、優先順位付けされたメッセージ１０１６をユーザおよび／または他のシステムに導くことができる。
【００３５】
以下の説明の節では、電子メールなどの電子ファイルの優先度を生成することについて、自動分類システムおよびプロセスを介して説明される。上述のように電子的に表現されるメッセージの優先度の生成は、他のシステムでも使用できる。この節では、図１１および図１２を参照して説明するが、前者は、クラシファイアの明示された学習および暗黙の学習を例示する図であり、後者は、電子メッセージの優先度がクラシファイアへの入力によりどのように生成されるかを説明する図である。
【００３６】
そこで図１１を参照すると、テキスト／データクラシファイア１１２０は、矢印１１２２で表されているように明示的に、また矢印１１２４で表されているように暗黙のうちに学習させることで、優先度に関して分類を実行するようにできる。矢印１１２２で表されている明示的な学習は、一般的に、クラシファイア１１２０を構築する初期段階で実行されるが、矢印１１２４で表されている暗黙の学習は、通常、クラシファイア１１２０を実行した後に実行し、例えば、バックグラウンドモニタ１１３４を介してクラシファイア１１２０を微調整する。本明細書では、例えば、分類学習および実装アプローチを例示するために、Ｓｕｐｐｏｒｔ  Ｖｅｃｔｏｒ  Ｍａｃｈｉｎｅｓ（ＳＶＭ）クラシファイアを取りあげて具体的な説明を行う。自作できるかつ／またはデータから学習することができる他の分類または診断方法は、様々な独立のパターンを採用することを条件に、ベイズネットワーク、決定ツリー、および確率的分類モデルを含む。さらに、本明細書で使用しているような分類は、警告および／またはルーティングポリシーに影響を及ぼす緊急度または優先度の他の尺度のモデルを作成するために使用される回帰分析も含む。
【００３７】
矢印１１２２によって表されているようなテキストクラシファイア１１２０の学習は、特徴選択の使用など、１１２６でクラシファイアを構築することを含む。明示的な学習段階では、クラシファイア１１２０に、時間重視テキストおよび非時間重視テキストの両方を与えることができ、例えば、クラシファイアはその２つを区別することができる。このトレーニングセットは、ユーザ側で指定することができるが、標準のトレーニングセットまたは既定のトレーニングセットを使用することもできる。トレーニングコーパス(training corpus)が与えられると、クラシファイア１１２０はまず、特徴選択プロシージャを適用し、最も区別可能な特徴を見つけようと試みる。例えば、このプロセスでは、相互情報分析を使用することができる。特徴選択は、１つまたは複数の単語または、フレーズおよび自然言語処理でタグ付けされた発話の一部などの使用可能にされているより高水準の区別に対し作用することができる。つまり、テキストクラシファイア１１２０は、重要と考えられるテキストの特徴を弁別す特別タグ付きテキストをシードとすることができる。
【００３８】
テキスト分類の特徴選択では、通常、単語を対象として検索を実行する。単語に依存するだけでなく、分野特有のフレーズおよび高水準の特徴パターンも使用できる。特別なトークンも、クラシファイアの強化に役立つ。例えば、電子メールの重要性に関する学習済みのクラシファイアの質を高めるには、特徴選択プロシージャに、時間の重要性が異なる電子メールを区別するのに使用できるものと識別されている自作の特徴を入力する。したがって、特徴選択実行時に、１つまたは複数の単語だけでなく、時間の重要性が様々なレベルにあるメッセージを区別するために使用できるフレーズおよびシンボルも考慮する。
【００３９】
以下の例が示しているように、メッセージの重要性を識別する際のトークンおよび／または値のパターンは、以下のような区別を含み、また以下のブール演算の組み合わせを含む。
メッセージヘッダ内の情報
例えば、
Ｔｏ：フィールド（受信者情報）
ユーザだけの宛先
ユーザを含む少数の人々の宛先
少数の人々を含む１つのエイリアスの宛先
少数の人々を含む複数エイリアスの宛先
Ｃｃ：ユーザへのカーボンコピー
Ｂｃｃ：ユーザへのブラインドカーボンコピー
Ｆｒｏｍ：フィールド（送信者情報）
個人からなる様々なクラスに分割される場合がある、重要な人々の所定のリストに載っている名前（例えば、家族の構成員、友人）
ユーザの会社／組織の内部にあると識別されている送信者
【００４０】
以下のようなオンライン組織図から引き出されたユーザに関する組織関係の構成に関する情報
ユーザの報告先のマネージャ
ユーザのマネージャのマネージャ
ユーザに報告する人々
外部企業の人々。
【００４１】
過去時制の情報
これらは、以下のようなすでに発生してしまっているイベントに関する記述を含む。
Ｗｅ  ｍｅｔ、ｍｅｅｔｉｎｇ  ｗｅｎｔ、ｈａｐｐｅｎｅｄ、ｇｏｔ  ｔｏｇｅｔｈｅｒ、ｔｏｏｋ  ｃａｒｅ  ｏｆ、ｍｅｅｔｉｎｇ  ｙｅｓｔｅｒｄａｙ。
【００４２】
未来時制の情報
Ｔｏｍｏｒｒｏｗ、Ｔｈｉｓ  ｗｅｅｋ、Ａｒｅ  ｙｏｕ  ｇｏｉｎｇ  ｔｏ、Ｗｈｅｎ  ｃａｎ  ｗｅ、Ｌｏｏｋｉｎｇ  ｆｏｒｗａｒｄ  ｔｏ、Ｗｉｌｌ  ｔｈｉｓ、Ｗｉｌｌ  ｂｅ。
【００４３】
ミーティングおよび調整の情報
Ｇｅｔ  ｔｏｇｅｔｈｅｒ、Ｃａｎ  ｙｏｕ  ｍｅｅｔ、Ｗｉｌｌ  ｇｅｔ  ｔｏｇｅｔｈｅｒ、Ｃｏｏｒｄｉｎａｔｅ  ｗｉｔｈ、Ｎｅｅｄ  ｔｏ  ｇｅｔ  ｔｏｇｅｔｈｅｒ、Ｓｅｅ  ｙｏｕ、Ａｒｒａｎｇｅ  ａ  ｍｅｅｔｉｎｇ、Ｌｉｋｅ  ｔｏ  ｉｎｖｉｔｅ、Ｂｅ  ａｒｏｕｎｄ。
【００４４】
解決した日付
日時を明示するテキストのパターンまたは以下のような標準的な省略記号から示される未来と過去の日時
Ｏｎ  ５／２、Ａｔ  １２：００。
【００４５】
識別された時刻までの期間
メッセージ作成または受信から日時の解決までの期間。メッセージ内で参照されるメッセージ作成日または受信日から１つまたは複数の解決された日時までの時間の計算。
【００４６】
例えば、３月１２日火曜日、午前１０時に作成したメッセージには、「Ｈｏｗ  ａｂｏｕｔ  ｇｅｔｔｉｎｇ  ｌｕｎｃｈ  ｔｈｉｓ  ａｆｔｅｒｎｏｏｎ？」というフレーズが含まれている。
【００４７】
Ｌｕｎｃｈ  ｔｈｉｓ  ａｆｔｅｒｎｏｏｎ  ｒｅｓｏｌｖｅｄ  ｔｏ  １２：００ｐｍ
Ｐｅｒｉｏｄ  ｏｆ  ｔｉｍｅ  ｕｎｔｉｌ  ｒｅｓｏｌｖｅｄ  ｄａｔｅ／ｔｉｍｅ＝２ｈｏｕｒｓ
質問
単語、フレーズの隣に疑問符（？）が付く。
【００４８】
個人的要求の指示：
Ｃａｎ  ｙｏｕ、Ａｒｅ  ｙｏｕ、Ｗｉｌｌ  ｙｏｕ、ｙｏｕ  ｐｌｅａｓｅ、Ｃａｎ  ｙｏｕ  ｄｏ、Ｆａｖｏｒ  ｔｏ  ａｓｋ、Ｆｒｏｍ  ｙｏｕ。
【００４９】
必要であることの指示：
Ｉ  ｎｅｅｄ、Ｈｅ  ｎｅｅｄｓ、Ｓｈｅ  ｎｅｅｄｓ、Ｉ’ｄ  ｌｉｋｅ、Ｉｔ  ｗｏｕｌｄ  ｂｅ  ｇｒｅａｔ、Ｉ  ｗａｎｔ、Ｈｅ  ｗａｎｔｓ、Ｓｈｅ  ｗａｎｔｓ、Ｔａｋｅ  ｃａｒｅ  ｏｆ。
【００５０】
時間が重要であることの指示
ｈａｐｐｅｎｉｎｇ  ｓｏｏｎ、ｒｉｇｈｔ  ａｗａｙ、ｄｅａｄｌｉｎｅ  ｗｉｌｌ  ｂｅ、ｄｅａｄｌｉｎｅ  ｉｓ、ａｓ  ｓｏｏｎ  ａｓ  ｐｏｓｓｉｂｌｅ、ｎｅｅｄｓ  ｔｈｉｓ  ｓｏｏｎ、ｔｏ  ｂｅ  ｄｏｎｅ  ｓｏｏｎ、ｄｏｎｅ  ｒｉｇｈｔ  ａｗａｙ、ｔｈｉｓ  ｓｏｏｎ、ｂｙ［日付］、ｂｙ［時刻］。
【００５１】
重要であること
ｉｓ  ｉｍｐｏｒｔａｎｔ、ｉｓ  ｃｒｉｔｉｃａｌ、Ｗｏｒｄ、ｐｈｒａｓｅ＋！、明示的な優先度フラグステータス（低、なし、高）。
【００５２】
メッセージの長さ
新規メッセージの構成要素に含まれるバイトの個数。
【００５３】
コマーシャルおよびアダルトコンテンツのジャンクメールの目立つ標識
Ｆｒｅｅ！！、Ｗｏｒｄ＋！！！、Ｕｎｄｅｒ  １８、Ａｄｕｌｔ’ｓ  ｏｎｌｙ、大文字で始まる単語の割合、英数字でない文字の割合。
【００５４】
キーワードおよびフレーズだけでなく、メッセージの件名および本文内に現れる話法および論理形式のセンテンスの一部に対する統計量も使用することができる。
【００５５】
ポインタのパターン
メールメッセージ内に埋め込まれたＵＲＬなどの、電子メールメッセージの外部の資源を指すポインタ。
ユーザの組織ドメインの外部にあるサイトを指すポインタの個数と種類。
ユーザの組織ドメイン内のサイトを指すポインタの個数と種類。
【００５６】
背景色
メール送信者は、通常使用されているデフォルトのホワイトバックグラウンドと異なるバックグラウンドパターンを使用できる。
【００５７】
埋め込まれたグラフィックス
グラフィックスファイルの個数、種類、およびサイズ。
例えば、グラフィックスイメージとしてレンダリングされる拡張子が．ｊｐｇ、．ｇｉｆのファイル。
【００５８】
ＨＴＭＬおよびＸＭＬ
レンダリングのリッチコントロールおよびスクリプト実行を扱うＨＴＭＬおよびＸＭＬを電子メールの中に埋め込むことができる。
【００５９】
一般自然言語処理分析
メッセージ内のセンテンスの話法および論理形式の一部の出現に対する統計量、
様々な疑似事実クラスの識別、
様々なプレゼンテーションパターンなど。
【００６０】
上記の単語またはフレーズのグループは、クラシファイアの学習を行うのに使用することができる単語、グループ、またはフレーズの例を示していることに注意されたい。他の類似の単語、グループ、またはフレーズを単純に使用することができ、したがって本発明は、示されている例に限られないことは理解されるであろう。
【００６１】
さらに、図１１において、矢印１１２４で表されているようなクラシファイア１１２０の暗黙の学習は、例えば、ユーザのデスクトップまたはモバイルコンピュータ上に常駐させることができるバックグラウンドモニタ１１３４を介してユーザの作業または使用パターンを監視することにより実施することができる。例えば、ユーザが仕事をしていて、メールのリストをレビューするときに、時間重視メッセージを最初に読み、後で優先度の低いメッセージを読み、かつ／または削除すると仮定することができる。つまり、新規電子メールが届いたときに、ユーザが即座に電子メールを開くか、どのような順序で電子メールを開くか、開かずに電子メールを削除するか、かつ／または比較的短時間のうちに電子メールに返信するかを判別するためユーザは監視されている。したがって、クラシファイア１１２０は、ユーザがシステムで作業しているか操作している間に監視されるように適合され、クラシファイアは、バックグラウンドでの学習により定期的に精密化され、リアルタイムの意思決定機能を高めるため更新される。クラシファイアを構築するバックグラウンドの手法は、新しい学習メッセージでクラシファイア１１２０を更新するものから拡張することができる。
【００６２】
あるいは、より多くのメッセージを収集することができ、そのときに、バッチプロセスで、毎日のスケジュール、トレーニングセットに認められる新しい量のメッセージの個数、および／または組み合わせのいずれかに従ってメッセージの新しいフィルタが作成される。例えば、クラシファイアにメッセージが入力される毎に、クラシファイアに対する新しいケースを作成することができる。ケースは、例えば、高優先度または低優先度のいずれかであるテキストの否定的な例および肯定的な例として格納される。例えば、１つまたは複数の低、中、および高緊急度クラスは、それらのクラスのそれぞれにメンバとして含まれる確率を使用して、予想される重要性を設定することができるように認識することができる。重要性クラスの数が多いほど、これを使用してより高い分解を求めることができる。例えば、図１２に示されているように、メッセージのトレーニングセット１２４０（例えば、非常に高い、高い、中、ふつう、低い、非常に低いなど）を最初に使用してクラシファイア１２４２を学習させることができるため、１２４４で示されているようリアルタイムで分類が行われ、新しいメッセージはトレーニングセット１２４０により解決された例の数に応じて分類される。図１２では、３つのこのようなカテゴリが例として示されているが、複数のこのようなカテゴリを様々な望む重要度に応じて学習させることができることは理解されるであろう。図に示されているように、新規メッセージ１２４４は、ラベルを付け、タグを付け、かつ／または１つまたは複数のフォルダ１２４６に振り分けすることができ、その際の基準としては、例えば、クラシファイア１２４２により割り当てられた優先度を使用することができる。以下で詳述するように、後続のシステムがユーザに対し／ユーザのためにメッセージの書式、配信、および様相の決定を行う場合に割り当てられた優先度をさらに使用することができる。
【００６３】
本発明の他の態様によれば、例えばケースまたはメッセージに一組のフォルダのうちの１つとしてラベル付けする代わりに、ユーザが電子メールを対話操作を監視することにより、数または値を推定することができる。したがって、クラシファイアの更新を続けることはできるが、移動するウィンドウを備え、ユーザが指定しているように、ある存続期間よりも新しい時刻のメッセージまたはドキュメントのケースが考慮される。
【００６４】
例えば、メッセージの遅延レビューに関連する一定の損失率はメッセージの予想重大度（ＥＣ）と呼ばれ、以下の式で表される。
【００６５】
【数１】
0004612341.tif 000002
【００６６】
ここで、Ｃはコスト関数、ｄは遅延時間、Ｅはイベント、Ｈは電子メールの重大度クラスで、ＥＣは潜在的クラスに対するコスト関数Ｃにより記述される損失率による重みが付けられたクラスの公算に対する総和として表される。
【００６７】
例えば、図１２を参照すると、電子メールメッセージなどのテキスト１２３６がクラシファイア１２２０に入力され、それに基づいて、テキスト１２３６に対する優先度１２３８が生成される。つまり、クラシファイア１２２０は優先度１２３８を生成する場合、例えば、０から１００％の範囲の割合として測定する。この割合は、クラシファイア１２２０の前回学習結果に基づいてテキスト１２３６が高または他の何らかの優先度である公算の尺度とすることができる。
【００６８】
本発明では、上記のように、クラシファイア１２２０および優先度１２３８は、学習段階にある電子メールが、例えば、高優先度または低優先度のいずれかとして構築される方式に基づくことができることに注意されたい。上記のように、複数の他のトレーニングセットを使用して、優先度をより詳しく区別して解決することができる。
【００６９】
本発明は優先度の定義に限られず、クラシファイアではこのような表現を使用して電子メールメッセージなどのメッセージにそのような優先度を割り当てる。優先度は、例えば、損失関数に関して定義することができる。より具体的には、優先度は、受信した後メッセージをレビューする際に生じる遅延時間に関して失われる機会の予想コストに関して定義することができる。つまり、メッセージの処理の遅延に関して生じる予想損失またはコストである。損失関数はさらに、受信するメッセージのタイプによって異なる可能性がある。
【００７０】
後述の重大度(criticality)「Ｃ」をコスト関数(cost function)に割り当てることができることに注意されたい。したがって、「Ｃ」は、一般に、「コスト率」を意味し、レビューの遅れでコストが生じる率を指す。したがって「コスト関数」は、コストが発生する「率」として定義される。総コストは、予想損失「ＥＬ」として定義することができ、以下の式で定義できる。
【００７１】
ＥＬ＝Ｃ＊ｔ、ただし、時間ｔはメッセージの送信から受信までの間である。
コスト率が一定であると考えられる場合、予想総コストはメッセージがレビューされるまでの遅延時間が長くなるのに比例して増大する。通常、メッセージをユーザがレビューするまでに経過する時間に関して（例えば、ユーザの現在の状況、またはユーザの予想される未来の状況に基づいて）、あるいはより一般的に、１つまたは複数の観察結果に基づき（例えば、ユーザがデスクトップコンピュータで最後に見た時間、カレンダーに示されているユーザの現在の予約など）、および／またはユーザの過去の振る舞いに関するデータに不確定性がありうる。このような不確定性がある場合、予想損失は、時間遅延毎に予想損失の総和をとり、以下のような遅延時間が生じる確率により潜在的遅延毎に損失の寄与に重みを付けることにより、計算される。
【００７２】
【数２】
0004612341.tif 000003
【００７３】
ここで、ＥＬ’は遅延時間の不確定性、Ｅはユーザ状態に関する１つまたは複数の観察結果（例えば、カレンダー、室内音響、机上活動、アクティブデバイスに最後に触れた以降の経過時間）を表し、ｉおよびｊはインデックスであり、ｉおよびｊは整数である。
【００７４】
コスト率が非線形の場合、レビューが遅れたときの損失も同様に計算できるが、以下のように、時間に関する時間依存率の積分が必要である。
【００７５】
【数３】
0004612341.tif 000004
【００７６】
また予想損失を計算するために、項を追加して様々な遅延の可能性を取り込むようにする。
【００７７】
しかし、例えば、いくつかのメッセージには、線形コスト関数を使用して適切に近似された優先度が設定されない。例えば、会合に関係するメッセージでは、そのコスト関数は会合時間が迫るにつれ増大し、それ以降、コスト関数は急激に減少する。つまり、会議に遅れた場合、それ以降、一般にそれに関してユーザ側でできることはあまりない。このような状況は、図３３に示されているように、非線形コスト関数でうまく近似できる。グラフ２４６２で、コスト関数２４６４は、非線形の率に基づく総コストとして表すことができる。したがって、コスト関数２４６４は、コストがほぼ０から始まり、非線形曲線を描いて単調増加し、そして最終的に横ばい状態になるＳ字曲線で表すことができる。メッセージのタイプに応じて、コスト関数は、線形および非線形の様々な代表的コスト関数のうちの１つで近似することができることは理解できるであろう。
【００７８】
したがって、これまで説明してきたように、メッセージの優先度は、クラシファイアの出力に基づく複数の優先度のうちの１つである、またはこれもまたクラシファイアの出力に依存する、メッセージが適用される最も可能性の高い優先度クラスである可能性にすぎない。あるいは、電子メールメッセージなどのメッセージの予想時間重要性を判別することができる。これは以下のように書ける。
【００７９】
【数４】
0004612341.tif 000005
【００８０】
ここで、ＥＣは予想損失率、ｐ（ｃｒｉｔｉｃａｌｉ）はメッセージが重大度ｉを持つ確率、Ｃ（ｃｒｉｔｉｃａｌｉ）は重大度ｉを持つメッセージに対するコスト関数で、遅延レビューにより値の一定損失率を表し、ｎは重大度クラスの総数から１引いた値である。一般的なケースでは、コスト関数は、すでに述べたように、線形でも非線形でもある。関数が線形である場合、コスト関数は、時間の経過に関して変化しない損失率を定義する。非線形関数では、損失率は、メッセージの遅延したレビューまたは処理により変化し、遅延時間に応じて増減する。
【００８１】
例えば、２つの重大度クラス低と高がある場合、予想損失は以下のような式で表すことができる。
EC = p(criticalhigh)C(criticalhigh) + [1 - p(criticalhigh)]C(criticallow)
【００８２】
ここで、ＥＣはメッセージの予想重大度である。さらに、低重大度メッセージのコスト関数が０に設定された場合には、これは以下の式で表される。
EC = p(criticalhigh)C(criticalhigh)
【００８３】
損失率が時間に関して非線形である場合、遅延しているレビューの時間により損失率についてインデックスを作成できる。このような場合、メッセージのレビュー時間までの総損失を計算し、時間依存重大度の積分として、以下のように表すことができる。
【００８４】
【数５】
0004612341.tif 000006
【００８５】
ここで、ｔはドキュメントまたはメッセージのレビューに入るまでの遅延時間である。
【００８６】
電子メールメッセージなどのドキュメントを重要度別にランク付けする値測定基準と一致する尺度がほかにもある。上の説明は時間重大度としての優先度に注目していたが、「重要度」の他の概念についても学習するようにできる。例えば、これは、一組のトレーニングフォルダに「Ｈｉｇｈ  Ｉｍｐｏｒｔａｎｃｅ」から「Ｌｏｗ  Ｉｍｐｏｒｔａｎｃｅ」までのラベルを付けることで実現できるが、ただし「予想重要度」という尺度を決定できる。他の測定基準は、意味ラベル「messages that I would wish to hear about within 1 day while traveling」に基づき、出張中のユーザに転送するメッセージを優先順位付けする尺度を決定することができる。さらに、意思決定、優先順位決定、および経路選択に関しては意味は明確であるため、利用されている１つの測定基準は緊急度または時間重大度である。この場合、クラスは、様々なレベルの緊急度に従ってラベル付けされ、メッセージが各クラスに入っていると推論される確率から各メッセージに対する予想緊急度として計算される。
【００８７】
前の節で説明したように、本発明により、重大度分類の拡張も行える。例えば、分類に、特徴の複数クラスの中または間で利益の高い特徴の組み合わせを自動検索する機能を含めることができる。例えば、特別な区別、構造などと、特定のユーザに特に有用であることがわかった単語の組み合わせを検索し、分類プロセスで利用することができる。２つの特徴の組み合わせを、ダブレット(doublet)と呼び、３つの特徴の組み合わせをトリプレットと呼び、というように複数の特徴の組み合わせを名付けることができる。特徴の組み合わせを使用することで、分類能力を高めることができる。また、分類は、クラシファイア内で移動ウィンドウを採用するインクリメンタルインデクシング(incremental indexing)を使用して改善することができる。これにより、クラシファイアを定期的に更新し、古いデータをタイムアウトで捨てて、新しいデータを取り込む。
【００８８】
さらに、分類は、メッセージ内で指定されているイベントの日時の判定に基づくこともできる。この判定で、クラシファイアで使用可能なメッセージに特徴を割り当てることができる。例えば、割り当てられた特徴として、今日４時間以内、今日８時間以内、明日、今週、今月、および来月以降、などがある。これにより、クラシファイアでは、分類されたメッセージに関する精度を高めることができる。一般に、分類は、イベントが未来に行われるのか、すでに終わっているのかを考慮して、参照イベントの時刻に基づくことができる。未来のイベントに関して、分類では、イベントが発生する未来のある時点への送信者の参照を考慮する。
【００８９】
さらに、他の新しい特徴を分類プロセスに組み込むこともできる。例えば、組織図を利用して、図内の送信者のロケーションによりメッセージがどれだけ重要であるかを判別することができる。言語的な特徴をクラシファイアに組み込むことができる。様々な言語に対応するため、送信者の所在地、および／またはメッセージの作成に使用された言語に応じて特徴を修正することができる。分類は、メッセージが格納される様々なフォルダ、さらにその他のスケーリングおよび制御規則により異なる。電子メールおよびその他のソースのほかに、インスタントメッセージ、株価表示器などの他の情報ソースについても分類を実行することができる。
【００９０】
一般に、分類プロセスにおいて送信者−受信者の構造上の関係が考慮される場合がある。例えば、ユーザが実質的にメッセージの唯一の受信者である場合、このメッセージは、少数の人々に送信されるメッセージよりも重要であると考えられる。さらに、少数の人々に送信されるメッセージは、ユーザにブラインドコピー（ｂｃｃ）またはカーボンコピー（ｃｃ）で送られるメッセージよりも重要であると考えられる。送信者に関しては、送信者の名前が認識されるかどうかに基づき重大度を割り当てることができる。また、重大度は、送信者が、ユーザが関連付けられている組織の内部であるか外部であるかに応じて割り当てることもできる。
【００９１】
分類において考慮される他の区別として、メッセージの長さ、質問が検出されたかどうか、およびユーザの名前がメッセージ内に入っているかどうかがある。時間重大度に関連する言語により、メッセージの重要度が高くなる場合がある。例えば、「ｈａｐｐｅｎｉｎｇ  ｓｏｏｎ」、「ｒｉｇｈｔ  ａｗａｙ」、「ａｓ  ｓｏｏｎ  ａｓ  ｐｏｓｓｉｂｌｅ」、「ＡＳＡＰ」、および「ｄｅａｄｌｉｎｅ  ｉｓ」などのフレーズは、メッセージをより重大なものとして表現することができる。未来時制と対比した過去時制の使用を考慮するだけでなく、「ｇｅｔ  ｔｏｇｅｔｈｅｒ」、「ｃａｎ  ｗｅ  ｍｅｅｔ」などのフレーズによって等位タスクを指定することもできる。ジャンクメールの根拠があると、メッセージの優先度を下げられる。組織図内でユーザに近い送信者からの短い質問など、組み合わせを表す述語も、分類プロセスにおいて考慮することもできる。
【００９２】
図１３において、システム１３００は、本発明の一態様により通知エンジンおよびコンテキストアナライザが連携して機能する仕方を説明している。システム１３００は、コンテキストアナライザ１３２２、通知エンジン１３２４、１つまたは複数の通知ソース１からＮ、１３２６、１３２７、１３２８、通知ソースとして動作可能な優先順位付けシステム１３３０、および１つまたは複数の通知シンク１からＭ、１３３６、１３３７、１３３８を備え、ＮおよびＭはそれぞれ整数である。これらのソースは、イベントパブリッシャ(event publishers)とも呼ばれ、シンクは、イベントサブスクライバ(event subscribers)とも呼ばれる。シンクおよびソースはいくつでも配置できる。一般に、通知エンジン１３２４は、コンテキストアナライザ１３２２に格納されかつ／またはアクセスされるパラメータ情報に少なくとも一部は基づいて、イベントまたはアラートとも呼ばれる通知をソース１３２６〜１２８からシンク１３３６〜１３３８に伝達する。
【００９３】
コンテキストアナライザ１３２２は、通知意思決定に影響を及ぼす、ユーザの変数およびパラメータに関する情報を格納／分析する。例えば、これらのパラメータには、時刻および曜日によるユーザの通常のロケーションおよびアテンションの焦点または活動、パラメータなど、様々なロケーションでユーザがアクセスする傾向のあるデバイスなどを条件とする追加パラメータが含まれる。また、このようなパラメータは、１つまたは複数のセンサにより自律的に行われる観察結果の関数でもある。例えば、１つまたは複数のプロファイル（図に示されていない）は、衛星利用測位システム（ＧＰＳ）サブシステムにより与えることができるユーザのロケーションに関する情報、使用されているデバイスのタイプおよび／またはデバイスの使用パターンに関する情報、およびユーザが最後に特定のタイプのデバイスにアクセスした時刻に基づいて選択または修正することができる。さらに、後述のように、自動化された推論機能を使用して、ロケーションおよびアテンションなどのパラメータまたは状態を動的に推論することもできる。プロファイルパラメータは、ユーザが編集可能なユーザプロファイルとして格納することができる。何組かの定義済みプロファイルまたは動的推論に依存するだけでなく、通知アーキテクチャでは、ユーザはリアルタイムで、例えば、次の「ｘ」時間、または所定の時刻まで、重要な通知を除き、ユーザが利用可能な状態でないなどの自分の状態を指定することができる。
【００９４】
これらのパラメータは、さらに、異なる設定の異なるタイプの通知があると中断が生じることについてユーザのプリファレンスに関する既定の通知プリファレンスパラメータを含むこともでき、これを通知エンジン１３２４による通知決定を行うための基準として使用し、それに基づいてユーザは変更を開始することができる。これらのパラメータは、ユーザが様々な状況で通知をどのような形で受けることを望んでいるか（例えば、携帯電話、ポケベル）に関する既定のパラメータを含むことができる。これらのパラメータは、異なる設定で異なるモードによる通知と関連する中断のコストなどの評価を含むことができる。これには、ユーザが異なるロケーションにいる可能性、異なるデバイスを使用できる可能性、および所定の時刻でのアテンションステータス(attentional status)の発生可能性を示すコンテクスチャルパラメータ(contextual parameters)、さらにユーザが所定の時刻に通知をどのように受けることを望んでいるかを示す通知パラメータを含むことができる。
【００９５】
本発明の一態様によるコンテキストアナライザ１３２２により格納されている情報は、アナライザにより判別されたコンテキスト情報を含む。コンテキスト情報は、後の節で詳しく説明するが、１つまたは複数のコンテキスト情報ソース（図に示されていない）に基づきユーザのロケーションおよびアテンションステータスを識別することによりアナライザ１３２２により判別される。例えば、コンテキストアナライザ１３２２は、ユーザの自動車電話または携帯電話の一部である衛星利用測位システム（ＧＰＳ）を介してユーザの実際の位置を正確に判別することができる。また、アナライザは、統計モデルを使用して、ユーザのカレンダーの日にちの種類、時刻、およびデータなどの情報、およびユーザの活動に関する観察結果を考慮し、背景評価および／または収集された観察結果を考察することによりユーザが所定のアテンション状態である可能性を判定することができる。指定されたアテンション状態には、ユーザが通知を受け取れる状態にあるか、ビジー状態であり、通知を受け取れない状態にあるかに関する情報を入れることができ、また平日、週末、休日、および／または他の行事／期間などの考慮事項を入れることができる。
【００９６】
ソース１３２６〜１３２８、１３３０は、ユーザおよび／または他のエンティティを対象とする通知を生成する。例えば、ソース１３２６〜１３２８は、インターネットおよびネットワークベースの通信などの通信および電話通信、さらにソフトウェアサービスを含むことができる。通知ソースは、本明細書では一般的に、情報、サービス、および／またはシステムイベントまたはワールドイベント(world event)に関してユーザまたはユーザ用のプロキシに警告することを目的とする通知およびアラートとも呼ばれるイベントを発生するソースとして定義される。通知ソースは、イベントソースと呼ぶこともできる。
【００９７】
例えば、優先順位付けシステム１３３０では、電子メールを通知として生成し、優先順位付けできるが、その際に、通知を発生するアプリケーションプログラムまたはシステムは電子メールに、ユーザに送信される電子メールの十分あり得る重要度または緊急度に対応する相対的優先度を割り当てる。電子メールは、さらに、ユーザへの相対的重要度と無関係に送信することもできる。インターネット関連サービスは、ユーザがサブスクリプションしていた、例えば頻繁な最新ニュースの大見出しおよび株式相場などの情報をはじめとする通知を含むことができる。
【００９８】
通知ソース１３２６〜１３２８は、それ自体、プッシュ型またはプル型ソースとすることができる。プッシュ型ソースは、ニュース見出しおよびサブスクリプションを申し込んだ後自動的に情報を送信する他のインターネット関連サービスなど、対応する要求がなくても自動的に情報を生成して送信するソースである。プル型ソースは、メールサーバをポーリングした後受信される電子メールなど、要求に対する応答として情報を送信するソースである。さらに他の通知ソースとしては以下のものがある。
【００９９】
・カレンダーシステムなどの電子メールデスクトップアプリケーション、
・コンピュータシステム（例えば、システムの活動または問題に関する警告に関する情報を含むメッセージをユーザに送って警告することができる）、
・インターネット関連サービス、予約情報、スケジュール問い合わせ、
・１つまたは複数の共有フォルダ内のドキュメントの変更または特定の種類のドキュメントの個数の変更、
・情報を要求する永続的または持続的問い合わせに対する応答として利用可能な新規ドキュメントがあるか否か、および／または、
・人々およびその存在、位置の変更、近さ（例えば、「同僚または友人が私の半径１０マイル以内に近づいた場合に私がいつ出発すればいいか教えて欲しい」）、または利用可能か否か（例えば、「Ｓｔｅｖｅが会話できる状態になり、完全なテレビ会議機能をサポートできる高速リンクの近くに来たら教えて欲しい」）などに関する情報の情報ソース。
【０１００】
通知シンク１３３６〜１３３８は、通知をユーザに送ることができる。例えば、このような通知シンク１３３６〜１３３８として、デスクトップおよび／またはラップトップコンピュータ、ハンドヘルドコンピュータ、携帯電話、固定電話、ポケベル、車載コンピュータ、さらに評価可能な他のシステム／アプリケーションなどのコンピュータがある。シンク１３３６〜１３３８のうち一部では、他のシンクよりも伝達する通知が豊富な場合がある。例えば、デスクトップコンピュータは、通常、スピーカおよび比較的大型のカラーディスプレイが結合されており、さらにローカルネットワークまたはインターネットに結合されたとき情報を受信するための高い帯域を持つ。したがって、デスクトップコンピュータでユーザに通知を伝達するための手段は比較的豊富である。逆に、多くの携帯電話は、白黒の小型のディスプレイを備え、例えば、比較的低い帯域幅で情報を受信する。したがって、携帯電話で伝達される通知に関連する情報は、一般に、比較的短く、例えば、電話のインターフェース能力に合わせてある。そのため、通知の内容は、携帯電話に送信するのか、デスクトップコンピュータに送信するのかにより異なる。本発明の一態様によれば、通知シンクは、イベントサブスクリプションサービス(event subscription service)を介して、例えば、イベントまたは通知をサブスクリプションするシンクを意味すると考えられる。
【０１０１】
通知エンジン１３２４は、コンテキストアナライザによって格納されたかつ／または判別された情報にアクセスし、ソース１３２６〜１３２８から受信した通知のうちのどれをシンク１３３６〜１３３８のうちのどれに伝達するかを決定する。さらに、通知エンジン１３２４は、情報の送信先としてシンク１３３６〜１３３８のどれを選択したかに応じて、通知を伝達する方法を決定することができる。例えば、選択されたシンク１３３６〜１３３８に通知を送る前に通知を要約しなければならないと判定される場合がある。
【０１０２】
本発明は、エンジン１３２４が通知のうちどれを通知シンクのどれに伝達するか、また通知をどのようにして伝達するかを決定する方法に限られない。一態様により、決定理論分析を使用することができる。例えば、通知エンジン１３２４は、ユーザのロケーション、アテンション、デバイスが使用可能か否か、およびアラートがない場合にユーザが情報にアクセスするまでの時間を含む変数に関する重要な不確定性を推論するように適合させることができる。通知エンジン１３２４は、ユーザに通知が来ていることを警告するかどうかに関して、また警告するのであれば、要約の性質および通知を中継するために使用する適当な１つまたは複数のデバイスに関する通知決定を下すことができる。一般に、通知エンジン１３２４は、通知の正味の予想値を判別する。そうする場合、以下の点を考慮することができる。
【０１０３】
・使用可能なそれぞれの通知シンクの忠実度および伝送信頼性、
・ユーザの作業を妨げることのアテンションコスト(attentional cost)、
・ユーザに送る情報の新規性、
・ユーザが自分で情報をレビューするまでの時間、
・情報の潜在的に文脈依存の値、
・通知に含まれる情報の時間に対する値の増減。
【０１０４】
不確定性に関して行われる推論は、例えば、ユーザの何らかのアテンション状態が与えられた場合に特定のデバイスの特定のモードを使用してユーザに対し生じる中断のコストなどの値の予想される公算として出力することができる。通知エンジン１３２４は、以下のうち１つまたは複数に関して決定を下すことができる。
【０１０５】
・ユーザが現在注目し行っていること（例えば、コンテキスト情報に基づいて）、
・ユーザが現在どこにいるか、
・情報がどれだけ重要であるか、
・通知を遅らせた場合のコストはどれだけか、
・通知はどれだけ注意をそらすか、
・ユーザに理解してもらえる公算はどれだけか、
・指定された通知シンクの特定のモードを使用することと関連する忠実度損失はどのようなものか。
【０１０６】
したがって、通知エンジン１３２４は、保留中のおよびアクティブな通知の意思決定理論分析などの分析を実行することができ、情報シンクおよびソースによって与えられる文脈依存の変数を評価し、ユーザが情報およびユーザのロケーションおよび現在のアテンション状態をレビューする可能性が高くなるまでの時間など選択された不確定性を推論する。
【０１０７】
さらに、通知エンジン１３２４は、個人化された意思決定理論分析の代わりの、またはそれをサポートするコンテキストアナライザ１３２２によってユーザプロファイルに格納されている情報にアクセスすることができる。例えば、ユーザプロファイルでは、所定時間に、ユーザは、通知が所定の重要度レベルにあった場合のみポケベルによる通知を受け取るのを好むことを示すことができる。このような情報は、意思決定理論分析を開始するためのベースラインとして使用することができ、あるいはこのような情報は、通知エンジン１３２４がユーザに通知するかどうか、およびその方法に関する情報とすることができる。
【０１０８】
本発明の一態様により、通知プラットフォームアーキテクチャ１３００は、イベント発生またはメッセージ送受信のインフラ上に常駐するレイヤとして構成することができる。しかし、本発明は、特定のイベント発生インフラに限定されない。さらに、このアーキテクチャは、自由度の高い分散計算インフラストラクチャ上に常駐するレイヤとして構成することができ、これは当業者であれば理解できるであろう。したがって、通知プラットフォームアーキテクチャは、例えば、ソースが通知、アラート、およびイベントを送信する手段として、またエンドポイントデバイスなどのシンクが通知、アラート、およびイベントを受信する手段として、基本インフラストラクチャを利用することができる。しかし、本発明はそれに限られるわけではない。
【０１０９】
図１４を参照すると、本発明の様々な対応を実装するための環境例１４１０はコンピュータ１４１２を備える。コンピュータ１４１２は、処理ユニット１４１４、システムメモリ１４１６、およびシステムバス１４１８を備える。システムバス１４１８は、システムメモリ１４１６など（それには限定されないが）のシステムコンポーネントを処理ユニット１４１４に結合する。処理ユニット１４１４は、様々な市販プロセッサがあるがそのうちどれでもよい。デュアルマイクロプロセッサおよびその他のマルチプロセッサアーキテクチャも、処理ユニット１４１４として採用することができる。
【０１１０】
システムバス１４１８は、メモリバスまたはメモリコントローラ、周辺機器バスまたは外部バス、１１ビットバス、Ｉｎｄｕｓｔｒｉａｌ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ（ＩＳＡ）、Ｍｉｃｒｏ−Ｃｈａｎｎｅｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ（ＭＳＡ）、Ｅｘｔｅｎｄｅｄ  ＩＳＡ（ＥＩＳＡ）、Ｉｎｔｅｌｌｉｇｅｎｔ  Ｄｒｉｖｅ  Ｅｌｅｃｔｒｏｎｉｃｓ（ＩＤＥ）、ＶＥＳＡ  Ｌｏｃａｌ  Ｂｕｓ（ＶＬＢ）、Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ（ＰＣＩ）、Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ（ＵＳＢ）、Ａｄｖａｎｃｅｄ  Ｇｒａｐｈｉｃｓ  Ｐｏｒｔ（ＡＧＰ）、Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ  Ｍｅｍｏｒｙ  Ｃａｒｄ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ａｓｓｏｃｉａｔｉｏｎ  ｂｕｓ（ＰＣＭＣＩＡ）、およびＳｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍｓ  Ｉｎｔｅｒｆａｃｅ（ＳＣＳＩ）をはじめとする利用可能な各種バスアーキテクチャを使用するローカルバスなど数種類のバス構造のうちの１つでよい。
【０１１１】
システムメモリ１４１６は、揮発性メモリ１４２０および不揮発性メモリ１４２２を含む。起動時などにコンピュータ１４１２内の要素間の情報転送を行うための基本ルーチンを含む基本入出力システム（ＢＩＯＳ）は、不揮発性メモリ１４２２に格納される。例として、ただしこれらに限られないが、不揮発性メモリ１４２２には、読み取り専用メモリ（ＲＯＭ）、プログラム可能ＲＯＭ（ＰＲＯＭ）、電気的プログラム可能ＲＯＭ（ＥＰＲＯＭ）、電気的消去可能ＲＯＭ（ＥＥＰＲＯＭ）、またはフラッシュメモリなどがある。揮発性メモリ１４２０には、外部キャッシュメモリとして動作するランダムアクセスメモリ（ＲＡＭ）がある。例として、ただしこれらに限られないが、使用可能なＲＡＭには、同期ＲＡＭ（ＳＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、同期ＤＲＡＭ（ＳＤＲＡＭ）、Ｄｏｕｂｌｅ  Ｄａｔａ  Ｒａｔｅ  ＳＤＲＡＭ（ＤＤＲ  ＳＤＲＡＭ）、Ｅｎｈａｎｃｅｄ  ＳＤＲＡＭ（ＥＳＤＲＡＭ）、Ｓｙｎｃｈｌｉｎｋ  ＤＲＡＭ（ＳＬＤＲＡＭ）、およびＤｉｒｅｃｔ  Ｒａｍｂｕｓ  ＲＡＭ（ＤＲＲＡＭ）など様々な形態のものがある。
【０１１２】
またコンピュータ１４１２は、その他の取り外し可能／取り外し不可能な揮発性／不揮発性コンピュータ記憶媒体を備える。図１４は、例えばディスク記憶装置１４２４を示している。ディスク記憶装置１４２４には、磁気ディスクドライブ、フロッピー（登録商標）ディスクドライブ、テープドライブ、Ｊａｚドライブ、Ｚｉｐドライブ、ＬＳ−１００ドライブ、フラッシュメモリカード、またはメモリスティックなどがある。さらに、ディスク記憶装置１４２４は、記憶媒体を単独で備えることも、コンパクトディスクＲＯＭデバイス（ＣＤ−ＲＯＭ）、ＣＤ書き込み可能ドライブ（ＣＤ−Ｒドライブ）、ＣＤ書き換え可能ドライブ（ＣＤ−ＲＷドライブ）、またはデジタル多用途ディスクＲＯＭドライブ（ＤＶＤ−ＲＯＭ）などの光ディスクドライブをはじめとする他の記憶媒体と組み合わせて備えることもできる。ディスク記憶装置１４２４をシステムバス１４１８に接続しやすくするために、通常、インターフェース１４２６などの取り外し可能または取り外し不可能インターフェースを使用する。
【０１１３】
図１４は、ユーザと適当な動作環境１４１０内の説明されている基本コンピュータ資源との媒介手段として動作するソフトウェアを説明していることは理解されるであろう。このようなソフトウェアとして、オペレーティングシステム１４２８がある。オペレーティングシステム１４２８は、ディスク記憶装置１４２４に格納することができ、コンピュータシステム１４１２の資源の制御・割り当てを行う働きをする。システムアプリケーション１４３０は、システムメモリ１４１６またはディスク記憶装置１４２４に格納されているプログラムモジュール１４３２およびプログラムデータ１４３４を通じてオペレーティングシステム１４２８により資源の管理を利用する。本発明は、様々なオペレーティングシステムまたはオペレーティングシステムの組み合わせで実装できることは理解されるであろう。
【０１１４】
ユーザは入力デバイス１４３６を使用してコマンドまたは情報をコンピュータ１４１２に入力する。入力デバイス１４３６には、マウスなどのポインティングデバイス、トラックボール、ペン、タッチパッド、キーボード、マイク、ジョイスティック、ゲームパッド、衛星放送受信アンテナ、スキャナ、ＴＶチューナーカード、デジタルカメラ、デジタルビデオカメラ、Ｗｅｂカメラなどがある。これらの入力デバイスやその他の入力デバイスは、インターフェースポート１４３８を介してシステムバス１４１８を通じ処理装置１４１４に接続する。例えば、インターフェースポート１４３８にはシリアルポート、パラレルポート、ゲームポート、およびユニバーサルシリアルバス（ＵＳＢ）などがある。出力デバイス１４４０では、入力デバイス１４３６と同じ種類のポートをいくつか使用する。したがって、例えば、ＵＳＢポートを使用して、コンピュータ１４１２に入力し、コンピュータ１４１２から情報を出力デバイス１４４０に出力することができる。出力アダプタ１４４２が備えられており、特別なアダプタを必要とする他の出力デバイス１４４０のうちモニタ、スピーカ、およびプリンタなどいくつかの出力デバイス１４４０があることを示している。出力アダプタ１４４２は、例えば、これらに限られないが、出力デバイス１４４０とシステムバス１４１８とを接続する手段となるビデオおよびサウンドカードなどがある。他のデバイスおよび／またはデバイスのシステムはリモートコンピュータ１４４４などの入出力機能を備えることに留意されたい。
【０１１５】
コンピュータ１４１２は、リモートコンピュータ１４４４などの１つまたは複数のリモートコンピュータへの論理接続を使用してネットワーク環境で動作させることができる。リモートコンピュータ１４４４は、パーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ワークステーション、マイクロプロセッサベース機器、ピアデバイス、またはその他の共通ネットワークノードなどでよく、通常は、コンピュータ１４１２に関係する上述の要素の多くまたはすべてを含む。簡単のため、メモリ記憶装置１４４６のみリモートコンピュータ１４４４とともに示してある。リモートコンピュータ１４４４は、ネットワークインターフェース１４４８を通じてコンピュータ１４１２に論理的に接続され、通信接続１４５０を介して物理的に接続される。ネットワークインターフェース１４４８は、ローカルエリアネットワーク（ＬＡＮ）およびワイドエリアネットワーク（ＷＡＮ）などの通信ネットワークを含む。ＬＡＮ技術には、Ｆｉｂｅｒ  Ｄｉｓｔｒｉｂｕｔｅｄ  Ｄａｔａ  Ｉｎｔｅｒｆａｃｅ（ＦＤＤＩ）、Ｃｏｐｐｅｒ  Ｄｉｓｔｒｉｂｕｔｅｄ  Ｄａｔａ  Ｉｎｔｅｒｆａｃｅ（ＣＤＤＩ）、Ｅｔｈｅｒｎｅｔ（登録商標）／ＩＥＥＥ  １１０２．３、Ｔｏｋｅｎ  Ｒｉｎｇ／ＩＥＥＥ  １１０２．５などがある。ＷＡＮ技術には、２地点間接続リンク、総合デジタル通信網（ＩＳＤＮ）などの回線交換ネットワークとその変種、パケット交換ネットワーク、およびデジタルサブスクライバ回線（ＤＳＬ）などがある。
【０１１６】
通信接続１４５０とは、ネットワークインターフェース１４４８をバス１４１８に接続するために使用されるハードウェア／ソフトウェアのことである。通信接続１４５０はわかりやすくするためにコンピュータ１４１２内に示されているが、コンピュータ１４１２の外部にあってもかまわない。ネットワークインターフェース１４４８の接続に必要なハードウェア／ソフトウェアには、例えば、通常の電話グレードのモデム、ケーブルモデム、およびＤＳＬモデムなどのモデム類、ＩＳＤＮアダプタ、およびＥｔｈｅｒｎｅｔ（登録商標）カードなどの内部および外部技術がある。
【０１１７】
図１５は、本発明との相互やり取りが可能なコンピューティング環境１５００の例を示す概略ブロック図である。システム１５００は、１つまたは複数のクライアント１５１０を備える。クライアント１５１０は、ハードウェアおよび／またはソフトウェア（例えば、スレッド、プロセス、コンピューティングデバイス）とすることができる。システム１５００は、１つまたは複数のサーバ１５３０を備える。サーバ１５３０もまた、ハードウェアおよび／またはソフトウェア（例えば、スレッド、プロセス、コンピューティングデバイス）とすることができる。サーバ１５３０には、例えば、本発明を採用することにより変換を実行するスレッドを置くことができる。クライアント１５１０とサーバ１５３０との間の考えられる１つの通信は、２つまたはそれ以上のコンピュータプロセス間で伝送されるように適合されたデータパケットの形で実行できる。システム１５００は、クライアント１５１０とサーバ１５３０との間の通信を円滑にするために採用することができる通信フレームワーク１５５０を含む。クライアント１５１０は、クライアント１５１０のローカルにある情報を格納するために使用することができる１つまたは複数のクライアントデータストア１５６０に接続し動作させることができる。同様に、サーバ１５３０は、サーバ１５３０のローカルにある情報を格納するために使用することができる１つまたは複数のサーバデータストア１５４０に接続し動作させることができる。
【０１１８】
上で説明した内容は、本発明の例を含んでいる。もちろん、本発明を説明するためにコンポーネントまたは方法の考えられるすべての組み合わせを説明することは不可能であるが、当業者であれば、本発明の他の多くの組み合わせおよび置換が可能であることを理解できるであろう。したがって、本発明は、付属の請求項の精神と範囲内に収まるすべてのそのような変更、修正、および変種を包含するものとする。さらに、「ｉｎｃｌｕｄｅｓ（含む、備える）」という言い回しを詳細な説明または請求項で使用している範囲において、このような用語は「ｃｏｍｐｒｉｓｉｎｇ（備える、含む）」という用語と似た使い方をし、これは使用した場合に請求項の中で暫定的用語と解釈する。
【図面の簡単な説明】
【０１１９】
【図１】本発明の一態様によるバルクフィルタ処理を例示する概略ブロック図である。
【図２】本発明の一態様による予想される緊急度判定の図である。
【図３】本発明の一態様によるカスケードフィルタ処理を例示する図である。
【図４】本発明の一態様によるフィルタバイパスシステムを例示するブロック図である。
【図５】本発明の一態様による他のフィルタアプリケーションを例示する図である。
【図６】本発明の一態様によるメッセージ処理を例示する流れ図である。
【図７】本発明の一態様によるフィルタオプションを例示するユーザインターフェースの図である。
【図８】本発明の一態様による学習オプションを例示するユーザインターフェースの図である。
【図９】本発明の一態様によるメッセージの振り分けおよび注釈を例示するユーザインターフェースの図である。
【図１０】本発明の一態様による優先度システムを例示する概略図である。
【図１１】本発明の一態様によるクラシファイアを例示する図である。
【図１２】本発明の一態様によるメッセージ分類を例示する図である。
【図１３】本発明の一態様による通知エンジンとコンテキストアナライザとのシステム上の連携を例示する概略ブロック図である。
【図１４】本発明の一態様による好適な動作環境を例示する概略ブロック図である。
【図１５】本発明との相互やり取りが可能なコンピューティング環境例を示す概略ブロック図である。
【図１】
0004612341.tif 000007
【図２】
0004612341.tif 000008
【図３】
0004612341.tif 000009
【図４】
0004612341.tif 000010
【図５】
0004612341.tif 000011
【図６】
0004612341.tif 000012
【図１０】
0004612341.tif 000013
【図１１】
0004612341.tif 000014
【図１２】
0004612341.tif 000015
【図１３】
0004612341.tif 000016
【図１４】
0004612341.tif 000017
【図１５】
0004612341.tif 000018
【図７】
0004612341.tif 000019
【図８】
0004612341.tif 000020
【図９】
0004612341.tif 000021