[Tensorflow & Android] .h5 -> .pb -> .tflite로 변환 & 안드로이드에 적용(python & java)
.h5 -> .pb -> .tflite로 변환 & 안드로이드에 적용(python & java) 1. .h5 -> .pb -> .tflite로 변환 .h5 파일 -> .pb 파일로 변환하기 (코드) from tensorflow import keras model = keras.models.load_model(..
bugloss-chestnut.tistory.com
여기에 적다시피 이렇게 하면 Android에 넣을 수 있다.
사진에서 Keras란 Python 언어로 만들어진 Tensorflow위에 얹어서 사용하는 library라고 한다.
그래서 .h5를 .pb로, .pb를 .tflite로 변환해 android app에 탑재한다.
모델에 대한 메타 정보를 가지고 있어 재학습 가능, 모델 구조를 제외한 모델의 가중치만 담은 파일
but predict를 할 때 필요한 정보 외에도 담겨 있어 파일의 크기가 무겁다.
.ckpt.data: 모델(graph)을 제외한 모든 변수를 포함한 파일(.ckpt와 동일), model 복원시 meta파일과 data파일을 이용
.ckpt.index: meta파일과 data파일을 mapping하기 위해 내부적으로 필요한 index 파일
.ckpt.meta: 모델(graph)만 있는 파일, 변수를 제외한 그래프의 구조를 담은 파일
모델(graph)와 가중치(weight) 모두 저장된 파일, 재학습 불가능
.pb는 binary 파일이고, .pbtxt는 text 파일, so .pb파일이 더 가벼우나, .pbtxt는 사람이 읽을 수 있다.
Hierarchical Data Format(HDF)형식으로 저장되는 data. keras에서 모델 및 가중치를 모두 가지고 있으며, keras.models.load_model()을 통해서 불러와 사용이 가능하다.
출처: medium.com/@margaretmz/e2e-tfkeras-tflite-android-273acde6588
E2E tf.Keras to TFLite to Android
Deep Learning for Android with TensorFlow
medium.com
[Android + Keras] 케라스 모델을 안드로이드에서 사용하려면(Tensorflow Mobile,Lite)
케라스나 파이토치에서 만든 AI모델을 CoreML(ios), Tensorflow mobile or lite(android)를 통해 적용할 수 있다. Tensorflow Mobile 구글이 제공하는 머신러닝 프레임워크, .pb파일 이용 Feedforward, convoluti..
ebbnflow.tistory.com
[Tensorflow] .tflite를 Quantization(양자화)하기(python) (3) | 2020.08.30 |
---|---|
[Android] .db파일 Android App에 넣기(JAVA) (0) | 2020.08.29 |
[Tensorflow & keras] .h5 -> .pb -> .tflite 변환 오류(python) (0) | 2020.08.28 |
[Android] imageView 사진 회전 현상 해결하기 & 사진의 절대경로명 찾기(JAVA) (4) | 2020.08.22 |
[Firebase + Android + Tensorflow] tflite모델을 이용해 Camera로 찍은 사진을 분류, Firebase Cloud Storage에 Upload하기(JAVA) (2) | 2020.08.14 |