• 検索結果がありません。

[スライド]

N/A
N/A
Protected

Academic year: 2021

シェア "[スライド]"

Copied!
30
0
0

読み込み中.... (全文を見る)

全文

(1)

Researcher2Vec: ニューラル線形モデル

による自然言語処理研究者の可視化と推薦

持橋大地

統計数理研究所 数理・推論研究系

日本学術振興会 学術情報分析センター

[email protected]

言語処理学会年次大会

2021

2021-3-16 (火)

(2)

概要

!

論文の内容から研究者をベクトル化し、キーワードで

検索できるサーバを公開

!

Word2vecと同様のニューラル文書ベクトルを、

特異値分解により

Doc2Vecの20倍の速度で計算

!

Doc2Vec, LDAによる検索を超えて最高精度

(3)

概要

l

研究者ベクトルを

2次元に可視化することで、研究内容

の近い研究者が客観的に可視化できる

(4)

背景

l

コンピュータサイエンス分野では、論文数が激増

言語処理学会

2020…338本, ACL 2020…779本,

CVPR 2020…1470本, NeurIPS 2020…1,900本以上

l

人手による査読割り当ては、もはや限界

上の採択数の

4倍∼10倍程度 3∼5程度の査読数が必要

(CVPR 2020では19000個の査読が必要)

TPMSが使われているが、研究者別情報は非公開

未だに研究者の専門性を人手で調べる必要がある

(5)

背景

(2)

!

研究の興味が多様化しており、自然言語処理なら

(6)

背景

(2)

l

この分野の研究をよく知っている先生は誰か?

à 適切な指導者の発見

(学生、企業とも)

l

会議やジャーナルへの適切な研究者のリクルート

(7)

既存システム

!

「日本の研究

.com」, JDream Expert Finder, JSTサイエン

スマップなど

!

論文の内容ではなく、引用などメタ情報がベース

!

本当の詳しい専門性は分からない、共著関係に引きずら

れる

(コネ)

" 鈴木さんが

心理学

??

(8)

既存研究

l

桂井ら

(2016):CiNIIの10万件の論文概要、300万語の

テキストをトピック数

K=500のLDAで解析

次元圧縮しないベクトル空間モデルより高精度

l

持橋

(2019):学振内部の11万件の科研費申請書、3億語の

テキストをトピック数

K=4000の巨大なLDAで解析

LightLDA(WWW 2015)で高速化しても数日かかる

科研費特別推進、基盤

Sの審査に利用

(9)

ちなみに

..

!

本研究とは、これとは完全に独立

(学振での必要性)

!

まだ論文が出ていない

(はず)

(10)

LDAによる論文テキストの分析

!

確率的潜在意味解析

(LDA, Blei+ 2003) …

各文書に対し、潜在的な話題

(トピック)分布を推定

スポーツ

政治

(11)

LDAの欠点

!

結果として、

LDAは大変有効なモデルではあるが、

!

負の相関を扱えない

!

細かい意味的な違いに対処するのに限界がある

!

研究者や申請書の内容は和が

1のトピック分布

!

で表現されるため、

!

「経済学者だが、数理的には解析学がベース」

「経済学者だが、数理的にはゲーム理論がベース」

などの細かい違いを

!で捉えるのは、非常に難しい

! 研究者の推薦精度にある程度限界がある

✓ =

1 2  K

(12)

LDAの欠点 (2)

!

数学的には、

LDAは単体の上でしか文書をモデル化して

いない

! ベクトル空間のごく一部しか使っていない

1

1

1

一般のベクトル

トピック分布

!

(13)

文書のベクトル表現

l

確率分布 で文書を表現するのをやめて、

一般のベクトル

で文書や研究者を表現すればよい

?

à

RaP (Gehler+ 2006), RSM (Salakhutdinov 2009),

Doc2Vec (Le and Mikolov 2014) , NVDM (Miao+ 2016)

など多数あるが

..

l

ニューラル手法なので、一般に学習が難しい

l

しかし

...

<latexit sha1_base64="3o2Cm+aYIQ8+S8IBgMleecPUSY8=">AAAHaHichZXPTxNBFMcfoBTxB0UParwQGoinZlpNNJ5AJZFASGltKaGE7CyzZe12d7O7LbRN/wFP3ox60sSD8c/w4j/ggT9BPWLixYNvZ7fZ0nnANu3MvPf5vr43MzvDXcv0A8aOx8YnLl2eTE1dmb567fqNmfTszYrvtDxdlHXHcrwq13xhmbYoB2ZgiarrCa3JLbHFG89C/1ZbeL7p2C+Djit2m1rdNg1T1wI0VWrBgQi0vXSGZZl85tROLu5kIH4KzuzEItRgHxzQoQVNEGBDgH0LNPDxswM5YOCibRd6aPOwZ0q/gD5Mo7aFlEBCQ2sDf+s42omtNo7DmL5U6/gvFn49VM7BAvvBvrAT9p19ZT/ZvzNj9WSMMJcOtjzSCndv5vWd0t8LVU1sAzhIVOcoONLn1xSAAY9lLSbW5kpLWKUexW93356UnhQXeovsE/uN9X1kx+wbVmi3/+ifN0Xxg4y+jxoD2za2OmRwhns4GmTK0deT1n6cTcIfEeQRwXUIrkNwXYLrEtwhwR0SnEFwBsE1CK5BcMsEt0xwqwS3SnBrBLdGcFWCqxLcNsFtExwjOKZwPF7fcB9S68rjdY386npyuYsHfkH4m7hjE6ImxyrlYo7mKS6yUKSvkD5JhrkFWP8wO7CpdDhLA35Ykdj7hMqS7zxHy6hu2EMpC0rFhTMqLqG1LldymE6sqmL9VFaJZn0kp2HVRpy/jj4LT5YNhVgZ2VEcxysKVSSookI9l6dNBvKSNvB8Ds+9aDUHJ36UR3Qq0Z58GBfvn9zobaN2Kvls7kE2v/kws/Q0vomm4B7Mw32M/wiW4AXOfxlzeAVv4B28n/yVSqdup+5G6PhYrLkFp57U/H+InYO9</latexit>

!

d

<latexit sha1_base64="/QrXniarPtZlPqXTWylpuYEC2Ew=">AAAHdnichZXNbtNAEMenLTSlfDQtFyQkVBGlcIo2AQnEqQUqUbWq0oS0qZoqsp11asWxLdv5Vl6AF+CAhAQSAsRjcOEFOPQREMciwYED47UjJ9lpcZTs7szvP5nZXe+qjml4PmOnM7Nzly7PJxauLF69dv3GUnJ5Zd+zW67GS5pt2m5ZVTxuGhYv+YZv8rLjcqWpmvxAbTwL/Adt7nqGbb30ew4/bip1y9ANTfHRVE2uVGx0u0b9xFdc1+4MasNqMsUyTDyrcicbdVIQPXl7eW4NKlADGzRoQRM4WOBj3wQFPPwcQRYYOGg7hgHaXOwZws9hCIuobSHFkVDQ2sDfOo6OIquF4yCmJ9Qa/ouJXxeVq5Bm39lndsa+sS/sB/t7bqyBiBHk0sNWDbXcqS69ulX8/V9VE1sfTmLVBQoV6Ytr8kGHx6IWA2tzhCWoUgvjt/uvz4pPCunBGnvPfmJ979gp+4oVWu1f2oc9XngjotdQo2PbxlaDFM7wAEejTFX0DYR1GGUT812C7BJcj+B6BNcnuD7BdQiuQ3A6wekE1yC4BsFtENwGwW0R3BbBbRPcNsGVCa5McIcEd0hwjOCYxKnR+gb7kFpXNVrX0C+vpyp28cjPCX8Td2xMVMRYphzM0ZjgQgtFehLpkWSQm4/1j7Mjm0wHszTixxWxfUioTPHOq2iZ1o17KGVeqjh/TsVFtNbFSo7TsVVW7ExkFWt2pnIaV+1G+WvoM/Fk2ZWIzakdpeJ4U6IKBFWQqOfitElBTtA6ns/BuReu5ujED/MITyXakwvi4v2Tnb5t5M5+LpN9kMntPUytP41uogW4DXfhPsZ/BOvwAue/hDl04S18hE/zfxJ3EunEvRCdnYk0N2HiSbB/7HaJsQ==</latexit>

(14)

Word2vecの数理

!

単語をベクトル化する、有名な

Word2vec (Mikolov+ 2013)

は、以下の自己相互情報量行列の行列分解と等価である

ことが示されている

(Levy and Goldberg 2014)

単語

w

文脈語

c

'

単語ベクトル

!

w

C

W

Y

K

PMI(w, c)

= log

p(w, c)

p(w)p(c)

(15)

Word2vecから文書ベクトルへ

!

単語

!文書、文脈語!含まれる単語 に置き換えれば、

SVDで簡単に

「文書ベクトル」と「単語ベクトル」を

計算できる

文書

d

単語

w

'

文書ベクトル

PMI(d, w)

= log

p(d, w)

p(d)p(w)

log

p(d, w)

p(d)p(w)

= log

p(w

|d)

p(w)

(注:

)

!

d

W

D

Y

単語ベクトル

!

w

(16)

計算時間の比較

l

K=1,000次元(トピック)で同じコーパスから学習した場合、

LDAはGibbs 1,000 iteration, Doc2Vecは100 epochs

データが巨大な場合、提案法は

redsvdなども使える

0

10000 20000 30000 40000 50000 60000

SVD

Doc2Vec

LDA

(秒)

14時間48分

21分9秒

1分8秒 (超高速)

(17)

文書ベクトルから研究者ベクトルへ

l

各研究者について、書いた論文

/科研費申請書の

文書ベクトルが得られるので、

それらの平均を研究者ベクトルとする

(最尤推定)

l

本来は分散も推定するべき

(Kernel mean embedding?)

l

次元

Kは、最大値は文書数

(実験では3582)

研究者

A

研究者

C

研究者

B

主成分

1

主成分

2

主成分

K

(18)

キーワード検索の方法

!

クエリを仮想的な「文書」

yと思うと、

が成り立っている

( は対応する文書ベクトル)

'

PMI(d, w)

= log

p(d, w)

p(d)p(w)

y

d

d

W

D

V

y

' dW

K

K

V

(19)

キーワード検索の方法

(2)

!

yの要素はPMI log p(w|y)/p(w) なので、クエリの部分に

1を立て、残りは log(1)=0 のベクトル

!

クエリ単語の最後に

* を付けると、1ではなく

2,3,... にしてその単語を強調できる (例: “neural** model”)

!

y~dW の方程式は等式ではなく近似

!

得られた「文書ベクトル」

dを研究者ベクトルと比べ

ればよい

'

y

d

W

V

K

V

K

(20)

キーワード検索の方法

(3)

!

これは線形回帰モデル!

!

よって、

dの最適解は通常の

OLSで、

'

y

d

W

V

K

V

K

'

y

d

W

を書き直すと、

y

'Wd

d = (W

T

W)

1

W

T

y

V

K

(21)

キーワード検索の方法

(4)

l

線形回帰の基本ですが、二乗誤差を最小化したいので

l

よって

l

事前に

を計算しておけば、

で一瞬で求まる

E =

|y

Wd

|

2

= (y

Wd)

T

(y

Wd)

= y

T

y

2d

T

W

T

y + d

T

W

T

Wd

<latexit sha1_base64="OTjhKqODCRPJebP9QB6E5xRbxkI=">AAAII3ichZXPbxJBFMcfrUrFH6V6MfGykUBqTMmwmmhMTFqVxIamofwoNKVt2O2AGxbYsAstUP4B/wEPnjTpwfhHePBi4s3ooQf/AOOxJl48+HZ2cYF9tEtgZr7v8519b2eYVQxdMy3GTgIzsxcuXgrOXQ5duXrt+nx44cam2Wy3VJ5Xm3qzVVTKJte1Bs9bmqXzotHi5bqi84JSe2bHCx3eMrVmI2d1Db5TL1cbWkVTyxZKe+GPyVDsiXRU6nC13x0sibYwEM3+4GhXlkql7aW4zOs7NrdIc3d3c9Mi434X2s0NadnlXKXghaSQJEn3pCnx/zfYC0dYnIlL8ncSbicC7pVuLszGoAT70AQV2lAHDg2wsK9DGUz8bEMCGBio7UAftRb2NBHnMIAQettIcSTKqNbwt4qjbVdt4Nie0xRuFe+i47eFTgmi7Dt7z07ZZ/aB/WR/p87VF3PYuXSxVRwvN/bmX93K/jnXVcfWgpee6wyHgvTZNVlQgUeiFg1rM4RiV6k683d6r0+zjzPRfoy9Y7+wvrfshH3CChud3+rxBs+8EbPvo6eCbQdbFSL4hPs4GmaqYKwv1IGbjccfEuQhwXUJrktwPYLrEdwBwR0QXIXgKgRXI7gawa0Q3ArBrRLcKsGlCC5FcEWCKxLcFsFtERwjOObjFHd97X1IravirqsT96+nInbxMM6JeB13rEeUxNhPGZijNsY5CkWaPtIkSTs3C+sfZYean7af0pAfdXj6gHDp4j+voDLpG41QzrSv4vSUirOoVsVKjtKe6nesjWXledYmchp1rbv5qxjT8WRZ9xHJiR2l4DjpozIElfFRz8VpEwFZ0BU8n+1zz1nN4Ynv5OGcSnREtufF909i8m3j72zK8cT9uLzxILL81H0TzcFtuAOLOP9DWIYX+PzzoAaigVQgF8gHj4Nfgl+D3xx0JuB6bsLYFfzxD2R9yRI=</latexit>

@E

@d

=

2W

T

y + 2W

T

Wd = 0

) d = (W

T

W)

1

W

T

y

<latexit sha1_base64="rvihj1pcGkEBRHbqwFU3uQETYmY=">AAAIDXichZXPT9RQEMdnRV1cfwB6MfGycWGDMZC3q0ZjgoJKIoEQWH7sEgqkLa/QbHfbtGVhacof4MWjB0+aeCCevRkvHvQf8MCfYDxi4sWD09duurQDdrP75s18vtOZvrevimXojsvYUeZcz/kLF7O9l3KXr1y91tc/cH3ZMXdslS+ppmHaNUV2uKE3+ZKruwavWTaXG4rBq0r9eRCvtrjt6GZz0W1bfK0hbzV1TVdlF10b/YeSZsuqJ1my7eqykZ/0Y1tqcdXb9P1ccSw/Uhazqr++KIy2n7+bT/iqfqQYYzlJykm2rDtcMfe8kuX63qDkbnOba6bNB/2Dg0724thwMsuddW+k5Cfvt9FfYKNMXPm0UYqMAkTXnDnQUwQJNsEEFXagARya4KJtgAwOflahBAws9K2Bhz4bLV3EOfiQQ+0OUhwJGb11/N3C2WrkbeI8yOkItYp3MfBrozIPQ+wHO2TH7Dv7yH6yv6fm8kSOoJY2jkqo5dZG36ubC3/+q2rg6MJ2rDpDoSB9dk8uaPBI9KJjb5bwBF2qYf7W/pvjhceVIa/I3rNf2N87dsS+YofN1m/1wzyvvBXZN1Gj4djCUYUCPmEPZ51KFYx5wutH1cT8HkHuEVyb4NoEt09w+wS3S3C7BKcRnEZwdYKrE9wEwU0Q3BTBTRHcNMFNE1yN4GoEt0JwKwTHCI6lOCVa32AfUuuqROsaxtPrqYhd3IlzIt7AHRsTkpinKQtr1E9woYcinRTpkGRQm4v9d7MdX5oOnlKH71bEfp9QGeI/r6AnqeuOUMq5VMdzp3S8gN4tsZLddOxNK2ZOVBVrZhI1datmo/pVjBl4ssymiMnEjlJwPpmiKgRVSVEvxGlTgLKgNTyfg3MvXM3OiR/WEZ5KdKQc5MX3Tyn5tkkby+XR0r3R8vz9wviz6E3UC7fgNgxj/ocwDi/x+S+BmunLPMg8yTzNvs5+yn7OfgnRc5lIcwNOXNlv/wAfPcKA</latexit>

R = (W

<latexit sha1_base64="5etgp0lDZv7jeparr7eDl5ixWMc=">AAAHjXichZW/b9NQEMevLeASfiSFBYmlImrVDlQvAQRCgFqggqpVlSZNk6ppo9h9DlYc27KdtImVf4CFkYEJJAbEzAoDC/8AQ/8ExFgkFgbOzw5O4mtxlLx7d5/v5c7v+Vm2dM1xGTsaG584c/acNHk+ceHipcvJ1NSVLcds2QovKqZu2mW55nBdM3jR1Vydly2b15qyzkty44kfL7W57Wimsel2LL7brNUNTdWUmouuamq+0uaKl+89TMwJq9Tb2wyN+T3vZqb3z1tNpdkCE9d03MiERhrCK2dOTcxCBfbBBAVa0AQOBrho61ADBz87kAEGFvp2wUOfjZYm4hx6kEBtCymORA29Dfyt42wn9Bo493M6Qq3gv+j4tVE5DTPsO/vAjtk39pH9YH9OzOWJHH4tHRzlQMutavLltcLv/6qaOLrwIlKdopCRPr0nF1S4J3rRsDdLePwulSB/u/v6uHA/P+PNsnfsJ/b3lh2xr9ih0f6lvN/g+Tci+z5qVBzbOCqQxjvs4axfqYwxT3h7YTURf0iQhwTXIbgOwXUJrktwBwR3QHAqwakE1yC4BsEtEdwSwa0Q3ArBrRLcKsGVCa5McNsEt01wjOBYjJPD9fX3IbWucriuQTy+nrLYxf04J+JN3LERURHzOGVhjdoQF3go0omRDkn6tbnY/yDb98Vp/y71+UFF5O8RKl088zJ6RnWDEUqZi3WcO6HjAnrrYiUH6cgbV6wNVRVp1kZqGlSth/UrGNPxZFmPEcsjO0rG+XKMyhNUPkY9FadNGrKCVvF89s+9YDX7J35QR3Aq0ZGsnxffP5nRt03c2MouZG4tZDdupxcfh2+iSbgON2AO89+FRXiO97+INbyCT/AZvkhJ6Y70QHoUoONjoeYqDF3Ss7+D7JEq</latexit>

T

W)

1

W

T

d = Ry

<latexit sha1_base64="Zxbe0hmRgyiCLmFc/Q1U6KWw6Ns=">AAAHenichZXPaxNBFMdfW21q/dFUQQQvpaFFEcIkFhRBaNWCpaWkiWlTmhJ2N7NxyWZ32d2kTdb9B/wHPHiy4EHqf+HFf8BD/wTxWMFLD76d3ZA089puSGbmvc/35b2Z2RnVMQ3PZ+xkbHzi2vXJ1NSN6Zu3bt+ZSc/e3fbstqvxsmabtltRFY+bhsXLvuGbvOK4XGmpJt9Rm68j/06Hu55hW+/8rsP3W0rDMnRDU3w01dL3qx2uBfXwpWiLoWi6YS2dYVkmnjm5k0s6GUiegj07sQhVqIMNGrShBRws8LFvggIefvYgBwwctO1DgDYXe4bwcwhhGrVtpDgSClqb+NvA0V5itXAcxfSEWsN/MfHronIOFtgv9o2dsp/smP1mZxfGCkSMKJcutmqs5U5t5uOD0r8rVS1sfXg/UF2iUJG+vCYfdHguajGwNkdYoiq1OH6n9+m09KK4ECyyI/YH6/vCTtgPrNDq/NW+bvHiZxG9jhod2w62GmRwhgMc9TNV0RcIa5hkM+APCfKQ4LoE1yW4HsH1CO6A4A4ITic4neCaBNckuBWCWyG4NYJbI7h1glsnuArBVQhul+B2CY4RHJM4NVnfaB9S66om6xr75fVUxS7u+znhb+GOHRBVMZYpB3M0znGxhSI9ifRIMsrNx/qH2b5NpqNZ6vPDioE9JFSmeOdVtIzqhj2UsiBVXLig4hJaG2Ilh+mBVVZsnMtqoNkYyWlYtZnkr6HPxJNlUyJWR3aUiuNViSoSVFGi3ojTJgN5Qet4PkfnXrya/RM/ziM+lWhPPoqL909u9LaRO9v5bO5pNr+1lFl+ldxEU/AQ5uERxn8Gy/AW57+MOXyAIziG75NnqfnU49STGB0fSzT34NyTWvoPdnGLPg==</latexit>

(22)

キーワード検索の方法

(5)

R = (W

T

W)

1

W

T

!

は、

numpy.linalg.solve (dot(W.T,W), W.T)

で求められる

!

WはVxKなので、W

T

WはKxK, R=(W

T

W)

-1

W

T

(KxK)x(KxV)=KxV の行列

!

言語処理学会では

V=18000, K=2000 ! Rは277MB

!

学振の場合は

V=180000, K=4000なので

R (およびW)は要素数7億2000万個の巨大な行列、∼4GB

R

V=180000

K=4000

(23)

キーワード検索の方法

(6)

!

yの要素はほとんど0なので、Ryの掛け算は結局、

Rの対応する列を取り出してくればよい

!

Rはディスクにmmap()しておけば、メモリ使用も最小

(対応済み)

R

V=180000

K=4000





0

:

0

1

0

0

:

0

y

V

V

(24)

実験とデータ

l

言語処理学会年次大会の

20年分の論文データ (1995-2013)

を使って実験

20周年記念コーパスなので、ニューラル以前なのに注意

l

MeCabで形態素解析し、語彙18,135語、論文4,082本で

13,654,061語のデータ (1300万単語)

l

この期間で

5本以上の論文がある著者499人/3660人を

実験の対象

l

テストデータ

500文書の著者を推定し、スコア順に並べた

際の平均適合率

(Mean Average Precision, MAP)を計算

MAP=1:スコア最上位がすべて真の著者

(25)

論文著者の推薦精度

(平均適合率)

l

Doc2Vecを超えて、

提案法が常に最高精度

LDAは、桂井ら(2016)の確率分布のコサイン類似度より

KLダイバージェンスで測った方がよい

20

30

40

50

60

70

K=500

K=1000

K=2000

Researcher2Vec

Doc2Vec

LDA KLdiv

LDA cosine

(%)

(26)

平均適合率

(MAP)の分布

l

提案手法では、ほとんどの場合に平均適合率=

1

à 著者をスコア順に並び替えたとき、

真の著者が最上位

を占める

l

それ以外は、先生と興味が違う学生の論文や、英語論文

表 1: 著者予測タスクにおける平均適合率 (MAP) の平均.

提案法は Doc2Vec の性能を上回り, 圧倒的に高速かつ省

メモリである. 計算時間は K =1000 の場合を表している.

モデル\ K

500

1000

2000 計算時間

Researcher2Vec 61.3% 66.6% 70.2%

1m 8s

Doc2Vec [

8

]

57.4% 60.5% 62.0%

21m 9s

LDA KLdiv

56.3% 56.2% 51.2% 14h 48m

LDA cosine [

4

] 44.2% 48.0% 32.7% 14h 48m

語彙は頻度 10 以上の 18,135 語, 論文数は 4,082 本で

ある. 全文を用いているため, 総単語数は 13,654,061

となった. 著者の総数 3,660 人のうち, 5 本以上の論

文があった著者 499 人を実験の対象とした. 疎行列

の SVD による文書ベクトル・単語ベクトルの計算

は高速であり, K =1,000 のとき 1 分程度で終了した.

4.2

実装

Python の Flask モジュールを用いて図

4

のよう

に検索サーバを実装し, 公開した. サーバは

http://

clml.ism.ac.jp/nlp2vec/

でアクセスすることができる.

検索結果の著者をクリックすることで, 研究者ベク

トルの類似する研究者も同時に表示できる.

4.3

評価実験

論文の内容から著者を予測する実験で評価を行っ

た. ランダムな 500 文書をテストデータ, 残りの

3,582 文書を学習データとし, 学習データの中で 5 本

以上の論文を持つ研究者がテストデータの著者に含

まれる場合 (410/500 文書) の各文書について, 研究者

をスコア順に並べた中での真の著者集合の平均適合

率 (MAP) を計算した. スコアは文書の Bag of words

表現から

3.2

節の方法で求めた文書ベクトルと, 研

究者ベクトルの余弦類似度で計算する

10)

. MAP は

高いほど良い指標であり, MAP=1 とは, スコア順に

並び換えた研究者リストの最上位がすべて真の著

者で占められていることを意味する. 比較として,

Doc2Vec [

8

] および LDA を用いた実験も行った.

Doc2Vec 標準的に使われている gensim の Doc2Vec

実装を使用した. 条件を えるため分散 BoW のモデ

ルを使用し, 学習時のパラメータは epochs=100, hs=1,

alpha=0.025,sample=1e-5 である. 学習したモデルを

使用し, テストデータの各文書について Doc2Vec の

10) こ の と き, 文 書 d に 対 す る 観 測 値 y の 要 素 で あ る

PPMI (d, w) は max

!

log

p

(d,w)

p

(d)p(w)

,

0

"

=

max

!

log

p

p

(w|d)

(w)

,

0

"

と書

けるから, 訓練データの各単語の確率 p(w) を保存しておけば,

p

(w |d) は文書 d 内での最尤推定で得られるため, y は容易に

計算できる.

0

50

100

150

200

0

0.2 0.4 0.6 0.8

1

0

50

100

150

200

0

0.2 0.4 0.6 0.8

1

(a) LDA KLdiv

(b) Researcher2Vec (提案手法)

図 5: テストデータの各論文の著者予測の平均適合率(MAP)

のプロット. 提案手法は多くの場合に MAP=1 を達成して

おり, それ以外は英語論文などのノイズとなっている.

infer_vector()

で繰り返し計算により文書ベクト

ルを求める他は, 提案手法と同様に計算する.

11)

LDA 公開している Cython 版の LDA 実装

12)

を使用

し, モデルが充分収束するまで 1,000 回の MCMC を

行った. 学習したモデルを用い, テストデータの各文

書に対して変分ベイズ EM 法でトピック分布の事後

期待値 θ を求め, 式 (

3

) で計算した著者のトピック分

布 !r と比較してスコアを計算する.

13)

[

4

] では単純に

θ

と !r の余弦距離を計算しているが (LDA cosine), 確

率分布に対してコサイン距離を適用するのは適切で

はない. そこで同時に, θ と !r の Kullback-Leibler ダイ

バージェンス

KL(θ||!r) = #

K

k=1

θ

k

log

θ

r

k

k

∝ −

#K

k=1

θ

k

log r

k

(6)

をスコアとする実験 (LDA KLdiv) も行って比較した.

結果 表 1 に, 各モデルの平均適合率の結果とモデル

の計算時間を示した. 提案手法は Doc2Vec や LDA を

超えて最高性能を達成し, モデルの計算もきわめて

高速である. また図 5 のように, 平均適合率は多くの

論文で 1 に集中し, それ以外は英語論文や, 教員の専

門と異なる学生の論文の場合となっていた. 提案手

法での K の最大値は SVD の性質から D(=3582) 以下

であり, K =3000 での精度は 71.6%であった.

5

まとめ

本研究では, ニューラル手法と等価な文書ベクト

ルを効率的な SVD によって計算し, 研究者を論文の

内容で可視化・検索できるシステムを構築し, 評価

した. 実験により, 提案手法はきわめて効率的かつ

Doc2Vec およびトピックモデルより高い著者予測

性能を見せることがわかった. 今後は arXiv や ACL

anthology など, 英語論文への拡張を検討したい.

11) 学習時・テスト時の各文書に対する繰り返し回数は 100 と

したが, これ以上増やしても性能に変化はみられなかった.

12) http://chasen.org/˜daiti-m/dist/lda-python/

13) Ω

r

に含まれる論文の θ を生成するディリクレ事前分布を

著者毎に Newton 法によって計算し, 式 (

6

) の KL 距離の期待値

を求めるベイズ的な方法も検討したが, あまり高い性能が得ら

れなかった.

→ MAP

件数

(27)

デモ

http://clml.ism.ac.jp/nlp2vec/

l

公開サーバですので、誰でも検索を試すことができます

言語処理学会の過去の論文のビューアにもなります

(著者別)

(28)

研究者の可視化

l

t-SNEによる可視化 (可視化は1通りではありません)

(29)

将来の課題

l

今回は直感の働く自然言語処理分野の論文で試しただけ

で、他の分野へも適用可能

l

arXivやACL anthologyの英語論文への適用

査読者や講演者を探すのに実際困っている

!

l

Web周りが得意で(非常に)役に立つシステムを作りたい

学生さんなどを募集しています

l

埋め込み空間での分布全体を考慮した研究者推薦

(kernel mean embedding?)

(30)

まとめ

l

論文から

Word2vecと同等のニューラル文書ベクトルを

SVDで高速に求め、それを書いた研究者の “研究者ベクト

ル を計算する手法を提案

Doc2Vecの20∼40倍高速、解析的な検索解、省メモリ

Doc2VecおよびLDAを超えて最高精度

l

実際に言語処理学会の年次大会コーパスから、論文に

含まれる単語で研究者を検索できるシステムを公開

(nlp2vec)

l

今後は、日本学術振興会で同様のシステムを開発したい

参照

関連したドキュメント

1、研究の目的 本研究の目的は、開発教育の主体形成の理論的構造を明らかにし、今日の日本における

・「中学生の職場体験学習」は、市内 2 中学 から 7 名の依頼があり、 図書館の仕事を理 解、体験し働くことの意義を習得して頂い た。

文字を読むことに慣れていない小学校低学年 の学習者にとって,文字情報のみから物語世界

友人同士による会話での CN と JP との「ダロウ」の使用状況を比較した結果、20 名の JP 全員が全部で 202 例の「ダロウ」文を使用しており、20 名の CN

いない」と述べている。(『韓国文学の比較文学的研究』、

作品研究についてであるが、小林の死後の一時期、特に彼が文筆活動の主な拠点としていた雑誌『新

などに名を残す数学者であるが、「ガロア理論 (Galois theory)」の教科書を

※1・2 アクティブラーナー制度など により、場の有⽤性を活⽤し なくても学びを管理できる学