(57)【要約】      （修正有）【課題】迷惑メール判別について従来よりも良い精度を出す方法を提供する。【解決手段】送信元メールアドレスから送信先メールアドレスに送信されたとき、全てのメールアドレスについて推移の様子を調べ、推移確率行列で表し、その推移確率行列の固有ベクトルを求めることにより、それぞれのメールアドレスに対応する固有ベクトルの成分を求める。そして、その固有ベクトルの成分の大きさとベイジアンフィルタを組み合わせて迷惑メール判別をする。【選択図】図４
2008203935.tif 000002
【特許請求の範囲】
【請求項１】
インターネットを利用したメールを受信する装置において迷惑メールであるか否かを判定する方法において、
複数のメールのヘッダから送信元メールアドレスと送信先メールアドレスの情報を抽出し、任意のメールアドレス１が他のメールアドレス２からメールを受信した場合、他のメールアドレス２からあるメールアドレス１に情報の連結（推移）が行われたとらえ、全てのメールアドレスについて推移の様子を調べ、推移確率行列で表し、
推移確率行列の固有ベクトルを求めることにより、それぞれのメールアドレスに対応する固有ベクトルの成分を求め、固有ベクトルの成分の大きさによって迷惑メールであるか否か判断する方法。
【請求項２】
インターネットを利用したメールを受信する装置において迷惑メールであるか否かを判定する方法において、ベイジアンフィルタと他のフィルタリング方法を併用する方法において、
メールに含まれる特徴的な単語の出現頻度を元に判定するベイジアンフィルタと、メールの送受信に使われるメールアドレスを元に判定する第１発明を併用することによって、誤判定を抑制する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は迷惑メール判別方法に関する。
【背景技術】
【０００２】
従来技術として２つのものが存在している。１つは、社会ネットワーク分析を利用した密集度合によるフィルタリングである。もう１つはベイジアンフィルタを用いたメールの内容を元に判定する方法である。 
【０００３】
社会ネットワーク分析を利用した密集度合によるフィルタリングではメールのヘッダの情報を元にメールアドレスとメールアドレスとの繋がりを見出すことが出来るに着目している。利用者にメールを送ってきた人同士が知り合いかどうかも分かる。また迷惑メールは一方的に利用者に対して送られてくるものであるから、繋がりが普通は出来ない。社会的な繋がりについて密集度合を求めることにより迷惑メールかどうかを判断する。
【０００４】
ベイジアンフィルタによるフィルタリングは正当なメールと迷惑メールを単語に分解し，単語について統計を取ると、ある単語について，正当なメールに出現する確率と迷惑メールに出現する確率を求める。迷惑メールにある単語が出現する確率を用いて受信したメールが迷惑メールである確率を計算する。その確率が閾値を越えたものを迷惑メールと判断する。ある単語が出現する確率は学習データとして保存し、後のフィルタリング時に使用する。
【０００５】
ベイジアンフィルタは、フィルタリングに用いる単語の出現する確率を新たに受信したメールを元に再計算することが出来るという特徴がある。そのことにより、後に受信するメールのフィルタリングの精度が向上する。迷惑メールの内容は日々変化するので再計算を行うことが出来るということは、新たな傾向の内容を持った迷惑メールに対処することが出来ることを示している。
【０００６】
ベイジアンフィルタを用いる方法は効果的で、迷惑メールのフィルタリングによく用いられる。適切に調整をすると、メールの９割程度に対して正しくフィルタリングを行うことが出来る。
【非特許文献１】P. Oscar Boykin, Vwani P. Roychowdhury, “Leveraging Social Networks to Fight Spam，” IEEE Computer Society, April 2005.
【非特許文献２】Paul Graham，“A Plan for Spam，”August 2002．http://www.paulgraham.com/spam.html
【非特許文献３】大原泰樹, 松浦幹太, “ベイジアンフィルタと社会ネットワーク手法を統合した迷惑メールフィルタリングとその統合，” 情報処理学会論文誌 Vol.47 No.8 pp.2548-2555 Aug. 2006.
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、上記従来のフィルタリング方法であるメールが正当なメールか迷惑メールであるかを確実に判断することが出来るわけではない。そのため正当なメールを迷惑メールと見なす誤遮断や、迷惑メールを正当なメールと見なしたりしてしまう誤通過を起こすという問題点を有していた。
【０００８】
社会ネットワーク分析を利用した密集度合によるフィルタリングは信頼できるアドレスを信頼できるものとして認識するのに十個ほどのメールアドレスとやり取りしなければならないという問題点がある．
社会ネットワーク分析を利用した密集度合によるフィルタリングは複数の知り合いのメールアドレスに対して同時に迷惑メールが送信された場合、迷惑メールを送るのに用いられたメールアドレスを正当なメールアドレスと見なしてしまうという問題点がある．
ベイジアンフィルタはメールを単語に分解し、特徴的な単語の出現頻度によって迷惑メールである可能か判断する。この方法ではヘッダ中の送信元や送信先のメールアドレスの情報を有効に活用していないため、メールの内容によっては信頼できるメールアドレスから送信されてきたものであっても、迷惑メールとして処理してしまうという問題点がある。
【０００９】
メーリングリストやメールマガジンは例外処理を施し、それらに関連するメールを正当なものとみなすことが可能であるが、社会ネットワーク分析を利用した密集度合によるフィルタリングやベイジアンフィルタは例外処理を行う機能を持っていないという問題点がある．
ベイジアンフィルタは任意のメールの迷惑メールである確率を求め、その確率が閾値より大きいものを迷惑メール、小さいものを正当なメールと判断する。したがって閾値によっては誤通過をしたり、誤遮断をしたりする。閾値を高くすることによって誤遮断のほとんどを防ぐことができるが、誤通過がある程度発生してしまうという問題点がある。非特許文献３は非特許文献１と非特許文献２を組み合わせて判断の精度を上げようとしたが、誤遮断や誤通過の問題を有していた。
【００１０】
既存の手法は複数のフィルタリング方法を積極的に併用していなかった。このためそれぞれの短所が結果に反映されてしまうという問題点がある。
【００１１】
本発明は、上記従来の技術よりもメールの判断の精度を向上させ、特に誤遮断を避けることを解決すべき課題としている。
【課題を解決するための手段】
【００１２】
社会ネットワーク分析を利用した密集度合によるフィルタリングは、メールアドレスとメールアドレスとの繋がりがある一定程度の大きさ以上にならなければ、その繋がりを認識しないように制御を行う。第１発明では分析方法を改良し、信頼できるメールアドレスとやり取りしているメールアドレスのみ信用する制御を行うことで、やり取りが数通行われるだけでメールアドレスを信用するかどうか決定できるようにする。
【００１３】
社会ネットワーク分析を利用した密集度合によるフィルタリングは「誰と誰が繋がっているか」という点に注目していたが、第１発明では「誰がどれだけのアドレスから受信したか」という点に着目し、一方的にメールを送り、誰からも受信していないアドレスは迷惑メールに関係するである可能性があるものとして扱うことにする。
【００１４】
第２発明はベイジアンフィルタが有効に活用することのできないヘッダの情報を活用することによって、正当なアドレスから送られてきたメールを迷惑なメールと判断し、誤って迷惑メールと同じ処理をしてしまうことを防止する。メールのヘッダの情報のみを使ってフィルタリングを行うので、ベイジアンフィルタのようにメールの内容によって判断が揺らぐことはない。
【００１５】
第１発明と第二発明の他に特定の条件を満たすメールに対して例外処理を行う。信頼することができるメーリングリストに関係したメールやメールマガジンはフィルタにかけるまでもなく、正当なものとして処理することができる。さらにメーリングリストに投稿したアドレスをホワイトリストに登録することによって、一方的にメールを送っていたとしてもメールのヘッダに記されているアドレスは正当なものとしてその後は判断する。
【発明を実施するための最良の形態】
【００１６】
以下、第１、２発明を具体化した実施例１、２について図面を参照しつつ説明する。
【実施例１】
【００１７】
第１発明の固有ベクトルを求めるために、電子メールからアドレスの送受信関係を抽出し、送受信関係を補正する。図１に示すように、電子メールの送受信情報１０１、１０２、１０３と、送受信に使われるアドレスとして５つのメールアドレスアドレス１１１、１１２、１１３、１１４、１１５があったとする。図１の送受信情報から図２の送受信関係を得る。図２の送受信関係を強連結（あるアドレスから任意のアドレスへの経路が必ず存在すること）にするために補正をする。また、迷惑メールを送るメールアドレス１３２を用意し、メールアドレス１３２からメールアドレス１１４にメールを送ったことにする。まず、メールアドレス１３１はメールアドレス１１２やメールアドレス１１３のような他のメールアドレスに送信していないメールアドレスからメールを受信したことにする。次に、メールアドレス１３３はメールアドレス１１５やメールアドレス１３２のような他のメールアドレスから受信していないメールアドレスにメールを送信したことにする。最後に、メールアドレス１３１はメールアドレス１１４にメールを送信したことにし、メールアドレス１３３はメールアドレス１１４からメールを受信したことにすると、送受信関係が図３のようになり、強連結となる。
【００１８】
送受信関係が強連結になった状態を行列Ａで表す。行列Ａのｉ行ｊ列の成分について、それぞれ１と０で表され、次のような意味を持っている。
【００１９】
【数１】
2008203935.tif 000003
【００２０】
行列Ａのそれぞれの行について、１行目をメールアドレス１３３、２行目をメールアドレス１３１、３行目をメールアドレス１３２、４行目をメールアドレス１１４、５行目をメールアドレス１１１、６行目をメールアドレス１１２、７行目をメールアドレス１１３、８行目をメールアドレス１１５とする。
【００２１】
【数２】
2008203935.tif 000004
【００２２】
行列Ａの推移確率行列を求めるために各列の総和が１になるように正規化する。具体的には、各成分をその成分が属する列の成分の合計値で割る。正規化後の行列をＭとすると，行列Ｍは次のようになる。
【００２３】
【数３】
2008203935.tif 000005
【００２４】
推移確率行列Ｍの固有ベクトルを求める。ペロン・フロベニウスの定理より推移確率行列の固有ベクトルの最大値は１であることを考慮し、次の式を解く。
【００２５】
【数４】
2008203935.tif 000006
【００２６】
ここで、推移確率行列Ｍの拡大係数行列を簡約化するために、行基本変形を施す。簡約化された後の行列の一番右の列が固有ベクトルとなる。
【００２７】
【数５】
2008203935.tif 000007
【００２８】
求められた固有ベクトルを扱いやすい値にするために、列の総和でそれぞれの成分を割り、大きいものから順に並べ替えると以下のようになる。
【００２９】
【数６】
2008203935.tif 000008
【００３０】
多数の送受信関係について固有ベクトルを求めると、大きく５つに分類することが確認できる。図４に固有ベクトルの成分の大きさとその順位の関係を示す。固有ベクトルが大きさものから順に１４０、１４１、１４２、１４３、１４４と分類する。１４０は送受信関係が多く成立する利用者のメールアドレスが該当する。１４１は利用者や利用者以外のメールアドレスと送受信関係を持つメールアドレスが該当する。１４２と１４３は１４５のように一定の値となる。これらはメールを送信するのみで、受信を全くしていないアドレスが該当する。１４４は受信のみしかしていないメールアドレスが該当する。
【００３１】
第１発明について、あるメールが迷惑メールであるかどうか判断する方法を説明する。メールの送信者のメールアドレスの固有ベクトルが、どの分類に属するかを調べる。１４０か１４１か１４４に分類された場合は正当なメールと判断し、それ以外は迷惑メールの疑いがあるものと判断し、判定不能とする。
【００３２】
図１の送受信関係から固有ベクトルを計算した後に、それぞれのアドレスからメールを受信したとすると、次のように判断される。送信者がメールアドレス１１１の場合、１４１に分類されるので正当なメールと判断する。送信者がメールアドレス１１２の場合、１４１に分類されるので正当なメールと判断する。送信者がメールアドレス１１３の場合、１４４に分類されるので正当なメールと判断する。送信者がメールアドレス１１４の場合、１４０に分類されるので正当なメールと判断する。送信者がメールアドレス１１５の場合、１４２に分類されるので判定不能と判断する。
【００３３】
固有ベクトルの計算はメールを受信するたびや一定期間ごとなどに適宜行う。固有ベクトルを計算した後にその大きさによって信頼できるアドレスのリストを図４のように作成する。判断の分岐１５０ではメールアドレスの固有ベクトルが１４０、１４１、１４４に分類されるものを信頼できるアドレスの一覧に加える。一覧を作成した後に迷惑メールであるか判断する際は固有ベクトルを元に判断しなくても、図６の判断の分岐１６０で信頼できるアドレスの一覧で送信者のメールアドレスの有無を調べることによって、迷惑メールであるか判断することもできる。
【００３４】
第１発明の方法は、あるメールについて正当であるか判定不能かの判断をする。迷惑メールであるという判断をする機能がないため、正当なメールを迷惑メールとして判断する誤遮断は起こり得ない。
【実施例２】
【００３５】
第２発明で使用するベイジアンフィルタについて説明する。ベイジアンフィルタはメールを単語に分割し、特徴的な単語の出現頻度によってメールが迷惑メールである確率を求める。迷惑メールである確率が一定の値以上のときにそのメールが迷惑メールであると判断する。
【００３６】
ベイジアンフィルタと第１発明の統合によって迷惑メールであるか判断する方法について説明する。図７において分岐１６０に示すようにベイジアンフィルタと第１発明の統合の前に例外処理を施すことにより、迷惑メールであるかどうかの判断の精度をよくすることもできる。これはメーリングリストやメールマガジンに関連するものは１４２に分類されてしまう可能性が高く、判定不能にされてしまうことになるため、その前に正当なメールと判断する方がよいだろうと考えられるためである。次に、分岐１６１で第１発明の固有ベクトルによる判断を行う。最後に第１発明で判定不能とされたものについて、分岐１６２でベイジアンフィルタによって迷惑メールであるかどうかの判断をする。
【００３７】
ベイジアンフィルタを分岐１６２以外に使用する方法について２つ説明する。第１発明における固有ベクトルの計算は、メールアドレスの数が増えれば増えるほど時間がかかる。そこであるメールについてベイジアンフィルタで迷惑メールであると判断されたとする。そのメールに新規のメールアドレスが使われている場合には、そのメールアドレスを送受信関係に加えないことによって計算時間を短縮することができる。もう１つは、ベイジアンフィルタが迷惑メールである確率を求めることを利用し、２回連続で迷惑メールである確率が閾値を超える送信者のメールについて、迷惑メールであると判断することができる。
【００３８】
事前に用意した正当なメール１１３６通と迷惑メール９９９通に対して迷惑メールであるか判断する実験を行い、ベイジアンフィルタのみを用いる場合と実施例２を用いる場合について比較した。その結果、ベイジアンフィルタの成功数は２０３９通で実施例２では２１０２通であった。６３通について実施例２のみ正確に判断できていた。正当なメールを迷惑メールと判断することについて、ベイジアンフィルタでは４通存在したが、実施例２では０通であった。迷惑メールを正当なメールと判断することについて、ベイジアンフィルタでは１３５通存在したが、実施例２では５０通であった。ベイジアンフィルタのみを用いるよりも、ベイジアンフィルタと実施例１を併用した方が正確に判断することができることを示した。
【００３９】
以上において、本発明を実施例１、２に即して説明したが、本発明は上記実施例１、２に制限されるものではなく、その趣旨を逸脱しない範囲で適宜変更して適用できることはいうまでもない。
【産業上の利用可能性】
【００４０】
本発明の迷惑メールの判別に利用可能である。
【００４１】
従来の手法はあるメールに対して迷惑メールかどうかを判断するためだけに存在した。発明でしようした固有ベクトルは各メールアドレスの他との繋がりの多さに依存するので、受信したメールに含まれるメールアドレスの固有ベクトルが一定以上のときのみ受信通知を表示すれば重要なメールアドレスからのメールはすぐ読み、その他のメールアドレスからのメールは後で読むという活用が出来る点で優れている。
【図面の簡単な説明】
【００４２】
【図１】実施例１で使用する電子メール３通である
【図２】実施例１で使用する送受信の関係である。
【図３】実施例１で使用する補正後の送受信の関係である。
【図４】実施例１で使用する固有ベクトルの分布である。
【図５】信頼できるメールアドレスの一覧の作成の例である。
【図６】迷惑メールであるか判断する方法の例である。
【図７】実施例２における迷惑メールの判断方法である。
【符号の説明】
【００４３】
１００…電子メールの送受信情報
１０１…電子メールの送受信情報
１０２…電子メールの送受信情報
１１１…メールアドレス
１１２…メールアドレス
１１３…メールアドレス
１１４…メールアドレス
１１５…メールアドレス
１３１…仮のメールアドレス
１３２…仮のメールアドレス
１３３…仮のメールアドレス
１４０…固有ベクトルの成分の大きさの分類
１４１…固有ベクトルの成分の大きさの分類
１４２…固有ベクトルの成分の大きさの分類
１４３…固有ベクトルの成分の大きさの分類
１４４…固有ベクトルの成分の大きさの分類
１４５…固有ベクトルの成分の大きさの分類
１５０…固有ベクトルによって信頼できるアドレスか判断する分岐
１６０…送信者のアドレスによって迷惑メールであるか判断する分岐
２００…例外処理による判断の分岐
２０１…固有ベクトルによる判断の分岐
２０２…ベイジアンフィルタによる判断の分岐
【図１】
2008203935.tif 000009
【図２】
2008203935.tif 000010
【図３】
2008203935.tif 000011
【図４】
2008203935.tif 000012
【図５】
2008203935.tif 000013
【図６】
2008203935.tif 000014
【図７】
2008203935.tif 000015