[카테고리:] Engineering

  • Git 개념 정리 (Branch, Workflow, Reset)

    Why do we need a branching? Branch가 필요한 이유들은 아래와 같다 Branch를 관리하는 방법은 정해져 있지 않고 하기 나름이다. 복잡하고 대규모 프로젝트를 진행할수록 그 중요성이 높아지고 유용해진다. Git Workflow 대략적인 Git에서의 Workflow 의 이해를 돕기 위해 아래의 그림을 먼저 보자 Git에서 Head는 현재 branch를 가리킨다. 이전 포스팅에서 설명했지만 Working Directory는 작업자가 직접 작업을 하고 있는…

  • Git 개념 정리 (What is Git?, Git states)

    What is Git? A distributed version control system (DVCS), 즉 분산 버전 관리 시스템의 일종이다. 아래 그림은 다른 local 버전 관리, 중앙 집중형 버전 관리 시스템과 분산 버전 관리 시스템을 그림으로 비교한 것이다. Git (분산 버전 관리 시스템) 에서는 각 Local에서도 버전을 관리할 뿐만 아니라 Server에서도 Version을 관리하고 각각 다른 Computer끼리도 버전을 공유하고 같이 관리할…

  • [Pytorch] torch.nn.PixelShuffle/PixelUnshuffle 작동 방식

    파이토치 라이브러리 중 하나인 pixelshuffle과 pixelunsuffle 함수의 작동 방식을 간단히 살펴보려한다. Image Restoration 분야에서도 down sampling과 up sampling을 할 때 많이 활용하는 함수이다.  말 그대로 픽셀들끼리 섞어서 그룹을 만들어 채널을 줄이면서 사이즈를 늘리거나(pixel shuffle) 반대로 픽셀들끼리 그룹을 만들고 채널 별로 펼쳐서 채널을 늘리면서 사이즈를 줄이는 방식이다(pixelunsuffle). 공식 설명은 아래와 같이 되어있다. 작동 방식은 정확히 안…