Neuralink Demo Yayınından Wordcloud Projesi!

2016’da Elon Musk tarafından kurulan Neuralink, beyin yaralanmalarını ve travmaları tedavi etmek ve bir gün insanlar ile yapay zeka arasında ortak yaşamı sağlamak amacıyla insan saçından 10 kat daha ince olan küçük esnek “ipler” tasarladığını söyledi [1].

Elon Musk. Tartışılmaz bir şekilde son 10 senenin en çok konuşulan CEO’ları içinde yer alıyor. Birçoğumuz onu TESLA, SpaceX şirketleri ve meşhur “Mars’ı kolonize etme” projesi aracılığıyla tanıyoruz. Bunların dışında Elon Musk’ın başka bir şirketi ve iddialı bir projesi daha var, Neuralink. Bu nöro-teknoloji şirketini “insanları ve makineleri birbirine bağlamak için yüksek bant genişliğine sahip beyin-makine arayüzleri geliştirmek” amacıyla 2016 yılında kurdu. Elon, sonunda etrafındaki cihazları kontrol etmemize izin vereceğini ve insan-AI simbiyozunu etkinleştireceğini iddia ediyor. Bazıları bunun günümüz için ütopik ve yapılamaz olduğunu savunurken projenin birçok destekçisi de mevcut. Bugün burada olma amacımız projenin olabilitesini tartışmak veya projeyi eleştirmek değil. Bunun yerine eğlenceli, veri görselleştirmeye yeni başlayan kişilerin kolaylıkla yapabileceği bir proje üzerine konuşacağız!

Neuralink’in kurulduğu günden bu yana, izleyicileri bilgilendirmek için birkaç güncelleme yayını yaypıldı. En sonuncusu birkaç gün önceydi, tam olarak 28 Ağustos. İzlemek isteyenler buraya tıklayarak videoya erişebilir. Video yaklaşık bir saat sürüyor, eğer nöro-teknoloji alanına çok ilgili değilseniz hepsini izlemek zaman alıcı ve sıkıcı olabilir. Bu nedenle, çok fazla zaman harcamadan, bu en son teknolojik gelişme hakkında bilgi edinmek istiyorsanız,  Google’dan başkalarının incelemelerini, özetlerini okuyabilirsiniz. Ya da ilgi alanınıza katkıda bulunacak daha eğlenceli bir şeyler yapabilirsiniz. Ben eğlenceli bir şekilde fikir edinmek isteyen ikinci gruptayım, ondan dolayı bu amacım için farklı ve eğlenceli bir proje yapmaya karar verdim.

Birkaç dakika düşünelim, videoyu izlemeden nasıl fikir sahibi olunabilir? Elon Musk bu yayında neleri vurgulamıştır? Word cloud oluşturarark kolaylıkla bir fikir edinebiliriz değil mi? Bildiğiniz veya duyduğunuz üzere word cloudlar yani kelime bulutları bir metnin içindeki kelimelerin sıklık analizinin görselleştirilmiş halidir. Çokça kullanılmış kelimeler daha büyük fontta ve kalın görünür. Eğer videonun metnine erişip bunun analizini yaparsak tekrar tekrar kullanılan kelimeleri, dolayısıyla vurgulanan birkaç noktayı elde etme şansına sahip olmuş oluruz. Bu yüzden bugün, Elon Musk’ın Neuralink demosundan bir kelime bulutu oluşturma projesinde adım adım size rehberlik edeceğim. Başlayalım!

Öncelikle yapmamız gereken şeylerden birisi videonun metnine erişmek. Bazı videolarda youtube API kullanarak buna kodla erişebilme imkanınız var fakat bizim durumumuz için videoda altyazı mevcut değil, bu yüzden manuel olarak scripti almaya çalışacağız. Videonun linkine buraya tıklayarak gidelim, sağ alt köşede üç nokta göreceksiniz. Oraya tıklayıp “Open transcript” seçeneğini seçin.

Sağınızda “Transcript” yazılı küçük bir ekran belirecek. Bu ekranda videoda geçen kelimeleri geçtiği dakikalarla beraber görebilirsiniz. Timestamp dediğimiz bu zaman damgalarını kaldırmak için yine üç noktaya tıklayıp “Toggle timestamps” i seçin. Elde ettiğiniz, zamanların olmadığı kutudan tüm scripti manuel olarak kopyalayın ve text dosyasına yapıştırın.

Şimdi proje için bir sonraki adıma geçmeye hazırız. Bu adımda kapsamlı bir “stopword” listesi bulmamız gerekiyor. Stopword’ler yani engellenen kelimeler, cümle oluştururken sıklıkla kullandığımız ancak analizimizde bizim pek işimize yaramayacak sadece çalışmayı odağından kaydıracak kelimelerdir. Bunları bağlaçlar, edatlar, özneler olarak düşünebiliriz. Analize başlamadan önce elimine etmek daha doğru bir sonuca ulaşmamızda yardımcı olacaktır. Birçok dil için çeşitli listeleri kolaylıkla interette edinebilliriz, hatta wordcoud API’ının default listesi de mevcut. Aynı şekilde NLTK da benzer bir listeye sahip. Burada yaptığımız çalışmada metnimizi bir konuşmadan elde ettiğimiz için default verilen kelime listelerinin yetersiz geleceğini düşündüm ve bu adresten kelime listesi indirdim, sonradan kullanmak üzere text dosyasına yapıştırdım.

Şimdi elimizde analiz edeceğimiz text dosyası ve elimine edeceğimiz kelime dosyası da hazır olduğuna göre kodlama kısmına başlayabiliriz. En sevdiğiniz IDE üzerinden bir python dosyası oluşturun, ben proje sürecinde Visual Studio kullandım. Aşağıda listelediğim kütüphaneler çalışmamızda gerekli olacak, yüklemeye başlayabiliriz.

  • Os
  • PIL
  • Numpy
  • Matplotlib
  • WordCloud
  • NLTK

Kurulumdan sonra txt dosyalarımızı açacağız ve analiz için uygun bir formata getireceğiz. Split() methodunu kullanarak metindeki kelimeleri tek tek ayıralım. Bunu yapmamızın sebebi sonrasında küçük bir kodla elimine etmek istediğimiz kelimelerden kolayca kurtulabilmek. Eleme yapmadan önceki kelime sayısı ve sonraki kelime sayılarını da ekrana bastıralım ki sonrasında farkı görebilelim.

Kelime bulutunu oluşturmak için wordcloud API’ı kullanacağız [2]. Ben maske için kullanacak bir görsel tanımladığınızda kelime bulutunun şeklini değiştirecek cool bir format seçtim! API dökümentasyonuna baktığınızda birçok farklı seçenek göreceksiniz, kendi projenizde daha yaratıcı versiyonlar seçebilirsiniz!

Son olarak, daha iyi anlaşılması açısından en sık tekrar edilen 15 kelimenin bir tablosunu çıkardım.

Görebileceğiniz üzere ilk metnimizde 11404 kelime varken stopword dediğimiz kelimeleri elimine ettikten sonra sadece 3362 kelimemiz kaldı.

Veee kelime bulutumuz, sizce de harika değil mi?

Bu yazıda sizinle beraber adım adım eğlenceli bir proje yapmaya çalıştım. Proje ile ilgili materyallere github hesabım üzerinden buraya tıklayarak erişim sağlayabilirsiniz. Umarım kafanızda daha eğlenceli fikirler oluşmasına yardımcı olmuştur ve güzel bir zaman geçirmişsinizdir. Çeşitli versiyonlarını denerseniz çekinmeden benimle paylaşabilirsiniz, bir sonraki paylaşımda görüşmek üzere!

 

Referanslar:

[1] Lori Ioannau, Christina Farr, “Elon Musk demonstrates brain-computer tech Neuralink in live pigs”, 28.08.2019, CNBC, click to visit the webpage

[2] Wordcloud API: Click to visit the webpage

Data Science Earth

Data Science Earth ekibi, üst düzey Veri Bilim çözümleri üretmek amacı ile toplanmış akademisyenler ve uzmanlardan oluşmaktadır. Öncelikli olarak veri bilincini geliştirmeyi ve küreselleşen rekabet ortamında verinin gücünün doğru kullanılmasını sağlamayı amaçlamaktadır.

Sponsor

QuestionPro 35 farklı soru seçim özelliği ile anket çalışmalarımıza güç katmaktadır.