Hesaplamali Sosyal Bilimler & Veri Gazeteciligi

Preview:

Citation preview

Veri OdaklıHesaplamalı Sosyal Bilimler

Talha Oz@toz_TR , toz@gmu.edu

Aralık 2014, İstanbulVeri Gazeteciliği Atölyesi

Computational Social Science

• Boğaziçi Üniversitesi– Bilgisayar Mühendisliği

• University of Nevada, Reno– Internet Ölçümleri (CS master)

• Bosch Research (Silikon Vadisi)– Şeylerin interneti (internet of things)

• George Mason University– Veri madenciliği (CS master)– Makine öğrenimi Lab (Michalski: Machine Learning)– Hesaplamalı Sosyal Bilimler doktorası

Talha Öz Kimdir?TR: Talhaoz.com @toz_TRMason.gmu.edu/~toz @tozCSSgithub.com/oztalha

Genel Cerceve

• Hesaplamali sosyal bilimler nedir?• Kisisel proje & deneyim paylasimi• Son konferanslardan ornekler• Veri bilimi alet edevat tanitimi

HeSoBi (CSS) Nedir?1. Sosyal veri bilimi

– Veri madenciliği, sosyal ağ analizi ve makine öğrenimi– Mobil uygulamalar, bloglar, online sosyal ağlar…– Orn: Nette kim kimi duzeltiyor? Kulturlerarasi takdir kulturu karsilastirmasi

2. Sosyal simülasyonlar– Sosyal Kompleksite (Birey, Aile, Şirket, Kültür, Ekonomi...)– Santa Fe Institute, George Mason University– Orn: Ayaklanma, salgin, Şekilci Keratalar

3. Online deneyler & kitle kaynak (crowdsource) yönetimi– Büyük ölçekli deney dizaynı– Amazon Mechanical Turk (AMT) [yapay yapay zeka]– Orn: FB deneyi, Yahoo reklam deneyi, [AMT] tweet kurasyon

D. J. Watts, Computational Social Science Exciting Progress and Future Directions, Bridge Natl. Acad. Eng., vol. 43/4, Winter 2013

HeSoBi’nin yeri

• Interdisipliner– Sosyoloji, siyaset bilimi, kamu yonetimi, vb. (Sosyal bilimler)– Istatistik, yazilim, ag analizi, makine ogrenim… (Veri bilimi)

• Veri Bilimi < (Sosyal) Hesobi (Akademik) < Veri Gazeteciligi– VB: Teori/Algoritma/Teknoloji gelistirme + uygulama– HeSoBi: Sosyal analiz, teori gelistirme/test– VG: Veri odakli gazetecilik

Tipik VM Proje Akışı• Araştırma sorusu

– TR basini skalasi? Goreceli konumlari?• Veriyi toplama, saklama ve temizleme

– Hangi Twitter hesaplari? Nasil toplamali? Nerde tutmali?• Veriyi tanıma & anlamlandırma

– Nasil bir okuyucu dagilimi var (power law)?• Veriyi önişleme (ayıklama)

– Tamami gerekli mi? Birden fazla gazete okuyanlari silmeli mi?• Veriyi modelleme (probleme göre)

– Benzerliklerini nasil hesap etmeli? Coklu gruplamayi nasil yapmali?• Sonuçların değerlendirilmesi (V&V)

– Sonuclar makul mu? Soruma cevap veriyor mu? Kodum duzgun mu?• Bulguların sunumu

– Tablo, statik grafik, interaktif gorsel, web uygulamasi…

;-)Veri bilimine giden yolUygulamalari kullanmayi bilmek

Örnek Çalışmalar• Talha Öz

– Medya okurları ve grupların medya tercihi (görsel, gruplama)– DD-CSS (web uygulaması)– CB ortak adayı İhsanoğlu – (CHP + MHP)– GSKD agirlikli yerel sonuclar (26 bölge)– Mahalle detayında siyasi tercih (Ankara örneği)– Kim hasta (metin madenciliği)– Hava durumu tahmini (regresyon)– Emeğe saygı kulturel karsilastirma (birkaç günlük proje)

• Çilek Ağacı– Twitter Takipçisi uygulaması (web uygulaması) – ne kadar kolay/zor?– Oy geçiş analizi (R paketi)

• Diğer (okumalardan)– Ingmar Weber– Adem Sadilek– Jimmy Lin

Nasil?

• Veri toplama: DD-CSS• Ikili benzerlikler = (A∩B)/min(|A|,|B|)• Uclu…onlu gruplama

– G=(Nokta,Cizgi), cizgi agirliklari <- benzerlikler– Gephi ile gruplama– D3 gorseli (orj Co-occurrence Matrix)

12/2013 tirajları/twitter takipçi #

İki boyutta yakınlık + 3 renk

Gephi gorsel (force atlas 2)

Excel

CB Seçimleri

• Ihsanoglu ‘ortak’ aday?– Google Fusion Tables Map– Çıkarma işlemi

• Oy kaymaları– Üç satır R kodu + Photoshop

Haritalar…

• Mahalle bazinda secim sonuclari• JavaScript, R, Gephi…

Bana ismini söyle sana liderini söyleyim

• http://liderler.cilekagaci.com/isimler• http://cilekagaci.com/category/politik-political/

Nasıl çalışıyor, ne gerekli ?

3 yil onceki bir calisma

GSKD Ağırlıklı Seçim Sonuçları

• http://talhaoz.com/?p=5• github• YSK’dan sonuçların alımı (selenium)• TÜİK’ten GSKD verisi (tabula)• Excel ve MS Paint ile görsel

Ortadoğu ülkelerinde İslamcı-Laik Tansiyonu

İslamcılık katsayısı = (Retweet edilen İslamcı tohum sayısı) / (toplam tohum #)Laikçilik katsayısı = (Retweet edilen Laik tohum sayısı) / (toplam tohum sayısı)Partizan kullanıcılar --> hashtag kutuplulugu (laik-islamcı çizgisindeki yerleri)Gerilim zamanları. ∑ Pol(h) (yani politik kamplardan birine yakın olması) politik tansiyonun yüksek olduğunu gösteriyor ve şiddet dönemlerine denk...

http://sc1.qcri.org/twitter/turkey/index.php?weekid=127

Sehirlerin Twitter Nabzi• Ankara, İstanbul ve İzmir’den hangi ikisi birbirine daha benzer çıkmış dersiniz?• Riyad’da görünüp de diğer şehirlerde görünmeyen yatay çizgiler ne anlama geliyor?• Istanbul’da temmuz ayindaki gariplik de nedir?

Sadilek

• Bugün nerde yemeyeyim ?• Yasam tarzinin sagliga etkisi

– Bar, gym, istasyon (geotag)– Sosyal cevre (ag analizi)– Hasta arkadasla gorusme– Zenginlik, cevre kirliligi, egitim, irk

IrisDevletin Hasta kayitlariArastirmacilara anonimize edilip veriliyorSosyal ag analiziGephi

Brans Yonlendirme Agi

Lineer Regresyon Nedir ?

1 lb = 0.45 kg1 in = 2.54 cm

Regresyon Örneği• Öğrenilen veri: 78K havadurumu ile ilgili tweet• Test verisi: 42K, tahmin: 3 kategoride 24 sınıf• Her tweet 1+ kişice değerlendiriliyor

– Duygu ve zaman için sınıf değerleri toplamı 1, Tür ≥ 1

Duygu(5) Zaman(4) Tür(15)s1, Bilemiyorum w1, şimdi (bugün) k1,bulutlu k8,buzs2,Negatif w2, gelecek (tahmin) k2,soğuk k9,diğers3, Notr / sade bilgi paylaşımı w3, bilemiyorum k3,kuru k10,yağmurs4,Pozitif w4, geçmişin havası k4,sıcak k11,kars5,Havadurumu ile ilgili değil

k5,nemli k12,rüzgarlı

k6,fırtına k13,güneşk7,bilemiyorum k14,hortum

K15,ruzgar

1,Jazz for a Rainy Afternoon: {link},Oklahoma, 0,0,1,0,0, 0.8,0,0.2,0, 0,0,0,0,0,0,0,0,0,1,0,0,0,0,0id, tweet ve konum........................., duygu (sentiment) , zaman (when) , tür (kind)............………..

Veriyi Tanıma

Kullanılan Yazılım & Kütüphaneler

• Python– Numpy, Scipy, Pandas– Scikit-learn, NLTK

• Java– Mulan, WEKA

• STATISTICA (Statsoft)

Önişlemler (Ayıklama)• Tweetlerden özellik çıkarma

– Ham kelimeler, stemmers, wordnet lemmatizer (NLTK)– Değersiz kelimelerin ayıklama (NLTK, scikit-learn)– Emotikonların mutlu/mutsuz ayrımı (Twitter listesi)– Unigrams, bigrams, beraber (scikit-learn)– POS tagging (Fiil, isim, sıfat, özne, nesne)– Duygu sözlüğü (TR)

• Özellik seçme ve azaltma– Lokasyon bilgisini tweet metninin içine koy– Kelimeleri ağırlıklandır: TFIDF vectorizer (sonraki slide), count vectorizer– LSA, PCA, SelectKBest(chi2, sınıf/özellik bağlılığı)

tweet ö1 ö2 ö3 ... ö1Mhava bugün çok güzel Konya 0 1 1 ... 0

özellik 1 yağmurözellik 2 güzelözellik 3 çok güzelözellik 4 güzel değilözellik 5 güzel (sıfat)özellik 6 güzel (isim)özellik 7 POZİTİF #

POZİTİF NEGATİFuygun olmak#v terketmek#vbaşarı#n vazgeçmek#vedinilmiş beceri#n feragat etmek#vifa etmek#v caymak#vyapmak#v atmak#vyerine getirmek#v azalmak#vbaşarmak#v durulmak#vmuvaffak olmak#v nefret etmek#vvermek#v tiksinmek#vtakdim etmek#v iğrenmek#vuyuşmak#v anormal#a

TF-IDF (Google Örneği)

Emotikon Kullanım Yüzde Tanım#1 :) 32,115,789 33.360% Happy face#2 :D 10,595,385 11.006% Laugh#3 :( 7,613,014 7.908% Sad face#4 ;) 7,238,295 7.519% Wink#5 :-) 4,254,708 4.420% Happy face (with nose)#6 :P 3,588,863 3.728% Tongue out#7 =) 3,564,080 3.702% Happy face#8 (: 2,720,383 2.826% Happy face (mirror)#9 ;-) 2,085,015 2.166% Wink (with nose)#10 :/ 1,840,827 1.912% Uneasy, undecided, skeptical, annoyed?#11 XD 1,795,792 1.865% Big grin#12 =D 1,434,004 1.490% Laugh#13 :o 1,077,124 1.119% Shock, Yawn#14 =] 1,055,517 1.096% Happy face#15 D: 1,048,320 1.089% Grin (mirror)#16 ;D 1,004,509 1.043% Wink and grin#17 :] 954,740 0.992% Happy face#18 :-( 816,170 0.848% Unhappy#19 =/ 809,760 0.841% Uneasy, undecided, skeptical, annoyed?#20 =( 760,600 0.790% Unhappy

Proje fikri: Emotikon kullanımından kültürler arası duygu yayılımına !

100M Tweet

Sonuçlar

Baselin

e

KNN (k=5

)

Boosted Tr

ees

Random Fo

rests

SGD (S

tochasti

c Grad

ient D

escen

t)

Multinomial Naïv

e Bay

es

Averag

ed M

ultinomialNB +

Ridge

Ridge Reg

resso

r0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

Sınıflama ve Regresyon teknikleri ile elde edilen RMSE skorları

Hasta takip notlari

Veri Bilimcinin Alet Kutusu - 1

• Proje (kod,analiz,dokuman,veri) paylaşım & blog– Github (data science), gist, Rawgit, dropbox, google drive, ipython notebook– Statik site (jekyll, pelican, Journapps brace.io), Markdown, pandoc

(latex/html/word/pdf), WordPress

• Veri toplama– Freelon’un listesi, dd-css, beautiful soup ve Web tarayıcısı eklentileri (kimono)

• Veri saklama– SQL (Postgres, MySQL), NoSQL (Redis, MongoDB), Neo4j, Apache SOLR– csv/tsv, json (ceviriciler var), not: xls ≠ csv

• Görselleştirme– Plotly, Datawrapper– D3 JS, GGplot2 (R), matbplotlib (matlab), Vincent (python)

Turkceye cevrilmeli !

Veri Bilimcinin Alet Kutusu - 2

• Istatistik ve numerik analiz– R, Stata, SPSS, Pandas (Python), Matlab, Excel

• Makine öğrenim– Weka, Scikit-learn, gensim (konu modelleme)

• Metin madenciliği– NLTK, TextBlob, StanfordNLP, UIMA, Gate, Mahout

• Sosyal ağ analizi– Gephi (estetik, export), NodeXL (sosyal medya plugin)– NetworkX, Jung, Jgraph

• Big Data– Hadoop, pig, map/reduce (java+cloud9, python+boto)– Bulut sistemleri AWS EC2, dynamodb, cassandra

Toparlayacak olursak…

• Hesaplamali sosyal bilimler nedir?• Kisisel deneyim paylasimi• Son konferanslardan veri analizi ornekleri• Veri bilimi alet edevati• toz@gmu.edu @toz_TR

[Ingilizce] Kitap tavsiyesi

• Python for Data Analysis: Data Wrangling with Pandas, NumPy, and Ipython [amazon]

• Mining the Social Web [github] (rawgit bkz)• Flask Web Development [github] (blog bkz)• Muthis yardimsever yazarlar !

Backup Slides

HeSoBi Nedir?

1. Sosyal veri bilimi– Veri madenciliği, sosyal ağ analizi ve makine öğrenimi– Mobil uygulamalar, bloglar, online sosyal ağlar…

2. Sosyal simülasyonlar– Sosyal Kompleksite (Birey, Aile, Şirket, Kültür,Ekonomi...)– Santa Fe Institute, George Mason University

3. Online deneyler & kitle kaynak (crowdsource) yönetimi– Büyük ölçekli deney dizaynı– Amazon Mechanical Turk (AMT)

D. J. Watts, Computational Social Science Exciting Progress and Future Directions, Bridge Natl. Acad. Eng., vol. 43/4, Winter 2013

Sosyal Simülasyon Örnekleri

• Şekilci Keratalar– Az ırkçılar...– Ama manzara çok kötü

Kolera Salgını

HeSoBi Nedir?

1. Sosyal veri bilimi– Veri madenciliği, sosyal ağ analizi ve makine öğrenimi– Mobil uygulamalar, bloglar, online sosyal ağlar…

2. Sosyal simülasyonlar– Sosyal Kompleksite (Birey, Aile, Şirket, Kültür,Ekonomi...)– Santa Fe Institute, George Mason University

3. Online deneyler & kitle kaynak (crowdsource)– Büyük ölçekli deney dizaynı– Amazon Mechanical Turk (AMT)

D. J. Watts, Computational Social Science Exciting Progress and Future Directions, Bridge Natl. Acad. Eng., vol. 43/4, Winter 2013

Online Sosyal Deneyler & Kitle Kaynak

• 1960lar, Milgram’ın Küçük Dünya deneyi– Altı halkalı zincir

• 2002, Watts email ile tekrarladı– Dünya çapında (18 hedef)– 60K katılımcılı bir deney !

• Etkilenme deneyi (sanal lab)– Aynı şartlar altında aynı işlemi gerçekleştirme– Tarihi yapmak/yazmak

Müzik Labı Deneyi• Deneklere bilinmez grup/müzik isimleri gösteriliyor– Dinleyecekleri müzikleri seçiyorlar– Değerlendiriyor (1-5), isterse indirebiliyorlar

• İki tür grup: Bağımsız & Etkilenmeye açık– Dny 1: indirilme #, 16x3 tahta rasgele– Dny 2: indirilme #, 48x1 sıralı

• Sonuç1. T.E.2. İ.F.

İndi

rilm

e Fa

rklıl

ığı

Tahm

in E

dile

bilir

lik

Salganik, M. J., Dodds, P. S., & Watts, D. J. (2006). Experimental Study of Inequality and Unpredictability in an Artificial Cultural Market. Science, 311(5762), 854–856.

Recommended