일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Join
- type hint
- 노마드코딩
- NumPy
- python
- 알고리즘스터디
- 정보처리기사 c언어
- Algorithm
- 가상환경
- programmers
- 데이터시각화
- Stack
- queue
- Matplotlib
- 코딩테스트
- 프로그래머스
- aws jupyter notebook
- dataframe
- 선그래프
- String Method
- 자료구조
- MySQL
- 백준
- Selenium
- pandas
- openCV
- javascript
- 파이썬
- 알고리즘
- 알고리즘 스터디
- Today
- Total
조금씩 꾸준히 완성을 향해
[TensorFlow.js] Keras 모델을 JavaScript로 내보내기 & tensorflow 버전 맞추기 본문
[TensorFlow.js] Keras 모델을 JavaScript로 내보내기 & tensorflow 버전 맞추기
all_sound 2023. 1. 9. 17:44TensorFlow.js는 웹 브라우저와 Node.js에서 기계 학습 모델을 교육하고 배포하기 위한 JavaScript 라이브러리이다.
즉, python 환경에서 학습한 tensorflow keras 모델을 JavaScript로 내보내서 사용할 수 있게 만들어 준다.
이미지 분류 프로젝트를 위해 직접 짠 CNN 모델을 tensorflow.js로 변환해 보려고 한다.
pip install tensorflowjs
먼저 tensorflowjs를 설치한 후 import 하는 과정에서 에러가 발생했다.
WARNING:root:TensorFlow Decision Forests 1.1.0 is compatible with the following TensorFlow Versions: ['2.11.0']. However, TensorFlow 2.9.2 was detected. This can cause issues with the TF API and symbols in the custom C++ ops. See the TF and TF-DF compatibility table at https://github.com/tensorflow/decision-forests/blob/main/documentation/known_issues.md#compatibility-table.
WARNING:root:Failure to load the training.so custom c++ tensorflow ops. This error is likely caused the version of TensorFlow and TensorFlow Decision Forests are not compatible. Full error:/usr/local/lib/python3.8/dist-packages/tensorflow_decision_forests/tensorflow/ops/training/training.so: undefined symbol: _ZN10tensorflow11GetNodeAttrERKNS_9AttrSliceESt17basic_string_viewIcSt11char_traitsIcEEPSt6vectorINSt7__cxx1112basic_stringIcS5_SaIcEEESaISB_EE
TensorFlow Decision Forests 와 TensorFlow 버전이 맞지 않는다는 소리였다.
코랩에서 사용하던 tensorflow의 버전은 2.9.2였다.
아래는 반드시 맞춰 줘야할 TensorFlow Decision Forests 와 TensorFlow의 버전 매칭표이다.
pip install --upgrade tensorflow==2.11.0
pip install --upgrade tensorflow-estimator==2.11.0
pip install --upgrade tensorflow_decision_forests==1.1.0
이렇게 확실하게 버전을 업데이트 해주니 무사히 import가 되었다.
import tensorflowjs as tfjs
import tensorflow as tf
load_model = tf.keras.models.load_model('D:/olive_young/best_model.h5')
tfjs.converters.save_keras_model(load_model, '/content/drive/MyDrive/olive_young/tfjs_target_dir')
이 코드를 통해 모델을 불러와 tfjs 폴더를 생성하였다.
경로로 가보면 이렇게 모델과 weights 들이 저장된 것을 확인할 수 있다.
JavaScript에서 불러오는 과정은 다음 포스팅에...
참고로 공식 튜토리얼이 잘 작성돼 있어 참고하면 좋다.
https://www.tensorflow.org/js/tutorials/conversion/import_keras