전체 글

Object Detection의 핵심 Region Proposal 총 정리

Region Proposal은 이미지 내에서 물체가 있을 것으로 추정되는 영역을 찾아내는 작업입니다. 이는 Object Detection의 핵심이며, 이를 통해 물체의 위치를 찾아내고 분류하는 작업을 수행할 수 있습니다. CNN을 기반으로 하는 이미지 분류 모델에 대해 학습해봤다면...

프로젝트 후기: 모바일 청첩장

마지막 포스팅으로부터 1년이 넘었습니다. 그 사이 저는 결혼을 하게 되었고, 준비 과정에서 특별한 기억을 남기고 싶었습니다. 개발자이기 때문에 할 수 있는 모바일 청첩장 개발을 직접 해보기로 결심합니다. 이름은 “모바일” 청첩장이지만 사실은 웹페이지입니다. 주로 모바일로 링크를 공...

JavaScript 모듈 시스템 알아보기 - 순환 의존성

JavaScript로 개발 중에 코드상으로 아무런 문제가 없어 보이는데 다음과 같은 에러가 발생한다면 그 원인으로 순환 의존성을 의심해 볼 수 있습니다. 둘 이상의 모듈이 순환으로 참조하여 무한 루프를 형성하는 구조를 말합니다. 순환 의존성이 프로그램상에서 동작하는 방식은 예측하기...

JavaScript 모듈 시스템 알아보기 - CJS vs ESM

Node.js 환경에서 사용할 수 있는 모듈 시스템의 두 가지 선택지로 CJS (CommonJS) 와 ESM (ES Module) 이 있습니다. 더 이른 시기에 등장한 CJS에 비해 이후에 등장한 ESM은 더 성숙해진 체계를 갖추고 있으나, 여전히 하위 호환성 때문에 CJS의 흔적...

더보기

Frontend / JavaScript

JavaScript 모듈 시스템 알아보기 - 순환 의존성

JavaScript로 개발 중에 코드상으로 아무런 문제가 없어 보이는데 다음과 같은 에러가 발생한다면 그 원인으로 순환 의존성을 의심해 볼 수 있습니다. 둘 이상의 모듈이 순환으로 참조하여 무한 루프를 형성하는 구조를 말합니다. 순환 의존성이 프로그램상에서 동작하는 방식은 예측하기...

JavaScript 모듈 시스템 알아보기 - CJS vs ESM

Node.js 환경에서 사용할 수 있는 모듈 시스템의 두 가지 선택지로 CJS (CommonJS) 와 ESM (ES Module) 이 있습니다. 더 이른 시기에 등장한 CJS에 비해 이후에 등장한 ESM은 더 성숙해진 체계를 갖추고 있으나, 여전히 하위 호환성 때문에 CJS의 흔적...

JavaScript 모듈 시스템 알아보기 - 모듈의 역사

JavaScript는 초기 개발 기간이 짧았던 만큼 완성도가 낮고 문제점이 많은 언어였습니다. 시간이 지나면서 많이 성숙해지긴 했으나, 브라우저의 특수성 때문에 하위호환성을 갖춰야 할 필요가 있고, 이에 과거 문제가 많았던 기능은 그대로 지원되며 개선된 기능은 새로운 문법으로 추가...

웹 게임 개발 도전기

저는 이번에 게임 개발에 도전하고자 합니다. 사실 게임 개발은 저에게 다소 생소한 분야이며, 진입장벽 또한 존재합니다. 그러나 웹 게임으로 입문하게 된다면 충분히 시도해 볼만하다고 생각했습니다. 실제로 JavaScript의 범용성은 점점 넓어져 가고 있고, HTML, CSS, Ja...

더보기

데이터분석 / AI

Object Detection의 핵심 Region Proposal 총 정리

Region Proposal은 이미지 내에서 물체가 있을 것으로 추정되는 영역을 찾아내는 작업입니다. 이는 Object Detection의 핵심이며, 이를 통해 물체의 위치를 찾아내고 분류하는 작업을 수행할 수 있습니다. CNN을 기반으로 하는 이미지 분류 모델에 대해 학습해봤다면...

Tensorflow.js 체험기

TensorFlow는 구글에서 개발된 머신러닝 라이브러리로, PyTorch와 양대산맥을 이루고 있습니다. 흔히 TensorFlow는 산업 중심, PyTorch는 연구 중심이라는 평가가 많고 최근까지도 그러한 추세가 이어지는 듯합니다. (서로의 장단점을 보완하여 그 차이가 줄어들고 ...

Black Box Problem과 XAI (feat. GradCAM)

저는 인공지능을 통해 코딩을 시작하게 되었습니다. 수학전공자로 인공지능 수학 수업을 들으며 Python을 사용하게 되었고, 본격적으로 개발자의 길을 가기로 결심하게 되었기 때문입니다. 그중에서도 XAI는 수업에서 발표주제로 삼았던 내용이기도 합니다. 이번 포스팅에서는 당시 발표했던...

AI 모델을 이용한 주식시장 예측의 한계 (feat. Kaggle)

때는 2021년 여름 저는 알고리즘에 의한 퀀트 투자 봇을 구현하여 가상화폐 거래에 적용해본 적이 있습니다. 투자 봇에 대한 환상과는 다르게 확실한 수익을 보장하지는 못했습니다. 동일한 시기에 저는 머신러닝에 많은 관심을 가지고 있었고, 머신러닝 학습 모델을 투자 전략에 활용할 수...

더보기

프로젝트 후기

프로젝트 후기: 모바일 청첩장

마지막 포스팅으로부터 1년이 넘었습니다. 그 사이 저는 결혼을 하게 되었고, 준비 과정에서 특별한 기억을 남기고 싶었습니다. 개발자이기 때문에 할 수 있는 모바일 청첩장 개발을 직접 해보기로 결심합니다. 이름은 “모바일” 청첩장이지만 사실은 웹페이지입니다. 주로 모바일로 링크를 공...

더보기

Backend / System

GraphQL 사용 후기

GraphQL은 2012년 페이스북에서 개발해서 2015년에 공개적으로 발표했습니다. 여러 개발자들 사이에서 자주 입에 오르내리고 있고, 한번 사용해보면 REST API를 더 이상 사용하지 않게된다는 등의 좋은 평가가 많아 알게되었습니다. 그러다 최근 타 회사에서 개발되어있던 웹 ...

CentOS 8에서 firewalld 패키지 활용 Firewall 실습

Firewall은 방화벽이라는 의미로 외부의 접근 또는 외부로의 접근을 필터링해주는 보안프로그램입니다. IP 주소, 포트, 프로토콜, 목적지의 IP 등을 통해 필터링할 수 있습니다. 저는 가상머신에 CentOS 8을 설치하고 firewalld 패키지를 활용해서 간단한 실습을 해봤습...

IP 주소 개념 정리

컴퓨터 네트워크에서 서로를 인식하고 소통하려면 각각의 기기에게 할당될 수 있는 고유 키가 필요합니다. 그렇지 않으면 통신하려고 하는 기기가 무엇인지를 알 방법이 없죠. 이러한 고유 키가 IP 주소입니다. 우리는 일상 속에서 주민등록번호, 차량번호, 계좌번호, 주문번호, 티켓번호 등...

더보기