第 4 章 Siamese Network による筆者照合
4.2 提案手法
第 3 章では,潜在空間 z の各次元で表現される筆跡特徴をすべて等質に扱う ことで,比較する筆跡間の類似性を評価している.しかしながら,zには筆者照 合に有効な特徴のみではなく,筆者の個人性とは関係のない全筆者に共通する
78
特徴も含まれると考えられる.同様に,筆者の恒常性のある特徴ではなく,変動 の大きな特徴が表現されている場合もあり,同特徴を除外した筆跡特徴による 比較,類似性評価が望ましいと考えられる.例として,図 4.1に各特徴軸で表現 される字形を可視化した結果,図 4.2 には潜在空間中の特定の 2 つの次元を選 択して表現される 2 次元平面上に 3 人の手書き文字をマッピングした結果を示
す.図 4.1は,zの次元数を5としてAE_2で学習し,図中で示す次元以外の値
を0 として-3~+3まで特定の次元の値のみを変化させて生成した画像を軸座 標と対応させたものである.ETL-1の片仮名データについては,z1では第1画の 傾斜の程度,第2画の湾曲の程度が反映され,z4では,z1と同様の特徴に加えて 線幅の変化が表現されている.ETL-1のラテン文字データについては,z1では線 幅の変化と接点の角度,z3では傾斜,横幅の変化が表現されている.各軸が表現 する特徴については,多数の筆者の書き方の特性を踏まえて,どの特徴軸(次元)
が個人性を表現するかを検証する必要がある.また,図 4.2の(a)では z1につい て各筆者の平均ベクトルが分かれる状態がみられるが,(b)ではいずれの軸につ いてもそのような状態はみられず,筆者照合にあたっては(a)の特徴空間(特に z1)を選択したほうが良好な筆者照合が可能となると考えられる.
(a) ETL-1 片仮名データ
(AE_2, z dim=5)
(b) ETL-1 ラテン文字データ
(AE_2, z dim=5)
z
1z
4z
1z
3図 4.1 各特徴軸(次元)で表現される字形の可視化
79
以上の考察から,全特徴を等質に用いるよりも,筆者の個人性に関わる特徴に 着目して類似性を求めることで照合性能の向上を図ることが可能と考え,照合 モデルとしてSiamese Networkを構築する.提案手法の概要を図 4.3に示す.提 案手法は,筆跡特徴抽出モデル(Handwriting Feature Extraction Model; HFEM)と 筆者照合モデル(Writer Verification Model; WVM)という2つのモデルから構成 される.HFEMは,第3章で述べたConditional AutoEncoder(AE_2)のEncoder 部分にあたる.WVMは,筆跡特徴の類似性を計量するための重み共有層を含ん
だSiamese Network構造の照合モデルである.
z2
z1
z9
z8
図 4.2 各筆者の手書き文字の2D潜在空間へのマッピング
(ETL-1 片仮名データ,AE_2, z dim=10)
(a) z1,z2平面へのマッピング (b) z8,z9平面へのマッピング
Encoder Decoder
z Character Label
y
Training data
zB
zq
zA
B A
Unknown Latent space Handwriting feature extraction model
zA
zq
Same Differentor
Siamese Network Writer verification model
図 4.3 Siamese Networkを用いた筆者照合の流れ
80
4.2.1 Handwriting Feature Extraction Model ( HFEM )
HFEMを図 4.4に示す.HFEMは,第3章で提案したAE_2の学習済みモデル
のうち,入力層からzを出力するまでのEncoder部分にあたる.低次元の潜在空 間で表現されるzには,字種情報yとは分離した筆跡特徴が反映されることが第 3章において確認されている.
4.2.2 Writer Verification Model ( WVM )
鑑定対象となる筆跡は意味を成す文(最小単位としては単語)である場合が多 い.また,少数の単純な字画構成の字種のみから抽出可能な筆跡特徴は少なく,
筆者間での差を捉えることは困難となる.本研究では,少数の異なる字種間であ っても筆者照合を一定の性能以上で行うために,図 4.5 及び表 4.1 に示す
Siamese Network構造のWVMを構築した.
(Encoder)HFEM
z y
Character Label
図 4.4 HFEM(AE_2のEncoder部分)
PReLU Batch Normalization
Dense Dense+Sigmoid
-| f (zq)-f (zr) | Same=1Different=0 Weight shared
f (z)
Error y HFEM
y HFEM
y HFEM
Aggregation (average)
zq Inputq,1
Inputq,2
Inputq,m
m-tuple
y HFEM y HFEM
y HFEM
zr Inputr,1
Inputr,2
Inputr,m
m-tuple D1 D1-BN W-Out F-D1 F-D1-BN F-Act
D1 D1-BN W-Out
図 4.5 WVMのネットワーク構造
81
人の行動には変動があり,同一人が同一字種を記載する場合にも変動(筆跡 の個人内変動)がみられる [9, 28].また,同一人が異なる字種を記載する場合 には字種間での書き方の違いの影響も加わる.そのため,HFEMで求められる 各字種の潜在空間zで表現される筆跡特徴には変動が存在するものと考えられ る.そこで,同一筆者内の字種間の変動を吸収するために,複数字種をHFEM に入力して得られる各zを平均統合処理したものを,WVMへの入力とする.
WVMは2入力に対して重み共有層を含み,図 4.5中のf(z)は重み共有部分の 演算を表す.入力されるm字種群の両方が同一人の筆跡である同一人ペアと異 なる人の筆跡である他人ペアを学習データとして多数用意し,それらを判別す るモデルとしてWVMを学習する.学習ペアデータ数がKの場合,入力ペアが 同一人ペアの場合は 1,他人ペアの場合は 0 とした教師データ T=(t1, t2, …, tK
∈ {0,1})と出力値P=(p1, p2, …, pK ∈ [0,1])の間の誤差を式(4.1)に示すBinary Cross Entropyにより求め,誤差逆伝搬に用いる誤差関数LWVM(T,P)とする.
L
𝑊𝑊𝑉𝑉𝑊𝑊(𝑇𝑇, 𝑃𝑃 ) = − �{𝑡𝑡
𝐾𝐾 𝑘𝑘𝑙𝑙𝑜𝑜𝑙𝑙(𝑝𝑝
𝑘𝑘) + (1 − 𝑡𝑡
𝑘𝑘)𝑙𝑙𝑜𝑜𝑙𝑙(1 − 𝑝𝑝
𝑘𝑘)}
𝑘𝑘=1
(4.1)
WVMでは,入力ペアが同一人であるか否かの確率が0~1で出力される.例 えば,しきい値を0.5としてWVMによる筆者照合を行う場合,出力値が0.5以 上の場合には入力ペアが同一人ペアであると推定,0.5未満では他人ペアと推定 することが可能である.
Output shape unit size
Input Input Input_dim
D1 Dense z dim
D1-BN BatchNormalization
W-Out Activation Activation=PReLU
F-Merge Merge z dim Absolute subtraction |f(zq)-f(zr)|
F-D1 Dense z dim
F-D1-BN BatchNormalization
F-Act Activation Activation=PReLU
Output Dense(Output) 1 Activation=Sigmoid
Weight shared
Fusion
Model Layer name Layer type Parameters
表 4.1 WVMの各層の詳細
82
4.2.3 WVM の学習方法
WVMでは,2入力されるペアが同一人ペアであるか他人ペアであるかを判別 し,同一人である確率を出力する.すなわち,ある入力ペアが実際に同一人ペア である場合には1,他人ペアである場合には0を出力できるようにモデルを学習 する必要がある.WVMの学習に用いる同一人ペア(s-pair)と他人ペア(d-pair) の作成例を図 4.6に示す.全字種数nc,筆者数nw のデータについて,同一人か らランダムに抽出した m 字種の s-pair,異なる人からランダムに抽出した m 字
種の d-pair を作成する.モデル学習用データを訓練用データと検証用データに
HFEMの学習と同様の筆者分割パターンで分割して用いる.
s-pairの作成では,同一人データ内のnc字種から同一字種を含まないという条
件のもとランダムに m 字種を抽出することで s=[nc/m]セットの組を作成し,そ のセット内での2つの組のペアをs-pairとした.m字種の抽出パターンは複数あ ることから,同様の流れで s-pair を作成する回数を p とすると,作成される
s-pairの数ns-pairは式(4.2)で表される.
𝑛𝑛
𝑠𝑠−𝑝𝑝𝑝𝑝𝑖𝑖𝑝𝑝= 𝑛𝑛
𝑤𝑤𝑝𝑝 𝑠𝑠!
2(𝑠𝑠 − 2)! (4.2)
nc
・・・
nw
・・・
・・・
・・・
・・・
・・・
d-pair
d-pair s-sets=[nc/6]
Different writer pairs
・・・
p-times
Same writer pairs s-sets=[nc/3]
・・・
s-pair
Same writer pairs s-pair
図 4.6 学習用の同一人ペア,他人ペアの作成例(m=3の場合)
83
d-pairは,nwからランダムに選択した2人について,同一字種を含まないとい
う条件のもとで各人のデータからランダムに m 字種を抽出したものをペアとし て作成される.作成されるd-pairの数nd-pairについては,ns-pairと同数となるよう に,筆者2名の選択と異なる字種の選択を繰り返す.
学習の最適化手法にはAdamをα=0.0001,β1=0.1,β2=0.999に設定して用いる.
学習にあたり,ミニバッチサイズは100 に設定し,30エポックを上限として検 証用データの誤差が連続して 6 エポック以上減少しなくなった時点で学習を終 了する.