LiteRT ile kullandığınız makine öğrenimi (ML) modelleri orijinal TensorFlow temel kitaplıkları ve araçları kullanılarak oluşturulup eğitilmiştir. Tek yapmanız gereken TensorFlow Core kullanan bir modele göre, bunu daha küçük, daha küçük verimli makine öğrenimi modeli biçimi olarak adlandırılmaktadır. Bu bölümde, dönüşüm etkinlikleri için TensorFlow modellerinizi LiteRT modeli biçimine uyarlar.
Dönüşüm iş akışı
TensorFlow modellerini LiteRT biçimine dönüştürmenin birkaç yolu olabilir makine öğrenimi modelinizin içeriğine bağlıdır. Bu sürecin ilk adımı olarak, modelinizin doğrudan dönüştürülüp dönüştürülemeyeceğini belirlemek için değerlendirmeniz gerekir. Bu değerlendirme, modelin içeriğinin TensorFlow işlemlerine dayalı standart LiteRT çalışma zamanı ortamları yardımcı olur. Modeliniz desteklenen kümenin dışındaki işlemleri kullanıyorsa modelinizi yeniden düzenleme veya gelişmiş dönüştürme tekniklerini kullanma seçeneği sunar.
Aşağıdaki şemada, bir modelin dönüştürülmesinde uygulanan üst düzey adımlar gösterilmektedir.
Şekil 1. LiteRT dönüşüm iş akışı.
Aşağıdaki bölümlerde, modelleri değerlendirme ve dönüştürme süreci özetlenmektedir LiteRT ile kullanım içindir.
Giriş modeli biçimleri
Dönüştürücüyü aşağıdaki giriş modeli biçimleriyle kullanabilirsiniz:
- SavedModel (önerilir): Diskteki bir dosya grubu olarak kaydedilen bir TensorFlow modeli.
- Keras modeli: Üst düzey Keras API kullanılarak oluşturulmuş bir model.
- Keras H5 biçimi: Keras API tarafından desteklenen SavedModel biçimine hafif bir alternatif.
- Beton işlevlerle oluşturulan modeller: Alt düzey TensorFlow API kullanılarak oluşturulmuş bir model.
Hem Keras'ı hem de somut işlev modellerini SavedModel ve önerilen yolu kullanarak dönüştürmelisiniz.
Jax modeliniz varsa TFLiteConverter.experimental_from_jax
özelliğini kullanabilirsiniz
API'yi kullanarak LiteRT biçimine dönüştürün. Bu API,
değiştirebilirsiniz.
Dönüşüm değerlendirme
Modelinizi değerlendirmek, dönüştürmeye çalışmadan önce önemli bir adımdır. Değerlendirirken içerikleriyle uyumlu olup olmadığını belirlemek istiyorsanız LiteRT biçimindedir. Modelinizin uygun olup olmadığını da boyutu, mobil cihazlar ve uç cihazlarda kullanılan veri miktarına bağlı olarak donanım işleme gereksinimlerini ve modelin genel boyutu ile gerekir.
Birçok modelde dönüştürücü kullanıma hazırdır. Ancak, LiteRT yerleşik operatör kitaplığı TensorFlow temel operatörleridir. Bu, bazı modellerin ek işlem gerektirebileceği anlamına gelir adım adım anlatılmıştır. Ayrıca, LiteRT tarafından desteklenen bazı işlemler performans nedeniyle sınırlı kullanım şartları. Bkz. operatör uyumluluğu kılavuzu modelinizin dönüşüm için yeniden düzenlenmesi gerekip gerekmediğini belirleyin.
Model dönüştürme
LiteRT dönüştürücü, bir TensorFlow modeli alır ve
LiteRT modeli (optimize edilmiş
FlatBuffer,
.tflite
dosya uzantısı) kaldırın. Yükleyebilirsiniz
SavedModel'in yanındaki kutuyu işaretleyin veya kod içinde oluşturduğunuz bir modeli doğrudan dönüştürün.
Dönüştürücü, dönüşümü özelleştiren 3 ana işaret (veya seçenek) alır modeliniz için:
- Uyumluluk işaretleri, aşağıdakileri belirtmenizi sağlar: dönüşümün özel operatörlere izin verip vermeyeceğini belirler.
- Optimizasyon işaretleri, aşağıdakilerden hangisini yapmanıza olanak tanır? uygulanacak optimizasyonun türünü belirtin dönüşüm sırasında. En yaygın olarak kullanılan optimizasyon tekniği eğitim sonrası nitelendirme.
- Meta veri işaretleri, dönüştürülen modele meta veri eklemenize olanak tanır. Bu, dağıtım sırasında platforma özel sarmalayıcı kodu oluşturmayı kolaylaştırır. modellerinde kullanılabilir.
Modelinizi Python API veya Komut satırı aracı. Bkz. Adım adım açıklamalı TF modelini dönüştürme kılavuzu dönüştürücüyü çalıştırmayla ilgili talimatları inceleyin.
Tipik olarak modelinizi standart LiteRT için dönüştürürsünüz çalışma zamanı ortamı veya Google Play Hizmetleri çalışma zamanı ortamı (Beta) için varsayılan çözüm sunar. Bazı gelişmiş kullanım alanları, ek adımların gerekli olduğu model çalışma zamanı ortamının özelleştirilmesi olduğunu unutmayın. Bkz. gelişmiş çalışma zamanı ortamı bölümü genel bakış bölümüne göz atın.
Gelişmiş dönüşüm
Hatalarla karşılaşırsanız dönüştürücüyü modelinizde çalıştırırken büyük olasılıkla operatör uyumluluğu sorunu var. Bazı TensorFlow işlemleri TensorFlow tarafından desteklenir Basit. Modelinizi yeniden düzenleyerek veya değiştirilmiş LiteRT oluşturmanıza olanak tanıyan gelişmiş dönüşüm seçenekleri çalışma zamanı ortamını birlikte kullanabilirsiniz.
- Model uyumluluğuna genel bakış konusuna bakın. TensorFlow ve LiteRT model uyumluluğu hakkında daha fazla bilgi için düşünmelisiniz.
- Model uyumluluğuna genel bakış başlığının altındaki konularda, modelinizi yeniden düzenleme (örneğin, Operatörleri seçin) rehberini inceleyin.
- İşlemlerin ve sınırlamaların tam listesi için bkz. LiteRT Ops sayfası.
Sonraki adımlar
- Kullanmaya hızlı bir şekilde başlamak için TF modellerini dönüştürme kılavuzuna bakın modelinizi dönüştürme sürecidir.
- Şu hedefler için optimizasyona genel bakış: aşağıdaki gibi teknikleri kullanarak dönüştürülmüş modelinizi nasıl optimize edeceğinizle ilgili rehberlik: eğitim sonrası nitelendirme
- Nasıl meta veri ekleyeceğinizi öğrenmek için Meta veri eklemeye genel bakış bölümüne bakın sahip olursunuz. Meta veriler, modelinizin açıklamasının diğer kullanımlarını da sağlar kod oluşturucular tarafından kullanılabilecek bilgi olarak ele alınır.