ML sorununu çerçeveleme

Sorununuzun en iyi tahmine dayalı makine öğrenimi veya üretken yapay zeka yaklaşımı kullanılarak çözüldüğünü doğruladıktan sonra, sorununuzu makine öğrenimi terimleriyle çerçevelemeye hazırsınız demektir. Aşağıdaki görevleri tamamlayarak bir sorunu makine öğrenimi terimleriyle çerçevelendirirsiniz:

  • İdeal sonucu ve modelin hedefini tanımlayın.
  • Model çıkışını tanımlayın.
  • Başarı metriklerini tanımlama.

İdeal sonucu ve modelin hedefini tanımlama

ML modelinden bağımsız olarak ideal sonuç nedir? Yani ürününüzün ya da özelliğinizin tam olarak yerine getirmesini istediğiniz görev nedir? Bu, daha önce Hedefi belirtin bölümünde tanımladığınız ifadedir.

Modelin ne yapmasını istediğinizi açıkça tanımlayarak modelin hedefini ideal sonuçla ilişkilendirin. Aşağıdaki tabloda ideal sonuçlar ve modelin varsayımsal uygulamalara yönelik hedefi gösterilmektedir:

Uygulama İdeal sonuç Modelin hedefi
Hava Durumu uygulaması Bir coğrafi bölge için yağış miktarını altı saatlik artışlarla hesaplar. Belirli coğrafi bölgeler için altı saatlik yağış miktarlarını tahmin edin.
Moda uygulaması Çeşitli gömlek tasarımları oluşturmak. Metin ve resimden üç tür gömlek tasarımı oluşturun. Bu resimlerde, metin stili ve rengi belirtiliyor, resim de gömlek türünü (tişört, düğmeli, polo) temsil ediyor.
Video uygulaması Faydalı videolar önermek. Kullanıcının bir videoyu tıklayıp tıklamayacağını tahmin etme.
Posta uygulaması Spam algılama. Bir e-postanın spam olup olmadığını tahmin etme.
Finans uygulaması Birden fazla haber kaynağından gelen finansal bilgileri özetleyin. Son yedi güne ait önemli finansal trendlerin 50 kelimelik özetlerini oluşturur.
Harita uygulaması Seyahat süresini hesaplayın. İki nokta arasında seyahatin ne kadar süreceğini tahmin etme.
Bankacılık uygulaması Sahte işlemleri belirleyin. Kart sahibi tarafından bir işlem yapılıp yapılmadığını tahmin etme.
Yemek uygulaması Yemekleri bir restoranın menüsünden belirleyin. Restoran türünü tahmin edin.
E-ticaret uygulaması Şirketin ürünleri hakkında müşteri desteği yanıtları oluşturma. Yaklaşım analizini ve kuruluşun bilgi tabanını kullanarak yanıtlar oluşturun.

İhtiyacınız olan çıktıyı belirleyin

Model türü seçiminiz, sorununuzun belirli bağlamına ve kısıtlamalarına bağlıdır. Modelin çıktısı, ideal sonuçta tanımlanan görevi gerçekleştirmelidir. Dolayısıyla, cevaplanması gereken ilk soru "Sorunumu çözmek için ne tür bir çıktıya ihtiyacım var?"

Bir şeyi sınıflandırmanız veya sayısal bir tahmin yapmanız gerekiyorsa muhtemelen tahmine dayalı makine öğrenimini kullanırsınız. Yeni içerik üretmeniz veya doğal dil anlamayla ilgili çıktılar üretmeniz gerekiyorsa muhtemelen üretken yapay zekayı kullanırsınız.

Aşağıdaki tablolarda tahmine dayalı makine öğrenimi ve üretken AI çıkışları listelenmiştir:

Tablo 1. Tahmine dayalı makine öğrenimi
ML sistemi Örnek çıkış
Sınıflandırma İkili Bir e-postayı spam veya spam değil olarak sınıflandırın.
Çok sınıflı tek etiketli Resimdeki bir hayvanı sınıflandırma.
Çok sınıflı çok etiketli Bir resimdeki tüm hayvanları sınıflandırın.
Sayısal Tek boyutlu regresyon Bir videonun alacağı görüntüleme sayısını tahmin etme.
Çok boyutlu regresyon Birey için tansiyonu, nabzı ve kolesterol düzeylerini tahmin edin.
Tablo 2. Üretken yapay zeka
Model türü Örnek çıkış
Metin
Makaleyi özetleyin.

Müşteri yorumlarını yanıtlama

Dokümanları İngilizceden Mandarin Çincesine çevirin.

Ürün açıklamaları yazın.

Yasal dokümanları analiz edin.
Resim
Pazarlama görselleri oluşturma.

Fotoğraflara görsel efektler uygulayabilirsiniz.

Ürün tasarım varyasyonları oluşturun.
Ses
Belirli bir aksanla diyalog oluşturun.

Caz gibi belirli bir türde kısa bir müzik bestesi oluşturun.
Video
Gerçekçi görünen videolar üretin.

Video görüntülerini analiz etmek ve görsel efektler uygulamak.
Çok modlu Metin altyazıları olan bir video gibi birden fazla türde çıkış üretin.

Sınıflandırma

Sınıflandırma modeli, giriş verilerinin hangi kategoriye ait olduğunu tahmin eder. Örneğin, bir girişin A, B veya C olarak sınıflandırılması gerekip gerekmediği.

Sınıflandırma modeli tahminde bulunur.

1. Şekil. Tahminde bulunan bir sınıflandırma modeli.

Modelin tahminine göre uygulamanız bir karar verebilir. Örneğin, tahmin A kategorisi ise X işlemini; tahmin B kategorisiyse Y'yi; tahmin C kategorisiyse Z'yi yapın. Bazı durumlarda tahmin, uygulamanın çıkışı olur.

Ürün kodu, karar vermek için modelin çıkışını kullanır.

2. Şekil. Karar vermek için ürün kodunda kullanılan sınıflandırma modelinin çıkışıdır.

Regresyon

regresyon modeli sayısal bir değeri tahmin eder.

Regresyon modeli tahminde bulunuyor.

3. Şekil. Sayısal tahmin yapan bir regresyon modeli.

Modelin tahminine göre uygulamanız bir karar verebilir. Örneğin, tahmin A aralığındaysa X; tahmin B aralığındaysa Y; tahmin C aralığındaysa Z yapsın. Bazı durumlarda tahmin, uygulamanın çıktısı olur.

Ürün kodu, karar vermek için modelin çıkışını kullanır.

4. Şekil. Karar vermek için ürün kodunda kullanılan bir regresyon modelinin çıkışıdır.

Aşağıdaki senaryoyu inceleyin:

Videoları tahmini popülerliklerine göre önbelleğe almak istiyorsunuz. Diğer bir deyişle, modeliniz bir videonun popüler olacağını tahmin ediyorsa bu videoyu kullanıcılara hızlı bir şekilde sunmak istersiniz. Bunu yapmak için daha etkili ve pahalı önbelleği kullanırsınız. Diğer videolar için farklı bir önbellek kullanırsınız. Önbelleğe alma ölçütleriniz şunlardır:

  • Bir videonun 50 veya daha fazla görüntüleme alacağı tahmin ediliyorsa pahalı önbelleği kullanırsınız.
  • Bir videonun 30 ile 50 arasında görüntüleme alacağı tahmin ediliyorsa ucuz önbelleği kullanırsınız.
  • Videonun 30'dan az görüntüleme alacağı tahmin ediliyorsa videoyu önbelleğe almazsınız.

Sayısal bir değer olan görüntüleme sayısını tahmin edeceğiniz için regresyon modelinin doğru yaklaşım olduğunu düşünüyorsunuz. Ancak regresyon modelini eğitirken, 30 görüntülemeye sahip videolar için 28 ve 32 tahmini için aynı kaybı ürettiğini fark edersiniz. Diğer bir deyişle, tahmin 28 ve 32 olduğunda uygulamanızın davranışı çok farklı olsa da, model her iki tahminin de eşit derecede iyi olduğunu kabul eder.

Eğitilen ve kaybı değerlendirilen bir model.

5. Şekil. Regresyon modeli eğitmek.

Regresyon modelleri, ürün tanımlı eşiklerin farkında değildir. Bu nedenle, uygulamanızın davranışı bir regresyon modelinin tahminlerindeki küçük farklılıklar nedeniyle önemli ölçüde değişiyorsa bunun yerine bir sınıflandırma modeli uygulamayı düşünmelisiniz.

Bu senaryoda, sınıflandırma modeli 28'lik tahmin için 32'ye kıyasla daha yüksek kayıp üreteceği için sınıflandırma modeli doğru davranışı üretir. Sınıflandırma modelleri bir anlamda varsayılan olarak eşikler üretir.

Bu senaryoda iki önemli nokta vurgulanmaktadır:

  • Kararı tahmin edin. Mümkün olduğunda uygulamanızın alacağı kararı tahmin edin. Video örneğinde, bir sınıflandırma modeli videoları sınıflandırdığı kategorilerin "önbellek yok", "ucuz önbellek" ve "pahalı önbellek" olması durumunda kararı tahmin eder. Uygulamanızın davranışını modelden gizlemek, uygulamanızın yanlış davranış üretmesine neden olabilir.

  • Sorunun kısıtlamalarını anlayın. Uygulamanız farklı eşiklere göre farklı işlemler yapıyorsa bu eşiklerin sabit mi yoksa dinamik mi olduğunu belirleyin.

    • Dinamik eşikler: Eşikler dinamikse bir regresyon modeli kullanın ve uygulamanızın kodunda eşik sınırlarını belirleyin. Bu, modelin makul tahminler yapmasını sağlarken eşikleri kolayca güncellemenize olanak tanır.
    • Sabit eşikler: Eşikler sabitse bir sınıflandırma modeli kullanın ve veri kümelerinizi eşik sınırlarına göre etiketleyin.

    Genel olarak, önbellek temel hazırlığı dinamiktir ve eşikler zaman içinde değişir. Bu nedenle, bu özellikle bir önbelleğe alma sorunu olduğu için en iyi seçenek regresyon modelidir. Ancak birçok sorun için eşikler sabitleneceği için sınıflandırma modeli en iyi çözümdür.

Başka bir örneğe bakalım. İdeal sonucu, kullanıcılara önümüzdeki altı saat içinde ne kadar yağmur yağacağını söylemek olan bir hava durumu uygulaması oluşturuyorsanız precipitation_amount. etiketini tahmin eden bir regresyon modeli kullanabilirsiniz.

İdeal sonuç İdeal etiket
Kullanıcılara önümüzdeki altı saat içinde bölgelerinde ne kadar yağmur yağacağını söyleyin. precipitation_amount

Hava durumu uygulaması örneğinde, etiket doğrudan ideal sonuca işaret eder. Ancak bazı durumlarda ideal sonuç ile etiket arasında bire bir ilişki net değildir. Örneğin, video uygulamasında ideal sonuç faydalı videolar önermektir. Ancak veri kümesinde useful_to_user. adlı bir etiket yoktur

İdeal sonuç İdeal etiket
Faydalı videolar önerme. ?

Bu nedenle bir proxy etiketi bulmanız gerekir.

Proxy etiketleri

Proxy etiketleri, veri kümesinde olmayan etiketlerin yerini alır. Tahmin etmek istediğiniz şeyi doğrudan ölçemediğinizde proxy etiketleri gereklidir. Video uygulamasında, kullanıcıların bir videoyu faydalı bulup bulmayacağını doğrudan ölçemeyiz. Veri kümesinde useful özelliği olsaydı ve kullanıcılar yararlı buldukları tüm videoları işaretlemiş olsaydı harika olurdu. Ancak veri kümesi böyle olmadığından kullanışlılık yerine bir proxy etiketine ihtiyacımız olur.

Kullanışlılık açısından proxy etiketi, kullanıcının videoyu paylaşıp paylaşmayacağı veya videoyu beğenme durumu olabilir.

İdeal sonuç Proxy etiketi
Faydalı videolar önerme. shared OR liked

Proxy etiketleri tahmin etmek istediğiniz şeyi doğrudan ölçmediğinden dikkatli olun. Örneğin, aşağıdaki tabloda Faydalı videolar önerme için olası proxy etiketleriyle ilgili sorunlar özetlenmektedir:

Proxy etiketi Sorun
Kullanıcının "beğen" düğmesini tıklayıp tıklamayacağını tahmin edin. Çoğu kullanıcı "beğen"i asla tıklamaz.
Bir videonun popüler olup olmayacağını tahmin edin. Kişiselleştirilmedi. Bazı kullanıcılar popüler videoları beğenmeyebilir.
Kullanıcının videoyu paylaşıp paylaşmayacağını tahmin edin. Bazı kullanıcılar video paylaşmaz. Bazen insanlar videoları beğenmedikleri için paylaşırlar.
Kullanıcının oynat'ı tıklayıp tıklamayacağını tahmin edin. Tıklama tuzağını en üst düzeye çıkarır.
Videoyu ne kadar süreyle izlediklerini tahmin edin. Kısa videolara kıyasla uzun videoları tercih eder.
Kullanıcının videoyu kaç kez tekrar izleyeceğini tahmin edin. Tekrar izlenemeyen video türlerine kıyasla "tekrar izlenebilir" videoları tercih eder.

Hiçbir proxy etiketi ideal sonucunuz için mükemmel bir alternatif olamaz. Hepsinde potansiyel sorunlar olacaktır. Kullanım alanınız için en az soruna sahip olanı seçin.

Öğrendiklerinizi Sınayın

Bir şirket, kullanıcıların daha iyi hissetmesine yardımcı olmak için sağlık ve denge uygulamalarında makine öğreniminden yararlanmak istiyor. Amaçlarına ulaşmak için proxy etiketleri kullanmaları gerektiğini düşünüyor musunuz?
Evet, şirketin proxy etiketlerini bulması gerekir. Mutluluk ve sağlık gibi kategoriler doğrudan ölçülemez. Bunun yerine, haftalık egzersiz saatleri veya hobilerle ya da arkadaşlarla geçirilen zaman gibi başka bir özellikle ilgili yaklaşık değerler verilmelidir.
Hayır, şirketin proxy etiketleri kullanması gerekmez. Mutluluk ve sağlık doğrudan ölçülebilir.

Nesil

Çoğu durumda, kendi üretici modelinizi eğitmek için büyük miktarda eğitim verisi ve bilgi işlem kaynağı gerekir. Bu nedenle, kendi üretici modelinizi eğitmeniz mümkün olmaz. Bunun yerine, önceden eğitilmiş, üretici modeli özelleştirirsiniz. İstediğiniz çıktıyı sağlayacak üretici bir model elde etmek için aşağıdaki tekniklerden birini veya daha fazlasını kullanmanız gerekebilir:

  • Damıtma. Daha büyük bir modelin daha küçük bir sürümünü oluşturmak için, küçük modeli eğitmek için kullandığınız büyük modelden sentetik etiketli bir veri kümesi oluşturursunuz. Üretken modeller genellikle çok büyüktür ve önemli kaynaklar (ör. bellek ve elektrik) tüketir. Damıtma, daha küçük ve daha az kaynak kullanan modelin büyük modelin performansını yaklaşık olarak tahmin etmesini sağlar.

  • İnce ayarlama veya parametre verimli ayarlama. Bir modelin belirli bir görevdeki performansını artırmak için modeli, üretmek istediğiniz çıkış türünün örneklerini içeren bir veri kümesi üzerinde daha fazla eğitmeniz gerekir.

  • Hızlı mühendislik. Modelin belirli bir görevi gerçekleştirmesini veya belirli bir biçimde çıktı üretmesini sağlamak için, modele yapmasını istediğiniz görevi söyler veya çıktının nasıl biçimlendirilmesini istediğinizi açıklarsınız. Başka bir deyişle, istem, görevin nasıl gerçekleştirileceğine dair doğal dil talimatları veya istenen çıktılarla birlikte açıklayıcı örnekler içerebilir.

    Örneğin, makalelerin kısa özetlerini almak isterseniz aşağıdakileri girebilirsiniz:

    Produce 100-word summaries for each article.
    

    Modelin belirli bir okuma seviyesi için metin oluşturmasını istiyorsanız aşağıdakileri girebilirsiniz:

    All the output should be at a reading level for a 12-year-old.
    

    Modelin çıktısını belirli bir biçimde sağlamasını istiyorsanız çıkışın nasıl biçimlendirilmesi gerektiğini açıklayabilir (örneğin, "sonuçları tabloda biçimlendirebilir") veya örnekler vererek görevi gösterebilirsiniz. Örneğin, aşağıdakileri girebilirsiniz:

    Translate words from English to Spanish.
    
    English: Car
    Spanish: Auto
    
    English: Airplane
    Spanish: Avión
    
    English: Home
    Spanish:______
    

Damıtma ve ince ayar, modelin parametrelerini günceller. İstem mühendisliği, modelin parametrelerini güncellemez. Bunun yerine istem mühendisliği, modelin istem bağlamından istenen çıktıyı nasıl üreteceğini öğrenmesine yardımcı olur.

Bazı durumlarda, üretici bir modelin çıktısını bilinen değerlere göre değerlendirmek için bir test veri kümesine de ihtiyacınız olur. Örneğin, modelin özetlerinin insanlar tarafından oluşturulan özetlere benzediğinden veya insanlar modelin özetlerini iyi olarak değerlendirdiğinden emin olabilir.

Üretken yapay zeka, sınıflandırma veya regresyon gibi tahmine dayalı bir makine öğrenimi çözümü uygulamak için de kullanılabilir. Örneğin, doğal dil konusundaki derin bilgi birikimleri nedeniyle büyük dil modelleri (LLM), metin sınıflandırma görevlerini genellikle belirli bir görev için eğitilen tahmine dayalı makine öğreniminden daha iyi performans gösterebilir.

Başarı metriklerini tanımlayın

ML uygulamasının başarılı olup olmadığını belirlemek için kullanacağınız metrikleri tanımlayın. Başarı metrikleri, etkileşim veya kullanıcıların uygun buldukları videoları izleme gibi uygun işlemleri yapmalarına yardımcı olmak gibi sizin için önemli olan unsurları tanımlar. Başarı metrikleri, modelin doğruluk, hassasiyet, geri çağırma veya AUC gibi değerlendirme metriklerinden farklıdır.

Örneğin, hava durumu uygulamasının başarı ve başarısızlık metrikleri aşağıdaki gibi tanımlanabilir:

Başarılı Kullanıcılar "Yağmur yağacak mı?" özelliğini öncekinden %50 daha fazla açıyorlar.
Hata Kullanıcılar "Yağmur yağacak mı?" özelliğini eskisinden daha sık açmaz.

Video uygulama metrikleri aşağıdaki şekilde tanımlanabilir:

Başarılı Kullanıcılar sitede ortalama yüzde 20 daha fazla zaman geçiriyor.
Hata Kullanıcılar, sitede geçmişe kıyasla ortalama olarak daha fazla zaman geçirmiyor.

İddialı başarı metrikleri tanımlamanızı öneririz. Ama yüksek tutkular başarı ile başarısızlık arasında boşluklara yol açabilir. Örneğin, sitede geçmişe kıyasla ortalama yüzde 10 daha fazla zaman geçiren kullanıcılar ne başarılı ne de başarısız sayılır. Belirsiz boşluklar önemli değildir.

Önemli olan, modelinizin başarı tanımına yaklaşma (veya bunu aşma) kapasitesidir. Örneğin, modelin performansını analiz ederken şu soruyu göz önünde bulundurun: Modeli iyileştirmek sizi tanımladığınız başarı kriterlerine yaklaştırır mı? Örneğin, bir model mükemmel değerlendirme metriklerine sahip olabilir ancak sizi başarı kriterlerinize yaklaştırmayabilir. Bu durum, mükemmel bir modelle bile tanımladığınız başarı kriterlerini karşılayamayacağınızı gösterir. Öte yandan, bir modelin değerlendirme metrikleri zayıf olabilir ancak bu model iyileştirmenin sizi başarıya yaklaştıracağını gösterecek şekilde başarı kriterlerinize yaklaşmanızı sağlar.

Modelin iyileştirilmesine değer olup olmadığına karar verirken dikkate alınması gereken boyutlar şunlardır:

  • Yeterince iyi değil ancak devam edin. Model, üretim ortamında kullanılmamalıdır. Ancak zaman içinde önemli ölçüde iyileştirilebilir.

  • O zaman, devam edin. Model, bir üretim ortamında kullanılabilir ve daha da iyileştirilebilir.

  • Yeterince iyi, ancak daha iyi hale getirilemez. Model, bir üretim ortamında kullanılmakta, ama olması gereken kadar iyi olabilir.

  • Yeterince iyi değil ve hiçbir zaman da olamayacak. Model, üretim ortamında kullanılmamalıdır ve muhtemelen hiçbir eğitimle buraya çekilmez.

Modeli iyileştirmeye karar verirken mühendislik süresi ve işlem maliyetleri gibi kaynaklardaki artışın, modelin tahmin edilen iyileştirmesini haklı çıkarıp göstermediğini yeniden değerlendirin.

Başarı ve başarısızlık metriklerini tanımladıktan sonra bunları ne sıklıkta ölçeceğinizi belirlemeniz gerekir. Örneğin, sistem uygulandıktan altı gün, altı hafta veya altı ay sonra başarı metriklerinizi ölçebilirsiniz.

Hata metriklerini analiz ederken sistemin neden başarısız olduğunu belirlemeye çalışın. Örneğin model, kullanıcıların hangi videoları tıklayacağını tahmin ediyor olabilir ancak model, kullanıcı etkileşiminin azalmasına neden olan tıklama tuzağı başlıkları önermeye başlayabilir. Hava durumu uygulaması örneğinde model, bir coğrafi bölgede çok büyük bir yağmurun ne zaman yağacağını doğru bir şekilde tahmin edebilir.

Öğrendiklerinizi Sınayın

Bir moda firması daha fazla kıyafet satmak istiyor. Birisi, firmanın hangi kıyafetleri üretmesi gerektiğini belirlemek için makine öğreniminden yararlanılmasını öneriyor. Ne tür giysilerin moda olduğunu belirlemek için bir mankeni eğitebileceklerini düşünüyorlar. Model eğitildikten sonra, hangi kıyafetleri alacağına karar vermek için modeli kataloglarına uygulamak istiyor.

Bu problemi makine öğrenimi terimleriyle nasıl ele almalıdır?

İdeal sonuç: Hangi ürünlerin üretileceğini belirleyin.

Modelin hedefi: Hangi giyim ürünlerinin moda olduğunu tahmin edin.

Model çıkışı: İkili program sınıflandırması, in_fashion, not_in_fashion

Başarı metrikleri: Üretilen giysilerin yüzde yetmişini veya daha fazlasını satın.

İdeal sonuç: Sipariş edilecek kumaş ve malzeme miktarını belirleyin.

Modelin hedefi: Her bir öğeden ne kadar üretileceğini tahmin edin.

Model çıkışı: İkili program sınıflandırması, make, do_not_make

Başarı metrikleri: Üretilen giysilerin yüzde yetmişini veya daha fazlasını satın.

İdeal sonuç, sipariş edilecek kumaş ve malzeme miktarını belirlemek değildir. Bir ürünün üretilip üretilmemesi gerektiğini belirlemek. Dolayısıyla modelin hedefi yanlış hedefe yönelik.