-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
2019: We need to talk about standard splits #241
Comments
はじめまして。面白い論文を紹介して頂きありがとうございます。 Table 3のcaptionの説明として"[...]for which the second system has significantly higher token accuracy than the first one."とあるので、例えばsecond systemであるCollinsとfirst systemであるTnTを比較した際、McNemar検定で20回の内20回CollinsがTnTに有意にhigherであるので、CollinsはTnTに対してrandom splitsにおいても20回中20回全勝している、と報告しているのではないでしょうか。 |
@akkikiki さん Podcast中では,「random splits ではstandard splitと比べて順位が多くのペアで逆転」,と言っていますが,逆転しているのはLAPOS vs Stanfordだけっぽいですね. となると,下記が言いたいんですかね.
Table 3に関しては,1ペア除いて実験1とシステムランクは変わらないので,ちょっと主張が弱くなるような |
最初の解釈からだと主張は弱く感じると思いますが、LAPOS vs. StanfordはPenn Treebank上ではMcNemar検定でstandard splitでは有意差がでているのに対して、random splitやOntoNotesだと有意差がなくなる、っていう結果だけでも主張(i.e., statistically significance hackingはtrain/dev/test splitを変える、もしくはデータを変えるだけで可能な場合がある)がサポートされているので面白い、というのが個人的な感想です。 |
@akkikiki ご確認ありがとうございます!安心しました. |
単なる感想なのですが、私もこの論文読みましたが、
この出現する単語の偏りって悪いことなんですかね? 実験2って sentence レベルでランダムシャッフルしていると書いてあったと思いますが、むしろそれも何の考えもなしに行っていいの?って思いました。 1ヶ月前くらいに、ある時系列データ解析に関する論文のデータの扱いで data leakage を起こしていて実験結果の妥当性を問題視されていました(参考)が、sentence レベルのシャッフルってそれに近いことが起こっている気がするんですよね。 つまり、PTB の standard split って section ごとに split していて、番号の小さいものを training に、大きいものを test に使っていますが、これって実使用場面に近くて、難し目のセッティングになっていると思います。 ちなみに、sentence レベルのシャッフル自体が悪いと言っているわけではなくて、主張したいことによると思うのですが。 |
@yahshibu PTBの設定に関しては私も認知してませんでした。そうするとFig 1の結果も納得です。この論文の試み自体は面白いかなと思うのですが、やり方と分析にちょっと疑問が残る感じになりましたね。 |
Kyle Gorman, Steven Bedrick. ACL 2019.
Tweet: https://twitter.com/wellformedness/status/1130129820124368896
PDF: https://www.aclweb.org/anthology/P19-1267/
Podcastでも解説しました.
https://anchor.fm/lnlp-ninja/episodes/ep32-We-need-to-talk-about-standard-splits-e457nd
概要
システム性能のランキングを行うために,一般的にはテストセットに対する評価結果が採用されている.しかしその結果が偶然によるものなのか,複数のtrain/testセットで結果は安定しているのか,これらに対する研究はほとんどない.我々は2000-2018における9つのPOSタガーを複製,追試を行った.そしてランダムにスプリットしたtrain/testセットを使って,ランキングの結果を再現することに失敗した.我々は,システム比較には複数のランダムにスプリットされたtrain/testセットを使うことを提案したい.一般的に使われるstandard splitに対する疑問を呈する.
イントロ
広く使われているstandard splitでなく,random splitsを提案する.
standard splitは,train/dev/testに分かれたデータセットを用いて,trainをシステムの学習に,devをハイパパラメタなどの調整に,testをシステム評価に対して利用する.同じ条件下であれば,このtestに対する評価結果が良い方がシステムが優れているとされる.
システム比較のための仮説検定
まずシステムS1とS2を比較することを考える.このときtestの正解率の差異は,δhat =M(Gtest; S1) - M(Gtest; S2)として表す.そしてδを真のシステムパフォーマンスの差異を表す潜在変数として考えることができる.差異がない(δ=0)は,McNemarの検定を利用して間接的に計算できる.n_{1>2}ををS1は正しかったが,S2が誤ったtestの数,n_{2>1}はその逆とする.δ=0とは,大雑把に不一致の半分がS1が正解で,もう半分がS2が正解,ということになる.
つまり帰無仮説は,n_1>2 ~ Bin(n, 0.5)となる(n回試行で半分がn_1>2となる二項分布(n),n=n1>2+n2>1).
統計的にシステム比較を行った最近の研究はあまりない.Dror (2018)は,ACL 2017のロングペーパーを分析し,それらの研究の大部分はシステム比較のための適切な統計検定を行っていないと指摘した.
我々はシステム比較のための仮説検定の不足は,Type I error(真の帰無仮説を棄却してしまう,False Positive)に陥ると仮説する.そのためそのリスクの評価のための,実験環境を作った
standard v.s. random splits
standard splitはシステム評価に対して不十分な方法であると考える.それは研究者はtrain/testの変動に対して,無意識にoverfitさせてしまうかもしれない.この傾向は,publication biasとしてScargle (2000)によって強調されている.
現在のリサーチフィールドでは,State of the Artパフォーマンスとは,standard splitにおける最高性能として定義されており,公開されているstandard splitにおいて改善を報告しない研究はほとんどない.このような傾向は特にサチっているようなタスクで言われており,帰無仮説の事前確率(差がない)を高める可能性がある.我々はこのリスクを評価しようと思う.
replication and reproduction
追試はNLPにおいては本来は難しくないはずだが,下記のような理由で問題が発生している.利用可能データ,ソフトウェア,ランダムシード,隠れた実装詳細.これらの危険を避けることはできないので,我々は英語のPOS taggingタスクを選んだ.POSタギングはデータもソフトも充実している.またPOSタギングは様々なNLPタスクにおいても非常に重要な処理である.エラーは後段タスクにも影響するしね.
実験環境
コーパスは,英語POSタギングで広く使われているPenn Treebank-3のWall St. Journal部分.実験1では更にOntoNotes 5という部分も使った.
手法は,様々な時期のSOTAのPOSタガーを9つ選んだが,内6つの手法を実装できた(他3つはエラーで諦めたっぽい).3.1参照.2000〜2018の期間における様々なタガーが入っている(SVMやBiLSTMなど).
メトリクスは,トークン正解率を採用し,システム比較にはMcNemar検定を採用.またOOV正解率,文レベル正解率も採用
実験
実験1:Replication
standard splitを使って報告されている結果と一致しているか調べた結果をTable 2に.6つのタガーの内,2つは完全一致,4つは報告の値とかなり近いものに.Penn Treebankの場合,トークン正解率のMcNemar検定はすべてのペアワイズ比較において有意( α=0.05)).OntoNotesの場合,LAPOS vs Stanfordを除いて(p=0.1366)すべて有意だった.
![Screen Shot 2019-05-26 at 12 33 21 PM](https://user-images.githubusercontent.com/166852/58377007-8abc1900-7fb2-11e9-818f-32bf25778155.png)
実験2:Reproduction 5/27更新
20個のrandom splitsを作る.familywise error rateをコントロールするため,Bonferroni法を採用する(複数回繰り返されることで,真の帰無仮説がたまたま棄却される可能性はあがるので,検定回数(20)で有意水準を割り算して調整する方法, 最下部参照).
Table 3にはMcNemar検定が20回の内,2つ目のシステムが1回目のシステムよりToken Accが高かったのが,何回有意だったかを表している.// 2つずつ比較している.実験1で性能が低い順の手法をペアワイズにして比較している.
![Screen Shot 2019-05-26 at 12 33 34 PM](https://user-images.githubusercontent.com/166852/58377008-8abc1900-7fb2-11e9-8602-8c174fcc2a49.png)
LAPOS vs Stanfordでは,実験1の結果と異なり,StanfordがLAPOSよりも性能が低くなっている(20回中,1回しか勝ててない).他の項目に関しては実験1と同様のランクが強調されて出ている
// Podcastでは逆に説明していました.すみません.
Fig 1に実験1,2のトークン正解率を示す.oracle ensembleは,6タガーのうち1つでも正解を出したものを正解としたもの.|○|は実験1,影部分は実験2の正解率を表す.
![Screen Shot 2019-05-26 at 2 21 59 PM](https://user-images.githubusercontent.com/166852/58377708-a4b12800-7fc1-11e9-8a8e-f6c9c41896b6.png)
エラー分析
実験1から,過去20年間でトークンエラーは1.28%しか変わっていないことが分かる.そして現在最良のタガーはoracle ensembleから1.16%ビハインドしている.そこで我々はタガー間の不一致率に興味を持った.そこで各6つのタガーをアノテーターのように扱うコラボレーションアノテーションタスクとして取り扱い,クリッペンドルフのα係数(最下部参照)で不一致率を見てみた.
もっとも不一致率が高かった事例は,"Foreign Bonds (外国債)"のような大文字つながりの文だった(Table 4にも).このようなエラーは大文字化によって引き起こされてそうだ.多くのタガーは大文字を固有名詞の方向へ持っていくので,このようなエラーが起きやすい.
![Screen Shot 2019-05-26 at 2 01 05 PM](https://user-images.githubusercontent.com/166852/58377563-b93ff100-7fbe-11e9-8505-6aeb390a4683.png)
ディスカッション
replicationとreproduction実験における2つのポイントについて話す.
1つ目,standard splitではパフォーマンスは他のものよりも良いと有意だったシステムが,再アノテーションデータあるいはrandom splitsではそうではなかったこと,つまりstandard splitにoverfitしてしまったと言えそう.2つ目,Fig 1から分かるように,全体的なパフォーマンスはstandard splitよりもrandom splitsの方が僅かに高かった.たとえば"アスベスト"という単語はstandard trainでは15回登場したが,standard testでは1回しか登場していない.このような差異がrandom splitsでは起きにくくなる.
結論
我々は標準的に使われているstandard splitが避けられるType I errorにつながることをデモした.我々は新システムのSOTAをアピールしたい場合には,Bonferroni法を利用して,random splitsによる仮説検定を提案したい
コメント
用語
Type I error (第一種過誤)
帰無仮説が正しい場合に,帰無仮説を棄却してしまう(False Positive).
今回は,多くの研究がシステム比較の際に,帰無仮説をシステムの評価結果には差がない,と設定し,これを棄却して,有意と判断すること,が問題であるとしている.(実際は帰無仮説は正しい(差がない)場合が多いんじゃないのと言っている)
Type II error (第二種過誤)
帰無仮説が正しくない場合に,帰無仮説を棄却できないこと(False Negative)
publication bias
研究結果の内容や統計検定の結果によって,publishをするかどうかの判断につながることに起因するバイアス.有意差のある情報だけpublishされるため偏った情報である可能性がある.
https://en.wikipedia.org/wiki/Publication_bias
http://jspt.japanpt.or.jp/ebpt_glossary/publicationbias.html
McNemar検定
対応のある2組の標本の比率の差を検定する.t検定と似ているが,2つの処理の結果の差があるかどうかを検定する.
https://oku.edu.mie-u.ac.jp/~okumura/stat/mcnemar.html
Bonferroni(ボンフェローニ)とfamilywise error rate
複数回の検定をする場合,帰無仮説がたまたま棄却されてしまうことがある.複数回繰り返された検定全体において帰無仮説が棄却される可能性を,familywise error rateと呼ぶ.そこでBonferroni法ではN回の検定を行う場合,有意水準をNで割ってあげる.(有意水準が0.05でN=20であれば,0.05/20とする)
http://www.med.osaka-u.ac.jp/pub/kid/clinicaljournalclub1.html
https://oku.edu.mie-u.ac.jp/~okumura/stat/multiplecomparisons.html
Krippendroff's α(クリッペンドルフ)
Cohenのκ係数は2名の評価者という限定があるが,3名以上に対応している
http://ides.hatenablog.com/entry/20170414/1492153176
The text was updated successfully, but these errors were encountered: