Python ile Makine Öğrenimi - Ekosistem

Python'a Giriş

Python, üst düzey programlama dili yeteneklerine sahip popüler bir nesne yönelimli programlama dilidir. Öğrenmesi kolay sözdizimi ve taşınabilirlik özelliği, bu günlerde popüler olmasını sağlıyor. Aşağıdaki gerçekler bize Python'a giriş sağlar -

  • Python, Guido van Rossum tarafından Hollanda'daki Stichting Mathematisch Centrum'da geliştirildi.

  • 'ABC' adlı programlama dilinin halefi olarak yazılmıştır.

  • İlk versiyonu 1991'de yayınlandı.

  • Python adı, Guido van Rossum tarafından Monty Python's Flying Circus adlı bir TV programından seçildi.

  • Açık kaynak kodlu bir programlama dilidir, yani onu özgürce indirebilir ve programları geliştirmek için kullanabiliriz. Www.python.org adresinden indirilebilir .

  • Python programlama dili hem Java hem de C özelliklerine sahiptir. Zarif 'C' koduna sahip ve diğer yandan nesneye yönelik programlama için Java gibi sınıflara ve nesnelere sahip.

  • Yorumlanmış bir dildir, yani Python programının kaynak kodu önce bayt koduna dönüştürülür ve ardından Python sanal makine tarafından çalıştırılır.

Python'un Güçlü ve Zayıf Yönleri

Her programlama dilinin bazı güçlü yönleri ve zayıf yönleri vardır, Python da öyle.

Güçlü

Araştırmalara ve anketlere göre Python, makine öğrenimi ve veri bilimi için en önemli beşinci dilin yanı sıra en popüler dildir. Python'un sahip olduğu şu güçlü yönlerden kaynaklanmaktadır:

Easy to learn and understand- Python'un sözdizimi daha basittir; dolayısıyla yeni başlayanlar için bile dili öğrenmek ve anlamak nispeten kolaydır.

Multi-purpose language - Python çok amaçlı bir programlama dilidir çünkü yapısal programlamayı, nesne yönelimli programlamayı ve işlevsel programlamayı destekler.

Huge number of modules- Python, programlamanın her yönünü kapsayan çok sayıda modüle sahiptir. Bu modüller kolayca kullanılabilir, dolayısıyla Python'u genişletilebilir bir dil yapar.

Support of open source community- Açık kaynak programlama dili olarak Python, çok geniş bir geliştirici topluluğu tarafından desteklenmektedir. Bu nedenle, hatalar Python topluluğu tarafından kolayca düzeltilebilir. Bu özellik Python'u çok sağlam ve uyarlanabilir kılar.

Scalability - Python ölçeklenebilir bir programlama dilidir çünkü büyük programları desteklemek için kabuk komut dosyalarından daha gelişmiş bir yapı sağlar.

Zayıflık

Python, popüler ve güçlü bir programlama dili olmasına rağmen, yavaş yürütme hızı konusunda kendi zayıflığına sahiptir.

Python'un yürütme hızı, derlenmiş dillere kıyasla yavaştır çünkü Python yorumlanmış bir dildir. Bu, Python topluluğu için ana iyileştirme alanı olabilir.

Python'u Yükleme

Python'da çalışmak için önce onu yüklemeliyiz. Python kurulumunu aşağıdaki iki yoldan biriyle gerçekleştirebilirsiniz -

  • Python'u ayrı ayrı kurmak

  • Önceden paketlenmiş Python dağıtımını kullanma - Anaconda

Bunları ayrıntılı olarak tartışalım.

Python'u Ayrı Ayrı Kurmak

Python'u bilgisayarınıza kurmak istiyorsanız, o zaman sadece platformunuz için geçerli olan ikili kodu indirmeniz gerekir. Python dağıtımı Windows, Linux ve Mac platformları için mevcuttur.

Aşağıda, yukarıda belirtilen platformlara Python kurulumuna hızlı bir genel bakış sunulmaktadır -

On Unix and Linux platform

Aşağıdaki adımların yardımıyla Python'u Unix ve Linux platformuna kurabiliriz -

  • Öncelikle www.python.org/downloads/ adresine gidin .

  • Ardından, Unix / Linux için mevcut olan sıkıştırılmış kaynak kodunu indirmek için bağlantıya tıklayın.

  • Şimdi, dosyaları indirin ve çıkarın.

  • Ardından, bazı seçenekleri özelleştirmek istiyorsak Modules / Setup dosyasını düzenleyebiliriz.

    • Ardından komutu yazın run ./configure script

    • make

    • kurmak yap

On Windows platform

Aşağıdaki adımların yardımıyla Python'u Windows platformuna kurabiliriz -

  • Öncelikle www.python.org/downloads/ adresine gidin .

  • Ardından, Windows yükleyici python-XYZ.msi dosyası için bağlantıya tıklayın. Burada XYZ, kurmak istediğimiz versiyondur.

  • Şimdi indirilen dosyayı çalıştırmalıyız. Bizi kullanımı kolay Python kurulum sihirbazına götürecektir. Şimdi varsayılan ayarları kabul edin ve kurulum bitene kadar bekleyin.

On Macintosh platform

Mac OS X, Homebrew için, Python 3'ü yüklemek için harika ve kullanımı kolay bir paket yükleyici önerilir. Homebrew'iniz yoksa, aşağıdaki komutun yardımıyla kurabilirsiniz -

$ ruby -e "$(curl -fsSL
https://raw.githubusercontent.com/Homebrew/install/master/install)"

Aşağıdaki komutla güncellenebilir -

$ brew update

Şimdi, Python3'ü sisteminize kurmak için aşağıdaki komutu çalıştırmamız gerekiyor -

$ brew install python3

Önceden Paketlenmiş Python Dağıtımını Kullanma: Anaconda

Anaconda, Veri biliminde yaygın olarak kullanılan tüm kitaplıklara sahip Python'un paketlenmiş bir derlemesidir. Anaconda kullanarak Python ortamını kurmak için aşağıdaki adımları takip edebiliriz -

  • Step 1- Öncelikle gerekli kurulum paketini Anaconda dağıtımından indirmemiz gerekiyor. Aynısı için bağlantı www.anaconda.com/distribution/ . Gereksiniminize göre Windows, Mac ve Linux işletim sistemi arasından seçim yapabilirsiniz.

  • Step 2- Ardından, makinenize kurmak istediğiniz Python sürümünü seçin. En son Python sürümü 3.7'dir. Orada hem 64-bit hem de 32-bit Grafik yükleyici seçeneklerine sahip olacaksınız.

  • Step 3- İşletim sistemi ve Python sürümünü seçtikten sonra, Anaconda yükleyicisini bilgisayarınıza indirecektir. Şimdi, dosyaya çift tıklayın ve yükleyici Anaconda paketini kuracaktır.

  • Step 4 - Yüklü olup olmadığını kontrol etmek için bir komut istemi açın ve aşağıdaki gibi Python yazın -

Bunu ayrıca www.tutorialspoint.com/python_essentials_online_training/getting_started_with_anaconda.asp adresindeki ayrıntılı video dersinde de kontrol edebilirsiniz .

Neden Veri Bilimi için Python?

Python, Makine öğrenimi ve veri bilimi için en önemli beşinci dilin yanı sıra en popüler dildir. Aşağıdakiler, Python'u veri bilimi için tercih edilen dil seçimi yapan özelliklerdir -

Kapsamlı paket seti

Python, çeşitli etki alanlarında kullanılmaya hazır, kapsamlı ve güçlü bir paket setine sahiptir. Ayrıca aşağıdaki gibi paketler varnumpy, scipy, pandas, scikit-learn makine öğrenimi ve veri bilimi için gerekli olan vb.

Kolay prototipleme

Python'un onu veri bilimi için dil seçimi yapan bir diğer önemli özelliği, kolay ve hızlı prototiplemedir. Bu özellik, yeni algoritma geliştirmek için kullanışlıdır.

İşbirliği özelliği

Veri bilimi alanı temelde iyi bir işbirliğine ihtiyaç duyar ve Python, bunu olağanüstü hale getiren birçok yararlı araç sağlar.

Birçok alan için tek dil

Tipik bir veri bilimi projesi, veri çıkarma, veri işleme, veri analizi, özellik çıkarma, modelleme, değerlendirme, dağıtım ve çözümü güncelleme gibi çeşitli alanları içerir. Python çok amaçlı bir dil olduğundan, veri bilimcinin tüm bu alanları ortak bir platformdan ele almasını sağlar.

Python ML Ekosisteminin Bileşenleri

Bu bölümde, Python Makine öğrenimi ekosisteminin bileşenlerini oluşturan bazı temel Veri Bilimi kitaplıklarını tartışalım. Bu kullanışlı bileşenler Python'u Veri Bilimi için önemli bir dil yapar. Bu tür birçok bileşen olmasına rağmen, burada Python ekosisteminin bazı önemli bileşenlerini tartışalım -

Jupyter Defter

Jupyter dizüstü bilgisayarlar, temel olarak Python tabanlı Veri Bilimi uygulamaları geliştirmek için etkileşimli bir hesaplama ortamı sağlar. Eskiden ipython not defterleri olarak biliniyorlardı. Aşağıdakiler, Jupyter dizüstü bilgisayarların Python ML ekosisteminin en iyi bileşenlerinden biri olmasını sağlayan özelliklerinden bazılarıdır -

  • Jupyter not defterleri, kod, resim, metin, çıktı vb. Öğeleri adım adım düzenleyerek analiz sürecini adım adım gösterebilir.

  • Bir veri bilimcinin analiz sürecini geliştirirken düşünce sürecini belgelemesine yardımcı olur.

  • Sonuç not defterinin bir parçası olarak da yakalanabilir.

  • Jupyter defterlerin yardımıyla çalışmalarımızı bir arkadaşımızla da paylaşabiliyoruz.

Kurulum ve Yürütme

Anaconda dağıtımını kullanıyorsanız, jupyter dizüstü bilgisayarı zaten yüklü olduğu için ayrı olarak kurmanıza gerek yoktur. Sadece Anaconda İstemine gitmeniz ve aşağıdaki komutu yazmanız yeterlidir -

C:\>jupyter notebook

Enter tuşuna bastıktan sonra, bilgisayarınızın localhost: 8888 adresinde bir dizüstü bilgisayar sunucusu başlatacaktır. Aşağıdaki ekran görüntüsünde gösterilmektedir -

Şimdi, Yeni sekmesine tıkladıktan sonra, bir seçenek listesi alacaksınız. Python 3'ü seçin ve üzerinde çalışmaya başlamak için sizi yeni not defterine götürecektir. Aşağıdaki ekran görüntülerinde buna bir göz atacaksınız -

Öte yandan, standart Python dağıtımını kullanıyorsanız, jupyter dizüstü bilgisayarı popüler python paketi yükleyicisi pip kullanılarak yüklenebilir.

pip install jupyter

Jupyter Defterindeki Hücre Türleri

Aşağıdakiler, bir jupyter not defterindeki üç hücre tipidir -

Code cells- Adından da anlaşılacağı gibi bu hücreleri kod yazmak için kullanabiliriz. Kodu / içeriği yazdıktan sonra, onu not defteriyle ilişkilendirilmiş çekirdeğe gönderecektir.

Markdown cells- Bu hücreleri hesaplama sürecini not etmek için kullanabiliriz. Metin, resimler, Lateks denklemleri, HTML etiketleri vb. Gibi şeyleri içerebilirler.

Raw cells- İçlerine yazılan metin olduğu gibi görüntülenir. Bu hücreler temelde jupyter not defterinin otomatik dönüştürme mekanizması ile dönüştürülmesini istemediğimiz metni eklemek için kullanılır.

Jupyter not defteri hakkında daha ayrıntılı çalışma için www.tutorialspoint.com/jupyter/index.htm bağlantısına gidebilirsiniz .

Dizi

Python'u Veri Bilimi için favori dillerden biri yapan başka bir kullanışlı bileşendir. Temelde Sayısal Python anlamına gelir ve çok boyutlu dizi nesnelerinden oluşur. NumPy kullanarak aşağıdaki önemli işlemleri gerçekleştirebiliriz -

  • Diziler üzerinde matematiksel ve mantıksal işlemler.

  • Fourier dönüşümü

  • Doğrusal cebir ile ilgili işlemler.

NumPy'yi MatLab'ın yerini alan olarak da görebiliriz çünkü NumPy çoğunlukla Scipy (Scientific Python) ve Mat-plotlib (çizim kitaplığı) ile birlikte kullanılır.

Installation and Execution

Anaconda dağıtımını kullanıyorsanız, NumPy zaten yüklü olduğu için ayrı olarak kurmanıza gerek yoktur. Sadece aşağıdakilerin yardımıyla paketi Python betiğinize aktarmanız gerekir -

import numpy as np

Öte yandan, standart Python dağıtımını kullanıyorsanız NumPy, popüler python paket yükleyicisi pip kullanılarak yüklenebilir.

pip install NumPy

NumPy hakkında daha ayrıntılı çalışma için www.tutorialspoint.com/numpy/index.htm bağlantısına gidebilirsiniz .

Pandalar

Python'u Veri Bilimi için en sevilen dillerden biri yapan başka bir kullanışlı Python kitaplığıdır. Pandalar, temelde veri işleme, tartışma ve analiz için kullanılır. Wes McKinney tarafından 2008'de geliştirildi. Pandaların yardımıyla veri işlemede aşağıdaki beş adımı gerçekleştirebiliriz -

  • Load
  • Prepare
  • Manipulate
  • Model
  • Analyze

Pandalarda veri gösterimi

Pandalar'daki verilerin tüm temsili, aşağıdaki üç veri yapısının yardımıyla yapılır -

Series- Temelde eksen etiketli tek boyutlu bir ndarray, yani homojen verilere sahip basit bir dizi gibi. Örneğin, aşağıdaki seri 1,5,10,15,24,25 ... tam sayılarından oluşan bir koleksiyondur.

1 5 10 15 24 25 28 36 40 89

Data frame- En kullanışlı veri yapısıdır ve pandalarda hemen hemen her türlü veri gösterimi ve manipülasyonu için kullanılır. Temelde heterojen verileri içerebilen iki boyutlu bir veri yapısıdır. Genel olarak, tablo verileri, veri çerçeveleri kullanılarak temsil edilir. Örneğin, aşağıdaki tablo, adlarını ve rulo numaralarını, yaşlarını ve cinsiyetlerini belirten öğrencilerin verilerini göstermektedir -

İsim Rulo numarası Yaş Cinsiyet
Aarav 1 15 Erkek
Harshit 2 14 Erkek
Kanika 3 16 Kadın
Mayank 4 15 Erkek

Panel- Heterojen verileri içeren 3 boyutlu bir veri yapısıdır. Paneli grafik olarak göstermek çok zordur, ancak bir DataFrame kabı olarak gösterilebilir.

Aşağıdaki tablo, Pandalarda kullanılan yukarıda belirtilen veri yapıları hakkında bize boyut ve açıklama verir -

Veri yapısı Boyut Açıklama
Dizi 1-D Değişmez boyut, 1-D homojen veriler
Veri Çerçeveleri 2 boyutlu Boyut Değişken, Heterojen veriler tablo biçiminde
Panel 3 BOYUTLU Boyut değiştirilebilir dizi, DataFrame kapsayıcısı.

Bu veri yapılarını, daha yüksek boyutlu veri yapısı, daha düşük boyutlu veri yapısının konteyneri olduğu için anlayabiliriz.

Kurulum ve Yürütme

Anaconda dağıtımını kullanıyorsanız, zaten yüklü olduğu için Pandas'ı ayrı olarak kurmanıza gerek yoktur. Sadece aşağıdakilerin yardımıyla paketi Python betiğinize aktarmanız gerekir -

import pandas as pd

Öte yandan, standart Python dağıtımını kullanıyorsanız Pandalar, popüler python paketi yükleyicisi pip kullanılarak yüklenebilir.

pip install Pandas

Pandaları kurduktan sonra, yukarıda yaptığınız gibi Python betiğinize aktarabilirsiniz.

Misal

Aşağıda Pandas kullanarak ndarray'den bir dizi oluşturmanın bir örneği verilmiştir -

In [1]: import pandas as pd

In [2]: import numpy as np

In [3]: data = np.array(['g','a','u','r','a','v'])

In [4]: s = pd.Series(data)

In [5]: print (s)

0 g
1 a
2 u
3 r
4 a
5 v

dtype: object

Pandalar hakkında daha ayrıntılı çalışma için www.tutorialspoint.com/python_pandas/index.htm bağlantısına gidebilirsiniz .

Scikit-öğrenme

Python'da Veri Bilimi ve makine öğrenimi için bir başka kullanışlı ve en önemli python kitaplığı Scikit-learn'dur. Aşağıdakiler, Scikit-learn'ün onu bu kadar kullanışlı kılan bazı özellikleridir -

  • NumPy, SciPy ve Matplotlib üzerine inşa edilmiştir.

  • Açık kaynaktır ve BSD lisansı altında yeniden kullanılabilir.

  • Herkes tarafından erişilebilir ve çeşitli bağlamlarda yeniden kullanılabilir.

  • ML'nin sınıflandırma, kümeleme, regresyon, boyut azaltma, model seçimi gibi ana alanlarını kapsayan çok çeşitli makine öğrenimi algoritmaları bunun yardımıyla uygulanabilir.

Kurulum ve Yürütme

Anaconda dağıtımını kullanıyorsanız, zaten yüklü olduğu için Scikit-learn'ü ayrıca kurmanıza gerek yoktur. Paketi Python betiğinizde kullanmanız yeterlidir. Örneğin, aşağıdaki komut dosyası satırıyla meme kanseri hastalarının veri setiniScikit-learn -

from sklearn.datasets import load_breast_cancer

Öte yandan, standart Python dağıtımını kullanıyorsanız ve NumPy ve SciPy'ye sahipseniz, Scikit-learn popüler python paket yükleyicisi pip kullanılarak yüklenebilir.

pip install -U scikit-learn

Scikit-learn'ü kurduktan sonra, yukarıda yaptığınız gibi Python betiğinizde kullanabilirsiniz.