전체 글 189

대용량 JSON파일 처리하기. python ijson

먼저, 기존에 사용하던 기본 내장 패키지인 json과의 차이를 ChatGPT를 통해 알아보자. You : python 패키지로 제공되는 json과 ijson의 차이점을 장단점과 함께 설명해줘 ChatGPT : Python에서 제공되는 json과 ijson은 모두 JSON 데이터를 처리하기 위한 패키지입니다. 그러나 두 패키지는 데이터를 다루는 방식과 목적에 있어 몇 가지 차이가 있습니다. 1. json: - 장점 : 표준 라이브러리로 내장되어 있어 추가적인 설치가 필요하지 않음. 사용하기 쉽고 간단한 인터페이스를 제공함. 작은 JSON 데이터를 처리하는 데에는 효과적. - 단점 : 대용량의 JSON 파일 또는 대규모 JSON 스트림을 처리할 때는 메모리 사용량이 많을 수 있음. 한 번에 전체 JSON을 ..

Programming/python 2024.01.04

논문 속 Ablation Study는 무엇인가?

Ablation = 제거 Ablation Study = 제거 연구제안한 알고리즘/모델을 적용했을 때 vs 제거했을 때로 성능결과를 비교하는 방식의 연구 ablation의 사전적 의미 1) 빙하나 돌같은 물질에서 빙하나 돌이 떨어져 나가거나 여러 작용을 통해 침식이 일어나는 것 2) (의학) 조직을 자르거나 파괴시키는 등의 치료방식Ablation Study를 적용한 논문 예시) On Recognizing Texts of Arbitrary Shapes With 2D Self-Attention PE, Block을 적용하지 않은 것과 다양한 방식으로 적용했을 때를 비교

English/expressions 2024.01.02

2023.12 한달 간의 영어 기록

Deep within the intricate layers of neural networks, there's a foundational belief that we often overlook. * intricate 복잡한, overlook 간과하다 We'll explore the intricacies of OOD detection and its pivotal role in ensuring the robustness and reliability of artificial intelligence systems. * intricacy 복잡성 * pivotal 중추적인, 중요한 data that deviates significantly from its training set. * deviates from ~로 부터..

English/monthly 2023.12.31

Google Drive 대용량 데이터셋 wget으로 다운로드 받기 (cli)

딥러닝 모델을 벤치마킹하다보면, 굉장히 대용량의 데이터셋을 다운로드할일이 많아진다. 그 중에서도 google drive에 올려져있는 경우에 (나같은 경우) chrome에서 이를 다운로드 받으면 렉이 엄청 걸리고, 시간도 정말 오래걸린다. 그래서 찾아보니 wget으로 google drive의 파일을 다운받을 수 있는 방법이 있다. 방법은 아래와 같다. ※ 주의 : 100MB이상인 파일에서 실행 wget --load-cookies /tmp/cookies.txt "https://docs.google.com/uc?export=download&confirm=$(wget --quiet --save-cookies /tmp/cookies.txt --keep-session-cookies --no-check-certifi..

Programming/basic 2023.12.29

Transformer 모델 - Positional Encoding 포지셔널 인코딩에 대해서 알아보자.

Transformer 모델에서 사용되는 positional encoding은 시퀀스 내 단어의 상대적인 위치 정보를 주입하는 데 사용됩니다. 이것은 모델이 단어의 순서를 이해하고 효과적으로 처리할 수 있도록 돕습니다. Transformer에서 주로 사용되는 positional encoding 방법 중 하나는 다음과 같은 싸인과 코사인 함수를 사용한 것입니다. PE는 positional encoding matrix의 요소입니다. pos는 시퀀스에서 단어의 위치를 나타냅니다. i는 encoding 차원(d_model) 내의 인덱스를 나타냅니다. d_model은 모델의 임베딩 차원입니다. positional encoding에서 사용되는 sin과 cos 함수 안에 대입되는 공식은 주기적인 패턴을 생성하기 위해 ..

AI/Fundamental 2023.12.28

[python] OpenCV 이미지 시각화 코드 모음 (cv2.imshow) - vscode, jupyter, colab

1. 비주얼 스튜디오 코드와 같은 환경에서 .py 파일을 터미널에 실행시키는 방식 def print_image(image): if isinstance(image, str): image = cv2.imread(image) cv2.imshow("image", image) cv2.waitKey(0) cv2.destroyAllWindows() 2. 주피터 환경에서 (.ipynb 파일의 한 셀에서) 이미지를 보고싶은 경우 1) OpenCV : viewer (window)가 뜨는 방식 def print_image(image): if isinstance(image, str): image = cv2.imread(image) cv2.namedWindow("Sample Image", cv2.WINDOW_NORMAL) cv..

[Linux 리눅스] 대용량 이미지 데이터셋 GUI에서 빠르게 탐색하는 방법: gthumb

딥러닝 학습 시에 대용량 데이터셋은 필수적이다. 이 데이터셋의 모든 이미지를 물론 모두 확인할 일은 없겠지만(할 수도 없겠지만), 그래도 GUI환경에서 이미지 썸네일 리스트들을 확인하고, 몇가지 랜덤한 이미지에 대해 보고싶을 수도 있다. 하지만 일반적인 리눅스 시스템이 깔려있는 컴퓨터로 파일탐색기를 열고 이미지가 잔뜩 들어있는 폴더에 접근한다면,,,,(망한다ㅜ) 컴퓨터가 멈추고, 계속 로딩된 상태로 오래 유지되는 경우가 많을 것이다. 로딩이 된다고 해도 굉장히 느리고, 조금만 잘못하면 금방 렉이 걸려버린다. 그래서 우리는 다른 GUI 파일탐색기가 필요하다. 그는 바로 gthumb이라는 프로그램이다. 사용방법은 간단하다. 먼저 아래의 커맨드로 gthumb을 설치해준다. sudo apt install gth..

Programming/linux 2023.12.21

[논문 리뷰] What Is Wrong With Scene Text Recognition Model Comparisons? Dataset and Model Analysis (2019)

개요 STR(Scene Text Recognition) 분야에서 기술의 한계를 깨고 있다고 주장되는 모델들은 각자 다른 학습/평가 데이터셋을 사용해서 비일관적이다. 이에 대해 전반적으로 공평한 비교가 어렵기 때문에 해당 논문에서는 1) 비일관적인 평가 결과의 차이를 확인하고, 2) 통합적인 STR 프레임워크를 제안한다. 마지막으로는 3) 모듈마다의 성능(정확도, 속도, 메모리)을 분석하여 명확히 비교한다. 원문 보기 : https://arxiv.org/abs/1904.01906 What Is Wrong With Scene Text Recognition Model Comparisons? Dataset and Model Analysis Many new proposals for scene text recogn..

AI/Paper Review 2023.12.20

Window에 Linux설치 - 멀티부팅 방법 (Ubuntu 20.04 LTS Desktop) + 그래픽드라이브/듀얼모니터 인식 안됨 문제 해결

1. Windows에서 컴퓨터 관리 > 디스크 관리 - 볼륨 축소를 통해 원하는 용량만큼 할당되지 않은 빈 디스크를 만들어줍니다. 2. Ubuntu 설치 드라이브 > USB 만들기 1) Desktop Image 다운로드 2) Rufus로 image를 USB에 넣어 부팅드라이브로 만들기 3) USB꼽고, 재부팅하기 + 재부팅할 때, 바이오스(BIOS)에 접근 - 바이오스 단축키 : DEL 또는 F2 또는 F10 - settings > boot > hard disk drive bbs priorities에서 USB를 최상위 우선순위로 순서 바꾸기 - 설정 후 BIOS를 빠져나오면 USB로 재부팅 된다. - 참고 블로그 4) Ubuntu 설치하기 - GRUB 창이 뜨면, (보통) 최상단 항목에 (Try and ..

Programming/linux 2023.12.19

Mac 입문 - 맥북 초기설정 및 단축키 모음

입문용 추천 동영상 : 맥북 열고 이대로만 따라하세요. 한 번 해두면 n년 편한 맥 초기 설정 35가지 (with M2 맥북 에어15) (출처 : 테크몽) https://youtu.be/w2GVdqEtb40?si=WASWrI_MI7iBieED 마그넷 : 컨트롤+옵션+여러가지 화면캡쳐 : 커맨드+쉬프트+3 스크린샷 패널 : 커맨드+쉬프트+5 Del : control+D, fn+back 잘라내기 : 컨트롤+옵션+v 강제종료 : 옵션+커맨드+esc 새로고침 : 커맨드+R 앱 종료 : 커맨드+Q 창 종료 : 커맨드+W 최소화 : 커맨드+M 탭 이동 : 커맨드+쉬프트+[ or ] 화면 잠금 : 컨트롤+커맨드+Q 한자 : 옵션+엔터 이모티콘 : fn키 Launchpad : 옵션+스페이스 Spotlight : 커맨드..