Deneyimli bir makine öğrenimi geliştiricisiyseniz ve önceden oluşturulmuş TensorFlow Lite kitaplığı ihtiyaçlarınızı karşılamıyorsa ML Kit ile özel bir TensorFlow Lite derlemesi kullanabilirsiniz. Örneğin, özel işlemler eklemek isteyebilirsiniz.
Ön koşullar
- Çalışan bir TensorFlow Lite derleme ortamı
- TensorFlow Lite 1.10.1'in ödeme işlemi
Git'i kullanarak doğru sürümü inceleyebilirsiniz:
git checkout -b workgit reset --hard tflite-v1.10.1git cherry-pick 4dcfddc5d12018a5a0fdca652b9221ed95e9eb23
TensorFlow Lite kitaplığını oluşturma
- Standart talimatları uygulayarak Tensorflow Lite'ı (yaptığınız değişikliklerle birlikte) oluşturun.
- Çerçeveyi oluşturun:
tensorflow/lite/lib_package/create_ios_frameworks.sh
Oluşturulan çerçeveyi tensorflow/lite/gen/ios_frameworks/tensorflow_lite.framework.zip adresinde bulabilirsiniz.
Yerel pod oluşturma
- Yerel pod'unuz için bir dizin oluşturun
- Oluşturduğunuz dizinde
pod lib create TensorFlowLitekomutunu çalıştırın. TensorFlowLitedizininin içindeFrameworksdizini oluşturun- Yukarıda oluşturulan
tensorflow_lite.framework.zipdosyasının sıkıştırmasını açın. - Sıkıştırılmamış
tensorflow_lite.frameworkdosyasınıTensorFlowLite/Frameworkskonumuna kopyalayın. - Kitaplığa referans vermek için oluşturulan
TensorFlowLite/TensorFlowLite.podspecöğesini 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 pod'a referans verme
Özel pod'u, uygulamanızdan doğrudan referans vererek ekleyebilirsiniz
Podfile:
pod 'Firebase/MLModelInterpreter'
pod 'TensorFlowLite', :path => 'path/to/your/TensorflowLite'
Özel pod'ları yönetmeyle ilgili diğer seçenekler için Cocoapods dokümanlarındaki Private Pods (Özel Pod'lar) başlıklı makaleyi inceleyin. Sürümün tam olarak eşleşmesi gerektiğini ve özel deponuzdan pod eklerken bu sürümü referans almanız gerektiğini unutmayın. Örneğin: pod 'TensorFlowLite', "1.10.1".