Notlara Geri Dön

AI Giriş Bölüm 6 | Yapay Zeka Geliştirme Araçları ve Süreçleri

Yapay Zakaya Giriş Ders Notları

Bu yazımız BTK Yapay Zeka'ya giriş ders notlarindan oluşmatadır.

22 Şubat 2026 6 dk Muhammet Abdullah Şahin
Yapay Zeka AI AI Araçları AI Süreçler

Programlama Dilleri ve Kütüphaneler

  • Python
    • NumPy
      • Doğrudan AI kullanılmaz.
      • Bilimsel hesaplamalar için kullanılan bir kütüphanedir.
      • Çok boyutlu diziler ve matematiksel fonksiyonlar sağlar.
      • AI uygulamalarında çok sayıda matris hesaplamaları kullanıldığı için bir AI modelini sıfırdan implemente etmek için kullanılır.
    • Pandas
      • Veri analizi ve işleme için kullanılan bir kütüphanedir.
      • Veri çerçevelerini (data frame) manipüle etmek için kullanılır.
      • Veri ön işleme adımında AI projelerinde sıklıkla tercih edilir.
    • SciPy
      • Bilimsel ve teknik hesaplamalar için kullanılır.
      • Optimizasyon, lineer cebir, istatistik ve sinyal işleme fonksiyonları içerir.
      • NumPy üzerine inşa edilmiştir.
    • TensorFlow/Keras
      • Derin öğrenmede kullanılan en popüler kütüphanelerdir.
        • TensorFlow, Google tarafından geliştirilmiştir. Derin öğrenme modelleri oluşturmak için açık kaynak bir kütüphanedir.
        • Keras ise TensorFlow üzerinde koşan yüksek seviyeli bir API’dır.
      • Derin öğrenme modellerini hızlı ve kolay bir şekilde oluşturmayı amaçlar.
      • Yeni başlayanlar için Keras ile başlamak tavsiye edilir.
    • PyTorch
      • Bir derin öğrenme kütüphanesidir.
      • Meta tarafından geliştirilmiştir.
      • Dinamik hesaplama grafiklerine bağlıdır (dynamic computation graph).
      • Esneklik ve hız açısından popülerdir.
      • Araştırma odaklı projelerde sıklıkla kullanılır.
    • JAX
      • Google tarafından geliştirilen yüksek performanslı sayısal hesaplama kütüphanesidir.
      • Otomatik türev (automatic differentiation) desteği sunar.
      • TPU ve GPU üzerinde yüksek performans sağlar.
    • Scikit-learn
      • Makine öğrenmesi algoritmalarını ve araçlarını içeren bir kütüphanedir.
      • Neredeyse tüm klasik makine öğrenmesi modelleri için metot ve fonksiyonları vardır.
      • İçerisinde farklı veri setleri de barındırır.
    • XGBoost
      • Gradient Boosting algoritmasını optimize edilmiş şekilde sunar.
      • Tabular veri problemlerinde yüksek performans sağlar.
    • LightGBM
      • Microsoft tarafından geliştirilmiştir.
      • Büyük veri setlerinde hızlı ve hafif bir gradient boosting çözümüdür.
    • CatBoost
      • Özellikle kategorik verilerde başarılıdır.
      • Gradient boosting tabanlıdır.
    • Hugging Face Transformers
      • NLP ve LLM modellerini kullanmak için popüler bir kütüphanedir.
      • BERT, GPT, T5 gibi hazır modeller sunar.
    • CNTK (Microsoft Cognitive Toolkit)
      • Microsoft tarafından geliştirilen açık kaynaklı bir derin öğrenme kütüphanesidir.
      • Yüksek performanslı GPU hesaplaması ve dağıtılmış eğitim desteği sunar.
    • MXNet
      • Apache MXNet, çoklu dilleri ve çoklu cihazları destekleyen bir derin öğrenme kütüphanesidir.
    • Matplotlib
      • Verileri, model değerlendirmelerini, eğitim sırasında oluşan loss vb. değerleri görselleştirmemizi sağlar.
    • Seaborn
      • İstatistiksel veri görselleştirme için kullanılır.
      • Matplotlib üzerine inşa edilmiştir.
    • Plotly
      • İnteraktif görselleştirme sağlar.
      • Dashboard geliştirmede kullanılır.
    • OpenCV
      • Bilgisayarlı görü uygulamalarında kullanılır.
      • Görüntü işleme, nesne tanıma, yüz tanıma gibi işlemleri içerir.
    • NLTK
      • Doğal Dil İşleme (NLP) için kullanılan temel bir kütüphanedir.
    • SpaCy
      • Endüstriyel seviyede NLP işlemleri için optimize edilmiştir.
    • FastAPI
      • AI modellerini REST API olarak servis etmek için kullanılır.
    • Flask
      • Hafif bir web framework’tür.
      • Model deployment için kullanılır.
    • Streamlit
      • AI projeleri için hızlı arayüz geliştirmeye olanak sağlar.
    • Gradio
      • Makine öğrenmesi modelleri için hızlı demo arayüzü oluşturmayı sağlar.
  • R
    • Caret (Classification and Regression Training)
      • Makine öğrenmesi modellerini üretmek ve değerlendirmek için kullanılır.
    • Dplyr
      • Veri manipülasyonu ve işlemesinde kullanılır.
      • Pandas kütüphanesinin R dilindeki karşılığı olarak düşünülebilir.
    • ggplot2
      • Görselleştirme için yaygın olarak kullanılan bir kütüphanedir.
      • Matplotlib’in R dilindeki karşılığı olarak düşünülebilir.
    • Shiny
      • Web tabanlı veri uygulamaları geliştirmek için kullanılır.
    • randomForest
      • Random Forest algoritmasının R implementasyonudur.
    • xgboost
      • Gradient boosting algoritmasını R ortamında kullanmayı sağlar.
  • Julia
    • Flux.jl
      • Derin öğrenme modelleri oluşturmak için kullanılan bir kütüphanedir.
      • Hızlı ve esnektir.
    • MLJ.jl
      • Makine öğrenmesi algoritmalarını bir araya getiren bir framework’tür.
  • Java
    • Weka
      • Makine öğrenmesi ve veri madenciliği kütüphanesidir.
      • Açık kaynaklıdır.
    • Deeplearning4j
      • JVM tabanlı derin öğrenme kütüphanesidir.
      • Enterprise projelerde kullanılır.
  • JavaScript
    • TensorFlow.js
      • Tarayıcı tabanlı yapay zeka uygulamaları geliştirmek için kullanılır.
    • Brain.js
      • JavaScript tabanlı neural network kütüphanesidir.
    • ONNX Runtime Web
      • ONNX formatındaki modelleri tarayıcıda çalıştırmayı sağlar.
  • C++
    • OpenCV
      • Açık kaynaklı bilgisayarlı görü ve makine öğrenimi kütüphanesidir.
    • dlib
      • Yüz tanıma, nesne tanıma ve yüz ifadesi analizi gibi işlemleri destekler.
  • C#
    • ML.NET
      • Microsoft tarafından geliştirilen açık kaynaklı bir makine öğrenimi kütüphanesidir.
    • Accord.NET
      • Makine öğrenmesi, istatistik ve sinyal işleme araçları içerir.

Geliştirme Ortamları

  • Entegre Geliştirme Ortamları (IDEs)
    • PyCharm
      • JetBrains tarafından geliştirilen ve Python geliştirme için popüler bir IDE’dir. Yapay zeka projelerinde TensorFIow, PyTorch gibi kütüphaneleri kullanmak için tercih edilir.
    • Jupyter Notebook/JupyterLab
      • Veri analizi, görselleştirme ve yapay zeka modeli prototipleme için yaygın olarak kullanılan bir araçtır. Hem kodu hem de açıklamaları içeren belgeler oluşturmak için kullanılır.
      • İnteraktif bir döküman belgesine benzemektedir.
    • Visual Studio Code (VSCode)
      • Microsoft tarafından geliştirilen ve Python, JavaScript, C++ gibi birçok dili destekleyen bir IDE’dir. Derin öğrenme projeleri için eklentilerle genişletilebilir.
    • Spyder
      • Python bilimsel hesaplamaları için tasarlanmış bir IDEldir. NumPy, SciPy, Pandas gibi kütüphaneleri kullanarak yapay zeka projeleri geliştirmek için uygun bir ortamdır.
  • Bulut Tabanlı Geliştirme Ortamları
    • Google Colab
      • Google’ın ücretsiz bulut tabanlı Jupyter Notebook hizmetidir. GPU ve TPU desteği sunar ve TensorFIow, PyTorch gibi kütüphaneleri kullanmak için uygun bir ortam sağlar.
    • Microsoft Azure Notebooks
      • Microsoft’un bulut tabanlı Jupyter Notebook hizmetidir. Python, R ve F# dillerini destekler ve yapay zeka projelerini geliştirmek için kullanılabilir.
    • Amazon SageMaker
      • Amazon Web Services (AWS) tarafından sağlanan bir hizmettir. Makine öğrenimi modellerini eğitmek, dağıtmak ve yönetmek için kullanılan bir bulut tabanlı platformdur. TensorFlow, PyTorch, MXNet gibi çeşitli derin öğrenme çerçevelerini destekler.
    • IBM Watson Studio
      • IBM tarafın n sağlanan bir platformdur. Veri bilimi ve yapay zeka projeleri için kullanılan bir bulut tabanlı çözümdür. Python, R ve Scala gibi dilleri destekler ve derin öğrenme kütüphanelerini kullanmak için uygun bir ortam sağlar.

Süreçleri

DevOps (Development Operations)

  • Yazılım geliştirme ve bilgi teknolojileri operasyonları arasındaki işbirliğini ve iletişimi artırmayı amaçlayan bir kültür, hareket ve uygulama yaklaşımıdır.
  • Yazılım geliştirme süreçlerini ve operasyonel süreçleri entegre ederek, yazılım yayınlama süreçlerini hızlandırır, hata oranlarını azaltır ve yazılımın kalitesini artırır.

devops

CAPTION DevOps Süreci1

DataOps (Data Operations)

  • Veri yönetimi ve veri mühendisliği süreçlerini geliştirmeyi ve otomatize etmeyi amaçlayan bir metodoloji ve kültürdür.
  • Veri işleme, veri kalitesi, veri entegrasyonu ve veri analitiği gibi veri odaklı süreçlerin verimlılıgıni artırır ve işbirliğini teşvik eder.

dataops

CAPTION DataOps Süreci2

MLOps (Machine Learning Operations)

  • Makine öğrenimi projeleri için geliştirilen uygulama ve operasyonel pratikler bütünüdür.
  • Makine öğrenimi modellerini geliştirme, eğitme, dağıtma ve sürdürme süreçlerini otomatize ederek, makine öğrenimi projelerinin verimliliğini ve güvenilirliğini artırır.

mlops

CAPTION MLOps Süreci3

AIOps (Artifical Intelligence Operations)

  • Bilgisayar sistemlerinin ve ağların performansını, güvenliğini ve durumunu izlemek ve yönetmek için yapay zeka ve makine öğrenimi tekniklerini kullanan bir yaklaşımdır.
  • Büyük miktarda veriyi analiz ederek, anormal durumları tespit eder, sorunları tahmin eder ve operasyonel verimlılıgı artırır.

aiops

CAPTION AIOps Süreci4

LLMOps (Large Language Model Operations)

  • Büyük dil modelleri (LLM’ler) gibi büyük ölçekli dil modellerini geliştirme, dağıtma ve sürdürme süreçlerini yönetmek için kullanılan operasyonel ve yönetim pratiklerini kapsar.
  • Yüksek hesaplama kaynaklarına ve veriye dayalı olarak LLM’Ieri egı me ve etkin bir şekilde kullanmak için gereken altyapıyı sağlar.

llmops

CAPTION LLMOps Süreçleri5

  1. TrustBT Görsel Kaynağı ↩

  2. TheDataOps Görsel Kaynağı ↩

  3. VeriBilimiOkulu Gösel Kaynağı ↩

  4. XongoLab Gösel Kaynağı ↩

  5. Medium Görsel Kaynağı ↩