(57)【特許請求の範囲】
【請求項１】
処理対象データがユーザの所望するデータであるか否かを判定するフィルタリング処理方法であって、
前記処理対象データを構成する要素を解析する解析工程と、
前記解析工程によって解析された各要素の前記処理対象データに属する確率を算出する第１の算出工程と、
前記解析工程によって解析された各要素を、前記第１の算出工程によって算出された確率に基づいて有効値／無効値に離散化する第１の離散化工程と、
前記第１の離散化工程によって有効値／無効値に離散化された要素を含んだ各要素の前記処理対象データに属する確率を算出する第２の算出工程と、
前記第２の算出工程によって算出された確率に基づいて前記各要素を有効値／無効値に離散化することにより、処理対象データが所望のデータであるか否かを判定する第２の離散化工程と、
を含むことを特徴とするフィルタリング処理方法。
【請求項２】
前記第２の離散化工程による判断の正誤を受け付ける受付工程と、
前記受付工程によって受け付けた誤判定とされた処理対象データを構成する各要素に関して、前記第１の算出工程にて算出される確率を調整する調整工程と、
を含むことを特徴とする請求項１に記載のフィルタリング処理方法。
【請求項３】
前記第１の離散化工程および第２の離散化工程の少なくとも一方では、前記各要素を任意の関数に写像して得られた値を用いて離散化をおこなうことを特徴とする請求項１または２に記載のフィルタリング処理方法。
【請求項４】
前記第１の離散化工程および第２の離散化工程の少なくとも一方では、前記各要素の確率と、あらかじめ設定した閾値との比較結果から有効値／無効値に離散化することを特徴とする請求項１または２に記載のフィルタリング処理方法。
【請求項５】
前記解析工程では、前記処理対象データが電子メールデータである場合、当該電子メールデータのヘッダと本文に対して解析をおこなうことを特徴とする請求項１〜４のいずれか一つに記載のフィルタリング処理方法。
【請求項６】
処理対象データがユーザの所望するデータであるか否かをコンピュータに判定させるフィルタリング処理プログラムであって、
前記処理対象データを構成する要素を解析させる解析工程と、
前記解析工程によって解析させた各要素の前記処理対象データに属する確率を算出させる第１の算出工程と、
前記解析工程によって解析させた各要素を、前記第１の算出工程によって算出させた確率に基づいて有効値／無効値に離散化させる第１の離散化工程と、
前記第１の離散化工程によって有効値／無効値に離散化させた要素を含んだ各要素の前記処理対象データに属する確率を算出させる第２の算出工程と、
前記第２の算出工程によって算出された確率に基づいて前記各要素を有効値／無効値に離散化させることにより、処理対象データが所望のデータであるか否かを判定させる第２の離散化工程と、
をコンピュータに実行させることを特徴とするフィルタリング処理プログラム。
【請求項７】
前記第２の離散化工程による判断の正誤を受け付ける受付工程と、
前記受付工程によって受け付けた誤判定とされた処理対象データを構成する各要素に関して、前記第１の算出工程にて算出される確率を調整させる調整工程と、
をコンピュータに実行させることを特徴とする請求項６に記載のフィルタリング処理プログラム。
【請求項８】
処理対象データがユーザの所望するデータであるか否かを判定するフィルタリング装置であって、
前記処理対象データを構成する要素を解析する解析手段と、
前記解析手段によって解析された各要素の前記処理対象データに属する確率を算出する第１の算出手段と、
前記解析手段によって解析された各要素を、前記第１の算出手段によって算出された確率に基づいて有効値／無効値に離散化する第１の離散化手段と、
前記第１の離散化手段によって有効値／無効値に離散化された要素を含んだ各要素の前記処理対象データに属する確率を算出する第２の算出手段と、
前記第２の算出手段によって算出された確率に基づいて前記各要素を有効値／無効値に離散化することにより、処理対象データが所望のデータであるか否かを判定する第２の離散化手段と、
前記第２の離散化手段による判断の正誤を受け付ける受付手段と、
前記受付手段によって受け付けた誤判定とされた処理対象データを構成する各要素に関して、前記第１の算出手段にて算出される確率を調整する調整手段と、
を備えることを特徴とするフィルタリング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、処理対象データが所望のデータであるか否かを判定するフィルタリング処理方法、フィルタリング処理プログラムおよびフィルタリング装置に関する。
【背景技術】
【０００２】
従来より、ユーザが、所定の判定処理機能を持ったフィルタリング装置を利用すると、この利用結果をフィルタリング装置に学習させることによってフィルタリング機能を向上させるフィルタリング処理が広く提供されている。たとえば、フィルタリング機能の学習にベイジアンネットワークで用いられている学習方法を適用させたものがある。この学習方法では、学習対象のフィルタリング装置は、学習用の入力値として二値素性を必要とするため、連続値を所定の閾値によって離散化して入力値として与えられる。
【０００３】
具体的に説明すると、まず、離散化に用いる閾値を決定するために、あらかじめ適当な閾値をいくつか設定しておく。そして、設定した各閾値を利用して連続値を離散化することにより二値素性を抽出する。その後、閾値ごとに、抽出された二値素性の出力確率を算出する。この算出結果から各カテゴリへの分類にとって効果のない素性を排除する。このような処理によって、二値素性の数を絞り込むことができるため、ベイジアンネットワークの学習方法を実行する際の計算量を削減することができる（たとえば、下記特許文献１参照。）。
【０００４】
【特許文献１】特開２００４−３２６４６５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
一般的に、学習対象となるフィルタリング装置への入力値として二値素性を利用する場合、これらの二値素性の出力確率の分布を求めたとき、その分布が分散している値が、入力値として有用であるとされている。しかしながら、上記特許文献１に記載の技術を用いた場合、閾値ごとに算出された二値素性の出力確率の分布が偏ってしまうといった問題があった。
【０００６】
また、上述の学習方法に限らず、閾値を用意して離散化した値を利用する場合、どのような閾値を設定するかが処理内容に大きく影響する。したがって、閾値の設定には事前の試行錯誤が欠かせない。また、学習の際、フィルタリング装置の判定傾向が大きく変わってしまった場合には、閾値の設定も見直さなければならない。このように、従来の学習方法を適用させたフィルタリング装置の場合、閾値設定にかかる処理がユーザにとって大きな負担となるという問題があった。
【０００７】
この発明は、上述した従来技術による問題点を解消するため、設定処理の負担を軽減させ、かつ、効率的に処理精度を向上させるための学習をおこなう機能を備えたフィルタリング処理方法、フィルタリング処理プログラムおよびフィルタリング装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するため、請求項１の発明にかかるフィルタリング処理方法は、処理対象データがユーザの所望するデータであるか否かを判定するフィルタリング処理方法であって、前記処理対象データを構成する要素を解析する解析工程と、前記解析工程によって解析された各要素の前記処理対象データに属する確率を算出する第１の算出工程と、前記解析工程によって解析された各要素を、前記第１の算出工程によって算出された確率に基づいて有効値／無効値に離散化する第１の離散化工程と、前記第１の離散化工程によって有効値／無効値に離散化された要素を含んだ各要素の前記処理対象データに属する確率を算出する第２の算出工程と、前記第２の算出工程によって算出された確率に基づいて前記各要素を有効値／無効値に離散化することにより、処理対象データが所望のデータであるか否かを判定する第２の離散化工程と、を含むことを特徴とする。
【０００９】
この請求項１の発明によれば、処理対象データを構成する要素の出力確率に基づいて、各要素を有効値／無効値の二値素性に離散化する。この離散化結果を用いて、処理対象データがユーザの所望のデータであるかを判定する。すなわち、ユーザが閾値などのパラメータを用意しなくとも算出結果を利用して離散化をおこなうことができる。また、第１離散化工程による離散化結果は、後段の第２の離散化に反映されるため、精度の高い判定処理が可能となる。
【００１０】
また、請求項２の発明にかかるフィルタリング処理方法は、請求項１に記載の発明において、前記第２の離散化工程による判断の正誤を受け付ける受付工程と、前記受付工程によって受け付けた誤判定とされた処理対象データを構成する各要素に関して、前記第１の算出工程にて算出される確率を調整する調整工程と、を含むことを特徴とする。
【００１１】
この請求項２の発明によれば、フィルタリング処理による判定結果が、ユーザの所望データと一致していなかった場合に、この誤判定の内容をフィードバックする。具体的には、第１の算出工程において算出される要素の出力確率が調整される。したがって、誤判定された処理判定データと同じ構成のデータのフィルタリング処理がおこなわれた場合には、当該データはユーザが所望するデータではないと判定するため、判定精度を向上させることができる。
【００１２】
また、請求項３の発明にかかるフィルタリング処理方法は、請求項１または２に記載の発明において、前記第１の離散化工程および第２の離散化工程の少なくとも一方では、前記各要素を任意の関数に写像して得られた値を用いて離散化をおこなうことを特徴とする。
【００１３】
この請求項３の発明によれば、関数変換によって離散化対象の要素の出力確率分布の挙動が強調されるため離散化の調整が容易になる。
【００１４】
また、請求項４の発明にかかるフィルタリング処理方法は、請求項１または２に記載の発明において、前記第１の離散化工程および第２の離散化工程の少なくとも一方では、前記各要素の確率と、あらかじめ設定した閾値との比較結果から有効値／無効値に離散化することを特徴とする。
【００１５】
この請求項４の発明によれば、最適な閾値が判別しているような場合には、この閾値を設定して離散化をおこなわせることができる。
【００１６】
また、請求項５の発明にかかるフィルタリング処理方法は、請求項１〜４のいずれか一つに記載の発明において、前記解析工程では、前記処理対象データが電子メールデータである場合、当該電子メールデータのヘッダと本文に対して解析をおこなうことを特徴とする。
【００１７】
この請求項５の発明によれば、不特定多数のメールが送信された場合であっても、フィルタリング処理方法を利用して、ユーザの所望しないメールを排除することができる。
【００１８】
また、請求項６の発明にかかるフィルタリング処理プログラムは、処理対象データがユーザの所望するデータであるか否かをコンピュータに判定させるフィルタリング処理プログラムであって、前記処理対象データを構成する要素を解析させる解析工程と、前記解析工程によって解析させた各要素の前記処理対象データに属する確率を算出させる第１の算出工程と、前記解析工程によって解析させた各要素を、前記第１の算出工程によって算出させた確率に基づいて有効値／無効値に離散化させる第１の離散化工程と、前記第１の離散化工程によって有効値／無効値に離散化させた要素を含んだ各要素の前記処理対象データに属する確率を算出させる第２の算出工程と、前記第２の算出工程によって算出された確率に基づいて前記各要素を有効値／無効値に離散化させることにより、処理対象データが所望のデータであるか否かを判定させる第２の離散化工程と、をコンピュータに実行させることを特徴とする。
【００１９】
この請求項６の発明によれば、処理対象データを構成する要素の出力確率に基づいて、各要素を有効値／無効値の二値素性に離散化する。この離散化結果を用いて、処理対象データがユーザの所望のデータであるかを判定する。すなわち、ユーザが閾値などのパラメータを用意しなくとも算出結果を利用して離散化をおこなうことができる。また、第１離散化工程による離散化結果は、後段の第２の離散化に反映されるため、精度の高い判定処理が可能となる。
【００２０】
また、請求項７の発明にかかるフィルタリング処理プログラムは、請求項６に記載の発明において、前記第２の離散化工程による判断の正誤を受け付ける受付工程と、前記受付工程によって受け付けた誤判定とされた処理対象データを構成する各要素に関して、前記第１の算出工程にて算出される確率を調整させる調整工程と、をコンピュータに実行させることを特徴とする。
【００２１】
この請求項７の発明によれば、フィルタリング処理による判定結果が、ユーザの所望データと一致していなかった場合に、この誤判定の内容をフィードバックする。具体的には、誤判定に含まれている各要素について、第１の算出工程によって算出される出力確率が調整される。したがって、誤判定された処理判定データと同じ構成のデータのフィルタリング処理がおこなわれた場合には、当該データはユーザが所望するデータではないと判定するため、判定精度を向上させることができる。
【００２２】
また、請求項８の発明にかかるフィルタリング装置は、処理対象データがユーザの所望するデータであるか否かを判定するフィルタリング装置であって、前記処理対象データを構成する要素を解析する解析手段と、前記解析手段によって解析された各要素の前記処理対象データに属する確率を算出する第１の算出手段と、前記解析手段によって解析された各要素を、前記第１の算出手段によって算出された確率に基づいて有効値／無効値に離散化する第１の離散化手段と、前記第１の離散化手段によって有効値／無効値に離散化された要素を含んだ各要素の前記処理対象データに属する確率を算出する第２の算出手段と、前記第２の算出手段によって算出された確率に基づいて前記各要素を有効値／無効値に離散化することにより、処理対象データが所望のデータであるか否かを判定する第２の離散化手段と、前記第２の離散化手段による判断の正誤を受け付ける受付手段と、前記受付手段によって受け付けた誤判定とされた処理対象データを構成する各要素に関して、前記第１の算出手段にて算出される確率を調整する調整手段と、を備えることを特徴とする。
【００２３】
この請求項８の発明によれば、処理対象データを構成する要素の出力確率に基づいて、各要素を有効値／無効値の二値素性に離散化する。この離散化結果を用いて、さらに出力確率が算出され、この算出結果を用いて再度離散化をおこなうことによって、処理対象データがユーザの所望のデータであるかを判定する。さらに、判定結果は、以後の離散化にフィードバックされる。すなわち、ユーザが閾値などのパラメータを用意しなくとも算出結果を利用して離散化をおこなうとともに、判定精度の向上も可能となる。
【発明の効果】
【００２４】
本発明にかかるフィルタリング処理方法、フィルタリング処理プログラムおよびフィルタリング装置によれば、設定処理の負担を軽減させ、かつ、効率的に処理精度を向上させるための学習をおこなう機能を実現することができるという効果を奏する。
【発明を実施するための最良の形態】
【００２５】
以下に添付図面を参照して、この発明にかかるフィルタリング処理方法、フィルタリング処理プログラムおよびフィルタリング装置の好適な実施の形態を詳細に説明する。
【００２６】
（フィルタリング処理の概要）
まず、本発明にかかるフィルタリング処理方法、フィルタリング処理プログラムおよびフィルタリング装置におけるフィルタリング処理の概要について説明する。図１は、本発明にかかるフィルタリング処理の概要を示す説明図である。
【００２７】
図１では、まず、受信したメール１０１を解析部１１０によって解析する。そして、子フィルタ１２０と、親フィルタ１３０とのカスケードに接続された２種類のフィルタにメール１０１を入力し単一の判定結果を出力させる構成になっている。このとき、子フィルタ１２０は、ユーザ環境に合わせて設定された判定基準に基づいてメールのブロックをおこなう。一方、親フィルタ１３０は、未知のメールをブロックする。
【００２８】
また、子フィルタ１２０と、親フィルタ１３０との２種類のフィルタを透過したメール１０１に対して、ユーザ１０２は、正しくフィルタリングされたか否かの判定をおこなう。ここで、フィルタ１２０，１３０による判定誤りがあった場合には、この判定誤り情報が、子フィルタ１２０にフィードバックされる。子フィルタ１２０は、フィードバックされた判定誤り情報に基づいて、判定基準を調整する。このフィードバックにより、子フィルタ１２０は、よりユーザ環境に合致した判定をおこなうようになる。
【００２９】
以上説明したように、本発明のフィルタリング処理では、子フィルタ１２０は、フィルタリング処理をおこなうごとに、ユーザ判定情報によって処理内容が妥当であったか否かを学習することができる。その結果、子フィルタ１２０の処理能力は向上し、親フィルタ１３０による判定処理は、子フィルタ１２０の判定結果を追認する程度の役割となる。
【００３０】
以下の実施の形態では、上述したようなフィルタリング処理を実行するフィルタリング装置を実現するための具体的な構成と、その処理内容について説明する。
【００３１】
（フィルタリング装置のハードウェア構成）
まず、本実施の形態にかかるフィルタリング装置のハードウェア構成について説明する。図２は、本実施の形態にかかるフィルタリング装置のハードウェア構成の一例を示すブロック図である。
【００３２】
図２において、フィルタリング装置２００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０３と、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｃ  Ｄｒｉｖｅ）２０４と、ＨＤ（Ｈａｒｄ  Ｄｉｓｃ）２０５と、ＦＤＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）２０６と、ＦＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ）２０７と、ＣＤ−ＲＷ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  ＲｅＷｒｉｔａｂｌｅ）ドライブ２０８と、ＣＤ−ＲＷ２０９と、ディスプレイ２１０と、キーボード２１１と、マウス２１２と、ネットワークＩ／Ｆ（インタフェース）２１３と、通信ケーブル２１４と、プリンタ２１５と、バス２２０とを備えて構成されている。
【００３３】
ＣＰＵ２０１は、フィルタリング装置２００全体を制御する。ＲＯＭ２０２は、各種制御プログラムや本発明にかかるフィルタリング処理プログラムなどを格納する。ＲＡＭ２０３は、可変的なデータを書き換え自在に記憶し、ＣＰＵ２０１のワークエリアとして機能する。ＨＤＤ２０４は、ＣＰＵ２０１の制御にしたがってＨＤ２０５に対するデータのリード／ライトを制御する。ＨＤ２０５は、ＨＤＤ２０４の制御にしたがって書き込まれたデータを記憶する。
【００３４】
ＦＤＤ２０６は、ＣＰＵ２０１の制御にしたがってＦＤ２０７に対するデータのリード／ライトを制御する。ＦＤ２０７は、着脱自在であり、ＦＤＤ２０６の制御にしたがって書き込まれたデータを記憶する。ＣＤ−ＲＷドライブ２０８は、ＣＰＵ２０１の制御にしたがってＣＤ−ＲＷ（または、ＣＤ−Ｒ、ＣＤ−ＲＯＭ）２０９に対するデータのリード／ライトを制御する。ＣＤ−ＲＷ２０９は、着脱自在であり、ＣＤ−ＲＷドライブ２０８の制御にしたがって書き込まれたデータを記憶する。
【００３５】
ディスプレイ２１０は、カーソル、メニュー、ウィンドウ、あるいは文字や画像などの各種データを表示する。キーボード２１１は、文字、数値、各種指示などの入力のための複数のキーを備える。マウス２１２は、各種指示の選択や実行、処理対象の選択、マウスポインタの移動などをおこなう。ネットワークＩ／Ｆ２１３は、通信ケーブル２１４を介してＬＡＮ、ＷＡＮ、インターネットなどのネットワークに接続され、当該ネットワークとＣＰＵ２０１とのインタフェースとして機能する。プリンタ２１５は、文字や画像などの各種データを印刷する。バス２２０は上記各部を接続する。
【００３６】
（フィルタリング装置の機能的構成）
つぎに、本実施の形態にかかるフィルタリング装置２００の機能的構成について説明する。図３は、本実施の形態にかかるフィルタリング装置の機能的構成を示すブロック図である。図３に示すように、フィルタリング装置２００は、解析部３１０と、第１算出部３２０および第１離散化部３３０からなる第１フィルタと、第２算出部３４０および第２離散化部３５０からなる第２フィルタと、受付部３６０と、調整部３７０とを含んで構成される。
【００３７】
解析部３１０は、処理対象データ３０１を構成する要素を解析する。要素の解析とは、処理対象データを構成する連続値を所定の意味を持つ要素に分ける処理である。たとえば、文章を構成するテキストデータであれば、それぞれの単語の要素に解析する。また、解析部３１０は、たとえば、対象データが電子メールデータである場合、当該電子メールデータのヘッダと本文に対して解析をおこなうなど、処理対象データをフィルタリングする際の判定に影響する要素を含んだデータのみを解析対象としてもよい。
【００３８】
第１算出部３２０は、解析部３１０によって解析された各要素について処理対象データ３０１における出力確率を算出する。このとき第１算出部３２０にて用いられる出力確率の算出手法は任意である。
【００３９】
第１離散化部３３０は、解析部３１０によって解析された各要素を、第１算出部３２０によって算出された出力確率に基づいて有効値／無効値に離散化する。このとき、第１離散化部３３０は、各要素をたとえばシグモイド関数などの任意の関数に写像して得られた値を用いて離散化をおこなってもよい。このような関数を適用させることによって、出力確率の分布が強調され、有効値／無効値の判定を容易におこなうことができる。
【００４０】
第１離散化部３３０では、上述したように、離散化に従来のような閾値の設定を必要としないが、ユーザがフィルタリング処理に適した閾値の情報を保有している場合には、この閾値を利用してもよい。このような場合、第１離散化部３３０では、各要素の出力確率と、あらかじめ設定した閾値との比較結果から各要素を有効値／無効値に離散化する。
【００４１】
第２算出部３４０は、第１離散化部３３０によって有効値／無効値に離散化された要素を、前記処理対象データを構成する要素に追加し、当該追加された要素を含んだ各要素の出力確率を算出する。また、第２算出部３４０による出力確率の算出手法は、第１算出部３２０と同様に任意であるが、第１算出部３２０と異なる算出手法が適用されている。
【００４２】
第２離散化部３５０は、第２算出部３４０によって算出された出力確率に基づいて前記各要素を有効値／無効値に離散化することにより、処理対象データ３０１が所望のデータであるか否かを判定する。この第２離散化部３５０によって所望するデータであると判定された場合、処理対象データ３０１は、ユーザに提供される。
【００４３】
なお、第２離散化部３５０も、上述した第１離散化部３３０と同様に、任意の関数に写像して得られた値を用いて離散化をおこなってもよいし、フィルタリング処理に適した閾値の情報を保有している場合には、この閾値を利用してもよい。
【００４４】
受付部３６０は、ユーザから処理対象データ３０１についてのユーザ判定情報３０２を受け付ける。ユーザ判定情報３０２とは、すなわち、第２離散化部３５０による判断の正誤をあらわす情報である。
【００４５】
調整部３７０は、受付部３６０によって誤判定、すなわち、ユーザに提供された処理対象データ３０１がユーザの所望するデータではなかった旨の指示を受け付けた場合に、この誤判断を、以後の判定処理に反映させる。
【００４６】
具体的には、誤判定とされた処理対象データ３０１を構成する各要素に関して、第１算出部３２０にて算出される出力確率を調整する。したがって、誤判断がなされた処理対象データを構成する要素（たとえば要素Ａ）の出力確率が低くなり、以後フィルタリング装置２００にて処理される処理対象データ２０１の場合、上述した要素Ａは、以前よりも多く含まれていなければ高い出力確率とはならず、後段の第１離散化部３３０では、有効値として離散化されない。したがって、同じ構成の処理対象データが再度入力された場合には、第１離散化部３３０では、無効値として離散化され、ユーザの所望するデータは判別されなくなる。
【００４７】
以上説明したように、各構成のうち、解析部３１０は、図１にて説明した解析部１１０に相当する。また、第１算出部３２０および第１離散化部３３０による第１フィルタによって、図１の子フィルタ１２０を構成する。そして、第２算出部３４０および第２離散化部３５０による第２フィルタによって図１の親フィルタ１３０を構成する。そして、受付部３６０および調整部３７０は、フィルタリング処理の精度を向上させるためのフィードバックをおこなう機能部となる。
【００４８】
（フィルタリング装置の処理手順）
つぎに、本実施の形態にかかるフィルタリング装置２００の処理手順について説明する。図４は、本実施の形態にかかるフィルタリング装置の処理手順を示すフローチャートである。図４のフローチャートにおいて、まず、フィルタリング装置２００に処理対象データ３０１が入力されたか否かを判定する（ステップＳ４０１）。
【００４９】
ステップＳ４０１において、処理対象データ３０１が入力されるまで待ち（ステップＳ４０１：Ｎｏのループ）、処理対象データ３０１が入力されると（ステップＳ４０１：Ｙｅｓ）、解析部３１０において、処理対象データ３０１の構成要素を解析する（ステップＳ４０２）。
【００５０】
ステップＳ４０２において、各要素に解析されると、フィルタリング処理のために各要素を離散化する処理に移行する。まず、第１算出部３２０によって、処理対象データ３０１を構成する各要素の出力確率を算出する（ステップＳ４０３）。そして、第１離散化部３３０によって、ステップＳ４０３によって算出された出力確率に基づいた離散化をおこない（ステップＳ４０４）、第１フィルタにおけるフィルタリング処理が完了する。
【００５１】
つぎに、第２算出部３４０によって、ステップＳ４０４によって離散化された各要素の離散化結果および処理対象データ３０１との出力確率を算出する（ステップＳ４０５）。さらに、第２離散化部３５０によってステップＳ４０５によって算出された出力確率から各要素を離散化し、処理対象データ３０１をユーザの所望するデータか否かの判定をおこない（ステップＳ４０６）、第２フィルタにおけるフィルタリング処理が完了する。
【００５２】
以上説明したステップＳ４０６までの処理によって処理対象データ３０１に対するフィルタリング処理が終了する。フィルタリング装置２００では、処理対象データ３０１に対するフィルタリング処理終了後、今回おこなったフィルタリング処理の正誤を自装置に反映させる処理に移行する。
【００５３】
まず、受付部３６０によって、ステップＳ４０５にておこなわれた処理対象データ３０１に対する判定結果が正しいか否かの判断を受け付ける（ステップＳ４０７）。この正誤判断は、ユーザによっておこなわれる。ここで、判定結果が正しいとの判断を受け付けた場合には（ステップＳ４０７：Ｙｅｓ）、今回のフィルタリング処理に問題はなかったことになり、そのまま一連の処理を終了する。
【００５４】
一方、判定結果が誤っているとの判断を受け付けた場合には（ステップＳ４０７：Ｎｏ）、今回のフィルタリング処理に問題があったため、その問題点を修正するため、調整部３７０によって第１算出部３２０における出力確率算出の設定を調整し（ステップＳ４０８）、一連の処理を終了する。
【００５５】
以上説明したように、フィルタリング装置２００では、複数のフィルタを直列に連結した場合に、それぞれでは独自の判定をおこなわせるが、後段の第２フィルタには、前段の第１フィルタの判定結果を処理対象データ２０１と併せて入力する。このような手順をとることによって、後段の第２フィルタは、自身の判定に加えて、第１フィルタの判定結果も取り入れることになる。
【００５６】
さらに、ユーザがフィードバックをかけたいときは、前段の第１フィルタに反映され、次回からは、前回までの誤判定を起こさないような判定が可能となる。また、第１フィルタの判定結果が更新されると、自動的に第２フィルタの判定結果も更新されるため、フィルタ間の閾値や、判定結果の比較に相当する機能は、すべて第１フィルタによる出力確率算出処理の調整によって制御できることになる。
【００５７】
（離散化の手法）
つぎに、第１離散化部３３０および第２離散化部３５０における離散化の手法について説明する。上述したように、第１離散化部３３０および第２離散化部３５０における離散化の手法に特に限定はない。ここで、簡易で効率的な手法の一例として、任意の関数に写像する手法を説明する。図５は、ある単語の出力確率を任意の関数により写像した図である。また、図６は、単語数ごとの出力確率を任意の関数により写像した図である。
【００５８】
ここでは、図５や図６では、第１算出部３２０や第２算出部３４０（図３参照）にて算出された出力確率の確率値を元に、任意の関数によって写像した場合における、ある単語の出力確率の分布（図５）や、単語数に応じた出力確率の分布（図６）をあらわしている。
【００５９】
また、図５、６における３種類の曲線（実線、破線、一点鎖線）は、それぞれ、適応させている関数の違いをあらわしている。たとえば実線の曲線は、出力確率が０．５より離れている場合、単語の確率がより強まるようなシグモイド関数であり、比較的標準的で癖のない挙動になると予想される。
【００６０】
また、破線の曲線は、図５に示した単語の確率については線形だが、図６に示した単語数の場合、０．５付近から立ち上がりが急になっているため、学習結果が反映されやすいことをあらわしている。また、一点鎖線の曲線は、０に近いか、１に近いかによって偏りを持たせた関数となっている。この関数によると、１に近い判定ほど学習結果に反映されやすいことをあらわしている。このように、適用させる関数によって、学習傾向を解析的に制御することが可能となる。
【００６１】
以上説明したように、本発明にかかるフィルタリング処理をおこなった場合、各フィルタの判定処理をおこなう際に、入力された処理対象データを利用（解析、出力確率算出など）して離散化をおこなう。したがって、従来のフィルタリング処理のような、ユーザによるパラメータの設定処理を大幅に簡略することができる。
【００６２】
また、判定誤りがあった場合は、ユーザはフィルタリング処理に誤り内容をフィードバックする。したがって、フィルタリング処理は、学習され、次回の判定時にはより高精度な判定をおこなうことができる。
【００６３】
以上説明したように、本発明にかかるフィルタリング処理方法、フィルタリング処理プログラムおよびフィルタリング装置によれば、設定処理の負担を軽減させ、かつ、効率的に処理精度を向上させるための学習をおこなう機能を実現することができる。
【００６４】
また、本発明のフィルタリング処理は、上述したような電子メールのフィルタリングに適用する以外にも、スパムフィルタやＷｅｂフィルタとして適用させてもよい。また、フィルタリング機能を検索エンジンのプロファイルや、自然言語処理における学習機能の最適化などに適用させることもできる。
【００６５】
なお、本実施の形態で説明したフィルタリング処理方法は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネットなどのネットワークを介して配布することが可能な伝送媒体であってもよい。
【産業上の利用可能性】
【００６６】
以上のように、本発明にかかるフィルタリング処理方法、フィルタリング処理プログラムおよびフィルタリング装置は、連続値からなるデータのフィルタリング処理にて有用であり、特に、個々のユーザ環境に適応させる必要のあるメールフィルタに適している。
【図面の簡単な説明】
【００６７】
【図１】本発明にかかるフィルタリング処理の概要を示す説明図である。
【図２】本実施の形態にかかるフィルタリング装置のハードウェア構成の一例を示すブロック図である。
【図３】本実施の形態にかかるフィルタリング装置の機能的構成を示すブロック図である。
【図４】本実施の形態にかかるフィルタリング装置の処理手順を示すフローチャートである。
【図５】ある単語の出力確率を任意の関数により写像した図である。
【図６】単語数ごとの出力確率を任意の関数により写像した図である。
【符号の説明】
【００６８】
２００  フィルタリング装置
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
２０４  ＨＤＤ
２０５  ＨＤ
２０６  ＦＤＤ
２０７  ＦＤ
２０８  ＣＤ−ＲＷドライブ
２０９  ＣＤ−ＲＷ
２１０  ディスプレイ
２１１  キーボード
２１２  マウス
２１３  ネットワークＩ／Ｆ
２１４  通信ケーブル
２１５  プリンタ
２２０  バス
３０１  処理対象データ
３０２  ユーザ判定情報
３１０  解析部
３２０  第１算出部
３３０  第１離散化部
３４０  第２算出部
３５０  第２離散化部
３６０  受付部
３７０  調整部
【図１】
0005032286.tif 000002
【図２】
0005032286.tif 000003
【図３】
0005032286.tif 000004
【図４】
0005032286.tif 000005
【図５】
0005032286.tif 000006
【図６】
0005032286.tif 000007