Model dönüştürmeye genel bakış

TensorFlow Lite ile kullandığınız makine öğrenimi (ML) modelleri orijinal olarak TensorFlow çekirdek kitaplıkları ve araçları kullanılarak oluşturulmuş ve eğitilmiştir. TensorFlow çekirdeği ile bir model oluşturduğunuzda, onu TensorFlow Lite modeli adı verilen daha küçük, daha verimli bir ML model formatına dönüştürebilirsiniz. Bu sayfa, TensorFlow modellerinizi TensorFlow Lite model formatına dönüştürmek için rehberlik sağlar.

Dönüşüm iş akışı

TensorFlow modellerini TensorFlow Lite formatına dönüştürmek, ML modelinizin içeriğine bağlı olarak birkaç yol alabilir. Bu sürecin ilk adımı olarak, doğrudan dönüştürülüp dönüştürülemeyeceğini belirlemek için modelinizi değerlendirmelisiniz. Bu değerlendirme, model içeriğinin, kullandığı TensorFlow işlemlerine dayalı olarak standart TensorFlow Lite çalışma zamanı ortamları tarafından desteklenip desteklenmediğini belirler. 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ğiniz vardır.

Aşağıdaki şema, bir modeli dönüştürmenin üst düzey adımlarını göstermektedir.

TFLite dönüştürme iş akışı

Şekil 1. TensorFlow Lite dönüştürme iş akışı.

Aşağıdaki bölümler, TensorFlow Lite ile kullanım için modelleri değerlendirme ve dönüştürme sürecini özetlemektedir.

Giriş modeli biçimleri

Dönüştürücüyü aşağıdaki giriş modeli biçimleriyle kullanabilirsiniz:

Jax modeliniz varsa, onu TensorFlow Lite biçimine dönüştürmek için TFLiteConverter.experimental_from_jax API'sini kullanabilirsiniz. Bu API'nin deneysel moddayken değişebileceğini unutmayın.

Dönüşüm değerlendirmesi

Modelinizi değerlendirmek, onu dönüştürmeye çalışmadan önce önemli bir adımdır. Değerlendirirken, modelinizin içeriğinin TensorFlow Lite formatı ile uyumlu olup olmadığını belirlemek istersiniz. Modelinizin kullandığı veri boyutu, donanım işleme gereksinimleri ve modelin genel boyutu ve karmaşıklığı açısından modelinizin mobil ve uç cihazlarda kullanım için uygun olup olmadığını da belirlemelisiniz.

Birçok model için dönüştürücü kutudan çıktığı gibi çalışmalıdır. Bununla birlikte, TensorFlow Lite yerleşik operatör kitaplığı, TensorFlow çekirdek operatörlerinin bir alt kümesini destekler; bu, bazı modellerin TensorFlow Lite'a dönüştürmeden önce ek adımlara ihtiyaç duyabileceği anlamına gelir. Ek olarak, TensorFlow Lite tarafından desteklenen bazı işlemler, performans nedenleriyle sınırlı kullanım gereksinimlerine sahiptir. Modelinizin dönüştürme için yeniden düzenlenmesi gerekip gerekmediğini belirlemek için operatör uyumluluk kılavuzuna bakın.

Model dönüştürme

TensorFlow Lite dönüştürücü, bir TensorFlow modeli alır ve bir TensorFlow Lite modeli ( .tflite dosya uzantısı tarafından tanımlanan optimize edilmiş bir FlatBuffer formatı) oluşturur. Bir SavedModel yükleyebilir veya kodda oluşturduğunuz bir modeli doğrudan dönüştürebilirsiniz.

Python API'sini veya Komut satırı aracını kullanarak modelinizi dönüştürebilirsiniz. Dönüştürücüyü modelinizde çalıştırmayla ilgili adım adım talimatlar için TensorFlow Lite Dönüştürücü kılavuzuna bakın.

Tipik olarak modelinizi standart TensorFlow Lite çalışma zamanı ortamına veya TensorFlow Lite (Beta) için Google Play hizmetleri çalışma zamanı ortamına dönüştürürsünüz. Bazı gelişmiş kullanım durumları, dönüştürme sürecinde ek adımlar gerektiren model çalışma zamanı ortamının özelleştirilmesini gerektirir. Daha fazla rehberlik için Android'e genel bakışın gelişmiş çalışma zamanı ortamı bölümüne bakın.

Gelişmiş dönüştürme

Dönüştürücüyü modelinizde çalıştırırken hatalarla karşılaşırsanız, büyük olasılıkla bir operatör uyumluluğu sorununuz vardır. Tüm TensorFlow işlemleri, TensorFlow Lite tarafından desteklenmez. Modelinizi yeniden düzenleyerek veya değiştirilmiş bir TensorFlow Lite biçim modeli ve bu model için özel bir çalışma zamanı ortamı oluşturmanıza olanak tanıyan gelişmiş dönüştürme seçeneklerini kullanarak bu sorunları çözebilirsiniz.

Sonraki adımlar

  • Eğitim sonrası sayısallaştırma gibi teknikleri kullanarak dönüştürülmüş modelinizi nasıl optimize edeceğinize ilişkin rehberlik için optimizasyona genel bakışa bakın.
  • Temsilci uyumluluğu gibi sorunlar için modelinizi analiz etmek üzere API'yi kullanmak üzere Model Çözümleyici kılavuzuna bakın.
  • Modellerinize nasıl meta veri ekleyeceğinizi öğrenmek için Meta veri eklemeye genel bakış bölümüne bakın. Meta veriler, kod oluşturucular tarafından kullanılabilecek bilgilerin yanı sıra diğer kullanımlara modelinizin bir açıklamasını sağlar.