
項目反応理論を学びたい人へのお勧めの書籍
※ ヘッダーは当時Amazonで在庫切れしていたのをあちこちで探し、池袋でようやく買えた時の写真です。
はじめに
こんにちは。ライフイズテックでデータサイエンティストをしているホンディーです。
早いもので2024年も終わりが近づいてきました。振り返ってみれば仕事でもプライベートでもとても多くの変化があった1年間でした。その中でデータサイエンティストとしてどんな変化があったのかを考えると、一番大きな変化はnoteでも頻繁に取り上げている項目反応理論との出会いだったと思います。
ちょうど1年前、昨年の12月くらいに項目反応理論の存在を知り、そこから学習を始めて業務で使うようになりました。この1年でかなり自由に使いこなせるようになったと思います。
そこで今回のnoteではこれから項目反応理論を学んでみたいよって人向けに、自分が読んだものを中心にお勧めの書籍を紹介していきたいと思います。
イチオシは統計ライブラリーの項目反応理論シリーズ
自分が読んだ中で一番オススメなのは、朝倉書店の統計ライブラリーにある項目反応理論のシリーズです。
入門編/ 事例編/ 理論編/ 中級編 (初版の出版日順) の4冊構成になります。
本格的に勉強したい、という方はまずは[入門編]を繰り返し読むことをお勧めします。この中に項目特性曲線やテスト情報量といった重要な概念や、パラメーターの推定方法など基礎的な情報が一通り詰め込まれています。そして発展的な内容として項目プールを使ったテストの構成や適性検査等で用いられる段階反応モデルなども取り上げられています。
[事例編]は学力テストではなく心理テスト(劣等感尺度や抑うつ尺度など)が主な事例として取り上げられているので、それらのテストを扱わない場合は一旦後回しでも良いかもしれませんね。4冊の中で最も数式が少ないのでこの本を好む方もいらっしゃるかもしれません。
[理論編]ではパラメーターの各種推定方法について具体的な数式が途中式含めてかなり詳細に記載されています。また、多値項目反応モデルや段階反応モデル、多次元IRTモデルや部分採点モデルなど、バラエティに富んだ各種のモデルが紹介されています。このあたりは僕も全部理解できたわけではありませんが、どんなものがあるのかだけでも大まかに把握しておき必要になった段階で該当の部分を読み込むようにすると良いと思います。
[中級編]はより実践的・応用的な内容が取り上げられています。その分難易度も高めな印象です。
前回のnoteで取り上げた多次元IRTにも多めにページが割り当てられています。また、特異項目機能(能力が同一にも関わらず所属する集団の違いによって正答率が変わってしまうこと)の検出などについても取り上げられています。情報AIドリルの分析においても高卒生(情報Ⅰは未履修)と高3生の違いなどの差異があるので理解しておきたい分野であり、僕も現在学習中です。
本格的に必要なわけではないけど興味があるならお手元の教科書から
先程の4冊はどれも4000円以上して少々お高いので、まずはちょっと興味があるので触りだけ知りたいという人向けに項目反応理論も取り上げられている本も紹介しておきます。
項目反応理論は統計学の中では比較的メジャーな理論で、一般的な統計学の本でも取り上げられてることがあります。また、統計検定1級・応用統計の人文科学でも度々出題されています。
項目反応理論も扱っていて、比較的多くのデータサイエンティストの本棚にあると思う本を紹介します。
人文・社会科学の統計学 (基礎統計学)
(最近は他のシリーズが勧められることが多いとも聞きますが)僕がデータ分析を始めた頃に必読と言われていた東京大学出版会の3部作の2冊目の緑の本です。第12章がテスト理論に割り当てられ12.2節から12.4節が項目反応理論です。
日本統計学会公式認定 統計検定1級対応 統計学
統計検定1級の出題範囲に入っているのでそのテキストにも取り上げられてはいます。ただし、「第7章 人文科学分野キーワード」という章タイトルの通り、出題範囲に入っているキーワードが軽く紹介されているだけにとどまります。(自分が持っているのは増訂版ではない古い版ですが、3ページだけです。)
Pythonによる実装例がある本
業務で項目反応理論を使うのであれば専用ソフトを購入するか自分でコーディングする必要があります。
Rによる実装は複数書籍があり、実は先に挙げた項目反応理論[中級編]でも出版社のサイトでRのコードが配布されています。
一方で、僕も含めてPython使いにとってはなかなか良い本がありませんでした。しかし、昨年末出版され(僕の周りでは)大好評になった 「Pythonでスラスラわかるベイズ推論「超」入門」で項目反応理論が取り上げられており、これがとても参考になります。
第6章がベイズ推論の業務活用事例で、3つ取り上げられている事例のうち3個目が項目反応理論の項目パラメーターと被験者パラメーターの同時推定になっています。
項目反応理論の専門書ではないので、事前分布の設定が少し雑だったりと短所もあるので統計ライブラリーの本の内容と読み合わせて微修正して使うのがお勧めです。
また、項目パラメーターが既知で被験者パラメーターだけ推論する、って状況については取り上げられておらず、更にそれをPyMCで実装するのはリソース面の無駄が多いのでこちらは統計ライブラリーの本を読みながらSciPy等使って自作するのが良いです。
おまけ: 他の分野との関連で取り上げられている本
最後に紹介するのは、統計学One Pointの 「推薦システム: マトリクス分解の多彩なすがた」です。
これは2ヶ月前に書いたこちらの記事の元ネタになった本です。
推薦システムの本の目次に「項目反応理論」の文字を見かけたとき、確かに項目反応理論を使って次に出す問題を決めることもあるし、推薦システムとしての解釈もあるのかな、とぼんやり思っていましたが全くそのような内容ではありませんでした。
行列分解の応用としてテストデータの分析が取り上げられておりその比較対象として項目反応理論も紹介されています。
純粋に項目反応理論を学びたいのであれば後回しで良いと思うのですがこの本自体がとても面白かったのでこの記事に含めさせていただきます。
まとめ
項目反応理論を学び始めて1年経ったことに気づいたのもあり、振り返りながらこの記事を書きました。
自分で実装して使えるようにならなければならないという思いもあり数式がきっちり書かれている本を優先的に読んで来ましたが、最初に本を開いたときはこれをちゃんと扱えるようになるのかと不安に思ったのを思い出します。
実際は数式はほとんど初等関数で構成されていて、理論的な美しさもあり印象ほどは難しくないので少々数学に苦手意識のある人でもぜひ挑戦していただきたいなと思います。
おしらせ
ライフイズテックでは一緒に働く仲間を募集しています。様々な事業、職種で募集しているのでこちらのサイトもぜひ見てください!