スピーキングパフォーマンス分析における評定者間信頼性とコーディング法について

スピーキングパフォーマンスを発話の複雑さ,正確さ,流暢さなどによって分析する時はよく,任意のユニットに発話を区切ったり文法的な誤りについてエラータグをつけていく作業を行う。

これは人の目でジャッジを行うものなので,評定者間信頼性を出すべきだと言われている。これまでの研究を何本もレビューして「これだけの論文しか報告してなかったよ!」といっていた論文も。

ただこれ簡単に信頼性出せよ!と言っても,ちゃんとこういう手順で信頼性を出しました,という記述のある論文は見たことがない(勉強不足なだけかもしれません)。 語彙や文法のテストなんかは最初から1/0なり重み付けのある点数なりが出るので信頼性の出し方に対する統計的知識さえあれば一瞬で係数を出すことが出来ても,産出指標の,例えばc-unitだったりAS-unitだったりをどういう手順で計算するかっていうのがあんまり論じられてきていない気がする。すみません,そういう指標の研究を総ざらいしたわけではないので,とくにc-unitが提案されたのってかなり昔なので,手順を具体的に明記した論文がちゃんとあるのかもしれませんが,そういうのがちゃんとあったらご教示頂けると嬉しいです。。。

ある先生にお尋ねしたところ,評定者2人が別々に示したユニット数のクロンバックαを出すのが一つの手だということでした。確かにこれなら手続き的に問題がないと思う一方,全体の2割とか3割とかのデータに対して(高い)信頼性係数を出すのが難しくなる(私の理解が間違っていなければ,一人のデータに対して1つの数値が出るので,例えば30人データを取ってもその2割っていうとデータポイントは6になってしまう)。

※6/13追記:その先生とのその後のPersonal Communicationで,この方法では「あるテキストについて2人の切っている場所が全く違ったとしても,総ASユニット数が偶然同じになれば,不当に高いアルファ係数が出て」しまうというご指摘がありました。確かにそれは考慮すべき点だと思います。

確かに望むべくは全部やるのがいいのかもしれないけど,スピーキングのコーディングってめちゃめちゃ大変なので,20人とか30人分のデータで付き合ってくれる人がいるかどうかが問題・・・。

で,実際論文には2~3割のデータにたいして信頼性を出すことが多いのと,”inter-coder agreement”といって単純一致度を報告している研究も多いので,ユニットを切った/切らなかったみたいな1/0のデータに対して一致率を算出するやり方がされているように思う。

何かの論文では,発話の区切れをデータポイントにして,そこをAS-unitとして切ったか切ってないかの1/0データを当てていって一致度を見るやり方が紹介されていた。これだとデータポイントが多いので何割かのデータでも数値が出せるし,一致度もカッパ係数も算出できる。

ただそもそもスピーキングにおける「発話の区切れ」っていうのがすごく曖昧でそれが指標のベース単位としてセンテンスを使用しない理由の一つにもなっているわけだし,恣意的にデータポイントを増やせば信頼性係数はどんどん上がっていく。

それならいっそのこと評定者のどちらか片方がユニットを切ったらそこを1としてカウントして,その部分でもう片方も切ってたら1,切ってなかったら0っていうふうにコーディングしたほうがそういう問題を減らせるんじゃないかと思うんだけどどうなんだろう。スプレッドシートのif関数で一致しているところを1,そうじゃないところを0として平均値を出せば一致度出せるし。このへんまでが修論の時に行き詰まったところ。

ところでこういう指標の算出ってできるだけ機械的にやったほうがいいのではないかなあと思う。いやいや自然言語処理の統語解析は完璧ではないよ,と言われそうだけれど(語彙のタグ付けソフトを使ってても言われる),そもそも人がやっても信頼性係数を出さないと信用ならんと言われるデータだし(ちゃんとやり方を知ってる人がやったらそんなに変な数値でるものじゃないんだけど,テストの作成だったら実際やってもらうまでどんな数字出るかドキドキするものだけどこれそういうのじゃないし),機械的に統語解析したものとある程度の一致性が確保出来るならどんどん使うべきなんじゃないかなあと個人的に思っています。揺れが少ないならそういった誤差も含めて統計を使うのは手続き上そんなに間違っていないのではないかなどと。やっぱり大なり小なり主観が入るものだし,スピーキング研究は面倒くさいからやらないって人も結構いるんじゃないかななんて・・・。そういえば修論終わった時にもうこんな研究二度とやらないとか言ってたきがするな・・・まだやってるけど・・・。

発話の複雑さに関しては”L2 Syntactic Complexity Analyzer”っていうPythonで動くプログラムもあります(リンク貼るのがなんとなく憚られたので興味のある方はGoogle検索してみてください)。これはStanford Parserを組み込んで統語解析したタグを拾ってるのでしょうか,自然言語処理の方が作って国際誌でも使用されているので,またいろいろいじってみてここでなんか書きます。

正確さに関しては複雑さの指標以上にブレると思う。そりゃあんた自分の英語力がないからエラーを検知できてないんじゃないの,と言われればそういうところももしかしてあるかもしれないけれど,何を誤りと見做すかどうかってかなり研究もあるし,さじ加減で結構結果が変わってしまう気が。

文法的正確さにかんしては自然言語処理の技術が複雑さに使用される統語解析以上に要求されるっぽいのでまだちょっとむずかしいかもしれませんが,発話指標の正確さにはある特定の言語項目を取り出してその正確さを見るという方法もあるし,場合によってはそちらのほうが統語全体の正確さを見るよりもいいこともあるので(例えば片方が過去形を使わないといけないタスクで,片方が現在進行形で描写続けられるタスクだった場合全体の正確さを見ていると前者のほうが不利になるとか。Robinson, 1995はそういった課題を行ったので冠詞に限って正確さを算出している),何か項目を絞って正確さを自動的に出すプログラムだったらもうある程度精度の高い奴があったりしないでしょうか。ご存知でしたら教えて下さい。

ちょっとこのへんのプログラムいろいろ使ってみて,自分のやったコーディングと係数出したりしていろいろ検討してみようかしら。まあ,いずれ,多分・・・。

広告

WritingMaetriX1.0公開

ご無沙汰しておりました。

もう先月のお話ですが、LET中部での発表が終わりました。

草薙邦広・阿部大輔・福田純也・川口勇作 (2013) 「キー入力記録システムを援用したライティングプロセスの可視化:自律学習を促すフィードバック環境構築に向けて」第81回外国語教育メディア学会中部支部春季研究大会. 東海学園大学

そこで紹介のあったWritingMaetriXのver. 1.0がWebページより公開されました。広報係!
※Webサイト管理にあたっていきなり失敗やらかしましたごめんなさい。

名古屋の研究チームですので、ライティング「みゃーとりっくす」と呼んでいます。綴りはmatrixとmetricsに掛けてます。

このプログラムでは、プロダクトだけではなく学習者がライティングを行っている際の語数の増え方や推敲回数の変化を時系列グラフで可視化することができます。ライティングしたものを再生する機能もついています。
これにより、学習者による書き言葉のプロダクトのみではなくプロセスも評価・分析できないかとか、学習者のプロセスに対するフィードバックに活用できないかとか、そういう試みを念頭に作成されたものです。
UIから直感的に操作できますが、使用方法に関しましては公式HPのトップに埋め込み動画がありますので合わせてご参照下さい。その他詳しくは筆頭作成者の草薙邦広さんのウェブサイトや、公式HPをご覧ください。

既に研究に使用したいということでお問い合わせも頂いております(ありがとうございます!)。フリーのソフトウェアですので使用に関してはHPをみて頂き、また色々な意見をお聞かせいただければと思います。