Uygulanabilirlik

Fikir üretme ve planlama aşamasında bir makine öğrenimi çözümünün öğelerini araştıracaksınız. Problemi çerçeveleme görevi sırasında bir problemi makine öğrenimi çözümü açısından yorumluyorsunuz. Makine Öğrenimi Sorun Çerçevelemeye Giriş kursunda bu adımlar ayrıntılı olarak ele alınmaktadır. Planlama görevi sırasında bir çözümün uygulanabilirliğini tahmin eder, yaklaşımları planlar ve başarı metrikleri belirlersiniz.

Makine öğrenimi teorik olarak iyi bir çözüm olsa da yine de gerçek dünyadaki uygulanabilirliğini tahmin etmeniz gerekir. Örneğin, bir çözüm teknik olarak işe yarayabilir ancak uygulanması imkansız ya da imkansız olabilir. Aşağıdaki faktörler bir projenin fizibilitesini etkiler:

  • Veri kullanılabilirliği
  • Soru zorluğu
  • Tahmin kalitesi
  • Teknik koşullar
  • Maliyet

Veri kullanılabilirliği

ML modelleri yalnızca eğitildikleri veriler kadar başarılıdır. Yüksek kaliteli tahminlerde bulunabilmek için çok sayıda yüksek kaliteli veriye ihtiyaç vardır. Aşağıdaki soruları ele almak, bir modeli eğitmek için gerekli verilere sahip olup olmadığınıza karar vermenize yardımcı olabilir:

  • Miktar. Model eğitmek için yeterli miktarda yüksek kaliteli veri alabiliyor musunuz? Etiketli örnekler yetersiz mi, zor mu yoksa çok mu pahalı? Örneğin, tıbbi görüntülerin veya nadir bulunan dillerin çevirilerinin etiketlenmesini sağlamak bazen zordur. İyi tahminlerde bulunmak için sınıflandırma modellerinin her bir etikete ait çok sayıda örnek olması gerekir. Eğitim veri kümesi bazı etiketler için sınırlı sayıda örnek içeriyorsa model iyi tahminlerde bulunamaz.

  • Yayın sırasında özelliğin kullanılabilirliği. Eğitimde kullanılan tüm özellikler sunum sırasında kullanılabilir durumda olacak mı? Ekipler modelleri eğitim için epey zaman harcamıştır. Bu nedenle bazı özelliklerin, modelin gerektirdiği özelliklerden birkaç gün sonrasına kadar kullanılabilir olmadığını fark etmek isteriz.

    Örneğin, bir modelin, müşterinin bir URL'yi tıklayıp tıklamayacağını tahmin ettiğini ve eğitimde kullanılan özelliklerden birinin user_age içerdiğini varsayalım. Ancak model bir tahmin sunduğunda user_age kullanılamaz. Bunun nedeni kullanıcının henüz bir hesap oluşturmaması olabilir.

  • Yönetmelikler. Verilerin edinilmesi ve kullanılmasıyla ilgili mevzuatlar ve yasal gereklilikler nelerdir? Örneğin, bazı gereksinimler, belirli veri türlerini depolama ve kullanma konusunda sınırlar belirler.

Üretken yapay zeka

Önceden eğitilmiş üretken yapay zeka modelleri, alana özgü görevlerde başarılı olabilmek için genellikle seçilmiş veri kümelerine ihtiyaç duyar. Aşağıdaki kullanım alanları için veri kümelerine ihtiyaç duyabilirsiniz:

  • Hızlı mühendislik, parametre açısından verimli ayarlama ve ince ayar. Kullanım alanına bağlı olarak, bir modelin çıktısını daha da hassaslaştırmak için 10 ile 10.000 arasında yüksek kaliteli örneğe ihtiyacınız olabilir. Örneğin, bir modelin belirli bir görevde (ör. tıbbi soruları yanıtlamak) uzmanlaşması için ince ayar yapılması gerekiyorsa, sorulacağı soruları ve yanıt vermesi gereken cevap türlerini temsil eden yüksek kaliteli bir veri kümesine ihtiyacınız olacaktır.

    Aşağıdaki tabloda, belirli bir teknikte üretken yapay zeka modelinin çıktısını hassaslaştırmak için gereken örnek sayısıyla ilgili tahminler sunulmaktadır:

  • Teknik Gerekli örnek sayısı
    sıfır çekim isteme 0
    Az çekimli istem ~10 sn-100 sn.
    Parametreyi verimli bir şekilde ayarlama 1 ~100 sn. - 10.000 sn.
    İnce ayar ~1.000 sn. - 10.000 sn. (veya daha fazla)
    1 Düşük Sıralama Uyarlama (LoRA) ve istem ayarlama.
  • Güncel bilgiler. Üretken yapay zeka modelleri, önceden eğitildikten sonra sabit bir bilgi tabanına sahip olur. Modelin alanındaki içerik sık sık değişiyorsa modeli güncel tutmak için aşağıdaki gibi bir stratejiye ihtiyacınız vardır:

Soru zorluğu

Bir sorunun zorluğunu tahmin etmek zor olabilir. Başlangıçta makul görünen bir yaklaşım, aslında açık bir araştırma sorusu olarak ortaya çıkabilir. Pratik ve uygulanabilir görünen yaklaşımlar ise gerçekçi olmayabilir veya uygulanamaz hale gelebilir. Aşağıdaki soruları yanıtlamak bir sorunun zorluğunu ölçmeye yardımcı olabilir:

  • Benzer bir problem daha önce çözüldü mü? Örneğin, kuruluşunuzdaki ekipler model oluşturmak için benzer (veya aynı) verileri kullandı mı? Kuruluşunuzun dışındaki kişiler veya ekipler benzer sorunları Kaggle ya da TensorFlow Hub'da çözdü mü? Böyle bir durumda, kendi modelinizi oluşturmak için muhtemelen onun modelinin parçalarını kullanabilirsiniz.

  • Sorunun yapısı zor mu? Görev için insanlar tarafından gerçekleştirilen karşılaştırmaları bilmek, sorunun zorluğu hakkında bilgi verebilir. Örneğin:

    • İnsanlar bir görüntüdeki hayvanın türünü yaklaşık% 95 doğrulukla sınıflandırabilir.
    • İnsanlar el yazısıyla yazılmış sayıları yaklaşık% 99 doğrulukla sınıflandırabilir.

    Yukarıdaki veriler, hayvanları sınıflandırmak için bir model oluşturmanın, elle yazılmış rakamları sınıflandırmak için bir model oluşturmaktan daha zor olduğunu göstermektedir.

  • Kötü aktörler olabilir mi? İnsanlar aktif olarak modelinizden sömürmeye çalışacak mı? Böyle bir durumda, hatalı kullanılmadan önce modeli sürekli güncelleme bir yarışta olursunuz. Örneğin, birisi meşru görünen e-postalar oluşturmak için bu modelden yararlandığında spam filtreleri yeni spam türlerini yakalayamaz.

Üretken yapay zeka

Üretken yapay zeka modelleri, bir sorunun zorluğunu artırabilecek potansiyel güvenlik açıklarına sahiptir:

  • Giriş kaynağı. Giriş nereden gelecek? Zıt içerikli istemler eğitim verilerini, giriş materyallerini, veritabanı içeriğini veya araç bilgilerini sızdırabilir mi?
  • Çıkış kullanımı. Çıkışlar nasıl kullanılacak? Model, ham içerik verecek mi yoksa uygun olduğunu test edip doğrulayan ara adımlar olacak mı? Örneğin, eklentilere ham çıkış sağlamak çeşitli güvenlik sorunlarına neden olabilir.
  • İnce ayar. Bozuk bir veri kümesiyle ince ayar yapmak, modelin ağırlıklarını olumsuz yönde etkileyebilir. Bu bozulma, modelin yanlış, zararlı veya yanlı içerik oluşturmasına neden olur. Daha önce belirtildiği gibi ince ayar için yüksek kaliteli örnekler içerdiği doğrulanmış bir veri kümesi gerekir.

Tahmin kalitesi

Bir modelin tahminlerinin kullanıcılarınız üzerinde oluşturacağı etkiyi dikkatlice değerlendirmek ve model için gereken tahmin kalitesini belirlemek istersiniz.

Gerekli tahmin kalitesi, tahminin türüne bağlıdır. Örneğin, bir öneri sistemi için gerekli tahmin kalitesi, politika ihlallerini işaretleyen bir model için aynı olmayacaktır. Yanlış videonun önerilmesi kötü bir kullanıcı deneyimine yol açabilir. Ancak bir videonun platform politikalarını ihlal ettiği hatalı şekilde işaretlenmesi, destek maliyetlerine, daha da kötüsü yasal ücretlere neden olabilir.

Yanlış tahminler son derece maliyetli olduğu için modelinizin çok yüksek tahmin kalitesine sahip olması gerekir mi? Genellikle, gereken tahmin kalitesi ne kadar yüksek olursa sorun da o kadar zor olur. Ne yazık ki kaliteyi artırmaya çalıştığınızda projelerin getirileri genellikle azalıyor. Örneğin bir modelin hassasiyetini% 99,9'dan% 99,99'a yükseltmek projenin maliyetinde 10 kat artış (daha fazla değilse) anlamına gelebilir.

Tahmin kalitesi arttıkça proje maliyetleri de yükselir.

2. Şekil. ML projeleri genellikle gereken tahmin kalitesi arttıkça daha fazla kaynak gerektirir.

Üretken yapay zeka

Üretken yapay zeka çıktılarını analiz ederken aşağıdakileri göz önünde bulundurun:

  • Bilgilerin doğruluğu. Üretken yapay zeka modelleri akıcı ve tutarlı içerik üretebilir, ancak bunun gerçek olduğu garanti edilmez. Üretken yapay zeka modellerinden gelen yanlış ifadelere konferanslar adı verilir. Örneğin, üretken yapay zeka modelleri metinlerin yanlış özetlerini, matematik sorularına yanlış cevapları veya dünya hakkında yanlış beyanları birleştirip üretebilir. Birçok kullanım alanında hâlâ üretim ortamında kullanılmadan önce üretken yapay zeka çıktısının insanlar tarafından doğrulanması gerekir (ör. LLM tarafından oluşturulan kod).

    Geleneksel makine öğreniminde olduğu gibi, bilgiye dayalı doğruluk gereksinimi ne kadar yüksek olursa geliştirme ve bakım maliyeti de o kadar yüksek olur.

  • Çıkış kalitesi. Taraflı, intihal veya zehirli içerik gibi kötü çıktıların yasal ve mali sonuçları (veya etik sonuçları) nelerdir?

Teknik koşullar

Modellerin uygulanabilirliğini etkileyen bir dizi teknik gereksinim vardır. Projenizin fizibilitesini belirlemek için ele almanız gereken temel teknik gereksinimler şunlardır:

  • Gecikme. Gecikme şartları nelerdir? Tahminlerin ne kadar hızlı sunulması gerekiyor?
  • Saniyedeki sorgu sayısı (QPS). QPS gereksinimleri nelerdir?
  • RAM kullanımı. Eğitim ve sunum için RAM gereksinimleri nelerdir?
  • Platform. Model nerede çalışır: Online (RPC sunucusuna gönderilen sorgular), WebML (web tarayıcısının içinde), ODML (telefonda veya tablette) veya çevrimdışı (bir tabloya kaydedilen tahminler)?
  • Yorumlanabilirlik. Tahminlerin yorumlanabilir olması gerekecek mi? Örneğin, ürününüzün "Belirli bir içerik neden spam olarak işaretlendi?" veya "Bir video neden platformun politikasını ihlal ettiği belirlendi?" gibi sorulara yanıt vermelidir.

  • Yeniden eğitim sıklığı. Modelinizin temel verileri hızlı bir şekilde değiştiğinde, sık sık veya sürekli olarak yeniden eğitim gerekebilir. Ancak, sık sık yeniden eğitim yapılması, modelin tahminlerini güncellemenin yararlarından ağır basabilecek yüksek maliyetlere yol açabilir.

Çoğu durumda, teknik özelliklerine uymak için büyük olasılıkla bir modelin kalitesinden ödün vermeniz gerekir. Bu gibi durumlarda, üretime yetecek kadar iyi bir model üretip üretemeyeceğinizi belirlemelisiniz.

Üretken yapay zeka

Üretken yapay zeka ile çalışırken aşağıdaki teknik gereksinimleri göz önünde bulundurun:

  • Platform. Önceden eğitilmiş birçok modelin çeşitli boyutlarda olması, bunların farklı bilgi işlem kaynaklarına sahip çeşitli platformlarda çalışabilmesini sağlar. Örneğin, önceden eğitilmiş modeller, veri merkezi ölçeğinden telefona sığdırmaya kadar değişiklik gösterebilir. Model boyutu seçerken ürün veya hizmetinizin gecikme süresini, gizliliğini ve kalite kısıtlamalarını dikkate almanız gerekir. Bu kısıtlamalar çoğu zaman birbiriyle çakışabilir. Örneğin, gizlilik kısıtlamaları, çıkarımların bir kullanıcının cihazında yapılmasını gerektirebilir. Ancak cihazda iyi sonuçlar üretecek işlem kaynaklarına sahip olmadığından çıkış kalitesi düşük olabilir.
  • Gecikme. Model giriş ve çıkış boyutu gecikmeyi etkiler. Özellikle, çıkış boyutu, gecikmeyi giriş boyutundan daha fazla etkiler. Modeller girişlerini paralel hale getirebilir ancak yalnızca sıralı olarak çıkış oluşturabilir. Başka bir deyişle, gecikme 500 kelimelik veya 10 kelimelik bir girişi almakla aynı olabilir. 500 kelimelik bir özet ise 10 kelimelik bir özet oluşturmaya kıyasla önemli ölçüde daha uzun sürer.
  • Araç ve API kullanımı. Modelin internette arama yapma, hesap makinesi veya bir görevi tamamlamak için e-posta istemcisine erişme gibi araçları ve API'leri kullanması gerekecek mi? Genelde, bir görevi tamamlamak için ne kadar çok araç gerekirse hata yayma ve modelin güvenlik açıklarını artırma ihtimali o kadar artar.

Maliyet

Makine öğrenimi uygulaması maliyetlerine değer mi? Makine öğrenimi çözümünün uygulanması ve bakımı, sağladığı (veya tasarruf ettiği) paradan daha pahalıysa çoğu makine öğrenimi projesi onaylanmaz. Makine öğrenimi projeleri için hem insan hem de makine maliyeti uygulanır.

  • İnsani maliyetler. Projenin kavram kanıtlama aşamasından üretim aşamasına geçmesi için kaç kişi gerekecek? Makine öğrenimi projeleri geliştikçe giderler de genellikle artar. Örneğin, makine öğrenimi projelerinde prototip oluşturmaktan ziyade üretime hazır bir sistemi dağıtıp sürdürmesi gereken kişi sayısı daha fazladır. Projenin her aşamada ihtiyaç duyacağı rolleri ve sayısını tahmin etmeye çalışın.

  • Makine maliyetleri. Modellerin eğitilmesi, dağıtılması ve bakımının yapılması yüksek düzeyde bilgi işlem ve bellek gerektirir. Örneğin, veri ardışık düzeniniz için gerekli altyapının yanı sıra eğitim modelleri ve tahmin sunmak için TPU kotasına ihtiyacınız olabilir. Verilerin etiketlenmesi için ücret ödemeniz veya veri lisanslama ücretleri ödemeniz gerekebilir. Bir modeli eğitmeden önce, makine öğrenimi özelliklerini uzun vadede geliştirme ve sürdürmenin makine maliyetlerini tahmin edin.

  • Çıkarım maliyeti. Modelin, oluşturulan gelirden daha yüksek maliyetli yüzlerce veya binlerce çıkarımda bulunması gerekir mi?

Hatırlatma

Önceki konuların herhangi biriyle ilgili sorunlarla karşılaşmak, makine öğrenimi çözümünü uygulamayı zorlaştırabilir ancak yakın teslim tarihleri zorlukları artırabilir. Sorunun algılanan zorluğuna göre yeterli süreyi planlamaya ve bütçelendirmeye çalışın. Ardından, makine öğrenimi harici bir projede yapabileceğinizden daha fazla ek yük süresi ayırmaya çalışın.