Comments
Description
Transcript
オンライン署名の動的特徴量を用いた 個人認証手法に関する研究
オンライン署名の動的特徴量を用いた 個人認証手法に関する研究 A Study on Biometric Person Authentication Methods Using Dynamic Features of Online Signature 2006 年 2 月 早稲田大学大学院理工学研究科 電気工学専攻 学習型信号・情報処理システム研究 村松 大吾 i 目次 第1章 1.1 1.2 1.3 1.4 序論 研究背景 . . . . . . . . . . . . . . . . . . . . . . . . . . . バイオメトリクス . . . . . . . . . . . . . . . . . . . . . . 本論文の目的と構成 . . . . . . . . . . . . . . . . . . . . 動的署名を用いた個人認証手法(オンライン署名認証) . 1.4.1 データ取得 . . . . . . . . . . . . . . . . . . . . . 1.4.2 前処理 . . . . . . . . . . . . . . . . . . . . . . . . 1.4.3 特徴抽出 . . . . . . . . . . . . . . . . . . . . . . . 1.4.4 登録 . . . . . . . . . . . . . . . . . . . . . . . . . 1.4.5 類似度・距離計算 . . . . . . . . . . . . . . . . . . 1.4.6 モデル構築(学習) . . . . . . . . . . . . . . . . 1.4.7 判定 . . . . . . . . . . . . . . . . . . . . . . . . . 1.4.8 精度評価 . . . . . . . . . . . . . . . . . . . . . . . 第2章 2.1 2.2 2.3 2.4 Dynamic Time Warping を用いた手法 はじめに . . . . . . . . . . . . . . . . . . . アルゴリズム . . . . . . . . . . . . . . . . 実装 . . . . . . . . . . . . . . . . . . . . . 実験 . . . . . . . . . . . . . . . . . . . . . 2.4.1 実験設定 . . . . . . . . . . . . . . . 2.4.2 実験結果 . . . . . . . . . . . . . . . まとめ . . . . . . . . . . . . . . . . . . . . 2.5 第 3 章 隠れマルコフモデルを用いた手法 3.1 はじめに . . . . . . . . . . . . . . . . 3.2 アルゴリズム . . . . . . . . . . . . . 3.2.1 量子化 . . . . . . . . . . . . . 3.2.2 モデル構築(学習) . . . . . 3.3 実装 . . . . . . . . . . . . . . . . . . 3.3.1 モデル . . . . . . . . . . . . . 3.3.2 学習(パラメータ決定) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 2 7 9 11 13 15 19 19 19 19 20 . . . . . . . 27 27 27 31 33 33 37 37 . . . . . . . 47 47 48 49 49 51 51 53 ii 3.4 3.5 3.6 3.3.3 認証 . . . . . . . . . . . . . 実験 . . . . . . . . . . . . . . . . . 3.4.1 実験設定 . . . . . . . . . . . 3.4.2 実験結果 . . . . . . . . . . . 隠れマルコフモデルと DTW の関係 まとめ . . . . . . . . . . . . . . . . 第 4 章 非線形判別法 4.1 はじめに . . . . . . . . . . . . 4.2 アルゴリズム . . . . . . . . . 4.2.1 モデル構築(学習) . 4.2.2 認証 . . . . . . . . . . 4.3 実装 . . . . . . . . . . . . . . 4.3.1 学習データ . . . . . . 4.3.2 モデル . . . . . . . . . 4.3.3 学習 (パラメータ推定) 4.3.4 認証 . . . . . . . . . . 4.4 実験 . . . . . . . . . . . . . . 4.4.1 実験設定 . . . . . . . . 4.4.2 実験結果 . . . . . . . . 4.5 まとめ . . . . . . . . . . . . . 第 5 章 ユーザ共通 Fusion モデル 5.1 はじめに . . . . . . . . . . . . 5.2 アルゴリズム . . . . . . . . . 5.2.1 モデル構築(学習) . 5.2.2 認証 . . . . . . . . . . 5.3 実装 . . . . . . . . . . . . . . 5.3.1 学習データ . . . . . . 5.3.2 モデル . . . . . . . . . 5.3.3 学習 (パラメータ決定) 5.3.4 認証 . . . . . . . . . . 5.4 実験 . . . . . . . . . . . . . . 5.4.1 実験設定 . . . . . . . . 5.4.2 実験結果 . . . . . . . . 5.5 まとめ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 55 55 55 56 58 . . . . . . . . . . . . . 59 59 59 62 66 67 67 67 68 71 72 72 72 72 . . . . . . . . . . . . . 77 77 80 81 83 83 83 84 84 84 84 84 87 87 iii 第 6 章 経時変化への対応 6.1 はじめに . . . . . . . . . . . 6.2 アルゴリズム . . . . . . . . 6.2.1 パラメータ更新法 . . 6.2.2 リファレンス更新法 6.3 実装 . . . . . . . . . . . . . 6.3.1 パラメータ更新法 . . 6.3.2 リファレンス更新法 6.4 実験 . . . . . . . . . . . . . 6.4.1 実験設定 . . . . . . . 6.4.2 実験結果 . . . . . . . 6.5 まとめ . . . . . . . . . . . . 第 7 章 総括 7.1 今後の展望 7.2 今後の課題 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 97 98 98 102 104 104 105 105 105 106 107 109 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 謝辞 113 参考文献 115 研究業績 121 1 第1章 1.1 序論 研究背景 ”誰に権利があるのか”、これが個人認証を行う目的の一つである。例えば自宅の 扉の開錠、特定の施設への入退場、コンピューターへのアクセス、情報の閲覧、ク レジットカード・キャッシュカードの使用等さまざまな場面において、それを行う権 利があるかないかを判断する必要が生じる。これまで権利有無の判断は鍵や ID カー ド等の ”所有物 ”によって行われてきた。”所有物 ”を持っている人物が正規の所有 者と一致しているのかを確認することなく、”所有物 ”を持っていることが、その人 物に権利のあることを証明するものであった。所有物により判断を行っていること より、これらの手法は ”What you have ”の手法と言われる。また暗証番号やパス ワード等の ”知識 ”を用いて、その ”知識 ”を持っているかどうかを確認し権利の 有無を判断する方法も用いられている。銀行の ATM でキャッシュカード利用時に 暗証番号を入力する方法がその例である。これは知識によって判断を行っているの で、”What you know ”の手法と言われる。いずれの場合も、”所有物 ”や ”知識 ”を 持っているというだけで、その人物が誰であろうと、権利のある人物であると判断 してきたのである。しかしながら近年これら仕組みに限界が生じてきた。クレジッ トカードやキャッシュカードの不正利用、データへの不正アクセス等が深刻な社会問 題になってきている。これはカードの盗難やスキミング、またパスワードが破られ てしまうことで、カードが不正に利用され、情報への不正アクセスを許してしまっ たのである。それら不正利用を許してしまった原因を考えてみると、1 つの点に気 がつく。それは ”所有物 ”もしくは ”知識 ”を持っている人物が権利のある人物と 一致しているのかを確認していない、ということが大きな原因ではないかと。 権利は本来、個人に与えられるものであり、その個人であることを確認しなけれ ば権利の有無を判断できない。しかしながら既存のシステムでは、ある ”所有物 ” や ”知識 ”を持っている人物に権利を与えてしまっているのである。表面的には、そ れらの ”所有物 ”や ”知識 ”を持っていることでその権利ある個人であることを確 認していたかのように見えるが、実際は持っている人物が誰であっても、単にその ” 所有物 ”や ”知識 ”を持ってさえいれば権利が与えられてしまうのである。従い、単 に ”所有物 ”を盗んだり、”知識 ”を見破ったりすることで、簡単に他人になりすま すことが出来、その権利を行使出来たのである。 2 第 1 章 序論 このような背景にあり、最近では ”所有物 ”や ”知識 ”に頼るのではなく、その 人物が ”誰なのか ”、個人を特定、確認することで権利の有無を判断しようという 手法が利用されはじめた。これは個人が誰なのかを特定、確認し権利の有無を判断 しているので ”What you are ”の手法と言われている。そしてこの個人を確認する ことが個人認証である。主張している人物と、実際の人物が一致しているかどうか を確認するのである。 ではどのように個人を確認すればよいのか、これは非常に重要な問題である。この 一つの解決策が生体特徴を用いて個人を確認するバイオメトリクスである。人間の 生体的特徴の中には個人を特定できる、個人固有の特徴が存在すると言われている。 バイオメトリクスはこれらの個人固有の特徴に注目し、個人認証を行う手法である。 1.2 バイオメトリクス バイオメトリクスは、人間の生体的特徴を用いて個人認証を行う手法のことであ る。生体的特徴といっても、人間にはさまざまな特徴があるため、どの特徴を利用す るかにより手法が分けられる。バイオメトリクスの目的は個人を特定、確認するこ とであるため、当然ながらその特徴に個人性がなければならない。それ以外にもバ イオメトリクスに必要な条件はいくつか挙げられている。一般にバイオメトリクス に適している生体特徴とは以下の条件を満たすものであると言われている [18][56]。 • 普遍性(Universality) :全ての人が持っている特徴であること • 特殊性、唯一性(Distinctiveness, Uniqueness) :万人不同、他人と特徴が異な ること • 永続性(Permanence) :終生不変、時間の経過とともに変化しないこと • 収集可能性(Collectability) : 数値的にはかることが出来ること(客観的デー タに置き換えられること) またこれらに加え、安全性、経済性、社会的受容性、さらにバイオメトリクス特有 の問題である認証精度も考慮される必要がある [67]。さらに認証精度だけからはわ からない盗難や偽造に強いという条件も必要である。現在バイオメトリクスで利用 されている特徴は必ずしも上記全ての条件をクリアしているものばかりではないが、 多くの条件をクリアしているものである。上記条件の中で特に認証精度に関しては 我々研究者の努力により向上させることが出来る点であり、更なる努力が期待され るところである。 1.2. バイオメトリクス 3 図 1.1: バイオメトリクスの分類 現在バイオメトリクスに用いられている特徴は大きく分けて 2 つのグループに分 けることが出来る(図 1.1)。一つは身体的特徴を用いているもの、もう一つは行動 的特徴を用いているものである。身体的特徴は指紋、掌形、顔や虹彩等が用いられ る。行動的特徴としては、署名や声紋、歩行やキーストロークを用いた手法等が提 案されている。現状それぞれの手法には長所短所が存在し、完全な手法の確立には 至っていない。またセキュリティ上一つの手法のみに頼ってしまうことはリスク管 理の観点からもあまり好ましいことではない。さらに想定される状況によって好ま しい手法が異なってくる為、様々なバイオメトリクス手法の更なる研究が望まれる ところである。 バイオメトリクスは生体特徴を用いて個人を特定、確認する手法であるが、その 目的には以下の 2 つが考えられる [18]。 • ある特徴が与えられたとき、それが誰によってもたらされたものなのかを決定 する問題(識別 (Identification)) • ある ID と特徴が与えられた時に、その特徴がその ID を事前に登録した人物 と同一人物によって与えられたものなのかを決定する問題(確認、検証 (Verification)) 4 第 1 章 序論 例えば生体特徴として署名を用いた場合には、前者は筆者識別(Writer Identification)、後者は署名認証(Signature Verification) などと呼ばれる [47]。 上記二つの問題の違いは以下の通りである。 ある人物 X により生体特徴 f eature が与えられたとき、事前に登録されている N 人の人物の生体特徴 refid , id = 1, ...., N と比較し、類似度 Score(f eature, refid ) も しくは距離 Dist(f eature, refid ) を計算する。事前に id の生体特徴を登録した人物 を Yid とする時、識別問題においては人物 X について以下のように決定を行う。 X = YID (1.1) ID = argmax Score(f eature, refid )(類似度を用いた場合) id ID = argmin Dist(f eature, refid )(距離を用いた場合) id また確認(検証)問題においては、ある人物 X が ID を申告し、それを証明する ために生体特徴 f eature を提出する。そして、生体特徴 f eature を提出した人物 X が、事前に ID の名前で生体特徴 refID を登録した人物 YID と同一人物なのかを以 下のように決定する。 X = YID (Accept) if Score(f eature, refID ) ≥ T hreshold X 6= YID (Reject) if Score(f eature, refID ) < T hreshold (1.2) (類似度を用いた場合) (1.3) X = YID (Accept) if Dist(f eature, refID ) ≤ T hreshold X 6= YID (Reject) if Dist(f eature, refID ) > T hreshold (距離を用いた場合) ここで生体特徴 f eature は指紋や顔の特徴であったり、署名の特徴であったりす る。この特徴 f eature の違いが、バイオメトリクスのモダリティの違いである。主 なモダリティは以下の通りである。 指紋 指紋の紋様 (図 1.2) が万人不同、生涯不変の特徴である言われているため、これ らの特徴を用いて認証を用う。以前は犯罪捜査に用いられるということで、抵抗の ある人も多かったが、近年携帯電話やパソコンに搭載されることにより、若者の抵 抗は小さくなってきている。現在最も利用されているバイオメトリクスである。 1.2. バイオメトリクス 5 虹彩 虹彩とは黒目の内側、瞳孔より外側のドーナツ状の筋肉質の部分のことである。 瞳孔から外側に向かって出来るしわ模様に個人性があるということで認証に用いら れる(図 1.3)。この特徴も万人不同、生涯不変の特徴と言われ、2 歳位でその形が 決まると言われている。同じ人間でも左右の目では異なり、双子であってもその模 様は異なる。 図 1.2: 指紋のマニューシャ 図 1.3: 虹彩 顔 個人の特徴として、顔を用いる認証手法であり、人が日常生活で自然と行ってい る認証手法である。遠隔地からの撮影によって認証を行えるという利点もあるが、 帽子やメガネによる影響、照明条件等による影響、顔の向きなどが認証精度に影響 を与える。また全く同一の顔は存在し得ないと思われるが、双子や兄弟姉妹で似て いる場合には認証が難しい。 耳介 人間の耳の軟骨の凹凸形状を用いて認証を行う手法である。耳の形は多少変化す るが、不変と考えられる範囲内の変化であると言われている。ただし形状は遺伝的 側面によることろがあり、親子、兄弟姉妹等で似てしまう可能性もある。 掌形 米国航空宇宙局において各宇宙飛行士に最適な手袋を作ろうとして、掌の大きさ、 各指の長さを測定したところ、全員の掌形、指の長さがわずかに違っていたことか 6 第 1 章 序論 ら掌形が個人を識別できる手段と考えられるようになった。指の長さや幅、厚さ等 が特徴として用いられる。 静脈 手のひらの静脈を用いたり、指の静脈を用いたりして認証を行う手法である。成 長と共に大きくはなるが静脈パターンは生涯変わらないと言われている。静脈は体 内にある、目に見えない情報である為、偽造が困難であると言われている。また血 流により生体確認を行う技術もある。最近では銀行の ATM に採用され、注目され ている手法である。 声紋 人が話す声を用いて認証を行う手法であり、音声のサウンドスペクトログラム(声 紋)やこれと等価な音声特徴を用いる。電話等を用いることで遠隔地でも認証をす ることが可能である。認証方法としてはテキスト従属型、テキスト独立型、テキス ト指定型等がある。 署名 人間の筆記する文字や、筆記する動作を用いて認証を行う手法であり、筆記され た後の署名形状のみを用いるオフライン署名認証と、筆記する動作特徴も含め認証 を行うオンライン署名認証がある。 手書き文字による認証には署名だけではなく、筆記するテキストに依存しない、自 由に筆記したもので認証を行うテキスト独立型やシステム側が筆記する文字を指定 するテキスト提示型 [62] も研究されている。 歩行 人の歩き方に着目し、その特徴に個人性があるとういうことより認証に用いられ ている。人の歩き方をビデオカメラで撮影し、認証を行う。顔認証と同じく遠隔地 からの認証が可能である。 1.3. 本論文の目的と構成 7 キーストローク 人がキーボードを打つ際に、その動作には個人性があるということより、キーボー ドを打つリズムや持続時間、タイピングエラーの頻度等が特徴として用いられる。 この他にも歯を用いた認証 [17] や DNA[15]、反射 [1] 等の手法も研究されている。 また、複数のモダリティを組み合わせ、認証を行うマルチモーダル手法も研究され ている。 1.3 本論文の目的と構成 本論文ではバイオメトリクスの中で行動的特徴を用いたオンライン署名認証に焦 点をあて、高精度なオンライン署名認証アルゴリズムを構築することを目的とする。 本論文では署名の形状のみならず、それを筆記する際の動的特徴も利用するため、 本論文ではこれ以降それらを含めた署名をオンライン署名(動的署名)と呼ぶ。 オンライン署名認証では、入力されたオンライン署名が事前に登録されたオンラ イン署名と ”同じ ”かどうかで判別を行うのではなく、入力されたオンライン署名が 事前に登録されているオンライン署名とどの程度 ”似ているか ”で判断を行う。本 論文ではより精度の高いアルゴリズムを構築するために、以下の点に着目し、研究 を行った。 • オンライン署名の ”似ている ”度合いをどのように定義するのか? • ”似ている ”度合いを用いてどのように判別を行うのか? • 学習データの制約をどのように対処するのか? • 署名の経時変化をどのように解決するのか? 本論文では上記 4 つの問題に対する我々のアプローチの提案を行う。 本論文の構成は以下の通りである。まず本章の残りの章で、オンライン署名認証 の一般的な説明を行う。 第二章「Dynamic Time Warping を用いた手法」では、オンライン署名の複数特 徴量から Dynamic Time Warping を用いて距離を計算し、認証を行う手法を説明す る。またデータベースを用いた提案手法の認証実験結果についても報告する。 第三章「隠れマルコフモデルを用いた手法」では署名間の類似度を計算するに当 たり、個人毎に署名筆記モデルを構築し、そのモデルの尤度を類似度とし、認証を 8 第 1 章 序論 行う手法の説明を行う。筆記するという動作から得られる署名特徴を確率モデルか らの出力とみなし、隠れマルコフモデル(Hidden Markov Model(HMM))により モデル化を行う。HMM のモデルには Lef t − Right モデルを用い、単純な One-shot アルゴリズムによりパラメータを決定した。本章では提案手法の説明を行うと共に、 前章で説明した Dynamic Time Warping アルゴリズムとの関連についての考察も行 う。 第四章「非線形判別法」では第二章で定義した距離を用い、より高精度の認証ア ルゴリズムを実現するための手法を提案する。定義される距離空間での本人によっ て筆記された署名(真筆)と他人によって筆記された署名(偽筆)の判別面を非線 形にすることで精度を向上させる手法である。本手法ではオンライン署名から抽出 される複数の特徴量から複数の距離を計算、これらを三層パーセプトロンに入力す ることで非線形判別を行う。 三層パーセプトロンのパラメータ推定には誤差逆伝播法などのアルゴリズムが用い られることが多いが、オンライン署名認証の問題では学習に用いることが出来るデー タ数が極めて少ないために、パラメータを一点推定することは好ましくないことも 多い。そこでベイズ的枠組みにより、パラメータを確率変数と考え、その事後分布 を計算する。その上で、与えられた署名が真筆である確率を、パラメータの事後分 布を用いて積分する事により判別を行う。 しかしながら一般に三層パーセプトロンのパラメータ事後分布は複雑な形状をして いる事が多く、解析的積分計算は非常に困難である。本章ではマルコフ連鎖モンテ カルロ(Markov Chain Monte Carlo(MCMC))法を用いた。MCMC 法ではパラ メータの事後分布からパラメータのサンプルを採取し、そのサンプルを用いて積分 計算を近似的に行う。本章では非線形判別法の説明とともに、MCMC 法についての 説明も行う。また提案手法の実験結果についても報告する。 第五章「ユーザ共通 Fusion モデル」では、全てのユーザ共通の Fusion モデルを 構築し、認証精度向上のための手法の提案を行う。Fusion とは複数の特徴量やスコ ア、判定を組み合わせることで、バイオメトリクスの認証精度を向上させようとい う手法であり、単純な多数決を用いたものから複雑な Fusion モデルを構築するもの など、様々な方法が研究されている。本研究で提案する手法はオンライン署名の複 数の特徴から計算した距離を組み合わせ、認証するものである。本研究では全ての ユーザ共通の Fusion モデル(ユーザ共通 Fusion モデル)を構築することとした。 オンライン署名認証においてはモデル学習に必要な学習データの数と種類が制限さ れてしまうという問題が存在する。個人毎に多数の真筆を集めることが困難なだけ でなく、個人毎の偽筆を集めることが非常に困難なためである。従いユーザ毎にモ デルを構築する場合は良いモデルを構築することが容易ではない。そこで、本研究 ではユーザとは関係のない署名を利用し Fusion モデルを構築することを提案する。 1.4. 動的署名を用いた個人認証手法(オンライン署名認証) 9 実際にはユーザとは関係のない多数の署名データ(真筆、訓練偽筆)を用意し、そ れを用いて、真筆なのか、偽筆なのかを複数の距離から判断を行う Fusion モデルを 構築した。本研究ではモデル学習には AdaBoost アルゴリズムを用い、多数の弱い モデルから強いモデルを構築し認証実験を行った。提案アルゴリズムと共に提案手 法の認証実験結果についても報告する。 第六章「経時変化への対応」では、オンライン署名認証を含む、行動的特徴を利 用したバイオメトリクス共通の問題である、経時変化の問題に対する解決策の提案 を行う。署名を用いた手法においては時間が経過するとともに個人の筆記の癖が変 わってしまう可能性があり、それが認証精度の劣化につながる。本研究では二つの アプローチから経時変化への対応策を提案する。一つは真筆、偽筆の判別を行う判 別モデルのパラメータを更新させていく方法(パラメータ更新法)、もう一つは距 離計算を行う際に基準となるリファレンス署名を入れ替えていく方法(リファレン ス更新法)である。経時変化への対応を考えた場合、入力された署名が真筆なのか 偽筆なのかのラベルは与えられない。従い、どちらの手法の場合でも“ 準教師あり 学習 ”の手法を利用した。本研究では第四章で説明した非線形判別法にパラメータ 更新法を適用させたもの、及び第五章で提案したユーザ共通 Fusion モデルにリファ レンス更新法を適用させたものの認証実験を行ったので、アルゴリズムと共に提案 手法についての認証実験結果についても報告を行う。 第七章「総括」では、本研究の成果をまとめるとともに、今後の展望、課題につ いてまとめる。 1.4 動的署名を用いた個人認証手法(オンライン署名認 証) オンライン署名認証では、ユーザは自分が誰であるのかを示す ID と共に自分が その ID の人物であることを証明するために署名を筆記する。システムはその ID と 署名を受け取り、署名を筆記した人物が申告している ID の人物と一致するかどうか を、署名の動的特徴を用いて確認するのである。オンライン署名認証は筆記した人 物が本人(Genuine) か他人が本人を装っている(Forger)かを判別する二クラス問 題であり、筆記された署名が本人署名 (真筆 Genuine) か他人署名(偽筆 Forgery) か を判別する二クラス問題とも言える。 ID 登録している人物は事前に本人署名をシステムに登録している為(本論文では 登録された署名をリファレンス署名という)、システムは入力された署名と申請さ れた ID のリファレンス署名を比較し、判別を行う。しかし以下の理由によりオンラ イン署名認証は簡単に実現出来ない。 10 第 1 章 序論 • 本人が全く同一の署名を筆記することが出来ない オンライン署名は筆記するという行動の結果、作成させる特徴である為、仮に 本人であっても全く同じ署名を筆記することが出来ない。従い、事前に登録さ れた署名 (リファレンス署名) と入力された署名が一致するかどうかで判別す るのではなく、事前に登録された署名と入力された署名がどの程度 ”似ている か ”を調べ、その似ている度合いにより、本人なのか他人が本人になりすまし ているのかを判断することになる。 本人の筆記する署名は筆記する毎に少しずつ異なり、そのバラツキは本人間バ ラツキ(Intra-parson(class)variability)と言われる。それに対して本人署名 (Genuine) と他人署名 (Forgery) の間のばらつきは本人他人間バラツキ(Interperson(class) variability )と呼ばれる [16][47]。もしも本人間バラツキと本人 他人間バラツキが重ならない場合(図 1.4)システムは完全に本人署名なのか、 本人署名を真似た他人署名なのかを判別することが出来るが、一般的にその 一部が重なってしまい(図 1.5)、完全に 2 つのクラスを分離することが出来な い。従い、この重なりが小さくなるように、”似ている ”度合いを定義する必 要がある。また同じ ”似ている ”度合いを用いた場合でも、2 つのクラスをど のように分離するかによって、その精度は大きく変わってしまう。それゆえ、 どのようにこのクラスを分離するかも非常に重要なポイントとなる。 • 学習データの数と種類が限定される オンライン署名認証問題は筆記された署名特徴を用いて、筆記した人物が申告 された ID を事前に登録した人物と同一人物なのか、それとも他人がなりすま しているのかを判別する二クラス問題であるが、学習データとして利用できる のは一般には数個の本人によって書かれた本人署名のみである。実際のアプリ ケーションを考えた場合、ユーザが多数の署名を喜んで提供してくれることは 非常に考えにくく、3∼5 個が現実的な数と思われる(多数データの提供を依 頼した場合は、その作業の単調さゆえに、学習データの質が悪化してしまうと いう意見もある [37])。またなりすまし者が事前に入力署名を提供してくれる ことなどありえず個人毎に署名が異なるオンライン署名認証においてユーザ 毎になりすまし署名を収集することは現実的ではない。従い一般的な認証アル ゴリズムにおいては、各ユーザの数個の本人署名のみが学習データとして利用 可能である。 • 本人署名が時間とともに変化していってしまう オンライン署名のような行動的特徴を用いている場合は、筆記する度に署名 がばらついてしまうことは前述の通りであるが、それに加え、時間の経過とと もに、筆記する癖やタイミングが変わってしまい、それが精度の劣化につなが る [59]。これらの変化によるバラツキは Inter-session Variability と呼ばれてお り、何らかの対策を取らないと署名認証アルゴリズムの精度は劣化してしまう 1.4. 動的署名を用いた個人認証手法(オンライン署名認証) 11 ことが予想される。 これらの問題を解決することが、オンライン署名認証アルゴリズムに求められて いる。 Threshold Threshold Forgery Genuine Genuine Forgery 図 1.4: 本人間バラツキと本人他人 図 1.5: 本人間バラツキと本人他人 間バラツキが重ならない場合 間バラツキが重なってしまう場合 オンライン署名認証のアルゴリズムにはいくつかの方法が考えられるが、一般的に アルゴリズムは図 1.6 に示すように大きく分けると 2 つのフェーズ、学習(Learning) フェーズと認証(Verification)フェーズに分けることが出来、それらのフェーズは (a) データ取得、(b) 前処理、(c) 特徴抽出、(d) リファレンス登録、(e) 類似度・距離 計算、(f) モデル構築(学習)(g) 判定、の複数のステップから構成される。 学習フェーズは、事前に本人によって入力されたデータをリファレンス署名とし て登録したり、類似度計算のためのモデルを構築(学習)したり、判別の為のモデ ル構築をしたりするフェーズである。これに対し、認証フェーズは入力されたオン ライン署名とリファレンス署名を比較、類似度や距離を計算し、その値をしきい値 と比較し、判定を行うフェーズである。 1.4.1 データ取得 認証を行うためには、何らかのデバイスを用いてデータを取得し、数値化を行う 必要がある。オフライン署名を用いる場合はスキャナーやカメラを用いて筆記され た後の署名形状からデータを取得するが、オンライン署名を用いる場合は、署名筆 記時のペンの動き等の時系列データを利用するため、署名を筆記する動作と同時に データを取得する。データ取得で一般的な方法はタブレットとペンを用いる方法で ある。タブレットには図 1.7 のような独立のタブレットタイプ、タブレット PC(図 1.8)のようにディスプレーに直接筆記出来るタイプがある。 12 第 1 章 序論 図 1.6: オンライン署名認証の大まかな流れ またタブレットを用いる以外の方法としては特殊のペンを用いて署名データを取得 する方法 [30][57] やペンの動きをビデオカメラで撮影し、データを取得する方法 [36] 等も提案されている。 取得データ オンライン署名認証において取得出来るデータは用いるデバイスによって異なる。 一般的に良く用いられるタブレット1 とペンを用いた場合、取得される署名データ (図 1.9,1.10)は • ペン位置座標 (x,y) (Position) • 筆圧 (Pressure) • ペン仰角 (高度) (Altitude) • ペン方位角 (Azimuth) 及び署名筆記時間である。タブレット PC 等を用いた場合は、ペン仰角(高度)や ペン方位角は取得することが出来ない。また PDA 等ではペン筆圧ではなく、ペン アップダウン情報のみが取得可能である。得られるデータを表 1.1 にまとめる。 1 商品名:(株)ワコム Intuos シリーズの場合 1.4. 動的署名を用いた個人認証手法(オンライン署名認証) 図 1.7: タブレットとペン (商品名: (株)ワコム Intuos2 i-420) 13 図 1.8: タブレット PC とペンディ スプレー(商品名(左) (株)ワコム 液晶ペンタブレット PL-550、(右) (株)東芝 dymabook R10) 表 1.1: 各デバイスにより取得されるデータ デバイス 取得可能な情報 タブレット ペン位置座標 (x, y)、筆圧、ペン方位角、ペン高度 タブレット PC ペン位置座標 (x, y)、筆圧 PDA ペン位置座標 (x, y)、ペンアップダウン情報 ビデオカメラ ペン位置座標 (x, y) 取得されるデータは等間隔でサンプリングされたものとなるため、実際に取得され るデータは x = x(n∆t), n = 1, ..., N (1.4) である。ここで ∆t はサンプリング時間であり、100Hz でサンプリングされた場合 は ∆t = 0.01 秒である。取得されるデータと、その軌跡を図 1.11-1.13 に示す。 1.4.2 前処理 ユーザにより筆記された署名はサイズがバラバラであったり、回転していたりと いうことがありえる。同じ条件下(枠のサイズ固定、イスとタブレット位置の固定 等)で筆記された署名であれば、署名の大きさの違いや回転(署名の傾き)は個人 性の一部とみなすことが出来る。しかしながら、個人性によらない、外的要因によ る場合もある。その場合にはサイズの補正や回転補正が必要となる。 14 第 1 章 序論 図 1.9: タブレットから取得出来るデータ 図 1.10: 筆記された署名の形状(上)と取得される署名データ (x, y)(下) サイズ補正は例えば以下のように行う。まず取得された署名データの位置座標に おいて、X、Y の最小値と最大値 xmin 、xmax 、ymin 、ymax をそれぞれ求める。そし て以下の式によりサイズの補正を行う。 x(t) × Cx xmax − xmin y(t) y(t) = × Cy ymax − ymin x(t) = (1.5) (1.6) ここで Cx 、Cy はスケールパラメータである。 またデータによってはデータの取り得る範囲が異なることもあり、複数のデータ ベースを用いる際には、サイズの補正とともに、データの範囲の補正も必要になる 場合があるので、注意が必要である。 1.4. 動的署名を用いた個人認証手法(オンライン署名認証) 15 300 x(t) y(t) 200 100 0 time 図 1.11: ペン位置 (x(t), y(t)) 1500 p(t) 1000 500 0 time 図 1.12: 筆圧 p(t) 200 φ (t) 150 ψ(t) 100 50 0 time 図 1.13: ペン仰角 φ(t) とペン方位角 ψ(t) 1.4.3 特徴抽出 どのような特徴を用いるかは認証アルゴリズムを構築する際には非常に重要な点 である。どのような素晴らしいアルゴリズムを構築したとしても、用いる特徴が有 効でなければ、その能力を発揮することが出来ない。署名は従来、筆記された署名 や文字に個人性がある、という理由から契約書やクレジットカードの認証時に用い られてきた。オンライン署名認証では、この署名の形のみならず、署名を筆記する 際の行動的特徴、筆圧やペンの動き等も含めて複数の特徴を取得する。取得出来る データは用いるデバイスにより大きく異なり、前述した通り特殊のデバイスを開発 すれば、特殊のデータを取得することも可能である [30][57]。しかし、すでに普及し ているデバイスを利用出来ることもオンライン署名認証の一つの利点であることよ り、本論文では普及し用いられているタブレットとペンで取得出来るデータを対象 に研究を行った。 16 第 1 章 序論 取得データを処理し、有効と思われる情報に変換したものを本論文では特徴と呼ぶ。 取得データが有効な情報の場合はそのまま特徴として利用している。 オンライン署名では署名を筆記する際に得られる情報を取得し、それを加工して オンライン署名の特徴として用いている。 また取得されたデータを変換、加工することによりさらに多数の特徴を抽出するこ とが可能となる [27]。 オンライン署名認証は用いる特徴により、そのアルゴリズムが 2 つに分けられる。 パラメータ法(Parameter-based)と関数法(Function-based) である [47]。この 2 つ の違いは用いるオンライン署名をどの様に表現するか、に関係している。パラメー タ法の場合はオンライン署名を signature = (paramater1 , paramete2 , ..., parametarN ) (1.7) とオンライン署名を N 次元のパラメータベクトルとして表現し、比較を行う方法で ある。この方法では筆記された署名をデータから再構築することは出来ない。 それに対し関数法では signature = (f unc1 (t), f unc2 (t), ...., f uncN (t)), t = 1, ..., T (1.8) とオンライン署名を時間や空間の関数として表現する方法である。 パラメータ法の場合、例えばパラメータとして署名の筆記時間、ペンの平均速度、 ペンアップ回数やペンアップ‐ペンダウンの時間比、中心線を越えた回数等が用い る。これに対し関数法では特徴として、例えばペン位置座標や筆圧等を時間の関数 として用いる。これらの特徴を表 1.2 にまとめる。 1.4. 動的署名を用いた個人認証手法(オンライン署名認証) 17 表 1.2: オンライン署名認証に用いられる特徴 パラメータ法 (Parameter-based) 関数法 (Function-based) 特徴 筆記時間、ペンアップ時間、ペンダウン時間、ペ ンアップ‐ペンダウン時間比、署名の縦横比、重 心位置、中心線をペンが越えた回数、ストローク 数、署名の全長、平均速度、最大速度 etc. ペン位置 x 座標、ペン位置 y 座標、ペン相対方向 (ベクトル方向)(図 1.14)ペン相対距離 (ベクト ル長さ)(図 1.15)、ペン速度(図 1.16)、ペン速度 (x 方向)(図 1.17)、ペン速度 (y 方向)(図 1.17)、 ペン加速度、ペン加速度 (x 方向)、ペン加速度 (y 方向)、ペン筆圧(図 1.12)、ペン筆圧速度 (差分)、 ペン筆圧加速度、ペン方位角(図 1.13)、ペン仰 角(図 1.13)、ペン方位角差分、ペン仰角差分 etc. 18 第 1 章 序論 5 θ(t) 0 -5 -10 -15 time 図 1.14: 重心からみたペンの方向 θ(t) 150 f(t) 100 50 0 time 図 1.15: 重心からペン位置までの距離(長さ)f (t) 40 |v(t)| 30 20 10 0 time 図 1.16: ペン速度 |v(t)| 40 vx(t) 20 0 -20 -40 time 図 1.17: ペン速度 x 方向 vx(t),y 方向 vy(t) vy(t) 1.4. 動的署名を用いた個人認証手法(オンライン署名認証) 1.4.4 19 登録 提出された署名が本人によって筆記されたものなのか、他人が本人になりすまし て筆記したものなのかを判断するために、事前に登録されたリファレンス署名と入 力された署名を比較することが前提となっている。従い全てのユーザは事前にリファ レンス署名用に複数の署名を登録し、システムがリファレンス署名用に入力された 署名からリファレンス署名の選択や、代表的なテンプレートの作成を行う [32]。 リファレンス用に登録される署名は多く収集出来ることが望ましいが、現実的には、 数個と考えられる。 本論文ではリファレンス署名用に登録される署名数が少ないことを前提とし、それ らの署名からリファレンス署名を選択、作成するのではなく、登録された全ての署 名をリファレンス署名として用いることとした。 1.4.5 類似度・距離計算 提出された署名が本人によって筆記されたものなのか、他人が本人になりすまし て筆記したものなのかを判断するためには、提出された署名と事前に登録されてい るリファレンス署名を比較し、その似ている度合いを数値化する必要がある。この 似ている度合いを数値化するステップが類似度・距離計算ステップである。様々な 手法が提案されているが、オンライン署名認証においては動的時間伸縮(Dynamic Time Warping (DTW))[49][50][52] を用いて距離を計算する手法 [16][19][37][41][53] や隠れマルコフモデル(Hidden Markov Model (HMM))[48] を用いて類似度を計算 する手法が多く提案されている [6][9][20][38][59]。 1.4.6 モデル構築(学習) 署名間の距離や類似度を求めた後、これらをモデルに入力し、最終スコアを計算 することがある。例えば近年盛んに研究されている Fusion[23][51] という手法は複数 の特徴やスコア、判定結果を組み合わせることで、より精度の高いアルゴリズムを 構築する手法であるが、これらを実現する為にパラメータを持ったモデルを用いる ことがある。本論文においてモデル構築(学習)はこのモデルのパラメータを推定 し、モデルを構築するものである。 1.4.7 判定 類似度・距離計算ステップにて計算されたスコアや距離、モデルからの出力スコ アを用いて提出された署名 Qsig が本人によって筆記された本人署名 (Genuine) なの 20 第 1 章 序論 か、他人が本人になりすまして筆記した他人署名 (Forgery) なのかを判定するステッ プである。判定法は距離 Dist を用いている場合は ( Genuine if Dist ≤ T hreshold Qsig = (1.9) F orgery if Dist > T hreshold また類似度 Score を用いる場合や距離を Fusion モデルに入力し、Score を得る場合 には ( Genuine if Score ≥ T hreshold Qsig = (1.10) F orgery if Score < T hreshold と行われる。ここで T hreshold はしきい値と呼ばれる値である。筆記された署名 が本人署名(Genuine)であると判別されるということは、その署名が筆記した人物 が正規の ID の人物であると判定することであり、他人署名(Forgery)と判別され た場合は、その署名を筆記した人物をなりすまし者であると判定することである。 この判別に用いるしきい値をどのように決定するかは、実際にアプリケーションと して用いる際には非常に重要である。このしきい値はユーザ毎に設定することが出 来れば、認証精度を向上させることが出来るとの報告がある [9][16]。 1.4.8 精度評価 提案したアルゴリズムの精度を客観的に知るためには、精度評価を行う必要があ る。精度評価を行うためには、評価指標と評価方法が必要となるため、ここではこ の 2 つについて説明を行う。一般にオンライン署名認証においての精度評価は以下 の 2 つのエラーが基本となる • タイプ 1 エラー(Type I Error (False Reject)): 本人であるにもかかわら ず他人として拒否してしまう間違い。署名認証について言えば、本人の筆記し た署名(真筆、Genuine)にもかかわらず、その署名を他人がなりすまして筆 記し署名(偽筆、Forgery)として判定してしまう場合がこれにあたる。本人 であるにもかかわらず拒否されてしまうのは、バイオメトリクス特有のエラー である。 • タイプ 2 エラー(Type II Error(False Accept)): 他人を誤って本人として 受け入れてしまう誤り。署名認証について言えばなりすまし者が筆記した署名 にもかかわらず本人の筆記した署名(真筆)として受け入れてしまう誤りがこ れにあたる2 。 2 暗証番号を例に取ると、4 桁の暗証番号は 0000∼9999 までの 10000 通りが考えられる。ランダ ムに暗証番号を入れた場合、他人が本人になりすますことが出来る確率は 1/10000、つまり 0.01% で ある。但し、もしも暗証番号が漏洩してしまい、それをなりすまし者が 正しく入力した場合、シス テムがそのなりすまし者を本人として誤って受け入れる確率は 100%となってしまう。 1.4. 動的署名を用いた個人認証手法(オンライン署名認証) 21 これらの 2 つの指標を用いて、例えばエラー曲線(Error Tradeoff Curve) や ROC カーブ、DET[31] カーブを作成したり、しきい値を変動させ、タイプ 1 エラーとタ イプ 2 エラーが等しくなる等誤り率(Equal Error Rate(EER))を求めたりするこ とが多い。また、タイプ 1 エラーを固定した際のタイプ 2 エラーの値やその逆も評 価指標として用いられることがある [39][41]。 オンライン署名認証アルゴリズムの精度評価を行うためには本人の筆記した署名 以外に、もう一つ偽筆と呼ばれる署名が必要となる。偽筆は本人以外の人物が筆記 した署名である。偽筆は [47] などを参考にすると、以下の 4 つに分類することが出 来る。 • ランダム偽筆(Random Forgery) 本人署名についてなんら情報が与えられ ていない状況下で他人が筆記した署名。形状も全く似ていない。一般には、取 得が容易な他人の本人署名をランダム偽筆として用いることが多い [39][44]。 • 単純偽筆(Simple Forgery)なりすまし者が本人の名前等は知っているが、署 名の形状は知らない状況で筆記した署名。単純に文字認識を行えば、同じ署名 として認められる可能性はあるが、署名形状と名前に関連がない場合はランダ ム偽筆と同じである。 • 模写偽筆(Simulated Forgery)本人署名を上からなぞることにより作成した 偽筆である。署名形状は本人署名に非常に似ている。従い、オフライン署名認 証では非常に判別の難しい署名である。 • 訓練偽筆(Skilled Forgery)本人署名の形状や書き順、筆記方法等の情報を入 手したなりすまし者がオンライン情報を含め真似るための練習を行った後に 筆記する署名であり、オンライン署名認証においては最も脅威となる署名であ る。悪意あるなりすまし者は様々な努力をし、出来るだけ本人署名に(動的特 徴を含め)似ている署名でなりすましを行うことが予想される為、近年では オンライン署名認証アルゴリズムの精度評価にはこの訓練偽筆が用いられて いる。 これらの偽筆の違いは与えられる情報や訓練の有無の違いによるものであり、それ らにより認証の難易度が異なる。4 種類の偽筆の中でオンライン署名認証において は訓練偽筆が最も判別が難しく、ランダム偽筆が最も判別が簡単である。しかしな がら一口に訓練偽筆といっても、その与える情報がバラバラであったり、練習方法 が異なっているなど、データベースにより、その質が異なるのが現状である。従い、 精度評価には独自のデータベース以外に公開されているデータベースを用いて精度 評価を行い、その値も併記することが重要であると思われる。 22 第 1 章 序論 表 1.3: 偽筆の種類と与えられる情報 ランダム偽筆 単純偽筆 模写偽筆 訓練偽筆 提供される情報 無 本人の名前 署名の形状 訓練の有無 無 無 無 署名の形状、筆記方法 有 その他 他人の本人署名を利用 なぞり書き、オフライン署 名認証の場合は判別が困難 オンライン署名認証には最 も脅威 以下に本論文で用いているデータベースと共に現在利用可能であるデータベース、 著者らが収集したデータベースについて簡単な説明を行う。 MCYT Ortega-Garcia らスペイングループにより収集されたバイオメトリクスのデータ ベース [43] である。データベースはオンライン署名のほかに指紋を含んでいる。オ ンライン署名データベースは 330 人から収集され、真筆 25 個/人、訓練偽筆 25 個/ 人を含んでいる。 真筆偽筆とも 5 セッションに分けて署名が収集されているが、セッション間は数分 のみである。収集された偽筆は訓練偽筆である。データはタブレットとペンを用い て収集され、取得されたデータはペン位置 (x(t), y(t))、筆圧 p(t)、ペン方位角 ψ(t)、 ペン仰角 φ(t) の時系列データである。データは 100Hz でサンプルされている。集め られている署名はアルファベットの署名である(図 1.18)。本データベースはいくつ かのアルゴリズムの精度評価に用いられている [9][13][39][44][58]。 今回著者は 330 人分のデータのうち、100 人分のデータ(真筆 25 個/人、訓練偽筆 25 個/人)と 50 人分のデータ(真筆 10 個/人、訓練偽筆 10 個/人)を入手した。本論 文では前者を MCYT100、後者を MCYT50 と呼ぶ。MCYT50 の一部は MCYT100 と重複している。 BIOMET Garcia-Salicetti らフランスのグループによって収集されたバイオメトリクスのマ ルチモーダルのデータベース [12] であり、顔とオンライン署名、指紋、音声、手の データからなる。各データは 3 回のセッションに分けて収集されており、最初のセッ ションには 130 人、2 回目のセッションには 106 人、3 回目のセッションには 91 人 が参加してデータ収集が行われている。 1.4. 動的署名を用いた個人認証手法(オンライン署名認証) 23 図 1.18: MCYT に含まれる署名の一部 オンライン署名データについては、タブレットとペンを用いて収集されており、最 初のセッションは Grip ペンと言われるペンを用いて署名を収集し、2 回目、3 回目 のセッションではインクペン(ペン先がボールペンになっているペン)を使用し、 署名を収集している。2 回目のセッションでは真筆 5 個/人、訓練偽筆 6 個/人、3 回 目のセッションでは真筆 10 個/人、訓練偽筆 6 個/人が収集されている。最初のセッ ションでも訓練偽筆を 5 個収集している為、訓練偽筆は合計 17 個/人である。 最初のセッションと 2 回目のセッション間には 3ヶ月、2 回目と 3 回目のセッション間 には 5ヶ月の間隔がある。取得されたデータはペン位置 (x(t), y(t))、ペン筆圧 p(t)、 ペン方位角 ψ(t)、ペン仰角 φ(t) の時系列データである。各特徴は 200Hz でサンプル されている。署名の形状はアルファベットベースの署名である(図 1.19)。 Ly Van らが BIOMET のオンライン署名データを用いてオンライン署名認証アルゴ リズムの精度評価を行い、報告している [59]。 今回著者らは BIOMET データベースのうち、84 人分からなる署名データベース(基 本は真筆 15 個/人、訓練偽筆 12 個/人)の提供を受けた。 本人署名は 2 回のセッションにより収集されたもので、セッション間には 5ヶ月の間 隔がある。今回提供を受けたデータには 67 個の署名が欠損している為、実際に利用 可能な署名は本人署名 1252 個、訓練偽筆 949 個である。提供を受けた署名データは 100Hz でサンプルされたものに加工されていた。 本論文では提供を受けた BIOMET データベースから 2 種類のデータベースを作成 した。一つ目は提供を受けた 84 人分すべてを用いたデータベースで、もう一つは本 人署名 15 個、偽筆 12 個全ての署名がそろっている 61 人のデータベースである。前 者を BIOMET84、後者を BIOMET61 と本論文では呼ぶこととする。 24 第 1 章 序論 図 1.19: BIOMET に含まれる署名の一部 MUNICH データベース3 Munich らにより収集されたオンライン署名認証データベース [36] で Web より自 由にダウンロードすることが可能である4 。このデータベースは他のデータベースと 異なり、署名を筆記する動作をビデオカメラでとらえ、そのカメラの映像を解析す ることにより、ペンの位置軌跡を求め、データ化したものである。従い、得られる 情報はペン位置 (x(t), y(t)) のみであり、ペンのアップダウン情報も存在しない。署 名の形状は図 1.20 に示す通りである。 データベースは 2 つのセットからなっており、セット 1 は 56 人の人物から真筆を 25 個収集、セット 2 は 50 人から真筆 30 個ずつ収集している。セット 1 とセット 2 の参 加者には重複している人物は存在しない。偽筆は各人物に対し 10 個の偽筆を収集し ている。偽筆は署名の形状を見せ練習させた後に 5 人の人物から収集している。 いくつかのアルゴリズムが本データベースを用いた認証実験結果の報告をしている [28][36][37]。 図 1.20: Munich データベースに含まれる署名の一部 3 4 データベースの正式名ではない。著者が作成者の名前にちなんで呼んでいる http://www.vision.caltech.edu/mariomu/research/ 1.4. 動的署名を用いた個人認証手法(オンライン署名認証) 25 SVC2004 2004 年香港にて開催されたバイオメトリクスの国際会議、International Conference on Biometric Authentication にて行われた初めてのオンライン署名認証のコンペティ ション First International Signature Verification Competition(SVC)[65] のために収 集されたオンライン署名データである。実際収集された署名は 100 人分であるが、現 在公開されている署名は 40 人分のみである5 。このデータベースはペンがダウンし ているときの情報のみをもっていて、ペンアップ時の情報は含まれていない。Julian らが SVC2004 データベースを用いて精度評価を行い、結果を報告している [8][10]。 図 1.21: SVC2004 データベースに含まれる署名の一部 Matsumoto Lab 2003 本研究室にて収集を行っい作成した署名データベースである。参加人数は 30 人、 1 セッションに 10 個の署名を筆記してもらい、それを約 1 週間おきに約 10 セッショ ン行い本人署名を収集した。偽筆については 2 種類の偽筆を収集。30 人を 3 つのグ ループに分け、各グループ内の人の偽筆を提供してもらう。偽筆挑戦者にははじめ 署名の形とその書き順を教え、書き順を覚えてもらった後、実際の本人署名を 10 回 上からなぞってもらう(模写偽筆)。この後、訓練偽筆として 10 個の偽筆を筆記し てもらう。データはタブレットとペンを用いて収集され、取得されたデータはペン 位置 (x(t), y(t))、ペン筆圧 p(t)、ペン方位角 ψ(t)、ペン仰角 φ(t) の時系列データで ある。データは 200Hz でサンプルされている。漢字ベースの署名が収集されている (図 1.22)。尚、本データベースを公開する予定はない。 5 http://www.cs.ust.hk/svc2004/download.html 26 第 1 章 序論 図 1.22: Matsumoto Lab 2003 に含まれる署名の一部 表 1.4: オンライン署名 Database の比較 Database MCYT BIOMET SVC 2004 MUNICH (set1) MUNICH (set2) Matsumoto Lab 2003 Database MCYT100 MCYT50 BIOMET84 BIOMET61 一人当たり 真筆 偽筆 alphabet 330 25 25(訓練) alphabet ≤ 130 15 17(訓練) alphabet、漢字 100 20 20(訓練) alphabet 56 25 10(訓練) alphabet 50 30 10(訓練) 30 ≤ 100 90(模写) 漢字 90(訓練) *トータルの個数について記述がない 文字種 人数 TOTAL 真筆 偽筆 8250 8250(訓練) * * (訓練) 2000 2000(訓練) 1400 560(訓練) 1500 500(訓練) 2960 2700(模写) 2700(訓練) 表 1.5: 本論文で用るデータベースの詳細 一人当たり TOTAL 文字種 人数 真筆 偽筆 真筆 偽筆 alphabet 100 25 25(訓練) 2500 2500(訓練) alphabet 50 10 10(訓練) 500 500(訓練) alphabet 84 ≤ 15 ≤ 12(訓練) 1252 949(訓練) alphabet 61 15 12(訓練) 915 732(訓練) 27 第2章 2.1 Dynamic Time Warping を 用いた手法 はじめに 序章で述べた通り、オンライン署名認証では、認証を行うために、事前に登録さ れているリファレンス署名と、入力されたオンライン署名の ”似ている ”度合いを 求める必要がある。本章で提案する手法はこの ”似ている ”度合いとして署名間の 距離を定義し、その距離を用いて認証を行う手法である。入力された署名と、指定 された ID の人物により事前に登録されたリファレンス署名との距離を計算し、この 距離がある値(しきい値)よりも小さければ二つの署名は同一人物によって筆記さ れたものと考える。つまり入力された署名を筆記した人物は申請されている ID の人 物であると判断するのである。逆に署名間の距離がある値以上であれば二つの署名 は別の人物によって筆記された、つまり入力された署名を筆記した人物は ID とは別 の人物であり、なりすまし者であると判断する。 本章では 2 つのオンライン署名間の距離をどのように定義し、どのように計算す るかについて説明を行う。距離の定義はオンライン署名をどのように定義するかに も関連する。一般にオンライン署名認証は序章で説明したようにパラメータ法と関 数法が存在する。関数法を用いる場合、データの長さが異なる為、比較するオンラ イン署名の長さの違いを吸収し、距離を算出する手法が必要となる。そこで、本章 においては動的時間伸縮(Dynamic Time Warping(DTW))法 [49][50][52], を用い て距離を計算し問題を解決する。DTW を用いる手法は前述した通りオンライン署 名では非常に多くの研究者によって用いられている。またより巧妙な手法で対応関 係を取る手法 [55] も提案されている。 2.2 アルゴリズム 序章で述べたようにオンライン署名は署名を筆記する際に計測が可能なデータの 時系列データとして与えられる。入力されたテスト署名を Qsig 、リファレンス署名 28 第2章 Dynamic Time Warping を用いた手法 として登録されている署名を Rsig とすると、各署名は Qsig = {qsigi (tq )}, tq = 1, 2, ..., TT est , i = 1, ..., M (2.1) Rsig = {rsigi (tr )}, tr = 1, 2, ..., TRef , i = 1, ..., M (2.2) と表される。ここで i は署名の各特徴をあらわし、TT est 、TRef はそれぞれテスト 署名のデータ長、リファレンス署名のデータ長である。 もしも常にデータ長が等しく TRef = TT est = T であれば一つの方法として Disti (Qsig, Rsig) = T X dist(qsigi (t), rsigi (t)) (2.3) t=1 と計算出来る。ここで、dist(a, b) は 2 つの点の距離を計算する関数である。 しかしながら、一般に TRef 6= TT est であるために式 (2.3) を用いることが出来ない。 そこで一方の署名データを線形に伸縮しリサンプリングすることで Q0 sig = {q 0 sigi (t0 )}, t0 = TT est t TRef (2.4) とし、距離を以下の式で求めることが可能である。 Disti (Qsig, Rsig) = Disti (Q0 sig, Rsig) TRef = X dist(q 0 sigi (t), rsigi (t)) (2.5) t=1 つまり比較する 2 つの署名を図 2.1 とした場合、一方の署名を伸縮させ、長さを揃 えた後、図 2.2 に示すように 2 つの署名の対応関係を決定し、距離を計算する。こ の方法では結果的に図 2.3 に示すような比較を行っていることに等しい。 式 (2.5) を用いることで簡単に距離を求めるのことが出来るが、この方法では 3 つ の問題が存在する。 • 署名データをサンプリングしなおす必要がある • オンライン署名の場合には署名の筆記時間も重要な情報であるが、それを失っ てしまう • 署名の変形(伸縮)は線形ではなく、非線形に行われることが予想される。従 い署名全体を線形的に伸縮したのでは、良い距離を求めることが出来ないと思 われる 計算される署名間の距離がアルゴリズムの良し悪しに影響を与えるオンライン署 名認証問題においては前述の特に 3 番目の問題は致命的である。そこで、もう少し 2.2. アルゴリズム 29 図 2.1: 比較する 2 つの時系列データ 一般的な方法を考え、伸縮関数を導入し、距離を計算することを考える。伸縮関数 Φ(k) を Φ(k) = (φQ (k), φR (k)), k = 1, ..., K (2.6) φQ (k) = tq , tq = 1, 2, ......, TT est φR (k) = tr , tr = 1, 2, ......, TRef (2.7) とし、以下の条件を満たすものを考える。 φQ (1) = 1, φQ (K) = TT est φR (1) = 1, φR (K) = TRef φQ (k) ≤ φQ (k + 1), φR (k) ≤ φR (k + 1) この伸縮関数を用いると長さの異なる 2 つの署名間の距離は以下のように計算出 来る。 DistΦi (Qsig, Rsig) = K X dist(qsigi (φQ (k)), rsigi (φR (k))) (2.8) k=1 この伸縮関数を用いることで非線形の伸縮を実現することが可能である(図 2.4)。 この伸縮関数を用いた場合は、比較される署名それぞれが非線形に伸縮される。 非線形伸縮後の 2 つの署名を図 2.5 に示す。この波形を図 2.3 と比較すれば、非線形 30 第2章 Dynamic Time Warping を用いた手法 tq tr t q′ 図 2.2: データ長さの異なる 2 つの波形の比較 (線形な時間整合)。右上の波形を線形 に縮め、データの長さをそろえた後に、リサンプリングを行い、対応する点を決定 し、比較を行う 伸縮を行うことにより、うまく対応関係を取ることに成功していることがわかる。 伸縮関数を導入することで、長さの異なるデータを非線形に伸縮しながら距離を 計算することが可能となった。しかしながら、考えられる伸縮関数 Φ(k) は多数存在 し、式 (2.8) で計算される距離はこの伸縮関数に大きく依存する。従い、距離に一貫 性を持たせるためには、伸縮関数を決定するなんらかの取り決めが必要となる。一 つの方法としては Disti (Qsig, Rsig) ≡ min DistΦi (Qsig, Rsig) Φ (2.9) とすることである。これは考えられる全ての伸縮関数の中で、式 (2.8) で計算される 距離が最小となる伸縮関数を用いて、距離を計算することである。従い、選ばれる 2.3. 実装 31 図 2.3: 線形伸縮により比較される 2 つの署名波形 伸縮関数 Φ̃ は Φ̃i = argmin DistΦi (Qsig, Rsig) (2.10) Φ となる。 2.3 実装 全ての伸縮関数の中で最小となる伸縮関数を得るためには、最適性の原理1 を用い て逐次最小化を繰り返すことで、距離を計算していく。今回用いた計算方法は以下 の 2 通り、重複を許す場合と、ギャップペナルティ(GP)を用いた方法である。 2 つのデータ X, Y の距離の計算を行うとする。 X = (xi ), i = 1, ..., I, Y = (yj ), j = 1, ..., J とすると 重複を許した場合 Step.1 初期化 d(0, 0) = 0 (2.11) Step.2 再帰計算 d(i − 1, j − 1) + dist(xi , yj ) d(i, j) = min d(i − 1, j) + dist(xi , yj ) d(i, j − 1) + dist(x , y ) i j 1 (2.12) 最適性の原理: 最適政策とは、最初の状態や決定がどうであっても、それ以降の決定は最初の決定によって生じた状 態に関して最適政策となるように構成しなければならないという性質をもっている [4] PRINCIPLE OF OPRIMALITY: An optimal policy has the property that whatever the initial state and initial decision are, the remaining decisions must constitute an optimal policy with regard to the state resulting from the first decision [3] 32 第2章 Dynamic Time Warping を用いた手法 tr tq 図 2.4: データ長さの異なる 2 つの波形の比較 (時間伸縮関数により非線形に整合し た場合)。伸縮関数を導入することで、それぞれの波形をうまく伸縮出来ている。右 下の赤線が伸縮関数の形状を示す。 図 2.5: 時間伸縮関数を用いて伸縮した後の比較される署名 Step.3 終了 Dist(X, Y ) = d(I, J) (2.13) またギャップペナルティを用いた場合は Step.1 初期化 d(0, 0) = 0 (2.14) Step.2 再帰計算 d(i − 1, j − 1) + dist(xi , yj ) d(i, j) = min d(i − 1, j) + GPj d(i, j − 1) + GP i (2.15) 2.4. 実験 33 GP はギャップペナルティであり、本論文においては GPj = dist(0, yj ), GPi = dist(xi , 0) とした Step.3 終了 Dist(X, Y ) = d(I, J) 2.4 (2.16) 実験 2.4.1 実験設定 今回の実験では、タブレットから取得されたデータを用いて距離を計算し、特徴 毎の認証精度について実験を行う。 タブレットから取得出来る情報は (1) ペン位置 x、(2) ペン位置 y、(3) 筆圧 p、(4) 方 位角 ψ 、(5) 仰角 φ であるので、署名 Sig は Sig = (x(t), y(t), p(t), ψ(t), φ(t)), t = 1, ..., T (2.17) となる。 本実験では 2 つの署名から特徴毎に距離を計算し、各距離における認証率を求め る。距離としては以下の 8 種類の計算を行った。 (1) 重複を用いて距離を計算したもの、伸縮関数は特徴毎に設定(個別パス) (2) (1) で求めた距離をリファレンス署名長さで正規化したもの (3) GP を用いて距離を計算したもの、伸縮関数は特徴毎に設定(個別パス) (4) (3) で求めた距離をリファレンス署名長さで正規化したもの (5) 重複を用いて距離計算をしたもの、全ての特徴において D1(2.54) を最小とす る伸縮関数 ΦD1 = argmin D1 (2.18) Φ を用いる(単一パス)。 (6) (5) で求めた距離をリファレンス署名長さで正規化したもの (7) GP を用いて距離計算をしたもの、全ての特徴において同一の伸縮関数 (2.18) を用いる(単一パス)。 (8) (7) で求めた距離をリファンレス署名長さで正規化したもの 34 第2章 Dynamic Time Warping を用いた手法 ( x0 , y0 ) ymax ( xg , y g ) ymin y xm in xmax x 図 2.6: 署名の重心、初期点、最大、最小の位置 また特徴としては以下の特徴を用いた。式中に出てくる (xg , yg ) は署名の重心の 座標、(x0 , y0 ) は署名の書き始めの点 (x(1), y(1))、(xmax , ymax ), (xmin , ymin ) は筆記さ れる署名の中で最大、最小の値である (図 2.6)。 • ペン位置 x に関連する特徴 原点の位置を変更し、4 種類の特徴を求める x重心 (t) = x(t) − xg (2.19) x最小 (t) = x(t) − xmin (2.20) x最大 (t) = x(t) − xmax (2.21) x初期 (t) = x(t) − x0 (2.22) • ペン位置 y に関連する特徴 原点の位置を変更し、4 種類の特徴を求める y重心 (t) = y(t) − yg (2.23) y最小 (t) = y(t) − ymin (2.24) y最大 (t) = y(t) − ymax (2.25) y初期 (t) = y(t) − y0 (2.26) • ベクトル角度に関連する特徴 原点の位置を変更し、4 種類の特徴を求める θ重心 (t) = tan−1 θ最小 (t) = tan−1 y(t) − yg x(t) − xg y(t) − ymin x(t) − xmin (2.27) (2.28) 2.4. 実験 35 θ最大 (t) = tan−1 θ初期 (t) = tan−1 y(t) − ymax x(t) − xmax y(t) − y0 x(t) − x0 • ベクトル長さに関連する特徴 原点の位置を変更し、4 種類の特徴を求める q f重心 (t) = (x(t) − xg )2 + (y(t) − yg )2 p f最小 (t) = (x(t) − xmin )2 + (y(t) − ymin )2 p f最大 (t) = (x(t) − xmax )2 + (y(t) − ymax )2 p f初期 (t) = (x(t) − x0 )2 + (y(t) − y0 )2 (2.29) (2.30) (2.31) (2.32) (2.33) (2.34) • 筆圧 p(t) • ペン方位角 ψ(t) • ペン仰角 φ(t) • x 方向速度 vx (t) = x(t + 1) − x(t) (2.35) vy (t) = y(t + 1) − y(t) (2.36) • y 方向速度 • 速度の大きさ q |v(t)| = vx (t)2 + vy (t)2 (2.37) • 速度方向 θv (t) = tan−1 vy (t) vx (t) (2.38) 36 第2章 Dynamic Time Warping を用いた手法 • ベクトル角度差分 原点の位置を変更し、4 種類の特徴を求める ∆θ重心 (t) = θ重心 (t + 1) − θ重心 (t) (2.39) ∆θ最小 (t) = θ最小 (t + 1) − θ最小 (t) (2.40) ∆θ最大 (t) = θ最大 (t + 1) − θ最大 (t) (2.41) ∆θ初期 (t) = θ初期 (t + 1) − θ初期 (t) (2.42) • ベクトル長さ差分 原点の位置を変更し、4 種類の特徴を求める ∆f重心 (t) = f重心 (t + 1) − f重心 (t) (2.43) ∆f最小 (t) = f最小 (t + 1) − f最小 (t) (2.44) ∆f最大 (t) = f最大 (t + 1) − f最大 (t) (2.45) ∆f初期 (t) = f初期 (t + 1) − f初期 (t) (2.46) ∆p(t) = p(t + 1) − p(t) (2.47) ∆ψ(t) = ψ(t + 1) − ψ(t) (2.48) ∆φ(t) = φ(t + 1) − φ(t) (2.49) • 筆圧差分 • ペン方位角差分 • ペン仰角差分 • 原点からのベクトルとペン速度の内積 ip重心 (t) = vx (t) × x重心 (t) + vy (t) × y重心 (t) (2.50) ip最大 (t) = vx (t) × x最大 (t) + vy (t) × y最大 (t) (2.51) • 原点からのベクトルとペン速度の外積 ep重心 (t) = vx (t) × y重心 (t) + vy (t) × x重心 (t) (2.52) ep最大 (t) = vx (t) × y最大 (t) + vy (t) × x最大 (t) (2.53) 2.5. まとめ 37 これらとは別に角度距離基準として重心からのペンの位置、筆圧を組み合わせた以 下の特徴量の計算も行う。 D1 = K X |θQ 重心 (φQ (k)) − θR 重心 (φR (k))| k=1 Sd (fQ 重心 (φQ (k)), fR 重心 (φR (k)))Si (p(φQ (k)), p(φR (k))) (2.54) ( |a − b| if |a − b| > v v if |a − b| ≤ v ( |a − b| if a 6= b Si (a, b) = 1 if a = b Sd (a, b) = (2.55) (2.56) また署名データ長さの差も求める ∆T = |Ttest − Tref | 2.4.2 (2.57) 実験結果 式 (2.23)-(2.53) で計算した特徴を用いた距離、D1(2.54)、署名の長さ差 (2.57)、及 びそれらをリファレンス署名データ長さで正規化した偽距離2 を用いた認証実験結果 を表 2.1–2.8 に示す。 2.5 まとめ 本章では、Dynamic Time Warping(動的時間伸縮)を用いて、長さの異なる 2 つ のオンライン署名を非線形に伸縮し、距離を計算する手法について説明を行なった。 そしてオンライン署名から取得される複数の情報について、個々にその認証精度に ついて評価実験を行った。 実験結果から、まず位置座標 (x, y) に関する特徴については署名の重心を原点とし て計算したものが全てにおいてではないが、全体的に良い結果を示している。また 特徴としては速度が良い精度を表しており、この結果は Plamondon らの結果 [46] と 一致する。同じ論文で Plamondon らは x 方向(水平方向)よりも、y 方向(垂直方 向)の特徴の方が安定であるとまとめているが、今回の結果からでは MCYT データ ベースに関しては同様のことが言えたが、BIOMET についてはその傾向は確認出来 なかった。また署名長さにより距離を正規化したものの方が結果としては多少良い 2 リファレンス署名の長さで正規化した場合 距離 (A, B) 6= 距離 (B, A) となる 38 第2章 Dynamic Time Warping を用いた手法 結果となっていると思われる。これも Parizeau ら [45] の結果と同じとなった。 各特徴の有効性は、データベースにより多少異なるようである。これは個人毎に有 効な特徴が異なるとも考えられる。また距離の計算方法により精度に大きな差が現 れる特徴もあった。 これらの結果から、各情報を個別に用いて距離を計算した結果、ある程度の認証 が可能であることがわかった。しかしながら、現状の認証精度は十分なものではな い。そこで、これらの複数の特徴量を用いてさらに精度の良い認証アルゴリズムを 構築する為には、これらの距離を組み合わせることが必要である。これらの手法に ついては第四章以降に提案を行う。 2.5. まとめ 39 表 2.1: 各特徴量から計算した距離 (重複、時間正規化なし、個別パス) による認証 結果 EER[%] 特徴量 x重心 (t) x最小 (t) x最大 (t) x初期 (t) y重心 (t) y最小 (t) y最大 (t) y初期 (t) θ重心 (t) θ最小 (t) θ最大 (t) θ初期 (t) f重心 (t) f最小 (t) f最大 (t) f初期 (t) p(t) ψ(t) φ(t) vx (t) vy (t) |v(t)| θv (t) ∆θ重心 (t) ∆θ最小 (t) ∆θ最大 (t) ∆θ初期 (t) ∆f重心 (t) ∆f最小 (t) ∆f最大 (t) ∆f初期 (t) ∆p(t) ∆ψ(t) ∆φ(t) ip重心 ip最大 ep重心 ep最大 D1 ∆T MCYT100 10.57 14.96 14.77 15.38 7.66 12.03 11.77 18.08 8.31 13.53 14.29 11.58 9.39 10.96 10.62 17.03 16.00 23.40 27.10 8.78 7.59 7.22 7.73 14.47 12.73 14.10 21.85 9.03 9.06 8.99 10.16 12.80 27.57 29.32 7.45 7.75 7.98 7.67 8.51 20.23 BIOMET84 7.98 11.08 11.20 10.94 8.00 11.33 10.89 14.37 7.43 8.88 9.08 9.56 7.05 12.03 12.16 12.74 16.35 20.79 21.08 8.16 6.96 6.83 5.20 11.75 7.48 9.55 15.86 6.02 6.31 6.48 5.96 12.66 24.95 25.38 6.87 7.34 6.53 7.62 11.26 12.94 BIOMET61 9.67 12.42 12.45 13.09 9.63 11.63 11.55 17.59 10.28 11.03 11.09 11.93 9.07 12.84 14.01 15.60 23.55 21.02 24.52 10.03 6.24 7.61 6.56 16.43 8.96 10.38 17.99 9.02 10.03 10.42 12.64 17.15 29.89 28.31 8.79 7.83 9.46 6.60 15.41 14.18 MCYT50 8.48 13.08 12.67 14.40 4.80 9.14 9.24 18.31 6.64 14.15 9.67 10.76 6.04 7.28 9.43 17.96 10.40 24.06 24.27 7.71 4.77 4.67 4.34 11.53 11.05 9.64 20.74 8.71 8.86 9.52 8.55 7.60 32.53 29.77 6.43 6.97 6.40 5.38 4.5 19.28 40 第2章 Dynamic Time Warping を用いた手法 表 2.2: 各特徴量から計算した距離 (重複、時間正規化あり、個別パス) による認証結 果 EER[%] 特徴量 x重心 (t) x最小 (t) x最大 (t) x初期 (t) y重心 (t) y最小 (t) y最大 (t) y初期 (t) θ重心 (t) θ最小 (t) θ最大 (t) θ初期 (t) f重心 (t) f最小 (t) f最大 (t) f初期 (t) p(t) ψ(t) φ(t) vx (t) vy (t) |v(t)| θv (t) ∆θ重心 (t) ∆θ最小 (t) ∆θ最大 (t) ∆θ初期 (t) ∆f重心 (t) ∆f最小 (t) ∆f最大 (t) ∆f初期 (t) ∆p(t) ∆ψ(t) ∆φ(t) ip重心 ip最大 ep重心 ep最大 D1 ∆T MCYT100 10.48 14.84 14.67 15.35 7.69 12.10 11.81 18.05 8.32 13.49 14.42 11.68 9.26 10.93 10.51 16.94 16.07 23.36 27.04 8.80 7.64 7.25 7.82 14.41 12.78 13.93 21.93 8.99 9.01 8.86 10.08 12.87 27.59 29.35 7.46 7.71 7.79 7.57 8.60 20.23 BIOMET84 7.83 11.11 11.29 10.94 8.11 11.48 11.03 14.45 7.36 8.89 9.26 9.54 7.06 11.90 12.12 12.64 16.67 20.97 21.17 8.12 7.02 6.49 5.06 11.42 7.45 9.36 15.65 6.02 6.41 6.45 5.80 12.73 24.98 25.49 6.82 6.96 6.39 7.48 11.39 12.77 BIOMET61 9.56 12.39 12.40 12.98 9.67 11.49 11.58 17.88 10.27 10.83 11.05 11.80 8.93 12.96 13.98 15.60 23.29 21.46 24.67 9.89 6.34 7.41 6.59 16.30 8.83 10.25 17.88 9.04 9.59 10.25 12.34 17.33 29.97 28.39 8.84 7.49 9.41 6.60 15.33 13.89 MCYT50 8.48 12.68 12.55 14.80 4.80 9.07 9.10 18.69 6.65 14.29 9.74 10.80 6.08 7.20 9.49 17.91 10.60 23.98 24.75 7.50 4.48 4.57 4.29 11.26 10.90 9.51 20.84 8.62 8.64 9.31 8.53 8.00 32.72 29.91 6.43 6.54 6.41 5.29 4.6 19.40 2.5. まとめ 41 表 2.3: 各特徴量から計算した距離 (ギャップペナルティ、時間正規化なし、個別パ ス) による認証結果 EER[%] 特徴量 x重心 (t) x最小 (t) x最大 (t) x初期 (t) y重心 (t) y最小 (t) y最大 (t) y初期 (t) θ重心 (t) θ最小 (t) θ最大 (t) θ初期 (t) f重心 (t) f最小 (t) f最大 (t) f初期 (t) p(t) ψ(t) φ(t) vx (t) vy (t) |v(t)| θv (t) ∆θ重心 (t) ∆θ最小 (t) ∆θ最大 (t) ∆θ初期 (t) ∆f重心 (t) ∆f最小 (t) ∆f最大 (t) ∆f初期 (t) ∆p(t) ∆ψ(t) ∆φ(t) ip重心 ip最大 ep重心 ep最大 D1 ∆T MCYT100 10.84 14.79 14.55 15.90 8.21 12.18 12.29 17.44 8.35 13.44 16.06 9.40 9.38 12.56 11.94 14.84 15.72 14.97 17.35 7.17 6.47 6.81 7.32 13.62 10.89 12.97 20.86 9.09 8.07 8.09 9.88 13.95 29.21 31.05 7.61 6.14 6.55 5.89 10.57 20.23 BIOMET84 7.11 9.99 10.12 9.45 6.88 7.28 8.21 11.79 6.11 7.84 9.81 7.87 7.37 9.07 8.94 9.04 15.93 9.88 10.90 7.71 7.33 6.26 5.23 11.29 7.34 8.19 14.85 5.39 5.77 6.59 6.69 13.30 25.93 25.50 6.93 7.16 6.62 8.31 11.59 12.94 BIOMET61 8.64 12.41 9.24 11.70 9.76 8.16 8.88 13.25 8.48 8.61 11.06 10.09 7.88 9.32 9.98 11.23 21.24 10.36 12.30 9.40 6.83 7.24 7.23 14.95 9.21 10.04 17.48 8.98 10.12 10.28 12.55 18.89 30.51 26.66 8.92 7.85 8.80 7.70 13.61 14.18 MCYT50 9.40 12.28 10.77 13.60 4.42 8.93 11.49 15.07 8.07 10.34 13.46 7.07 7.08 10.04 9.84 11.42 13.24 13.10 14.40 7.60 3.72 4.27 4.67 10.91 9.03 8.72 19.22 9.03 7.89 8.02 9.24 9.07 34.36 30.29 5.33 5.14 4.86 3.77 7.60 19.28 42 第2章 Dynamic Time Warping を用いた手法 表 2.4: 各特徴量から計算した距離 (ギャップペナルティ、時間正規化あり、個別パ ス) による認証結果 EER[%] 特徴量 x重心 (t) x最小 (t) x最大 (t) x初期 (t) y重心 (t) y最小 (t) y最大 (t) y初期 (t) θ重心 (t) θ最小 (t) θ最大 (t) θ初期 (t) f重心 (t) f最小 (t) f最大 (t) f初期 (t) p(t) ψ(t) φ(t) vx (t) vy (t) |v(t)| θv (t) ∆θ重心 (t) ∆θ最小 (t) ∆θ最大 (t) ∆θ初期 (t) ∆f重心 (t) ∆f最小 (t) ∆f最大 (t) ∆f初期 (t) ∆p(t) ∆ψ(t) ∆φ(t) ip重心 ip最大 ep重心 ep最大 D1 ∆T MCYT100 10.78 14.74 14.57 15.92 8.21 12.21 12.31 17.56 8.24 13.28 15.96 9.44 9.39 12.55 11.92 14.75 15.87 14.85 17.27 7.12 6.47 6.71 7.37 13.71 10.92 12.85 20.92 9.06 7.89 8.04 9.78 13.93 29.26 31.08 7.58 6.01 6.44 5.89 10.56 20.23 BIOMET84 7.05 9.95 9.75 9.45 6.79 7.19 8.13 11.92 6.07 7.76 9.25 7.58 7.25 8.97 8.98 8.78 15.92 9.72 10.59 7.54 7.31 6.13 5.30 11.17 7.39 7.94 14.80 5.34 5.83 6.42 6.56 13.20 26.09 25.41 6.79 6.95 6.54 8.26 11.58 12.77 BIOMET61 8.37 12.24 9.25 11.30 9.65 8.15 8.56 13.11 8.39 8.62 10.91 10.04 7.65 9.50 9.88 11.24 21.28 10.28 12.01 9.17 6.97 6.91 7.20 14.76 9.10 9.79 17.40 8.74 9.90 10.13 12.40 18.77 30.47 26.61 8.53 7.73 8.64 7.73 13.26 13.89 MCYT50 9.17 12.25 11.14 13.30 4.48 8.89 11.64 15.20 8.09 10.30 13.14 6.86 7.09 10.09 10.06 11.00 13.00 13.07 14.27 7.60 3.65 4.25 4.83 11.01 9.12 8.53 19.41 9.08 7.70 7.98 9.26 9.20 34.46 30.40 5.35 5.11 4.84 3.70 7.53 19.40 2.5. まとめ 43 表 2.5: 各特徴量から計算した距離 (重複、時間正規化なし、単一パス) による認証 結果 EER[%] 特徴量 x重心 (t) x最小 (t) x最大 (t) x初期 (t) y重心 (t) y最小 (t) y最大 (t) y初期 (t) θ重心 (t) θ最小 (t) θ最大 (t) θ初期 (t) f重心 (t) f最小 (t) f最大 (t) f初期 (t) p(t) ψ(t) φ(t) vx (t) vy (t) |v(t)| θv (t) ∆θ重心 (t) ∆θ最小 (t) ∆θ最大 (t) ∆θ初期 (t) ∆f重心 (t) ∆f最小 (t) ∆f最大 (t) ∆f初期 (t) ∆p(t) ∆ψ(t) ∆φ(t) ip重心 ip最大 ep重心 ep最大 D1 ∆T MCYT100 8.64 13.35 13.39 13.79 7.07 11.44 11.46 15.83 8.46 11.63 12.83 9.61 8.97 10.36 10.34 15.22 14.41 18.43 21.49 7.08 6.93 6.33 6.90 9.60 8.06 9.44 12.31 7.76 7.61 7.26 8.31 9.04 16.81 17.74 6.93 7.25 6.85 6.62 8.51 20.23 BIOMET84 6.43 8.99 8.99 10.02 6.95 8.91 8.82 11.23 6.96 8.35 8.06 7.91 7.36 9.80 9.45 9.88 14.90 16.48 15.91 5.12 5.52 5.13 4.74 6.74 5.28 6.42 7.98 4.92 5.28 5.11 5.25 8.28 17.45 13.32 5.45 5.60 5.17 6.02 11.26 12.94 BIOMET61 7.62 11.14 11.14 12.14 8.35 8.70 8.66 13.23 8.31 8.72 9.48 9.47 9.31 9.66 9.66 11.91 22.08 15.67 16.99 7.75 6.67 5.82 6.71 10.46 7.05 8.02 9.69 6.81 6.99 8.15 7.90 11.41 19.08 15.16 6.43 7.08 6.94 7.35 15.41 14.18 MCYT50 6.22 9.65 9.65 13.03 3.47 8.80 8.80 14.22 4.73 11.90 9.51 6.03 5.33 6.80 8.53 12.49 8.50 18.06 17.79 5.09 3.05 2.80 3.12 4.95 6.03 5.38 9.41 5.43 4.73 4.20 6.18 8.11 16.09 16.27 3.84 3.73 3.00 3.29 4.50 19.28 44 第2章 Dynamic Time Warping を用いた手法 表 2.6: 各特徴量から計算した距離 (重複、時間正規化あり、単一パス) による認証結 果 EER[%] 特徴量 x重心 (t) x最小 (t) x最大 (t) x初期 (t) y重心 (t) y最小 (t) y最大 (t) y初期 (t) θ重心 (t) θ最小 (t) θ最大 (t) θ初期 (t) f重心 (t) f最小 (t) f最大 (t) f初期 (t) p(t) ψ(t) φ(t) vx (t) vy (t) |v(t)| θv (t) ∆θ重心 (t) ∆θ最小 (t) ∆θ最大 (t) ∆θ初期 (t) ∆f重心 (t) ∆f最小 (t) ∆f最大 (t) ∆f初期 (t) ∆p(t) ∆ψ(t) ∆φ(t) ip重心 ip最大 ep重心 ep最大 D1 ∆T MCYT100 8.64 13.32 13.35 13.82 7.22 11.46 11.48 15.82 8.47 11.65 12.96 9.66 9.00 10.33 10.12 15.17 14.36 18.42 21.38 6.97 6.82 6.22 6.96 9.45 8.04 9.24 12.27 7.68 7.52 7.27 8.11 9.07 16.79 17.69 6.80 7.26 6.72 6.51 8.60 20.23 BIOMET84 6.50 8.82 8.88 9.99 7.09 8.97 8.93 11.19 6.90 8.25 7.88 8.00 7.38 9.92 9.55 10.01 14.99 16.56 15.88 4.94 5.45 4.98 4.76 6.69 5.35 6.27 7.70 4.84 4.87 4.85 5.18 7.96 17.45 13.29 5.40 5.74 5.02 5.92 11.39 12.77 BIOMET61 7.47 11.01 11.03 11.99 8.42 8.62 8.57 13.06 8.40 8.82 9.28 9.46 9.01 9.45 9.74 11.60 22.07 15.57 17.13 7.52 6.39 5.82 6.71 10.32 6.84 7.99 9.63 6.66 6.75 7.96 7.88 11.14 19.03 15.27 6.22 6.94 6.70 7.11 15.33 13.89 MCYT50 6.18 9.43 9.43 13.20 3.35 8.71 8.71 14.60 4.84 11.66 9.55 5.96 5.24 6.70 8.16 12.53 8.63 18.27 17.90 4.80 3.00 2.80 3.12 5.07 5.97 5.30 9.41 5.43 4.72 4.20 6.15 8.23 16.11 16.19 3.75 3.70 3.00 3.20 4.60 19.40 2.5. まとめ 45 表 2.7: 各特徴量から計算した距離 (ギャップペナルティ、時間正規化なし、単一パ ス) による認証結果 EER[%] 特徴量 x重心 (t) x最小 (t) x最大 (t) x初期 (t) y重心 (t) y最小 (t) y最大 (t) y初期 (t) θ重心 (t) θ最小 (t) θ最大 (t) θ初期 (t) f重心 (t) f最小 (t) f最大 (t) f初期 (t) p(t) ψ(t) φ(t) vx (t) vy (t) |v(t)| θv (t) ∆θ重心 (t) ∆θ最小 (t) ∆θ最大 (t) ∆θ初期 (t) ∆f重心 (t) ∆f最小 (t) ∆f最大 (t) ∆f初期 (t) ∆p(t) ∆ψ(t) ∆φ(t) ip重心 ip最大 ep重心 ep最大 D1 ∆T MCYT100 10.51 10.29 10.62 10.45 9.93 9.95 9.91 12.86 9.94 9.62 11.03 11.55 9.54 10.07 9.55 10.40 12.67 9.50 10.60 9.05 8.64 8.08 7.56 13.21 11.42 12.73 17.76 10.46 9.94 9.92 11.84 17.57 27.74 27.22 8.70 8.99 8.30 8.63 10.57 20.23 BIOMET84 7.37 7.77 8.39 7.39 7.12 7.07 7.04 9.37 6.67 7.05 8.22 7.25 7.05 7.91 7.85 8.17 13.10 8.20 9.03 8.71 8.81 7.50 5.59 11.75 8.57 9.93 16.28 8.42 8.50 8.91 9.38 18.36 23.89 22.48 9.18 9.06 8.66 9.19 11.59 12.94 BIOMET61 8.50 9.53 8.33 9.41 9.06 8.87 7.81 11.37 9.23 8.93 9.17 10.57 7.90 8.78 8.51 9.51 17.50 9.48 9.78 10.48 10.83 9.35 5.88 14.93 11.75 12.85 18.91 11.67 11.87 12.48 12.67 23.37 27.84 23.09 12.01 11.40 10.67 11.66 13.61 14.18 MCYT50 7.42 7.74 7.50 9.75 7.20 7.47 7.23 8.63 6.80 7.64 8.40 9.80 6.13 7.29 6.80 6.80 7.89 5.94 6.91 8.40 6.00 5.43 3.73 10.41 9.19 7.30 15.02 8.29 8.08 7.73 7.80 14.69 30.00 27.00 6.35 7.07 6.21 4.97 7.60 19.28 46 第2章 Dynamic Time Warping を用いた手法 表 2.8: 各特徴量から計算した距離 (ギャップペナルティ、時間正規化あり、単一パ ス) による認証結果 EER[%] 特徴量 x重心 (t) x最小 (t) x最大 (t) x初期 (t) y重心 (t) y最小 (t) y最大 (t) y初期 (t) θ重心 (t) θ最小 (t) θ最大 (t) θ初期 (t) f重心 (t) f最小 (t) f最大 (t) f初期 (t) p(t) ψ(t) φ(t) vx (t) vy (t) |v(t)| θv (t) ∆θ重心 (t) ∆θ最小 (t) ∆θ最大 (t) ∆θ初期 (t) ∆f重心 (t) ∆f最小 (t) ∆f最大 (t) ∆f初期 (t) ∆p(t) ∆ψ(t) ∆φ(t) ip重心 ip最大 ep重心 ep最大 D1 ∆T MCYT100 10.36 10.17 10.54 10.41 9.83 9.90 9.86 12.80 9.94 9.60 10.89 11.42 9.53 9.96 9.45 10.37 12.76 9.33 10.53 8.92 8.63 8.01 7.55 13.16 11.49 12.66 17.87 10.26 9.72 9.82 11.90 17.61 27.85 27.25 8.64 8.81 8.13 8.36 10.56 20.23 BIOMET84 7.35 7.64 8.17 7.31 6.91 6.85 7.17 9.07 6.56 6.92 7.92 7.20 6.90 7.85 7.58 7.98 13.09 8.03 9.00 8.50 9.03 7.41 5.53 11.73 8.60 9.81 16.14 8.34 8.56 8.84 9.30 18.29 23.92 22.55 9.01 8.79 8.61 9.08 11.58 12.77 BIOMET61 8.49 9.26 8.20 9.30 9.06 8.75 7.75 11.32 9.28 8.92 9.22 10.37 7.92 8.58 8.47 9.60 17.45 9.17 9.79 10.43 10.82 9.06 5.77 14.65 11.30 12.52 18.81 11.06 11.64 12.49 12.28 23.22 27.69 22.97 11.91 11.27 10.22 11.74 13.26 13.89 MCYT50 7.20 7.68 7.53 9.31 6.93 7.44 7.23 8.73 6.84 7.40 8.40 10.09 5.87 7.20 6.80 6.77 7.89 5.90 6.89 8.25 6.11 5.29 3.70 10.20 9.26 7.26 15.13 8.29 8.08 7.81 7.73 14.67 30.15 26.94 6.40 6.93 6.20 4.73 7.53 19.40 47 第3章 3.1 隠れマルコフモデルを用いた 手法 はじめに 第二章ではオンライン認証を行う為に署名間の類似度を表す指標として距離を定 義し、その計算方法の説明を行った。本章では署名の類似度として尤度を用いる手 法の提案を行う。 前章でも説明したように、人が筆記するという動作にともない作成される署名は常 にばらついてしまい、同じ本人が書いたとしても全く同一のものとはならない。し かし、同一人物が書いた署名は似ている。そこで、本章では筆記された署名は個人 毎に構築される確率モデルから実現値(観測系列)であるとみなし、その署名を出 力する確率モデルを構築することを考える。そして認証用に署名が入力された場合 は、その署名がモデルから出力される確率を計算することで、本人認証を行う手法 を考える。 提案する手法は署名を筆記する動作をモデル化する為に隠れマルコフモデル(Hidden Markov Model(HMM))[48] を用いたものである。隠れマルコフモデルは文字 認識 [64] や音声認識 [48] の分野で盛んに利用されている手法であり、オンライン署 名認証の分野でも前述した通り多くの研究者によって利用されている。 オンライン署名からは複数の特徴が取得出来ることは前述の通りであるが、デバイ スによって取得可能な情報が異なる。たとえばタブレット PC を用いた場合にはペ ンの傾き(方位角や仰角)を取得することは出来ない。また PDA 等のデバイスは ペンの筆圧を取得することが出来ず、ペンのアップダウン情報とペン位置情報のみ 取得することが可能である。また Munich はビデオカメラで撮影した映像から署名 筆記特徴を抽出しているが、その場合取得出来る情報はペンの位置軌跡だけである [37]。 そこで、本章では署名の特徴としてペンの位置情報のみを利用し、離散隠れマルコ フモデルを用いたオンライン署名認証アルゴリズムの提案を行う1 。 1 オンライン署名の違う特徴や複数の特徴を用いて隠れマルコフモデルにより認証アルゴリズムを 構築することは可能であるが、本章ではそれを対象としない 48 第3章 隠れマルコフモデルを用いた手法 図 3.1: 隠れマルコフモデルを用いたオンライン署名認証 アルゴリズム 3.2 アルゴリズム 提案手法のアルゴリズムを図 3.1 に示す。アルゴリズムは学習フェーズと認証フェー ズに分けられる。 • 学習フェーズ 学習フェーズでは学習データが与えられ、前処理、特徴抽出後に、量子化を行 う。今回利用する隠れマルコフモデルは離散隠れマルコフモデルであるため、 データを量子化する必要がある。量子化した後、モデル構築(学習)として隠 れマルコフモデルのパラメータの決定を行う。 • 認証フェーズ 認証フェーズでは署名が新たに入力されたときに、前処理、特徴抽出後、量子 化を行う。そして量子化後のデータを用いて、学習フェーズで構築されたモデ ルから量子化後データが出力される確率を計算する。そしてその確率値により 判定を行う。 3.2. アルゴリズム 3.2.1 49 量子化 今回はペンの位置情報のみを用いることとしているため、オンライン署名 Sig は Sig = (x(t), y(t)), t = 1, ..., T (3.1) と表される。これに座標変換を施し ˜ = (θ(t), v(t)), t = 1, ..., T − 1 Sig y(t + 1) − y(t) 1 3 θ(t) = tan−1 ,− π ≤ θ ≤ π x(t + 1) − x(t) 2 2 p v(t) = (x(t + 1) − x(t))2 + (y(t + 1) − y(t))2 (3.2) (3.3) (3.4) と表す。 署名を筆記するという動作は実際ペンの動きによって実現するものであるため、特 徴として座標を変換し、ペンの移動方向 θ とペンの速度2 v を用いた。本章ではより アルゴリズムを簡略化するために速度情報を利用せず、角度情報のみで認証を行う ˆ は こととした。従い、今回利用する署名 Sig ˆ = (θ(t)), t = 1, ..., T − 1 Sig (3.5) となる。 次に、この角度情報を量子化する。本手法では式 (3.6) により図 3.2 に示すように L 方向に角度の量子化を行う。 ( 1 (θ(t) < − 21 π + L1 π, θ(t) ≥ 32 π − L1 π) O(t) = k = 1, , , , L k (− π2 + (2n−3)π ≤ θ(t) < − π2 + (2n−1)π ) L L これにより署名は Sig = (O(t)), t = 1, ..., T − 1 (3.6) O(t) = {1, ..., L} となる。 3.2.2 モデル構築(学習) 隠れマルコフモデルは、確率的な状態遷移と確率的なシンボル出力からなるモデ ルである。観測されるシンボル O(t) はある隠れた内部状態 Q(t) から確率的に生成 されるが、その観測シンボル列から内部状態を一意に決定出来ないモデルであり、 2 厳密には速度とした場合は移動距離をそれに要した時間で割る必要がある 50 第3章 隠れマルコフモデルを用いた手法 図 3.2: 離散化の方向 (L=16) その内部状態はマルコフ連鎖に従うモデルである。 観測されるシンボル列を {O(t)}Tt=1 とすると、その観測シンボル列がモデルから出 力される確率は X P ({O(t)}Tt=1 , {Q(t)}Tt=1 |H) P ({O(t)}Tt=1 |H) = allpath = X allpath π(Q(1)) T −1 Y P (Q(t + 1)|Q(t)) t=1 T Y P (O(t)|Q(t)) (3.7) t=1 と表される。ここで P (Q(t + 1)|Q(t)) は内部状態の遷移確率であり、P (O(t)|Q(t)) はある内部状態からシンボルが出力される確率である。また和をとっている allpath は考えられる全ての内部状態の遷移である。 本手法では隠れマルコフモデルを用いて署名筆記モデルを構築することを考える。 隠れマルコフモデルで利用する上で決定をしなくてはならないものは以下のもので ある。 • モデルのトポロジー: 隠れマルコフモデルの構造 • モデルの状態数:隠れた内部状態の数 • 初期状態確率: π(qi ) = P (Q(1) = qi ) • 状態遷移確率: aij = P (Q(t + 1) = qj |Q(t) = qi ) • 出力確率: bjk = P (O(t) = k|Q(t) = qj ) 学習フェーズではこれらのモデルやパラメータ Θ = {πi , aij , bjk } を決定する。 認証フェーズではこれらのパラメータ Θ を用いて、入力された署名がモデルから出 3.3. 実装 51 力される確率を求め、その値により判別を行うこと。パラメータが与えられたもと で、入力署名 Qsig = Ø(t)}Tt=1 がモデルから出力される確率は P (Qsig|H, Θ) = X π(Q(1)) allpath T −1 Y aQ(t)Q(t+1) t=1 T Y bQ(t)O(t) (3.8) t=1 と計算される。 3.3 3.3.1 実装 モデル モデルのトポロジー 署名を筆記するという動作は時間と共にその状態が変化していく。従い本研究で は Lef t − Right モデルを用いた(図 3.3)。Lef t − Right モデルは時間とともに特性 を変えていく信号をモデル化するのに適したモデルである。 オンライン署名認証で隠れマルコフモデルが利用される場合にはこの Lef t − Right モデルがよく用いられる [6][38][63]。 P(O(t ) | Q(t ) = qi ) P (Q(t + 1) = qi +1 | Q(t ) = qi ) Start … … End P (Q(t + 1) = qi | Q(t ) = qi ) 図 3.3: Lef t − Right 隠れマルコフモデル Lef t − Right モデルの基礎的な特性には現在の状態よりも小さい番号の状態へは 遷移することが出来ないという特性がある。本研究で用いる Lef t − Right モデルは さらに強い制約を付け加え、状態の飛び越しを許さないこととした。これは次の制 約を設けることに等しい。 aij = 0 (i 6= j, i 6= j − 1) (3.9) さらに状態は状態 1 から始まり、状態 N+1(終了状態)で終了する。従い初期状態 確率および状態遷移確率は 52 第3章 隠れマルコフモデルを用いた手法 {πj } = (1, 0, · · · , 0) {aij } = a11 a12 a22 (3.10) .. .. 0 . 0 . aN −2N −1 aN −1N −1 aN −1N aN N aN N +1 1 (3.11) となる。 状態数 本論文では状態分けを以下の通り行う。 観測列 {O(t)}, t = 1, ..., T が与えられた下で、本手法では次の規則に従って状態 分けを行う。 O(t) 6= O(t + 1) の時、その観測列間に区切りを入れ、状態を分ける。そして出来 上がった状態の数をモデルの状態数とする。 O(t)= 状態 Vqi = n(O, qi ) = 3,3,3,3, 5,5,5 15,15,15,15 q1 3 4 q2 5 3 q3 15 4 1,1,1 6,6,6,6,6 q4 1 3 q5 6 5 10,10,10 ··· 4,4 q6 10 3 ··· ··· ··· qN 4 2 上の例の場合、学習データは N 個の状態に分けられたので、状態数を N とする。 また Vqi はその規則において状態分けされた場合、状態 i に含まれる観測列の値であ り、n(O, qi ) はその状態に含まれる観測列の数である。これらの値は状態遷移確率、 出力確率を決定する際に用いる。 3.3. 実装 3.3.2 53 学習(パラメータ決定) 隠れマルコフモデルのパラメータの決定には Baum-Welch 法 [2] による逐次最大 化の手法がよく用いられるが、オンライン署名認証問題のような学習データが少な い場合にはゼロ頻度問題 (zero frequency problem[21]) に直面してしまう。そこで本 論文では One-shot のアルゴリズムを提案する。 パラメータの決定方法は以下の通りである。 状態遷移確率 aij = 0 (i 6= j, i = 6 j − 1) n(O, qi ) − 1 aii = (1 ≤ i ≤ N ) n(O, qi ) 1 aii+1 = (1 ≤ i ≤ N ) n(O, qi ) aN +1N +1 = 1 (3.12) (3.13) (3.14) (3.15) 上で決定した状態遷移確率は学習データの状態既知の場合の最尤推定値である。こ のままでは学習データへオーバーフィットしてしまうため、以下の処理により、オー バーフィットを防ぐ。これは文字認識 [64] で用いられている手法である。 old anew = αa aold ii ii + (1 − αa )aii+1 old old anew ii+1 = (1 − αa )aii + αa aii+1 (3.16) αa は状態遷移確率のオーバーフィットを防ぐ為のハイパーパラメータである。 出力確率 各状態の出力確率は以下のように設定する。 Z x=k+0.5 (V (qj ) − x)2 1 1 exp(− )dx + (1 − αb ) bjk = αb 2 Zb x=k−0.5 2σv L (3.17) ここで Zb は正規化定数である。上式で計算される出力確率は釣鐘状の関数と一様分 布を係数 αb で組み合わせた形になっている。 54 第3章 3.3.3 隠れマルコフモデルを用いた手法 認証 確率計算 量子化後の署名 Sig = {O(t)}Tt=1 とモデル H 、パラメータ Θ = {πi , aij , bjk } が与 えられた時、モデルから署名 Sig が出力される確率は P (Sig|H, Θ) = P ({O(t)}Tt=1 |H, Θ) T −1 T X Y Y = πQ(1) aQ(t)Q(t+1) bQ(t)O(t) allpath t=1 (3.18) t=1 で計算される。隠れマルコフモデルは観測列がモデルから出力される確率を全ての 可能性のあるパス(内部状態列)の重みつき平均を取った値として求める。従い、計 算すべきパスが多数存在し、簡単に計算することが出来ない。そこで確率計算には 前向きアルゴリズムや後ろ向きアルゴリズムが用いられる [48]。どちらの手法で計 算しても結果は変わらないため、本論文では以下の前向きアルゴリズムを記述する。 設定 αt (i) を次の通り設定する αt (i) = P (O(1), ..., O(t), Q(t) = qi |H, Θ) (3.19) α1 (i) = πQ(1) bQ(1)O(1) , i = 1, ..., N (3.20) 初期化 繰り返し t = 2 から T まで X αt+1 (i) = αt (j)aji biO(t) , i = 1, ..., N (3.21) j 終了 P ({O(t)}Tt=1 |H, Θ) = X αT (j) (3.22) j 尚、Lef t − Right モデルを用いる場合には初期状態は最初の状態とし、最終状態 は終了状態で終了するとする。図 3.3 のモデルを用いた場合は状態 N からのみ終了 状態に遷移可能である為、署名 Sig がモデルから出力される確率は ¯ P (Sig|H, Θ) = αT (N )aN N +1 として計算される。 (3.23) 3.4. 実験 55 判定 テスト署名 Qsig が与えられた時、量子化後のテスト署名を Qsig とすると、判別 を以下の基準に従い行う。 ( Genuine if P (Qsig|H, Θ) ≥ T hreshold (3.24) Qsig = F orgery if P (Qsig|H, Θ) < T hreshold 3.4 実験 データベースを用いた提案手法の精度評価実験を行った。 3.4.1 実験設定 学習データを 5 個とし、学習データ毎にモデルを構築し、実験を行った。実験に 用いたハイパーパラメータは以下の通りである 表 3.1: 実験に用いたハイパーパラメータ αa αb σv 3.4.2 0.95 0.99 0.2 実験結果 各データベーズを用いた精度評価実験結果を表 3.2 に示す。 表 3.2: 隠れマルコフモデルを用いたアルゴリズムの実験結果 データベース EER [%] MCYT100 BIOMET84 9.81 9.96 BIOMET61 8.91 MCYT50 7.13 56 3.5 第3章 隠れマルコフモデルを用いた手法 隠れマルコフモデルと DTW の関係 第二章では DTW を用いた署名間の距離の計算方法につき、説明を行った。また 本章では、隠れマルコフモデルを用いて署名の出力確率を計算した。本セクション では、これらの 2 つの関係について考察してみる。尚、以後の説明では隠れマルコ フモデルの出力確率は連続値とする。 まず隠れマルコフモデルから署名 Qsig = {O(t)}Tt=1 が出力される確率は P (Qsig|H, Θ) = P ({O(t)}Tt=1 |H, Θ) X = P ({O(t)}Tt=1 , {Q(t)}Tt=1 |H, Θ) allpath = QT −1 X πQ(1) T −1 Y allpath aQ(t)Q(t+1) T Y bQ(t)O(t) (3.25) t=1 t=1 と表せる。ここで πQ(1) t=1 aQ(t)Q(t+1) は内部状態の遷移の様子を表しており、そ の遷移により構成されるパスの確率をみなすことが出来る。そこで、 P (pathi |H, Θ) = πQ(1) T −1 Y aQ(t)Q(t+1) (3.26) t=1 とおくと、式 (3.25) は P (Qsig|H, Θ) = X P (pathi |H, Θ)P ({O(t)}Tt=1 |pathi , H, Θ) (3.27) i となる。この式が意味していることは、隠れマルコフモデルでは、可能性のあるパ スに重みをつけ、P ({O(t)}Tt=1 |pathi , H, Θ) の重みつき平均を取っていると考えるこ とが出来る。 では重み付け平均を取っている P ({O(t)}Tt=1 |pathi H, Θ) は P ({O(t)}Tt=1 |pathi , H, Θ) = T Y bQ(t)O(t) (3.28) t=1 である。 ここで上式両辺の対数を取り、マイナスをかけると − ln P ({O(t)}Tt=1 |path, H, Θ) = − ln( T Y bQ(t)O(t) ) t=1 = T X − ln(bQ(t)O(t) ) t=1 (3.29) 3.5. 隠れマルコフモデルと DTW の関係 57 となる。ここで例えば出力確率として次のような分布を仮定したとする bQ(t)O(t) = 1 exp(−|O(t) − V (Q(t))|) Z (3.30) 式 (3.30) を式 (3.29) に代入すると − ln P ({O(t)}Tt=1 |path, H, Θ) = T X |O(t) − V (Q(t))| + Z 0 (3.31) t=1 また bQ(t)O(t) = 1 (O(t) − V (Q(t))2 exp(− ) Z 2σ 2 (3.32) とした場合は − ln P ({O(t)}Tt=1 |path, H, Θ) = T X (O(t) − V (Qt ))2 t=1 2σ 2 + Z0 (3.33) となる。これらの式と DTW を用いて計算を行った距離を比較すると類似している。 これらのことから、DTW を用いた距離計算と隠れマルコフモデルを用いた確率計 算の類似点、及び相違点がわかる。まず式 (3.31) は、ある状態 Q(t) の代表値と観測 シンボル列 O(t) の差を計算していることに等しい。また式 (3.33) のように出力確率 として正規分布を仮定した場合は、モデルから観測シンボル列が出力する確率の対 数はある状態 Q(t) の代表値と観測シンボル列 O(t) の差の二乗を計算し、足し合わせ たものから計算される。実際隠れマルコフモデルの出力確率推定に Baum-Welch を 用いた場合は複数の学習データを用いてパラメータを推定することとなり式 (3.30) のように単純な形になることは考え難いが、それでも隠れマルコフモデルの状態か らの出力確率は、2 つの観測列間に定義される距離のようなものの変形と考えるこ とが出来る。隠れマルコフモデルでは、この出力確率を状態毎に設定する。これは 距離計算を考えた場合に、対応する部分において異なる距離尺度を利用し距離計算 を行っていることに対応するのではないかと考える。実際バイオインフォマティク スの分野で、環境に応じて距離マトリクスを変更するという手法 [5] が提案されてい るが、HMM ではこのように環境に依存した距離設定のようなものを自然に行って いるものと考えられる。 当然ながら HMM と DTW には違いもあり、DTW を用いて距離を計算する場合は、 最適の経路(HMM は Viterbi アルゴリズムで実現)による距離を計算しているのに 対し、通常の HMM は出力確率の重み付け期待値を計算している。また DTW の場 合はテストされる署名も伸縮されることがあるが、隠れマルコフモデルを用いた場 58 第3章 隠れマルコフモデルを用いた手法 合は、テストされる署名が伸縮されることがない点も異なる。 オンライン署名認証を考えた場合、同じ特徴を用いたとしても個人によって安定な 部分(セグメント)と不安定な部分(セグメント)が存在すると考えられる。その ような場合は全ての部分で同じ距離を定義するよりも、安定の部分では距離の重み を大きくし、不安定の部分では距離の重みを小さくする等により精度を向上させる ことが可能であると考えられる。実際距離を用いたオンライン署名認証ではセグメ ント毎に分けて距離を計算し、それらを組み合わせる手法 [26] も提案されているが、 HMM を用いることによりそれらのことも実現出来ると考える。また DTW と違い、 可能性のあるパスの重み付け期待値を求めることで、最終的な確率を求めるという 確率的枠組みも、行動的特徴を用いたオンライン署名認証では有効であると考えら れる。但し、オンライン署名認証では学習データの数が限られているために、この 制約に対する対策を考える必要がある。 3.6 まとめ 本章では隠れマルコフモデルを用いたオンライン署名手法の初期的実験を行った。 今回の手法はペンの移動方向にのみ焦点を絞った手法であるが、他の特徴について もモデル化が可能であり、改良する余地は非常に多いと思われる。 また隠れマルコフモデルと DTW との関連についても考察を行った。考察より、隠 れマルコフモデルは DTW を一部包括したモデルとなっていることがわかる。隠れ マルコフモデルはより広い表現能力を持っていることより、良いパラメータが決定 出来ればより精度の高いアルゴリズムの構築に有効であると考えられる。このパラ メータの決定方法が非常に重要になってくると思われるが、オンライン署名認証で は学習に利用出来るデータが非常に少ないことより、何らかの形で事前情報を付け 加えることが精度向上の鍵になると考えられる。従い、どのような事前情報をどの ように考慮するかを良く検討する必要がある。 59 第4章 4.1 非線形判別法 はじめに 第二章および第三章ではオンライン署名認証を行う為に必要な署名間の類似度を 求める方法として距離や尤度を計算する手法の説明を行い、それらの値を用いて認 証実験を行い、結果について報告を行った。それらの結果はオンライン署名の特徴 毎に計算された距離の中から、それぞれを独立に用いた場合の認証結果であった。 個人認証を行うことは可能ではあるが、複数ある距離を単体で用いただけでは十分 な精度を得られないという結果であった。 従いより精度の高いアルゴリズムを構築するためにはさらなる工夫が必要である。 そこで、本章では第二章や第三章で求めた距離や尤度を複数組み合わせ、これらを 多次元空間内で非線形に判別を行うことで精度を向上させる手法の提案を行う。 図 4.1-4.6 は第二章で計算したいくつかの距離の二次元空間に本人署名と他人署名 の分布をプロットしたものである。これらの図から判断すると、複数の距離を用い て判別を行う際にはこれらの距離空間内で線形に判別を行うのではなく、非線形に 判別面を構成し、判別を行うことにより、より精度の高い認証アルゴリズムを構築 することが可能と考えられる。そこで、本章では、複数の特徴から計算した距離を 用いて、距離空間上で非線形に本人署名と他人署名を判別する手法の提案を行う。 非線形判別を行うためには色々な手法が考えられるが、本論文においては、三層 パーセプトロンを用いた。三層パーセプトロンのパラメータ推定には階層ベイズ的 枠組み [33] を利用し、マルコフ連鎖モンテカルロ法(Markov Chain Monte Carlo (MCMC))[14] を用いた。 4.2 アルゴリズム 図 4.7 に全体のアルゴリズムを示す。アルゴリズムは学習フェーズと認証フェー ズの二つのフェーズから構成されている。 • 学習フェーズ 学習フェーズでは、学習用署名が与えられ、前処理、特徴抽出を行った後、リ ファレンス署名を選択し、第二章で説明した手法により学習用署名とリファレ 60 第 4 章 非線形判別法 図 4.1: 2 次元距離空間(高度-時間) での真筆、偽筆の分布 図 4.2: 2 次元距離空間(方位角-高度)での真筆、偽筆の分布 図 4.3: 2 次元距離空間(筆圧-方位角)での真筆、偽筆の分布 4.2. アルゴリズム 図 4.4: 2 次元距離空間(ベクトル長さ-筆圧)での真筆、偽筆の分布 図 4.5: 2 次元距離空間(ベクトル角度-ベクトル長さ)での真筆、偽筆の分布 図 4.6: 2 次元距離空間(速度 x、速度 y)での真筆、偽筆の分布 61 62 第 4 章 非線形判別法 図 4.7: 非線形判別法のオンライン署名認証アルゴリズム ンス署名間で複数の距離(距離ベクトル)を計算する。それらの距離と教師信 号によりモデル学習用データを作成し、モデルパラメータの推定を行う。 • 認証フェーズ 認証フェーズでは、テスト用署名が入力される。前処理、特徴抽出後その署名 とリファレンス署名の距離ベクトルを計算する。計算された距離は正規化され た後、三層パーセプトロンへの入力として用いられ、学習フェーズで推定され たパラメータを用いて入力された署名が本人によって書かれた確率(本人署名 である確率)を計算し判定を行う。 4.2.1 モデル構築(学習) 本提案手法はオンライン署名の複数の特徴量から、距離ベクトルを計算し、多次 元距離空間内で判別を行う手法である。実際は距離ベクトルを用いて、入力された 署名 Qsig が本人によって書かれた(本人署名である)確率 P (Qsig = Genuine) を 計算し、その確率値により判別を行うことで、距離空間内での非線形判別を実現し ている。 4.2. アルゴリズム 63 求めたい確率は P (Qsig = Genuine) = f (Dist(Qsig, Rsig); Θ) (4.1) ここで、f (·; Θ) は用いるモデルであり、Θ はそのモデルのパラメータである。どの ようなモデルを用いるかということも重要であるが、ここではどのようにモデルの パラメータを推定するかが非常に重要である。パラメータの推定には例えば最尤推 定値1 や MAP(Maximum A posteriori Probability)推定2 などが用いられることも あるが、オンライン署名認証においては学習に利用出来るデータが非常に少ないこ とより、パラメータを点として推定するのは好ましくないと考えられる。 そこで、学習データが与えられた下でのパラメータの事後分布をベイズ推定、パラ メータを分布として推定し、それを用いて入力された署名が本人署名である確率 P (Qsig = Genuine) を求める。 学習データ D が与えられた下でのパラメータ Θ の事後分布はベイズの公式を用 いて P (Θ|D) = R P (D|Θ)P (Θ) P (D|Θ0 )P (Θ0 )dΘ0 と表すことが出来、この事後分布を用いて式 (4.1) を Z P (Qsig = Genuine) = f (Dist(Qsig, Rsig); Θ)P (Θ|D)dΘ (4.2) (4.3) とし、確率値として求める。 上式により、求めたい確率を理論的には計算することが可能となったが、現実的に は、上記の積分を解析的に解くことが困難な場合が多い。そこで、モンテカルロ近 似を用いて、式 (4.3) を以下のように近似を行う。 M 1 X P (Qsig = Genuine) ≈ f (Dist(Qsig, Rsig); Θ(m) ) M m=1 (4.4) Θ(m) ∼ P (Θ|D) ここで Θ(m) はパラメータの事後分布 P (Θ|D) からのサンプルであり、M はサンプ ルの数である。 事後分布からパラメータのサンプルを採取することが出来れば、式 (4.4) により、 入力された署名が本人によって書かれた確率 P (Qsig = Genuine) を計算することが 出来る。 事後分布からのサンプルは本章ではマルコフ連鎖モンテカルロ法(Markov Chain Monte Carlo(MCMC))を用いて採取する。 1 2 ΘM L = argmaxP (D|Θ) ΘM AP = argmaxP (Θ|D) 64 第 4 章 非線形判別法 マルコフ連鎖モンテカルロ法 式 (4.2) で表されるパラメータ事後分布からサンプルを採取することを考える。パ ラメータの事後分布は分母に積分を含んでいるため計算が困難であり、このままで は事後分布に従うサンプルを採取することが容易ではない。そこでマルコフ連鎖モ ンテカルロ法を用いる。マルコフ連鎖モンテカルロ法はマルコフ連鎖を利用して、 事後分布からのサンプルを可能とする方法である [14]。 まず、求めたい分布である事後分布を定常分布とするマルコフ連鎖を作成出来た とする。定常分布を P (Θ)、P (Θ) を定常分布とするマルコフ連鎖を T (Θ|Θ0 ) とする と、マルコフ連鎖の状態が有限個の場合、分布が定常であるとは以下の式を満たす ことである。 X P (Θ) = P (Θ0 )T (Θ|Θ0 ) (4.5) Θ0 マルコフ連鎖モンテカルロを用いる際には以下のより厳しい詳細釣合い条件を仮定 する。 P (Θ)T (Θ0 |Θ) = P (Θ0 )T (Θ|Θ0 ) (4.6) この時、式 (4.6) を満たすマルコフ連鎖 T (Θ|Θ0 ) を見つけられたとすると、このマル コフ連鎖を繰り返すことで、任意の分布を定常分布に近づけることが可能である。 ある初期分布 P0 (Θ0 ) をマルコフ連鎖 T (Θ|Θ0 ) により変換した分布 P1 (Θ) を考える。 X P1 (Θ) = P0 (Θ0 )T (Θ|Θ0 ) (4.7) Θ0 ここで、P0 (Θ) をマルコフ連鎖 T (Θ|Θ0 ) で遷移させた後の分布 P1 (Θ) は P1 (Θ) = cP (Θ) + (1 − c)R1 (Θ) 0 < c < 1, 0 ≤ R1 (Θ) ≤ 1, X (4.8) R1 (Θ) = 1 Θ と記述することが出来る。つまりマルコフ連鎖により分布の一部が定常分布に遷移す るのである。次にこの分布 P1 (Θ) にマルコフ連鎖 T (Θ0 |Θ) を作用させた分布 P2 (Θ) は P2 (Θ) = P Θ0 = P1 (Θ0 )T (Θ|Θ0 ) cP (Θ) + (1 − c) X Θ0 (4.9) 0 0 R1 (Θ )T (Θ|Θ ) (4.10) 4.2. アルゴリズム 65 ここで、任意の分布を初期分布としてもマルコフ連鎖 T (Θ|Θ0 ) により分布の一部が 定常分布に遷移するので X R1 (Θ0 )T (Θ|Θ0 ) = cP (Θ) + (1 − c)R2 (Θ) (4.11) Θ0 となり P2 (Θ) = (1 − (1 − c)2 )P (Θ) + (1 − c)2 R2 (Θ) (4.12) となる。この変形を繰り返すと、m 回遷移した後の分布 Pm (Θ) は次のようになる。 Pm (Θ) = (1 − (1 − c)m )P (Θ) + (1 − c)m Rm (Θ) X 0 < c < 1, 0 ≤ Rm (Θ) ≤ 1, Rm (Θ) = 1 (4.13) Θ これより、m → ∞ の時、Pm (Θ) → P (Θ) となることがわかる。 そこで、P (Θ) 定常分布とするマルコフ連鎖を作成出来れば、任意の初期分布からは じめて、十分マルコフ連鎖を繰り返した後の分布は定常分布になることがわかった。 次はこのマルコフ連鎖の作成方法について述べる。P (Θ) を定常分布とするマルコフ ン連鎖は、メトロポリス法やギブスサンプリング法により作成することが出来る。 メトロポリス法 求めたい定常分布をパラメータの事後分布 P (Θ|D) とする。メトロポリス法では 以下のようにマルコフ連鎖 T (Θt+1 |Θt ) を作成する。 Step.1 (m) プロポーザル分布 Q(Θ, Θ0 ) を用いて、サンプル {Θt } からサンプルの候補 {Θ̂(m) } を発生させる。 (m) Θ̂(m) ∼ Q(Θ, Θt ) Step.2 取得したサンプルの候補に対し、事後確率 P (Θ̂(m) |D) を計算し、以下の手順 により受領、棄却を決定する。 if if P (Θ̂(m) |D) (m) P (Θt |D) P (Θ̂(m) |D) (m) P (Θt |D) ≥ 1 受領 (m) < 1 確率 P (Θ̂(m) |D) で受領、確率 1 − P (Θt |D) P (Θ̂(m) |D) (m) P (Θt |D) で棄却 (4.14) Step.3 (m) if 受領 Θt+1 ← Θ̂(m) (m) (m) if 棄却 Θt+1 ← Θt (4.15) 66 第 4 章 非線形判別法 上記 Step.2 で事後分布 P (Θ̂(m) |D) の計算を行う必要が生ずるが、メトロポリスで必 要な値は一つ前のパラメータと候補の事後分布の比であり P (Θ̂(m) |D) (m) P (Θt |D) = P (D|Θ̂(m) )P (Θ̂(m) ) (m) (4.16) (m) P (D|Θt )P (Θt ) であるため、式 (4.2) の分母にある積分計算を行う必要がない。 ギブスサンプリング ギブスサンプリングは以下のように条件付き分布からサンプリングを行うことで、 マルコフ連鎖を作成する。まずパラメータ Θ を成分に分け Θ = (Θ1 , Θ2 , ..., ΘN ) (4.17) とする。ある変数 i に着目し、その Θi を i 以外の成分の条件付き確率とし、サンプ ルを取る。 (m+1) ∼ P (Θ1 |Θ2 , Θ3 , ..., ΘN ) (m+1) (m) (m) ∼ P (Θ2 |Θ1 , Θ3 , ..., ΘN ) .. . (m) ∼ P (Θi |Θ1 .. . (m) ∼ P (ΘN |Θ1 Θ1 (m) Θ2 Θi ΘN 4.2.2 (m) (m+1) (m) (m) (m+1) (m) (m) , ..., Θi−1 , Θi+1 , ...., ΘN ) (m+1) (m+2) , Θ2 (4.18) (m+1) , ..., ΘN −1 ) 認証 入力された署名 Qsig が与えられた時、リファレンス署名 Rsig と比較し、正規化 された距離 Dist(Qsig, Rsig) を計算する。そして計算された距離と採取された事後 分布からのサンプル Θ(m) , m = 1, ..., M を用いて入力された署名 Qsig が本人署名で ある確率 P (Qsig = Genuine) を式 (4.4) により求め、以下基準で判定を行う。 ( Qsig = Genuine if P (Qsig = Genuine) ≥ T hreshold F orgery if P (Qsig = Genuine) < T hreshold (4.19) 4.3. 実装 4.3 4.3.1 67 実装 学習データ 提案するオンライン署名認証アルゴリズムでは、距離ベクトルを計算し、その距 離ベクトルを利用して認証を行う。従い、学習用署名から学習データを作成し、そ れを用いて認証を行うモデルの作成をする。 学習用署名を Sig 、リファレンス署名を Rsig とするとき、モデル学習用データ D を 次のように設定する。 D = {(Dist(Sign , Rsig), tn }, n = 1, ..., N (4.20) Dist(Sign , Rsig) は次元毎に定数で正規化された距離ベクトルであり Dist(Sign , Rsig) = (dn1 , dn2 , .., dnK ) = (Distn1 /L1 , Distn2 /L2 , ..., DistnK /LK ) である。K は入力ベクトルの次元であり用いる特徴の数に等しい。 tn は n 番目データの教師信号であり以下のように定める。 ( 1 if Sign = Genuine tn = 0 if Sign = F orgery (4.21) (4.22) オンライン署名認証問題においては、学習に利用出来るのは、一般的に数個の本人 署名と、ランダム偽筆のみである。実際のアプリケーションを想定した場合、悪意 あるなりすまし者により入力される偽筆はランダム偽筆ではなく、訓練偽筆と言わ れる、巧妙に本人署名を真似た署名であることが予想されるため、学習に訓練偽筆 を利用したい。しかしながら署名の形状がユーザ毎で異なるため、全てのユーザに 対する訓練偽筆を用意することは現実的には困難である。学習データとして訓練偽 筆を用いることでアルゴリズムの精度を向上させることが出来る [44],[60] が、本論 文では現実的な状況を考慮し、学習に訓練偽筆ではなくランダム偽筆を用いる。 4.3.2 モデル 本章ではモデルとして図 4.8 と以下の式で表される三層パーセプトロンを用いた。 K h X X ai σ( (bik dnk + ci )) + c0 ) f (Dist(Sign , Rsig); w) = σ( i=1 k=1 (4.23) 68 第 4 章 非線形判別法 図 4.8: 三層パーセプトロンと結合重みのグループ化 ここで w はパラメータであり、三層パーセプトロンの結合重みベクトルであり w = (ai , bik , cj ) (4.24) i = 1, ..., h, k = 1, ..., K, j = 0, ..., h σ(u) は σ(u) = 1 1 + e−u (4.25) であり、h は三層パーセプトロンの隠れ層の数である。図 4.8 内のパラメータ(結合 重みベクトル)はグループ分けされているが、このグループ分けの理由については 後に説明を行う。 4.3.3 学習 (パラメータ推定) 式 (4.23) で表されるモデルのパラメータの推定を行う。本手法では学習データが 与えられた下でのパラメータの事後分布をベイズ推定し、式 (4.4) によりその期待値 を計算することで求めたい確率の計算を行う。そこで学習の目的は学習データが与 えられた下でのパラメータの事後分布からサンプルを採取することである。事後分 布からのパラメータのサンプルはマルコフ連鎖モンテカルロを用いることにより実 現できることは述べた通りであるが、以降では具体的な方法について説明を行う。 4.3. 実装 69 本論文では階層ベイズ的枠組みを利用している。学習はモデル f (·; w) の結合重み w を求めることが目的であるが、その結合重み w はハイパーパラメータと呼ばれる パラメータにより制御されることを考え、そのハイパーパラメータまで含めて適切 に結合重み w 推定し、より良い結合重み w を求めようという手法である。結合重み w とハイパーパラメータ α の事後分布は P (w, α|D, H) = P (w|D, α, H)P (α|D, H) (4.26) と表され、右辺はそれぞれ P (D|w, α, H)P (w|α, H) P (D|w, α, H)P (w|α, H)dw P (D|w, H)P (w|α, H) = R P (D|w, H)P (w|α, H)dw P (D|α, H)P (α|H) P (α|D, H) = P (D|H) P (w|D, α, H) = R (4.27) (4.28) (4.29) で表される。 オンライン署名認証では、判別は、入力された署名が本人署名か他人署名かの二 クラス判別問題である。従い、式 (4.22) の通り教師信号 tn は 0 か 1 の 2 値である。 そこで結合重みの尤度を次式で定義する。 P (D|w, H) = N Y (f (Dist(Sign , Rsig); w))tn (1 − f (Dist(Sign , Rsig); w))1−tn(4.30) n さらに対数尤度を考え ln P (D|w, H) = N X (tn ln(f (Dist(Sign , Rsig); w)) n=1 +(1 − tn )(ln(1 − f (Dist(Sign , Rsig); w)))) (4.31) = G(D|w, H) 結合重みベクトル w の事前分布、ハイパーパラメータ α の事前分布をそれぞれ P (w|α, H) = K+2 Y g=1 κ /2 αg αg g exp(− ||wg ||2 ) κ /2 (2π) g 2 α = (α1 , ..., αK+2 ), αg ∈ R, κg = dimwg P (α|H) = K+2 Y g=1 P (αg |H) (4.32) 70 第 4 章 非線形判別法 = ψα /2 K+2 Y g=1 ∞ Z Γ(a) = (ψαg /2κ)αg g ψα /2−1 αg g exp(−αg ψαg /2καg ) Γ(ψαg /2) (4.33) ba−1 exp(−b)db, a > 0, ψαg , καg > 0 0 とする。 結合重み w の事前分布は結合重みを小さい値に留め、過学習を抑える形となってお り、ハイパーパラメータ αg がその度合いを調整している。ハイパーパラメータ αg の値が大きければ、結合重みはゼロの中心に集中することになり、モデルに及ぼす 影響力が小さくなる。それに対して αg が小さければ、重み wg は大きな値をとるこ とが可能になり、モデルへの影響力が大きくなる。 ここで結合重み w は以下のようにグループに分けされている。 w = (w1 , ..., wK+2 ) wg = {big }hi=1 , g = 1, ..., K wK+1 = {ci }hi=0 wK+2 = {ai }hi=1 (4.34) グループ分けは三層パーセプトロンへの入力を K 次元とすると、K+2 個のグループ に分けられ、各次元に対応する結合重みが同じグループに分類される (図 4.8)。 つまり 入力ベクトル 1 次元目 入力ベクトル 2 次元目 → → グループ w1 w2 .. . 入力ベクトル K 次元目 Bais 隠れ層から出力層 → → → wK wK+1 wK+2 パラメータ {bi1 }hi=1 {bi2 }hi=1 ハイパーパラメータ α1 α2 {biK }hi=1 {ci }hi=0 {ai }hi=1 αK αK+1 αK+2 とする。それぞれの入力はモデルに異なる影響を及ぼすことが予想されるため、 次元毎にハイパーパラメーターを設定し、制御するのである。そしてこのハイパー パラメータも学習することにより入力変数の自動選択が可能となる。この手法は Automatic Relevance Determination (ARD) といわれる手法であり、MacKay や Neal によって提案されている [29][42]。 さて、式 (4.28) は以下のように書き換えることが出来る。 P (w|D, α, H) ∝ K+2 Y g=1 K+2 X αg αg g exp(−(−G(D|w, H) + ||wg ||2 )) (2π)κg /2 2 g=1 κ /2 (4.35) 4.3. 実装 71 図 4.9: メトロポリス−ギブスサンプリング P (α|w, D, H) ∝ P (w|D, α, H)P (α|H) (4.36) これらの式により、我々はパラメータの事後分布よりサンプルを採取するのである が、本論文では図 4.9 に示すようにハイパーパラメータの更新にはギブスサンプリ ングを、結合重みの更新にはメトロポリスを用いた。 4.3.4 認証 マルコフ連鎖モンテカルロ法は初期分布からのサンプリングからはじめ、マルコ フ連鎖を多数回繰り返すことにより、分布を定常分布に近づける手法である。従い、 前半のサンプルは定常分布、本論文ではパラメータの事後分布からのサンプルと考 えることが出来ない。従い認証の際には、学習回数を J1 とすると、最初の J2 個の サンプルは初期分布に依存しているとして捨て(Burn-in)、J1 − J2 を事後分布から のサンプルとして利用する。そして入力された署名 Qsig が本人署名である確率を J1 X 1 P (Qsig = Genuine) = f (Dist(QSig, Rsig); w(m) ) J1 − J2 m=J +1 2 として計算する。 (4.37) 72 第 4 章 非線形判別法 4.4 4.4.1 実験 実験設定 本実験では MCYT と BIOMET データベースを用いて精度評価実験を行った。リ ファレンス署名は MCYT100、MCYT50、BIOMET61 は最初の 5 つをリファレンス 署名とし、BIOMET84 はセッション 2 の最初の 5 つをリファレンス署名として実験 を行った3 。モデル学習にはそれぞれのリファレンス署名とテストされるユーザ以外 の本人署名をランダム偽筆として利用し、実験を行った。 表 4.1: 非線形判別法でのパラメータ、ハイパーパラメータ 隠れ層の数 N 学習回数 J1 サンプル回数 J2 ランダムウォーク 6 10000 5000 0.01 三層パーセプトロンへの入力 Dist(Qsig, Rsig) は以下の 4 次元ベクトルを入力し、 実験を行った。距離計算には時間正規化を行わず、重複を用いた単一パスで距離計 算を行った。 Dist = (D1(2.54), Distψ , Distφ 、∆T (2.57)) 4.4.2 (4.38) 実験結果 実験結果を表 4.2 に示す。実験結果は 20 回の実験を行い、その平均、最小、最大 の EER を示している。 4.5 まとめ 本章では複数の特徴から計算した多次元距離空間内で非線形に本人署名と他人署 名を判別する非線形手法の提案を行い、マルコフ連鎖モンテカルロを用いてパラメー タを推定し、三層パーセプトロンにより判別を行った。 3 リファレンス署名は最初に提出された署名を用いるのが自然であるが、BIOMET データベース を用いて精度評価実験を行っている報告 [59] と同じような条件とする為、BIOMET84 については セッション 2 からリファレンス署名を選んでいる 4.5. まとめ 73 表 4.2: 実験の結果 データベース MCYT100 BIOMET84 BIOMET61 MCYT50 平均 EER[%] 5.32 7.05 9.11 2.63 min EER [%] 4.84 6.51 8.69 2.00 max EER [%] 5.96 7.73 9.67 3.08 データベースを用いた認証精度実験結果より、多次元で認証を行うことにより精度 の向上が確認出来、提案アルゴリズムの有効性を確認することが出来た。各データ ベースについて見てみると、MCYT に関しては、かなりの精度向上が見られ先行研 究 [9]4 と同程度の精度を実現することが出来たのに対し、BIOMET データベースの 結果では、先行研究 [59] と比較した場合、結果としてはあまり良くない精度となっ てしまった。もちろん先行研究が異なるグループのアルゴリズムであることより、 先行研究との比較だけでは結論を出せないが、やはり BIOMET データベースの結 果の方が良くないと思われる。 MCYT と BIOMET は取得された環境が異なるが、大きな違いは本人署名を取得し た期間であると思われる。MCYT は数回のセッションに分けて本人署名を取得して いるが、そのセッション間はわずか数分である。それに対し、BIOMET はセッショ ンの間が 5ヶ月もある。特に BIOMET61 は最初のセッションで収集した署名を学習 データとし、5ヶ月後に収集したデータをテストデータとして利用している。これが 結果の差を招いた一つの原因ではないかと考えられる。つまり、学習データで作成 した良い判別面が、数ヵ月後には特徴毎異なる経時変化をしたため、良い判別面の 形状が変わってしまったという可能性がある。非線形判別の経時変化への対応手法 は第六章で提案を行う。 また今回の提案アルゴリズムには三層パーセプトロンの隠れ層の数 N やランダム ウォークレベル等のパラメータや、距離の正規化定数等のパラメータが存在する。 これらのパラメータを調整することにより、認証精度はある程度変化する。今回は MCYT の精度がある程度良くなるパーパラメータで実験を行ったことも結果に差の 出た原因の一つであると考えられる。但し、実際には全てのユーザに対して高い認 証率を実現出来るアルゴリズムを構築する必要があり、パラメータをどのように設 定するかも重要な課題である。 4 実験条件は全く同一ではなく、[9] では 330 人分のデータ(真筆 25 個/人、訓練偽筆 25 個/人を 用いて認証実験を行っている) 74 第 4 章 非線形判別法 0.2 0.18 0.16 0.14 FAR 0.12 0.1 MCYT100 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 4.10: MCYT100 の実験結果 0.2 0.18 0.16 0.14 FAR 0.12 0.1 BIOMET84 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 4.11: BIOMET84 の実験結果 4.5. まとめ 75 0.2 0.18 0.16 0.14 FAR 0.12 BIOMET61 0.1 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 4.12: BIOMET61 の実験結果 0.2 0.18 0.16 0.14 FAR 0.12 MCYT50 0.1 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 4.13: MCYT50 の実験結果 77 第5章 5.1 ユーザ共通 Fusion モデル はじめに 第四章では複数の特徴量から計算した距離を用いて、多次元の距離空間において 本人が筆記した本人署名となりすまし者の筆記した他人署名を非線形に判別を行う ことを提案した。このように複数の特徴を組み合わせることで、認証精度の向上を 目指す手法はバイオメトリクスの分野においては Fusion 手法 [23][51] として盛んに 研究が行われている。Fusion とは、複数の特徴やスコア、判定結果を組み合わせる ことで、認証精度を高めようという手法であり、単純に多数決をとるものや、複数 のスコアの和や積を計算するもの [22]、複雑なモデルを構築するもの等がある。ま た、例えば顔や指紋といった複数の異なるモダリティを組み合わせることで、より 精度の高い認証システムを構築するマルチモーダル手法も Fusion の一つである。 オンライン署名認証においては、オンライン署名から取得出来るデータが複数であ り、これらのデータから複数の特徴を抽出し、それらを組み合わせて認証を行うと いう手法がとられてきた。従い、これらの手法も Fusion 手法である。 本章ではオンライン署名の複数の特徴を用いて、それらを組み合わせることで認証 精度の向上を目指すアルゴリズムの提案を行い、その方法としてユーザ共通 Fusion モデルの提案を行う。ユーザ共通 Fusion モデルとは第四章で提案した非線形判別法 のように、個人毎にモデルを構築するのではなく、全てのユーザが共通して利用す る Fusion モデルを構築することである。 オンライン署名認証は、ID とオンライン署名が与えられた時に、その入力された署 名を筆記した人物が事前に ID 登録をした人物と同一人物かどうかを判定する手法 である。従い、個人毎にその判定モデルを構築することが自然であると考えられる。 しかしながら、個人毎に判定モデルを構築すると、学習データの制約にぶつかって しまう。その制約とは、学習に利用出来る本人署名(真筆)数と偽筆の種類である。 まず本人署名数の制約は、実際のアプリケーションを考えた場合、ユーザの利便性 などの点から、取得可能なのはせいぜい 5 個程度と思われる。この 5 個の本人署名 をリファレンス署名とモデル学習用に利用する必要がある。 偽筆種類の制約は、個人毎にモデルを構築する場合、個人毎の署名に対する訓練偽 筆を収集することは現実的に困難であるという点である。オンライン署名認証問題 においては、認証に用いるものは個人毎に形状も筆記方法も異なる署名である。従 78 第5章 ユーザ共通 Fusion モデル い全ての個人署名に対して訓練偽筆を収集するためには、全ての登録ユーザの異な る署名に対し個別に訓練偽筆を収集しなくてはならなくなり、対応が困難となるの である。そこで第四章で提案した手法では、偽筆として訓練偽筆を用いるのではな く、ランダム偽筆を用いた。ランダム偽筆は訓練偽筆と比較すると収集が容易であ る。たとえば、ターゲットとなっている人物以外の本人署名をランダム署名として 利用することが出来る。ランダム偽筆を用いる学習の場合、収集が容易であるため 多数の偽筆を用意することが出来る一方、問題も存在する。我々が想定しているオ ンライン署名認証システムは、入力された署名が本人によって筆記されたものなの か、それともなりすまし者によって筆記されたものなのかを判定するものであるが、 悪意あるなりすまし者は、システムを騙すために本人署名に似た署名を入力するこ とが予想される。つまり入力が予想される偽筆は訓練偽筆である。しかしながら学 習に用いることが出来る偽筆はランダム偽筆である。そこで、訓練偽筆を学習に用 いる方法がないかを考え、我々はユーザ共通 Fusion モデルの提案を行う。 ユーザ共通 Fusion モデルは、テスト署名が入力された時に個人毎に登録されてい るリファレンス署名との距離ベクトルを計算し、その距離ベクトルを用いて入力ベ クトルを作成、この入力ベクトルをモデルに入力することで、本人署名か他人署名 かを判別するモデルである。ユーザ共通の意味は全てのユーザが同じ Fusion モデル を利用するということである。ユーザ共通モデルを用いることの最大の理由はユー ザ共通モデルとすることで、モデルから個人性を排除している点である。モデルに 個人性がある場合は個人毎に本人署名と他人署名を集める必要があるため学習デー タの数と種類が限られてしまう。これに対して個人性を排除した場合はその制約が 弱くなる。この違いを表 5.1 及び図 5.1 にまとめる。 ユーザ共通 Fusion モデルは、既存の利用可能なデータベースを用いることで構築さ れる。ユーザ共通モデルにすることにより以下の 2 つの大きなメリットがあると考 えている。 • モデル学習に多くの学習データを利用することが可能となる ユーザ共通モデルでは、モデルの個人性を排除しているため、ターゲットの ユーザとは関係のない署名を学習データとして利用することが可能となる。従 い既に存在するデータベースをモデル学習用データとして利用しモデルを構 築することが可能であり、さらに複数のデータベースを組み合わせて用いるこ とも可能である。それゆえ、個人毎にモデルを作成するユーザ依存モデルと比 較すると容易に学習データを収集することが可能である。 • モデルの学習に訓練偽筆を利用することが可能となる ユーザ依存型モデルでは、訓練偽筆を学習に用いる場合は、全てのユーザの署 名毎に訓練偽筆を用意する必要があり、それは現実的に困難であることは説明 した通りである。しかしながら特定の署名に対して訓練偽筆を収集すること 5.1. はじめに 79 は現実的に可能である。たとえば既存の MCYT データベースには真筆と共に と訓練偽筆が収集sれている。従い、ユーザ共通 Fusion モデルとすることで、 既存のデータベースに含まれる真筆と訓練偽筆を学習に用いることが可能と なる。 上記の理由により本章では Fusion モデルとして、ユーザ共通のモデルを構築し、 認証を行うことを提案する。モデルを構築する手法としては色々な手法を用いるこ とが考えられるが、本章では AdaBoost[11] を用いてモデルを構築し、異なるデータ ベースを用いて認証実験を行った。 表 5.1: ユーザ共通モデルとユーザ依存モデルの比較 ユーザ共通モデル ユーザ依存モデル モデル 全体で 1 つ 個人毎作成 学習データ 全てのユーザの署名 Target ユーザの署名 利用出来る偽筆 訓練偽筆を含む全ての偽筆 ランダム偽筆 図 5.1: ユーザ共通モデルとユーザ依存モデルの比較 本章で提案するアルゴリズムには 3 つの種類の署名が用いられるのでここで整理 しておく。 80 第5章 ユーザ共通 Fusion モデル • 学習署名 (T sig):ユーザ共通 Fusion モデルを構築する際に用いられる署名。 複数の人物の署名から構成され、テストされるユーザの署名と関係がなくてよ い。学習データを作成する際には、学習署名を構成する人物毎に学習署名の中 から学習リファレンス署名 T Rsig を選択し、比較を行う(T Rsig ∈ T sig )。 • リファレンス署名 (Rsig):テストを行うユーザの事前に登録してある本人署 名。距離計算の際にこのリファレンス署名との比較することで距離を求める。 • テスト署名 (Qsig):自分が ID の人物であることを証明する為に筆記された署 名で、この署名を用いて筆記者が ID の人物本人なのか、なりすまし者なのか の判定が行われる。 5.2 アルゴリズム 提案するユーザ共通モデルのアルゴリズムを図 5.2 に示す。大きく分けると以下 の 3 つのフェーズから成り立っている。 • 学習フェーズ 学習フェーズでは既存のデータベースを学習用データとして用いる。データ ベース内のオンライン署名は前処理、特徴抽出の後、データベース内の署名同 士で比較し、距離ベクトルを計算する。その距離ベクトルを用いてユーザ共 通モデルの学習データを作成、それを用いてユーザ共通 Fusion モデルのパラ メータを学習する。 • 登録フェーズ 登録フェーズはリファレンス署名を設定する。登録用署名と ID が入力された 後、入力署名に前処理、特徴抽出を施し、ID と共に特徴抽出後の署名をリファ レンス署名として保管する。 • 認証フェーズ ID と共に入力された署名が ID 本人によって筆記された署名かどうかを判定す る。入力された署名は、前処理、特徴抽出を施し、ID に対応するリファレン スとの距離ベクトルを計算する。距離ベクトル計算後、モデル入力ベクトルを 作成し、その入力ベクトルを学習フェーズで作成したユーザ共通モデルに入力 することでスコアを計算、判定を行う。 各フェーズで行われる前処理、特徴抽出としては同じ処理が用いられ、本手法では 序章で説明した手法を用いている。また距離計算には第二章で説明を行った DTW を用いた手法を用いたので、本章では説明を省く。以降入力ベクトル作成、モデル 学習、スコア計算、判定についての説明を行う。 5.2. アルゴリズム 81 図 5.2: ユーザ共通 Fusion モデルのアルゴリズム 5.2.1 モデル構築(学習) ユーザ共通 Fusion モデル F (·; Θ) は入力ベクトル X を受け取り、score を計算す るモデルであり score = F (X; Θ) (5.1) で表される。 モデル学習はユーザ共通 Fusion モデルのパラメータ Θ を学習データを用いて決定 することである。パラメータ決定にはいくつかの手法が考えられるが、本研究にお いてはアンサンブル学習の一手法である AdaBoost を用いて決定を行うこととした。 AdaBoost はメタアルゴリズムの一つであり、弱いモデルを多数組み合わせることで 強いモデルを構築するアルゴリズムである。 個々の弱いモデルを f (·; wt ) としたとき、最終的なモデルを F (·; Θ) = T X αt f (·; wt ) (5.2) t=1 Θ = (αt , wt ), t = 1, ..., T とする。 ここで T は足し合わせる弱いモデルの数である。学習フェーズで決定する必要があ 82 第5章 ユーザ共通 Fusion モデル るパラメータは Θ = {αt , wt }, t = 1, ..., T となる。 決定しなくてはならないパラメータが 2 種類存在するが、弱いモデルのパラメータ である wt はモデル自身に高い精度が必要とされないので、たとえば乱数を用いて 設定するなどの方法でも良い。それに対して αt は弱いモデルを組み合わせ、強いモ デルを構築するために非常に重要なパラメータであり、個々の弱いモデルの信頼度 を決定するパラメータである。本論文では弱いモデルのパラメータ wt は乱数によ り発生し、αt は AdaBoost により決定する。 AdaBoost AdaBoost は弱いモデルを組み合わせることにより、強いモデルを構築する手法で ある。これは損失関数の逐次最適化アルゴリズムと考えることが出来る [40]。 弱いモデルを f (·; wt ) と表したとき、これを複数組み合わせたモデル 0 Ft0 (·; Θt0 ) = t X αt f (·; wt ) (5.3) t=1 Θt0 = {αt , wt }, t = 1, ..., t0 を考える。このとき、目指すべきものは、弱いモデルを一つ加えることにより、全 体のモデルをより強いモデルにすることである。 学習データを D = (Xn , Un ), n = 1, ..., N 、Xn を n 番目の学習データの入力ベクト ル、Un を n 番目の学習データの教師信号とした時、モデル Ft0 (·; Θ0t ) の損失関数を 以下の式で定義する。 N 1X exp(−Un Ft0 (Xn ; Θt0 )) L(Ft0 ) = 0 t n=1 (5.4) ここで、Ft0 (· : Θt0 ) にさらに新しい弱仮説 f (·; wt0 +1 ) を重み αc で加えたときに、新 しいモデル Ft0 +1 (·; Θt0 +1 ) = Ft0 (·; Θt0 ) + αc f (·; wt0 +1 ) (5.5) L(Ft0 ) < L(Ft0 +1 ) (5.6) の損失関数が となるように、加えるモデルの重みを決定する。それにより逐次モデルを増やしてい くことでより強いモデルを構築することが出来る。これを実現する手法が AdaBoost である。 本提案手法ではこの AdaBoost を用いてユーザ共通 Fusion モデルを構築する。 5.3. 実装 5.2.2 83 認証 入力された署名 Qsig と m 番目のリファレンス署名 Rsigm に関する入力ベクトル Xm が与えられた時のスコアの計算と判定は以下の手順により行われる。 Score = M X F (Xm |Θ) (5.7) m=1 そして判定は以下のように行う。 ( Genuine if Score ≥ T hreshold Qsig = F orgery if Score < T hreshold 5.3 5.3.1 (5.8) 実装 学習データ ユーザ共通モデルにおいては図 5.1 で示したように、テストされるユーザと関係 のないデータ DB を学習に利用する。そのデータ DB は R 人の人物の署名からなっ ているとする。つまり DB = (DB1 , DB2 , .., DBr , .., DBR ) (5.9) となる。ここで各 DBr には複数個の本人署名と複数個の訓練偽筆が含まれている。 提案手法では Fusion モデルへの入力には以下の 2K 次元のベクトルを利用する。 X = (Dist(T sig, T Rsigr ), meanr )) Dist(T sig, T Rsigr ) = (Dist1 /L1 , ..., DistK /Lk ) M M 1 XX meanr = Dist(T Rsigrm , T Rsigrj ) M C2 m=1 j6=m (5.10) (5.11) (5.12) ここで、T Rsigrm 、T Rsigrj は DBr 毎に選ばれたリファレンス署名であり、T sig は DBr に含まれるある署名である。また式 (5.12) は DBr に含まれる r 番目の人物の リファレンス署名間で計算した各距離の平均である。 モデル学習用データ D は入力ベクトルと教師ラベルを組み合わせたものであり、 D = Un {(Xn , Un )}, n = 1, ..., N ( 1 if T sig = Genuine = −1 if T sig = F orgery となる。この学習データ D には R 人分全てのデータが含まれる。 (5.13) (5.14) 84 5.3.2 第5章 ユーザ共通 Fusion モデル モデル 弱いモデルとして今回は単純パーセプトロン K X f (Xn ; wt ) = h( wtd Xnd + wt0 ) d=1 d wt ∼ U (−1, 1), d = 0, 1, ..., K Xn = (Xn1 , Xn2 , ..., XnK ) wt = (wt0 , wt1 , wt2 , ..., wtK ) (5.15) (5.16) を用いた。関数 h(·) は [-1,1] の範囲を出力する単調増加関数である。また K は入力 ベクトル Xk の次元数である。 5.3.3 学習 (パラメータ決定) 本論文ではユーザ共通 Fusion モデルを構築する際に AdaBoost を用いる。本論文 では弱いモデルに単純パーセプトロンを用い、そのパラメータには乱数より発生さ せた値をパラメータとしてそのまま利用した。 決定すべきパラメータは弱いモデルの f (·; wt ) の信頼度 αt である。今回は精度評価 の際にしきい値を変動し Error Tradeoff Curve を書く必要があるため、弱いモデル は-1 から 1 の間の連続値を出力するモデルとした [54]。 AdaBoost によるモデルの信頼度計算方法は図 5.3 に示す。 5.3.4 認証 提案するアルゴリズムでは、事前に取得可能なリファレンス署名数が少ないとい うことで、M 個の登録署名をそのままリファレンス署名としている。距離計算で計 算される距離ベクトルもリファレンス署名毎に計算されるため、現状ではリファレ ンス署名数分だけの入力ベクトルが存在する。従い、判定に用いられる Score は式 (5.7) のように M 個のリファレンス署名で平均を取ったものとなる。 5.4 5.4.1 実験 実験設定 今回の提案手法の精度評価には MCYT データベース(MCYT100)と BIOMET データベース(BIOMET84、BIOMET61)を利用し、認証精度評価を行った。 5.4. 実験 85 設定 学習データを D = (Xn , Un ), n = 1, ..., N, Xn = R2K , Un = {−1, 1} とし、弱い モデルを f (·; wt ) とする 初期化 各学習データの分布 ζt (n) を以下のように設定する ζ1 (n) = 1 N (5.17) 再帰 モデル t=1,...,T に対して以下の操作を繰り返す – データの分布 ζt (n) に基づいて期待値 γt を求める。 γt = N X ζt (n)Un f (Xn ; wt ) (5.18) n=1 – 上式で計算した期待値を用いて、t 番目モデルの信頼度 α を計算する αt = 1 1 + γt ln( ) 2 1 − γt (5.19) – 以下の式によりデータの分布 ζt を更新する ζt+1 (n) = ここで Zt は PN n=1 ζt (n) Zt = ζt (n) exp(−αt Un f (Xn ; wt ) Zt (5.20) = 1 とするための規格化定数であり N X ζt (n) exp(−αt Un f (Xn ; wt )) (5.21) n=1 終了 F (X; Θ) = T X αt f (X; wt ) t=1 図 5.3: AdaBoost アルゴリズム (モデルに連続関数を用いた場合) (5.22) 86 第5章 ユーザ共通 Fusion モデル 認証実験は Fusion モデルへの入力ベクトルを作成する際に用いられる特徴 (5.11) を変え、以下の 6 つの実験を行った。また各実験で表 5.2 の設定により実験を行って いる。表の中でテストデータと学習データが同一データベースを用いている場合は 交差確認法(Cross-Validation) を行って、テストデータと学習データが重ならない (T sig ∩ Qsig = φ)ように実験を行っている。 実験 1 第四章の実験で用いた Dist(Qsig, Rsig) = ( D1 Distψ Distφ ∆T , , , ) LD1 Lψ Lφ LT (5.23) の距離ベクトル(重複、時間正規化なし、単一パス)を利用、入力ベクトルは 8 次元 実験 2 Dist(Qsig, Rsig) = ( Distθ重心 Distf重心 Distp Distψ Distφ ∆T , , , , , ) (5.24) LΘ Lf Lp Lψ Lφ LT の距離ベクトル(重複、時間正規化なし、単一パス)を利用、入力ベクトルは 12 次元 実験 3 Dist(Qsig, Rsig) = ( Distθ重心 Distf重心 Distp Distψ Distφ ∆T , , , , , ) (5.25) LΘ Lf Lp Lψ Lφ LT の距離ベクトル(重複、時間正規化あり、単一パス)を利用、入力ベクトルは 12 次元 実験 4 Dist(Qsig, Rsig) = ( Distθ重心 Distf重心 Distp Distψ Distφ ∆T , , , , , ) (5.26) LΘ Lf Lp Lψ Lφ LT の距離ベクトル(重複、時間正規化あり、個別パス)を利用、入力ベクトルは 12 次元 実験 5 距離ベクトルとして実験 4 の 6 次元ベクトルに加え、 速度 vx (t)/Lvx , vy (t)/Lvy , |v(t)|/L|v| を付け加えたものを利用。入力ベクトルは 18 次元 実験 6 距離ベクトルとして実験 5 の 6 次元ベクトルに加え、 速度 vx (t)/Lvx , vy (t)/Lvy , |v(t)|/L|v| を付け加えたものを利用。入力ベクトルは 18 次元 5.5. まとめ 87 表 5.2: ユーザ共通 Fusion モデルの実験設定 設定 学習データ(T sig ) 設定 1(Setting1) MCYT100 設定 2(Setting2) BIOMET84 設定 3(Setting3) BIOMET84 設定 4(Setting4) MCYT100 設定 5(Setting5) BIOMET61 設定 6(Setting6) MCYT100 5.4.2 テストデータ(Qsig ) MCYT100 MCYT100 BIOMET84 BIOMET84 BIOMET61 BIOMET61 実験結果 実験結果を表 5.3-5.8 及び図 5.4-5.21 に示す。BIOMET84 の結果については、First Session、Second Session 毎の結果を () 内に示す。 5.5 まとめ 本章では複数の特徴量の距離を組み合わせる Fusion モデルを用いたオンライン署 名認証アルゴリズムの提案を行った。またオンライン署名認証問題に付随する、学 習データの制約、学習に用いることが出来るデータの数や種類が制限される点に着 目し、それを解決する一つの手法として、ユーザ共通の Fusion モデルの提案を行っ た。 提案アルゴリズムは MCYT、BIOMET2 種類の異なるグループによって集められ たデータベースを用いて認証精度実験結果を行った。複数の実験を行ったが、第四 章で提案した非線形判別法の結果を上回ることが出来(実験 1)、どちらのデータ ベースを用いた実験結果も良好のものであった。 また他研究グループの結果と比較すると、実験条件が全く同じわけではないので、 厳密な比較は出来ないが、MCYT データベースを用いた [9]1 ではユーザ共通のしき い値、5 つの本人署名を用いた実験結果で EER = 5.29% であり、BIOMET データ ベースを用いた [59]2 では TOTAL の結果ではなく、セッション毎の結果であるが、 First Session においては EER = 8.57%、Second Session では EER = 2.84% となっ ており、提案手法では First Session、Second Session いずれの結果も上回ることが 出来た。比較を行った先行研究のグループは SVC2004[65] において上位の成績かそ 1 2 [9] では 330 人分(真筆 25 個/人、訓練偽筆 25 個/人)で評価を行っている [59] では 87 人分の署名(真筆 15 個/人、訓練偽筆 12 個/人)で認証実験を行っている 88 第5章 ユーザ共通 Fusion モデル れと同等3 の結果を残したグループであることより、本提案手法が非常に有効な手法 であることを確認出来た。 また今回行った精度評価実験で用いた 2 つのデータベースは異なるグループが異な る環境で取得したデータベースであるにもかかわらず、一方のデータベースで学習 したモデルを用いて、他方の署名データを認証した結果でも良好な結果が得られた。 これは今後のオンライン署名認証アルゴリズムを実装し、実世界で利用する際に非 常に有利な点であると考える。 これらのことより、今回提案したユーザ共通 Fusion モデルは非常に有効な手法で あると考えられる。しかしながら、オンライン署名認証においては、個人毎に有効 な特徴量が異なるという報告もあり、現状のアルゴリズムが完成系ではない。今後 このユーザ共通 Fusion モデルを出発点とし、これに個人性を追加することで、より 精度の高いアルゴリズムの構築を目指したい。 またユーザ共通 Fusion モデルを用いることにより、今後より多くの署名をモデル 学習に利用出来ることになるが、それゆえに学習させる署名の選別等にも十分注意 していく必要があると考える。 3 http://www.cs.ust.hk/svc2004/results-EER2.html においてグループ [59] は Team ID=229、グ ループ [9] は Team ID=219 である 5.5. まとめ 89 実験設定 設定 1 設定 2 設定 3 設定 4 設定 5 設定 6 表 5.3: 実験 1 の結果 平均 EER [%] min EER [%] 4.82 4.70 4.92 4.77 5.33(6.35,4.09) 5.13(6.13,3.85) 5.09(6.36,3.00) 4.90(5.90,2.86) 4.67 4.32 5.40 5.11 max EER [%] 5.03 5.15 5.51(6.64,4.25) 5.31(6.64,3.16) 4.93 5.66 実験設定 設定 1 設定 2 設定 3 設定 4 設定 5 設定 6 表 5.4: 実験 2 の結果 平均 EER [%] min EER [%] 4.99 4.60 4.96 4.77 5.04(5.75,3.76) 4.81(5.86,3.64) 4.49(5.73,2.65) 4.18(5.34,2.42) 5.19 4.59 5.67 5.45 max EER [%] 5.39 5.21 5.33(5.99,3.94) 4.76(6.17,2.86) 5.89 5.87 実験設定 設定 1 設定 2 設定 3 設定 4 設定 5 設定 6 表 5.5: 実験 3 の結果 平均 EER [%] min EER [%] 3.93 3.81 3.88 3.68 4.35(5.29,2.96) 4.10(5.04,2.73) 4.10(4.93,2.68) 3.95(4.62,2.59) 4.44 4.25 3.97 3.81 max EER [%] 4.10 4.07 4.60(5.61,3.15) 4.22(5.15,2.81) 4.71 4.18 90 第5章 ユーザ共通 Fusion モデル 実験設定 設定 1 設定 2 設定 3 設定 4 設定 5 設定 6 表 5.6: 実験 4 の結果 平均 EER [%] min EER [%] 4.24 3.91 4.40 4.10 4.01(4.97,2.29) 3.86(4.71,2.11) 3.55(4.84,1.90) 3.25(4.41,1.69) 5.29 5.02 5.02 4.77 max EER [%] 4.55 4.65 4.21(5.14,2.57) 3.93(5.39,2.17) 5.61 5.29 実験設定 設定 1 設定 2 設定 3 設定 4 設定 5 設定 6 表 5.7: 実験 5 の結果 平均 EER [%] min EER [%] 3.65 3.38 3.59 3.32 4.07(5.39,2.22) 3.82(5.12,2.05) 3.50(4.58,1.93) 3.31(4.33,1.73) 4.01 3.76 3.98 3.66 max EER [%] 4.07 3.86 4.26(5.71,2.43) 3.66(4.86,2.21) 4.32 4.31 実験設定 設定 1 設定 2 設定 3 設定 4 設定 5 設定 6 表 5.8: 実験 6 の結果 平均 EER [%] min EER [%] 3.74 3.19 3.73 3.35 4.04(4.99,2.26) 3.82(4.45,2.04) 3.31(4.55,1.93) 3.15(4.33,1.73) 4.53 4.24 3.57 3.27 max EER [%] 4.07 3.99 4.32(5.45,2.47) 3.54(4.86,2.21) 4.81 3.89 5.5. まとめ 91 0.2 0.18 0.16 0.14 FAR 0.12 Setting1 0.1 Setting2 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 5.4: MCYT100 の実験結果【実験 1】 0.2 0.18 0.16 0.14 FAR 0.12 Setting3 0.1 Setting4 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 5.5: BIOMET84 の実験結果【実験 1】 0.2 0.18 0.16 0.14 FAR 0.12 Setting5 0.1 Setting6 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 5.6: BIOMET61 の実験結果【実験 1】 92 第5章 ユーザ共通 Fusion モデル 0.2 0.18 0.16 0.14 FAR 0.12 Setting1 0.1 Setting2 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 5.7: MCYT100 の実験結果【実験 2】 0.2 0.18 0.16 0.14 FAR 0.12 Setting3 0.1 Setting4 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 5.8: BIOMET84 の実験結果【実験 2】 0.2 0.18 0.16 0.14 FAR 0.12 Setting5 0.1 Setting6 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 5.9: BIOMET61 の実験結果【実験 2】 5.5. まとめ 93 0.2 0.18 0.16 0.14 FAR 0.12 Setting1 0.1 Setting2 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 5.10: MCYT100 の実験結果【実験 3】 0.2 0.18 0.16 0.14 FAR 0.12 Setting3 0.1 Setting4 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 5.11: BIOMET84 の実験結果【実験 3】 0.2 0.18 0.16 0.14 FAR 0.12 Setting5 0.1 Setting6 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 5.12: BIOMET61 の実験結果【実験 3】 94 第5章 ユーザ共通 Fusion モデル 0.2 0.18 0.16 0.14 FAR 0.12 Setting1 0.1 Setting2 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 5.13: MCYT100 の実験結果【実験 4】 0.2 0.18 0.16 0.14 FAR 0.12 Setting3 0.1 Setting4 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 5.14: BIOMET84 の実験結果【実験 4】 0.2 0.18 0.16 0.14 FAR 0.12 Setting5 0.1 Setting6 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 5.15: BIOMET61 の実験結果【実験 4】 5.5. まとめ 95 0.2 0.18 0.16 0.14 FAR 0.12 Setting1 0.1 Setting2 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 5.16: MCYT100 の実験結果【実験 5】 0.2 0.18 0.16 0.14 FAR 0.12 Setting3 0.1 Setting4 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 5.17: BIOMET84 の実験結果【実験 5】 0.2 0.18 0.16 0.14 FAR 0.12 Setting5 0.1 Setting6 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 5.18: BIOMET61 の実験結果【実験 5】 96 第5章 ユーザ共通 Fusion モデル 0.2 0.18 0.16 0.14 FAR 0.12 Setting1 0.1 Setting2 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 5.19: MCYT100 の認証精度結果【実験 6】 0.2 0.18 0.16 0.14 FAR 0.12 Setting3 0.1 Setting4 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 5.20: BIOMET84 の実験結果【実験 6】 0.2 0.18 0.16 0.14 FAR 0.12 Setting5 0.1 Setting6 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 5.21: 実験 3 BIOMET61 の実験結果【実験 6】 97 第6章 6.1 経時変化への対応 はじめに 前章までは、限られた学習データの中で、如何にオンライン署名認証の精度を向 上させるか、という点に焦点を絞り、その解決方法の提案を行った。しかし、オンラ イン署名認証は行動的特徴に基づいたバイオメトリクスであるがゆえに、もうひと つ考慮しなければならない問題がある。それは経時変化と言われる問題である。人 は署名を筆記する際に全く同一の署名を筆記することが出来ず、筆記された署名に はどうしてもバラツキが存在してしまうことは前述した通りである。その個々の署 名間のバラツキは本人間バラツキ(Intra-Person(Class)Variability)と言われる。 このバラツキは同じ人が同じように筆記したつもりでも含まれてしまうバラツキで ある。これに対し経時変化(Inter-Session Variability)は、署名の筆記方法が時間 の経過とともに変わってしまう可能性があり、それに由来したバラツキである。イ メージ的には、Intra-Person Variability は、署名を筆記する際にもっとも本人らし い平均的署名があるとすると、実際に筆記される署名はその平均的署名を中心にば らついてしまうのに対し、Inter-Session Variability は、時間の経過に伴ってその平 均的署名自体が変化してしまうというものである。従い、何らかの方策を講じない 限り、Inter-Session Variability の影響を消すことが出来ない。そこで、本章ではこ の Inter-Session Variability に対する手法の提案を行う。 経時変化の問題を扱う上で問題となるのが、学習データに関する問題である。一 般のオンライン学習と言われる逐次学習法においては、教師付の学習データが逐次 与えられ、それを用いてパラメータ等を更新するという手法をとることが多い。も しもオンライン署名認証問題においても、登録している人物が定期的に署名の更新 作業を行ってくれるのであれば、同じように教師付の学習データが逐次与えられ、逐 次学習を行うことが出来る。ここで言う教師付きの学習データとは、署名を筆記し た人物が本人であるか、なりすまし者であるかがわかっている署名である。しかし ながら現実的に定期的な更新を行ってもらうことは利便性の点からも好ましくなく 実際にはほとんどのユーザが定期的な更新をしてくれないという状況も想定出来る。 さらに、オンライン署名認証問題の目的そのものであるが、追加更新用に提供され た本人署名が本当に正規の本人によって筆記されたものかどうかをきちんと判断す る必要がある。万が一他人が正規の本人になりすまし、追加更新用データを登録し 98 第 6 章 経時変化への対応 ようとし成功してしまったら、その後システムは偽登録をしたなりすまし者を正規 の本人として判別し、正規の本人をなりすまし者として判別してしまうという誤り を犯してしまうことになる。こうなると認証精度を向上させるために経時変化への 対応として逐次学習を取り入れたにもかかわらず、結果として認証システムの脆弱 性を増大させる結果になってしまい、意味がない。そこで本研究においては、”準教 師付学習”と言われる手法を用いることにより、経時変化対応手法の提案を行う。 入力署名が与えられた時、その入力署名が正規の本人によって筆記された署名なの か、なりすまし者によって筆記された署名なのかを署名認証により判別し、その結 果を教師ラベルとしてデータに付加し、学習データとして用いるのである。このと きに気をつけなくてはならないことは、判別を行い、教師ラベルをつけるオンライ ン署名認証のアルゴリズムが完璧なものでないことである。従い、他人が筆記した 署名を本人によって書かれたものとして間違えてラベル付けしてしまったり、また 逆に本人によって書かれた署名を他人がなりすまして筆記したものとして間違えて ラベル付けしまったりという問題が発生するため、この点にも注意をする必要があ る。 本章では、経年変化に対する手法として 2 つの手法の提案を行う。一つはリファ レンス署名と入力署名との距離を計算後、その距離を用いて本人と他人かを判別す る判別機のモデルパラメータを逐次更新していくモデルパラメータ更新法、もう一 つは、入力された署名と比較し、距離を計算する際に用いられるリファレンス署名 を逐次更新していくリファレンス更新法である。本研究では第四章で提案した非線 形判別法にモデルパラメータ更新法を適用したもの、および第五章で提案したユー ザ共通 Fusion モデルにリファレンス更新法を適用したもの実験を行い、その結果を 報告する。 6.2 アルゴリズム リファレンス更新法およびモデルパラメータ更新法の全体のアルゴリズムを図 6.1、 図 6.2 に示す。どちらの手法も入力された署名が正規の本人によって書かれたもの かどうかの判別を行った後、そのデータを用いて更新を行っていく。 6.2.1 パラメータ更新法 学習データ 本提案手法では逐次学習用の学習データが特別に与えられる [61] のではなく、認 証用に入力された署名を用いてそれを学習に用いることを想定している。署名認証 は筆記者がわからない状況で入力された署名を用いて筆記した人物が本人であるの 6.2. アルゴリズム 99 図 6.1: モデルパラメータ更新法のアルゴリズム 図 6.2: リファレンス更新法のアルゴリズム 100 第 6 章 経時変化への対応 か、それともなりすまし者なのかを判別することである。従い、当然のことながら 入力された署名には教師信号としてのラベルは付与されていない。このデータを用 いて逐次学習を行うためにはシステム側で教師ラベル付けをする必要がある。そこ でこのラベル付けにオンライン署名認証による判別結果を利用するのであるが、現 状のオンライン署名認証アルゴリズムでは二つの間違いが考えられる。一つは他人 の署名を本人が筆記したものだと誤判別してしまう他人誤受入れ(False Accept)、 もう一つは本人の署名であるにもかかわらず他人署名として拒否してしまう本人誤 拒否(False Reject)である。もしも逐次学習のラベル付けの際にこれらの間違いが 発生すると、なりすましが容易になり、結果として他人誤受入れが大きくなってし まったり、また本人が拒否されやすくなってしまう。これらのことより、筆記者が 本人なのか他人なのか断定出来ない、教師信号が不確定である場合はそれらを考慮 する必要がある。 逐次モンテカルロ法(Sequential Monte Carlo) 学習データが逐次与えられた場合のモデルパラメータを更新法について説明を行 う。本研究においては逐次モンテカルロ法(Sequential Monte Carlo(SMC))[7] を 用いて非線形判別機のモデルパラメータを更新し、認証を行う手法の提案を行う。 ある時刻 t + 1 において入力署名が与えられた時、我々が行いたいことは、それま での学習データ D1:t が与えられたもとでのパラメータの事後分布 P (w|D1:t ) を計算 し、署名された署名が本人署名である確率 P (Qsig = Genuine) を Z P (Qsig = Genuine) = f (Dist(Qsig, Rsig); w)P (w|D1:t )dw (6.1) を求めることである。第四章でも説明を行ったが、上記の積分計算を解析的に解く ことが困難であるためにモンテカルロ近似を用いて M 1 X P (Qsig = Genuine) ≈ f (Dist(Qsig, Rsig); w(m) ) M m=1 (6.2) w(m) ∼ P (w|D1:t ), m = 1, ..., M (6.3) と計算する。これをこのまま適用するのであれば第 4 章で説明した MCMC 手法を 用いることで可能となる。しかし我々は今回経時変化に対応する手法を提案したい と考えている。これは時間とともに適切な判別機も変化していくという前提である。 そこで、SMC を用いることとした。 以下のようなモデルを考える。時刻 t でのデータ Dt = (Xt , Ut )、パラメータを w と すると ( wt = g(wt−1 , νt−1 ) (6.4) Ut = h(wt , Xt , µt ) 6.2. アルゴリズム 101 を考える。νt はシステムノイズ、µt は観測ノイズと呼ばれる。 これを条件付き確率により ( wt+1 ∼ p(w|wt ) Ut ∼ p(u|Xt , wt ) (6.5) と表すことが出来る。尚、式 (6.5) は式 (6.4) よりも広いクラスを表すことが出来る。 プロポーザル分布を Q(w) を導入すると式 (6.1)(6.2) は Z P (w|D1:t ) P (Qsig = Genuine) = f (Dist(Qsig, Rsig); w) Q(w)dw Q(w) M 1 X P (w(m) |D1:t ) f (Dist(Qsig, Rsig); w(m) ) (6.6) ≈ M m=1 Q(w(m) ) w(m) ∼ Q(w) と書くことが出来る。プロポーザル分布は以下の条件を満たしていれば任意に決定 できる分布である。 (1) P (w|D1:t ) > 0 において Q(w) > 0 (2) Q(w) からサンプルすることが可能 次に importance 重み Ω(w) を次のように定義する Ω(w) = P (w|D1:t ) Q(w) (6.7) ここでパラメータの事後分布は式 (6.5) の下では P (w|D1:t ) = R P (Dt |w)P (w|D1:t−1 ) P (Dt |w)P (w|D1:t−1 )dw (6.8) と表現することが出来る。分母を比例定数 1/c とみなすと P (w|D1:t ) = cP (Dt |w)P (w|D1:t−1 ) (6.9) 式 (6.6) を式 (6.7) および式 (6.9) を用いて変更すると R 1:t ) f (Dist(Qsig, Rsig); w) P (w|D Q(w)dw Q(w) (6.10) P (Qsig = Genuine) = R P (w|D1:t ) Q(w)dw Q(w) R cP (Dt |w)P (w|D1:t−1 ) f (Dist(Qsig, Rsig); w) Q(w)dw Q(w) = (6.11) R cP (Dt |w)P (w|D1:t−1 ) Q(w)dw Q(w) 102 第 6 章 経時変化への対応 = c R = R (w|D1:t−1 ) f (Dist(Qsig, Rsig); w) P (Dt |w)P Q(w)dw Q(w) R P (Dt |w)P (w|D1:t−1 ) c Q(w)dw Q(w) f (Dist(Qsig, Rsig; w)Ω(w)Q(w)dw R Ω(w)Q(w)dw (6.12) (6.13) ここでモンテカルロ近似を考えれば P (Qsig = Genuine) ≈ M X Ω(w(m) ) f (Dist(Qsig, Rsig); w(m) ) PM (m) ) m=1 Ω(w m=1 (6.14) となる。 Importance 重みは Ω(w) = P (Dt |w)P (w|D1:t−1 ) Q(w) (6.15) と計算し、正規化 Importance 重み Ω̄ Ωw) Ω̄(w) = P Ω(w) w(m) ∼ Q(w) (6.16) を考え、 P (Qsig = Genuine) = 1 X f (Dist(Qsig, Rsig); w(m) )Ω̄(w(m) ) M (6.17) と計算すれば良いことになる。但し、このままのアルゴリズムでは Importance 重みの 小さいサンプルが得られた時に無駄な計算を行うことになってしまうため Importance リサンプリングを行い、以下のように計算を行う 0 M 1 X 0 f (Dist(Qsig, Rsig); w̃(m ) ) P (Qsig = Genuine) = 0 ¯ M m0 =1 w̃ (m0 ) ∼ M X (6.18) Ω̄(w(m) )δ(w − w(m) ) m=1 6.2.2 リファレンス更新法 学習データ 本手法でも学習データの追加登録を想定していない。署名が入力されるたびにシ ステム側で入力された署名を更新に用いるか判断をし、更新すると判断した場合は 6.2. アルゴリズム 103 リファレンス署名を更新、精度の向上を目指すものである。従い、はじめに認証用に 入力された署名をリファレンス更新に用いるかどうかの判断をする。ここで注意す る必要があることは、現在のオンライン署名アルゴリズムが他人誤受け入れ(False Accept)がゼロでないために、仮に本人によって筆記された署名であると判定され た署名であっても、実はなりすまし者によって筆記された署名である可能性もある。 そこで、本研究では入力された署名を (5.7) で計算されるスコアを用いて以下のよう に分類する。 ( 認証リファレンス候補 Score ≥ T hresholdrr Qsig = (6.19) 何もしない Score < T hresholdrr ここで T hresholdrr はリファレンス更新しきい値であり、判別しきい値とは異なる しきい値である。入力された署名の Score がリファレンス更新しきい値以上であれ ば、リファレンスの候補とし、そうでない場合は、リファレンス更新に一切用いな いというものである。このリファレンスしきい値を設けることにより、誤って他人 によって書かれた署名がリファレンスに含まれるのを防ぐ。 リファレンス更新 現在のリファレンス署名を Rsigi , i = 1, ..., M とし、リファレンス候補署名を CRsig とする。実際のアプリケーションを考えた場合、メモリの問題や、データ漏洩の問 題等を考慮すると、やはりリファレンス署名数は一定数に固定した方が好ましいと 思われる。そこで、本手法では従来のリファレンス署名の一つとリファレンス候補 署名を入れ替えることを考える。更新前のリファレンス署名全体を Ref erenceold 、 更新後のリファレンス署名を Ref erencenew とすると Ref erenceold = {Rsig1 , Rsig1 , ..., RsigM } ある基準により更新される署名 Rsign を選び Rsign ← CRsig Ref erencenew = {CRsig, Rsig1 , .., Rsign−1 , Rsign+1 , RsigM } とする。更新後は新しい Ref erencenew を用いて、次に入力される署名の距離を計 算し、その距離を用いて認証を行う。 リファレンス候補署名をリファレンス内のどの署名と入れ替えるかにはついては例 えば以下のような基準が考えられる。 Rsign ← CRsig, Rsign is the oldest in{Rsig1 , , , , .RsigM } P Rsign ← CRsig, Rsign = argmink m Dist(Rsigk , Rsigm ) P Rsign ← CRsig, Rsign = argmaxk m Dist(Rsigk , Rsigm ) (6.20) 104 第 6 章 経時変化への対応 6.3 実装 6.3.1 パラメータ更新法 学習データ 本研究では以下のように入力署名に教師ラベルを割りあて、逐次学習用のデータ を作成する。 Step.1 認証用署名 Qsig が与えられた時に、Qsig とリファレンス署名 Rsig 間の距離 Dist(Qsig, Rsig) を計算する。計算した距離は正規化定数で正規化を行う。 Dist(Qsig, Rsig) = (Dist1 (Qsig, Rsig)/L1 , ..., DistK (Qsig, Rsig)/LK )(6.21) Step.2 正規化された距離を用いて、その署名が本人署名である確率を計算する。 P (Qsig = Genuine) = M 1 X f (Dist(Qsig, Rsig); w(m) ) M m=1 ここで、パラメータのサンプル w(m) は MCMC で求めたサンプルや、パラメー タ更新された後のパラメータサンプルである。 Step.3 本人署名である確率 P (Qsig = Genuine) を用いて学習ラベル T を if P (Qsig = Genuine) > T hresholdgenuine T ← 1 if P (Qsig = Genuine) < T hresholdf orgery T ← 0 else 学習に用いない とし、追加学習データを Dt = (Dist(Qsig, Rsig), T ) とする。 学習(パラメータ推定) 以下の手順に従いパラメータの更新を行った。 Step.1 新しい学習データが Dt が与えられた時、現在のパラメータ w(m) を用いて、正 規化 Importance 重みを計算する。この時、プロポーザル分布を Q(w) = P (w|D1:t−1 ) (6.22) 6.4. 実験 105 と考えると、現在のパラメータサンプルは P (w|D1:t−1 ) からのサンプルと考え ることが出来る為、正規化 Importance 重みは P (Dt |w(m) ) Ω̄(w(m) ) = PM (m) ) m=1 P (Dt |w (6.23) と計算出来る。 Step. 2 正規化 Importance 重みを用いてパラメータのリサンプリングを行う。 w̃ (m0 ) ∼ M X Ω̄(w(m) )δ(w − w(m) ) (6.24) m Step.3 w̃(m) をランダムウォークさせ、w(m) を得る w(m) ∼ P (wt |w̃(m) ) 6.3.2 (6.25) リファレンス更新法 今回の手法では式 (6.20) に示されている入れ替え基準の中で、最も古いリファレ ンス署名とリファレンス署名候補を入れ替える手法を用いた。 6.4 実験 本研究では第四章で説明した非線形判別法に SMC を用いてモデルパラメータ更 新を行った実験及び第五章で説明したユーザ共通 Fusion モデルにリファレンス更新 を施したもののアルゴリズム精度評価実験結果を報告する。 6.4.1 実験設定 今回の実験においては BIOMET データベースを用いることとした。今回我々が 入手した BIOMET データベースは 84 人の人物から 2 回のセッションによりデータ を収集している。参加者は最初のセッションで 5 つの本人署名を入力し、5ヶ月後の セッションにおいて 10 個の本人署名を筆記している。また偽筆としては各人物に 12 個の訓練偽筆が収集されている。但し、67 個の署名がきちんと取得されておらず、 84 人の中には、本人署名や訓練偽筆の数が足りていない人が存在しており、トータ ル 2201 個の署名が利用可能である。そこで、今回は真筆 15 個、訓練偽筆 12 個すべ 106 第 6 章 経時変化への対応 てがそろっている 61 人分のデータ (BIOMET61) にしぼり評価を行うこととした。 BIOMET データベースはセッション間に 5ヶ月もの間があいているため、署名に経 時変化があることが予想され、アルゴリズムの経時変化へ有効性を確認する為には 有効なデータベースであると考えられる。 実験 1 モデルパラメータ更新法 モデルパラメータ更新法では、入力された署名が真筆なのか、偽筆なのかを判定 した後、しきい値条件をクリアした署名をモデルパラメータの逐次学習に用いる。 今回はリファレンス署名を最初の 5 つとし、認証実験を行った。入力に用いられる 距離ベクトルは式 (4.38) と同じものを利用した。 実験 2 リファレンス更新法 本章の最初の部分で記述した通り入力される署名は実際のところ、正規の本人に よって筆記されたものなのかどうかはその時点ではわからない。偽筆がリファレン スとして利用されてしまう可能性もあり、データの入力順番に実験結果が影響を受 ける可能性もある。 そこで、本実験では、本人署名と他人署名をランダムに入力す ることとし、50 通りの組み合わせを考え、この順番で実験を行った。ただし、本人 署名は若いデータから入力することとした。入力ベクトルを作成するために用いた 距離ベクトルは第五章の実験 4 と同じ式 (5.26) である。 本実験では本人署名の内最初の 3 個をリファレンス署名として用いている。実験結 果として全体の結果、リファレンス署名と同じセッションで集められた本人署名の結 果(First Session) 及び 5ヶ月後のセッションで集められた本人署名の結果(Second Session) を示す。 6.4.2 実験結果 実験結果を表 6.1 に示す。 モデルパラメータ更新法 リファレンス更新法 実験結果を表 6.2、図 6.3-6.5 に示す。Error Tradeoff Curve 内ではリファレンス更 新無しを”Without Reference Renewal”、リファレンス更新有りを”With Reference Renewal”として示している。 6.5. まとめ 107 表 6.1: モデルパラメータ更新法の実験結果 設定 Total パラメータ更新無 8.85 パラメータ更新有(提案手法) 8.19 表 6.2: リファレンス更新法の実験結果 設定 First Session Second Session リファレンス更新無 4.00 6.11 リファレンス更新有 (提案手法) 2.70 4.57 6.5 Total 5.80 4.32 まとめ 本章においては経時変化への対応手法としてモデルパラメータ更新法とリファレ ンス更新法を提案し、第四章で提案した非線形判別法にパラメータ更新法を、第五 章で提案したユーザ共通 Fusion モデルにリファレンス更新法を適用した手法につき、 データベースを用いて認証精度実験を行った。実験結果よりどちらの手法について も精度の向上が見られ、提案手法の有効性を示すことが出来た。特にリファレンス 更新法では 1%以上の精度向上を実現出来た。 今回提案した手法はシンプルな手法であり、改良出来るところは多々ある。従い、今 後これらの手法を改良することによりさらなる精度の向上を目指したい。 108 第 6 章 経時変化への対応 0.2 0.18 0.16 0.14 FAR 0.12 With Reference Renewal Without Reference Renewal 0.1 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 6.3: リファレンス更新法の実験結果(全体) 0.2 0.18 0.16 0.14 FAR 0.12 With Reference Renewal Without Reference Renewal 0.1 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 6.4: リファレンス更新法の実験結果(First Session) 0.2 0.18 0.16 0.14 With Reference Renewal Without Reference Renewal FAR 0.12 0.1 0.08 0.06 0.04 0.02 0 0 0.05 0.1 0.15 0.2 FRR 図 6.5: リファレンス更新法の実験結果(Second Session) 109 第7章 総括 本論文は行動的な特徴を用いたバイオメトリクスの一つであるオンライン署名認 証をテーマとし、高精度のオンライン署名認証アルゴリズムの構築を目指したもの である。近年の情報化やグローバル化、個人の権利の多様化に伴い、個人認証手法 は非常に重要な技術となり、また今後もますますその重要度が増すものと思われる。 従い、個人認証手法の研究は今後さらに重要なものとなると考えている。 本論文の前半部分はオンライン署名認証に用いられている手法の概要を含め説明 を行なった。第二章では Dynamic Time Warping を用いて署名間の距離を計算する 手法の説明を行った。また第三章では隠れマルコフモデルを用いたアルゴリズムを 説明し、距離を用いた手法との関係について考察を行った。 第四章では複数の特徴からの距離を用い、多次元距離空間内で本人署名と他人署 名を非線形に判別する手法の提案を行った。これは署名から取得される複数の距離 情報を個別に扱うのではなく、組み合わせて使う手法である。近年 Fusion 手法が盛 んに研究されるようになってきているが、本提案手法もその一つと考えられる。本 手法では具体的なアルゴリズムとして三層パーセプトロンを用い、マルコフ連鎖モ ンテカルロ法を用いて、事後分布からサンプル採取し、確率を計算する手法を提案 した。またデータベースを用いて認証実験結果についても報告している。 第五章ではユーザ共通 Fusion モデルの提案を行った。この提案手法の注目する点 は Fusion モデルを個人毎に作成するのではなく、ユーザに依存しないモデルとした ことである。ユーザに依存しないモデルとすることで、事前に収集可能な署名を学 習に用い、モデルを作成した。これによりオンライン署名認証を困難にしている原 因の一つ、学習データの数と種類の制約を取り除き、精度の向上を目指した。デー タベースを用いた精度評価実験でも提案アルゴリズムの有効性を確認することが出 来た。 第六章では行動的特徴を用いたバイオメトリクスならではの問題、経時変化の問 題に着目し、判別モデルのパラメータを逐次更新していくモデルパラメータ更新法 とリファレンス署名を更新するリファレンス更新法の提案を行った。どちらの手法 も入力された署名が正規の人物によって書かれた真筆なのか、偽筆なのかをシステ 110 第 7 章 総括 ム側で判断し、その結果を用いて更新を行っている。データベースを用いた精度評 価実験においても精度の向上が見られ、これらの手法が有効であることを示すこと が出来た。 オンライン署名認証はバイオメトリクスの中でもあまり精度の高くないものと思 われている。確かにデーターベースを用いた精度評価の結果のみで判断すると、精 度は他の手法に多少劣るように思われる。しかしながら単純な暗証番号と比較して みて欲しい。暗証番号は漏洩した場合は 100 %の確率でなりすましが可能になるの に対し、オンライン署名では仮に署名情報を盗み見られた場合でも数%のなりすま ししか許容しない。オンライン署名認証は精度評価の段階で既になりすましを想定 し、精度評価を行っているのである。 指紋や虹彩といった手法は万人不同の特徴を用いているので、確かに精度は高いよ うに見えるが、それらの情報が盗難にあった場合には、簡単になりすますことが出 来るという報告もある [34][35]。また生涯不変の特徴を用いているため、一度盗まれ てしまった場合には代替に限りがあるという問題も存在する。オンライン署名認証 の場合には筆記する署名自身を変更することにより、何度でも変更することが可能 であるという大きなメリットがある。またオンライン署名は意思を反映させること が出来る認証手法であり、第三者に強要された場合でも、自分の権利を守ることが 出来る手法であると考えている。また一般に指紋や虹彩の認証は人間の目で判断す ることは容易ではない。しかしながらオンライン署名認証の場合には顔認証と同じ く、人間の目で見てもある程度のチェックが可能であり、ユーザにとっても安心感の ある手法であると考えている。 全ての場面においてオンライン署名認証が有効であるとは言えないが、必要とされ る状況に応じてオンライン署名は非常に有効な個人認証手法であると考えている。 7.1 今後の展望 今後バイオメトリクスは今以上に様々な場面において用いられるようになると考 えられる。それに伴い、バイオメトリクスの脆弱性が表面化し、今後バイオメトリ クスの脆弱性に対する対応策をきちんと考えていく必要が生じてくると考えられる。 オンライン署名認証においては、クレジットカード決済や契約書、電子カルテ、ま た試験や入試等での利用が期待されるが、これを実現するためには更なるアルゴリ ズムの改良とともに、アプリケーションの開発が必要であると考えられる。 またセキュリティレベルを上げる為にはシステムの改良のみではなく、システムを 利用するユーザも、セキュリティに関してより関心を持ち、守られるという意識で はなく、自分で守るという意識を持ち、高いセキュリティレベルを維持するための 努力を行う必要であると考える。既存の暗証番号を用いた手法では生年月日等、想 像しやすい番号は控えるようにとの注意がなされているにもかかわらず、多くの人 7.2. 今後の課題 111 が生年月日や電話番号等を暗証番号にしている [25]。我々研究者はより精度の高い 手法の研究を行うのはもちろんであるが、ユーザに対してセキュリティに関心を持 たせ、自分で守るという意識を持ってもらうような努力をすることも必要になって くると考えている。オンライン署名についていえば、海外では真似られにくい署名 を各自が努力し作成することがなされている [66]。研究者としてはこのような努力 を単にユーザに期待するのではなく、研究者自身がそのような環境を作り、より精 度の高いアルゴリズムを作成する土台を作っていくことも今後必要になってくると 考える。 7.2 今後の課題 本論文ではユーザ共通 Fusion モデルを提案し、個人性を排除することで、多数の 学習データを確保し、精度良いアルゴリズムを提案することが出来た。 しかしながら署名を筆記するという動作は明らかに個人性があり、個人によって有 効な特徴量が異なる [27]。従い、必ずしもユーザ共通 Fusion モデルが良いモデルで あるとは言えない。しかし学習データが少ない場合には万人の情報を利用するとい うことは非常に有効であると考えられる。従い、今後はこのユーザ Fusion モデルに 個人性を追加することで、ユーザ共通モデルからユーザ依存型モデルに更新してい く手法の研究を行っていきたいと思う。 またユーザ共通 Fusion モデルを構築する際に多数のデータベースを単に利用する と、モデルがなまってしまい、精度の劣化を招く恐れがある。従い、学習データを グループ化して利用するなどの方法も検討していきたい。 経時変化に対する手法としては、今回提案したリファレンス更新法は非常に単純な ものであり、研究の出発点に過ぎない。今後は署名の経時変化をモデル化すること や、リファレンスを更新するのではなく、リファレンスを逐次学習していく手法の 研究を行っていきたい。 さらに、バイオメトリクス技術の脆弱性も指摘されており、オンライン署名認証に 関しても例外ではない [24]。従い、脆弱性に対する対応策も考えて行きたいと思う また、今後はリファレンスデータが漏洩してしまった場合も想定し、テンプレート 漏洩に強いアルゴリズムも検討して行きたいと考えている。 今回提案した手法はデータベースを用いて精度評価実験を行ったが、本当のアルゴ リズムの精度はデータベースを用いた評価だけでは十分でない [41]。従い、開発し たアルゴリズムについては実証実験を行い、精度の評価を行うとともに、実用上の 問題等を明確化し、解決していきたいと思う。 最終ゴールは、実際に使えるオンライン署名認証システムの構築を行うことである。 従い、より精度の高いアルゴリズムを開発するだけでなく、実際に利用するアプリ ケーションの開発等も行っていきたいと思う。 113 謝辞 本論文を纏めるにあたり、多くの方々、機関にお世話になりました。 早稲田大学 松本隆教授には大学学部時代より多大なる御指導と御助言を頂き、 本当にお世話になりました。修士課程修了後、文系就職した自分に博士後期課程に 進むきっかけを与えて下さったのは松本教授でした。最後の最後まで辛抱強く、ま た温かくご指導下さいまして本当にありがとうございました。心より感謝致します。 論文を審査して下さいました早稲田大学 内田健康教授、村田昇教授、小松尚久教 授にも心より感謝致します。内田健康教授には修士課程の頃より多くのご指導を頂 きました。村田昇教授には大学院博士後期課程入学面接試験以来多くのご指導を頂 きました。また小松尚久教授には、バイオメトリクスの第一人者として有用なご助 言を頂きました。 研究を進める中で、立命館大学 吉村ミツ教授には署名認証に関する様々なご助 言を頂きました。Universidad Politécnica de Madrid Prof. Javier Ortega-Garcı́a、 Universidad Autonoma de Madrid Mr. Julian Fierrez-Aguilar、Institut National des Télécommunications Prof. Bernadette Dorizz には研究にかかすことの出来ない オンライン署名のデータベースを提供して頂きました。心より感謝致します。 早稲田大学 電気電子情報工学科の諸先生方、電気・情報生命工学科の諸先生方に も多くのご指導を頂きました。心より感謝いたします。 また早稲田大学 松本隆研究室卒業生、現役生、秘書の方々にも感謝しておりま す。特に共に署名認証の研究を進めた佐々木昌浩博士、卒業生の近藤充さん、現役 生の立花聡さん、本郷保範さん、加藤雄大さんにはお世話になりました。また多く の手伝いをしてくれた鏑木崇史さん、論文に対しコメントをしてくれた中田洋平さ ん、大家淳二さん、木村彰夫さんにも感謝致します。研究室の皆様には色々なこと を教えてもらうだけでなく、署名認証の精度評価に不可欠なデータベースの収集に もご協力頂きました。 今回本論文を纏めることが出来ましたのは直接、共に研究をした卒業生、現役生 のみならず、早稲田大学松本隆研究室に集まり、散じていった諸先輩方、後輩方の 114 謝辞 積み重ねがあったからこそです。心より感謝致します。 会社を退社し、フルタイムの学生として勉強をするためには経済的な問題もあり ましたが、財団法人 旭硝子奨学会、独立行政法人 日本学生支援機構の奨学金のお かげで研究に集中することが出来ました。関係の方々及びこのようなを研究に没頭 出来る環境を整えて下さった方々に心より感謝致します。 最後に 30 歳近くにして退社し、大学に戻り研究することを理解し、応援してくれ た両親、姉、義兄、妹、姪、応援し励ましてくれた多くの友人に感謝致します。 「都の西北」、早稲田大学において研究を進め、ここに纏めることが出来たこと、 本当に光栄に思っております。ありがとうございました。 115 参考文献 [1] Daisuke Arai and Masakatsu Nishigaki, 2005. A User Authentication using Blind Spot and Saccade Response. Proc. of the 2005 Symposium on Cryptography and Information Security, 3, 979-984. [2] Baum, L. E., 1972. An inequality and associated maximization technique in statistical estimation for probabilistic functions of Markov process. Inequalities, 3, 1-8. [3] R. Bellman, 1957. Dynamic Programming. Princeton University Press. [4] R. Bellman 著; 小田中敏男他訳, 1973. ダイナミックプログラミング, 東京図書. [5] J. Shi, Tom L. Blundell, and K. Mizuguchi, 2001. FUGUE: sequencestructure homology recognition using environment-specific substitution tables and structure-dependent gap penalties. J. Mol. Biol. 310(1), 243-257. [6] J. G. A. Dolfing, E. H. L. Aarts, and J. J. G. M. van Oosterhout, 1998. Online Signature Verification with Hidden Markov Models. Proc. 14th International Conference on Pattern Recognition, 2, 1309-1312. [7] Arnaud Doucet, Nando De Freitas, and Neil Gordon, 2001. Sequential Monte Carlo Methods in Practice. Springer-Verlag. [8] J. Fierrez-Aguilar, J. Ortega-Garcia, and J. Gonzalez-Rodriguez, 2004. Target Dependent Score Normalization Techniques and Their Application to Signature Verification. Springer Lecture Notes in Computer Science, 3072, 498-504. [9] Julian Fierrez-Aguilar, Loris Nannil, Jaime Lopez-Peñalba, Javier OrtegaGarcia, and Davide Maltoni, 2005. An On-Line Signature Verification System Based on Fusion of Local and Global Information. Springer Lecture Notes in Computer Science, 3546, 523-532. [10] Julian Fierrez-Aguilar, Javier Ortega-Garcia, and Joaquin Gonzalez-Rodriguez, 2005. Target Dependent Score Normalization Techniques and Their Application 116 参考文献 to Signature Verification. IEEE Trans. Systems, Man, and Cybernetics-part C: Applications and Reviews. 35(3), 418-425. [11] Yoav Freund and Robert E. Schapire, 1997. A Decision-Theoretic Generalization of On-Line Learning and an Application to Boosting. Journal of Computer and System Sciences, 55, 119-139. [12] S. Garcia-Salicetti, C. Beumier, G. Chollet, B. Dorizzi, J. Leroux-Les Jardins, J. Lanter, Y. Ni, and D. Petrovska-Delacretaz, 2003. BIOMET: a Multimodal Person Authentication Database Including Face, Voice, Fingerprint, Hand and Signature Modalities. Springer Lecture Notes in Computer Science, 2688, 845853. [13] Yasunori Hongo, Daigo Muramatsu, and Takashi Matsumoto, 2005. Modification on Intersession Variability in On-Line Signature Verifier. Springer Lecture Notes in Computer Science, 3546, 455-463. [14] 伊庭幸人, 2005. マルコフ連鎖モンテカルロ法の基礎, 計算統計 II マルコフ連鎖 モンテカルロ法とその周辺 第 I 部, 岩波書店. [15] Y. Itakura, T. Nagashima, S. Tsuji, 2002. Proposal on Personal Identifiers Generated from the STR Information of DNA. International Journal of Information Security, 1(3), 149-160. [16] Anil K. Jain, Friederike D. Griess, and Scott D. Connell, 2002. On-line Signature Verification. Pattern Recognition. 35, 2963-2972. [17] Anil K. Jain, Hong Chen, and Silviu Minut, 2003. Dental Biometrics: Human Identification Using Dental Radiographs. Springer Lecture Notes in Computer Science, 2688, 429-437. [18] Anil K. Jain, Arun Ross, and Salil Prabhakar, 2004. An Introduction to Biometric Recognition. IEEE Trans. on Circuit and Systems for Video Technology, Special Issue on Image- and Video-Based Biometrics, 14(1), 4-20. [19] Alisher Kholmatoc and Berrin Yanikoglu, 2004. Biometric Authentication Using Signatures. Springer Lecture Notes in Computer Science, 3280, 373-380. [20] R.S. Kashi, J. Hu, W.L. Nelson, and W. Turin, 1997. On-line Handwritten Signature Verification using Hidden Markov Model Features. Proc. of International Conference on Document Analysis and Recognition, 1, 253-257. [21] 北研二, 1999. 言語と計算 4 確率的言語モデル. 東京大学出版会. 117 [22] Josef Kittler, Mohamad Hatef, Robert P.W. Duin, and Jiri Matas, 1998. On Combining Classifiers. IEEE Trans. Patten Analysis and Machine Intelligence, 20(3), 226-239. [23] J. Kittler, K. Messer, and J. Czyz, 2002. Fusion of Intramodal and Multimodal Experts in Personal Identity Authentication Systems. Proc. Cost 275 Workshop, 17-24. [24] 小松尚久, 2005. バイオメトリクスセキュリティ評価基準に関する研究. 平成 16 年度経済産業省基準認証研究開発事業 共同研究報告書. [25] 小松尚久, 2004. 生体認証の現状と個人情報保護の観点からの整理. 記入審議会 金融分科会特別部会(第 15 回)資料 2. [26] Jaeyeon Lee, Ho-Sub Yooh, Jung Soh, Byung Tae Chun, and Yun Koo Chung, 2004. Using Geometric Extrema for Segment-to-Segment Characteristics Comparison in Online Signature Verification. Pattern Recognition, 37, 93-103. [27] Luan L. Lee, Toby Berger, and Erez Aviczer, 1996. Reliable On-Line Human Signature Verification Systems. IEEE Trans. Pattern Analysis and Machine Intelligence, 18(6), 643-647. [28] Hansheng Lei, Srinivas Palla, Venu Govindaraju, 2004. ER2 :an Intuitive Similarity Measure for On-line Signature Verification. Proc. International Workshop on Frontiers in Handwriting Recognition, 191-195. [29] D. J. C. MacKay, 1994. Bayesian method for backpropagation networks. In Models of Neural Networks III, ed. By E. Domany J. L. van Hemmenand K. Schulen, chapter 6, 211-254, Springer-Verlag. [30] R. Martens and L. Claesen, 1998. Incorporating local consistency information into the online signature verification process. International Journal on Document Analysis and Recognition, 1, 110-115. [31] A. Martin, G. Doddington, T. Kamm, and M. Przybocki, 1997. The DET Curve in Assessment of Detection Task Performance. Proc. of the European Conference on Speech Technology, 1895-1898. [32] Julio Cesar Martı́nez Romo and Rogelio Alcántara Silva, 2004. Optimal Prototype Functions of Features for Online Signature Verification. International Journal of Pattern Recognition and Artificial Intelligence, 18(7), 1189-1206. 118 参考文献 [33] 松本隆, 2004. 非線形ダイナミカルシステムの再構成と予測. 階層ベイズモデル とその周辺 時系列・画像・認知への応用 第 II 部、岩波書店. [34] Tsutomu Matsumoto, Hiroyuki Matsumoto, Koji Yamada and Satoshi Hoshino, 2002. Impact of Artificial ”Gummy Fingers” on Fingerprint Systems. Proc. SPIE 4677, 275-289. [35] 松本勉, 平林昌志, 2003. 虹彩照合技術の脆弱性評価(その 1). ユビキタスネッ トワーク社会におけるバイオメトリクスセキュリティ研究会第 1 回研究発表会予 稿集, 53-59. [36] Mario E. Munich and Pietro Perona, 1999. Visual-based ID Verification by Signature Tracking. Proc. 2nd Audio- and Video-Based Person Authentication. [37] Mario E. Munich and Pietro Perona, Visual Identification by Signature Tracking. IEEE Trans. Pattern Analysis and Machine Intelligence, 25(2), 200-217. [38] Daigo Muramatsu and Takashi Matsumoto, 2003. An HMM On-line Signature Verifier Incorporating Signature Trajectories. Proc. 7th International Conference on Document Analysis and Recognition, 1, 438-442. [39] D. Muramatsu, M. Kondo, M. Sasaki, S. Tachibana, and T. Matsumoto, 2006. A Markov Chain Monte Carlo Algorithm for Bayesian Dynamic Signature Verification. IEEE Trans. Information Forensic and Security (in press). [40] 村田昇, 2003. 推定量を組み合わせる バギングとブースティング. パターン認識 と学習の統計学 新しい概念と手法 第 III 部, 岩波書店. [41] V.S. Nalwa, 1997. Automatic On-line Signature Verification. Proc. IEEE, 85(2), 215-239. [42] R. M. Neal, 1994. Bayesian Learning for Neural Networks. Springer-Verlag. [43] J. Ortega-Garcia, J. Fierrez-Aguilar, D. Simon, J. Gonzalez, M. Faundez-Zanuy, V. Espinosa, A. Satue, I. Hernaez, J.-J. Igarza, C. Vivaracho, D. Escudero and Q.-I. Moro, 2003. MCYT baseline corpus: a bimodal biometric database. IEE Proceedings Vision, Image and Signal Processing, 150(6), 395-401. [44] J. Ortega-Garcia, J. Fierrez-Aguilar, J. Martin-Rello, and J GonzalezRodriguez, 2003. Complete signal modeling and score normalization for functionbased dynamic signature verification. Springer Lecture Notes in Computer Science, 2688, 658-667. 119 [45] Marc Parizeau and Rejean Plamondon, 1990. A Comparative Analysis of Regional Correlation, Dynamic Time Warping, and Skeletal Tree Matching for Signature Verification. IEEE Trans. on Pattern Analysis and Machine Intelligence, 12(7), 710-717. [46] Rejean Plamondon and Marc. Parizeau. 1988. Signature Verification From Position, Velocity and Acceleration Signals: A Comparative Study. Proc. International Conference on Pattern Recognition, 260-265. [47] Rejean Plamondon and Guy Lorette, 1989. Automatic Signature Verification and Writer Identification - The State of the Art. Pattern Recognition, 22(2), 101-131. [48] L. R. Rabiner, 1989. A Tutorial Hidden Markov Model and Selected Application in Speech Recognition. Proc. IEEE 77(2), 257-286. [49] Lawrence Rabiner, Biing-Hwang Juang, 1993. Fundamentals of Speech Recognition. Signal Processing Series, Prentice Hall. Englewood Cliffs. [50] Walrence Rabiner, Biing-Hwang Juang 共著, 古井貞煕監訳, 1995. 音声認識の 基礎 (上)(下). NTT アドバンステクノロジ株式会社 [51] Arun Ross and Anil Jain, 2003. Information fusion in biometrics. Pattern Recognition Letters, 24, 2115-2125. [52] Hiroaki Sakoe, Seibi Kogure, 1978. Dynamic Programming Algorithm Optimization for Spoken Word Recognition. IEEE Trans. Acoustics, Speech, Signal Processing, 26(1), 43-49. [53] Y. Sato and K. Kogure, 1982. Online Signature Verification Based on Shape, Motion, and Writing Pressure. Proc. 6th International Conference on Pattern Recognition, 2, 823-826. [54] Robert E. Schapire, Yoram Singer, 1999. Improved Boosting Algorithms Using Confidence-rated Predictions. Machine Learning, 37(3), 297-336. [55] Thomas B. Sebastian, Philip N. Klein, Benjamin B. Kimia,2003. On Aligning Curves. IEEE Trans. Pattern Analysis and Machine Intelligence, 25(1), 116-124. [56] 瀬戸洋一, 2002. サイバーセキュリティにおける生体認証技術, 共立出版株式 会社. 120 参考文献 [57] Hiroki Shimizu, Satoshi Kiyono, Takenori Motoki, and Wei Gao, 2004. An electrical pen for signature verification using a two-dimensional optical angle sensor. Sensor and Actuators, A111, 216-211. [58] Juan J. Ugarza, Lorea Gómez, Inma Hernáez, and Iñaki Goirizwlaia, 2004. Searching for an Optimal Reference System for On-Line Signature Verification Based on (x,y) Alignment. Springer Lecture Notes in Computer Science, 3072, 519-525. [59] B. Ly Van, S. Garcia-Salicetti, and B. Dorizzi, 2004. Fusion of HMM’s Likelihood and Viterbi Path for On-line Signature Verification. Lecture Notes in Computer Science, 3087, 318-331. [60] Quen-Zong Wu, I-Chang Jou, and Shun-Yin Lee, 1997. On-line Signature Verification Using LPC Cepstrum and Neural Networks. IEEE Trans. System, Man and Cybernetics-part-B: Cybernetics, 27(1), 148-153. [61] S. Yamanaka, Masato Kawamoto, T. Hamamoto, and S. Hangai, 2000. Signature Verification Adapting to Intersession Variability. Proc. IEEE International Conference on Multimedia and Expo., 88-91. [62] Y. Yamazaki and N. Komatsu, 1997. A Proposal for a text-indicated writer verification method. IEICE Trans. Fundamentals, E80-A(11), 1-7. [63] L. Yang, B. K. Widjaja, and R. Prasad, 1995. Application of Hidden Markov Models for Signature Verification. Pattern Recognition, 28(2), 161-170. [64] H. Yasuda, T. Takahashi, and T. Matsumoto, 2000. A Discrete HMM for Online Handwriting Recognition. International Journal of Pattern Recognition and Artificial Intelligence, 14(5), 675-688. [65] Dit-Yan Yeung, Hong Chang, Yimin Xiong, Susan George, Remanujan Kashi, Takashi Matsumoto, and Gerhard Rigoll, 2004. SVC. First International Signature Verification Competition. Springer Lecture Notes in Computer Science, 3702, 16-22. [66] 吉村ミツ, 1999. 署名のデザイン. 芸術工学への誘い 第 I 部 第 4 章, 岐阜新聞社. [67] (社) 日本自動認識システム協会, 2001. これでわかったバイオメトリクス. オー ム社. 121 研究業績 論文 論文 ○ D. Muramatsu, M. Kondo, M. Sasaki, S. Tachibana, and T. Matsumoto, 2006. A Markov Chain Monte Carlo Algorithm for Bayesian Dynamic Signature Verification. IEEE Trans. on Information Forensic and Security (in press). Yasunori Hongo, Daigo Muramatsu, and Takashi Matsumoto, 2005. Modification on Intersession Variability in On-Line Signature Verifier. Springer Lecture Notes in Computer Science, 3546, 455-463. ○ Daigo Muramatsu and Takashi Matsumoto, 2004. A Discrete HMM Algorithm for On-line Signature Verification with Pen Position Trajectories. WSEAS Trans. on Communications, 1(3), 81-86. ○ Daigo Muramatsu and Takashi Matsumoto, 2003. An HMM On-line Signature Verification Algorithm. Springer Lecture Notes in Computer Science, 2688, 233-241. Mitsuru Kondo, Daigo Muramatsu, Masahiro Sasaki, and Takashi Matsumoto, 2003. A Bayesian MCMC On-line Signature Verification. Springer Lecture Notes in Computer Science, 2688, 540-548. 国際学会 (査読有) Yasunori Hongo, Daigo Muramatsu, and Takashi Matsumoto, 2005. AdaBoostbased on-line signature verifier. Proc. SPIE, 5779, 373-380. A. Funada, D. Muramatsu, and T. Matsumoto, 2004. The Reduction of Memory and the Improvement of Recognition Rate for HMM On-line Handwriting 122 研究業績 Recognition. Proc. 9th International Workshop on Frontiers in Handwriting Recognition, 383-388. ○ Daigo Muramatsu and Takashi Matsumoto, 2003. An HMM On-line Signature Verifier Incorporation Signature Trajectories. Proc. 7th International Conference on Document Analysis and Recognition, 1, 438-442. Mitsuru Kondo, Daigo Muramatsu, Masahiro Sasaki, and Takashi Matsumoto, 2003. Nonlinear Separation of Signature Trajectories for On-line Personal Authentication. Proc. IEEE International Conference on Multimedia and Expo., 3, 89-92. ○ Daigo Muramatsu and Takashi Matsumoto, 2003. An HMM On-line Signature Verification with Pen Position Trajectories. Proc. 2003 International Conference on Artificial Intelligence, 299-303. Mitsuru Kondo, Daigo Muramatsu, Masahiro Sasaki, and Takashi Matsumoto, 2003. Bayesian MCMC for Biometric Person Authentication Incorporating On-line Signature Trajectories. Proc. IASTED International Conference on Signal Processing, Pattern Recognition, and Application, 269-273. Mitsuru Kondo, Daigo Muramatsu, Masahiro Sasaki, and Takashi Matsumoto, 2003. Nonlinear Separation of Signature Trajectories. Proc. IEEE International Conference on Acoustic, Speech, and Signal Processing, 2, 349-352. 講演 国際学会 (招待講演) D. Sakamoto, M. Kondo, H. Morita, D. Muramatsu, M. Sasaki, and T. Matsumoto, 2002. Dynamic Biometric Person Authentication Using Pen Signature Trajectories. Proc. 9th International Conference on Neural Information Processing. 国際学会 (査読有) Mitsuru Kondo, Daigo Muramatsu, Masahiro Sasaki, and Takashi Matsumoto, 2003. A Bayesian MCMC Algorithm for On-line Signature Verification. Practical Bayesian Statistics 5, 34. 123 講演 加藤雄大, 村松大吾, 松本隆, 2006. オンライン署名認証における経時変化適 応:逐次モンテカルロ的アルゴリズム. 2006 年 暗号と情報セキュリティシン ポジウム. 本郷保範, 村松大吾, 松本隆, 2006. ユーザ独立型オンライン手書き署名認証モ デルにおける文字種依存性に関する考察. 2006 年 暗号と情報セキュリティシ ンポジウム 本郷保範, 村松大吾, 松本隆, 2005. AdaBoost によるオンライン手書き署名認 証―ユーザ独立型モデルの提案―. ユビキタスネットワーク社会におけるバイ オメトリクスセキュリティ研究会, 第 5 回発表会予稿集, 9-15. 村松大吾, 松本隆, 2003. ペン変位情報のみを用いた HMM オンライン署名照 合手法の検討. ユビキタスネットワーク社会におけるバイオメトリクスセキュ リティ研究会、第 1 回研究発表会予稿集, 1-5. 近藤充, 村松大吾, 佐々木昌浩, 松本隆, 2003. ベイズ的モンテカルロ手法を用 いたオンライン手書き署名照合. ユビキタスネットワーク社会におけるバイオ メトリクスセキュリティ研究会, 第 1 回研究発表会予稿集, 7-12. 村松大吾, 松本隆, 2003. ペン位置軌跡情報を用いた HMM On-line 署名照合. 電子情報通信学会総合大会, 185. 近藤充, 村松大吾, 佐々木昌浩, 松本隆, 2003. Bayesian MCMC オンライン署 名照合. 電子情報通信学会総合大会, 186.