Sorunu anlama

Sorunu anlamak için aşağıdaki görevleri gerçekleştirin:

  • Geliştirmekte veya yeniden yapılandırmakta olduğunuz ürünün hedefini belirtin.
  • Hedefin tahmine dayalı makine öğrenimi, üretken yapay zeka veya makine öğrenimi dışı bir çözüm kullanılarak en iyi şekilde çözülüp çözülmediğini belirleyin.
  • Tahmini makine öğrenimi yaklaşımı kullanıyorsanız bir modeli eğitmek için gereken verilere sahip olduğunuzu doğrulayın.

Hedefi belirtin

Hedefinizi makine öğrenimi terimleriyle değil, başka terimlerle ifade ederek başlayın. Hedef, "Neye ulaşmaya çalışıyorum?" sorusunun cevabıdır.

Aşağıdaki tabloda varsayımsal uygulamalar için hedefler açıkça belirtilmiştir:

Uygulama Hedef
Hava durumu uygulaması Bir coğrafi bölge için altı saatlik artışlarla yağış miktarını hesaplama
Moda uygulaması Çeşitli gömlek tasarımları oluşturun.
Video uygulaması Faydalı videolar önerin.
Posta uygulaması Spam'i algılama
Finans uygulaması Birden fazla haber kaynağından alınan finansal bilgileri özetleme
Harita uygulaması Seyahat süresini hesaplayın.
Bankacılık uygulaması Sahte işlemleri belirleme
Yemek uygulaması Restoranın menüsüne göre mutfağı tanımlayın.
E-ticaret uygulaması Yorumları faydalı yanıtlarla yanıtlayın.

Makine Öğrenimi için net bir kullanım alanı

Bazıları ML'yi tüm sorunlara uygulanabilecek evrensel bir araç olarak görür. Gerçekte, yapay zeka yalnızca belirli sorunlara uygun özel bir araçtır. Makine Öğrenimi içermeyen daha basit bir çözümün işe yarayacağı durumlarda karmaşık bir Makine Öğrenimi çözümü uygulamak istemiyorsunuz.

ML sistemleri iki geniş kategoriye ayrılabilir: Tahmine dayalı ML ve üretken yapay zeka. Aşağıdaki tabloda bu özelliklerin ayırt edici özellikleri listelenmiştir:

Giriş Çıkış Eğitim tekniği
Tahmine dayalı makine öğrenimi Metin
Resim
Ses
Video
Sayısal
Bir e-postayı spam olarak sınıflandırmak, yarınki yağış miktarını tahmin etmek veya bir hissenin fiyatını tahmin etmek gibi tahminler yapar. Çıkış genellikle gerçeklikle doğrulanabilir. Genellikle belirli bir görevi gerçekleştirmek için gözetimli, gözetimsiz veya pekiştirmeli öğrenme modelini eğitmek amacıyla çok fazla veri kullanır.
Generative AI Metin
Resim
Ses
Video
Sayısal
Kullanıcının amacına göre çıkış oluşturur (ör. bir makaleyi özetleme, ses klibi veya kısa video oluşturma). Genellikle büyük bir dil modelini eğitmek veya eksik verileri doldurmak için çok sayıda etiketlenmemiş veri kullanır. Daha sonra model, boşluk doldurma görevi olarak çerçevelenebilecek görevler için kullanılabilir veya sınıflandırma gibi belirli bir görev için etiketlenmiş verilerle eğitilerek ince ayarlanabilir.

ML'nin doğru yaklaşım olduğunu doğrulamak için öncelikle mevcut ML dışı çözümünüzün optimize edildiğinden emin olun. ML dışında bir çözüm uygulamadıysanız heuristic kullanarak sorunu manuel olarak çözmeyi deneyin.

ML olmayan çözüm, ML'nin sorununuz için iyi bir kullanım alanı olup olmadığını belirlemek üzere kullanacağınız karşılaştırma ölçütüdür. ML dışı bir yaklaşımı ML'ye kıyasla karşılaştırırken aşağıdaki soruları göz önünde bulundurun:

  • Kalite. Bir makine öğrenimi çözümünün ne kadar iyi olabileceğini düşünüyorsunuz? Bir makine öğrenimi çözümünün yalnızca küçük bir iyileştirme sağlayabileceğini düşünüyorsanız mevcut çözümün en iyisi olduğunu gösterebilir.

  • Maliyet ve bakım. ML çözümü hem kısa hem de uzun vadede ne kadar pahalı? Bazı durumlarda, yapay zekayı uygulamak işleme kaynakları ve zaman açısından çok daha maliyetli olabilir. Aşağıdaki soruları göz önünde bulundurun:

    • ML çözümü, maliyetteki artışı haklı çıkarabilir mi? Büyük sistemlerde yapılan küçük iyileştirmelerin, makine öğrenimi çözümü uygulamanın maliyetini ve bakımını kolayca karşılayabileceğini unutmayın.
    • Çözüm ne kadar bakım gerektirir? Çoğu durumda, yapay zeka uygulamalarının özel uzun süreli bakıma ihtiyacı vardır.
    • Ürününüz, ML uzmanlığı olan kişileri eğitme veya işe alma konusunda destek sağlayacak kaynaklara sahip mi?

Öğrendiklerinizi test etme

Bir ML çözümünü analiz etmeden önce ML dışı bir çözümün veya sezgisel yöntemin kullanılması neden önemlidir?
Makine öğrenimi dışı çözüm, makine öğrenimi çözümünü ölçmek için kullanılan karşılaştırma ölçütüdür.
ML dışı çözümler, bir ML çözümünün ne kadara mal olacağını belirlemenize yardımcı olur.

Tahmine dayalı makine öğrenimi ve veriler

Veriler, tahmine dayalı makine öğreniminin itici gücüdür. İyi tahminler yapabilmek için tahmin gücü olan özellikleri içeren verilere ihtiyacınız vardır. Verileriniz aşağıdaki özelliklere sahip olmalıdır:

  • Bol. Veri kümenizde ne kadar alakalı ve yararlı örnek olursa modeliniz o kadar iyi olur.

  • Tutarlı ve güvenilir. Düzenli ve güvenilir bir şekilde toplanan veriler daha iyi bir model oluşturur. Örneğin, makine öğrenimine dayalı bir hava durumu modeli, aynı güvenilir cihazlardan yıllar boyunca toplanan verilerden yararlanır.

  • Güvenilir. Verilerinizin nereden geleceğini anlayın. Veriler, ürününüzdeki günlükler gibi kontrol ettiğiniz güvenilir kaynaklardan mı yoksa başka bir yapay zeka sisteminin çıkışı gibi hakkında fazla bilgi sahibi olmadığınız kaynaklardan mı gelecek?

  • Kullanılabilir. Tüm girişlerin tahmin zamanında doğru biçimde mevcut olduğundan emin olun. Tahmin sırasında belirli özellik değerlerini elde etmek zorsa bu özellikleri veri kümelerinizden çıkarın.

  • Doğru. Büyük veri kümelerinde bazı etiketlerin hatalı değerlere sahip olması kaçınılmazdır ancak etiketlerin küçük bir yüzdesinden fazlası hatalıysa model kötü tahminler yapar.

  • Temsilci. Veri kümeleri, gerçek dünyayı mümkün olduğunca temsil etmelidir. Başka bir deyişle, veri kümeleri modellenen gerçek dünyadaki etkinlikleri, kullanıcı davranışlarını ve/veya fenomenleri doğru şekilde yansıtmalıdır. Temsil niteliği düşük veri kümeleriyle eğitim, modelden gerçek dünyada tahminler yapması istendiğinde kötü performansa neden olabilir.

İhtiyacınız olan verileri gerekli biçimde alamazsanız modeliniz kötü tahminler yapar.

Tahmine dayalı güç

Bir modelin iyi tahminler yapabilmesi için veri kümenizdeki özelliklerin tahmin gücü olması gerekir. Bir özelliğin etiketle ne kadar yüksek korelasyona sahip olduğu, özelliğin tahmin edilme olasılığını etkiler.

Bazı özellikler diğerlerinden daha fazla tahmin gücü sunar. Örneğin, bir hava durumu veri kümesindeki cloud_coverage, temperature ve dew_point gibi özellikler, yağmur için moon_phase veya day_of_week'ten daha iyi tahminler sunar. Video uygulaması örneğinde, video_description, length ve views gibi özelliklerin kullanıcının izlemek isteyeceği videoları iyi tahmin edebileceğini varsayabilirsiniz.

Hangi özelliklerin tahmin gücüne sahip olduğunu belirlemek zaman alıcı bir süreç olabilir. Bir modeli eğitirken özelliği kaldırıp ekleyerek özelliğin tahmin gücünü manuel olarak keşfedebilirsiniz. Bir özelliğin tahmin gücünü bulma işlemini otomatikleştirebilirsiniz. Bunun için Pearson korelasyon, Düzenlenmiş karşılıklı bilgi (AMI) ve Shapley değeri gibi algoritmaları kullanabilirsiniz. Bu algoritmalar, bir özelliğin tahmin gücünü analiz etmek için sayısal bir değerlendirme sağlar.

Öğrendiklerinizi test etme

Veri kümelerinizi analiz ederken dikkate almanız gereken üç temel özellik nedir?
Gerçek dünyayı temsil eder.
Doğru değerler içeriyor.
Özellikler, etiket için tahmin gücüne sahiptir.
Yerel bir makineye yüklenebilecek kadar küçük olmalıdır.
Tahmin edilemeyen çeşitli kaynaklardan toplanır.

Veri kümelerinizi analiz etme ve hazırlama hakkında daha fazla bilgi için Makine Öğrenimi İçin Veri Hazırlama ve Özellik Mühendisliği başlıklı makaleyi inceleyin.

Tahminler ve işlemler

Tahmini, kullanıcılara yardımcı olacak bir işleme dönüştüremiyorsanız tahminin bir değeri yoktur. Yani ürününüz, modelin çıkışına göre işlem yapmalıdır.

Örneğin, bir kullanıcının bir videoyu kullanışlı bulup bulmayacağını tahmin eden bir model, kullanışlı videolar öneren bir uygulamaya beslenmelidir. Yağmur yağacağını tahmin eden bir model, hava durumu uygulamasına beslenmelidir.

Öğrendiklerinizi test etme

Aşağıdaki senaryoya göre, ML'nin sorunu çözmek için en iyi yaklaşım olup olmadığını belirleyin.

Büyük bir kuruluştaki mühendislik ekibi, gelen telefon aramalarını yönetmekten sorumludur.

Hedef: Mevcut arama hacmi göz önüne alındığında arayanlara bekleme süresini bildirmek.

Şu anda uygulanan bir çözümleri yok ancak beklemedeki mevcut müşteri sayısını telefonları yanıtlayan çalışan sayısına bölmeyi ve ardından 10 dakikayla çarpmayı heuristik bir yaklaşım olarak düşünüyorlar. Ancak bazı müşterilerin sorunlarının iki dakikada çözüldüğünü, bazılarının ise 45 dakika veya daha uzun sürebileceğini bilirler.

Heuristic, muhtemelen yeterince kesin bir sayı elde etmelerini sağlamaz. Şu sütunları içeren bir veri kümesi oluşturabilirler: number_of_callcenter_phones, user_issue, time_to_resolve, call_time, time_on_hold.

Makine öğrenimini kullanın. Mühendislik ekibinin net bir hedefi vardır. Heuristic, kullanım alanı için yeterince iyi olmaz. Veri kümesinde time_on_hold etiketi için tahmini özellikler olduğu anlaşılıyor.
Makine öğrenimi kullanmayın. Net bir şekilde tanımlanmış bir hedefleri olsa da önce ML dışı bir çözümü uygulayıp optimize etmelidirler. Ayrıca, veri kümelerinde tahmin gücüne sahip yeterli özellik bulunmuyor.