3.3 MTK Analizleri için Kullanılan R Paket Programları
Test kalibrasyon sürecinde kullanılabilecek pek çok istatistiksel R paketi vardır. Bunlardan en ön plana çıkanlar “irtoys” (Partchev & Maris ,2017 ), “mirt” (Chalmers, 2012) ve “ltm” (Rizopoulos, 2006)’dir. Biz bu bölümde “mirt” paketinin kullanımı örneklendireceğiz.
3.3.1 “mirt” Paketi ile İki Kategorili Maddeler için MTK Analizleri
“mirt” hem tek boyutlu hem de çok boyutlu MTK’ya dayalı analizlerde yaygın kullanılan bir R paketidir. Kapsamının geniş olması nedeniyle içerisinde pek çok fonksiyon ve argüman barındırır. Ancak bu bölümde paketin detaylı incelemesi yapılmayacak ikili puanlanan maddeler için gerçekleştirilebilecek analizler ana hatları ile okuyuculara sunulacaktır. Bu çerçevede tüm fonksiyonlara ve fonksiyonların tüm argümanlarına değinilmeyecektir. Parametre kestirimleri için “ltm” paketi içerisinde bulunan “LSAT” veri setinden faydalanılacaktır.
3.3.2 1PL Model
1PL modeller için kestirim sürecinde öncelikli olarak “mirt” fonksiyonundan faydalanırız. Bu fonksiyon içerisinde ön tanımlı pek çok argüman bulunmaktadır.
Bunlardan ilkli “data” argümanıdır. Bu argüman içerisine veri setinin adı yazılır.
“model” argümanı ile boyut sayısı belirtilir ve sayısal değer girilir. Ancak 1PL modele ilişkin kestirimlerin yapılabilmesi için bu modelin biraz farklı tanımlanması gerekmektedir. Bunun için aşağıdaki kodlarda “onep1” isimli bir obje oluşturulmuştur. Bu obje içerisinde analiz yapılacak maddelerin ilk ve son numaraları ( “F=1-5” ) ve bu maddelerin “a” parametresinin sabit olacağı (“CONSTRAIN= (1-5,a1)” ) belirtilir.
“SE” argümanı ile standart hatanın hesaplanıp hesaplanmayacağı belirtilir. Argüman ön tanımlı olarak “SE=FALSE” şeklindedir.
“verbose” argümanı ile her bir iterasyondan sonra kestirilen log-olabilirlik değerinin çıktıda verilip verilmeyeceği belirtilir. Ön tanımlı olarak “verbose=TRUE” şeklindedir. Çıktının fazla yer kaplamaması için biz burada “verbose=FALSE” olacak şekilde argümanı değiştirdik.
“itemtype” model türün belirlendiği bir argümandır. Ancak 1PL model kestirimleri için “model” argümanı özel belirlendiği için bu argüman kullanılmaz.
library(mirt)
<- "F = 1 - 5
onep1 CONSTRAIN = (1 - 5, a1)"
<- mirt(data = LSAT, model = onep1, SE = TRUE, verbose = FALSE) birp.uyum
“mirt” fonksiyonu ile oluşturduğumuz modeli “onep.uyum1” isimli bir objeye kaydediyoruz. Akabinde “coef” fonksiyonundan faydalanarak parametre kestirimlerini elde ediyoruz. Burada “simplfy” argümanı “TRUE” olacak şekilde kullanılır. Diğer argümanlar ön tanımlı halleri ile kullanılacağı için fonksiyon içinde yer verilmemiştir. Oluşturulan “birp.param” objesi içerisinden madde parametrelerini çekmek için “$” sembolü kullanılmış ve çıktı “maddeler1” isimli obje içerisine kaydedilmiştir.
<- coef(birp.uyum, simplify = TRUE)
birp.param
<- birp.param$items
maddeler1
print(maddeler1)
## a1 d g u
## Item 1 0.7554128 2.7304989 0 1
## Item 2 0.7554128 0.9987372 0 1
## Item 3 0.7554128 0.2399651 0 1
## Item 4 0.7554128 1.3066179 0 1
## Item 5 0.7554128 2.0997217 0 1
Analiz çıktısında “a1” ayıt edicilik parametresini ifade etmektedir ve her madde için sabitlenmiştir. “d” madde güçlük parametresini ifade etmektedir. “g” şans parametresini göstermektedir ancak 1PL model olduğu için şans parametresi “0” olarak belirtilmiştir. Aşağıdaki kodlar ile 1PL model için madde karakteristik eğrisine ve madde bilgi fonksiyonuna ilişkin grafiklerin nasıl oluşturulduğu ana hatları ile açıklanmıştır.
Bu süreçte faydalanılabilecek fonksiyonlardan birisi “plot” fonksiyonudur. Bu fonksiyon içerisinde ilk olarak “mirt” fonksiyonu ile oluşturduğumuz objenin adını yazarız. “type” argümanı olarak “trace” ifadesini yazdığımızda tüm maddeler için madde karakteristik eğrileri oluşturulur. “which.items” argümanı ile madde karakteristik eğrilerini belirlediğimiz maddeler için oluşturabiliriz.
plot(birp.uyum, type = "trace")
plot(birp.uyum, type = "trace", which.items=c(1,3))
Yine “plot” fonksiyonunu kullanarak “type” argümanını “infotrace” olarak değiştirildiğinde madde bilgi fonksiyonu elde edilebilir. “which.items” argümanından faydalanılarak madde bilgi fonksiyonları belirlenen maddeler için oluşturulabilir.
plot(birp.uyum, type = "infotrace")
plot(birp.uyum, type = "infotrace", which.items = c(3, 5))
“plot” fonksiyonunu kullanarak test bilgi fonksiyonu ve standart hataya ilişkin de grafik oluşturulabilir. “type” argümanını test bilgi fonksiyonu için “info,” standart hata için “SE” her ikisini aynı anda göstermek için ise “infoSE” olarak değiştirmek gerekmektedir.
plot(birp.uyum, type = "info", theta_lim = c(-3, 3))
plot(birp.uyum, type = "SE", theta_lim = c(-3, 3))
plot(birp.uyum, type = "infoSE", theta_lim = c(-3, 3))
Görüldüğü gibi standart hata ve test bilgi fonksiyonu arasında negatif bir ilişki vardır. Test bilgi fonksiyonunun en yüksek olduğu yetenek düzeyinde standart hata en düşük değerini almaktadır.
Rasch, 2PL, 3PL ve 4PL modellerine ilişkin “mirt” fonksiyonu ile parametre kestirimlerinde 1PL modeldekine çok benzer argümanlar kullanılır. En önemli farklılık “model” argümanında meydana gelir. Bu modeller için “model” argümanı sayısal değer alır. Diğer bir farklılık ise “itemtype” argümanıdır. Bu argüman modele göre “Rasch,” “2PL,”” 3PL” veya “4PL” olarak belirlenir. Aşağıda 1PL modelde olduğu gibi detaylı açıklamalara girilmeden diğer modellere ilişkin “parametre kestirimleri ve grafiklerin oluşturulması” açıklanmıştır.
3.3.3 Rasch Modeli
Rasch modeline ilişkin “mirt” paketi ile parametre kestirimlerinde 1PL modele çok benzemektedir. Yukarıda belirtildiği gibi “model” argümanı için “1” değeri girilmiş ve “itemtype” argümanı “Rasch” olarak değiştirilmiştir.
<- mirt(data = LSAT, model = 1, itemtype = "Rasch", SE = TRUE, verbose = FALSE) rasch.uyum
<- coef(rasch.uyum, IRTpars = TRUE, simplify = TRUE)
rasch.param
<- rasch.param$items
rasch.maddeler
print(rasch.maddeler)
## a b g u
## Item 1 1 -2.7306377 0 1
## Item 2 1 -0.9988875 0 1
## Item 3 1 -0.2399273 0 1
## Item 4 1 -1.3068083 0 1
## Item 5 1 -2.0999312 0 1
Görüldüğü gibi çıktıda ayırt edicilik parametresi tüm maddeler için 1’e sabitlenmiştir. Aşağıda madde karakteristik eğrisi, madde bilgi fonksiyonu ve test bilgi fonksiyonunun oluşturulmasında kullanılacak kodlar sunulmuştur. 1PL model ile aynı olduğundan fazladan bir açıklama yapılmamıştır.
plot(rasch.uyum, type = "trace") # madde karakteristik eğrisi
plot(rasch.uyum, type = "infotrace") # madde bilgi fonksiyonu
plot(rasch.uyum, type = "infoSE", theta_lim = c(-3, 3)) # test bilgi fonksiyonu ve standart hata
3.3.4 2PL Model
2PL model içinde “mirt” fonksiyonu çok benzer bir şekilde kullanılır. Rasch modelinden farklı olarak “itemtype” argümanı 2PL olarak değiştirilir. Daha öncesinde açıklandığı için fonksiyonun argümanlarına detaylı olarak değinilmemiştir.
<- mirt(data = LSAT, model = 1, itemtype = "2PL", SE = TRUE, verbose = FALSE)
ikip.uyum
<- coef(ikip.uyum, IRTpars = TRUE, simplify = TRUE)
ikip.param
<- ikip.param$items
maddeler2
print(maddeler2)
## a b g u
## Item 1 0.8250552 -3.3607460 0 1
## Item 2 0.7230608 -1.3695513 0 1
## Item 3 0.8899989 -0.2798928 0 1
## Item 4 0.6886588 -1.8657302 0 1
## Item 5 0.6575904 -3.1229745 0 1
Çıktıda görüldüğü gibi 1PL ve Rasch modelden farklı olarak ayırt edicilik parametreleri maddeler için sabit değildir ve değişkenlik gösterir. Aşağıda 2PL model için karakteristik eğrisi, madde bilgi fonksiyonu ve test bilgi fonksiyonunun oluşturulmasında kullanılacak kodlar sunulmuştur. Fonksiyonun kullanımı önceki modeller ile aynı olduğu için fazladan bir açıklama yapılmamıştır.
plot(ikip.uyum, type = "trace") # madde karakteristik eğrisi
plot(ikip.uyum, type = "infotrace") # madde bilgi fonksiyonu
plot(ikip.uyum, type = "infoSE", theta_lim = c(-3, 3)) # test bilgi fonksiyonu ve standart hata
3.3.5 3PL Model
3PL model kapsamında yapılacak parametre kestirimleri için de “mirt” fonksiyonu aynı argümanlar ile kullanılır. En önemli farklılık “itemtype” argümanı olarak “3PL” yazılmasıdır.
<- mirt(data = LSAT, model = 1, itemtype = "3PL", SE = TRUE, verbose = FALSE)
ucp.uyum
<- coef(ucp.uyum, IRTpars = TRUE, simplify = TRUE)
ucp.param
<- ucp.param$items
maddeler3
print(maddeler3)
## a b g u
## Item 1 0.8288230 -3.2565297 0.06423603 1
## Item 2 0.8237727 -0.8478190 0.17365215 1
## Item 3 0.9130376 -0.2144664 0.02519967 1
## Item 4 0.7121441 -1.6873520 0.06092150 1
## Item 5 0.6778616 -2.8303345 0.11094145 1
Analiz çıktısında görüldüğü gibi 3PL model çıktısında şans parametresi (c) (çıktıda “g” ile ifade edilmiştir) tüm maddeler için farklılaşmaktadır. Aşağıda 3PL model için karakteristik eğrisi, madde bilgi fonksiyonu ve test bilgi fonksiyonunun oluşturulmasında kullanılacak kodlar sunulmuştur.
plot(ucp.uyum , type = "trace") # madde karakteristik eğrisi
plot(ucp.uyum , type = "infotrace") # madde bilgi fonksiyonu
plot(ucp.uyum , type = "infoSE", theta_lim = c(-3, 3)) # test bilgi fonksiyonu ve standart hata
3.3.6 4PL Model
4PL model olasılık fonksiyonuna üst asimptotik değerin başka bir ifade ile sorunun dikkatsizlikle hatalı yanıtlama durumunun eklendiği bir modeldir. Diğer modellerde olduğu gibi 4PL model kapsamında parametre kestirimleri için “mirt” fonksiyonu içerisinde “itemtype” argümanı değiştirilir. Bu durumda argüman “4PL” olacak şekilde kullanılır.
<- mirt(data = LSAT, model = 1, itemtype = "4PL", SE = TRUE, verbose = FALSE) dortp.uyum
## EM cycles terminated after 500 iterations.
<- coef(dortp.uyum, IRTpars = TRUE, simplify = TRUE)
dortp.param
<- dortp.param$items
maddeler4
print(maddeler4)
## a b g u
## Item 1 1.2322319 -2.7057291 0.13125337 0.9758626
## Item 2 0.7564948 -1.2410536 0.04761328 0.9956329
## Item 3 1.0524366 -0.4441365 0.01717440 0.9191278
## Item 4 0.7707405 -1.8581545 0.01754012 0.9705293
## Item 5 0.7100332 -2.8682908 0.10265545 0.9891604
Aşağıda 4PL model için karakteristik eğrisi, madde bilgi fonksiyonu ve test bilgi fonksiyonunun oluşturulmasında kullanılacak kodlar sunulmuştur.
plot(dortp.uyum , type = "trace") # madde karakteristik eğrisi
plot(dortp.uyum , type = "infotrace") # madde bilgi fonksiyonu
plot(dortp.uyum , type = "infoSE", theta_lim = c(-3, 3)) # test bilgi fonksiyonu ve standart hata