(57)【要約】【課題】  照会ログを圧縮するための方法および装置を提供すること。【解決手段】  複数レベルのユーザ指定可能な圧縮には、文字ベースの圧縮、トークンベースの圧縮、および包含が含まれる。包含を実行するための効率的な方法も提供される。その後、圧縮された照会ログを使用して、コンピュータのオペレーティングシステム用のヘルプ機能などの統計的処理をトレーンニングする。【選択図】  図４
2005259143.tif 000002
【特許請求の範囲】
【請求項１】
言語データのログを圧縮する方法であって、前記ログは、複数の言語文字列を有し、該各文字列は、少なくとも２つのトークンを含み、
前記各文字列に圧縮処理を適用するステップと、
前記圧縮処理後に、任意の２つの文字列が相互に一致するか否かを決定するステップと、
前記２つの一致する文字列のうちの１つを前記ログから除去するステップと
を備えたことを特徴とする方法。
【請求項２】
前記ログは、照会のログであることを特徴とする請求項１に記載の方法。
【請求項３】
前記照会は、ヘルプ機能に関する照会であることを特徴とする請求項２に記載の方法。
【請求項４】
前記ヘルプに関する照会は、コンピュータシステムに関することを特徴とする請求項３に記載の方法。
【請求項５】
前記圧縮処理は、文字ベースであることを特徴とする請求項１に記載の方法。
【請求項６】
前記圧縮処理は、トークンベースであることを特徴とする請求項１に記載の方法。
【請求項７】
前記圧縮処理は、包含であることを特徴とする請求項１に記載の方法。
【請求項８】
前記包含は、編集距離を選択的に計算するために不可能条件を適用するステップを含むことを特徴とする請求項７に記載の方法。
【請求項９】
前記各文字列に第２の圧縮処理を適用するステップと、
前記第２の圧縮処理後に、任意の２つの文字列が相互に一致するか否かを決定するステップと、
前記２つの一致する文字列のうちの１つを前記ログから除去するステップと
をさらに備えたことを特徴とする請求項１に記載の方法。
【請求項１０】
前記第１の圧縮処理は、文字ベースであり、前記第２の圧縮処理は、トークンベースであることを特徴とする請求項９に記載の方法。
【請求項１１】
前記第２の圧縮処理が完了した後に、包含を適用するステップをさらに備えたことを特徴とする請求項１０に記載の方法。
【請求項１２】
前記包含処理は、前記ログに対して反復されることを特徴とする請求項１１に記載の方法。
【請求項１３】
前記圧縮されたログとともに統計的処理をトレーニングするステップをさらに備えたことを特徴とする請求項１に記載の方法。
【請求項１４】
複数の言語文字列を有する照会ログを圧縮するためのシステムであって、前記各文字列は複数のトークンを有し、
生の照会ログを受け取るための入力と、
前記生の照会ログを格納するためのメモリと、
少なくとも１つの圧縮処理を前記各文字列に適用するための、および前記修正された文字列をスキャンして、相互にいずれかが一致するか否かを決定し、一致する文字列のうちの１つを除去できるようにするためのプロセッサと、
前記除去が完了すると、圧縮済み照会ログを提供するための出力と、
を備えたことを特徴とするシステム。
【請求項１５】
前記照会は、ヘルプ機能に関する照会であることを特徴とする請求項１４に記載のシステム。
【請求項１６】
前記ヘルプに関する照会は、コンピュータシステムに関することを特徴とする請求項１５に記載のシステム。
【請求項１７】
前記少なくとも１つの圧縮処理は、文字ベースであることを特徴とする請求項１４に記載のシステム。
【請求項１８】
前記少なくとも１つの圧縮処理は、トークンベースであることを特徴とする請求項１４に記載のシステム。
【請求項１９】
前記少なくとも圧縮処理は、包含であることを特徴とする請求項１４に記載のシステム。
【請求項２０】
前記包含は、編集距離を選択的に計算するために不可能条件を適用するステップを含むことを特徴とする請求項１９に記載のシステム。
【請求項２１】
前記各文字列に少なくとも１つの第２の圧縮処理を適用するステップと、
前記第２の圧縮処理後に、任意の２つの文字列が相互に一致するか否かを決定するステップと、
前記２つの一致する文字列のうちの１つを前記ログから除去するステップと
をさらに備えたことを特徴とする請求項１４に記載のシステム。
【請求項２２】
前記第１の圧縮処理は、文字ベースであり、前記第２の圧縮処理は、トークンベースであることを特徴とする請求項２１に記載のシステム。
【請求項２３】
前記第２の圧縮処理が完了した後に、包含を適用するステップをさらに備えたことを特徴とする請求項２２に記載のシステム。
【請求項２４】
前記包含処理が前記ログに対して反復されることを特徴とする請求項２３に記載のシステム。
【請求項２５】
前記圧縮されたログとともに統計的処理をトレーニングするステップをさらに備えたことを特徴とする請求項１４に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自然言語データのコンピュータ化されたログに関し、より詳細には、自然言語データのコンピュータ化されたログを圧縮するための方法およびシステムに関する。
【背景技術】
【０００２】
本明細書で使用される言語データのログには、人によって生成される２つ以上の言語文字列が含まれる。これらのログは、様々な状況において生成することができる。たとえばこうしたログは、１人または複数のユーザが大規模なデータの集まりと対話をしようと試みている環境で生成される。この環境の特定の例の１つが、ユーザがコンピュータシステムに関してヘルプトピックを見つけるためにヘルプ照会を生成する場合である。たとえば、こうした照会の１つに「どのようにプリンタをインストールすればよいか」が含まれる場合がある。他の例には、「自分のコンピュータにどのようにファイアウォールを構成すればよいか」がある。
【０００３】
何百万もの実際のユーザ照会のログが存在し、システム製造者はこれらを、ユーザヘルプの必要性／目標とそれらの表現または言語傾向との間の関係に関する情報の貴重なソースとして使用することができる。照会が、定義されたシステムタスク指示子の形態でユーザの関心に結び付く場合、これらのログを用いて次世代のヘルプサービス向けの統計的照会分類子をトレーニングすることができる。さらにこうしたログを調べて、追加しなければならないヘルプタスクのための着想を探り当てることができる。最終的に、生の（ｒａｗ）照会文字列のカウントではなく正規化された形をカウントすることによって、「実際の」すなわち使用可能な実際のサイズ、あるいは所与のログの実際の意味的コンテンツ／サイズまたは付加価値の基本尺度が、より良く決定される。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
コンピュータシステムがより大規模かつより機能豊富になったことから、効率的かつ直感的に使用できるヘルプシステムを提供することがより重要になってきている。しかしながら、所与の照会を記述することが可能な様々な方法の数がかなり複雑であり、現在のコンピュータシステムによって提供される大量の追加の特徴および機能によってさらに複雑さが増すということは、自然言語照会ログがこうした何百万もの照会を含むことができることを意味する。確かに、これら大量のログに基づいて照会検索エンジンを手動で読み取ってトレーニングするには、かなりの時間がかかる。しかしながら、ログ内の各々の、およびあらゆる照会は、検索の正確さを向上させるのに役立つ潜在的に重要なデータを表す。より管理しやすいサイズにするために単にログ内の個々の照会を廃棄することは、望ましくない。
【０００５】
照会ログなどの大規模な自然言語データログの操作を容易にすることができるシステムおよび方法を提供することが、当分野にとって有用となろう。さらに、こうした照会の言語的意味を維持しながら、これら自然言語データログの巨大なサイズを縮小するような方式でこうした操作が実行できれば、非常に有益となろう。
【課題を解決するための手段】
【０００６】
照会ログを圧縮するための方法および装置が提供される。複数レベルのユーザ指定可能な圧縮には、文字ベースの圧縮、トークンベースの圧縮、および包含（ｓｕｂｓｕｍｐｔｉｏｎ）が含まれる。その後、圧縮された照会ログを使用して、コンピュータのオペレーティングシステム用のヘルプ機能などの統計的プロセスをトレーンニングする。
【発明を実施するための最良の形態】
【０００７】
図１は、本発明を実施することができる好適なコンピューティングシステム環境１００の一例を示す図である。コンピューティングシステム環境１００は好適なコンピューティング環境の一例に過ぎず、本発明の用途または機能の範囲に関してどのような限定をも暗示するものではない。さらにコンピューティング環境１００は、例示的なオペレーティング環境１００に図示された構成要素のいずれか１つまたはそれらの組合せに関して、どのような依存関係または要件をも有するものと解釈されるべきではない。
【０００８】
本発明は、多数の他の汎用または専用コンピューティングシステム環境または構成で動作可能である。本発明で使用するのに適している可能性のあるよく知られたコンピューティングシステム、環境、および／または構成の例には、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドまたはラップトップ装置、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能な家電、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、電話システム、上記システムまたは装置のいずれかを含む分散コンピューティング環境、およびその他が含まれるが、これらに限定されない。
【０００９】
本発明については、コンピュータによって実行されているプログラムモジュールなどのコンピュータ実行可能命令の一般的な文脈で説明することができる。一般にプログラムモジュールは、特定のタスクを実行するかまたは特定の抽象データ型を実施する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。本発明は、通信ネットワークを介してリンクされたリモート処理装置によってタスクが実行される、分散コンピューティング環境でも実施可能である。分散コンピューティング環境では、プログラムモジュールを、メモリ記憶装置を含むローカルおよびリモートの両方のコンピュータ記憶媒体に配置することができる。
【００１０】
図１を参照すると、本発明を実施するための例示的なシステムは、コンピュータ１１０の形態で汎用コンピューティング装置を含む。コンピュータ１１０の構成要素は、中央処理装置１２０、システムメモリ１３０、およびシステムメモリを含む様々なシステム構成要素を処理装置１２０に結合するシステムバス１２１を含むことができるが、これらに限定されない。
【００１１】
システムバス１２１は、メモリバスまたはメモリコントローラ、周辺バス、および様々なバスアーキテクチャのいずれかを使用するローカルバスを含む、いくつかの種類のバス構造のうちのいずれかとすることができる。例を挙げると、こうしたアーキテクチャには、ＩＳＡ（Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、ＭＣＡ（Ｍｉｃｒｏ  Ｃｈａｎｎｅｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、拡張ＩＳＡ（ＥＩＳＡ）バス、ＶＥＳＡ（Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ）ローカルバス、およびメザニンバスとも呼ばれるＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バスが含まれるが、これらに限定されない。
【００１２】
コンピュータ１１０は、通常、様々なコンピュータ読取り可能媒体を含む。コンピュータ読取り媒体は、コンピュータ１１０がアクセス可能な任意の使用可能媒体とすることが可能であり、揮発性および不揮発性、取り外し可能および固定の、両方の媒体を含む。例を挙げると、コンピュータ読取り可能媒体はコンピュータ記憶媒体および通信媒体を備えることができるが、これらに限定されない。コンピュータ記憶媒体は、コンピュータ読取り可能命令、データ構造、プログラムモジュール、または他のデータなどの情報を格納するための任意の方法または技術で実施された、揮発性および不揮発性、取り外し可能および固定の両方の媒体を含む。コンピュータ記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたは他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）または他の光ディスク記憶、磁気カセット、磁気テープ、磁気ディスク記憶または他の磁気記憶装置、あるいは、所望の情報を格納するために使用可能でありコンピュータ１１０がアクセス可能な任意の他の媒体を含むが、これらに限定されない。通信媒体は、通常、コンピュータ読取り可能命令、データ構造、プログラムモジュール、または他のデータを、搬送波または他の移送メカニズムなどの変調データ信号で実施し、任意の情報送達媒体を含む。「変調データ信号」という用語は、信号に情報を符号化するような方法でその特徴の１つまたは複数が設定または変更された信号を意味する。例を挙げると、通信媒体には、有線ネットワークまたは直接配線接続などの有線媒体と、音響、ＲＦ、赤外線、および他の無線媒体などの無線媒体とが含まれるが、これらに限定されない。上記のいずれかの組合せも、コンピュータ読取り可能媒体の範囲内に含まれるものとする。
【００１３】
システムメモリ１３０は、読み取り専用メモリ（ＲＯＭ）１３１およびランダムアクセスメモリ（ＲＡＭ）１３２などの揮発性および／または不揮発性メモリの形態でコンピュータ記憶媒体を含む。起動時などのコンピュータ１１０内の要素間での情報の転送を助ける基本ルーチンを含む基本入力／出力システム１３３（ＢＩＯＳ）は、通常はＲＯＭ１３１に格納される。ＲＡＭ１３２は、通常、処理装置１２０によって即時にアクセス可能であり、かつ／または処理装置１２０上で現在動作中の、データおよび／またはプログラムモジュールを含む。例を挙げると、図１にはオペレーティングシステム１３４、アプリケーションプログラム１３５、他のプログラムモジュール１３６、およびプログラムデータ１３７が示されているが、これらに限定されない。
【００１４】
コンピュータ１１０は、他の取り外し可能／固定の、揮発性／不揮発性のコンピュータ記憶媒体も含むことができる。例示のためだけとして、図１には、固定の、不揮発性の磁気媒体からの読み取りまたはこれへの書き込みを行うハードディスクドライブ１４１と、取り外し可能、不揮発性の磁気ディスク１５２からの読み取りまたはこれへの書き込みを行う磁気ディスクドライブ１５１と、ＣＤ−ＲＯＭまたは他の光媒体などの取り外し可能、不揮発性の光ディスク１５６からの読み取りまたはこれへの書き込みを行う光ディスクドライブ１５５とが示される。例示的なオペレーティング環境で使用可能な他の取り外し可能／固定の、揮発性／不揮発性コンピュータ記憶媒体には、磁気テープカセット、フラッシュメモリカード、デジタル多用途ディスク、デジタルビデオテープ、ソリッドステートＲＡＭ、ソリッドステートＲＯＭ、およびその他が含まれるが、これらに限定されない。ハードディスクドライブ１４１は、通常、インターフェース１４０などの固定のメモリインターフェースを介してシステムバス１２１に接続され、磁気ディスクドライブ１５１および光ディスクドライブ１５５は、通常、インターフェース１５０などの取り外し可能メモリインターフェースによってシステムバス１２１に接続される。
【００１５】
上記で考察され、図１に図示されたドライブおよびそれらに関連付けられたコンピュータ記憶媒体は、コンピュータ読取り可能命令、データ構造、プログラムモジュール、およびコンピュータ１１０に関する他のデータの記憶を提供する。図１では、たとえば、ハードディスクドライブ１４１がオペレーティングシステム１４４、アプリケーションプログラム１４５、他のプログラムモジュール１４６、およびプログラムデータ１４７を格納しているものとして示されている。これらの構成要素は、オペレーティングシステム１３４、アプリケーションプログラム１３５、他のプログラムモジュール１３６、およびプログラムデータ１３７と同じとすることも、異なるものとすることもできることに留意されたい。オペレーティングシステム１４４、アプリケーションプログラム１４５、他のプログラムモジュール１４６、およびプログラムデータ１４７は、少なくともこれらが異なるコピーであることを示すために異なる番号が与えられている。
【００１６】
ユーザは、キーボード１６２、マイクロフォン１６３、および、マウス、トラックボール、またはタッチパッドなどのポインティングデバイス１６１を介して、コマンドおよび情報をコンピュータ１１０に入力することができる。他の入力装置（図示せず）には、ジョイスティック、ゲームパッド、衛星パラボラアンテナ、スキャナ、またはその他を含むことができる。これらおよび他の入力装置は、多くの場合、システムバスに結合されるユーザ入力インターフェース１６０を介して処理装置１２０に接続されるが、パラレルポート、ゲームポート、またはユニバーサルシリアルバス（ＵＳＢ）などの他のインターフェースおよびバス構造によって接続することも可能である。モニタ１９１または他の種類のディスプレイ装置も、ビデオインターフェース１９０などのインターフェースを介してシステムバス１２１に接続される。コンピュータは、モニタに加えて、出力周辺インターフェース１９０を介して接続可能なスピーカ１９７およびプリンタ１９６などの他の周辺出力装置を含むこともできる。
【００１７】
コンピュータ１１０は、リモートコンピュータ１８０などの１つまたは複数のリモートコンピュータへの論理接続を使用して、ネットワーク化環境で動作することができる。リモートコンピュータ１８０は、パーソナルコンピュータ、ハンドヘルド装置、サーバ、ルータ、ネットワークＰＣ、ピア装置、または他の共通ネットワークノードとすることが可能であり、通常、コンピュータ１１０に関して上記で説明した要素の多くまたはすべてを含む。図１に示された論理接続には、ローカルエリアネットワーク（ＬＡＮ）１７１およびワイドエリアネットワーク（ＷＡＮ）１７３が含まれるが、他のネットワークを含むこともできる。こうしたネットワーキング環境は、オフィス、企業規模のコンピュータネットワーク、イントラネット、およびインターネットで一般的である。
【００１８】
コンピュータ１１０は、ＬＡＮネットワーキング環境で使用される場合、ネットワークインターフェースまたはアダプタ１７０を介してＬＡＮ１７１に接続される。コンピュータ１１０は、ＷＡＮネットワーキング環境で使用される場合、通常、インターネットなどのＷＡＮ１７３を介して通信を確立するためのモデム１７２または他の手段を含む。モデム１７２は内蔵型または外付け型とすることが可能であり、ユーザ入力インターフェース１６０または他の適切なメカニズムを介してシステムバス１２１に接続することができる。ネットワーク化環境では、コンピュータ１１０に関して示されたプログラムモジュールまたはその一部を、リモートメモリ記憶装置に格納することができる。例を挙げると、図１はリモートアプリケーションプログラム１８５がリモートコンピュータ１８０上に常駐しているものとして示しているが、これに限定されない。図示されたネットワーク接続は例示的なものであり、コンピュータ間の通信リンクを確立する他の手段が使用可能であることを理解されたい。
【００１９】
本発明の広義の一態様によれば、生の照会ログ３００が入力として圧縮モジュール３０２に提供される。前述のように、圧縮モジュールは好ましくはコンピューティングシステム上で実施されるが、ハードウェア、ソフトウェア、またはその２つの組合せを含む、任意の好適な方式で実施することが可能である。圧縮モジュール３０２は、生の照会ログ３００上で１つまたは複数の照会ログ圧縮処理を実行し、圧縮済み照会ログ３０４を生成するように適合される。照会ログ圧縮処理については、以下でより詳細に説明する。図示しやすいように、照会ログ圧縮処理は、提供する圧縮レベルに従って分類される。好ましくは、圧縮には低、中、および高の３つのオペレータ指定可能レベルがある。
【００２０】
圧縮モジュール３０２は、以下に記載する１つまたは複数の照会ログ圧縮処理が実行可能な任意のシステムで実施することができる。したがって圧縮モジュール３０２は、前述のようなコンピュータハードウェア、任意の好適なプログラミング言語で実施されたコンピュータソフトウェア、あるいはその２つの任意の組合せとすることができる。図２は、ログ上で複数の圧縮パスを取るために圧縮済み照会ログ３０４を圧縮モジュール３０２に返送するための破線３０６も示している。
【００２１】
図３は、本発明の一実施形態に従って統計的プロセスをトレーニングする方法を示す流れ図である。方法は、ブロック３５０で始まり、照会ログ３００などの生の照会ログが取得される。ブロック３５２では生の照会ログが１回または複数回圧縮され、圧縮済み照会ログ３０４などの圧縮済み照会ログを生成する。次にブロック３５４で、統計的プロセスをトレーニングするために圧縮済み照会ログを使用する。統計的プロセスのトレーニングに使用される実際の方法および技法は、当分野で知られた任意の好適な方法および技法とすることができる。
【００２２】
前述のように、個々の照会ログ処理は、好ましくは圧縮の程度に応じて３つのレベルに分類される。以下の列挙は例示的なものであり、本発明の実施形態を制限することを意味するものではない。
【００２３】
通常、低度圧縮処理は文字ベースである。こうした処理には大文字小文字（ｃａｓｅ）の正規化、稀な記号の除去、可変の空白のブランクへの正規化、まったく使用不可能な入力のチェックなどが含まれる。好ましくは、ログ内の各照会で処理が実行される。少なくとも多数の照会、および好ましくはすべての照会で処理が実行されると、突き合せ処理が実行され、正規化された照会のいずれかが相互に一致するか否かが判別されて、それによって一致した照会のうちの一方をログから除去することができる。
【００２４】
大文字小文字の正規化とは、「Ｉｎｓｔａｌｌ  Ｐｒｉｎｔｅｒ」が「ｉｎｓｔａｌｌ  ｐｒｉｎｔｅｒ」に変形されるなどの、所与の照会のすべての文字が特定の大文字小文字に変更される処理である。稀な記号の除去の一例は、「§  ２０４」などの入力テキストが「セクション２０４」に変形される場合である。可変の空白のブランクへの正規化とは、「Ｗｉｎｄｏｗｓ（登録商標）            ９８」などの照会が「Ｗｉｎｄｏｗｓ（登録商標）９８」に変形される処理である。最後に、使用不可能な入力のチェックとは、単に「ａｃｘｐｔ；  ２４」などの、意味の不明な言葉を単純に廃棄することである。
【００２５】
中度の圧縮処理は、非常に頻繁に現れる文法上の機能語を除去し、頻繁に現れる概念の異型の綴りまたは句切りを検出および正規化し、同義語を単一の標準的な意味の用語に畳み込み、綴りの訂正を試行し、語形変化した単語をその言語的な基本形態に縮小し、各照会で単語トークンをソートするために使用される。通常、これらの処理は文字ベースではなく、単語ベースである。好ましくは、これらの処理は周知の綴り、類義語辞典、および自然言語処理技術を使用して、個々の照会における単語を識別および標準化する。たとえば、「Ｈｏｗ  ｄｏ  Ｉ  ｇｅｔ  ｒｉｄ  ｏｆ  ｆｉｒｅｗａｌｌｓ  ｉｎ  Ｗｉｎ  ９８？」という入力照会は、「＜ｆｉｒｅｗａｌｌ＞  ＜ＲＥＭＯＶＥ＞＜ＷＩＮ＿９８＞」に正規化される。このように、単語「Ｈｏｗ  ｄｏ  Ｉ  ｇｅｔ」、「ｏｆ」、および「ｉｎ」は、文法上の機能語として廃棄される。単語「ｒｉｄ」は単一の標準的な意味の用語「ＲＥＭＯＶＥ」に畳み込まれ、Ｗｉｎ  ９８は＜ＷＩＮ＿９８＞に標準化される。ここでも、中度の圧縮処理が少なくとも一部の照会、および好ましくはすべての照会に適用されると、突き合せ処理が実行され、中度圧縮済み照会のいずれかが相互に一致するか否かが判別されて、それによって一致した照会のうちの一方をログから除去することができる。
【００２６】
最高度の照会ログ圧縮は、本明細書では包含と呼ばれる。これは、個々の照会がスキャンされるか、それ以外の方法で処理され、単一の単語が照会の意味を変化させる程度を決定するために照会のペア間での単一の単語の相違点を評価することができるような程度まで、類似性を識別するためのプロセスである。追加の単語の意味が比較的わずかに照会に追加される状況では、追加の単語は廃棄可能であり、追加の単語を除外することによって照会のペアを単一の照会に縮小することができる。これは些細な処理ではない。本質的に包含プロセスは、何らかの他の照会のスーパーストリング（ｓｕｐｅｒ  ｓｔｒｉｎｇｓ）である照会のログ全体を検査する。特別な材料が統計的に不適切であるとみなされる場合、所与のサブ文字列の正規化された形態がスーパーストリングの正規化された形態とみなされることになる。たとえば、以下の２つの照会は以下の方式で包含される。
【００２７】
「Ｃｈａｎｇｅ  ｍｏｕｓｅ  ｓｐｅｅｄ」
「Ｃｈａｎｇｅ  ｍｏｕｓｅ  ｃｌｉｃｋ  ｓｐｅｅｄ」
これらを見るとわかるように、後者は前者のスーパーストリングであり、ログ全体の語彙を大域的に検査することによって、単語「ｃｌｉｃｋ」が統計的に２つの別々の意図を区別するものである見込がないと決定できる場合、単一の照会バンドルに畳み込むことができる。言い換えれば、包含は、まず（おそらく単一の単語により）最小限に異なる２つの照会を見つけること、およびその後、その１つの単語の相違が自然言語処理などに基づく可能性があることがどれだけ「重要」であるかを決定することによって働く。
【００２８】
最初の２つのレベルの照会ログ圧縮は、一般に個々の隔離された照会上で処理するが、包含は、照会ログ全体（潜在的に何百万もの照会）にわたり２つ以上の受け渡しを含むことができる。照会ごとに隔離された正規化処理が適用された後、時には包含を使用して、より長く、より入念に表現された照会を、より単純であるが機能的に同等な対の照会と組み合わせることが可能である。たとえば、４単語の照会「ｃｈａｎｇｅ  ｍｏｕｓｅ  ｐｏｉｎｔｅｒ  ｉｃｏｎ」および３単語の照会「ｃｈａｎｇｅ  ｍｏｕｓｅ  ｐｏｉｎｔｅｒ」は事実上等価であり、動作上の損失または重要な意味の変更なしに、長い方を短い方に正規化する（およびその後共に「バンドルする」）ことができる。この包含処理は、「ｉｃｏｎ」が冗長であるということが一般に真でないことから、明らかな損失なしに削除可能な「ｉｃｏｎ」などの単語のリストを単に維持することと同じではない。包含の比較特性は、通常、言語処理に基づく、ログの他の場所で見つかった短い方の形態の実際の（圧縮された）照会の形態の単語を事実上無視することに正当な理由があることを意味する。こうした場合の余分な単語（「ｉｃｏｎ」）は、エクストラターム（ｅｘｔｒａ  ｔｅｒｍ）と呼ばれる。
【００２９】
ヘルプアンドサポートセンタの照会ログの場合、低および中度の圧縮処理に関して述べた隔離された照会ごとの圧縮ステップが実行された後に、長さ５などの所与の長さのすべての照会の圧縮形式が、可能であれば長さ４の（その下に包含される）照会と比較される。その後、長さ４の照会の集合が、可能であれば長さ３のその下に包含される照会と比較される。プロセスは、特定の領域のログファイルではそこで停止するが、原則として、５より長い照会で開始され、３より短い照会で停止するように適用可能である。
【００３０】
包含のストロングフォームは、本質的に絶対である。したがって、Ｎ語の照会と（Ｎ−１）語の照会との間に１語の相違が存在する場合、必ず包含関係が想定され、必ず長い方を短い方の相手とバンドルする。一実施形態によれば、語彙の特徴によってさらに微妙に異なる形態の包含が導かれる。たとえば、照会が１語だけ異なるが、その単語が辞書検索によって動詞であることが示された場合、およびこの動詞が（たとえば「ｃｈａｎｇｅ（変更）」および「ｍｏｄｉｆｙ（修正）」とは異なり）既存のいずれの用語の同義語でもない場合、「ｅｒａｓｅ  ｈａｒｄ  ｄｉｓｋ（ハードディスクを消去）」と「ｒｅｃｏｖｅｒ  ｈａｒｄ  ｄｉｓｋ（ハードディスクを回復）」とは真に異なるため、包含は阻止される。同様に、いずれかのコントロール語彙（たとえば、Ｗｉｎｄｏｗｓ（登録商標）システム構成要素のリスト）にエクストラタームが存在する場合、包含は阻止される。絶対的なブロック条件が適用されない場合、最終決定は統計的に導くことができる。非常に頻繁な単語は、差別化要因（ｄｉｆｆｅｒｅｎｔｉａｔｏｒ）である可能性がない。そのため、包含の適用は、一般にエクストラタームの頻度に関する閾値規則に従うことになる。
【００３１】
フィルタリングの阻止が適用される方法に関係なく、たとえば長さ５のそれぞれの照会を長さ４のすべての照会と比較する場合、「エクストラ」タームを識別するプロセスは効率的に実行されるべきである。（スペリング訂正など、２つの単語が文字ごとに比較される）文字列レベルでの、または（２つの句が単語ごとに比較される）トークンレベルでの、２つの文字列の単純な比較は、「編集距離」と呼ばれる。２つの照会文字列のトークン比較の編集距離は正確に１であり、これは、１つのトークン差のみが識別されること、したがって包含が可能であることを意味する。好ましくは、照会文字列は、包含プロセスに先立って通常の正規化プロセスの一部として単語トークンごとにソートされ、またこうしたソートは、好ましくは編集距離計算の前提条件である。編集距離計算は、潜在的に何百万もの照会を含むログに適用される場合、非常に多くの計算が集中する可能性があることから、好ましくは、包含はショートカットを採用する。具体的には、包含の場合、完全な編集距離計算は、原則的に、比較される２つの文字列に対して１つの相違が発生する場合にのみ試行される。したがって、可能な１つの相違の比較の再チェックは、それらの第１および第２のトークン語により、すべての「短い」文字列にわたる索引を使用して生成される。
【００３２】
図４は、Ｎ＋１語の文字列とＮ語の文字列との間で、完全な編集距離比較を効率よく選択的に実行するための方法を示す概略図である。方法は、ブロック４００で始まり、すべてのＮ語の照会には、それらの第１および第２のトークンに従って索引が付けられる。単語はトークンの例であるが、本明細書で使用される場合、トークンは人に対して言語的な意味を有する文字の任意の集団とみなすことができる。しかしながら、説明をわかりやすくするために「単語」は、一般に本発明の実施形態を示すために使用されるが、当業者であれば、本発明の実施形態が、任意の言語の任意の形態のトークンで実施可能であることを理解されよう。この方法は、突き合せが試行されるごとに、「長い方」の候補に対してあらゆる比較リスト項目（それぞれの「短い方」の文字列）の最初の２つのトークンを逐次チェックすることによって実行可能である。そのことから、Ｎ個のトークン照会に索引付けするステップは、オプションである。しかしながら、索引付けは、時間を大幅に節約することから好ましい。Ｎ語の照会すべてに索引が付けられると、ブロック４０２において、Ｎ＋１語の文字列と索引付けされたリストとの突き合せを試行する。
【００３３】
Ｎ語の索引で突き合せ文字列の位置が特定されるか、Ｎ語の照会のこうした突き合せが行われる位置が決定されると、ブロック４０４において、不可能条件（ＩＣ）が存在するか否かの特定を行う。短い方の照会の第１のトークンが長い方の照会の第１のトークンと異なり、および短い方の照会の第２のトークンが長い方の照会の第２のトークンと異なる場合、不可能条件が存在し、制御はライン４０６に沿ってブロック４０８に渡される。ブロック４０８では、次のＮ＋１語の照会が選択され、処理はライン４１０を介してブロック４０２に戻ることによって繰り返される。しかしながら、不可能条件が存在しない場合、制御はライン４１２に沿ってブロック４１４に渡され、Ｎ＋１語の照会とＮ語の照会との間の完全な編集距離が計算される。不可能条件のチェックの実施により、テストに基づいて、役に立たない完全な編集距離の比較処理はほぼ５０％削減される。ブロック４１４で完全な編集距離計算が完了すると、ブロック４１６およびブロック４１８で余分な単語が識別され、余分な単語が廃棄可能であるか否か、またはこれを維持すべきであるか否かを決定するために、統計的処理および／または言語処理などの好適な処理が採用される。
【００３４】
不可能条件が完全な編集距離計算を阻止することになる状況の一例を、以下に示す。第１に、事前トークンソート済みの例は以下のとおりである。
【００３５】
「Ｈｅｌｐ  ｓｅｔｕｐ  ｎｅｗ  ｐｅｒｓｏｎａｌ  ｓｅｃｕｒｅ  ｕｓｅｒ  ａｃｃｏｕｎｔ．」
「Ｓｅｔｕｐ  ｎｅｗ  ｐｅｒｓｏｎａｌ  ｓｅｃｕｒｅ  ｕｓｅｒ  ｃｏｍｐｕｔｅｒ  ｗｏｒｋ  ｓｔａｔｉｏｎ．」
これらのトークンは包含プロセスに先立ってソートされ、比較は次のとおりである。
【００３６】
「Ａｃｃｏｕｎｔ  ｈｅｌｐ  ｎｅｗ  ｐｅｒｓｏｎａｌ  ｓｅｃｕｒｅ  ｓｅｔｕｐ  ｕｓｅｒ．」
「Ｃｏｍｐｕｔｅｒ  ｎｅｗ  ｐｅｒｓｏｎａｌ  ｓｅｃｕｒｅ  ｕｓｅｒ  ｗｏｒｋ  ｓｔａｔｉｏｎ．」
上記で示されるように、包含に先立ってトークンをソートする処理は、本質的に各単語をアルファベット順になるように並べ替えている。上記で示されるように、２つの照会文字列の最初の２つの単語はどちらも異なるため、不可能条件は編集距離アルゴリズムの完全なテストを阻止することになる。
【００３７】
本発明の実施形態は、大規模な照会ログを圧縮の可変レベルまで圧縮するのに役立つ。これにより、本質的に重複的および／または無関係な照会の数を削減することによって、各照会の意味とのより効率的な対話が可能になる。
【００３８】
以上、本発明について特定の実施形態を参照しながら説明してきたが、当業者であれば、本発明の精神および範囲を逸脱することなく、形態および細部の変更が可能であることを理解されよう。
【図面の簡単な説明】
【００３９】
【図１】本発明の実施形態を実施するための好適なコンピューティング環境を示す概略図である。
【図２】本発明の一実施形態に従って照会ログを圧縮するためのシステムを示す概略図である。
【図３】本発明の一実施形態に従って統計的プロセスを自動的にトレーニングする方法を示す流れ図である。
【図４】本発明の一実施形態に従って包含を実行する方法を示す流れ図である。
【符号の説明】
【００４０】
１００  コンピューティング環境
１１０  コンピュータ
１４１  ハードディスクドライブ
１５１  磁気ディスクドライブ
１５５  光ディスクドライブ
【図１】
2005259143.tif 000003
【図２】
2005259143.tif 000004
【図３】
2005259143.tif 000005
【図４】
2005259143.tif 000006
【外国語明細書】
2005259143000001.pdf