enuSpace for jupiter 개발 이야기
- enuSpace for jupiter deep learning(tensorflow) plugin project 오픈소스 생성
tensorflow 버젼 : r1.2
enuSpace for jupiter 버젼에서는 외부 모듈과 연동하기 위한 plugin 기능이 추가됩니다.
Deep learning 오픈 플랫폼 tensorflow와 연동하기 위한 공개 소프트웨어 저장소를 생성하였습니다.
Project 주소(github) : https://github.com/EXPNUNI/enuSpaceTensorflow
Tensorflow C++ API Guide
#include "tensorflow/cc/client/client_session.h"
#include "tensorflow/cc/ops/standard_ops.h"
#include "tensorflow/core/framework/tensor.h"
int main()
{
using namespace tensorflow;
using namespace tensorflow::ops;
Scope root = Scope::NewRootScope();
// Matrix A = [3 2; -1 0]
auto A = Const(root, { {3.f, 2.f}, {-1.f, 0.f}});
// Vector b = [3 5]
auto b = Const(root, { {3.f, 5.f}});
// v = Ab^T
auto v = MatMul(root.WithOpName("v"), A, b, MatMul::TransposeB(true));
std::vector outputs;
ClientSession session(root);
// Run and fetch v
TF_CHECK_OK(session.Run({v}, &outputs));
// Expect outputs[0] == [19; -3]
LOG(INFO) << outputs[0].matrix();
return 0;
}
위와 같이 C++를 이용하여 Tensorflow 코드를 짜야 했던 내용을 enuSpace에서 아래 그림과 같이 로직 블럭을 drag & drop으로 구성하고 연결선을 이용하여 코드를 제작합니다.
위 프로그램은 실제 Const 입력값에 따라서 MatMul 블럭의 Operation을 수행하여 연산 결과를 출력하는 동작 화면입니다.
현재단계는 Tensorflow와 메모리 연동에 대한 소프트웨어 설계 및 기초 구현이 되었습니다.
enuSpace for jupiter 버젼의 진화과정을 github에서 확인하실 수 있습니다. 많은 관심 부탁드립니다.
https://github.com/EXPNUNI/enuSpaceTensorflow
-이엔유 주식회사 developer team -
'enuSpace for jupiter(2019) > Work note(jupiter)' 카테고리의 다른 글
Tensorflow를 이용한 MNIST linear regression 구현 (그래픽 블럭-enuSpace) (1) | 2017.12.08 |
---|---|
Tensorflow를 이용한 GradientDescent 구현 (그래픽 블럭) (0) | 2017.10.20 |
Tensorflow (r1.3) 윈도우10에서 C++ 컴파일 방법 (0) | 2017.08.22 |
Tensorflow 라이브러리를 이용하여 Windows Third party 응용프로그램 빌드를 위한 환경 설정 (0) | 2017.05.17 |
Tensorflow (r1.1) 윈도우10에서 C++ 컴파일 방법 (0) | 2017.05.16 |