Python Yeni Başlayanlar İçin Tam Kurs

Share

Summary

Bu kurs, Python programlamaya başlamak için ihtiyacınız olan her şeyi öğrenmek için tasarlanmıştır. Temel kavramlardan başlayarak üç Python projesi oluşturulacak ve Excel'den makine öğrenimine ve Django ile web uygulamalarına kadar çeşitli alanlarda pratik beceriler kazanılacaktır.

Highlights

Giriş ve Python'ın Gücü
00:00:00

Eğitmen Mosh, Python kursuna giriş yapıyor ve Python'ın otomasyon, yapay zeka, web uygulamaları ve web siteleri (Instagram, Dropbox gibi) oluşturmada nasıl kullanıldığını açıklıyor. Kariyer fırsatlarına vurgu yaparak kursun içeriğini özetliyor: temel kavramlar ve üç proje oluşturma.

Python Kurulumu ve İlk Program
00:01:52

Python'ı bilgisayarınıza nasıl indireceğinizi ve kuracağınızı adım adım anlatıyor. Python yorumlayıcısının ne olduğunu ve bir kod düzenleyici olan PyCharm'ı nasıl kuracağınızı gösteriyor. Ayrıca 'Merhaba Dünya' programını yazarak Python'daki ilk adımları atıyor ve Python kodunun nasıl çalıştırıldığını gösteriyor.

Python Kodunun Çalışma Mantığı ve İfadeler
00:08:16

print fonksiyonu ile çıktı vermeye devam ediyor ve Python kodunun satır satır nasıl derlendiğini açıklıyor. 'String' ve 'ifade' gibi temel programlama terimlerini açıklayarak, bu terimlerin Python'da nasıl kullanıldığını basit örneklerle gösteriyor.

Python Öğrenme Süreci ve Kariyer Yolu
00:11:24

Python öğrenmenin ne kadar sürdüğü ve bir işte yeterli olabilmek için ne kadar zaman gerektiği üzerine konuşuyor. Belirli Python uzmanlık alanlarını (web geliştirme, makine öğrenimi) ve HTML, CSS, JavaScript, Django gibi ek öğrenilmesi gereken teknolojileri anlatıyor. Yıllık maaş beklentileri ve kariyer gelişimini de ele alıyor.

Değişkenler ve Veri Tipleri
00:13:08

Programlamanın temel kavramlarından biri olan değişkenleri tanıtıyor. Değişkenlerin, geçici olarak bilgisayarın belleğinde veri depolamak için nasıl kullanıldığını açıklıyor. Ardından Python'daki temel veri tiplerini (tam sayılar, ondalıklı sayılar, dizeler ve boolean değerler) örneklerle açıklıyor ve hastane senaryosuyla pratik bir alıştırma sunuyor.

Kullanıcıdan Girdi Alma ve Tür Dönüşümü
00:18:24

Kullanıcıdan girdi almak için 'input' fonksiyonunu tanıtıyor. 'print' ve 'input' gibi yerleşik Python fonksiyonlarını açıklıyor ve kullanıcı girdisinin her zaman bir dize olarak alındığını vurguluyor. Dize girdilerinin sayısal değerlere dönüştürülmesinin (int, float) önemini, yaş hesaplama örneği ve potansiyel hatalar (TypeError, ValueError) üzerinden gösteriyor. Kilogram dönüştürme alıştırması ile bu konuyu pekiştiriyor.

Python Dizeleri ve Operasyonları
00:29:36

Python dizelerinin daha derinlemesine incelenmesini ele alıyor. Tek ve çift tırnakların kullanımı, çok satırlı dizeler (üç tırnak) ve dizelerde indeksleme (pozitif ve negatif indeksler) ve dilimleme (belli bir aralıktaki karakterleri seçme) gibi konulara değiniyor. 'len', 'upper', 'lower', 'find', 'replace', 'in' gibi dize metodlarını ve operatörlerini pratik örneklerle açıklıyor.

Aritmetik Operatörler ve İşlem Önceliği
00:48:32

Python'daki temel aritmetik operatörleri (toplama, çıkarma, çarpma, bölme, modülüs, üs alma) tanıtıyor. Augmented assignment operatörlerinin (+=, -=, vb.) kullanımını gösteriyor ve matematikteki işlem önceliği kurallarının (üs > çarpma/bölme > toplama/çıkarma) Python'da nasıl uygulandığını örneklerle açıklıyor. Parantezlerin işlem önceliğini nasıl değiştirdiğini vurguluyor.

Sayılarla Çalışma Fonksiyonları ve Math Modülü
00:55:08

Sayılarla çalışırken kullanılan bazı yararlı yerleşik fonksiyonları ('round' ve 'abs') tanıtıyor. Daha karmaşık matematiksel işlemler için 'math' modülünün ('import math') nasıl kullanılacağını ('math.ceil', 'math.floor') ve Python dokümantasyonundan diğer fonksiyonları nasıl bulabileceğimizi gösteriyor. Modül kavramını bir süpermarket metaforuyla açıklıyor.

Koşullu İfadeler (If Statements)
00:58:24

Programların kararlar almasını sağlayan 'if' ifadelerini tanıtıyor. 'if', 'elif' (else if) ve 'else' yapılarının kullanımını bir hava durumu senaryosu üzerinden açıklıyor. Kod bloklarının girintili olmasının önemini vurguluyor. İyi bir kredi notu olan alıcılar için konut peşinatı hesaplama alıştırması sunuyor.

Mantıksal Operatörler (Logical Operators)
01:06:36

Birden fazla koşulu birleştirmek için kullanılan mantıksal operatörleri ('and', 'or', 'not') tanıtıyor. Kredi uygulaması senaryosu üzerinden bu operatörlerin nasıl kullanıldığını pratik örneklerle açıklıyor. 'and' (tüm koşullar doğru olmalı), 'or' (en az bir koşul doğru olmalı) ve 'not' (boolean değeri ters çevirme) arasındaki farkları vurguluyor.

Karşılaştırma Operatörleri (Comparison Operators)
01:11:32

Değişkenleri belirli değerlerle karşılaştırmak için kullanılan karşılaştırma operatörlerini (>, <, >=, <=, ==, !=) açıklıyor. Sıcaklık senaryosu üzerinden bu operatörlerin kullanımını gösteriyor ve atama operatörü (=) ile eşitlik operatörü (==) arasındaki farkı vurguluyor. Kullanıcı adı doğrulama alıştırması ile öğrendiklerini pekiştiriyor.

Uygulama: Kilo Dönüştürücü
01:24:08

Önceki derslerde öğrendiği konuları (girdi alma, veri tipi dönüşümü, mantıksal ve karşılaştırma operatörleri) birleştiren bir kilo dönüştürücü programı geliştiriyor. Kullanıcıdan kilosunu veya pounds olarak ağırlığını girmesini istiyor ve ardından diğer birime dönüştürüyor. Bu uygulama, önceki bilgilerin pekiştirilmesi için kapsamlı bir pratik sunuyor.

While Döngüleri
01:20:52

Kod bloklarını birden çok kez çalıştırmak için kullanılan 'while' döngülerini tanıtıyor. Döngü koşullarının önemini, sonsuz döngüden kaçınmayı ve döngü değişkenlerinin nasıl artırılacağını örneklerle açıklıyor. Jupiter'deki output'u ve `break` ifadesinin bir döngüyü anında sonlandırma yeteneğini gösteriyor.

Uygulama: Tahmin Oyunu
01:24:16

Bir 'while' döngüsü kullanarak basit bir tahmin oyunu geliştiriyor. Kullanıcıya belirli sayıda tahmin hakkı vererek gizli bir sayıyı tahmin etmesini istiyor. 'break' ifadesinin bir döngüyü erken sonlandırmada nasıl kullanıldığını ve 'else' bloğunun döngü normal tamamlandığında nasıl çalıştığını gösteriyor. Oyuncuların kazandığında veya kaybettiğinde nasıl mesajlar verileceğini açıklıyor.

Uygulama: Araba Oyunu
01:31:00

Kullanıcının komutlarla bir arabanın durumunu (başlatma, durdurma, yardım) kontrol ettiği bir simülasyon oyunu geliştiriyor. 'while' döngüsü, 'if-elif-else' koşulları ve 'dry' (kendini tekrar etme) prensibinin önemini vurguluyor. Çok satırlı dizelerin kullanımı ve büyük/küçük harf duyarsızlığı gibi konuları ele alıyor. Ek olarak, arabanın zaten çalışır durumda veya durdurulmuş olması durumunda farklı mesajlar gösterme yeteneğini ekliyor.

For Döngüleri
01:42:00

Koleksiyonlardaki (stringler, listeler) öğeler üzerinde yineleme yapmak için 'for' döngülerini tanıtıyor. 'range' fonksiyonunun belirli bir sayı aralığı oluşturmak için nasıl kullanıldığını açıklıyor. Alışveriş sepetindeki ürünlerin toplam maliyetini hesaplama alıştırması ile 'for' döngülerinin pratik uygulamalarını gösteriyor.

İç İçe Döngüler (Nested Loops)
01:47:56

Bir döngünün içine başka bir döngü ekleyerek (iç içe döngüler) koordinat listeleri gibi karmaşık yapıları nasıl oluşturulacağını gösteriyor. İç içe döngülerin çalışma mantığını adım adım açıklıyor. Zorlayıcı bir alıştırma olarak, 'f' harfi şeklinde X deseni çizme görevini veriyor (hem pratik hem de Python'un dize çarpım özelliğini anlamak için).

Listeler ve Liste Metodları
01:59:56

Python'daki listeleri tanıtıyor. Listelerin nasıl tanımlandığını, öğelere indeksler (pozitif ve negatif) ve dilimleme ile nasıl erişildiğini açıklıyor. Listelerin değiştirilme (mutable) özelliği üzerinde duruyor ve liste metodlarını ('append', 'insert', 'remove', 'clear', 'pop', 'index', 'count', 'sort', 'reverse', 'copy') geniş örneklerle gösteriyor. Listelerdeki tekrarlayan öğeleri kaldırma alıştırmasını yapıyor.

Tuple'lar
02:13:36

Listelere benzer bir veri yapısı olan tuple'ları tanıtıyor. Tuple'ların temel farkının değiştirilemez (immutable) olmaları olduğunu vurguluyor, yani bir kere oluşturulduktan sonra öğeleri eklenemez, kaldırılamaz veya değiştirilemez. Tuple'lara erişim yöntemlerini (indeksleme) ve listelerle karşılaştırmalarını yapıyor. Sadece 'count' ve 'index' metodlarının kullanılabilir olduğunu gösteriyor.

Atamayı Çözme (Unpacking)
02:15:24

Python'daki 'unpacking' özelliğini tanıtıyor. Bu özelliğin, tuple veya liste gibi bir koleksiyondaki öğeleri birden fazla değişkene aynı anda atamak için nasıl kullanıldığını gösteriyor. Koordinat örneği üzerinden kodun daha kısa ve okunabilir hale nasıl getirildiğini açıklıyor. Bu özelliğin hem liste hem de tuple'da geçerli olduğunu belirtiyor.

Sözlükler (Dictionaries)
02:18:32

Anahtar-değer çiftleri halinde bilgi depolamak için kullanılan sözlükleri tanıtıyor. Müşteri bilgileri örneği üzerinden sözlüklerin nasıl tanımlandığını, öğelere anahtarla nasıl erişildiğini ('customer[key]' veya 'customer.get(key)') ve değerlerin nasıl güncellendiğini veya yeni anahtar-değer çiftlerinin nasıl eklendiğini detaylıca açıklıyor. Telefon numaralarını kelimelere dönüştüren bir alıştırma yapıyor.

Uygulama: Emoji Dönüştürücü
02:26:28

Sözlüklerin gerçek dünya uygulamalarına bir örnek olarak bir emoji dönüştürücü programı oluşturuyor. Kullanıcının girdiği metindeki belirli karakter dizisi (smiley yüzler) otomatik olarak emojilere dönüştürülüyor. 'split' metodunu ve sözlükleri kullanarak metni kelimelere ayırmayı ve ardından bu kelimeleri emojilerle eşleştirmeyi gösteriyor.

Fonksiyonlar (Functions)
02:30:48

Kod organizasyonu ve yeniden kullanılabilirlik için fonksiyonları tanıtıyor. 'def' anahtar kelimesiyle fonksiyonların nasıl tanımlandığını, adlandırma kurallarını ve girintinin bir fonksiyonun bloğunu nasıl tanımladığını açıklıyor. Fonksiyonların program akışını nasıl etkilediğini ve ne zaman çağrıldıklarını örneklerle gösteriyor. Python'daki 'PEP 8' gibi kodlama standartlarına da değiniyor.

Fonksiyon Parametreleri ve Argümanları
02:35:32

Fonksiyonlara bilgi nasıl geçirileceğini öğreniyor. Parametrelerin (yer tutucular) ve argümanların (fonksiyona sağlanan gerçek değerler) ne olduğunu açıklıyor, ikisi arasındaki farkı vurguluyor. Konumsal argümanları, sıra bağımsız anahtar kelime argümanlarını ve bunların kod okunabilirliğini nasıl artırdığını gösteriyor. Konumsal argümanlardan sonra anahtar kelime argümanlarının gelme kuralını vurguluyor.

Fonksiyonlardan Değer Döndürme
02:45:00

Fonksiyonlardan değer döndürmeyi ('return' ifadesi) öğretiyor. Bir fonksiyonun bir hesaplama sonucunu nasıl dışarıya vereceğini açıklıyor. Bir fonksiyonun 'return' ifadesi olmadığında varsayılan olarak 'None' döndürdüğünü vurguluyor. Bu, fonksiyonların karmaşık hesaplamalar yaparak sonuçları ana programa geri iletmesini sağlıyor.

Uygulama: Emoji Dönüştürücüyü Fonksiyonlaştırma
02:49:04

Önceki emoji dönüştürücü programını yeniden düzenliyor, böylece çekirdek dönüştürme mantığı ayrı bir fonksiyona ('emoji_converter') alınıyor. Fonksiyonların yeniden kullanılabilirliğini artırmak için girdi alma ve çıktı görüntüleme gibi işlemleri fonksiyondan ayırmanın önemini vurguluyor. Bu, kodun daha modüler ve bakımı daha kolay olmasını sağlıyor.

Hata Yönetimi (Error Handling)
02:53:52

Python programlarında hataları ('exception' olarak da adlandırılır) nasıl yöneteceğimizi öğretiyor. Kullanıcıdan yaş alırken 'ValueError' ve sıfıra bölme hatası ('ZeroDivisionError') gibi yaygın hataları ele almak için 'try' ve 'except' bloklarını tanıtıyor. Programların çökmesini önlemenin ve kullanıcıya anlamlı hata mesajları vermenin önemini vurguluyor.

Yorumlar (Comments)
02:59:28

Python'da kodlara notlar veya açıklamalar eklemek için yorumların nasıl kullanılacağını ('#') açıklıyor. Yorumların amacını (neyi not ettiğimiz, ne için not ettiğimiz, diğer geliştiricilerle iletişim) ve kötü yorum örneklerini (bariz olanı açıklama, güncel olmayan yorumlar) gösteriyor. Kodda 'neden' ve 'nasıl' sorularına odaklanan iyi yorum yazma pratiğini teşvik ediyor.

Sınıflar (Classes)
03:02:00

Python'da yeni veri tipleri tanımlamak için sınıfları tanıtıyor. Sınıfların temel tiplerden (sayılar, dizeler) ve karmaşık tiplerden (listeler, sözlükler) farkını açıklıyor. Bir 'Point' sınıfı örneği üzerinden, sınıfların nasıl tanımlandığını (Pascal Case adlandırma kuralı), metodların ('move', 'draw') ve niteliklerin ('x', 'y') nasıl eklendiğini gösteriyor. Nesnelerin bir sınıfın örnekleri olduğunu vurguluyor.

Constructor'lar
03:08:00

Sınıflarda 'constructor' (yapıcı) kavramını tanıtıyor. 'constructor'ın, bir nesne oluşturulduğunda otomatik olarak çağrılan özel bir metod ('__init__') olduğunu açıklıyor. Bir noktanın x ve y koordinatlarını başlatmak gibi, nesne oluşturma anında nitelikleri ayarlamak için 'constructor'ların nasıl kullanıldığını gösteriyor. 'self' parametresinin geçerli nesneyi temsil ettiğini vurguluyor. 'Person' sınıfı örneği ile pratik bir alıştırma yapıyor.

Miras (Inheritance)
03:14:56

Python'da kod tekrarını önlemek ve yeniden kullanılabilirliği artırmak için miras kavramını tanıtıyor. Bir 'Mammal' (Memeli) sınıfı oluşturarak ortak metodları (örneğin 'walk') nasıl tanımlayacağımızı ve 'Dog' (Köpek) ile 'Cat' (Kedi) gibi alt sınıfların bu metodları nasıl miras alacağını gösteriyor. 'pass' anahtar kelimesinin boş bir sınıf veya metod bloğu için nasıl kullanılacağını açıklıyor. Özellikleri ve davranışları ebeveynlerden devralma konseptini ele alıyor.

Modüller (Modules)
03:19:48

Python'da kod organizasyonu ve yeniden kullanılabilirlik için modülleri (Python kod dosyaları) tanıtıyor. Kodları birden fazla dosyaya bölmenin (örneğin 'converters.py' modülü) ve bu modülleri diğer modüllere ('app.py' modülü) 'import' ifadesiyle nasıl dahil edeceğimizi gösteriyor. Modül içindeki belirli fonksiyonları veya tüm modülü içe aktarma arasındaki farkı açıklıyor. 'utils' modülü ve 'find_max' fonksiyonuyla pratik bir alıştırma yapıyor.

Dahili Modüller (Built-in Modules)
03:36:36

Python'ın zengin standart kütüphanesini ve dahili modüllerini tanıtıyor. Python'da e-posta gönderme, tarih ve saat işlemleri, rastgele değerler oluşturma gibi genel görevler için yerleşik modüllerin önemini açıklıyor. Özellikle 'random' modülünü kullanarak rastgele sayılar ve listeden öğe seçimi örnekleri gösteriyor. 'Dice' (Zar) sınıfı ile rastgele sayı üretimi için pratik bir alıştırma yapıyor ve PEP 8 gibi kodlama standartlarına tekrar değiniyor.

Dizinlerle Çalışma (Working with Directories)
03:44:52

Python'da dizinlerle ve dosyalarla çalışmak için 'pathlib' modülünü tanıtıyor. Mutlak ve göreceli yolların ne olduğunu açıklıyor. 'Path' nesnesi oluşturmayı, bir dosya veya dizinin varlığını kontrol etmeyi, yeni bir dizin oluşturmayı ('mkdir') ve silmeyi ('rmdir') gösteriyor. 'glob' metodunu kullanarak belirli bir dizindeki belirli dosya türlerini (örneğin '.py' dosyaları) bulmayı ve sonuçları işlemeyi öğretiyor. Excel otomasyonuna giriş yapıyor.

Excel Dosyalarını İşleme - Proje 1
03:56:16

Python ile Excel dosyalarını otomatik olarak işlemeyi içeren ilk büyük projeye başlıyor. 'openpyxl' kütüphanesini kullanarak bir Excel dosyasını ('transactions.xlsx') yüklemeyi, belirli hücrelere erişmeyi ve değerlerini değiştirmeyi gösteriyor. Özellikle fiyatları %10 azaltma ve yeni düzeltilmiş fiyatlarla dördüncü bir sütun ekleme görevini ele alıyor. Oluşturulan dosyayı yeni bir isimle kaydetmeyi de gösteriyor.

Excel Dosyalarına Grafik Ekleme
04:05:00

Excel otomasyonuna devam ediyor ve 'openpyxl' kütüphanesini kullanarak bir Excel dosyasına çubuk grafik eklemeyi gösteriyor. Grafik oluşturmak için 'BarChart' sınıfını ve bir veri aralığını seçmek için 'Reference' sınıfını nasıl kullanacağımızı açıklıyor. Fiyat verilerini içeren yeni bir sütundaki değerleri kullanarak basit bir çubuk grafik oluşturuyor ve grafiği Excel sayfasına yerleştiriyor. Son olarak tüm kodu bir fonksiyona sarmalamak için refactoring yapıyor, bu da kodun yeniden kullanılabilirliğini artırıyor.

Makine Öğrenimi: Giriş
04:11:08

Makine öğrenimine (yapay zekanın bir alt kümesi) giriş yapıyor. Geleneksel programlama teknikleriyle çözülmesi zor olan kedi/köpek tanıma gibi problemleri makine öğreniminin nasıl çözdüğünü açıklıyor. Makine öğreniminde bir modelin nasıl oluşturulduğunu, büyük miktarda veriyle nasıl eğitildiğini ve bilinmeyen veriler hakkında tahminler yapmak için nasıl kullanıldığını genel hatlarıyla anlatıyor. Kapsama alanları arasında sürücüsüz arabalar, robotik ve tahmin yer alıyor.

Makine Öğrenimi Projesi Adımları
04:13:00

Bir makine öğrenimi projesindeki adımları ayrıntılı olarak açıklıyor: (1) Veri İçe Aktarma (CSV genellikle), (2) Veri Temizliği (tekrarlayan, eksik veya alakasız verileri kaldırma, metinleri sayısal değerlere dönüştürme), (3) Veriyi Bölme (antrenman ve test setlerine), (4) Model Oluşturma (algoritma seçimi), (5) Modeli Antrenman (veriyle besleme), (6) Tahmin Yapma ve (7) Tahminleri Değerlendirme (doğruluk ölçümü ve model iyileştirme).

Makine Öğrenimi Kütüphaneleri ve Araçları
04:15:52

Makine öğrenimi için popüler Python kütüphanelerini tanıtıyor: 'Numpy' (çok boyutlu diziler için), 'Pandas' (veri analizi ve 'DataFrame'ler için), 'Matplotlib' (grafik çizimi için) ve 'Scikit-learn' (çeşitli makine öğrenimi algoritmaları için). Bu kütüphanelerle çalışmak için en iyi ortam olan 'Jupyter Notebook'u tanıtıyor ve 'Anaconda' üzerinden kurulumunu gösteriyor. İlk 'jupyter' notebook'unu oluşturuyor ve temel Python kodunu çalıştırıyor.

Jupyter Notebook'ta Veri Yükleme
04:20:48

Jupyter Notebook'ta veri yüklemeyi ve işlemeyi gösteriyor. Kaggle.com'dan ('video game sales.csv') popüler bir veri setini indiriyor. 'Pandas' kütüphanesini kullanarak bu CSV dosyasını bir 'DataFrame'e nasıl yükleyeceğimizi ('pd.read_csv') ve temel özelliklerini (örneğin 'shape' ile boyutları, 'describe' ile istatistikleri) nasıl inceleyeceğimizi öğretiyor. Pandas DataFrame'in ne kadar etkili olduğunu gösteriyor.

Jupyter Notebook Kısayolları
04:27:08

Jupyter Notebook'ta verimliliği artıran en kullanışlı klavye kısayollarını tanıtıyor. Hücre modları (düzenleme modu (yeşil) ve komut modu (mavi)) arasında geçiş yapmayı, yeni hücreler eklemeyi ('a' veya 'b'), hücreleri silmeyi ('dd'), hücreleri çalıştırmayı (Ctrl+Enter) ve otomatik tamamlamayı ('Tab') gösteriyor. Ayrıca 'Shift+Tab' ile metod dokümantasyonunu görüntülemeyi ve yorum ekleme/kaldırma kısayollarını da ele alıyor.

Müzik Tavsiye Sistemi - Proje 2
04:32:32

Makine öğrenimi projesi olarak bir müzik tavsiye sistemi oluşturmaya başlıyor. Projenin amacını, yaş ve cinsiyet gibi kullanıcı profillerine göre müzik türleri (hip hop, caz, klasik, dans, akustik) önermek olarak belirleniyor. Yapay bir 'music.csv' veri setini tanıtıyor ve bu veri setini 'pandas' ile Jupyter Notebook'a nasıl yükleyeceğimizi gösteriyor. Projenin sonraki adı olan veri hazırlığı hakkında bilgi veriyor.

Veri Hazırlığı ve Bölme
04:35:48

Makine öğrenimi projelerinde veri hazırlığının ikinci adımı olarak, 'music.csv' veri setini antrenman için girdi ('X') ve çıktı ('y') setlerine nasıl böleceğimizi gösteriyor. 'DataFrame.drop' metodunu kullanarak girdi setini oluşturuyor ve çıktı setini (müzik türü) ayrı bir 'DataFrame' olarak alıyor. Bu ayrımın, modelin öğrenme sürecinde ve tahmin yaparken neden gerekli olduğunu açıklıyor.

Model Oluşturma ve Antrenörlük
04:38:52

Veri setini kullanarak bir makine öğrenimi modeli nasıl oluşturulacağını gösteriyor. Özellikle 'Scikit-learn' kütüphanesinden 'DecisionTreeClassifier' algoritmasını kullanıyor. Model nesnesini oluşturmayı ve 'model.fit(X, y)' metodunu kullanarak antrenman veri setleriyle modeli eğitmeyi açıklıyor. Modelin yeni veri setlerinde nasıl tahminler yapacağını ('model.predict') gösteriyor ve yaşa ve cinsiyete göre müzik önerileri örneği yapıyor.

Model Doğruluğunu Ölçme
04:42:56

Makine öğrenimi modellerinin doğruluğunu nasıl ölçeceğimizi gösteriyor. Veri setini antrenman ve test setlerine bölmek için 'sklearn.model_selection' modülünden 'train_test_split' fonksiyonunu tanıtıyor. Antrenman veri setini model eğitimi için kullanıyor ve test veri setini tahminlerin doğruluğunu değerlendirmek için kullanıyor. 'sklearn.metrics' modülünden 'accuracy_score' fonksiyonunu kullanarak modelin doğruluğunu hesaplıyor ve çıkan sonuçları yorumluyor (test boyutu ve veri miktarı gibi faktörlerin doğruluk üzerindeki etkisi).

Model Kalıcılığı
04:49:16

Makine öğrenimi modelinin kalıcılığını (model 'dump' ve 'load') nasıl sağlayacağımızı gösteriyor. Bir modeli eğittikten sonra, her seferinde yeniden eğitmek yerine kalıcı olarak bir dosyaya ('joblib' kütüphanesi) nasıl kaydedeceğimizi açıklıyor. Gelecekte yeni tahminler yapmak için eğitilmiş modeli bu dosyadan nasıl yükleyeceğimizi gösteriyor. Bu teknik, büyük veri setleriyle çalışırken zaman tasarrufu sağlıyor.

Karar Ağacı Modelini Görselleştirme
04:52:32

Eğitilmiş karar ağacı modelini görsel formatta dışa aktarmayı gösteriyor. 'sklearn.tree' modülünden 'export_graphviz' fonksiyonunu kullanarak modeli '.dot' formatına dönüştürüyor. VS Code'da 'Graphviz' uzantısı ile bu '.dot' dosyasını görselleştirmeyi ve modelin tahminleri nasıl yaptığını gösteren bir ağaç yapısını analiz etmeyi açıklıyor. Karar ağacındaki her düğümün bir koşulu, her dalın bir kararı ve her yaprak düğümünün bir sınıfı temsil ettiğini açıklıyor.

Django ile Web Uygulamaları - Proje 3
04:59:24

Python'ın popüler web çatısı olan Django ile ilk web uygulamasını oluşturmaya başlıyor. Bir web çatısının (framework) ne olduğunu ve neden kullanıldığını (yeniden kullanılabilirlik, yapı) açıklıyor. Instagram ve Spotify gibi Django ile oluşturulmuş bazı popüler web sitelerini örnek veriyor. 'pyShop' adında yeni bir Django projesi oluşturuyor ve Django'yu 'pip install django==2.1' komutu ile kuruyor. Projenin dosya yapısını ('settings.py', 'urls.py', 'wsgi.py', 'manage.py') ve `runserver` komutunu kullanarak nasıl çalıştırıldığını açıklıyor.

Recently Summarized Articles

Loading...