Skip to content

Latest commit

 

History

History
301 lines (183 loc) · 18.1 KB

readme.tr.md

File metadata and controls

301 lines (183 loc) · 18.1 KB

GitHub repo size GitHub stars GitHub forks Twitter Follow tr

Makine Öğrenimi ve Derin Öğrenme için Sıfırdan İleri Seviyeye Giden Yol

Aşama 1: Programlama ve Makine Öğrenimine Başlarken

  1. Python Temelleri:
  1. Nesne Yönelimli Programlama (OOP):

İsteğe bağlı: Git ve Bash Temellerini Öğrenme

Git ile Sürüm Kontrolü:

Bash Temelleri:

  1. Makine Öğrenimi İçin Matematik:
  1. Ayrık(Discrete) Matematik:
  1. Algoritmaların Analizi:
  1. Makine Öğrenimine Giriş:
  • Aşağıdaki alt konuları kapsayan başlangıç seviyesindeki bir makine öğrenimi kursuna kaydolun:

Örnek Tabanlı Yöntemler:

Model Tabanlı Yöntemler:

Denetimli(Supervised) Öğrenme:

Denetimsiz(Unsupervised) Öğrenme:

Model Değerlendirme(Model Evaluation) ve Hiperparametre Ayarlama(Hyperparameter Tuning):

  1. Veri Ön İşleme:

Verileri makine öğrenimi modellerine hazırlamak için veri temizleme, özellik ölçekleme, eksik değerleri işleme ve veri normalleştirme gibi veri ön işleme teknikleri hakkında bilgi edinin. Veri Bilimine Doğru - Veri Temizleme ve Ön İşleme: https://medium.com/analytics-vidhya/data-cleaning-and-preprocessing-a4b751f4066f

  1. Veri Artırma:

Mevcut veri örneklerine çeşitli dönüşümler uygulayarak bir eğitim veri kümesinin boyutunu yapay olarak genişletmek için kullanılan bir teknik olan veri artırmayı anlayın. Python'da Görüntü Verileri için Veri Büyütme: https://towardsdatascience.com/data-augmentation-for-deep-learning-4fe21d1a4eb9

  1. Uygulamalı Projeler:

Scikit-learn gibi kütüphaneleri kullanarak küçük makine öğrenimi projeleri ile becerilerinizi geliştirin. Projelerinize veri ön işleme ve veri artırma tekniklerini dahil edin. GitHub Depoları ve Kaggle Kernel'leri, başlamanız için çok sayıda yeni başlayan dostu makine öğrenimi projesi sunar.

2. Aşama: Derin Öğrenmeyi Keşfetme

  1. Sinir Ağları ve Derin Öğrenme:
  1. TensorFlow ve Keras:
  1. Görüntü İşleme Temelleri:
  • Görüntü Gösterimi(Image Representation): Dijital görüntülerin piksel matrisleri olarak nasıl temsil edildiğini ve OpenCV ve Pillow gibi kütüphaneleri kullanarak görüntülerin nasıl yükleneceğini ve görüntüleneceğini anlayın.
  • Piksel İşlemleri(Pixel Operations): Renk manipülasyonu, parlaklık ayarı ve eşikleme gibi temel piksel düzeyinde işlemleri öğrenin.
  • Görüntü Filtreleme(Image Filtering): Konvolüsyonel çekirdekleri kullanarak bulanıklaştırma, keskinleştirme, kenar algılama ve gürültü azaltma dahil olmak üzere çeşitli görüntü filtreleme tekniklerini inceleyin.
  • Görüntü Dönüşümleri(Image Transforms): Görüntülerin uzamsal yönelimini değiştirmek için döndürme, ölçekleme, öteleme ve afin dönüşümleri gibi görüntü dönüştürme tekniklerini keşfedin.
  • Histogram Eşitleme(Histogram Equalization): Görüntü kontrastını iyileştirmek ve görüntülerdeki ayrıntıları geliştirmek için histogram eşitlemeyi anlayın.
  • Görüntü Segmentasyonu(Image Segmentation): Bir görüntüyü anlamlı bölgelere veya nesnelere ayırmak için görüntü segmentasyon teknikleri hakkında bilgi edinin.
  • Morfolojik İşlemler(Morphological Operations): Görüntü işleme görevleri için erozyon ve dilatasyon gibi morfolojik işlemleri inceleyin.
  • Görüntü Sıkıştırma(Image Compression): Önemli bir kalite kaybı olmadan görüntülerin dosya boyutunu azaltmak için görüntü sıkıştırma tekniklerini anlayın.
  • Özellik Çıkarma(Feature Extraction): Renk histogramları, HOG (Histogram of Oriented Gradients) ve SIFT (Scale-Invariant Feature Transform) gibi görüntülerden anlamlı bilgi çıkarmaya yönelik özellik çıkarma yöntemleri hakkında bilgi edinin.

Kaynaklar:

  1. Bilgisayarla Görme Temelleri(Computer Vision Fundamentals):
  • Özellik algılama, görüntü eşleştirme ve nesne tanıma teknikleri dahil olmak üzere bilgisayarla görmenin temellerini öğrenin.
  • Özellik Algılama ve Eşleştirme: SIFT, SURF ve ORB gibi özellik algılama algoritmalarını ve bunların görüntü eşleştirme için nasıl kullanılacağını anlayın.
  • Nesne Algılama: Haar kaskadları ve YOLO ve SSD gibi derin öğrenme tabanlı yaklaşımlar gibi nesne algılama tekniklerini inceleyin.
  1. Bilgisayarla Görme için Evrişimsel Sinir Ağları (Convolutional Neural Networks (CNNs) for Computer Vision):
  • CNN mimarilerini, görüntü tanıma için transfer öğrenmeyi ve CNN'leri kullanarak nesne algılamayı anlayın.

  • Fast.ai'nin Kodlayıcılar için Pratik Derin Öğrenme kursu: https://course.fast.ai/

  • Stanford CS231n: Görsel Tanıma için Evrişimsel Sinir Ağları: http://cs231n.stanford.edu/ Vision Transformers (ViT):

  • Vision Transformer, son yıllarda büyük ilgi gören görüntü tanıma görevleri için güçlü bir mimaridir.

  • Bir Görüntü 16x16 Sözcük Değerindedir: Ölçekte Görüntü Tanıma için Dönüştürücüler: https://arxiv.org/abs/2010.11929

  1. Doğal Dil İşleme:
  1. Dönüştürücüler ve Önceden Eğitilmiş Modeller(Transformers and Pre-trained Models):
  1. Zaman Serisi Analizi:
  1. Derin Öğrenme ile Zaman Serisi Tahmini(Time Series Forecasting):
  1. Ses İşleme(Audio Processing) ve Konuşma Tanıma(Speech Recognition):
  • Ses sinyali işleme, konuşma tanıma ve konuşmadan metne uygulamaları üzerinde çalışın.
  • Mozilla'nın Ses ve Konuşma için Derin Öğrenmesi: https://github.com/mozilla/DeepSpeech

Aşama 3: Model Dağıtımı ve MLOps Model Dağıtımı:

  1. Model Dağıtımı:
  1. MLOps:
  1. Makine Öğrenmesi Modellerinin İzlenmesi ve Ölçeklendirilmesi:
  1. Model Versiyonlama ve Deney Takibi:
  • Makine öğrenimi modelleri için sürüm kontrolü ve model yinelemelerini etkili bir şekilde yönetmek için deney izleme araçları hakkında bilgi edinin.
  • Makine Öğrenimi Versiyonlama için DVC: https://dvc.org/
  • Deney Takibi için MLflow: https://mlflow.org/
  1. Makine Öğrenimi Modellerini Bulutta Dağıtma:

Aşama 4: Gelişmiş Derin Öğrenme

  1. Generative Adversarial Networks (GANs), Variational Autoencoders (VAEs) & Stable Diffusion:
  1. Transfer Öğrenimi ve Model İnce Ayarı:
  • Önceden eğitilmiş modellerden nasıl yararlanacağınızı ve belirli görevler için bu modellere nasıl ince ayar yapacağınızı öğrenin. Fast.ai'nin Transfer Öğrenimi kursu: https://course.fast.ai/Lessons/lesson1.html
  1. İleri Düzey Konular ve Araştırma Makaleleri:
  • Araştırma makalelerini okumaya ve derin öğrenme alanındaki ileri düzey konuları keşfetmeye başlayın. arXiv.org, bu alandaki araştırma makalelerine erişmek için harika bir kaynaktır: https://arxiv.org/ Google Akademik: https://scholar.google.com/
  1. Açık Kaynak Projelerine Katkıda Bulunma:
  • GitHub'daki açık kaynaklı derin öğrenme projelerine katkıda bulunun. Bu, pratik deneyim kazanmanıza ve topluluktaki diğer kişilerle işbirliği yapmanıza yardımcı olacaktır.

Aşama 5: Gerçek Dünya Projeleri ve Uzmanlıklar

  1. Makine Öğrenimi Projeleri ve Yarışmaları:
  • Kaggle yarışmalarına katılın ve portföyünüzü oluşturmak için gerçek dünya makine öğrenimi projeleri oluşturun.
  • Kaggle: https://www.kaggle.com/
  1. Derin Öğrenme Uzmanlıkları:
  1. Araştırma Stajı veya Yüksek Lisans Derecesi (İsteğe Bağlı):
  • Alanın akademik ve araştırma yönlerine daha derinlemesine dalmak istiyorsanız, makine öğrenimi veya yapay zeka alanında bir araştırma stajı veya yüksek lisans derecesi almayı düşünün.
  1. ML/DL Topluluklarına ve Konferanslarına Katılmak:
  • Reddit (r/MachineLearning, r/deeplearning) gibi forumlar aracılığıyla ML/DL topluluklarıyla çevrimiçi etkileşime geçin ve en son gelişmelerden haberdar olmak ve alandaki profesyonellerle ağ kurmak için NeurIPS, ICML, CVPR ve ACL gibi konferanslara katılın.
  1. Portföy Oluşturma ve Kişisel Projeler:
  • GitHub'da ve kişisel web sitenizde projelerinizden oluşan bir portföy oluşturarak becerilerinizi sergileyin.
  • Açık kaynaklı projelerde işbirliği yapın veya gerçek dünyadaki sorunları çözmek ve uzmanlığınızı göstermek için kendi projelerinizi oluşturun.
  1. Sürekli Öğrenmek ve Güncel Kalmak:
  • Makine öğrenimi ve derin öğrenme hızla gelişen alanlardır. Becerilerinizi ve bilginizi sürekli geliştirmek için en son araştırma makaleleri, blog gönderileri ve eğitimlerle güncel kalın.