0comments

텐서플로우 c++ 예제

첫째, 프로토부프와 아이겐을 설치한 후 텐서플로우를 구축하고자 합니다: 텐서플로우-서빙의 처리를 보여주는 두 가지 예가 있습니다: 벡터 입력을 사용하고 인코딩된 이미지 입력을 사용합니다. 다음은 텐서플로우 C++에 모델을 웹 서버로 배포하는 매우 간단한 예입니다. GRPC 및 kubernetes와 결합 TF C ++는 더 우아하고 고급 방법이며 다음 단계입니다. Const 함수를 사용하여 상수를 명시적으로 생성하거나 위의 C++ 값 중 하나만큼 암시적으로 상수를 다른 생성자에게 직접 전달할 수 있습니다. 예를 들어 프레임워크와 함께 제공되는 기본 예제 이미지를 사용하고 이와 유사한 것을 출력해야 합니다. 이 예제는 대부분 공식 문서를 기반으로 하지만 학습 가능한 매개 변수를 포함하며 그라데이션 계산도 C++에서 구현됩니다. 따라서 설명서에서 설명하는 간단한 ZeroOut 작업에 비해 예제가 약간 더 복잡합니다. 그래프를 실행할 때 세션이 필요합니다. C++ API는 작업 생성자가 만든 작업을 실행하는 텐서플로우::ClientSession 클래스를 제공합니다.

TensorFlow는 그래프에서 실행해야 하는 부분과 공급이 필요한 값을 자동으로 결정합니다. 예를 들어 텐서플로우 자체는 C++ API에 대한 매우 기본적인 예제만 제공합니다. 다음은 데이터 집합, rnn, lstm, cnn 및 더 많은 텐서플로우 c++ 예제의 예제를 포함하는 좋은 리소스입니다. 대신 설명서에 제공된 간단한 예제를 보완하기 위한 것입니다. 코드는 GitHub에서 사용할 수 있습니다: 이 예제에서는 C++/CUDA 및 CMake를 사용하여 사용자 지정 작업을 만드는 프로세스를 보여 줍니다. 최대 성능을 얻는 구현을 표시하기 위한 것이 아닙니다. 대신, 그것은 단지 상용구 템플릿입니다. GitHub에서 복제 할 수있는 TensorFlow 코드에서 몇 가지 C ++ 예제를 발견했습니다: Libtensorflow_framework.so에서 필요한 기호에 연결하기 위해 Bazel의 기본 cc_binary대신 tf_cc_binary을 사용합니다. 다음 명령을 사용하여 예제를 빌드하고 실행할 수 있어야 합니다(빌드 샌드박스에서 먼저 ./configure를 실행해야 함): 이 예제에서는 이미지를 로드하는 프로세스(OpenCV 또는 TensorFlow 사용)를 보여 주며 이미지를 JPG 또는 PNG로 저장하여 이미지의 크기를 조정합니다. (OpenCV 또는 텐서플로우 사용) C++ API는 텐서플로우 바젤 빌드에서만 작동하도록 설계되었습니다. 독립 실행형 옵션이 필요한 경우 C API를 사용합니다.

이 지침은 이 예제와 같이 TensorFlow 내부에서 프로젝트를 빌드하는 대신 TensorFlow를 하위 프로젝트로 포함하는 방법에 대한 자세한 지침을 참조하십시오.

Comments are closed.