Skip to content

Apache Spark üzerinde R kullanımı (SparkR) ile büyük veri analizi ve makine öğrenmesi IPython / Jupyter notebook kullanılarak nasıl yapılır?

Notifications You must be signed in to change notification settings

vezir/spark-r-notebooks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 

Repository files navigation

SparkR notebooks

Join the chat at https://gitter.im/vezir/spark-r-notebooks

Bu Jupyter notebook ların hazırlanma amacı, okuyucuyu Apache Spark daki bazı kavramlar konusunda, R dili kullanarak basitten ileri seviyeye doğru eğitmek amacı ile yazılmıştır.

Bu çalışma Jose A Dianes in aynı isimli güzel tutorial ından esinlenerek hazırlanmıştır. İlgilisinin başka bir veri seti ile hazırlanan o tutorial u da incelemesini öneririm.

Bu incelemeyi kolay bir ortamda yapabilmek için sparkR ın komut satırını değilde, IPython / Jupyter notebook u kullanmayı tercih ettim. Bu şekilde hem çalışmamız daha kolay olacak, hem de yaptığımız analizleri diğer kişilerle paylaşmak, tekrar etmek çok rahat olacak. Bu şekilde dokümantasyonda yapılmış oluyor.

Başlangıç

Öncelikle kullanacağımız ortamdan bahsedelim. Hazır bir ortamı da tercih edebilirsiniz ama ben aşağıdaki ortamı sıfırdan kurarak ilerledim. Bu çalışma değişik işletim sistemleri kullanılarak yapılabilir ama benim ortamım Windows7 olan makinamda, Oracle VM VirtualBox a kurduğum Linux varyantı Ubuntu 14.04 LTS şeklinde. Gerekli yazılımlar Spark, R, Jupyter Notebook, tercihen Hadoop olacak. Hadoop yapacağımız alıştırmalar için mutlaka gerekmiyor.

Kullanacağımız ortam Jupyter notebook default olarak Python ile çalışacak şekilde düzenlenmiştir. Farklı dillerde çalışma yapabilmek için bu dillerin motorlarına ilgili komutları aktarıp sonuçları notebook a geri getirecek bir yazılıma ihtiyaç duyuyoruz. Bu yazılımlara Kernel deniyor ve R için olanı IRkernel dan kurulumu yapabilirsiniz. Ayrıca Using R with Jupyter Notebooks da sizlere yardımcı olacaktır.

Tabii Spark ın kurulumunun yapıldığını kabul ediyorum. Ben 1.6.0 versiyonunu kurdum. Hadoop kurulumu opsiyoneldir. Yeri gelince bunun nedenini açıklayacağım. Java ve Scala kurulumu yapıldığını da kabul ediyoruz. Son versiyon 2.11.7 yerine 2.10.x kurmanızı/kullanmanızı öneririm.

Veri Seti

Büyük veri ile ilgili bir çalışmanın en önemli başlangıç unsuru tabii olarak büyük bir veridir. Günümüzde sıradan insanların büyük veriye erişmesi hiç olmadığı kadar kolaylaşmıştır. Hatta bu veriler bazı iş ihtiyaçları için bile kullanılabilir. Burada özellikle birkaç büyük veri kaynağı vereceğim. Bunun için Big Data: 20 Free Big Data Sources Everyone Should Know daki kaynaklar iyi bir başlangıçtır.

Veri seti olarak, ABD - California da yol kazalarında yaralanmaları 2002-2010 Road Traffic Injuries 2002-2010 ile ilgili verileri aldım.

Bu veri setinde Kaliforniya'da yaşayan kişi ve mil başına olan trafik kazalarının yaya, otomobil, motorsiklet gibi kategorilerdeki istatistikleri, Kaliforniya'nın alt bölgeleri bazında verilmektedir. Veriyi doğrudan incelemek isterseniz analiz için hazırlanmış sayfadan faydalanabilirsiniz. Var olan alanların neler olduğu ile ilgili bir excel doküman da mevcuttur.

Düşündüğümüz analizleri SparkR ile yapabilmek için aşağıdaki adımları takip edeceğiz.

Temel başlıklarımız

  1. Verinin yüklenmesi ve SparkR ın başlatılması
  2. Spark SQL
  3. Data Frame operasyonları
  4. SparkR ve ggplot2 ile veri analizi
  5. SparkR ile Lineer modelleme

About

Apache Spark üzerinde R kullanımı (SparkR) ile büyük veri analizi ve makine öğrenmesi IPython / Jupyter notebook kullanılarak nasıl yapılır?

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published