FastAPI CORS

Eğer bir web uygulaması geliştirirken tarayıcı konsolunda şu hatayı gördüysen, muhtemelen tarayıcı CORS ayarlarına takıldın demektir. Geliştirici olarak bu sorunu nasıl çözersin? Bu yazıda CORS’un ne olduğunu, neden var olduğunu ve FastAPI’de nasıl çözeceğimizi birlikte öğreneceğiz. İsmi Çekerek fırlatma rampasından Mars’a gönderdiğimiz uzay robotu adı gibi gelebilir ama merak etme, düşündüğün kadar karmaşık değil! CORS […]

ML ve AI için Python Öğrenme Yol Haritası

Makine öğrenimi (ML) ve yapay zeka (AI), teknoloji dünyasının en hızlı büyüyen alanları arasında yer alıyor. Teknik olmayan bir geçmişten gelenler ya da bu alanlarda kariyer yapmayı hedefleyenler için Python, öğrenilmesi gereken temel programlama dilidir. Python’un sade sözdizimi, geniş kütüphane ekosistemi ve özellikle AI odaklı araçları (örneğin, LangChain, Hugging Face Transformers ve OpenAI API), onu […]

Spark ML Custom Transformer Yazma

Bu yazımızda Spark ML Custom Transformer yazacağız. Spark’ın makine öğrenimi kütüphanesi (MLlib), veri bilimcilere ve makine öğrenimi mühendislerine zengin bir araç seti sunuyor. Model geliştirme çalışmalarında bilhassa özellik mühendisliği (feature engineering) aşamasında çok yoğun veri ön hazırlık süreçleri oluyor.  Bu çalışmalarda  PySpark’ın pyspark.ml.feature kütüphanesi, makine öğrenimi modelleriniz için ham verileri anlamlı ve kullanışlı özelliklere (feature) […]

Scikit-Learn Spark Deployment

Makine öğrenimi modelleri, günümüzde birçok alanda veri analizinin ve tahminlerin temelini oluşturuyor. Scikit-learn ise en başından beri Python ile yapılan çalışmalarda, basit arayüzü ve geniş algoritma yelpazesi ile ML çalışmalarında en yaygın kütüphane. Ancak, scikit-learn  ile büyük veri kümelerinde çalışmak, performans ve ölçeklenebilirlik açısından bazı zorluklar doğurabiliyor. Bu noktada, büyük veri üzerindeki başarısıyla meşhur Apache Spark […]

Oppenheimer Filmi ve Nükleer Bombaların Gölgesinde Veri Biliminin Önemi

Son birkaç haftadır adından çokça söz ettiren “Oppenheimer” filmi, nükleer bombaların tarihi ve etkileri hakkında izleyenlere derin bir bakış sunuyor. Bu tür filmler, tarihin en karanlık ve tehlikeli dönemlerinden birine işaret ederek insanlığın karşı karşıya kaldığı nükleer tehditlerin hala ne kadar güncel olduğunu hatırlatıyor. Nükleer güvenlik, hâlâ uluslararası ilişkilerde ve küresel politikada en önemli konulardan […]

Ray: Python ile Dağıtık Veri İşleme

Ray, gerçek zamanlı veri işleme sistemleri ve yapay zeka araştırmalarının yapıldığı RISELab tarafından 2017’de başlatılan bir projedir. Apache 2.0 lisansına sahip olan Ray, açık kaynaklı bir kütüphane olarak paralel ve dağıtık hesaplamaya odaklanarak geliştirilmeye başlanmıştır. Ray, son zamanlarda veri bilimcileri ve Python programcıları tarafından veri analitiği, yapay zeka ve makine öğrenimi projelerinde sıkça kullanılan bir […]

Active Learning ve Veri Etiketlemedeki Rolü: Sampling Stratejileri & Query Yöntemleri -Bölüm 2/2

Active Learning Sampling Stratejileri ve Query Yöntemleri Birinci bölümde etiketleme süreci üzerine odaklanmıştık. Bu bölümde etiketleyicinin, etiketleyeceği verileri ortaya çıkaran yöntemler üzerine gidilecek. Etiketlenecek görseller üzerinde çeşitliliğe dayanan, belirsizliğe dayanan veya hibrit kullanımlara dayanan stratijler bulunmaktadır. 3 başlık üzerinden yöntemleri inceleyeceğiz. Bu 3 başlığın altında bahsedilen yöntemlerle birlikte bahsedilmeyen birçok yöntem daha mevcuttur. 1) Uncertainty Sampling […]

Active Learning ve Veri Etiketlemedeki Rolü -Bölüm 1/2

Active Learning’e Giriş Uçtan uca bir makine öğrenmesi projesi hayal edelim. Aklımıza, veri seti üzerinde ön işleme aşamalarıyla başlanılan ve devamında modelin oluşturulup ayağa kaldırıldığı (deploy) bir süreç gelecektir. Bir nesne tanıma (object detection) senaryosu örneği ile bu süreci gözümüzde canlandıralım. Mağaza raflarının kamera görüntüleri üzerinden raflardaki ürünlerin tanınıp, adetlerinin de elde edildiği bir proje […]

FastAPI, Docker ve Terraform ile ML Model Deployment

Yapay öğrenme, veri bilimi ve makine öğrenmesi son yılların en popüler kavramlarından. Model deployment öncesinde bir çok insan bu alanda, özellikle model geliştirme sürecinde bilgi sahibi olmak ve yetenek kazanmak için çabalıyor. Bu kadar ilgi olmasına rağmen ne yazık ki model geliştirmek ve iyi bir başarı skoru elde etmekle sürecin sona erdiği gibi bir eksik […]

ML Modelini Object Storage’a Depolama

Merhaba. Bu yazımızda ml modellerinin object sotrage’a nasıl kaydedileceğini ve gerektiğinde buradan okunarak nasıl kullanılacağını MinIO örneği üzerinden öğreneceğiz. Model scikit-learn kütüphanesiyle geliştirilmiş bir pipeline model olacaktır. Niçin modelleri object storage’a kaydetmek iyidir? Geliştirilen modeli lokal diske kaydettiğimizde ona sadece biz erişebiliriz. Aslında geliştirilen her model bir gün canlı ortamda çalışma hayaline sahiptir, ancak bir […]

TEMPORAL FUSION TRANSFORMER

Bu yazımda sizlere Google’ın yakın zamanda geliştirmiş olduğu Temporal Fusion Transformer (TFT) mimarisini açıklamak ve Python’da örnek bir veri seti üzerinden uygulama yapmak istiyorum. Gün geçmiyor ki makine öğrenme algoritmalarının bir yenisi çıkmasın ve bir ihtiyaca merhem olmasın. Bugün sizlere tanıtımını yapacağım TFT derin öğrenme mimarisi, zaman serileri üzerine güven aralıklarıyla tahmin üretebilen bir mimari/yöntemdir. […]

MLOps Nedir? Yeni Başlayanlar için Bir Rehber

Merhabalar. Bu yazımızda MLOps nedir? sorusunun cevabını arayacağız. MLOps’un açılımı Machine Learning Operations‘dır, odak noktası ise yapay öğrenme modellerinin canlı ortamlarda çalıştırılması sürecidir. MLOps, yazılımların canlı ortamlarda dağıtılması süreçlerine odaklanan abisi DevOps’a benzerlik gösterir ancak kendine özgü farklılıklara sahiptir. Bu farklılıklara ilerleyen kısımlarda değineceğiz. Neden MLOps gibi birşeye ihtiyaç var? Yapay öğrenme, veri bilimi ve […]

Derin Öğrenme ile BBC Haberlerinin Sınıflandırılması

Merhabalar! Bu yazımda derin öğrenme (deep learning) yöntemlerinden evrişimli sinir ağları (convolutional neural networks – CNN) ve uzun kısa süreli bellek (Long short-term memory – LSTM) modelini kullanarak çoklu sınıflandırma problemini ele alacağım. Bunun yanında ilgilendiğimiz haberleri, manifold öğrenme algoritmaları arasında en popüler olan t-SNE (t-Distributed Stochastic Neighbor Embedding) ile görselleştireceğiz. Veri Seti Bu çalışma kapsamında BBC’e (British Broadcasting Corporation) ait […]

Dengesiz Veri Setlerinde Modelleme

Standart bir sınıflandırıcı makine öğrenmesi algoritmasının amacı doğruluğu maksimize etmektir. Dengesiz veri setlerinde ise algoritma, veri sayısı çok olan sınıfı daha iyi öğrenecektir ve bu eğitimin sonucu çoğunluk sınıfı için düşük hata oranı, ancak azınlık sınıfı için daha yüksek hata oranı olacaktır.

MLflow: Makine Öğrenmesi Hayat Döngüsü Platformu

Merhabalar bu yazımızda MLflow’u tanımaya çalışacağız. MLflow nedir sorusuna “MLflow, açık kaynaklı bir makine öğrenmesi hayat döngüsü platformudur.” şeklinde cevap verebiliriz. Makine öğrenmesi çalışmalarında; Bir çok farklı veri seti kullanılır. Uğraştırıcı veri hazırlık süreci vardır. Farklı bir çok algoritma denenir. Belirlenen bir başarı metriğini en iyi elde eden algoritma ve hiper parametreler aranır. Bir model […]

Boruta Algoritması ile Değişken Seçimi

Boruta veri setine eklediği gölge değişkenler ve iterasyonlu yapısı ile bir veri setinden önemli ve önemli olmayan değişkenlerin tarafsız ve istikrarlı bir şekilde seçilmesini sağlayan, Random Forest tabanlı değişken seçme yöntemidir.

MXNet ile Derin Öğrenme 2.1: Softmax Regresyon (Teori)

Herkese merhabalar, MXNet ile derin öğrenme serisine devam ediyoruz. İlk iki bölümde doğrusal regresyon konusunda teorik bilgiler paylaşıp python programlama dili ile uygulama yapmıştık. Bu bölümde softmax regresyon konusunda teorik bilgiler paylaşılacaktır. Doğrusal regresyon teori kısmına buradan Doğrusal regresyon uygulama kısmına buradan ulaşabilirsiniz. Regresyon, ne kadar veya kaç tane? gibi sorulara cevap vermek ıstediğimizde kullandığımız […]

MXNet ile Derin Öğrenme 1.2: Doğrusal (Linear) Regresyon (Uygulama)

Herkese merhabalar, MXNet ile derin öğrenme serisine devam ediyoruz. İlk bölümde doğrusal regresyon konusunda teorik bilgiler paylaşmıştık. Bu bölümde doğrusal regresyon konusunda MXNet kütüphanesini kullanarak uygulama yapacağız. İlk bölümü incelemeyenler buradan erişebilirsiniz. Uygulama kısmında hazır verisetlerini kullanmak yerine kendi verisetimizi hazırlayacağız. Uygulama Kütüphane ekleme, Veriseti oluşturma, Verisetini okuma, Model parametrelerini belirleme, Sinir ağ modeli oluşturma, […]