뉴스 빅데이터 처리 기술을 활용한 웹 서비스 InTimes

InTimes 개발 1차 완료!

Featured image

6월 17일자로 종강과 함께 프로젝트 1차 완료!

InTime란?


InTimes는 뉴스 빅데이터에서 중요한 사건들을 자동으로 탐지하고, 사건에 해당하는 뉴스 기사들을 모아 보여주는 웹 사이트 입니다.

활용 기술


  1. React 프레임워크를 사용
  2. 디자인에는 antd 프레임워크를 사용
  3. 서버는 AWS에 구현되어있으며 클라이언트와 소통하는 서버는 EC2에, 필요한 데이터는 RDS에 저장되어있다.

기능


  1. 웹사이트에서 연도를 선택한다
  2. 연도를 선택하면 선택한 연도에서 일어난 각 중요 사건들이 타임라인으로 보여진다.
  3. 타임라인의 요소의 하나는 클러스터 하나를 의미하며, 해당 클러스터에 해당하는 기사들은 아래로 스크롤 하면서 확인 할 수 있다.
  4. 위의 컨트롤 버튼을 이용해 다음 클러스터를 확인할 수 있고, 키보드를 이용한 탐색도 가능하다.
  5. 워드 클라우드를 클릭하면 더 큰 화면으로 볼 수 있다!
  6. 클러스터 별 기사들을 클릭하면 실제 해당 기사의 주소로 갈 수 있다.

작동방식

  1. getData 함수를 이용해 서버와 통신하며 DB안에 정보를 가져온다
  2. setData 함수를 이용해 state에 받아온 데이터를 저장하고, 시각화한다.

개선방안


  1. 디자인 변경 => 좀더 모던하게 꾸미고 싶다
  2. 반응형 사이트 구현 => 모바일 화면에도 최적화 시킨다
  3. 현재 사이트에서는 2019년의 데이터만 제공하고, DB에 다른 년도의 데이터를 추가해서 다양한 연도의 사건들을 파악할수 있게 한다.
  4. 해당 클러스터별 자세한 날짜가 표기되지 않아있으므로 데이터에 추가한다?

후기


무려 두학기 동안 진행된 프로젝트였다. NLP나 클러스터를 다룬 경우는 처음이였는데 엄청 어려웠다. 나는 주로 개체명 사전생성과, 형태소 분석부분에 집중했는데 한국어 형태소 분석이 아직 많이 발전중이고 그만큼 어려운 분야기 때문에 처음에 이해하고 적용시키는게 상당히 어려웠다.
하지만 점차 해나가면서 이해하기 시작했고, 이렇게 결과를 내기는 했다. 처음부터 잘 알아봤으면 LDA를 사용하는 부분에 시간을 줄일 수 있었을 지도 모르겠다.
LDA의 경우 전체 기사에서 토픽을 추출하는 방식인데 우리는 처음에 하나의 기사에서 토픽을 추출하기 위해 LDA를 사용했었다. 이부분은 교수님한테 지적당하기도 했는데 이후에 잘못됨을 알고 TF-IDF로 수정했다.
아직 미흡한 코드와 결과를 보여주지만 그만큼 성능향상의 기회는 많다고 생각한다.

링크 및 참조

https://github.com/geun9716/KoreanNewsChronicle https://github.com/SSU-SOFT/In-Times