"유사한 게시물" 기능의 관련성과 단순화를 위한 개선
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
웹 개발
대상자
- 웹 개발자, 블로그 운영자, AI 기반의 개인 및 기업 블로그 운영자
- 난이도: 중간
- AI 모델 활용 및 데이터 분석 기초 지식을 가진 사람
핵심 요약
- Cosine similarity를 기반으로 유사 게시물 추천의 문제점을 발견하고 임계값을 조정하여 관련성 향상에 도움
- API 엔드포인트를 통해 유사도 점수를 집계, 분석하여 임계값 결정
- 0.65 이상의 유사도를 기준으로 유사 게시물을 필터링하여 중복/비관련 게시물 제거
섹션별 세부 요약
1. 유사 게시물 기능의 문제점 발견
- 기존 유사 게시물 기능에서 비관련 게시물이 추천되는 문제 발생
- ChatGPT와의 대화를 통해 유사도 임계값 필요성 인식
- Google 검색, GitHub, OpenAI 커뮤니티 등에서 관련 정보 수집
2. 유사도 점수 분석을 위한 API 개발
src/pages/api/post-similarity.json.ts
파일을 생성하여 유사도 점수를 계산 및 분석- mean, median, p75, p90 등의 통계 값 계산
- 496개의 유사도 점수 수집
3. 유사도 분포 분석 및 임계값 결정
- 히스토그램을 통해 이중 정규 분포 확인
- 0.65의 임계값으로 유의미한 유사도만 필터링
- 0.72의 임계값은 너무 높아 결과가 제한적
4. 임계값 적용 및 코드 수정
COSINE_THRESHOLD = 0.65
로 설정하여 유사도 기준 변경src/utils/related-posts.ts
파일에서 필터링 조건 추가posts.length > 0
조건을 통해 비어 있는 경우는 렌더링 제외
5. 추가적인 적용 가능 사항
- Google Search Console 데이터와 연동하여 아카이빙 가능
- 이미지 URL 문제 해결을 통해 다른 플랫폼에의 자동 업데이트 가능
결론
- Cosine similarity 기반의 유사도 임계값 조정을 통해 유사 게시물 추천의 정확성을 향상
- API 통계 분석을 통해 임계값 결정 가능
- 데이터 기반의 의사결정이 중요하며, AI 기반 기능 개선은 반복적 조정이 필요