말 그대로다.

pytorch에서 tensor로 저장되는 weight 값을 저장하고 싶었다. 그것도 줄임표시가 없이 전체 저장!!

print를 하면 ... 표시로 나오고

파일로 저장해도 ... 로 나오고..

아래 글처럼, numpy 배열을 뿌리는 옵션을 찾았지만

tensor에는 적용되지 않았다.

구글링으로 set_printoptions 를 찾았고, 아래 numpy 옵션 처럼, 라인 등 지정이 가능하다.

파일로 저장하는 부분도 함께 찾았는데, 자세한 부분은 아래 링크 참조하여 상황에 맞게 수정하여 사용.

import pandas as pd

# profile 부분에서 설정 가능
# full : 전체 출력 설정
torch.set_printoptions(profile="full")

state_dict = model.state_dict()

for key in state_dict:
	# 여긴 그냥 key 값으로 내용 출력해주는 부분
	# 이었는데 아래 처럼 파일로 씀.
	...

df = pd.DataFrame.from_dict([state_dict])
df.to_csv('file.txt', header=False, index=True, mode='a')

tensor 출력 부분 출처 : https://pytorch.org/docs/stable/generated/torch.set_printoptions.html#torch.set_printoptions

파일 저장 부분 출처 : https://stackoverflow.com/questions/36965507/writing-a-dictionary-to-a-text-file

+ Recent posts