Amazon Adaçayı Yapıcı bir süit sağlar yerleşik algoritmalar, önceden eğitilmiş modeller, ve önceden oluşturulmuş çözüm şablonları veri bilimcilerin ve makine öğrenimi (ML) pratisyenlerinin makine öğrenimi modellerini hızla eğitmeye ve dağıtmaya başlamalarına yardımcı olmak. Bu algoritmaları ve modelleri hem denetimli hem de denetimsiz öğrenme için kullanabilirsiniz. Tablo, resim ve metin dahil olmak üzere çeşitli girdi verilerini işleyebilirler.
Bu gönderi, SageMaker'daki yeni yerleşik algoritmalar hakkındaki serinin ikincisidir. İçinde ilk yazıSageMaker'ın görüntü sınıflandırma için nasıl yerleşik bir algoritma sağladığını gösterdik. Bugün, SageMaker'ın TensorFlow kullanarak nesne tespiti için yeni bir yerleşik algoritma sağladığını duyuruyoruz. Bu denetimli öğrenme algoritması, TensorFlow'da bulunan birçok önceden eğitilmiş model için transfer öğrenmeyi destekler. Giriş olarak bir görüntüyü alır ve görüntüde bulunan nesneleri sınırlayıcı kutularla birlikte çıktı olarak verir. Çok sayıda eğitim görüntüsü mevcut olmadığında bile transfer öğrenmeyi kullanarak bu önceden eğitilmiş modellere ince ayar yapabilirsiniz. SageMaker aracılığıyla kullanılabilir yerleşik algoritmalar yanı sıra SageMaker Hızlı Başlangıç Kullanıcı Arayüzü in Amazon SageMaker Stüdyosu. Daha fazla bilgi için bkz. Nesne Algılama Tensor Akışı ve örnek defter SageMaker Tensorflow'a Giriş – Nesne Algılama.
SageMaker'da TensorFlow ile nesne algılama, TensorFlow Hub'da bulunan birçok önceden eğitilmiş modelde transfer öğrenimi sağlar. Eğitim verilerindeki sınıf etiketi sayısına göre, rastgele başlatılan yeni bir nesne algılama kafası, TensorFlow modelinin mevcut kafasının yerini alır. Önceden eğitilmiş model de dahil olmak üzere ağın tamamı veya yalnızca üst katman (nesne algılama kafası) yeni eğitim verilerine göre ince ayar yapılabilir. Bu transfer öğrenme modunda, daha küçük bir veri kümesiyle bile eğitim elde edebilirsiniz.
Yeni TensorFlow nesne algılama algoritması nasıl kullanılır?
Bu bölümde TensorFlow nesne algılama algoritmasının aşağıdakilerle nasıl kullanılacağı açıklanmaktadır: SageMaker Python SDK'sı. Studio kullanıcı arayüzünden nasıl kullanılacağı hakkında bilgi için bkz. Adaçayı Yapıcı Hızlı Başlangıç.
Algoritma, aşağıda listelenen önceden eğitilmiş modeller için transfer öğrenimini destekler. TensorFlow modelleri. Her model benzersiz bir model_id
. Aşağıdaki kod, şu şekilde tanımlanan bir ResNet50 V1 FPN modeline nasıl ince ayar yapılacağını gösterir: model_id
tensorflow-od1-ssd-resnet50-v1-fpn-640x640-coco17-tpu-8
özel bir eğitim veri kümesinde. Her biri için model_id
aracılığıyla bir SageMaker eğitim işi başlatmak için Tahminci SageMaker Python SDK sınıfının SageMaker görüntü URI'sini, eğitim komut dosyası URI'sini ve önceden eğitilmiş model URI'sini SageMaker'da sağlanan yardımcı program işlevleri aracılığıyla getirmeniz gerekir. Eğitim komut dosyası URI'si, veri işleme, önceden eğitilmiş modelin yüklenmesi, model eğitimi ve eğitilen modelin çıkarım için kaydedilmesi için gerekli tüm kodu içerir. Önceden eğitilmiş model URI'si, önceden eğitilmiş model mimarisi tanımını ve model parametrelerini içerir. Docker görüntü URI'sinin ve eğitim komut dosyası URI'sinin tüm TensorFlow nesne algılama modelleri için aynı olduğunu unutmayın. Önceden eğitilmiş model URI'si belirli modele özeldir. Önceden eğitilmiş model tarball'ları TensorFlow'dan önceden indirilmiş ve uygun model imzasıyla kaydedilmiştir. Amazon Basit Depolama Hizmeti (Amazon S3) paketleri, eğitim işi ağ yalıtımında çalışacak şekilde. Aşağıdaki koda bakın:
Bu modele özgü eğitim yapıtlarıyla, bir nesneyi oluşturabilirsiniz. Tahminci sınıf:
Daha sonra, özel veri kümenizde öğrenimi aktarmak için, şurada listelenen eğitim hiperparametrelerinin varsayılan değerlerini değiştirmeniz gerekebilir. Hiperparametreler. Bu hiperparametrelerin Python sözlüğünü arayarak varsayılan değerleriyle getirebilirsiniz. hyperparameters.retrieve_default
, bunları gerektiği gibi güncelleyin ve ardından bunları Estimator sınıfına iletin. Bazı hiperparametrelerin varsayılan değerlerinin farklı modeller için farklı olduğunu unutmayın. Büyük modeller için varsayılan parti boyutu daha küçüktür ve train_only_top_layer
hiperparametre olarak ayarlandı True
. hiperparametre train_only_top_layer
ince ayar işlemi sırasında hangi model parametrelerinin değiştiğini tanımlar. Eğer train_only_top_layer
is True
, sınıflandırma katmanlarının parametreleri değişir ve ince ayar işlemi sırasında parametrelerin geri kalanı sabit kalır. Öte yandan, eğer train_only_top_layer
is False
, modelin tüm parametreleri ince ayarlıdır. Aşağıdaki koda bakın:
Biz sağlıyoruz PennFudanPed veri kümesi modellere ince ayar yapmak için varsayılan veri kümesi olarak. Veri seti yayaların görüntülerini içermektedir. Aşağıdaki kod, S3 paketlerinde barındırılan varsayılan eğitim veri kümesini sağlar:
Son olarak, modelde ince ayar yapmak üzere SageMaker eğitim işini başlatmak için .fit
Eğitim veri kümesinin S3 konumunu geçerken Estimator sınıfının nesnesinde:
Özel bir veri kümesinde aktarım öğrenimi için yeni SageMaker TensorFlow nesne algılama algoritmasının nasıl kullanılacağı hakkında daha fazla bilgi için, ince ayarlı modeli dağıtın, dağıtılan model üzerinde çıkarımı çalıştırın ve önceden eğitilmiş modeli ilk ince ayar olmadan olduğu gibi dağıtın. özel bir veri kümesinde aşağıdaki örnek not defterine bakın: SageMaker TensorFlow'a Giriş – Nesne Algılama.
TensorFlow nesne algılama algoritması için giriş/çıkış arayüzü
Listelenen önceden eğitilmiş modellerin her birine ince ayar yapabilirsiniz. TensorFlow Modelleri herhangi bir sayıda sınıfa ait görüntüleri içeren herhangi bir veri kümesine. Amaç, giriş verilerindeki tahmin hatasını en aza indirmektir. İnce ayar ile döndürülen model, çıkarım için daha fazla konuşlandırılabilir. Aşağıdakiler, modele giriş için eğitim verilerinin nasıl biçimlendirilmesi gerektiğine ilişkin talimatlardır:
- Giriş – Alt dizin görüntüleri ve bir dosya içeren bir dizin
annotations.json
. - Çıktı – İki çıkış var. Birincisi, çıkarım için kullanılabilen veya artımlı eğitim kullanılarak daha fazla eğitilebilen, ince ayarlı bir modeldir. İkincisi, sınıf indekslerini sınıf etiketleriyle eşleştiren bir dosyadır; bu modelle birlikte kaydedilir.
Giriş dizini aşağıdaki örnekteki gibi görünmelidir:
The annotations.json
dosya için bilgi içermelidir bounding_boxes
ve sınıf etiketleri. Anahtarların bulunduğu bir sözlüğe sahip olmalı "images"
ve "annotations"
. Değeri "images"
anahtar, formun her görüntüsü için bir giriş listesi olmalıdır {"file_name": image_name, "height": height, "width": width, "id": image_id}
. Değeri "annotations"
anahtar, formun her sınırlayıcı kutusu için bir giriş listesi olmalıdır {"image_id": image_id, "bbox": [xmin, ymin, xmax, ymax], "category_id": bbox_label}
.
TensorFlow nesne algılama algoritmasıyla çıkarım
Oluşturulan modeller, çıkarım için barındırılabilir ve kodlanmış .jpg, .jpeg ve .png resim biçimlerini aşağıdaki gibi destekler: application/x-image
içerik türü. Giriş görüntüsü otomatik olarak yeniden boyutlandırılır. Çıktı, her tahmin için kutuları, tahmin edilen sınıfları ve puanları içerir. TensorFlow nesne algılama modeli, istek başına tek bir görüntüyü işler ve JSON'da yalnızca bir satırın çıktısını alır. Aşağıda JSON'daki bir yanıt örneği verilmiştir:
If accept
ayarlandı application/json
, bu durumda model yalnızca tahmin edilen kutuların, sınıfların ve puanların çıktısını verir. Eğitim ve çıkarım hakkında daha fazla ayrıntı için örnek not defterine bakın SageMaker TensorFlow'a Giriş – Nesne Algılama.
JumpStart UI aracılığıyla SageMaker yerleşik algoritmalarını kullanın
JumpStart kullanıcı arayüzü aracılığıyla SageMaker TensorFlow nesne algılamayı ve diğer yerleşik algoritmalardan herhangi birini birkaç tıklamayla da kullanabilirsiniz. JumpStart, grafiksel bir arayüz aracılığıyla çeşitli ML çerçevelerinden ve model merkezlerinden yerleşik algoritmaları ve önceden eğitilmiş modelleri eğitmenize ve dağıtmanıza olanak tanıyan bir SageMaker özelliğidir. Ayrıca, hedeflenen bir kullanım senaryosunu çözmek için ML modellerini ve diğer çeşitli AWS hizmetlerini bir araya getiren tam donanımlı ML çözümlerini dağıtmanıza da olanak tanır.
Aşağıda, JumpStart Kullanıcı Arayüzü aracılığıyla birkaç tıklamayla gerçekleştirdiğimiz aynı ince ayar ve dağıtım sürecini nasıl tekrarlayabileceğinizi gösteren iki video bulunmaktadır.
Önceden eğitilmiş modelde ince ayar yapın
Burada aynı önceden eğitilmiş nesne algılama modeline ince ayar yapma süreci anlatılmaktadır.
İnce ayarlanmış modeli dağıtın
Model eğitimi tamamlandıktan sonra, modeli tek tıklamayla kalıcı, gerçek zamanlı bir uç noktaya doğrudan dağıtabilirsiniz.
Sonuç
Bu yazıda SageMaker TensorFlow nesne algılama yerleşik algoritmasının lansmanını duyurduk. Bu algoritmayı kullanarak TensorFlow'un önceden eğitilmiş bir modelini kullanarak özel bir veri kümesinde transfer öğreniminin nasıl yapılacağına dair örnek kod sağladık.
Daha fazla bilgi için göz atın belgeleme ve örnek not defteri.
yazarlar hakkında
Dr.Vivek Madan Uygulamalı Bilim Adamıdır Amazon SageMaker Hızlı Başlangıç ekibi. Doktora derecesini Urbana-Champaign'deki Illinois Üniversitesi'nden aldı ve Georgia Tech'te Doktora Sonrası Araştırmacı olarak görev yaptı. Makine öğrenimi ve algoritma tasarımı alanında aktif bir araştırmacıdır ve EMNLP, ICLR, COLT, FOCS ve SODA konferanslarında makaleleri yayınlanmıştır.
Joao Moura Amazon Web Services'de AI/ML Uzman Çözüm Mimarıdır. Çoğunlukla NLP kullanım örneklerine odaklanıyor ve müşterilerin derin öğrenme modeli eğitimini ve dağıtımını optimize etmesine yardımcı oluyor. Ayrıca, düşük kodlu ML çözümlerinin ve ML'ye özel donanımın aktif bir savunucusudur.
Ashish Khetan Kıdemli Uygulamalı Bilim Adamıdır Amazon SageMaker yerleşik algoritmaları ve makine öğrenimi algoritmalarının geliştirilmesine yardımcı olur. Doktorasını University of Illinois Urbana Champaign'den aldı. Makine öğrenimi ve istatistiksel çıkarım konularında aktif bir araştırmacıdır ve NeurIPS, ICML, ICLR, JMLR, ACL ve EMNLP konferanslarında birçok makale yayınlamıştır.
- AI
- yapay zeka
- AI sanat üreteci
- yapay zeka robotu
- Amazon Adaçayı Yapıcı
- yapay zeka
- yapay zeka sertifikası
- bankacılıkta yapay zeka
- yapay zeka robotu
- yapay zeka robotları
- yapay zeka yazılımı
- AWS Makine Öğrenimi
- blockchain
- blockchain konferans ai
- zeka
- konuşma yapay zekası
- kripto konferans ai
- dal-e
- derin öğrenme
- Temel (100)
- google ai
- makine öğrenme
- Platon
- plato yapay zekası
- Plato Veri Zekası
- Plato Oyunu
- PlatoVeri
- plato oyunu
- ölçek ai
- sözdizimi
- zefirnet