3.3 · Seviye 0 · Yapay Zekâ Okuryazarlığı
Tablo, satır, sütun
örnek ve öznitelik (feature); bir veri setini okumak
Yapay Zekâ Akademisi — M03, Verinin Dili · 2.314 kelime · 3 saha durumu · ≈ 11 dk okuma · 15 dk dinleme
Saha durumlarındaki kişiler ve kurumlar kurgusaldır; kaynaklar gerçektir. Belirli ürün ve modeller hakkındaki gözlemler yazıldıkları tarihte geçerlidir ve «Tarihli gözlem» etiketiyle yılı belirtilerek verilir. Yapay zekâ çıktıları doğrulanmadan karar dayanağı yapılmaz; dersler hukuki, tıbbi ya da mali danışmanlığın yerini tutmaz.
Açılış
Aralığın ikinci salısı Elif'in masasının yanına bir sandalye daha çekildi. İstatistik bölümünün son sınıfındaki Melis kış stajının ilk gününde hasar ekibine verilmişti. Elif ekranı ona çevirdi ve hasar tutarı modelinin beslendiği tabloyu açtı: otuz sekiz bin dört yüz satır, kırk sütun.
"Bir satır ne?" diye sordu.
Melis ilk satırı soldan sağa okudu: dosya numarası, ihbar tarihi, aracın yaşı, hasarlı parça türü, ilçe, eksperin kısa notu ve en sağda şirketin o dosya için ödediği tutar. "Bir kaza," dedi. Elif tabloyu kaza tarihine ve saatine göre sıraladı. Aynı kavşakta, aynı dakikada iki satır vardı; çarpışan iki aracın ikisi de şirketin poliçesindeydi ve her biri için ayrı dosya açılmıştı. Bir satır bir kaza değil, bir hasar dosyasıydı.
"Hangi sütunu tahmin etmek istiyoruz?" Melis en sağdakini gösterdi. Model, ihbar geldiği gün o dosyanın sonunda ne kadar ödeneceğini kestirmek için kurulmuştu; şirket kenara ayıracağı parayı o gün belirliyordu.
Öğleden sonra Melis heyecanla geri geldi. Otuzuncu sütun, onarım faturası tutarı, ödenen tutarla neredeyse aynı hareket ediyordu; onu modele eklerse sapma sıfıra yaklaşacaktı. Elif itiraz etmedi, yalnız tabloyu henüz kapanmamış dosyalara göre süzmesini istedi. Dört yüz on iki açık dosyanın hiçbirinde onarım faturası sütununda bir değer yoktu. Fatura, araç servisten çıktıktan haftalar sonra geliyordu.
Melis ekrana bir süre baktı, sonra sordu: "İhbar günü bu kırk sütunun hangileri elimizde oluyor?"
Tek fikir
Bir tabloyu modele vermeden önce her satırın neyi temsil ettiği, her sütunun neyi ölçtüğü, hangi sütunun tahmin edileceği ve her değerin hangi anda bilindiği okunur. Bu okuma atlanırsa satır sayısı da başarı sayısı da yanıltır.
Nasıl çalışır
Sigortadan bankacılığa, fabrikadan belediyeye, iş dünyasındaki makine öğrenmesi problemlerinin çoğu bir hesap tablosuna benzeyen verilerle başlar. Bu ders o tabloyu okumayı ele alıyor.
Tanımda iki ayrı yön var. Satır yönü "kaç şey gördük" sorusuna, sütun yönü "her birinin nesini kaydettik" sorusuna cevap verir. Elif'in tablosunda otuz sekiz bin dört yüz dosya ve her dosyanın kırk niteliği var; hücre sayısı ikisinin çarpımıdır, yani bir milyon beş yüz otuz altı bin.
Bu düzen kendiliğinden gelmez. Aynı bilgi bir tabloya pek çok biçimde yazılabilir ve her biçim aynı ölçüde okunmaz.
Wickham önce iki kelimeyi tanımlar. Bir değişken, aynı niteliği farklı birimler üzerinde ölçen bütün değerlerdir: boy, sıcaklık, süre. Bir gözlem, aynı birim üzerinde farklı nitelikler için ölçülen bütün değerlerdir; birim bir kişi, bir gün ya da bir yarış olabilir. Sonra düzenli veri dediği yapıyı üç kuralla kurar: her değişken bir sütun oluşturur, her gözlem bir satır oluşturur, her gözlem birimi türü kendi tablosunu oluşturur.
Makalenin ilk örneği küçük bir deneydir. Üç kişiye iki ayrı tedavi uygulanmış ve her birinin sonucu ölçülmüştür. Sık görülen sunumda kişiler satırlarda, tedaviler sütunlardadır; tablo iki sütun ve üç satırdan ibaret görünür. Aynı bilgi düzenli biçimde yazıldığında üç sütun olur: kişi, tedavi, sonuç.
Sunum biçimi göze hoş gelir ama bir model için zordur: "tedavi" bir sütun adı olarak değil, iki sütun başlığına dağılmış hâlde durur. Model eğiten araçların çoğu girdiyi bu düzenli biçimde bekler.
Düzenli tabloda satır bir gözlemdir. Gözlemin sonucu biliniyorsa satır, 1.2'de tanımladığımız eğitim örneğine dönüşür: girdiler ve onların yanına yazılmış cevap. Sütunlar ise işlerine göre ikiye ayrılır.
Hangi sütunun hedef olacağı tablonun içinde yazmaz, işin sorusundan gelir. Elif'in tablosunda hedef ödenen tutardır, çünkü şirketin sorusu "bu dosyaya ne kadar para ayıralım?" sorusudur. Aynı tabloyla "bu dosya soruşturmaya gitmeli mi?" diye soran bir ekip başka bir sütunu hedef seçer ve ödenen tutar onun için bir öznitelik bile olmayabilir.
Sütunların türü de okunur, çünkü her tür modele farklı yoldan girer. Sayısal sütunlarda değerler arasındaki farkın anlamı vardır: on iki yaşındaki araç, altı yaşındakinin iki katı yaşlıdır. Kategorik sütunlar bir kümeden seçilmiş adlardır: parça türü, ilçe, hava durumu. Metin sütunları serbest yazıdır, eksperin notu gibi; modele girmeden önce sayıya çevrilmeleri gerekir. Tarih sütunları ise iki iş birden görür: bir dosyanın mevsimini ya da haftanın gününü söyler ve o değerin hangi anda var olduğunu gösterir. Melis'in onarım faturası sorunu tam bu ikinci işle ilgilidir.
Bir veri setinin hazırlayanları bu soruların bir kısmını sayfasına yazar.
Sayfa, bir veri setini okumak için sorulacak soruların çoğunu tek ekranda cevaplıyor: kaç satır, kaç sütun, bir satır neyi temsil ediyor, hangi sütun hedef, her sütunun türü ve birimi ne. Kim ölçtü, nerede ve ne zaman ölçtü sorularının cevabı ise bu sayfada yok.
Sahada
Nerede yanılır
Tablolar düzgün görünür; satırlar hizalı, sütunların başlığı var. Bu düzgünlük, sorulmamış soruların üstünü örter.
Yanlış birim, en sessiz yanılgıdır. Burcu'nun iki yüz satırı gerçekte yüz başvuruydu; satırları sayan biri sınamanın iki kat geniş olduğunu sanır. Daha ağır hâli, aynı şeyin tekrar eden satırları modelin eğitildiği ve sınandığı kümelere ayrı ayrı düştüğünde ortaya çıkar. Model sınamada daha önce gördüğü bir başvuruyla karşılaşır ve başarı sayısı şişer. Wickham'ın üçüncü kuralı burada iş görür: dosya düzeyindeki bilgi ile kaza düzeyindeki bilgi aynı tabloya karışmışsa, önce hangi tablonun hangi birimi taşıdığı ayrılır.
Ardından zaman gelir. Melis'in onarım faturası sütunu, tabloda ihbar tarihiyle aynı satırda durduğu için o gün de biliniyormuş gibi görünür. Tablo değerin ne zaman yazıldığını göstermez; satırı ancak dosya kapandıktan sonra bütün hâliyle görürüz. Böyle bir sütunla eğitilen model sınama tablosunda kusursuz çıkar, çünkü sınama tablosu da kapanmış dosyalardan oluşur. Kullanıma girdiği gün o sütun boş gelir ve model dayanağını kaybeder. Hedefin cevabını sonradan sızdıran bu tür sütunlar Modül 6'da adıyla ele alınacak; şimdilik soru yeterli: bu değer, tahminin yapılacağı anda var mıydı?
Bir de sayıyla yazılmış kategoriler var. Elif'in tablosunda ilçeler birden dokuza kadar kodlanmışsa, model sekizinci ilçenin dördüncünün iki katı olduğunu varsayabilir. Sayının görünüşü sütunun türünü belirlemez; değerler arasındaki farkın bir anlamı olup olmadığı belirler.
Uygulama
Bu derste küçük bir tabloyu baştan sona okuyacak, sonra kendi tablonu kuracaksın. Aşağıdaki tablo uydurmadır: bir mahalle fırınının on günlük kaydı. Fırıncı her sabah kaç ekmek pişireceğine karar veriyor ve bu kararı geçmiş günlerin satışına bakarak vermek istiyor.
| Tarih | Hava | Sabah sıcaklığı (°C) | Pişirilen | Akşam kalan | Satılan |
|---|---|---|---|---|---|
| 2 Aralık | bulutlu | 6 | 300 | 22 | 278 |
| 3 Aralık | yağmurlu | 4 | 300 | 41 | 259 |
| 4 Aralık | güneşli | 7 | 300 | 15 | 285 |
| 5 Aralık | güneşli | 8 | 300 | 9 | 291 |
| 6 Aralık | bulutlu | 5 | 320 | 0 | 320 |
| 7 Aralık | güneşli | 6 | 350 | 12 | 338 |
| 8 Aralık | yağmurlu | 3 | 350 | 47 | 303 |
| 9 Aralık | bulutlu | 5 | 300 | 18 | 282 |
| 10 Aralık | yağmurlu | 2 | 300 | 36 | 264 |
| 11 Aralık | güneşli | 4 | 300 | 0 | 300 |
Fırın tablosunu doğru okuduysan on satır, altı sütun ve altmış hücre bulursun. Bir satır bir gündür. Hedef satılan ekmektir. Tarih bir tarih sütunu, hava kategorik, öteki dördü sayısaldır. Üç gün yağmurlu, iki gün ekmek tükenmiş; on satırın hepsinde satılan, pişirilen eksi kalana eşittir. Akşam kalan sütunu sabah bilinmez, ama satılanı bire bir veriyor; onu girdi yapan bir model sınamada kusursuz görünür, fırının sabahında işe yaramaz. Tükenen iki gün de ayrıca düşünülmeli: o günlerin satılan değeri müşterinin istediği ekmek sayısını değil, rafta kalan sınırı gösterir.
Defter: "Bir tabloyu okumak" başlığıyla, fırın tablosu için bulduğun cevapları ve kendi tablonun satır birimini, hedef sütununu, karar anında bilinmeyen sütununu yaz. Altına, bir veri seti eline geçtiğinde soracağın soruları sıra hâlinde ekle; sonraki derslerde bu listeye yeni sorular katılacak.
Hata köşesi
Yaygın yanlış"Sütun ne kadar çoksa model o kadar iyi öğrenir."
Bir sütun ancak tahmin anında biliniyorsa ve hedefle gerçekten ilgiliyse işe yarar. Sonradan dolan bir sütun sınamada başarıyı şişirir, kullanımda boş kalır; anlamsız bir kod sütunu ise modele var olmayan bir sıralama öğretebilir. Sütun eklemeden önce "ne zaman ve kim tarafından dolduruluyor?" diye sorulur.
Yaygın yanlış"Satır sayısı kaç farklı şey gördüğümüzü söyler."
Satır sayısı yalnız satırın birimi biliniyorsa anlam taşır. Aynı başvuru iki tarihte denenmişse iki yüz satır yüz başvurudur; iki araçlı bir kaza iki dosya satırı olur. Sayıyı söylemeden önce bir satırın ne olduğunu söylemek gerekir.
Yaygın yanlış"Rakamla yazılmış her sütun sayısaldır."
İlçe kodu, yazılım sürüm numarası ya da posta kodu rakamla yazılır ama bir miktar ölçmez; aralarındaki farkın anlamı yoktur. Bu sütunlar kategorik olarak okunur ve modele de öyle verilir.
Sorumluluk
Bir tablonun hangi sütununun hedef, hangilerinin öznitelik olacağı bir karardır ve onu tabloyu hazırlayan değil, modelin sorusunu soran ekip verir. Elif'in ekibinde bu karar yazılı tutulur: her sütun için ne zaman ve kim tarafından doldurulduğu bir notta durur. Dışarıdan alınan bir veri setinde bu soruları doğrulamak, onu kullanmaya karar verenin sorumluluğundadır; sayfasında yazmıyorsa sorulur, cevap gelmiyorsa kayda geçirilir. Yanlış seçilmiş bir sütunun bedeli tabloda görünmez, sahada ödenir: yetersiz karşılık ayrılan bir dosyada, gereksiz yere soruşturmaya giden bir müşteride.
Kapanış
- Bir veri setinde satır bir gözlemi, sütun o gözlemin bir niteliğini taşır; satırın birimi bir kişi, bir dosya, bir gün ya da bir deneme olabilir ve önce o söylenir.
- Öznitelikler modelin girdisi, hedef değişken tahmin edilmek istenen sütundur; hangisinin hedef olacağını tablo değil, işin sorusu belirler.
- Her sütun için türü ve tahmin anında bilinip bilinmediği okunur; sonradan dolan bir sütun sınamada başarıyı şişirir, kullanımda modeli yarı yolda bırakır.
Üç soru
- Melis bir satırın bir kaza olduğunu düşündü. Bu yanılgı, tabloyla yapılacak hangi hesabı bozardı?
- Murat Bey teknisyenlerin kaydını tedarikçiye neden göndermedi, ve kameraya kusur öğretecek tablonun bir satırı ne olmalıydı?
- Fırın tablosunda akşam kalan sütunu satılanı bire bir veriyor. Bu sütunu girdi olarak kullanan bir modelin sınama sonucu ile fırıncının sabahındaki işe yararlığı neden birbirinden ayrılır?
Yanıtlar
- İki araçlı kazalar iki satır olarak durduğu için satır sayısı kaza sayısından büyüktür. Kaza başına ortalama tutar ya da bir kavşaktaki kaza sayısı satırlardan hesaplanırsa bu kazalar iki kez sayılır. Kaza düzeyinde bir soru soruluyorsa önce dosyaları kazaya göre birleştirmek gerekir.
- Kaydın bir satırı bir kutu değil, bir tasarımın banda girdiği gündü; ret sayısı yüz kutunun toplamıydı ve tek tek kutuların hangisinin kusurlu olduğunu söylemiyordu. Kameraya gereken tabloda her satır tek bir kutu fotoğrafı, hedef de teknisyenin o kutu için verdiği kusurlu ya da sağlam kararı olmalıydı.
- Sınama tablosu geçmiş günlerden kurulur ve o günlerde akşam kalan değeri bellidir; model satılanı ondan doğrudan çıkarır ve kusursuz görünür. Fırıncı ise kararı sabah verir, o saatte akşam kalan sütunu boştur. Model en güvendiği girdiden yoksun kalır.
Sonraki derse köprü
Bu derste bir tablonun biçimini okuduk: satırın birimini, sütunların türünü, hedefi ve zamanı. Bir sonraki adım sütunların içine bakmak. Fırın tablosundaki satılan ekmek sayısı hangi değerin çevresinde toplanıyor, günden güne ne kadar oynuyor, hangi gün ötekilerden ayrı duruyor? Ders 3.4, ortalama, dağılım ve aykırı değer, bir modelin göreceği veriyi önce insanın gözüyle görmenin yollarını ele alıyor.
Anlamadığın bir yer mi var?
Mentor yalnız bu dersin metnine dayanarak cevap verir. Metinde geçmeyen bir şey sorarsan uydurmaz, geçmediğini söyler.