(57)【特許請求の範囲】
【請求項１】
単語がスパムの傾向を有するか非スパムの傾向を有するか、およびこの傾向の大きさを単語傾向情報として、単語ごとに対応づけて保持する単語傾向情報保持部と、
判別対象の電子メールを取得するメール取得部と、
該判別対象の電子メールに含まれる単語を抽出する単語抽出部と、
抽出された単語のうち、前記単語傾向情報保持部に登録されている単語については、単語傾向情報保持部からその単語傾向情報を検出する一方、前記単語傾向情報保持部に登録されていない未登録単語については、非スパムの傾向を有する単語として単語傾向情報を付与する単語傾向情報取得部と、
電子メールから抽出された単語の単語傾向情報から、電子メールがスパムメールであるか否かを判別する判別部とを備え、
前記単語傾向情報取得部は、前記未登録単語の数が、抽出された単語の数に対して占める割合が所定の閾値以上であることを条件として未登録単語に単語傾向情報を付与し、
前記判別部は、前記割合が前記閾値より小さい場合には、検出された単語傾向情報のみから、前記判別を行う
ことを特徴とする電子メール分類装置。
【請求項２】
前記単語傾向情報取得部は、非スパム傾向の大きさがとりうる値の範囲内における中間値近傍の値を前記未登録単語の非スパム傾向の大きさとして付与することを特徴とする請求項１に記載の電子メール分類装置。
【請求項３】
前記単語傾向情報取得部は、前記中間値以下の値を前記未登録単語の非スパム傾向の大きさとして付与することを特徴とする請求項２に記載の電子メール分類装置。
【請求項４】
前記判別部は、前記単語傾向情報取得部により得られた単語傾向情報に基づいて、スパムの傾向が大きい単語から順に複数の単語を選出して第１の単語群を得るとともに、非スパムの傾向が大きい単語から順に複数の単語を選出して第２の単語群を得る単語群選出部を備え、
第１の単語群と第２の単語群に含まれる各単語の単語傾向情報から、判別対象の電子メールの前記傾向およびこの傾向の大きさを算出することにより、該判別対象の電子メールがスパムメールであるか否かを判別することを特徴とする請求項１から３のいずれか１項に記載の電子メール分類装置。
【請求項５】
メール取得部が、判別対象の電子メールを取得するステップと、
単語抽出部が、該判別対象の電子メールに含まれる単語を抽出するステップと、
単語傾向情報取得部が、抽出された単語のうち、単語がスパムの傾向を有するか非スパムの傾向を有するか、およびこの傾向の大きさを単語傾向情報として単語ごとに対応づけて保持した単語傾向情報保持部に、単語傾向情報が保持されている単語について、その単語傾向情報を検出する一方、抽出された単語のうち、前記単語傾向情報保持部に単語傾向情報が登録されていない未登録単語について、非スパムの傾向を有する単語として単語傾向情報を付与するステップと、
判別部が、電子メールから抽出された単語の単語傾向情報から、電子メールがスパムメールであるか否かを判別するステップとを備え、
前記単語傾向情報取得部は、前記未登録単語の数が、抽出された単語の数に対して占める割合が所定の閾値以上であることを条件として未登録単語に単語傾向情報を付与し、
前記判別部は、前記割合が前記閾値より小さい場合には、検出された単語傾向情報のみから、前記判別を行う
ことを特徴とする電子メール分類方法。
【請求項６】
単語がスパムの傾向を有するか非スパムの傾向を有するか、およびこの傾向の大きさを単語傾向情報として、単語ごとに対応づけて保持する手順と、
メール取得部が、判別対象の電子メールを取得する手順と、
単語抽出部が、該判別対象の電子メールに含まれる単語を抽出する手順と、
単語傾向情報取得部が、抽出された単語のうち、単語がスパムの傾向を有するか非スパムの傾向を有するか、およびこの傾向の大きさを単語傾向情報として単語ごとに対応づけて保持した単語傾向情報保持部に、単語傾向情報が保持されている単語について、その単語傾向情報を検出する一方、抽出された単語のうち、前記単語傾向情報保持部に単語傾向情報が登録されていない未登録単語について、非スパムの傾向を有する単語として単語傾向情報を付与する手順と、
判別部が、電子メールから抽出された単語の単語傾向情報から、電子メールがスパムメールであるか否かを判別する手順とをコンピュータに実行せしめ、
前記単語傾向情報取得部は、前記未登録単語の数が、抽出された単語の数に対して占める割合が所定の閾値以上であることを条件として未登録単語に単語傾向情報を付与し、
前記判別部は、前記割合が前記閾値より小さい場合には、検出された単語傾向情報のみから、前記判別を行う
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子メールの分類技術、具体的には電子メールに含まれる単語を用いて電子メールを分類する技術に関する。
【背景技術】
【０００２】
電子メールの利用者数の増加に伴い、利用者が望まない宣伝広告や嫌がらせなどの電子メール、いわゆるスパムメールの受信数が膨大になりつつある。これらのスパムメールを自動的に判別して削除したり、特定のフォルダに入れたりするなど、スパムメールを排除するための技術が開発されている。
【０００３】
その一例として、特許文献１において、スパムメールとなるサンプルメールを保持しておき、新たに受信した電子メールの内容と、サンプルメールの内容とを比較することによって、電子メールの内容に基づいた判別を行う方法が開示されている。
【０００４】
スパムメールか非スパムメールかを判別する目的は、受け手のユーザの手を煩ずにスパムメールを排除することにある。スパムメールとして判別したメールを削除するシステムにおいては、ユーザは削除された電子メールに気づくことがほとんどない。スパムメールとして判別されたメールを専用フォルダに格納するシステムにおいては、ユーザは通常そのフォルダ内の電子メールを確認しないので、専用フォルダに格納された電子メールの中に非スパムメールが混在したとしても、気づくことが少ない。そのため、スパムメールか非スパムメールかを判別するシステムにおいて、非スパムメールをスパムメールとして誤判別してしまうことを極力避けることが要望される。
【特許文献１】特開２００３−３４８１６１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明は上記事情に鑑みてなされたものであり、その主たる目的は、非スパムメールをスパムメールとして誤判別してしまうことを軽減することができる技術を提供することにある。
【課題を解決するための手段】
【０００６】
本発明のある態様は、電子メール分類装置である。この装置は、単語がスパムの傾向を有するか非スパムの傾向を有するか、およびこの傾向の大きさを単語傾向情報として、単語ごとに対応づけて保持する単語傾向情報保持部と、判別対象の電子メールを取得するメール取得部と、取得した電子メールに含まれる単語を抽出する単語抽出部と、抽出された単語のうち、単語傾向情報保持部に登録されている単語については、単語傾向情報保持部からその単語傾向情報を検出する一方、単語傾向情報保持部に登録されていない未登録単語については、非スパムの傾向を有する単語として単語傾向情報を付与する単語傾向情報取得部と、電子メールから抽出された単語の単語傾向情報から、電子メールがスパムメールであるか否かを判別する判別部とを備える。
【０００７】
また、単語傾向情報取得部は、未登録単語の数が、抽出された単語の数に対して占める割合が所定の閾値以上であることを条件として未登録単語に単語傾向情報を付与し、判別部は、この割合が閾値より小さい場合には、検出された単語傾向情報のみから、判別を行うようにしてもよい。
【０００８】
また、単語傾向情報取得部は、非スパム傾向の大きさがとりうる値の範囲内における中間値近傍の値を未登録単語の非スパム傾向の大きさとして付与するようにしてもよい。この際、単語傾向情報取得部は、中間値以下の値を未登録の単語の非スパム傾向の大きさとして付与するようにしてもよい。
【０００９】
さらに、判別部は、単語傾向情報取得部により得られた単語傾向情報に基づいて、スパムの傾向が大きい単語から順に複数の単語を選出して第１の単語群を得るとともに、非スパムの傾向が大きい単語から順に複数の単語を選出して第２の単語群を得る単語群選出部を備え、第１の単語群と第２の単語群に含まれる各単語の単語傾向情報から、判別対象の電子メールの傾向およびこの傾向の大きさを算出することにより判別を行うようにしてもよい。
【００１０】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、プログラムを記憶した記憶媒体、コンピュータプログラムなどの間で変換したものも、本発明の態様としては有効である。
【発明の効果】
【００１１】
本発明は、電子メールがスパムメールなのか否かの判別において有利である。
【発明を実施するための最良の形態】
【００１２】
本発明の実施の形態の詳細を説明する前に、まず、電子メールがスパムメールか否かの判別手法として広く知られている、ベイジアンフィルタ（ｂａｙｓｉａｎ  ｆｉｌｔｅｒ）に基づいたＰａｕｌ  Ｇｒａｈａｍ方式（以下Ｐａｕｌ方式という）と比較しながら、本発明者が提案する技術の概要を説明する。
【００１３】
たとえば、１００通の電子メールのうち、７０通がスパムメールであり、残りの３０通が非スパムメールであったとする。ここで、ある単語Ａがスパムメール７０通のうちの６０通、非スパムメール３０通のうちの３通から検出されたとする。この場合、単語Ａは、スパムメールに現れやすい単語であるから、単語Ａが含まれている電子メールはスパムメールの傾向を有すると言える。ベイジアンフィルタは、このような観点から、単語ごとに、この単語を含むことによって電子メールがスパムメールの傾向を有するか非スパムメールの傾向を有するか、およびこの傾向の大きさを、単語の傾向および傾向の大きさを示す単語傾向情報としてデータベースを構築する。そして、このデータベースを参照して、新たに受信した電子メールの各々の単語から、傾向の大きい単語を特徴語として複数選出して、これらの特徴語の単語傾向情報を用いて電子メールがスパムメールか非スパムメールかの判別を行う。
【００１４】
ここで、スパムメールのサンプル１００通と、非スパムメールのサンプル１００通をあらかじめ用意されているとする。単語Ａがこのスパムメール群では９８回、非スパムメール群では２回現れたとする。この場合、単語Ａは、スパムの傾向を有すると言える。また、たとえばスパムメール群では６０回、非スパムメール群では２回現れた単語Ｂについては、スパムの傾向を有し、その傾向の大きさは、単語Ａの傾向より小さいと言える。一方、単語Ｃがスパムメール群では１回、非スパムメール群では２５回現れたとする。この場合、単語Ｃが非スパムの傾向を有すると言える。また、たとえばスパムメール群では１回、非スパムメール群では１５回現れた単語Ｄについては、非スパムの傾向を有し、その傾向の大きさは、単語Ｃの傾向より小さいと言える。
【００１５】
Ｐａｕｌ方式では、このような傾向、およびその傾向の大きさを単語スパム確率により表し、この単語スパム確率を下記の式（１）にしたがって算出する。
【００１６】
ｐ＝（ｍ／Ｍ）／（ａ×ｎ／Ｎ＋ｍ／Ｍ）                （１）
但し、ｐ：単語スパム確率
ｍ：単語がスパムメール群において登場した回数
Ｍ：スパムメールの総数
ｎ：単語が非スパムメール群において登場した回数
Ｎ：非スパムメールの総数
ａ：１より大きい係数
上記２００通のメールに含まれる各単語に対して単語スパム確率を算出してデータベース化する。このデータベースは、判別対象となる電子メールがスパムメールであるか否かの判別に用いられる。具体的には、まず、判別対象の電子メールに含まれる各々の単語のスパム確率をデータベースから検出する。ここで、たとえば図１に示すような検出結果が得られたとする。
【００１７】
図１に示すように、単語スパム確率は０から１までの範囲内の値を有しうる。単語スパム確率が０．５より大きい単語は、スパムの傾向を有する。また、単語のスパム確率が０．５より大きいほどすなわち１に近いほど、その単語のスパムの傾向が大きい。一方、単語スパム確率が０．５より小さい単語は、非スパムの傾向を有し、単語のスパム確率が０．５より小さいほどすなわち０に近いほど、その単語の非スパムの傾向が大きい。０．５という単語スパム確率を有する単語は、この単語を含む電子メールがスパムメールである可能性と、非スパムメールである可能性がほぼ同じである。
【００１８】
図１のような検出結果に基づいて、判別に使用する単語が選出される。Ｐａｕｌ方式では、選出する単語の数が１５個までとされており、その選出方法は、「単語スパム確率が０．５との差が大きい順から選択する」である。たとえば、判別に使用する単語の数が１０とされた場合には、図２に示すような１０個の単語が選出される。図２において、単語は、その単語スパム確率が０．５との差が大きい順に並べられている。
【００１９】
選出した単語の単語スパム確率を用いて、下記の式（２）にしたがって、「電子メールがスパムメールである可能性の大きさ」（以下「メールスパム確率」という）が算出される。
【００２０】
【数１】
0004688630.tif 000002
【００２１】
図２のような単語が選出された場合には、メールスパム確率の値は式（２）にしたがって算出され、約０．９５５となる。
【００２２】
算出されたメールスパム確率が所定の閾値Ｔたとえば０．９と比較され、０．９より大きければ、判別対象の電子メールはスパムメールとして判別される。ここで、図１に示すような単語が抽出された電子メールに対して算出されたメールスパム確率が０．９５５であるので、この電子メールがスパムメールとして判別される。
【００２３】
そして、判別の結果を用いて、式（１）による再計算をすることによりデータベースを更新する。
【００２４】
また、電子メールに対する判別の結果は、必ずしも正しいとは限らないので、この判別の結果をユーザに修正させ、修正の結果をデータベースにフィードバックしたり、判別する際に用いるパラメータを調整することによって、判別の精度向上を図ることが行われる。たとえば、判別の結果をユーザに示し、ユーザに正否の判定をさせ、判定の結果を用いて式（１）による再計算を行い、データベースを更新する。また、たとえば、判別した所定数の電子メールのうち、非スパムメールをスパムメールとして誤判別した回数が所定の回数を超えたときに、閾値Ｔを下げたり、式（１）にある係数ａを大きくしたりするなどの調整が行われる。
【００２５】
ところで、データベースは、すべての単語を網羅することができない。データベースに登録されていない未登録単語が多数含まれた電子メールを判別する際に、未登録単語の単語スパム確率をデータベースから取得できない。データベースから単語スパム確率を取得することができる単語のみを用いて判別を行うと、非スパムメールをスパムメールとして判別してしまうことが多くなる。特に、急速に普及した携帯メールのような短い文書の電子メールの場合、それに含まれる単語の数が元々比較的に少ない。その中に未登録単語が占める割合が多いと、データベースにその単語スパム確率が登録されている単語であって、スパム傾向を有する単語が少量含まれただけで、そのメールがスパムメールとして判別される可能性が高い。
【００２６】
そこで、本発明者は、非スパムメールをスパムメールとして誤判別してしまうことを軽減することができる下記の技術を提案する。
【００２７】
この技術は、判別対象の電子メールに含まれた各単語のうちの、データベースにその単語傾向情報が登録されている単語に対して、データベースから単語傾向情報を検出する。一方、未登録単語に対しては、非スパム傾向を有する単語として単語傾向情報を付与する。そして、検出された単語傾向情報および付与された単語傾向情報を用いて、判別対象の電子メールがスパムメールか否かの判別を行う。
【００２８】
判別の具体的な手法の一例として、Ｐａｕｌ方式を用いるとする。検出された単語傾向情報および付与された単語傾向情報に基づいて、傾向の大きい単語を選出する。すなわち、単語スパム確率が０．５との差が大きい順から複数個選出して、これらの単語の単語スパム確率を用いて上記式（２）にしたがってメールスパム確率を算出する。そして、算出したメールスパム確率を閾値Ｔと比較することによって判別する。
【００２９】
この技術によれば、データベースに未登録の単語を、非スパムの傾向を有する単語として単語傾向情報を付与しているので、未登録の単語の単語スパム確率が０．５以下の値を有することになる。そのため、判別対象の電子メールに含まれる単語の数が少ないときや、データベースに登録された単語の量が少ないときなど、未登録の単語も、判別に用いる単語として選出される可能性が出てくるので、非スパムメールをスパムメールとして誤判別してしまうことを軽減することができる。
【００３０】
また、判別対象の電子メールに含まれる単語のうち、未登録単語が占める割合が大きい場合において、これらの単語を使用しないと、非スパムメールをスパムメールとして誤判別してしまう危険性が、未登録単語が占める割合が小さい場合より高い。そのため、未登録単語に対して単語傾向情報を付与する際に、未登録単語の割合が所定の閾値たとえば５０％以上であることを条件とすることが好ましい。この場合、データベースから検出された単語スパム確率を用いて判別を行えばよい。こうすることによって、非スパムメールをスパムメールとして誤判別してしまうことを軽減しつつ、スパムメールの検出率が過度に下がるのを防ぐことができる。
【００３１】
また、非スパムの傾向の大きさとして未登録単語に付与する値が小さすぎる（すなわち０．５に近すぎる）と、未登録単語が選出される可能性が少ないため、非スパムメールをスパムメールに誤判別することを軽減する効果が小さくなる。一方、非スパムの傾向の大きさとして未登録単語に付与する値が大きすぎる（すなわち０．５から離れすぎる）と、未登録単語が多量に選出されることを招き、スパムメールの検出率が低下する。
【００３２】
そこで、本発明者は、非スパムの傾向の大きさがとりうる範囲内における中間値の近傍の値を、非スパム傾向の大きさとして未登録単語に付与することを提案する。たとえば非スパム傾向の大きさがとりうる範囲がＡからＢまでである場合において、中間値「（Ａ＋Ｂ）／２」近傍の値を、「（３Ａ＋Ｂ）／４」から「（Ａ＋３Ｂ）／４」までの範囲内の値とすることができる。さらに、非スパムの傾向の大きさがとりうる範囲内における中間値の近傍の値のうち、中間値以下の値を非スパム傾向の大きさとして未登録単語に付与することがより好ましい。なお、単語傾向情報として単語スパム確率を用いる場合において、非スパムの傾向の大きさがとりうる範囲は０．５から０までとなり、中間値は０．２５となる。そして、中間値近傍の値は、０．３８から０．１３の範囲に含まれる値とすることができる。さらに、中間値近傍の値であって、中間値以下の値としては、０．２５から０．３８の範囲に含まれる値とすることができる。
【００３３】
さらに、判別する際に用いられる単語の選出をする際に、Ｐａｕｌ方式の「単語スパム確率が０．５との差が大きい順から選択する」方法の代わりに、「スパム傾向が大きい単語から順に複数選出とともに、非スパム傾向が大きい傾向から順に複数選出する」ようにすることが好ましい。その際、スパム傾向の単語と非スパムの単語を同数選出することがより好ましい。
【００３４】
Ｐａｕｌ方式により単語を選出する際に、「０．５」との差が大きい単語スパム確率を有する単語を選出するようにしている。たとえば、電子メールから図３に示すような単語が抽出されたとする。図示の例において、たとえば判別に選出する単語の数が２である場合には、単語スパム確率が０．５との差が最も大きい２つの単語「お金」、「出会い」が選出される。この２つの単語とも、その単語スパム確率が０．５より大きく、すなわち電子メールがスパムメール傾向にあることを示す単語である。この場合、電子メールに含まれた、電子メールが非スパムメールである傾向に示す単語「修正」、「ドライブ」などが判別に全く使用されず、電子メールの非スパムメールとしての傾向、すなわち非スパム性が無視される。
【００３５】
同じように、電子メールに含まれた、電子メールがスパムメールの傾向を有する単語が使用されず、電子メールのスパムメールとしての傾向、すなわちスパム性が無視される場合もある。
【００３６】
このようなことから、Ｐａｕｌ方式で得られるメールスパム確率は、０近傍と１近傍の両極端の値に集中しやすい。これの一因は、単語の選出方法により、電子メールが元々あるスパムメール性または非スパムメール性を無視したことにある。
【００３７】
電子メールの非スパム性に対する無視を軽減するために、Ｐａｕｌ方式では、単語スパム確率を算出する際に、式（１）右辺の分母にある係数ａとして１より大きい値を使用し、単語が非スパムメールとして登場した回数を加重している。この係数ａの値によって、求められた単語スパム確率が変わる。単語スパム確率の値もまたメールスパム確率の値を影響するので、調整を行う際には、係数ａと閾値Ｔについて、互いの影響を見ながら調整する必要があり、調整自体が煩雑である。また、メールスパム確率が、０と１近傍に集中してしまうため、閾値Ｔの調整に望める効果が薄い。
【００３８】
次に、図３の例を用いて、判別のために選出する単語の数を５とした場合について考える。「リスト」、「懸賞」、「くじ」の３つの単語の単語スパム確率がそれぞれ０．８であり、０．５との差が０．３となる。一方、「原稿」、「修正」、「ドライブ」の３つの単語の単語スパム確率と０．５との差も０．３である。「お金」、「出会い」の２つの単語以外に、残りの３つの単語として、単語スパム確率が高いほうの３つの単語（「リスト」、「懸賞」、「くじ」）を選出するか、単語スパム確率が低いほうの３つの単語（「原稿」、「修正」、「ドライブ」）を選出するかによって、後に求められるメールスパム確率の値が変わる。
【００３９】
単語スパム確率が高いほうの３つの単語を選出すると、メールスパム確率が０．９９９９となり、単語スパム確率が低いほうの３つの単語を選出すると、メールスパム確率が０．７２７７となる。
【００４０】
すなわち、Ｐａｕｌ方式では、単語を選出する際に、単語スパム確率と０．５との差が同じ場合において、単語スパム確率が０．５より大きい単語と０．５より小さい単語のいずれを優先するかによって、判別の結果が大きく変わってしまう。
【００４１】
また、仮に優先順位をあらかじめ定めておくようにした場合においても、浮動小数点演算の際の演算誤差によって、判別の結果に大きな差が生じてしまうことがある。たとえば、単語スパム確率に対して小数点第３位までとる場合、０．２８１と０．７１６の２つの単語スパム確率は、０．５との差がそれぞれ０．２１９と０．２１６であるため、差の大きい「０．２８１」という単語スパム確率を有する単語が選出される。一方、単語スパム確率に対して小数点第２位までとる場合には、この２つの単語スパム確率がそれぞれ０．２８と０．７２になり、０．５との差は同じく０．２２となる。０．５より大きい単語スパム確率を有する単語が優先的に選出されるので、「０．７２」、実質的には「０．７１６」という単語スパム確率を有する単語が選出される。これでは判別の結果が大きく変わる。
【００４２】
それに対して、本発明者が提案した単語の選出方法、すなわち「スパム傾向が大きい単語から順に複数選出とともに、非スパム傾向が大きい傾向から順に複数選出する」方法である。具体的には、スパムの傾向を有する単語から、その傾向が大きい単語から順に複数の単語を選出して第１の単語群を得るとともに、非スパムの傾向を有する単語からその傾向が大きい単語から順に複数の単語を選出して第２の単語群を得る。ここも単語傾向情報として単語スパム確率を用いて説明する。
【００４３】
単語の選出にあたって、たとえば単純に単語スパム確率が大きい順（すなわちスパムの傾向が大きい順）から複数の単語を選出して第１の単語群を得、単語スパム確率が小さい順（すなわち非スパムの傾向が大きい順）から複数の単語を選出して第２の単語群を得るようにすることができる。また、第１の単語群として、０．５以上の単語スパム確率を有する単語から、単語スパム確率が大きい単語から順に複数の単語を選出し、第２の単語群として、０．５以下の単語スパム確率を有する単語から、単語スパム確率が小さい単語から順に複数の単語を選出するようにしてもよい。このように得られた２つの単語群の単語を判別に用いることによって、電子メールのスパム性および非スパム性が無視されることを防ぐことができる。
【００４４】
また、この２つの単語群のそれぞれの単語数が等しくなるように選出をすれば、単語スパム確率を算出する際に、Ｐａｕｌ方式による上記式（１）から、係数ａという人為的に調整を加えるパラメータを排除することができる。
【００４５】
ここで、図３に示す例を用いて、第１の単語群と第２の単語群のそれぞれの単語数を２にして、本発明者の提案した技術による下記の式（３）にしたがって、メールスパム確率を計算する。なお、この式は、２つの単語群に含まれる単語のそれぞれのスパム確率を用いてメールスパム確率を算出するための式であり、使用される単語が異なる点以外、Ｐａｕｌ方式がメールスパム確率を計算する際に用いる上記式（２）と同じである。
【００４６】
【数２】
0004688630.tif 000003
【００４７】
この場合において、０．５以上の単語スパム確率を有する単語から「お金」、「出会い」が選出され、中間確率が０．５以下の単語スパム確率を有する単語から「原稿」、「修正」が選出される。これらの単語の単語スパム確率から算出したメールスパム確率が０．９１である。
【００４８】
すなわち、電子メールのスパム性および非スパム性を無視しない処理方法を採用した結果、算出したメールスパム確率が０近傍と１近傍に集中することが無くなる。これによって、閾値Ｔの値を変更することによって、より精緻な調整が可能である。
【００４９】
また、２つの単語群の数を５にした場合においても、０．５より大きい単語と０．５より小さい単語のいずれを優先するかの問題がないため、安定した判別結果を得ることができる。もちろん、浮動小数点演算の際の誤差に起因する判別結果の不安定を回避することもできる。
【００５０】
さらに、係数ａによる加重の必要がないので、単語スパム確率が下記の式（４）にしたがって計算することができる。
【００５１】
ｐ＝（ｍ／Ｍ）／（ｎ／Ｎ＋ｍ／Ｍ）                （４）
但し、ｐ：単語スパム確率
ｍ：単語がスパムメール群において登場した回数
Ｍ：スパムメールの総数
ｎ：単語が非スパムメール群において登場した回数
Ｎ：非スパムメールの総数
これによって、本発明者が提案したこの技術によれば、精度向上などのために調整を行う際に、閾値Ｔのみを調整すればよいので、簡単である。
【００５２】
以下、本発明の実施の形態について、以上の原理を具現化してシステムを説明する。
【００５３】
図４は、本発明にかかる実施の形態による電子メールシステムの構成を示す。この電子メールシステムは、メールサーバ１０、端末１００を有し、メールサーバ１０と端末１００は、ネットワーク５０により接続される。
【００５４】
端末１００は、ユーザが使用するパーソナルコンピュータや携帯端末などの情報機器であり、電子メールの送受信や閲覧のための機能を備えている。本実施例において、端末１００は、受信した電子メールがスパムメールであるか否かを判別する機能も備える。
【００５５】
図５は、端末１００の構成を示す。分かりやすくするために、ここでは、電子メールの処理に関わる要素のみを示し、情報機器が一般に備える要素については省略する。また、図４に示す構成は、電子メールを処理するプログラムをコンピュータ上で実行することにより実現される。この処理プログラムは、ＣＤ−ＲＯＭなどの記憶媒体に記憶され、もしくはインターネット等のネットワークを介して配布され、コンピュータにインストールされる。
【００５６】
端末１００は、メール取得部１０４と、単語抽出部１０８と、データベース１２０と、単語スパム確率取得部１１０と、単語群選出部１３０と、判別部１４０と、判別済みメール処理部１５０と、データベース更新部１６０とを備える。また、図示していないが、端末１００は、ユーザが種々の入力をするための入力部や、メールを表示するためのモニタなどのユーザインタフェースも備える。
【００５７】
メール取得部１０４は、メールサーバ１０から電子メールを取得する。単語抽出部１０８は、メール取得部１０４により取得した電子メールに含まれる単語を抽出する。なお、ここでいう単語とは、単語の集合、バイトストリームであってもよく、必ずしも文を構成する最小単語としての「単語」に限定する必要はない。
【００５８】
単語スパム確率取得部１１０は、単語抽出部１０８により抽出した各単語のスパム確率を取得する。
【００５９】
図６は、単語スパム確率取得部１１０の構成を示すブロック図である。単語スパム確率取得部１１０は、単語スパム確率検出部１１２と、未登録単語割合算出部１１４と、単語スパム確率付与部１１６を備える。
【００６０】
単語スパム確率検出部１１２は、単語抽出部１０８により抽出された単語のうち、データベース１２０にその単語スパム確率が登録されている単語の単語スパム確率を、データベース１２０から検出する。
【００６１】
未登録単語割合算出部１１４は、単語抽出部１０８により抽出された単語のうち、後述するデータベース１２０に、その単語スパム確率が登録されていない未登録単語の数の割合を算出する。
【００６２】
単語スパム確率付与部１１６は、未登録単語に対して単語スパム確率を付与する。また、この付与は、未登録単語の割合が閾値５０％以上であることを条件とする。本実施例において、単語スパム確率付与部１１６は、非スパムの傾向の大きさがとりうる値の範囲０〜０．５において、中間値０．２５の近傍であって、０．２５により示される非スパムの傾向より小さい傾向を示す０．３という単語スパム確率を未登録単語に付与する。
【００６３】
単語スパム確率取得部１１０は、単語スパム確率付与部１１６により付与が行われた場合において、単語スパム確率検出部１１２と、単語スパム確率付与部１１６により得られた単語スパム確率を単語群選出部１３０に出力する。一方、付与が行われなかった場合においては、単語スパム確率取得部１１０は、単語スパム確率検出部１１２により得られた単語スパム確率のみを出力する。
【００６４】
ここで、例として、未登録単語の割合が５０％以上であり、未登録単語に対してスパム確率として０．３が付与されたとする。
【００６５】
図７は、データベース１２０を示す。データベース１２０は、単語ごとの単語スパム確率ｐ、および履歴情報を含む。履歴情報は、スパムメールの総数Ｍ、非スパムメールの総数Ｎ、それぞれの単語がスパムメールに出た回数ｍと非スパムメールに出た回数ｎを含む。
【００６６】
初期状態におけるこのデータベース１２０は、たとえばサンプルメールを用いて作成され、電子メールを処理するプログラムに付属されたものとすることができる。また、初期状態において、データベース１２０の中身が空であって、電子メールを受信しはじめてから内容が充実されたものであってもよい。この場合において、電子メールがスパムメールであるか否かの判定をユーザに委ね、ユーザの判定結果に応じて、単語の登録、履歴情報の更新、単語スパム確率の計算などによってデータベースを更新する。単語スパム確率の計算は、上述した式（４）を用いればよい。そして、一定の数の電子メール数を受信したことに伴って、データベースが充実してから端末１００による自動判別を開始するようにしてもよい。以下の説明において、データベース１２０は既に内容があり、端末１００による自動判別が開始されたとする。
【００６７】
単語群選出部１３０は、単語スパム確率取得部１１０から出力された各々の単語の単語スパム確率ｐに基づいて、単語スパム確率が高い単語から順に複数たとえば１０個の単語を選出して第１の単語群を得る。また、単語群選出部１３０は、単語スパム確率が低い単語から順に、同じく１０個の単語を選出して第２の単語群を得る。
【００６８】
図８は、単語群選出部１３０により選出した単語群の例を示す。図示のように、第２の単語群において、８個の未登録単語が含まれている。
【００６９】
判別部１４０は、単語群選出部１３０により得た２つの単語群に含まれる各単語の単語スパム確率を用いて、上述した式（３）にしたがってメールスパム確率を算出する。そして、算出したメールスパム確率が、予め設定された閾値Ｔ以上か、閾値Ｔより小さいかによって、電子メールがスパムメールであるか否かを判別する。
【００７０】
判別部１４０は、判別の結果を判別済みメール処理部１５０とデータベース更新部１６０に出力する。
【００７１】
判別済みメール処理部１５０は、判別部１４０による判別結果が、メール取得部１０４により取得した電子メールがスパムメールであることを示す場合において、その電子メールを、スパムメールを格納するためのフォルダたとえば「スパムメールフォルダ」に格納する。一方、判別結果が、電子メールがスパムメールではない、すなわち非スパムメールであることを示す場合においては、その電子メールを、新しく受信したメールを格納するためのフォルダたとえば「受信箱」に格納する。
【００７２】
データベース更新部１６０は、判別部１４０による判別結果に基づいて、データベース１２０の履歴情報を更新するとともに、上記式（４）にしたがって、単語抽出部１０８により抽出した各単語の単語スパム確率を再計算して、データベース１２０の対応する単語の単語スパム確率を更新する。また、これらの単語のうち、データベース１２０に登録されていない単語がある場合には、これらの新しい単語を登録する。
【００７３】
図９は、電子メール受信時における端末１００の処理過程を示すフローチャートである。
【００７４】
まず、メール取得部１０４はメールサーバ１０から電子メールを取得する（Ｓ１０）。単語抽出部１０８はこの電子メールから単語を抽出する（Ｓ１４）。単語スパム確率取得部１１０は、まず、抽出された単語のうち、未登録単語の数が占める割合を算出する（Ｓ１８）。そして、単語スパム確率取得部１１０は、この割合が５０％より小さい場合において、抽出された単語のうち、データベース１２０に登録されている単語に対してデータベース１２０からそれらの単語スパム確率を検出して単語群選出部１３０に出力する（Ｓ２０：Ｙｅｓ、Ｓ２４）。ステップＳ１８において算出した割合が５０％以上である場合（Ｓ２０：Ｎｏ）において、単語スパム確率取得部１１０は、抽出された単語のうち、データベース１２０に登録されている単語に対してはデータベース１２０からその単語スパム確率を検出する（Ｓ３０：Ｎｏ、Ｓ３４）一方、未登録単語に対しては、０．３の単語スパム確率を付与して、検出した単語スパム確率と付与した単語スパム確率を単語群選出部１３０に出力する（Ｓ３０：Ｙｅｓ、Ｓ３８）。
【００７５】
単語群選出部１３０は、単語スパム確率取得部１１０から出力された単語スパム確率に基づいて、０．５以上の単語スパム確率を有する単語から、単語スパム確率が高い単語から順に１０個の単語を第１の単語群として選出するとともに、０．５以下の単語スパム確率を有する単語から、単語スパム確率が低い単語から順に１０個の単語を第２の単語群として選出する（Ｓ４０）。判別部１４０は、第１の単語群と第２の単語群の単語の単語スパム確率を用いてメールスパム確率を算出し、このメールスパム確率と閾値Ｔを比較することによって、受信した電子メールがスパムメールであるか否かを判別する（Ｓ４４）。判別済みメール処理部１５０は、判別部１４０による判別結果に応じて、電子メールをスパムメールを格納するためのフォルダまたは非スパムメールを格納するためのフォルダに格納する。データベース更新部１６０は、判別結果に基づいて、ステップＳ１４において抽出された各単語の単語スパム確率を再計算するとともに、データベース１２０に含まれる単語スパム確率と履歴情報を更新する（Ｓ４８）。受信したメールの格納、データベース１２０の更新をもって、この電子メールに対する処理は終了する。
【００７６】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、本発明の主旨から逸脱しない限り、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【００７７】
たとえば、本実施例は電子メールシステムであるが、本発明の判別技術は、電子メールに限らず、任意の通信アーキテクチャを介して送受信することができる任意の形態の電子メッセージにも適用することができる。たとえば、２名以上の人々の間で会議または会話を実施する会議アプリケーション（たとえば対話型チャットソフトウェアや、インスタントメールソフトウェアなど）においても、本発明で開示する判別技術を適用することができる。
【００７８】
さらに、本発明の判別技術は、電子メッセージの分類に限らず、単語の傾向情報をベースとしたいかなる分類方法にも広く応用可能である。さらに、データの分類方法に際しては、単語に限らず、さまざまな属性ごとの傾向情報をベースとした分類方法も考えられる。たとえば、文書データを分類する場合、属性としてその文書データ中における単語の出現頻度や作者、作成日時などが利用できる。また、画像データを分類する場合、属性として色の頻度や明度の頻度などが利用できる。
【００７９】
また、本実施例において、未登録単語が占める割合が５０％以上であることを条件として、未登録単語に単語スパム確率を付与するが、この割合の値は、５０％以外の値であってもよく、ユーザにより指定できるようにしてもよい。さらに、未登録単語が占める割合に関係なく、未登録語があればそれに対して単語スパム確率を付与するようにしてもよい。
【００８０】
また、未登録単語に付与する単語スパム確率の値も、本実施例に用いられた値に限られることがなく、非スパムの傾向を示す単語スパム確率であれば、他の値であってもよく、ユーザにより指定できるようにしてもよい。
【００８１】
また、本実施例において、判別済みメール処理部１５０は、判別部１４０による判別結果に応じて、スパムメールとして判別された電子メールを「スパムメールフォルダ」に格納するようにしているが、たとえば判別の結果をユーザに表示し、ユーザに最終判定を行わせるようにしてもよい。その際、スパムメールと非スパムメールの両方の判別結果についてもユーザに最終判定を行わせるようにしてもよいし、いずれか一方のみの判別結果をユーザに最終判定を行わせるようにしてもよい。そして、ユーザによる最終判定の結果を用いてデータベースの更新を行う。
【００８２】
また、判別の結果とユーザに最終判定の結果のログを記録し、たとえば、スパムメールとして判別した電子メールは、ユーザにより非スパムメールとして最終判定されることが多発した場合において、判別に用いる閾値Ｔを小さくするなどの調整を行うようにしてもよい。
【００８３】
さらに、ユーザによる最終判定を行うか行わないかを、ユーザにより選択できるようにしてもよい。
【００８４】
また、図４に示す電子メールシステムにおいて、端末１００により、電子メールがスパムメールか非スパムメールかの判別を行うようにしているが、この判別は、メールサーバ１０によって行われるようにしてもよい。特にユーザに最終判定を行わせるシステムにおいては、判別に用いるデータベースは、ユーザごとに設けることが好ましい。
【図面の簡単な説明】
【００８５】
【図１】電子メールから抽出された単語の例を示す図である。
【図２】図１に示す複数の単語から選出された判別用の単語の例を示す図である。
【図３】Ｐａｕｌ  Ｇｒａｈａｍ方式を説明するための単語の例を示す図である。
【図４】本発明にかかる実施の形態による電子メールシステムの構成を示すブロック図である。
【図５】図４に示す電子メールシステムにおける端末の構成を示すブロック図である。
【図６】図５に示す端末における単語スパム確率取得部の構成を示すブロック図である。
【図７】図５に示す端末に含まれたデータベースの構造を示す図である。
【図８】図５に示す端末の単語群選出部により選出された２つの単語群の例を示す図である。
【図９】電子メール受信時における端末の処理過程を示すフローチャートである。
【符号の説明】
【００８６】
１０  メールサーバ、  ５０  ネットワーク、  １００  端末、  １０４  メール取得部、  １０８  単語抽出部、  １１０  単語スパム確率取得部、  １１２  単語スパム確率検出部、  １１４  未登録単語割合算出部、  １１６  単語スパム確率付与部、  １２０  データベース、  １３０  単語群選出部、  １４０  判別部、  １５０  判別済みメール処理部、  １６０  データベース更新部。
【図１】
0004688630.tif 000004
【図２】
0004688630.tif 000005
【図３】
0004688630.tif 000006
【図４】
0004688630.tif 000007
【図５】
0004688630.tif 000008
【図６】
0004688630.tif 000009
【図７】
0004688630.tif 000010
【図８】
0004688630.tif 000011
【図９】
0004688630.tif 000012