Özel bir TensorFlow Lite yapısı kullanın

Deneyimli bir ML geliştiricisiyseniz ve önceden oluşturulmuş TensorFlow Lite kitaplığı ihtiyaçlarınızı karşılamıyorsa ML Kiti ile özel bir TensorFlow Lite yapısını kullanabilirsiniz. Örneğin, özel operasyonlar eklemek isteyebilirsiniz.

Önkoşullar

  • Çalışan bir TensorFlow Lite oluşturma ortamı
  • TensorFlow Lite 1.10.1'e genel bakış

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 kütüphanesini oluşturma

  1. Standart talimatları izleyerek Tensorflow Lite'ı (değişikliklerinizle birlikte) oluşturun
  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 bir bölme oluşturma

  1. Yerel bölmeniz için bir dizin oluşturun
  2. Oluşturduğunuz dizinde pod lib create TensorFlowLite komutunu ç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. Sıkıştırılmış tensorflow_lite.framework dosyasını TensorFlowLite/Frameworks kopyalayın
  6. Oluşturulan TensorFlowLite/TensorFlowLite.podspec 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

Projenizdeki özel bölmeye referans verme

Özel bölmeyi doğrudan uygulamanızın Podfile dosyasından referans alarak ekleyebilirsiniz:

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

Özel bölmeleri yönetmeye ilişkin diğer seçenekler için Cocoapod belgelerindeki Özel Bölmeler konusuna bakın. Sürümün tam olarak eşleşmesi gerektiğini ve özel deponuzdaki bölmeyi eklerken bu sürüme başvurmanız gerektiğini unutmayın; örneğin pod 'TensorFlowLite', "1.10.1" .