Özel bir TensorFlow Lite derlemesi kullanma

Deneyimli bir makine öğrenimi geliştiricisiyseniz ve önceden oluşturulmuş TensorFlow Lite gereksinimlerinizi karşılamıyorsa özel bir ML Kit ile TensorFlow Lite derlemesi. Örneğin, özel işlemler eklemek isteyebilirsiniz.

Ön koşullar

  • Çalışan bir TensorFlow Lite derleme ortamı
  • TensorFlow Lite 1.10.1 ödemesi

Git'i kullanarak doğru sürümü kontrol edebilirsiniz:

git checkout -b work
git reset --hard tflite-v1.10.1
git cherry-pick 4dcfddc5d12018a5a0fdca652b9221ed95e9eb23

Tensorflow Lite kitaplığını oluşturma

  1. Şu adımları uygulayarak Tensorflow Lite'ı oluşturun: standart talimatlar
  2. Çerçeveyi oluşturun:
tensorflow/lite/lib_package/create_ios_frameworks.sh

Oluşturulan çerçeve, tensorflow/lite/gen/ios_frameworks/tensorflow_lite.framework.zip adresinde bulunabilir

Yerel kapsül oluşturma

  1. Yerel kapsülünüz için dizin oluşturun
  2. Oluşturduğunuz dizinde pod lib create TensorFlowLite dosyasını çalıştırın
  3. TensorFlowLite dizini içinde bir Frameworks dizini oluşturun
  4. Yukarıda oluşturulan tensorflow_lite.framework.zip dosyasını açın
  5. Açılan tensorflow_lite.framework dosyasını TensorFlowLite/Frameworks klasörüne kopyalayın
  6. Oluşturulan TensorFlowLite/TensorFlowLite.podspec öğesini kitaplığa referans verecek şekilde değiştirin:
    Pod::Spec.new do |s|
      s.name             = 'TensorFlowLite'
      s.version          = '0.1.7' # Version must match.
      s.ios.deployment_target = '9.0'
      
      # ... make other changes as desired
      
      internal_pod_root = Pathname.pwd
      s.frameworks = 'Accelerate'
      s.libraries = 'c++'
      s.vendored_frameworks = 'Frameworks/tensorflow_lite.framework'

      s.pod_target_xcconfig = {
        'SWIFT_VERSION' => '4.0',
        'INTERNAL_POD_ROOT' => "#{internal_pod_root}",
        'HEADER_SEARCH_PATHS' => "$(inherited) '${INTERNAL_POD_ROOT}/Frameworks/tensorflow_lite.framework/Headers'",
        'OTHER_LDFLAGS' => "-force_load '${INTERNAL_POD_ROOT}/Frameworks/tensorflow_lite.framework/tensorflow_lite'"
      }
    end

Projenizde özel kapsüle referans verme

Özel kapsülü doğrudan uygulamanızın Podfile:

pod 'Firebase/MLModelInterpreter'
pod 'TensorFlowLite', :path => 'path/to/your/TensorflowLite'

Özel kapsülleri yönetmeyle ilgili diğer seçenekler için Özel Kapsüller: Cocoapods belgelerine bakın. Sürümün tam olarak eşleşmesi gerektiğini ve özel depo, ör. pod 'TensorFlowLite', "1.10.1"