tensorflow에서 새 연산자를 정의하는 공식 가이드를 따르려고합니다. https://www.tensorflow.org/extend/adding_an_opC++에서 새로운 Tensorflow 연산자의 정의 이해
#include "tensorflow/core/framework/op.h"
#include "tensorflow/core/framework/shape_inference.h"
using namespace tensorflow;
REGISTER_OP("ZeroOut")
.Input("to_zero: int32")
.Output("zeroed: int32")
.SetShapeFn([](::tensorflow::shape_inference::InferenceContext* c){
c->set_output(0, c->input(0));
return Status::OK();
});
그러나이 코드의 라인 별 설명을 찾을 수 없습니다 특히 내가 .SetShapeFn의 역할이 무엇인지 이해하지 못하는 ([] (:: tensorflow :: shape_inference :: InferenceContext * c) 및 해당 구문. 또한 InferenceContext에 당혹 스럽네요, 나는 그것이 배열 배열 요소를 하나씩 전달할 수있는 방법이라고 추측하고 있습니다. 나는 어디에서나 명시 적 정의를 찾을 수 없었습니다. 잘못 입력했을 수도 있습니다. 장소, 누군가가 설명이나 참조로 나를 도울 수 있습니까? 후드 아래에서이 코드의 내용을 깊이 이해하고 싶습니다.