Aurich Lawson | Getty Resimleri
Bu, “kodsuz” makine öğrenimi keşfimizin ikinci bölümüdür. İlk makalemizde, problem setimizi ortaya koyduk ve iş analistleri için tasarlanmış yüksek oranda otomatikleştirilmiş bir ML aracının, biraz daha fazla insan içeren daha kod yoğun yöntemlerin kalitesine yakın uygun maliyetli sonuçlar getirip getiremeyeceğini test etmek için kullanacağımız verileri tartıştık. – güdümlü veri bilimi.
O makaleyi okumadıysanız, geri dönüp en azından gözden geçirmelisiniz. Hazırsanız, kalp krizi verilerimizle “normal” (yani daha kod yoğun) makine öğrenme koşulları altında ne yapacağımızı gözden geçirelim ve ardından hepsini bir kenara atıp “kolay” düğmesine basalım.
Daha önce tartıştığımız gibi, Budapeşte’deki Cleveland Clinic Institute ve Macar Kardiyoloji Enstitüsü’nde (ve kalite nedenleriyle verilerini attığımız diğer yerlerde) yapılan bir çalışmadan elde edilen bir dizi kalp sağlığı verisi ile çalışıyoruz. Tüm bu veriler GitHub’da oluşturduğumuz bir depoda mevcuttur, ancak orijinal biçimi, California-Irvine Üniversitesi tarafından makine öğrenimi projeleri için tutulan bir veri deposunun parçasıdır. Veri setinin iki sürümünü kullanıyoruz: Cleveland Clinic’ten alınan 303 hasta kaydından oluşan daha küçük, daha eksiksiz bir sürüm ve Macar Enstitüsü verilerini içeren ancak iki veri türünün eksik olduğu daha büyük (597 hasta) bir veritabanı. daha küçük küme.
Macar verilerinde eksik olan iki alan potansiyel olarak önemli görünüyor, ancak Cleveland Clinic verilerinin kendisi bazı ML uygulamaları için çok küçük olabilir, bu nedenle her ikisini de temellerimizi kapsamaya çalışacağız.
plan
Eğitim ve test için elde birden fazla veri seti varken, öğütmeye başlama zamanı gelmişti. Bunu veri bilimcilerin genellikle yaptığı şekilde (ve geçen yıl denediğimiz şekilde) yapıyor olsaydık, şunları yapıyor olurduk:
- Verileri bir eğitim kümesine ve bir test kümesine bölün
- Modeli oluşturmak için eğitim verilerini mevcut bir algoritma türüyle kullanın
- Doğruluğunu kontrol etmek için modeli test seti ile doğrulayın
Tüm bunları bir Jupyter not defterinde kodlayarak ve kabul edilebilir bir doğruluk elde edene kadar (geçen yıl yaptığımız gibi, sürekli bir döngüde) model üzerinde ince ayar yaparak yapabiliriz. Ancak bunun yerine önce iki farklı yaklaşımı deneyeceğiz:
- AWS SageMaker Canvas kullanan “kodsuz” bir yaklaşım: Canvas, verileri bir bütün olarak alır, otomatik olarak eğitim ve teste ayırır ve tahmine dayalı bir algoritma oluşturur
- SageMaker Jumpstart ve AutoPilot kullanan bir başka “kodsuz/düşük kodlu” yaklaşım: AutoML, Canvas’ın arkasında yatanların büyük bir kısmıdır; verileri değerlendirir ve neyin en iyi olduğunu belirlemek için bir dizi farklı algoritma türünü dener
Bunu yaptıktan sonra, veri bilimcilerin bu veri seti ile zaten denediği ve bazıları yüzde 90’dan fazla doğruluk iddiasında bulunan, savaşta test edilmiş birçok makine öğrenimi yaklaşımından birini kullanarak bir hamle yapacağız.
Bu yaklaşımların son ürünü, veri noktalarına dayalı tahmine dayalı bir sorgu çalıştırmak için kullanabileceğimiz bir algoritma olmalıdır. Ancak gerçek çıktı, tamamlama süresi, doğruluk ve hesaplama süresinin maliyeti açısından her bir yaklaşımın ödünleşimlerine bir bakış olacaktır. (Son testimizde, AutoPilot’ın kendisi, AWS hesaplama kredisi bütçemizin tamamını neredeyse aştı.)