빅데이터 알고리즘을 기반으로 한 증권테마 뉴스 추천 서비스입니다.
프로젝트 이름인 NEúrēka 는 News와 Eúrēka의 합성어로 본 프로젝트의 놀랍고 간편한 증권뉴스 추천기능을 표현하기 위해 선정하였습니다.
- SSAFY 특화 빅데이터 추천 프로젝트
- 10기 광주 C105 벚꽃엔딩팀
김유산(팀장) : BackEnd
윤주찬(팀원) : FrontEnd
이기영(팀원) : Big Data
이승현(팀원) : FrontEnd
조수훈(팀원) : FrontEnd
최시원(팀원) : BackEnd, CI/CD
- 증권 뉴스 추천 : 사용자가 선택한 관심 키워드를 기반으로 최근 발행된 증권 뉴스를 확인할 수 있습니다.
- 사용자 맞춤 추천 : 뉴스 열람 시간, 뉴스 평점 등의 요소를 기반으로 사용자 전용 맞춤 뉴스를 추천받을 수 있습니다.
- 기업정보 열람 : 상장 기업의 현재 시세 및 기업 관련 뉴스를 실시간으로 확인할 수 있습니다.
- 경제 용어사전 제공 : 기사를 읽다 생소한 경제용어를 만나면, 이를 즉시 경제 용어사전에 검색해볼 수 있습니다.
- 기업뉴스 메일링 : 관심기업으로 설정해둔 기업의 뉴스를 한 줄로 요약하여 매일 아침 메일로 받아볼 수 있습니다.
- 음성지원, 튜토리얼 : 기사 본문을 사람의 목소리로 읽어드립니다. 또한 친절한 튜토리얼이 저희 서비스를 어떻게 이용하면 좋을지를 알려줍니다
- Intellij
- Visual Studio Code
- Pycharm
- Spring Boot
3.2.3
- Spring Data JPA
- Spring Security
- JWT
0.12.3
- OAuth2
- Node.js
20.11.1
- npm
10.2.4
- vite
5.1.4
- type-script
5.2.2
- React
18.2.0
- Jotai
2.7.1
- react-query
3.39.3
- Python
3.9.13
- Django
4.1.13
- tensorflow
2.16.1
- torch
2.2.1
- MongoDB
5.0.26 atlas
- MySQL
8.3.0
- Redis
3.2.1
- AWS EC2
- Docker
25.0.4
- Jenkins
2.449
- Nginx
1.18.0 (Ubuntu)
- SSL
- Bareun ai
- GitLab
- Jira
- Notion
- Mattermost
-
시스템 구조도
-
사용 기술
-
사용 알고리즘 및 API
- MMR(Maximal Marginal Relevance)
- 키워드추출 및 형태소 분석
- 코사인 유사도를 통한 문서와 키워드간의 유사도 계산
- 키워드 상호간의 유사도 계산
- 유사도가 가장 높은 키워드 추출
- 키워드추출 및 형태소 분석
- LDA(Latent Dirichlet Allocation)
- 토픽 모델링 : 초기화 → 반복학습 → 수렴
- 문서의 주제 분포 - 문서에 어떤 주제가 얼마나(%로 표현) 포함되어 있는지
- 주제의 단어 분포 - 주제가 특정 단어를 포함할 확률
- 토픽 모델링 : 초기화 → 반복학습 → 수렴
- K-means
- 비지도 학습(Unsepervised Learnig) 기반 클러스터링
- 군집의 개수 K개 설정
- 초기 중심점(Centroid) 설정
- 데이터를 군집에 할당(배정)
- 중심점 재설정(갱신)
- 데이터를 군집에 재할당(배정)
- 4, 5를 중심점 위치가 더 이상 변하지 않을 때까지 반복
- 비지도 학습(Unsepervised Learnig) 기반 클러스터링
- 컨텐츠 기반 필터링
- 사용자가 선택한 뉴스기사의 토픽, 키워드, 평점 을 Parameter로 삼아 컨텐츠 기반 필터링을 진행
- 한국어 형태소 분석
- Bareun AI
- 감성분석
- KLUE RoBERTa 모델 사용( 출처 : Hugging Face )
- 기사 요약
- 기사요약 모델 사용 ( 출처 : Hugging Face )
- SMTP 프로토콜을 이용하여 사용자의 이메일로 전송
- TTS(Text-To-Speech)
- speechSynthesis 사용
- MMR(Maximal Marginal Relevance)