분류 전체보기

· 환경구축
어느 순간 서버를 접속하면 "There are N zombie processes"라는 경고문이 뜬다. 아래 명령어로 실제 좀비 프로세스들은 listup할 수 있어서 확인해보니 대다수 python 이 중단되면서 생긴 쓰레기 프로세스들 인 것 같다. ps axo stat,ppid,pid,comm | grep -w defunct 나같은 경우엔 다 동일한 788282 PID로 구성된 프로세스 이길래, 아래 명령어로 해당 process만 죽이니 다 삭제되었다. kill -9 [PID] ex) kill -9 788282 근데 참고로 python multiprocessing같은 작업을 할 때 다 저런 형태의 zombie process가 자동으로 생성되니, 착각해서 해당 프로세스를 삭제하지 말자.
· 환경구축
아래 명령어를 이용하여 /etc/profile 내 다음 문장을 추가하고 적용하면 끝 echo "HISTTIMEFORMAT=\"[%F %T %Z]\"">>/etc/profile source /etc/profile "history | tail"사용하면 다음과 같이 시간이 나오는 것을 확인할 수 있음. 참고로, 저 설정을 셋팅한 이후부터 시간이 정상적으로 기록됨.
· 환경구축
서버가 지혼자 재부팅 된 후, 갑자기 docker ps -a와 docker image 명령어를 입력했을 때 docker가 아무것도 안보이는 경우 이를 위한 해결 방법 결론부터 말하자면 서버가 예상치못하게 재부팅되면서 개발 서버 상 따로 명시해둔 docker image path가 기본 directory root로 설정되면서 생긴 이슈였다. 즉 우리 개발서버는 /k8s_images"라는 폴더에 docker 정보를 저장해뒀었는데, 기본 Root인 /var/lib/docker로 셋팅되어 있었다. 이를 해결하기 위해 일단 아래 명령어로 docker 서비스를 꺼준다. systemctl stop docker.service systemctl stop docker.socket Docker가 정상적으로 종료되고 나면 do..
· 환경구축
nvidia-graphic driver 재설치 후 명령어를 칠 때 느리게 뜨는 경우, pm모드를 켜주면 된다. sudo nvidia-smi -pm 1 https://forums.developer.nvidia.com/t/nvidia-persistenced-failed-to-initialize-check-syslog-for-more-details/74052
Object detection같은 task할때마다 매번 모델 시각화 할 때 클래스 별 RGB를 맵핑해줘야 하는 경우. 다른 패키지보다 이게 젤 간단... 단점은 비슷한 컬러들이 생길 수 있음. colors = {cls: (np.random.randint(0, 256), np.random.randint(0, 256), np.random.randint(0, 256)) for cls in CLASS}
개발 서버에서 지속적으로 접속할 때 신뢰할 수 있는 컴퓨터로 등록하여 password 없이 바로 접속 가능하도록 하는 방법. 1. 본인 로컬 개발 환경에 있는 id_rsa.pub을 카피 (보통 C:User:.ssh/안에 있음) 2. 개발 서버에 등록해주기 - 개발 서버 내 (~/.ssh)다음 위치로 이동하여, authorized_keys 라는 파일을 생성 후 그 안에 붙여넣기 - 그리고 해당 authorized_keys파일에 755권한 부여 chmod 755 ~/.ssh/authorized_keys 3. vscode 껐다 키면 Password 요구 안함! 도움 주신 출처 SSH key 생성하고, 서버에 등록해서 비밀번호 없이 접속하기 Intro 매번 SSH 접속 할 때 마다 비밀번호 입력하려면 매우 번거..
· 머신러닝
기록용. 1. Model GPU 사용량 체크 print('Memory Usage:') print('Max Alloc:', round(torch.cuda.max_memory_allocated(0)/1024**3, 1), 'GB') print('Allocated:', round(torch.cuda.memory_allocated(0)/1024**3,1), 'GB') # MB 단위 : print(torch.cuda.memory_allocated() / 1024 /1024) print('Cached: ', round(torch.cuda.memory_cached(0)/1024**3,1), 'GB') ⚠️nvidia-smi는 reserved memory를 포함한 값이기 때문에 실제 모델의 GPU 사용량을 보여주는 것..
논문을 깊게 읽고 만든 자료가 아닙니다. 참고만 해주세요. 얉은 지식으로 핵심 위주로만 파악한 자료로, 없는 내용이 많습니다. 부가적인 의견 환영입니다. 댓글 부탁드립니다. Paper / GitHub 1. Introduction self-supervised pre-trained Document Image Transformer model, DiT를 제안 ⇒ 다양한 포맷의 문서와 대규모 unlabeled 문서 데이터에 대해서 학습되어야만 human-labeled document image에 의존적이지 X, 다양한 AI task를 잘 다룰 수 있다. 본 논문에서는 DiT를 Image classification, Document Layout Analysis, Table Detection, STD 등 다양한 Do..
Paper 논문을 깊게 읽고 만든 자료가 아닙니다. 참고만 해주세요. 얉은 지식으로 핵심 위주로만 파악한 자료로, 없는 내용이 많습니다. 부가적인 의견 환영입니다. 댓글 부탁드립니다. Abstract DLA(Document Layout Analysis) task는 multi-modality document pre-trained model이더라도 text feature, visual feature에 많이 영향을 받는 경향이 있음. DLA를 위한 Grid-based model도 사전학습 효과가 크게 나타나지 않음. multi-modal 정보를 최대한 활용하고, pre-trained 기술도 최대한 사용하기 위해서 VGT라는 DLA task를 위한 모델을 소개. VGT : 2D token level, Segme..
Paper 논문을 깊게 읽고 만든 자료가 아닙니다. 참고만 해주세요. 얉은 지식으로 핵심 위주로만 파악한 자료로, 없는 내용이 많습니다. 부가적인 의견 환영입니다. 댓글 부탁드립니다. Abstract 기존의 DLA task는 데이터에 대한 부담으로 인해 접근법이 어려운 task였고, 이를 해결하기 위해 오로지 GT가 따로 없는 상태에서도 self-supervision이 가능한 vision based pre-trained model을 제안. 각 문서 별 GT Layout dataset 을 만들기보다, 문서 내 pseudo-layout을 만들어 image encoder가 문서 내 요소를 선행학습 하도록 하고, self-supervised framework로 각 요소 간 localization을 학습함, 그 ..
COCO 형태의 train, val, test JSON파일 안에는 여러 클래스가 있다. 이 중 내가 특정 경우에 일부 클래스만 학습하고자 할 때 해당 Json파일을 수정할 수 있도록 해주는 오픈소스가 있어 공유한다. https://github.com/immersive-limit/coco-manager GitHub - immersive-limit/coco-manager: Scripts to manage COCO datasets Scripts to manage COCO datasets. Contribute to immersive-limit/coco-manager development by creating an account on GitHub. github.com 간단하게 원하는 input file, outp..
dictionary, list, np arr같은 python 객체를 파일로 binary파일로 저장하여 빠른 속도 처리가 가능하도록 함. pkl file reading # Data Loading import pickle import os data_dir = './dataset/pkl_dir/' file_lst = os.listdir(data_dir) # directory안에 있는 모든 pkl파일을 다 로딩해서 그 중 하나만 load with open(os.path.join(data_dir, file_lst[0]), 'rb') as fr: # 여기선 0-index(첫번째)파일을 로드 data = pickle.load(fr) print(data) print(data.keys()) pkl file writing..
detectron2를 설치하던 도중 certifi 버전이 없다고 오류가 뜬 상황. Detectron 설치 참고 사이트 Installation — detectron2 0.6 documentation © Copyright 2019-2020, detectron2 contributors Revision 8c4a333c. detectron2.readthedocs.io pip install 명령어에 --ignore-installed 옵션을 추가하여 설치하면 무시하게 됨. 기존 pip install에서 -ignore 옵션 추가 # Before pip install detectron2... # After pip innstall --ignore-installed detectron2 도움 주신 참고 링크 에러 발생 해결 ..
pdf 파일에서 페이지를 삭제하거나 PDF를 합병하고 싶을 때 다음 코드를 사용해서 돌리면 pdf파일을 내 맘대로 수정할 수 있다. 아래 코드는 한 부당 7페이지로 구성된 40부짜리 문서 중 앞에 있는 3부만 잘라내어 저장하는 스크립트다. import PyPDF2 if __name__ == "__main__": # target_path : pdf 문서가 있는 경로 target_path = "./문서_40부.pdf" pdf = PyPDF2.PdfReader(target_path) output = PyPDF2.PdfWriter() pageNum = len(pdf.pages) oneDoc = 7 # 한 부당 페이지 개수 for i in range(0, 3*oneDoc):#처음에 있는 3부만 따로 저장 page..
Multiindex를 갖고 있는 데이터 프레임을 그대로 excel로 떨어트리는 함수를 사용할 경우에 제목 행 바로 아래에 빈 행이 하나 생기게 된다. 이를 해결하기 위한 함수는 아래와 같다. 간단히, 제목만 떼서 저장하고, 이어서 내용에 해당되는 부분만 떼서 2번에 걸쳐 저장하는 함수라 보면 된다. def save_double_column_df(df, file_name, startrow = 0, **kwargs): '''Function to save doublecolumn DataFrame, to xlwriter''' # https://stackoverflow.com/questions/52497554/blank-line-below-headers-created-when-using-multiindex-and..
Js.Y
'분류 전체보기' 카테고리의 글 목록