카툰-연재 갤러리의 게시글들을 군집화하여 시리즈별로 보기 편하게 만들어주는 사이트이다.
- MongoDB 활용: 자주 사용하던 RDB에서 벗어나 NoSQL인 MongoDB 사용해보기.
- Docker 도입 Docker가 유명한 이유가 무엇인지 직접 사용하며 느껴보기.
- NextJS 도입: CSR인 React에서 구현 할수 없는 기능을 SSR인 NextJS를 통해 구현.
- 만화들을 시리즈로 분류: 비슷한 제목의 만화들을 하나의 시리즈로 군집화.
- Vercel 배포: 물리적 서버 배포에서 벗어나 서버리스 경험.
- 서비스 운영해보기: 혼자 쓰는 웹사이트가 아닌 실제 사용자들이 존재하는 웹사이트 만들기.
나는 openGraph를 통해 멋들어진 만화 공유 기능을 구현하고 싶었다.
하지만 React 페이지를 공유하면 index.html의 하드코딩된 meta 정보가 공유되기 때문에 내가 원하는 기능을 구현할 수 없었다.
때문에 나는 SSR인 Nextjs를 도입하여 기능을 구현하였다.
Dockerfile과 yml만 만들어두면 컨테이너가 딸깍 하고 나온다
파일 그대로 다른 서버에서 똑같이 배포하면 에러 없이 같은 결과물 나온다.
ㄹㅇ 신세계다.
연동된 github branch에 push하면 자동으로 배포가 된다.
무료 요금제도 있는데 속도도 나쁘지 않다.
이걸 왜 지금에서야 알았을까.
만화 제목이 담긴 텍스트 뭉치들을 가공하여 시리즈로 묶을 수 있다니 놀랍다.
- MeCab으로 제목을 전처리
- TF-IDF로 벡터화
- DBSCAN으로 군집화
DBSCAN은 데이터들의 밀도를 기반으로 군집화하는 알고리즘이다.
하지만 모든 데이터(만화)들의 밀도가 동일하지는 않다.
때문에 고정된 eps로 군집화 하면 모든 군집들에 동일한 퀄리티를 기대할 수 없다
내가 찾아본 개선 방법은 아래와 같다.
- HDBSCAN 사용하기
- DBSCAN 두 번 돌리기
- DBSCAN 후 HDBSCAN 사용하기
등이 있다.
마음 같아선 전부 해보고싶지만 시간이 없다 어흑흑