tensorflow
-
How to convert pt to tflite (yolov5 to tensorflow lite) tflite로 변환AI 2021. 1. 19. 16:18
업데이트: 이걸로 해결 github.com/zldrobit/yolov5/blob/tf-android/models/tf.py $ python models/tf.py --weights weights/best.pt --cfg models/yolov5s.yaml --img-size 320 yolov5로 학습된 모델을 1차적으로 Android에서 사용하고자 한다. 그럴러면 최종적으로 .pt 파일을 .tflite로 변환해야한다. 그게 한번에 되냐? 아쉽게도 pt -> onnx -> pb -> tflite 순으로 변환해야한다. 명령어 하나로 되었다면 얼마나 좋았을까.. 그래서 그 과정에서 꽤 많은 삽질을 하게 되었다. 잠깐 언급하자면 tensorflow 버전과 onnx 버전의 호환성.. 버전업되면서 바뀐것도 많고 알..
-
[tensorflow] How to use contrib.eager.metrics on tensorflow 2.x versionAI 2020. 3. 25. 19:32
# version 1.x from tensorflow import contrib tfe = contrib.eager epoch_loss_avg = tfe.metrics.Mean() epoch_accuracy = tfe.metrics.Accuracy() to # version 2.x epoch_loss_avg = tf.keras.metrics.Mean() epoch_accuracy = tf.keras.metrics.Accuracy()
-
[tensorflow] How to use tf.contrib.data.make_csv_dataset() on tensorflow 2.xAI 2020. 3. 25. 18:50
tensorflow를 2.1로 업그레이드 하면서 많은 함수의 변화가 생겼다. 그중 하나를 소개하고자 한다. 아래는 csv파일의 데이터를 가져오는 함수로 많이 사용된다. # tensorflow 1.4 tf.contrib.data.make_csv_dataset() to # tensorflow 2.1 tf.data.experimental.make_csv_dataset()
-
[tensorflow] How to use tf.losses.sparse_softmax_cross_entropy() on tensorflow 2.xAI 2020. 3. 25. 18:44
tensorflow 1.4에서 예제를 실습하다. 버전을 2.1로 업데이트 했다. 그러고 나니 실습중이던 예제에 에러가 생기기 시작했다.. 아래 코드는 y값과 pred값의 loss를 구하는 함수이다. tf.losses.sparse_softmax_cross_entropy(labels=y, logits=y_) tensorflow 2.x 에서는 위의 함수를 사용할 수 없다. 그래서 대체 함수를 찾아야했다. 함수를 찾기전 다양한 문제들로 돌아돌아돌아.. 저 함수의 문제라는걸 판단할 수 있었다. 이제 아래 함수를 사용하면 된다. 참조 cce = tf.keras.losses.SparseCategoricalCrossentropy() cce(y, y_)
-
[tensorflow] What argmax means?(axis) ?AI 2020. 3. 25. 10:31
텐서플로우 예제를 실습 하던 도중 아래와 같은 코드를 접했다. epoch_accuracy(tf.argmax(model(x), axis=1, output_type=tf.int32), y) epoch_accuracy는 매트릭스를 이용해 정확도를 측정하는 함수이다. 참조 이 함수는 1차원 배열 형태인 2개의 파라미터를 받으며, 예측된 값과 y값을 넘겨주면 된다. 만약 label이 3개인 경우 [1, 0, 0, 1, 1, 2] 이런 형태가 될 것이다. y값은 그냥 넘겨주면 된다. 예측값은 다차원의 배열이기 때문에 argmax를 사용해 1차원의 배열로 만드는 동시에 최대값만 남긴다. argmax에서 2번째 인자로 axis(중심축)를 받는데 이 매개변수가 주요 포인트이다.(헷갈릴 수 있다.) 2차원 배열의 경우 r..