Bilgisayar mühendisliği öğrencisiniz ve bir labta proje yapacaksınız, peki sizi ne bekliyor? Bu yazıda öğrencilerime verdiğim projeleri derledim. Özet: Evdeki hesap EPFL'ye uymuyor.

İyi okumalar...

*

2. Sınıf 2. Dönem

Can Celebrities Burst Your Bubble? / Ünlüler Balonunuzu Patlatabilir mi?

Projenin detaylı anlatımı

Problem: Echo chamber, filter bubble, yankı odası gibi isimleri bulunan "kişilerin sadece kendiyle aynı görüştekilerle sosyal bağlantı kurup konuşması, karşıt düşünceye maruz kalmaması" fenomenine sosyal medyada çözüm aradık. Çözüm, iki karşıt görüşün kutuplaşıp sadece aynı görüşten kişilerle bağlantı kurduğu konuları, tarafsız ve popüler kişilere, "ünlülere", önermek. Ünlüler bu konulara katılarak her iki görüşten kişilerin birbirleriyle bağlantı kurmasını / tartışmasını sağlayabilir.

Öğrenciden İstenen: Twitter verisi kullanarak yankı odası skorunu hesaplayan algoritmayı anlayıp çalıştırabilme, skoru azaltacak ünlü ve popüler kişileri bulup skora olan etkilerini ölçme, gerçekten de yankı odası skorunu azaltıyor yani yankı odalarını kırıyor mu diye bakma. Sonra bu kişilerin kim olduğunu analiz etme.

Sonuç: Yankı odası hesaplayan algoritmayı başka bir bilimsel makaleden almıştık. O da çok yavaş çalışıyordu. Yapan eleman biraz köylü kurnazlığı yapıp algoritma hızlı çalışsın diye veriyi sample'lıyormuş, yani verinin hepsini kullanacağına %1'ini falan kullanıyormuş. Bu da bizim fazla işimize gelmedi, biz hepsini kullandık. Deneyler çok vakit alıyordu. Bir de çok fazla hesaba katılacak değişken ve ara basamak vardı öyle ki öğrenciye verdiğim bir öneriyi ertesi hafta unutuyordum, öğrencinin bana hatırlatması gerekiyordu. Maalesef skoru azaltacak ünlüleri analiz etmeye fırsatımız olmadı, yani yankı odasını kıracak kişileri olarak Trump'ı bile önermiş olabiliriz eheh. Ama sonuçlar teorik olarak iyiydi. Tek sıkıntı algoritma yavaş çalıştığı için sadece tek bir konuda test edebildik. O yüzden makale de atölye makalesinden öteye gidemedi. https://arxiv.org/abs/2003.06857

Enteresan bir şekilde, ben bu projeyi yaparken EPFL'de başka bir hoca neredeyse aynı projeyi düşündü ve hatta proje için yüklü bir bütçe aldı. Biri EPFL ve biri UNIL'de olmak üzere iki postdoc çalıştı makale üzerinde ve iyi bir konferansa makale yazdılar. EPFL'deki postdocla "Ben bunu yapıyordum." diye konuştuğum halde adam bana atıf vermeyince hatta üzerine "Bunu bizden başka yapan olmadı." diye makalesinde yazınca epey bir sinir oldum. Teallam ya. 

Bu arada bu projede çalışan öğrenci en çalışkan öğrencim oldu, kız benim ofise benden çok geliyordu. Arada muhabbet ediyorduk. Doktora hayatımdaki tek ofis arkadaşımdı. Beni çok sevdi ki sonra benden mastır tezi aldı, tezine de "Azimliye samimiyeti ve yardımseverliği için teşekkür ederim." yazdı. Duygulandım canım ya. 

*

Türkiye Gündeminin Neredeyse Yarısı Sahteymiş

Artık ezberlediğiniz, beni bir nanoinfluencer yapan araştırmakla ilgili proje. Bunu kısa yazacağım: Bilkentli bir arkadaşıma verdim projeyi. Türk botlarının aslında insan mı, bot mu yoksa terk edilmiş hesap mı olup olmadığını belirledi, sonra ona ilişkin bir sınıflandırma yapacaktı, zaman kalmadı proje bitti. 

*

Twitter'da Haber Değeri Taşıyan Tweetleri Bulma (Mastır Tezi)

Problem: Twitter'da haber değeri taşıyan tweetleri nasıl bulabiliriz ki gazeteciler onları kolayca bulup kullansın. Hocamın önerdiği bir projeydi. 

Öğrenciden İstenen: Haber verisi ve twitter verisi kullanarak verilen bir haberle alakalı ve haber değeri taşıyan (henüz haberi yapılmamış) tweetlerden veri üret. Üretilen bu veriyi kullanarak, yeni haber ve twitter verileri geldiğinde haber değeri içeren tweetleri otomatik olarak bul.

Sonuç: Projenin büyük kısmı verilen bir haberle "alakalı" tweet bulma metoduna gitti çünkü anlaşılan bu bile zor bir işti. Obama'nın kedisi ölmüş bu haberle ilgili tweetler arıyoruz obama bir korkaktır tarzı tweetler çıkıyor:P Alakalı tweet bulmayı başardıktan sonra haberden önce yayınlanan tweet aramaya çalıştık ki o tweetlerin haber değeri taşıdığı kesin olsun. Ama bunu İsviçre verisi için yaptığımızdan bir şey bulamadık. (Türkiye'de olsa kolayca yapılır bu araştırma. Ekşi sözlükteki rezalet başlıklarını çek, hangi rezalet haberlere konu olmuş onu bul, sonra bir rezalet classifier yap.) 

Projeyi alan çocuğa "İsviçre tutmadı bir de Norveç'e bakalım hem komşu ülke." diyemediğim için internetten benzer bir problemi çalışmak üzere oluşturulmuş veri indirdim. Verilen bir tweet bilgi içerikli mi değil mi onu sınıflandırıyordu. Çocuk projenin geri kalan yarısında ona uğraştı. Veri çok dilli olduğundan "Dilden bağımsız" bir sınıflandırıcı yapalım, yani "Doğal dil işleme bazlı derin öğrenme"  ile uğraşmayalım dedim. Dolayısıyla çocuğa mastır tezi sunumuna katılan uzmandan gelen ilk soru neden "Derin Öğrenme" yapmadın oldu sdfsdfs. Çocuk böyle böyle dedi. Ben de çocuğu savundum. Öyle yırttık.


3. Sınıf 1. Dönem

Twitter'da Şekil Değiştiren Gregor Samsa Hesaplar



Projenin Detaylı Anlatımı

Problem: Twitter'da şekil değiştiren gregor samsa hesapları bulmak. Yani örneğin adamın biri komedi sayfası açıp Twitter'da takipçi toplayıp satıyor alan kişi de kendi profiline çevirip arkadaşlarına bakın ne kadar çok takipçim var diye hava atıyor. Bu tip hesapları yakalamak.

Öğrenciden İstenen: Bu tip hesapları bulmak için Twitter datası indirme, veriyi filtreleyip örnek hesap bulup sonra bu örnek hesapları kullanarak makine öğrenmesiyle yeni hesaplar bulmak.

Sonuç: Öğrencinin veriyi filtrelemesi bir dönem sürdü neredeyse. Ne uzun işmiş.. Bu kadar işi yaptıktan sonra da "Samsa falan bulamadım zaten Kafka romanları sıkıcı" dedi geçti. 

Elle örnek Samsa hesap bulmanın samanlıkta iğne aramaya benzediğini fark edince Twitter'ın yayınladığı troll listesinden yakaladım samsaları. 

*

Twitter'da Beraber Hareket Eden (Korele) Hesapları Bulmak

Problem: Twitter'da aynı şeyleri beğenip retweetleyen korele Fransız botları var. Bunları DeBot isimli metodu kullanarak yakalama, Sarı Yelekliler protestolarını nasıl körüklüyorlar öğrenme.

Öğrenciden İstenen: Debotu öğrenip çalıştırmayı başarma, sonra verilen datayla botları bulup analiz etme. 

Sonuç: Öğrencinin Debot'u anlaması epey uzun sürdü. Anladıktan sonra da hem Debot'un o kadar iyi çalışmadığını hem de ortada analiz edilecek Fransız botları olmadığını fark etti. Twitter'da bot ağları Türkiye'de ve Amerika'da oldukça büyük, ama Avrupa ülkelerinde o kadar da değil. O zamanlar henüz toy bir araştırmacı olduğum için "Twitter'ı botlar yönetiyor" palavralarına kanıyordum. Maalesef yanlış bir sayımmış. Zaten bu projeden sonra hep "Onlar bot değil, bakın asıl botlar burada." temalı araştırmalar yapmaya başladım.

Neyse olmayan botları analiz ettikten sonra "Bari şu Twitter'ın troll listesindekilere bakalım bu Debot onları bulabilecek mi?" diye baktık ama Debot orada da patladı maalesef.

Bundan sonra aklımda korele botları farklı bir yöntemle bulacak bi proje vardı ama uğraşamadım. Maalesef bir iki sene sonra bu projeyi yapıp makalesini bastılar. Kıskanmaktan başka bir şey gelmedi ellimden. 

*

Twitter Listelerinden Kullanıcı Sınıflandırılması

Problem: Elimizde "Gazeteci", "Politikacı", "Normal Vatandaş" gibi sınıflandırmalar var bir de bu sınıflandırmalar için kullanabileceğimiz, üyelerin oluşturduğu Twitter listeleri var. Bu listeleri kullanarak verilen bir kullanıcıyı sınıflandırmak. Örneğin Trump "Politikacılar" listesinde. Ama aynı zamanda Trump'ın kaydedildiği "Turunçgiller" listesi gibi veriyi bozan abuk listeler de var. Yazılan sınıflandırıcı ilk listeyi kullanmalı ikincisini görmezden gelmeli.

Öğrenciden İstenen: Verilen kullanıcı ve liste verisini kullanarak sınıflandırıcı yazma

Sonuç: Verdiğim açık ara en kolay projeydi, maalesef proje iç edildi. Öğrenci sınıflandırma probleminde regresyon yapıyordu (yani beklenen sonuç elma armut, çocuk tam sayı çıkaran algoritma kullanıyor.) Bir şey çıkmadı. Sonra bir daha uğraşmadım. 

*

Bot Sınıflandırma Kütüphanesi

Önceki dönem proje alan Bilkentli arkadaşa kendi kullanabileceğim bir bot sınıflandırma kütüphanesi yazdım. Fena gitmedi.


3. Sınıf 2. Dönem

Korona dönemi. Bu dönem proje verdiğim beş öğrencinin üçü Türk, biri Azerbaycanlı biri de Faslı'ydı. EPFL ülkü ocaklarını kurmuştum sdfsdf

Aynı zamanda Türkiye gündeminin yarısı sahteymiş makalesini de ilk bu dönem tamamladığım için projeler hep onun ileriki safhaları üzerineydi.

Türkiye Gündeminin Neredeyse Yarısı Sahteymiş (Yine)


Bu sahte gündemlerle alakalı şöyle bi olay var: adamın biri botlarla sahte bir gündem yaratıyor, sonra sahte gündemin altına millet yorum atıyor, kampanya falan yapıyor. Botlar #ReisBedelliPls hashtagini gündeme taşıdı mesela, sonra altına reis bedelli gelsin lütfen diye bir sürü bedelli üye yorum atıyor. Bu üyelerin de bi bedeli var mı, yani acaba bunlar da bot mu? Bu kişileri bugün bedelli için yarın EYT için görebilecek miyiz. Bunu araştırmak için yaptığımız bir projeydi. Sonuç: Yokmuş, onlar sahici üyeymiş galiba. Ama bu kadar dandik bir proje için bir mastır öğrencinin bir dönemi harcanır mı, teessüf ettim. Neyse adam şu an epey iyi bir yerde çalışıyor merak etmeyin.

*

Suudi Arabistan Gündeminin Neredeyse Yarısı Sahteymiş

Türkiye yetmeyince dünyaya açılmaya karar verdim, ilk görevim de Suudi Arabistan'daki trendleri araştırıp kutsal topraklarda yaşayan kardeşlerimizin duasını alıp sevaba girmek oldu. Suudi Arabistan'da da sahte trendler vardı ama Türkiye'deki yöntemle yapılmıyordu. Faslı bir çocuk bulup veri verip bu trendlerin nasıl yapıldığını sordum. 

Öğrenciden istenen: Eldeki Suudi trendleri altındaki tweetlere bakarak şüpheli mi değil mi diye elle sınıflandırma, sonra bu sınıflandıran bu trendleri makine öğrenmesiyle sınıflandırma

Sonuç: Bu çocuk Faslı olduğu halde "Ben Suudi Arapçasını okuyabilirim sıkıntı yok." diyordu. Ama koca dönem boyunca sadece 230 trendi elle sınıflandırabilmiş. Ben bir günde 1000 tane Türk trendi sınıflandırabilirim halbuki. Neyse bunun üzerine makine öğrenmesi yapıp bir lisans öğrencisinden beklentimin üzerine çıktığı için bozuntuya vermedim ama durum garipti. 

Suudi Arabistan'da çok basit bir trend manipülasyonu sistemi varmış. Bir sürü kral destekçisi fake hesap aynı anda tweet atıyor #YaşasınKral diye. Yanına da Kur'an'dan rasgele ayet sıkıştırıyorlar. Twitter spam filtresi bunları yakalayamıyor neden bilmiyorum ayetler kutsal olduğu için herhalde. 

*

Ekşi Sözlük Gündeminin Neredeyse Yarısı Sahteymiş

Bilkent'ten gelen öğrencilere ekşi sözlük verisi çekmek üzere kütüphane yazdırdım. Dönemin tamamı bunla geçti maalesef. Sonra öğrencilerden biri yazın benimle staj yaptı uzaktan. "Başlıkları engellenecek büyük aktroll listesi" başlığında listenen üyeler nasıl trollük yapıyor onu analiz etmek istedik. Öğrenci sonradan fark etti ki bunlar troll değil, hatta bir çoğu muhalif. Hayda. Proje patladı. Şimdi debe'nin okuyuculardaki etkisi üzerine bişiler yapıyoruz. 

*

Gündem Neyle Alakalı? Twitter Trendlerinin Kategorizasyonu

Elimde epey bir ülkeden trend datası ve karışık tweet datası vardı. Twitter trendleri üzerine fazla araştırma yok. Bu trendleri kategorize edelim neyle alakalı, insanlar ne hakkında konuşuyor bilelim diye  bir hobi projesine giriştim. (Örneğin Türkiye'de trendler hep politikayla alakalı, başka ülkelerde de öyle mi?) 

Problem: Verilen bir trendin neyle alakalı olduğunu bulmak ve sonra trend, trend içerikleri ve o trendlerin popüler olduğu ülkeler üzerine bir hikaye çıkarmak.

Öğrenciden İstenen: Veri hazır. Ama trendin neyle alakalı olduğu üzerine bir alaka listesi yok elimde. Onun araştırması yapılacak. Bir de klasik makine öğrenimiyle kategorizasyon. 

Sonuç: Böyle bir problem için iki yöntem var ya sınıflandırma için özel bir sınıf listesi belirlersin "Elma, armut, yabanmersini" gibi, trendlere de bir sınıf atarsın (supervised learning), ya da trendleri içeren tweetleri makineye atarsın makine de konuları kendi bulur, elma armut da diyebilir, ters köşe yapıp ejderha meyvesi de diyebilir. İkinci daha mantıklı ve zahmetsiz gözüktüğü için biz ikincisini yaptık ama tam tersine daha zahmetli çıktı. Bir kere, bütün Twitter'ı makineye atamıyorduk, parça parça atınca da her parça için farklı kategoriler geliyordu. Zaten kategorileri yorumlamak da uğraştırıyordu. Projenin sonlarına doğru Twitter "Tweet annotations" isimli tweet sınıflandırma verisi vermeye başladı, o yüzden projeden umudum hepten azaldı, dedim ben bunu sonra kendim yaparım.


4. Sınıf 1. Dönem

Fantastik Retweet Botları Nelerdir ve Nerelerde Bulunurlar?



Önceden de yakındığım gibi, botlar üzerine epey bir araştırma var ama çoğu bunlara neden bot denildi bot olduğunu nereden bilindi söylemiyor. Çöp bilim resmen. Katıldığım konferanslardan birinde bir hoca botları "Benford Law" isimli bir matematik kuralıyla yakalamak üzerine metot geliştirmiş. Bunun için diğerleri gibi çakma botlar üzerinde çalışmak yerine gitmiş bot satın almış, kendi fake hesabına retweet ettirmiş. Hoca bot araştırmalarıyla pek ilgili olmadığı için aslında literatüre heniz geçmemiş olan retweet botları üzerine bir veri hazırladığını fark etmemiş. Fırsatı kaçırmayıp veriyi istedim ve dans!

Problem: Retweet botlarının davranışlarını inceleyip onları insanlardan ayıran özellikleri bulmak sonra da insan / retweet botu sınıflandırmasını yapmak.

Öğrenciden İstenen: Yukarıdaki

Sonuç: Bu proje epey eğlenceliydi, her hafta öğrenci jupyter notebook üzerinde analiz yapıp grafik çıkarıyordu beraber yorumluyorduk. Botlar nereliymiş, hangi konudaki tweetleri retweet etmişler, kimler bot satın almış vs. Projenin can alıcı kısmı bu botlar birilerinin çalıntı hesabı olup olmadığını anlamaktı. Öğrenciye sordum kaç kere, en sonunda çalıntı değil dedi. Sonradan kendim bakınca düpedüz çalıntı olduklarını gördüm, adamın biri normal kullanıyor hesabını, sonra adamın hesabından bir anda 2000 Arapça retweet basılıyor. Adam sonra gelip veryansın ediyor "Arap'ın teki hesabımı ekledi yetişin dostlar." diye. 

Proje bitti. Üzerinden altı ay geçti. "Şu proje de aradan çıksın." diyip öğrencinin yaptıklarına bakıp onun hatalarının aynısını yapmayarak projeyi sıfırdan kendim yazdım. Konferansa gönderdim. Hakemlerden çok güzel yorumlar geldi. Biraz düzeltip yeniden yollamamı istediler yine de :( 15 Martta tam kabul gelince makaleyi detaylı anlatacağım. Yine de merak eden buyursun. https://arxiv.org/abs/2112.02366

*

Suudi Arabistan Gündeminin Neredeyse Yarısı Sahteymiş Part 2 Kralın Dönemeyişi

Önceki projenin devamıydı. Amaç şüpheli trendlerin trendin geneliyle alakasız tweetlerle (ayetler gibi) listeye taşındığını ispatlamaktı. Ama öğrenci bu ispatı yapmayıp sadece metodolojiyi yazıp bıraktığı için proje çöp oldu. Neyse ya bıktım trendlerden zaten. 

Bundan altı ay sonra (olaylar niyeyse hep altı ay sonra vuku buluyor) El Cezire benle iletişime geçip Katar, BAE ve Suudi Arabistan'da Türkiye'de görülen tipte sahte gündemlerle karşılaştıklarını söylediler. Anlaşılan ayetli tweetler yetmemiş, adamlar daha teknik saldırılara girişmiş. Sevindim onlar adına.

*

Twitter'da Haber Değeri Taşıyan Tweetleri Bulma 2

2 sene önce verdiğim mastır tezinde neden derinme öğrenme yapmadınız diye eleştiri gelmişti. Bu süre zarfında derin öğrenme çok gelişti ve kolaylaştı. Eskiden "word embeddings" isimli kelime bazlı vektörleri kullanarak sınıflandırma yapıyorduk. Kısaca anlatmam gerekirse, örneğin problemimiz: Verilen bir cümle Türkçe mi? Cümlemiz "Ali topu tut." olsun. Ama makineye sadece on elemanlı vektör sokabiliyoruz. Eskiden Ali, top ve tutmak kelimelerinin vektörlerini tek tek hesaplayıp veya internetten indirip vektörlerin ortalamasını alıp makineye öyle atıyorduk. Yani Ali on elemanlı vektör, top on elemanlı vektör tut on elemanlı vektör. Üç kelime de Türkçe olduğu için ortalaması da Türkçe olacağından doğru sonuç geliyordu. Şimdi ise direkt makineye "Ali topu tut" cümlesini atıyoruz o da bize direkt on elemanlı vektör çıkartıyor. Ali ile topun ilişkisini de hesaba katıyor. Cümleden vektöre çeviriyor yani, "sentence embedding" deniyor buna. Cümle yine Türkçe. Ama bu çözüm daha güzel. 

Teknoloji gelişince projeyi tekrar hortlatayım dedim. Yine "bilgi veren" "vermeyen" diye ayrılmış tweet verisi buldum, yeni öğrenciye verdim, çocuk da derin öğrenme yaptı. Maalesef pek bir şey öğrenemedi. Teknoloji o kadar da gelişmemiş. Yine de eldeki ortalama sonuçları bir atölyeye gönderip yayınlamayı planlıyordum ki adamın teki bizimle aynı veri ve metodu kullanarak yapıp yayınladı projeyi. Bize yayınlayacak bir şey bırakmadı. Püf.

*

Fransızlar Ne İster İsviçreliler Ne Anlar?

Twitter verileriyle çalışan fark ettiğim bir şey azınlık komüniteleri çalışamamak. Araştırmacılar veriyi genel olarak dil bazlı filtreleyip analiz ediyor. Fransızca olan bir veride Belçikalıların ve İsviçrelilerin sesi arada kaynıyor. Azınlık grupların büyüklüğü ve ana akımdan farklarını merak etmiştim hep. Bunu araştırmak için kendim konum bazlı bir sınıflandırıcı yazdım kişi Lausanne'da olduğunu yazıyorsa onu İsviçre'ye at. AZ yazıyorsa Azerbaycan mı Arizona mı AZ Alkmaar mı ona karar ver sonra sınıflandır vs. Bu sınıflandırıcının çıktısını baz alarak kimin İsviçreli kimin Fransız olduğunu bulan bir sınıflandırıcı yaz. Çünkü benim sınıflandırıcı kişi yaşadığı yeri direkt olarak söylediyse çalışıyor.

Bunu İsviçreli bir öğrenciye verdim ama yapamadı. İsviçre Fransızcası'nın standart Fransızca'dan fazla farkı yok. Konuştukları konulardan çıkarıp yapabilirdi, Fransızlar pahalılıktan şikayet ederken İsviçreliler zenginlikten şikayet ediyor mesela. Ama yapamadı.


4. Sınıf 2. Dönem

Takip Geri Takip Hesaplarının Takibi (:D)

Problem: Twitter'da tek yaptığı takip geri takip olan hesaplar var. Takipçi kasıyorlar bildiğin. Amacım bu hesapları bulup yakalayan bir yapay zeka geliştirmek ve bunların davranışlarını analiz edip bilim insanlarını uyarmak. Gizli amacım ise bu hesapları yakalayıp takip edip takiplerini kazanarak Twitter hesabımı kasmak sdfdfdggfg

Öğrenciden İstenen: Projenin uğraştıcı kısmı bu hesaplara fake hesaplarla elle takip atıp hangileri döndü diye bakıp bir "geri takip edenler" verisi oluşturmak. Bu kısmı öğrencilere verdim. Sonra "bu hesapların verisini toplayıp sınıflandırmaya çalışın bakalım ne çıkacak." dedim.

Sonuç: Geri takip yapan kişi bulmak epey zormuş. Rasgele seçilen 600 kişiden sadece 4'ü döndü. Proje Gregor Samsa projesi gibi pozitif örnek bulunamayan dandik bir projeye dönmesin diye bu sefer "snowball sampling" denilen tekniği uygulattım. Hali hazırda geri takip yapan hesapların takipleştiği hesapları çektik onlara da takip yaptık, geri takip edenlere de yine aynı tekniği uyguladık. Böyle böyle elimizde 2400 geri takipçi oldu. Şimdi bunlara takip atsam 2400 takipçili bir fake hesabım olur :D 

Bundan sonra bu hesapları gruplandırdık. Türk komünitesi (hiç şaşmaz), Japon komünitesi, Tay komünitesi, Yunan komünitesi vs. boş adam ve boş ladyboy nüfusu fazla olan ülkeler hep. Türk komünitesinin ne tip bir komünite olduğunu tahmin edersiniz. Japonlar bizi bir telegram kanalına sokmaya çalışıyorlardı.

Bir de projenin etik olması için, insanları kandırmamak adına, EPFL etik kurulu bize insanları araştırma hakkında bilgilendirin diye öneride bulundu. Biz de aynı kişilere "Biz EPFL'li araştırmacılarız eğer bot değilseniz bu hesaba geri takip yapmayın." diye yazı bulunan bir hesapla takip yaptık. Geri takip gruplarından biri bizim hesabı blokladı, hatta sonra durumu arkadaşlarıyla da paylaşmış olacaklar ki grubun tamamı bizi blokladı. Bunun üzerine Twitter da hesabımızı kapattı. Ne atarlı botlarmış. 

Makine öğrenmesi kısmı pek iyi çalışmıyor maalesef. Rasgele biri sizin fake hesabınıza geri takip yapacak mı yapmayacak mı tahmin etmek zor. Bu projenin üzerinde çalışıyorum(z) hala. 

*

Spotify'da Dezenformasyon Tespiti

Spotify'da botlarla şarkıcı kasma olayını ilginç buluyordum. Bir takım ajanslar var, bunlara para veriyorsunuz sizin şarkınızı çalma listelerine koyuyorlar. Sonra bu listeleri botlarına dinletiyorlar :D Bir gün bir EPFL çalışanından mail geldi "Merhaba ben EPFL'de araştırma endüstri bağlantısını kurmakta görevliyim Spotify'da çalışan birileriyle bağlantı kurdum size araştırma için veri tedarik edebilirim." Tamam dedim ben şu botları araştırmak için işbirliğine hazırım. Spotify'daki elemanlar bize dört tane veriseti tedarik etti. Benim botlarla alakalı çalışma yapmam için yeterli değillerdi. Ama zaten böyle bir çalışma için ne lazım onlar ne verebilir tam bilmiyordum. Adamlar da biraz geç cevap veriyor gibiydi, sürekli veri diye ısrar etmem zor olacaktı. Ben de "Eldeki verilerle bir proje yapayım belki gözlerine girerim başka konularda da iş birliği yaparız." diye hali hazırda sundukları halka açık verilerden birini aldım. Podcast verisi.

Problem: Spotify'daki podcastler editöryel işlemden geçmiyor. Dolayısıyla yalan haber yaymak için biçilmiş kaftanlar. Spotify podcastlerindeki yalan haberleri tespit edelim.

Öğrenciden İstenen: Yalan haber tespiti üzerine literatür taraması yapmak, yalan haber verileri bulmak, sonra halihazırdaki veri ve tespit metodlarını podcast metinlerine uyarlayıp yalan haber tespit etmek, varsa tabii.

Sonuç: Yokmuş. 

Eldeki podcast verisi de epey kısıtlıymış. Sadece koronayla ilgili haberlere bakalım dedim. Öğrenci "Ona rağmen hiç yalan habere rastlayamadım, podcastler hep sohbet muhabbet." dedi. "Bari Bill gates ve çip kelimelerini arat, bir şey çıkar bari." dedim. "Yok valla yok." dedi. Dedim napalım kısmet.

Enteresan ama bu projeden 6 ayda Spotify dezenformasyon içeren podcast haberleriyle çalkalandı, Spotify boykotları falan yapıldı. Partiyi kaçırdık. 

*

Neden Popülersin? Aplikasyonu

Problem: Twitter'da bir sürü gizli influencer var. Adamın Twitter dışında hiçbir mevcudiyeti yok. Bakıyorsun Twitter'da on bin yirmi bin takipçili popüler biri. Niye oğlum? Sırf bu tiplerin popülaritesi nereden geliyor görmek için proje yazdım. 

Öğrenciden İstenen: Twitter'ın geriye dönük verilerini kullanarak kim ne zaman takipçi kazanıp popüler oldu, hangi tweet onu popüler etti onu gösteren Django tabanlı bir web aplikasyonu yazmak.

Sonuç: Gerçekten de tam istediğim gibi bir app yazdı EPFL'li cengaverler. Ortalama bir konferansa gönderdim, "bundan makale olmaz ama konferansta sunabilirsiniz." diye cevap geldi. Sunmaya uğraşmadım ben de. Sunum demek zoom'da kara kutulara konuşup sonra kendim de kara kutuya dönüşüp takılmam demek çünkü. Biraz daha uğraşıp daha iyi bir konferansa yollarım dedim.

Bir tane resim atayım appten:


Buradaki grafik zaman takipçi sayısı grafiği. Gördüğünüz gibi üç kere hesabın takipçi sayısı zıplamış. Bizim elemanlar iki tanesini bulup noktayla gösterebilmiş. O noktalardaki tweet ise çekiliş tweeti. Çekiliş yapınca takipçi geliyor. 


5. Sınıf 1. Dönem

Neden Popülersin ? Nokta Tespiti

Yukarıda gördüğünüz gibi öğrencilerim hesabın takipçilerinin üçüncü zıplama noktasını bulamamış (gerçi o bir zıplama noktası sayılır mı o da meçhul.) Sırf bu noktayı bulabilmek için bir proje yazdım. Noktanın peşine düştük. 

Problem: Ani artış noktalarını bulma. 

Öğrenciden İstenen: Verilen örnek verideki ani artış noktalarını bulacak metotları araştırma ve deneme

Sonuç: Öğrenci literatür taramasında bulundu, Bollinger Band, Kalman smoothing gibi geneli finansla alakalı metotlarla geldi ama galiba işe yarar bir şey bulamadı. Galiba diyorum çünkü örnek kullanıcılar üzerinde test et diye defalarca söylememe rağmen test etmedi. Sunumda da hoca "Eee nasıl anladın hangi metod iyi." diye sorunca "Anlayamadım maalesef, veride hangi noktalar zıplama noktası işaretli değildi." diye beni üstü kapalı hocaya şikayet etti. Ya sabır...

*

Cross-Platform Celebrity Analytics / Platformlararası Ünlü Takibi

Problem: Ünlü kişilerin birden fazla sosyal medya hesabı var. Bu hesaplar birbirinden nasıl ayrışıyor, örneğin hangi tip kullanıcıların Twitter'da çok Instagram'da az takipçisi var ve bu bize neyi anlatıyor. Bunu araştırmak için ünlü kişilerin sosyal medya hesaplarının bulunduğu bir veri seti gerek. Benim ismim azimli, facebook'um budur, Twitter'ım budur vs. diye.

Öğrenciden İstenen: Sosyal medya platformlarının APIlarını kullanarak verisetini oluşturmak, aynı kişinin bütün sosyal medya hesaplarını bir çatıda toplamak.

Sonuç: Projeyi alan iki buçuk sene önce Introduction to Programming dersinde asistanlık yaptığım öğrencilerdi. Büyümüş de benden proje alırlarmış, canlarım benim :P 

Clubhouse'un (yanlışlıkla) sağladığı veriyi kullanarak ünlülerin Instagram ve Twitterlarını, sonra da buradaki bilgilerini kullanarak Tiktok, Spotify ve Youtube hesaplarını bulduk. Bunun için de üyelerin profil resimlerini ve biolarını kullandık.

Öğrenciler proje sunumunu bitirdiler. Söz hakkı hocaya geldi. Hoca bu projeye bayağı saydı sövdü İsviçre yasalarını ihlal ediyorsunuz diye. Profil resimlerini kullanamazmışız, polis bile yapmıyormuş. Tüm bunları gülümseyerek söylemesine rağmen öğrencileri şoka soktu, ecel terleri döktüler. Bana mail attılar "Biz kalacak mıyız?" diye. Neyse ki ben "Hocam bunu sadece ünlü kişiler için yapıyoruz. Amaç social blade gibi bir veriseti oluşturmak." diyince hoca yumuşadı. Ama tabii bu projenin zahmeti getirisinden fazla olduğu için ben devam etmeye yanaşmadım. Github kodunu da şöminede yaktım.

*

Bitcoin'de Ani Çıkış ve Çöküşlerin Tespiti

Problem: Araştırmayı bırakıp kendimi bitcoine verip parayı kırmak üzere verdiğim bu projede amaç bitcoin çıkacak mı çökecek mi onu Twitter verisine bakıp tahmin etmek. Çünkü bu bitcoin yalan haberle dönüyor (ve yalan haber benim işim). Bir bakıyorsunuz Çin bilmemne kararı almış hadi çöküş. El Salvador bitcoine geçmiş hadi yükseliş. Elon Musk osurmuş bill gates chip takmış zuckerberg hani bana hani bana demiş. Bu ne arkadaş. 

Öğrenciden İstenen: Her şeyi direkt öğrencilere bıraktım bu sefer. Ne veri verdim, ne makale. Beni zengin edin dedim sadece.

Sonuç: Öğrenciler ilk baş karşıma kaggle verisiyle geldi. Veri 2019'a kadar. Dedim "Ya bitcoin 2017 sonuna kadar hep çıktı sonra patladı. Bunun nesini kullanacaksınız iniş çıkış yok ki adamakıllı." Sonra başka veriye geçtiler. Sonra bir sessizlik oldu. Sunum günü çıkış çöküşler yerine düz "Bitcoin Price Prediction" yapıp geldiler. İnternetten düz proje bulunup sallanılmış gibi :D Benim istediğim bir hafta sonra bitcoin çökecek mi fakir olacak mıyım. Adam gitmiş "Bitcoin şimdi 43k, bir saniye sonra 43,010 olacak." diye sonuç bulmuş. Ya sabır. Hoca dedi "Ee bunun daha iyisi fintech şirketler yapıyor zaten siz niye yaptınız?" Dedim adam haklı.

Takip Geri Takip Hesaplarının Takibi Part 2

Önceki projenin devamı. Aynı öğrencileri bir dönem daha çalıştırdım makine öğrenmesi algoritmaları daha iyi çalışsın diye. 

*

Benim üç sene boyunca verdiğim projeler bunlardı. Aralarında kendim batırdığım, bir şey çıkmayacağı baştan belli olan kötü projeler de vardı. Bazıları yanlış varsayımlara dayanıyordu. Ama aralarında beni fazla uğraştırmadan konferans makalesine çevirebileceğim projeler de çıktı, ünlülerin balon patlatma projesi, retweet botları, neden popülersin appi, takip geri takip hesaplarının takibi gibi. 

Bu arada toplam (buraya yazmadığım mastır tezleriyle beraber) 27 proje vermişim. Bu EPFL tarihinde bir rekor olabilir çünkü doktora öğrencileri dönem başı bir proje ya verir ya vermez. 

*

Postdoc başvurularıyla uğraşmayı (şu an için) bitirdiğim için daha sık yazacağım artık. Takipte kalın!

Bundan sonraki yazılardan haberdar olmak için şuradaki formu doldurabilirsiniz:

Veya sosyal medya: