Fikir üretme ve planlama aşamasında bir makine öğrenimi çözümünün unsurlarını araştırırsınız. Sorunu çerçeveleme görevinde, bir sorunu makine öğrenimi çözümü açısından çerçevelersiniz. Makine Öğrenimiyle Problem Çerçevelemeye Giriş kursunda bu adımlar ayrıntılı olarak ele alınmaktadır. Planlama görevinde, bir çözümün uygulanabilirliğini tahmin eder, yaklaşımları planlar ve başarı metriklerini belirlersiniz.
Makine öğrenimi teorik olarak iyi bir çözüm olsa da gerçek dünyada uygulanabilirliğini tahmin etmeniz gerekir. Örneğin, bir çözüm teknik olarak işe yarayabilir ancak pratik olmayabilir veya uygulanamayabilir. Aşağıdaki faktörler bir projenin uygulanabilirliğini etkiler:
- Veri kullanılabilirliği
- Sorunun zorluk düzeyi
- Tahmin kalitesi
- Teknik koşullar
- Maliyet
Veri kullanılabilirliği
Makine öğrenimi modelleri, eğitildikleri veriler kadar iyidir. Yüksek kaliteli tahminler yapabilmek için çok fazla yüksek kaliteli veriye ihtiyaç duyarlar. Aşağıdaki soruları yanıtlamak, bir modeli eğitmek için gerekli verilere sahip olup olmadığınızı değerlendirmenize yardımcı olabilir:
Miktar. Bir modeli eğitmek için yeterli miktarda yüksek kaliteli veri elde edebilir misiniz? Etiketli örnekler az mı, elde edilmesi zor mu veya çok mu pahalı? Örneğin, tıbbi görüntülerin etiketlenmesi veya nadir dillerin çevirileri oldukça zordur. İyi tahminler yapmak için sınıflandırma modelleri, her etiket için çok sayıda örnek gerektirir. Eğitim veri kümesi bazı etiketler için sınırlı sayıda örnek içeriyorsa model iyi tahminler yapamaz.
Yayın sırasında özellik kullanılabilirliği. Eğitimde kullanılan tüm özellikler yayın sırasında kullanılabilir mi? Ekipler, modelleri eğitmek için önemli miktarda zaman harcadıktan sonra bazı özelliklerin, modelin ihtiyaç duyduğu tarihten günler sonra kullanıma sunulduğunu fark etti.
Ö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
olduğunu varsayalım. Ancak model bir tahmin sunduğundauser_age
kullanılamaz. Bunun nedeni, kullanıcının henüz hesap oluşturmamış olması olabilir.Yönetmelikler. Verilerin edinilmesi ve kullanılmasıyla ilgili yönetmelikler ve yasal şartlar nelerdir? Örneğin, bazı şartlar belirli veri türlerinin depolanması ve kullanılmasıyla ilgili sınırlar belirler.
Üretken yapay zeka
Önceden eğitilmiş üretken yapay zeka modelleri, alana özgü görevlerde başarılı olmak için genellikle düzenlenmiş veri kümeleri gerektirir. Aşağıdaki kullanım alanları için veri kümelerine ihtiyacınız olabilir:
-
İstem mühendisliği,
parametreleri verimli şekilde kullanma ve
ince ayar.
Kullanım alanına bağlı olarak, bir modelin çıkışını daha da iyileştirmek için 10 ila 10.000 arasında yüksek kaliteli örnek gerekebilir. Örneğin, bir modelin tıbbi soruları yanıtlama gibi belirli bir görevde başarılı olması için ince ayar yapılması gerekiyorsa kendisine sorulacak soru türlerini ve yanıtlaması gereken cevap türlerini temsil eden yüksek kaliteli bir veri kümesine ihtiyacınız olur.
Aşağıdaki tabloda, belirli bir teknik için üretken yapay zeka modelinin çıkışını iyileştirmek üzere gereken örnek sayısı tahminleri verilmiştir:
-
Güncel bilgiler. Önceden eğitilmiş üretken yapay zeka modellerinin sabit bir bilgi tabanı vardır. Modelin alanındaki içerik sık sık değişiyorsa modeli güncel tutmak için bir stratejiye ihtiyacınız vardır. Örneğin:
- ince ayar
- almayla artırılmış üretim (RAG)
- dönemsel ön eğitim
Teknik | Gerekli örnek sayısı |
---|---|
Sıfır örnekli istem | 0 |
Çok görevli istem | ~10 sn-100 sn |
Parametrelerin verimli kullanıldığı ayarlama 1 | ~100-10.000 |
İnce ayar | ~1.000-10.000 (veya daha fazla) |
Sorunun zorluk düzeyi
Bir sorunun zorluk derecesini tahmin etmek zor olabilir. İlk başta mantıklı bir yaklaşım gibi görünen şey aslında açık bir araştırma sorusu olabilir. Pratik ve yapılabilir görünen şey ise gerçekçi veya uygulanabilir olmayabilir. Aşağıdaki soruları yanıtlamak, bir sorunun zorluk derecesini ölçmenize yardımcı olabilir:
Benzer bir sorun daha önce çözüldü mü? Örneğin, kuruluşunuzdaki ekipler modeller oluşturmak için benzer (veya aynı) verileri kullandı mı? Kuruluşunuzun dışındaki kişiler veya ekipler, örneğin Kaggle ya da TensorFlow Hub'da benzer sorunları çözdü mü? Bu durumda, kendi modelinizi oluşturmak için bu kullanıcının modelinin bazı bölümlerini kullanabilirsiniz.
Sorunun niteliği zor mu? Görevle ilgili insan kıyaslamalarını bilmek, sorunun zorluk düzeyi hakkında bilgi verebilir. Örneğin:
- İnsanlar, bir resimdeki hayvan türünü yaklaşık% 95 doğrulukla sınıflandırabilir.
- İnsanlar, el yazısıyla yazılmış rakamları yaklaşık% 99 doğrulukla sınıflandırabilir.
Yukarıdaki veriler, hayvanları sınıflandırmak için model oluşturmanın el yazısıyla yazılmış rakamları sınıflandırmak için model oluşturmaktan daha zor olduğunu gösteriyor.
Kötü niyetli kişiler olabilir mi? Kullanıcılar modelinizi aktif olarak kullanmaya çalışacak mı? Bu durumda, modelin kötüye kullanılmasını önlemek için sürekli olarak modeli güncellemeniz gerekir. Örneğin, bir kullanıcı modeli kullanarak yasal görünen e-postalar oluşturduğunda spam filtreleri yeni spam türlerini yakalayamaz.
Üretken yapay zeka
Üretken yapay zeka modelleri, bir sorunun zorluğunu artırabilecek olası güvenlik açıkları içerir:
- Giriş kaynağı. Giriş nereden alınacak? Saldırgan istemler, eğitim verilerini, giriş metnini, veritabanı içeriğini veya araç bilgilerini sızdırabilir mi?
- Çıkış kullanımı. Çıkışlar nasıl kullanılacak? Model, ham içerik mi üretecek yoksa içeriğin uygunluğ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 etkileyebilir. Bu bozulma, modelin yanlış, zararlı veya taraflı içerik üretmesine 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 üzerindeki etkisini dikkatlice değerlendirmeniz ve model için gereken tahmin kalitesini belirlemeniz gerekir.
Gerekli tahmin kalitesi, tahmin türüne bağlıdır. Örneğin, bir öneri sistemi için gereken tahmin kalitesi, politika ihlallerini işaretleyen bir model için gerekenle aynı olmayacaktır. Yanlış videoyu önermek kötü bir kullanıcı deneyimine yol açabilir. Ancak bir videoyu platform politikalarını ihlal ediyor şeklinde yanlışlıkla işaretlemek destek maliyetlerine veya daha da kötüsü yasal ücretlere yol açabilir.
Yanlış tahminler son derece maliyetli olduğundan modelinizin tahmin kalitesinin çok yüksek olması mı gerekiyor? Genellikle, gerekli tahmin kalitesi ne kadar yüksekse sorun o kadar zor olur. Ne yazık ki projeler, kaliteyi artırmaya çalıştıkça genellikle azalan getiriye ulaşır. Örneğin, bir modelin kesinliğini% 99,9'dan% 99,99'a çıkarmak, projenin maliyetinde 10 kat artışa (daha fazla olmasa bile) neden olabilir.
Şekil 2. Bir makine öğrenimi projesi, gerekli tahmin kalitesi arttıkça genellikle daha fazla kaynak gerektirir.
Üretken yapay zeka
Üretken yapay zeka çıkışını analiz ederken aşağıdakileri göz önünde bulundurun:
-
Bilgilerin doğruluğu. Üretken yapay zeka modelleri akıcı ve tutarlı içerikler üretebilse de bunların gerçekleri yansıttığı garanti edilmez. Üretken yapay zeka modellerinin yanlış ifadelerine uydurma denir.
Örneğin, üretken yapay zeka modelleri uydurma bilgiler verebilir ve metinlerin yanlış özetlerini, matematik sorularına yanlış yanıtlar veya dünya hakkında yanlış ifadeler üretebilir. Üretken yapay zeka çıktılarının üretim ortamında kullanılmadan önce insan tarafından doğrulanması gereken birçok kullanım alanı vardır. Örneğin, LLM tarafından oluşturulan kodlar.
Geleneksel makine öğreniminde olduğu gibi, doğruluk açısından ne kadar yüksek bir gereksinim varsa geliştirme ve bakım maliyeti de o kadar yüksek olur.
- Çıkış kalitesi. Yanlış çıkışların (ör. önyargılı, intihal edilmiş veya toksik içerik) yasal ve finansal sonuçları (veya etik etkileri) nelerdir?
Teknik koşullar
Modellerin uygulanabilirliğini etkileyen bir dizi teknik şart vardır. Projenizin uygulanabilirliğini belirlemek için ele almanız gereken başlıca teknik koşullar şunlardır:
- Gecikme. Gecikmeyle ilgili koşullar nelerdir? Tahminler ne kadar hızlı sunulmalıdır?
- Saniyedeki sorgu sayısı (QPS). What are the QPS requirements?
- RAM kullanımı. Eğitim ve yayın için RAM gereksinimleri nelerdir?
- Platform. Model nerede çalışacak: İnternette (RPC sunucusuna gönderilen sorgular), WebML (web tarayıcısında), ODML (telefonda veya tablette) ya da çevrimdışı (tabloda kaydedilen tahminler)?
Yorumlanabilirlik. Tahminlerin yorumlanabilir olması gerekir mi? Örneğin, ürününüzün "Belirli bir içerik neden spam olarak işaretlendi?" veya "Bir videonun platformun politikasını ihlal ettiği neden belirlendi?" gibi soruları yanıtlaması gerekecek mi?
Yeniden eğitme sıklığı. Modelinizin temelini oluşturan veriler hızla değiştiğinde sık veya sürekli yeniden eğitim gerekebilir. Ancak, sık sık yeniden eğitme, modelin tahminlerini güncellemenin faydalarından daha ağır basabilecek önemli maliyetlere yol açabilir.
Çoğu durumda, teknik özelliklere uymak için modelin kalitesinden ödün vermeniz gerekebilir. Bu gibi durumlarda, üretime geçmek için yeterince iyi bir model oluşturup oluşturamayacağınızı belirlemeniz gerekir.
Üretken yapay zeka
Üretken yapay zekayla çalışırken aşağıdaki teknik koşulları göz önünde bulundurun:
- Platform. Birçok önceden eğitilmiş model, farklı boyutlarda sunulur. Bu sayede, farklı bilgi işlem kaynaklarına sahip çeşitli platformlarda çalışabilirler. Örneğin, önceden eğitilmiş modeller veri merkezi ölçeğinden telefona sığacak kadar küçük olabilir. Model boyutu seçerken ürününüzün veya hizmetinizin gecikme, gizlilik ve kalite kısıtlamalarını göz önünde bulundurmanız gerekir. Bu kısıtlamalar genellikle çakışabilir. Örneğin, gizlilik kısıtlamaları, çıkarımların kullanıcının cihazında çalıştırılmasını gerektirebilir. Ancak cihaz, iyi sonuçlar üretecek hesaplama 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 paralelleştirebilir ancak çıkışları yalnızca sıralı olarak oluşturabilir. Diğer bir deyişle, 500 kelimelik veya 10 kelimelik bir girişi almak için gereken gecikme süresi aynı olabilir. Ancak 500 kelimelik bir özet oluşturmak, 10 kelimelik bir özet oluşturmaktan çok daha uzun sürer.
- Araç ve API kullanımı. Modelin bir görevi tamamlamak için internette arama yapma, hesap makinesi kullanma veya bir e-posta istemcisine erişme gibi araçları ve API'leri kullanması gerekecek mi? Genellikle bir görevi tamamlamak için ne kadar çok araç gerekirse hataların yayılması ve modelin güvenlik açıklarının artması olasılığı da o kadar yüksek olur.
Maliyet
Makine öğrenimi uygulaması maliyetine değer mi? Makine öğrenimi çözümü, oluşturduğu (veya tasarruf ettiği) paradan daha pahalıysa çoğu makine öğrenimi projesi onaylanmaz. Makine öğrenimi projeleri hem insan hem de makine maliyetlerine neden olur.
İnsan maliyetleri. Projenin konsept kanıtından üretime geçmesi için kaç kişi gerekecek? Makine öğrenimi projeleri geliştikçe giderler genellikle artar. Örneğin, makine öğrenimi projelerinde üretime hazır bir sistemi dağıtmak ve sürdürmek için prototip oluşturmaya kıyasla daha fazla kişi gerekir. Projenin her aşamasında ihtiyaç duyacağı rol sayısını ve türlerini tahmin etmeye çalışın.
Makine maliyetleri. Modellerin eğitilmesi, dağıtılması ve bakımı için çok fazla bilgi işlem ve bellek gerekir. Örneğin, modelleri eğitmek ve tahminler sunmak için TPU kotasına, ayrıca veri işlem hattınız için gerekli altyapıya ihtiyacınız olabilir. Verilerin etiketlenmesi veya veri lisanslama ücretleri için ödeme yapmanız gerekebilir. Bir modeli eğitmeden önce, uzun vadede makine öğrenimi özelliklerini oluşturma ve sürdürme ile ilgili makine maliyetlerini tahmin etmeyi göz önünde bulundurun.
Çıkarım maliyeti. Modelin, oluşturulan gelirden daha fazla maliyete neden olan yüzlerce veya binlerce çıkarım yapması gerekecek mi?
Unutmayın
Önceki konulardan herhangi biriyle ilgili sorunlar yaşamak, makine öğrenimi çözümünün uygulanmasını zorlaştırabilir ancak kısa son tarihler bu zorlukları daha da artırabilir. Sorunun zorluk derecesine göre yeterli zamanı planlamaya ve bütçelendirmeye çalışın. Ardından, makine öğrenimi dışı bir projede ayıracağınızdan daha fazla ek süre ayırmaya çalışın.
Anlayıp anlamadığınızı kontrol etme
Doğayı koruma alanında faaliyet gösteren bir şirkette çalıştığınızı ve şirketin bitki tanımlama yazılımını yönettiğinizi varsayalım. Çevre koruma uzmanlarının nesli tükenmekte olan hayvanların yaşam alanlarını yönetmesine yardımcı olmak için 60 tür istilacı bitki türünü sınıflandıracak bir model oluşturmak istiyorsunuz.
Benzer bir bitki tanımlama sorununu çözen örnek kod buldunuz ve çözümünüzü uygulama için tahmini maliyetler projenin bütçesi dahilinde. Veri kümesinde çok sayıda eğitim örneği olsa da en istilacı beş tür için yalnızca birkaç örnek vardır. Yönetim, modelin tahminlerinin yorumlanabilir olmasını zorunlu kılmıyor ve kötü tahminlerle ilgili olumsuz sonuçlar görünmüyor. Makine öğrenimi çözümünüz uygulanabilir mi?