Ana içeriğe atla

Kayıtlar

Yapay Zeka Deneylerinde Süreci Takip Etmek İçin MLFlow Kullanmak

 Bir model eğitiyoruz. Bu basit bir regresyon modeli olabilir, derin öğrenme modeli olabilir veya bir başka mimari olabilir. Modeli eğittikten sonra bazı bilgileri kaydetmek lazım. Modelin kendisini, modelin eğitim sırasındaki doğrulama değerlerini yani eğitim geçmişini, eğitilen model için seçilen parametreleri (öğrenme katsayısı, optimizer, batch, epoch vs) gibi değerleri kaydetmek istiyoruz. Bunu genelde elle yapıyoruz. Ama yapay zeka kütüphaneleri tarafından sunulan kaydetme metotları sadece modelin kendisini veya ağırlıklarını kaydediyor. İsimlendirmeyi biz yapıyoruz, vgg16_512x512_v1 gibi. Bu modeli ne zaman eğittik, hangi veri setiyle eğittik, nasıl eğittik, eğitim süreci nasıl gitti gibi şeyleri daha sonraki tarihlerde elde etmek için bir sürü iş yapmamız gerekiyor. Pickle gibi modüller kullanarak yapabiliyoruz, kendimizce bir takım fonksiyonellikler katarak işin üstesinden gelebiliyoruz. Ama bütün bu işleri yapmak karmaşaya sebep olabiliyor. Bir kere modellerin versiyonlar...
En son yayınlar

Güç Analizi ve Örneklem Seçimi (Makalelerden Notlar)

 Bilgilerim henüz tazeyken bu blog yazısını yazayım sonra yine vaktimi ayırıp nedir ne değildir diye araştırma yapmadan önce buraya bakarım belki. Bir makaleyi incelerken, makalede örneklem sayısının seçimi için kullanılan bir yönteme denk geldim. Bu yönteme göre eğer örnekleminiz kümeli bir şekildeyde, ideal örneklem sayısını bulmak için Design Effect denklemini kullanarak bulabilirsiniz. Makalemiz şu . Ve makalenin sample size determination kısmında örneklem sayısının nasıl seçildiğinden bahsedilmiş.    Ben de merak edip araştırdım. Yani makalede yapılan hesaplama şu şekilde:   Design Effect (DE) = 1 + (m-1) x ICC    Burada m değeri küme içerisindeki örnek sayısını ifade eder. Interclass Corelation Coefficient (ICC) ise sınıf içi korelasyon katsayısını ifade ediyor. Bireyin kendi kümesi içindeki varyansının genel varyansa oranını belirten bir değer. Makalede kullanılan ICC 0.20 olarak belirlenmiştir ve bu seçimi, Masood ve ark. tarafından 2015 yılında yap...

Windows'ta Django projesini kullanıcı girişi yapmadan Docker ile ayağa kaldırma

Öncelikle bu yazıyı tamamen kendi çalışma ortamımı baz alarak yazdığımı söylemek isterim. Yazıdaki talimatları uygulayarak bir sonuca varamayabilirsiniz ama ben daha sonraki aşamalarda ne yapmam gerektiğini ve hangi sırayla yapmam gerektiğini unutmamak için buraya yazıyorum. Belki daha sonra daha da detaylandırabilirim. Yararlandığım kaynakları da aşağıya ekleyeceğim. Direkt onlara da bakabilirsiniz. Yaptığım şeylerin çalıştığını hızlıca görebilmek adına basit bir Django projesi oluşturdum. Hiç bir model vs oluşturmadım. Her şeyiyle çalışan bir web uygulaması. Bu web uygulamamı, Windows'ta oturum açmadan ayağa kaldırmak istiyorum. Çünkü yerelde bir sunucum var ve elektrikler gittikten sonra bile, eğer eletkrikler tekrar gelirse kendini yeniden başlatacak şekilde ayarladım. Ama tekrar arayüze girip kullanıcı şifresini yazmak (şifresiz yapmak da bir çözüm ama güvenlik malum) yorucu. O halde ben giriş yapmadan arkaplanda Django uygulamam ayağa kalksın istedim.   Bunun için çeşitli yön...

SNMP Protokolü ve OID Kodları

 Wireshark programını kullanarak yakaladığımız SNMP (Simple Network Management Protocol) paketlerinde data kısmında bazı sayılar var. Bunların ne olduğunu araştırdığımız zaman karşımıza OID kodları geliyor. Bu kodların hiyerarşisi şöyle:   (Kaynak:  https://tr.wikipedia.org/wiki/Dosya:SNMP_OID_MIB_Tree.png ) OID kodlarının tam olarak ne iş yaptıklarını öğrenmek için  https://oidref.com/ web sitesini kullanabiliriz. Wireshark programından kopyaladığımız OID kodunun tam olarak ne iş yaptığını görmek için verdiğim https://oidref.com/ sitesinin sonuna direkt olarak yapıştırıyoruz. Mesela şu şekilde: https://oidref.com/1.3.6.1.4.1.236.11.5.11 . Burada ilgili OID kodunun ata düğümü, alt düğümleri veya kendisiyle aynı düğüme bağlı diğer düğümleri görebiliriz.  MIB kodları bir noktadan sonra kuruluşa özel oluyor ve yukarıda verdiğimiz yerde bulamıyoruz. O yüzden kuruluşa özel araştırma yapmamız gerekiyor. Mesela Samsung Yazıcı MIB kodları şuralarda toplanmış:   ht...

Ubuntu'da Yapay Zeka Eğitim Ortamı Hazırlama

Bazı sebeplerden dolayı bir GNU/Linux dağıtımı kurmam gerekti. Hangi sebepler? KerasCV kullanmak için 2.10 üstü bir tensorflow sürümü gerekmesi ve 2.10 üstü bir sürüm kurulumu için Windows WSL teknolojisine mecbur kalıp 2.10 üstüne çıkmak zorunda olmak. Ancak Windows makinemi kirletmek istemediğim için temiz bir kurulum yapmaya karar verdim ve herhangi bir sorunla karşılaştığım zaman çözüm aramaya kalktığımda geniş bir kitleye hitap eden Ubuntu dağıtımını kurdum. Kurulumdan sonra yapay zeka eğitimi için ekran kartını tanıtmak gerekiyor. Gerekli driver'ları repolardan çekebileceğiniz gibi, NVIDIA resmi sayfasından indirip kurabilirsiniz ancak repolar yardımıyla kurulum yapmak daha sağlamdır. Çünkü Ubuntu dağıtımı, kernel sürümüne uygun kararlı driverları repolardan indirip çekecektir.  CUDA Toolkit kurulumu için https://developer.nvidia.com/cuda-downloads adresine gidip uygun seçenekleri seçtiğinizde size indirmeniz için bağlantı veya talimatlar içeren bir komut dizisi verecektir. ...