cognet.1_1.3_1. [info] title: AI hub 프로젝트 칸반
Search
Share
⛳
cognet.1_1.3_1. [info] title: AI hub 프로젝트 칸반
♻️ prev note
🚀 prev note
♻️ next note
🚀 next note
8 more properties
main
t
t_장후
t_선직
b_장후
Search
To-do
28
In progress
16
Complete
54
No 관련 마일스톤
19
Ai hub 프로젝트 마감
학습80%(2)
보고서 작성기간
학습80%(1)
마일스톤5
학습10%(2)
학습10%(1)
[외부] 80% 데이터 구축완료 시점
한번정도 학습은 해 보아야 함
경태파트장님, 적어도 이때까지는 학습 시작이 돼야함
오팀장님 feasibility 공유 (2)
프로젝트를 둘이서 할 수 있을지 없을지 말씀드린다.
도커에서 멀티 GPU 사용하기
GPU 서버에 관리자 권한과 도커에 대한 접근 권한을 가진 리눅스 계정을 두 개(장후, 선직) 생성한다.
외부에 모델 B 리소스 요청
배운 내용들을 미래에 누구나 OCR 태스크에 배워 적용할 수 있도록 문서화한다.
경태파트장님의 실수를 반복하지 말자
보고서 작성 완료
모델과 관련된 보고서 작성 완료, 약 20장 분량
마일스톤4
Aihub 데이터로 학습하고 평가하는 파이프라인을 만든다.
마일스톤3
외부인력 지원이 왔을 때 함께 코웍할 수 있을 정도로 PMTD에 대해 이해한다.
마일스톤2 (실패)
1주일 내 “Pyramid Mask Text Detector” 논문을 구현해서 COCO 포맷 형태의 데이터셋을 학습시켜 보고, 학습이 정상적으로 진행되는 것을 확인한다.
마일스톤1 (성공)
작은 규모의 COCO 포맷 데이터셋을 이용해서 베이스라인 모델의 결과를 만드는 파이프라인을 도커로 패키징한다.
마일스톤5
6
[1_7] 제출물 개선
[1_7.2] 모델C2(recognition) Self-Attention 모델로 재학습한다.
[1_7.3] 모든 모델들이 100% 데이터를 이용해 학습되도록 수정한다.
[2] 시연이 가능한 데모를 제작한다.
[2_1] 시범서비스 문서화
[1_7.1] 모델C1(detection) PMTD 대체 논리를 강화한다.
마일스톤4
50
[1_4_1] 물류 detection 데이터의 유효성을 확인한다.
1. 랜덤하게 선택한 200장을 시각화해볼 때 문제가 없어야 하며, 2. 1% 모델로 10% 데이터, 10% 데이터로 100% 데이터가 문제 없이 추론가능해야 함.
[1_2_1] (선행 태스크에서 학습시킨 detection 모델) + recognition 모델(w/pretrained weight)을 결합해 결과물을 출력한다.
E2E 모델을 로드하고 샘플 데이터로 추론 I/O 를 하면 끝
[1__1] MMOCR detection 모델과 MMOCR recognition 모델의 평가 결과를 wandb 에 시각화한다.
물류 1% / PMTD 모델 B
COCO 1% / PMTD 모델 B
ICDAR 2015 1% / PMTD 모델 B
COCO 1% / maskrcnn-benchmark
ICDAR 2015 1% / maskrcnn-benchmark
[1__2] MMOCR 모델 학습 시 모델 가중치를 wandb 아티팩트로 저장되도록 만든다.
[1_6] 최종 결과물 보고서 및 도커파일 제출
[1_6.1] 모델 A 도커파일 제출 준비를 마친다.
[1_6.2] 모델 C 도커파일 제출 준비를 마친다.
[1_3_1] MMOCR 에서 제공하는 2D Self Attention Recognition 모델을 1%, 10%, 100% 중 하나의 금융데이터로 학습한다.
해당 데이터로 모델 학습, 평가, I/O확인이 가능하면 끝.
[1_5__1] MMOCR 에서 제공하는 2D Self Attention Recognition 모델을 1%, 10%, 100% 중 하나의 물류데이터로 학습한다.
해당 데이터로 모델 학습, 평가, I/O확인이 가능하면 끝.
[1_3_1.1] 2D Self Attention Recognition 모델 성능 높이기
[1_6.2.1] 모델 C 에 사용된 세부모델 요약
[1_6.3] 보고서/증빙자료에 필요한 내용을 모두 작성하고, 필요한 경우 도움을 요청한다.
이수화박사님 혹은 권팀장님이 컨펌하시면 완료.
[1_6.2.2] 과제 제출을 위한 도커 패키징 형식에 대해 이해한다.
[1_4] MMOCR 에서 제공되는 임의의 detection 모델을 1% (또는 10%, 100%) 물류데이터로 학습한다.
해당 데이터로 모델 학습, 평가, I/O확인이 가능하면 끝. 더불어, from the scratch / pretrained / transfered 모델 각각을 평가해서 비교한다.
[1_5] MMOCR 에서 제공되는 임의의 recognition 모델을 1% (또는 10%) 물류데이터로 학습한다.
[1_5_1] 물류 recognition 데이터의 유효성을 확인한다.
1. 랜덤하게 선택한 200장을 시각화해볼 때 문제가 없어야 하며, 2. 1% 모델로 10% 데이터, 10% 데이터로 100% 데이터가 문제 없이 추론가능해야 함.
[1_2_1.3] text detection 모델 + recognition 모델의 추론 출력을 이용해 E2E F1 score 을 계산한다.
파트장님 스크립트와 비교해서 같은 결과물이 나올 경우 성공
경태파트장님 QnA
to 선직님
[1_2___2.1] 금융 detection 데이터의 유효성을 확인한다
1. 랜덤하게 선택한 200장을 시각화해볼 때 문제가 없어야 하며, 2. 1% 모델로 10% 데이터, 10% 데이터로 100% 데이터가 문제 없이 추론가능해야 함.
[1_5.1_1] MMOCR 표준 포맷으로 변환된 금융, 물류 100% 데이터를
에게 전달한다.
[1_3.2] 금융 recognition 데이터의 유효성을 확인한다.
1. 랜덤하게 선택한 200장을 시각화해볼 때 문제가 없어야 하며, 2. 1% 모델로 10% 데이터, 10% 데이터로 100% 데이터가 문제 없이 추론가능해야 함.
[1_2___2.1.1] MMOCR visualization 도구의 사용방법을 확인한다.
Detection 이미지, recognition 이미지, Augmentation 파이프라인을 통과한 이미지, 통과하지 않은 이미지 모두를 확인하면 성공
[1_3.3] MMOCR recognition 모델이 한글을 지원하도록 만든다.
한글 recognition 데이터셋으로 모델 학습, 평가, I/O 확인이 가능하면 끝.
@
11/23/2022
수요일 상황 공유
[1_2__1] MMOCR 에서 제공되는 임의의 detection 모델을 10% 금융데이터로 학습한다.
해당 데이터로 모델 학습, 평가, I/O확인이 가능하면 끝. 더불어, from the scratch / pretrained / transfered 모델 각각을 평가해서 비교한다.
[1_4.1] 물류 데이터를 MMOCR 표준 detection 포맷으로 변환하는 스크립트를 작성한다.
[1_2__2] 10% 의 금융 데이터로 detection 모델을 학습하되, 학습된 모델이 과적합된 것은 아닌지 확인한다.
[1_5.1] 물류 데이터를 MMOCR 표준 recognition 포맷으로 변환하는 스크립트를 작성한다.
[1_2.1_1] train/test 데이터 분할 방법을 변경한다.
[1_2] MMOCR 에서 제공되는 임의의 detection 모델을 1% 금융데이터로 학습한다.
해당 데이터로 모델 학습, 평가, I/O확인이 가능하면 끝. 더불어, from the scratch / pretrained / transfered 모델 각각을 평가해서 비교한다.
[1_2.1] 금융 데이터를 MMOCR 표준 detection json 포맷으로 변환하는 스크립트를 작성한다.
[외부] 100% 데이터 구축완료 시점
[1_2_1.2] MMOCR 에서 제공하는 recognition 모델(w/pretrained weight)의 성능을 평가하고 ICDAR 2015 테스트 데이터셋으로 전이학습한 이후의 성능과 비교한다.
from the scratch / pretrained / transfered 모델 각각을 평가해서 비교하면 끝
[1_2_1.1] MMOCR 에서 제공하는 임의의 recognition 모델의 성능을 평가한다.
[1_2_1.1.1] MMOCR 에서 제공되는 임의의 recognition 모델을 평가할 수 있는 작은 데이터셋을 배치한다.
해당 데이터로 모델 학습, 평가가 가능하면 끝
[1_2_1.1.1.1] MMOCR 에서 제공되는 임의의 recognition 모델을 ICDAR 2015 데이터셋으로 학습한다.
학습된 모델 평가가 가능하면 끝
[1_1] MMOCR 에서 제공되는 임의의 detection 모델을 샘플 데이터(MINI-ICDAR2015)로 학습한다.
학습된 모델 평가가 가능하면 끝
[1] MMOCR 개발 환경 구축하기
물류 1% / 경태파트장님 모델 A
금융 10% / 경태파트장님 모델 A
진행상황을 공유하고, 외부지원 관련 결정된 내용들을 공유하는 meet
[1_3] MMOCR 에서 제공되는 임의의 recognition 모델을 1% 금융데이터로 학습한다.
해당 데이터로 모델 학습, 평가, I/O확인이 가능하면 끝. 더불어, from the scratch / pretrained / transfered 모델 각각을 평가해서 비교한다.
[1_3.1] 금융 데이터를 MMOCR 표준 recognition json 포맷으로 변환하는 스크립트를 작성한다.
Load more
마일스톤3
7
진행상황을 공유하고, 외부지원 관련 결정된 내용들을 공유하는 meet
PMTD 를 공부하여 다음 네 가지 질문들에 답을 구한다.
ssh 접속이 가능한 컨테이너가 사용하는 도커 볼륨을 생성한다.
컨테이너에서 작업을 종료하더라도 작업 중인 내용이 증발하지 않도록 만들기 위함
ssh 를 통해 pytorch 환경이 마련된 도커 컨테이너에 접속을 성공한다.
Aihub 프로젝트에서 지속적으로 사용할 수 있는 개발 환경을 도커 컨테이너로 제작하고 VSCode 를 연결한다.
@
10/26/2022
문제정의
이 요소들을 우선순위에 맞게 각각 칸반으로 만든다.
인수인계: 프로젝트 일정, 컴퓨팅 리소스 등 정보를 파트장님으로부터 공유받는다.
마일스톤2 (실패)
4
프로젝트 완수에 필요한 일들을 리스트업하고 팀장님, 실장님과 완수가능성과 리소스 지원에 대해 이야기를 나눈다.
Pyramid Mask Text Detector 인퍼런스 코드로 학습 스크립트까지 실행이 가능한지 확인한다.
Pyramid Mask Text Detector 인퍼런스 코드의 작동을 확인한다.
PMTD의 모델구조와 loss 및 mask 생성을 코드에서 확인한다.
마일스톤1 (성공)
13
오팀장님 feasibility 공유 (1)
프로젝트를 둘이서 할 수 있을지 없을지 말씀드린다.
VPN 을 이용해 외부에서 GPU 서버 접속에 성공한다.
mac 에서는 vpn 이 잘 연결되었음에도 접속이 안된다.
Mask R-CNN 소스코드를 포함한 도커파일이 로컬에서 정상적으로 동작하는지 확인한다 (Single GPU).
간단한 코드를 통해 도커 컨테이너가 GPU를 사용하는 것을 확인한다.
컨테이너를 GPU 에서 실행시키는 것 자체만으로도 많은 이슈가 발생한다.
GPU 서버에서 docker-compose up 명령 시 permissionerror 발생 문제를 해결한다.
배포한 도커파일로 (1) 윈도우 운영체제에서도 이미지를 잘 만들 수 있는지 (2) 윈도우에서도 동일한 명령어로 학습을 재현가능한지 확인한다.
도커 이미지를 만드는 스크립트가 잘 완성되었는지 확인하고 디버깅할 요소를 고립시키기 위함이다.
Mask R-CNN 오픈소스를 이용한 COCO 데이터셋 training 가능 여부 테스트
coco 레이블 포맷을 바탕으로 학습하는 모델을 포함한 도커 컨테이너를 구축한다.
매우 작은 규모의 분류 데이터셋을 coco 데이터 레이블 포맷으로 변환하는 스크립트를 작성한다.
pytorch 분류모델 학습이 한줄의 커맨드로 실행될 수 있는 도커 컨테이너를 구축한다.
torchvision 패키지에서 기본적으로 제공하는 영상 데이터로 분류모델 학습 파이프라인을 만든다.
GPU 서버에서 도커로 패키징된 Mask-RCNN 학습 코드가 동작하도록 만든다 (Single GPU).
프로젝트에 필요한 만큼만 도커 사용법을 쉽게 설명드린다.
legacy