contiguous() 함수 쓰는 이유 view()함수 쓸때 사용

2020. 6. 10. 21:22·프로그래밍 언어/Pytorch

 

 

 

https://www.facebook.com/groups/PyTorchKR/permalink/1156948337778179/

 

Park Jay

안녕하세요, 항상 좋은 글과 정보들 많이 얻고 배우고 있습니다. 현재 pyTorch와 TensorFlow를 병행하여 공부중인데, torch 공부중에 contiguous() 함수가 어떤 역할을 하는지 잘 감이 안와서 질문드립니다

www.facebook.com

김예철 contiguous함수는 텐서를 numpy같은 방식으로 메모리에 저장하는 방식을 말합니다 python에서 list타입의 변수는 크기가 가변적이고 어떤 타입의 원소이든 저장할수 있지만 독립적인 메모리에 저장되있어 접근속도가 느립니다 반면에 numpy는 윗분링크처럼 인접한 배열의 데이터는 인접한 메모리에 저장함으로써 접근속도나 transpose속도가 매우 빠르게됩니다
보통 view함수를 써서 텐서모양을 고칠때 contiguous형식이 요구되는데 vi
ew함수는 reshape나 resize와는 다르게 어떤 경우에도 메모리복사없이 이루어집니다 따라서 contiguous형식이 아닐때는 텐서모양을 고칠수 없게되고 런타임에러가 발생합니다
요약하자면 몇몇함수가 메모리 효율적인 연산을 위해 contiguous형식을 요구하니 그 함수를 사용할때만 contiguous형식으로 맞춰주면 될것같습니다

'프로그래밍 언어 > Pytorch' 카테고리의 다른 글

torch.nn.DataParallel  (0) 2020.07.31
pytorch autograd 잘 정리된 곳  (0) 2020.06.25
train() eval() 함수 쓰는 이유 in 파이토치  (0) 2020.03.26
view(-1, x)가 도대체 무슨 의미지?  (0) 2020.03.04
구글코랩에서 파이토치 쓰려면 다음 명령어를 입력하세요  (0) 2020.02.24
'프로그래밍 언어/Pytorch' 카테고리의 다른 글
  • torch.nn.DataParallel
  • pytorch autograd 잘 정리된 곳
  • train() eval() 함수 쓰는 이유 in 파이토치
  • view(-1, x)가 도대체 무슨 의미지?
버터젤리
버터젤리
  • 버터젤리
    across the universe
    버터젤리
  • 전체
    오늘
    어제
    • 분류 전체보기 (128)
      • 데이터 엔지니어 (0)
        • MLOPs (0)
      • 인프라 및 클라우드 (0)
        • Docker (0)
        • Kubernetes (0)
      • Development(개발) (2)
        • 백엔드 (0)
        • 개발 Core (2)
      • LLM (4)
        • 강화학습 (0)
        • LLM (4)
        • Generator (0)
      • PM (7)
        • IT Trends (0)
        • 세미나 후기 (7)
      • Deep learning (30)
        • 기초이론 (8)
        • 컴퓨터비전 (6)
        • 자연어처리 (5)
        • Anomaly Detection (6)
      • Machine learning (25)
      • Computer Science (26)
        • Linux (21)
        • 네트워크 (1)
        • 하드웨어 (4)
        • 운영체제(OS) (0)
      • 프로그래밍 언어 (17)
        • Python (8)
        • Pytorch (8)
        • Tensorflow (0)
      • Tools (14)
        • 주피터노트북 (7)
        • 깃(Git) (2)
        • 파이참 (5)
      • Book (2)
      • LIFE (0)
      • 창고 (0)
        • AI 인턴 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    batch normalization
    @
    BN
    #git#github
    객체지향의사실과오해
    책임
    역할
    jupyer notebook
    리눅스#파일이동#특정이름#포함
    BatchNormalization
    nohup
    역할과책임
    데코레이터
    백그라운드
    객사오
    객체지향
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
버터젤리
contiguous() 함수 쓰는 이유 view()함수 쓸때 사용
상단으로

티스토리툴바