전체 글

나의 성장 일기가 되었으면 하는 블로그 contact : ryuhyojung@naver.com
논문 리뷰

[논문 리뷰] Quasi-Dense Similarity Learning for Multiple Object Tracking, Jiangmiao Pang, et al., 2021

Quasi-Dense Similarity Learning for Multiple Object Tracking, Jiangmiao Pang, et al., 2021을 읽고 요약한 글입니다. 논문을 읽고 이해하면서 정리를 한 글이기에 논문 내의 contents 순서와 해당 포스팅의 목차 순서는 다른 것임을 미리 명시합니다. 정리에 앞서 논문을 읽으면서 따로 단어를 정리해 둔 것이 있어서 함께 작성한다. dense matching : 모든 픽셀에서 box 후보 간에 일치하도록 정의함. quasi-dense : 정보 영역에서 잠재적 객체 후보만 고려하는 것을 의미함. sparse matching : 객체 연결을 학습할 때 ground truth 레이블만 일치하는 후보로 간주한다는 것을 의미함. image pai..

일상/Etc.

중소기업 청년 전세 대출 100% 실제 후기 | 중기청 대출 순서 및 꿀팁, 사후자산심사 완료

최근에 다른 지역으로 이사를 하게 되었고 오랫동안 월세 생활을 하다가 이번에 큰 맘 먹고 전세로 바꾸고자 정말 급하게 중기청 대출을 진행했다. 나는 퇴사일과 이사, 이직 날짜가 맞물리지 않아 중기청 대출이 정말 촉박하게, 빠르게 진행되어야 했다. 그래서 불안한 마음과 확실히 하고자 하는 마음에 정말 많은 후기들을 찾아봤고 대부분의 후기들이 평균 2-3주가 걸린다고 되어 있었기 때문에 나는 시기가 안맞아서 대출이 안되면 어쩌나 정말 많이 걱정했다. 결론은 좋은 공인중개사분과 은행원분을 만나서 10일만에 대출이 진행되었다. 이직이 확정됨과 동시에 난 4년 간의 월세 생활을 끝내고자 마음 먹었으며 바로 전세 대출을 알아봤다. 전세는 정말 신중하고 조심스럽게 해야한다고 생각했기에 이직이 확정된 날로부터 위 사진..

etc

VSCode | window powershell에서 conda 명령어 안먹힐 때

window 환경에서 vscode를 사용하는 것이 익숙하지 않아 여전히 적응 중이다... 이전에는 powershell에서 직접 가상환경을 만든 것이 아니라 https://iambeginnerdeveloper.tistory.com/185?category=917302 VSCode | window 환경에서 python 가상 환경 생성하기 우분투에 익숙해져 윈도우에서 vscode 및 python을 쓰는 것이 어색해져버린 나머지 가상환경 생성 방법도 까먹어버린 것이다.... ssocr이라는 이름의 가상환경을 vscode에서 만드려고 했으나 우분투에 iambeginnerdeveloper.tistory.com 위 게시글처럼 .exe 파일을 선택하는 방식으로 가상환경을 만들었는데 이는 바로 가상환경을 실행하기 힘들었다..

ML & DL

기울기 소실(Gradient Vanishing)과 폭주(Exploding) 해결 방법 | ReLU 함수와 Leaky ReLU 함수, 그래디언트 클리핑(Gradient Clipping), 배치 정규화(Batch Normalization)

기울기 소실 (Gradient Vanishing) 기울기 소실(Gradient Vanishing)이란 역전파(Backpropagation) 과정에서 입력층으로 갈수록 기울기(Gradient)가 점차적으로 작아지는 현상이다. 이는 신경망 구조에서 레이어가 늘어날 수록 악화되며 입력층에 가까운층들에서 가충치들이 제대로 업데이트 되지 않아 최적의 모델을 찾지 못하게 된다. 따라서 기울기 소실 문제는 신경망의 활성화 함수의 미분 결과 값(도함수 값)이 계속 곱해지면서 가중치에 따른 결과값의 기울기가 0이 되어 경사하강법(Gradient Descent)을 이용할 수 없게 된다. 기울기 폭주 (Gradient Exploding) 기울기 폭주는 기울기 소실과 반대되는 경우이다. 기울기가 점차 커져 가중치들이 비정상적..

Docker

Docker | Docker(도커) , Docker compose(도커 컴포즈) 명령어 모음 (상시 추가 예정)

도커를 사용하면서 자주 썼던 명령어들 중 미쳐 외우지 못한 명령어들을 계속 검색해서 찾아보거나 손으로 적어둔 종이를 찾는 것이 귀찮아서 블로그에 정리 해 두려고 한다. 1. 도커 버전 확인 $ docker version 2. 도커 이미지 목록 확인 # 중간 이미지까지 모든 이미지 표시 $ docker image ls -a # 도커 id만 표시 $ docker image ls -q 3. 도커 이미지 삭제 $ docker rmi -f "이미지 id" 4. 도커 컨테이너 목록 확인 $ docker container ps -a 4. 도커 컨테이너 삭제 $ docker rm -f "컨테이너 이름" 5. 컨테이너 가동 확인 $ docker container stats "컨테이너 id" 6. 실행 중인 컨테이너 상태..

일상/한 달에 최소 한 권의 책 읽기

2월부터 7월까지 독서기록 | 달러구트 꿈백화점, 새는 날아가면서 뒤돌아보지 않는다, 길 위에서 쓰는 편지, 어느 날 내 죽음에 네가 들어왔다

인스타그램에는 독서기록을 꾸준히 업로드했는데 블로그에는 올려야지 올려야지 생각만 하다가 약 6개월이 지나버렸다... 그래서 인스타그램에 올렸던 독서기록을 캡쳐해서 2월부터 7월까지를 한번에 올린다! (2월이랑 4월은 너무 정신없었기에 독서를 못해서 독서기록이 없음 ^^...) 3월 독서기록 2월은 이런 저런 일들로 많이 바빠서 책을 못 읽고 넘어갔다. 그래서 2월 독서기록은 없음! 3월에는 1월에 샀던 책인 달러구트 꿈백화점을 읽었다. 5월 독서기록 4월도 2월만큼 정신없이 바빴던 것 같다. 그래서 4월은 뛰어넘고 5월 독서기록! 5월에는 우연히 알게 된 책인 새는 날아가면서 뒤돌아보지 않는다를 사서 읽었다. 5월부터 6월까지 기차를 탈 일이 많았는데 기차 안에서 무료하지 않게 해 준 책이다. 6월 독서..

Git

Git | GitLab branch 생성하기, branch commit 후 merge까지, GitLab Merge Request

실무를 하면서 github보다는 gitlab을 사용할 일이 많아졌다. 개인 pc에서 github를 사용할 땐 레포를 혼자 사용하다보니 누군가와 하나의 레포를 같이 쓸 일이 없었는데 gitlab을 사용하면서부터는 branch를 사용하여 현업을 하는 일이 일상이 되었다. gitlab을 사용하면서 알게 된 branch에 대해 앞으로 버벅거리지 않기 위해 간략하게 정리를 해 둔다. branch를 생성하기 전까지인 원격 레포와 로컬 폴더를 연결하는 방법은 깃허브를 시작하는 것과 동일하며 이는 이전에 작성한 깃허브 시작하기 게시글을 통해 확인할 수 있다. https://iambeginnerdeveloper.tistory.com/17?category=917302 GitHub (깃허브) 시작하기 - GitHub(깃허브..

SQL

SQLAlchemy ORM(postgresql 연결) | 파이썬에서 ORM 사용하기, SELECT, JOIN, CAST, UNION, LABEL 등 자주 쓰는 문법 정리

Flask restx를 사용하여 API를 구축할 일이 있어 ORM을 사용하여 데이터베이스와 연결하였다. 데이터베이스 연결 및 ORM을 사용할 수 있도록 제공되는 파이썬 라이브러리로는 SQLAlchemy가 있다. SQLAlchemy를 사용하면 쿼리를 코드에서 실행할 수 있으며 ORM을 통해 데이터베이스와 연결 후 작업이 가능하다. 먼저 데이터베이스와 연결하는 작업이 필요하다. 가장 먼저 sqlalchemy.create_engine 함수를 이용하여 데이터베이스와 연결해 주는 엔진을 만들어야 한다. 나는 postgresql을 사용하고 있으며 "postgresql://db id:db pw@ip:port/db 이름"을 사용하여 엔진을 생성해주었다. 데이터베이스와의 소통을 관리해주는 세션을 로드하여 사용하여야 한다..

Computer Science

OS | MultiThreading(멀티 스레딩) & MultiProcessing(멀티 프로세싱)

최근에 프로그램 성능 향상을 위해 병렬 처리를 하고자 했으며, 이 포스팅은 스레딩을 사용할 것이냐 멀티 프로세스를 사용할 것이냐, 무엇이 더 적합한가에 대해 알아보고 고민을 하며 정리한 글이다. 1. 프로세스 프로세스는 프로그램이 실행되는 하나의 instance로 컴퓨터에서 연속적으로 실행 중인 프로그램을 의미한다. 각 프로세스는 각각 메모리 공간을 가지며 데이터를 저장하기 때문에 여러개의 프로세스를 사용할 때 하나의 프로세스가 죽어도 다른 프로세스에 영향을 끼치지 않아 작업이 중단되지 않는다. 2. 스레드 스레드는 하나의 프로세스 내에서 실행되는 흐름의 단위로 프로세스의 component이다. 하나의 프로세스에 여러 쓰레드가 생성될 수 있으며 부모 프로세스의 메로리 공간을 공유하기 때문에 하나의 프로그..

etc

VSCode | window 환경에서 python 가상 환경 생성하기

우분투에 익숙해져 윈도우에서 vscode 및 python을 쓰는 것이 어색해져버린 나머지 가상환경 생성 방법도 까먹어버린 것이다.... ssocr이라는 이름의 가상환경을 vscode에서 만드려고 했으나 우분투에서 vscode를 사용하면서 쓰던 conda create -n 명령어는 통하지 않았다. 찾아보니 윈도우 환경에서는 venv 명령어를 사용하여 가상환경을 생성한다고 한다. 가상환경을 생성하고자 하는 workspace 폴더로 이동한 후 python -m venv ssocr을 입력 해 준다. python -m venv ssocr 위의 명령어로는 가상 환경이 생성되기는 하지만 vscode 내에서 python interpreter 선택이 안되기 때문에 .exe 파일을 직접 선택해야 한다. vscode에서 C..

토오오끼
초보 개발자의 일기장