[PYTHON] 기존의 TensorFlow 계산 그래프를 수정할 수 있습니까?
PYTHON기존의 TensorFlow 계산 그래프를 수정할 수 있습니까?
TensorFlow 그래프는 일반적으로 입력에서 출력으로 점진적으로 구축 된 다음 실행됩니다. 파이썬 코드를 살펴보면, 입력리스트가 변경되지 않아야 함을 암시하는 연산 입력리스트가 불변하다. 기존 그래프를 업데이트 / 수정할 방법이 없다는 뜻입니까?
해결법
-
==============================
1.TensorFlow tf.Graph 클래스는 추가 전용 데이터 구조입니다. 즉, 그래프의 일부를 실행 한 후에 노드를 그래프에 추가 할 수 있지만 기존 노드를 제거하거나 수정할 수는 없습니다. Session.run ()을 호출 할 때 TensorFlow는 필요한 하위 그래프 만 실행하기 때문에 그래도 그래프를 사용하면 실행 시간 비용이 들지 않습니다 (그래도 계속 메모리를 소비하지만).
TensorFlow tf.Graph 클래스는 추가 전용 데이터 구조입니다. 즉, 그래프의 일부를 실행 한 후에 노드를 그래프에 추가 할 수 있지만 기존 노드를 제거하거나 수정할 수는 없습니다. Session.run ()을 호출 할 때 TensorFlow는 필요한 하위 그래프 만 실행하기 때문에 그래도 그래프를 사용하면 실행 시간 비용이 들지 않습니다 (그래도 계속 메모리를 소비하지만).
그래프의 모든 노드를 제거하려면 새 그래프로 세션을 만들 수 있습니다.
with tf.Graph().as_default(): # Create a new graph, and make it the default. with tf.Session() as sess: # `sess` will use the new, currently empty, graph. # Build graph and execute nodes in here.
-
==============================
2.예, tf.Graph는 @mrry가 추가하는대로 추가 전용으로 빌드됩니다.
예, tf.Graph는 @mrry가 추가하는대로 추가 전용으로 빌드됩니다.
하지만 해결 방법이 있습니다.
개념적으로 기존 그래프를 복제하여 수정하고 그 과정에서 필요한 수정 작업을 수행 할 수 있습니다. r1.1부터 Tensorflow는 위의 아이디어를 편리한 기능 세트로 구현하는 tf.contrib.graph_editor라는 모듈을 제공합니다.
from https://stackoverflow.com/questions/34235225/is-it-possible-to-modify-an-existing-tensorflow-computation-graph by cc-by-sa and MIT license
'PYTHON' 카테고리의 다른 글
[PYTHON] Python - 두 개의 열 조합을 기반으로 데이터 프레임에서 중복을 삭제 하시겠습니까? (0) | 2018.11.23 |
---|---|
[PYTHON] Numpy dot은 대칭 곱셈에 대해서 너무 똑똑하다. (0) | 2018.11.23 |
[PYTHON] Windows, Python 2.6에 PygraphViz 설치하기 (0) | 2018.11.23 |
[PYTHON] numpy.linalg.solve ()가 numpy.linalg.inv ()보다 더 정확한 행렬 반전을 제공하는 이유는 무엇입니까? (0) | 2018.11.23 |
[PYTHON] 파이썬 사전에 새 항목 추가 [duplicate] (0) | 2018.11.23 |