SOOJLE
1.0.0
1.0.0
  • SOOJLE Document
  • 프로젝트 요약
  • 프로젝트 개요
    • 프로젝트 소개
    • 추진 배경 및 필요성
    • 프로젝트 내용
      • 기능적 요구사항
      • 비기능적 요구사항
    • 개발환경 및 팀 구성
    • 워크플로우
      • 계획 수립 & 설계
      • 데이터 수집 및 정규화
      • 인공지능 개발
      • 서비스 모듈 개발
      • 성능 평가 및 보고
    • 프로젝트 예산 내역
  • 사전조사 & 의사결정
    • 사전조사
      • 재학생 대상 사전조사
      • 수집 URL 대상 목록
        • 세종대학교 직할
        • 세종대학교 학과
        • 공식 공지사항
        • 세종대 평생교육원
        • 외부 웹사이트
      • 학습 모델 사전조사
        • LSA - 잠재 의미 분석
        • LDA - 잠재 디리클레 할당
        • Word2Vec - 워드투벡터
        • FastText - 패스트텍스트
    • 의사결정
      • 사용자 인증 방식 의사결정
      • 데이터베이스 의사결정
        • MySQL vs MongoDB 성능 분석
      • 토픽별 의사결정
      • 부가 기능 의사 결정
  • 프로젝트 설계
    • 시스템 구조 설계
    • 핵심 기능 설계
      • 데이터 크롤러 설계
      • 게시물 토픽 정의 및 분류
      • 사용자 관심분야 측정
      • 뉴스피드 설계
        • 사용자-문서 유사도(Recommendation Score)
        • FaS (관심 분야 및 유사도 측정 - 추가)
        • 토픽 뉴스피드 목록
      • 검색 알고리즘 설계
        • 검색 알고리즘 1차 설계
        • 검색 알고리즘 1차 개선안
        • 검색 알고리즘 2차 설계
    • 요구사항 목록
      • DB 요구사항
      • 기능 요구사항
      • 품질 요구사항
      • 관리 요구사항
  • DB
    • 구조 설계
    • 테이블 명세
  • 데이터 크롤러
    • 데이터 크롤러 개요
    • 크롤링 URL 선정
    • 크롤러 구현을 위한 사전조사
    • 크롤러 개발 과정
      • 크롤러 프로그램 설계
      • 크롤러 규격화
      • 크롤러 정규화
      • 데이터 정제 과정
      • 에러 핸들러 구현
      • 배포 환경 이식을 위한 Porting
    • Issue & Exception
    • 결과 보고
  • 인공지능 개발
    • 인공지능 개발 개요
    • NLP 스터디
      • Bag of Words(BoW)
      • Document Term Matrix(DTM)
      • TF-IDF(Term Frequency-Inverse Document Frequency)
      • 문서 유사도(Document Similarity)
    • 데이터 전처리 과정
    • 개발 과정
      • 토크나이저 구현
      • LDA 모델 학습 및 구현
    • LDA 학습 모델링
      • 1차 파라미터 튜닝 결과 (NUM_TOPICS)
      • 2차 파라미터 튜닝 결과 (NUM_TOPICS)
      • 3차 파라미터 튜닝 결과 (NUM_TOPICS)
      • NUM_TOPICS 파라미터 의사결정
      • 4차 파라미터 튜닝 결과 (PASESS, ITERATION)
      • 최종 학습 모델 명세
    • Word2Vec(FastText) 학습 모델링
    • Issue & Exception
    • 성능 분석 결과
  • BackEnd
    • 서버 구축 및 배포
      • SOOJLE 서버 구조
      • 상용 서버 (UWSGI + NGINX) 구축
      • HTTPS 서버 구현
    • API 문서 개요
    • API 목록
      • Analysis
      • Auth API
      • Newsfeed API
      • Post API
      • Search API
      • Admin API
    • 세종 Auth API
    • 통계 기능 설계
    • Issue & Exception
    • 성능 분석 결과
  • FRONTEND
    • 프론트엔드 설계 개요
    • 디자인 설계 의사결정
      • 디자인 컨셉 및 기능 정의
      • 컴포넌트 디자인
      • Logo Variation
    • 화면 흐름도
    • 페이지 UI 명세
      • Main Page
      • Header
      • Footer
      • Mobile Control Bar
      • Login Page
      • Timeline Page
      • Menu Page
      • Hyperlink Icons Page
      • Search Component & Mobile Search Modal
      • Search Page
      • Post Block
      • Snackbar
  • 프로그램 배포
    • 프로그램 개요
    • 시스템 아키텍쳐
    • 주요 기능 및 명세
    • 프로그램 테스트
    • 구현 결과물 배포
  • 마무리
    • References
  • SOOJLE AI
  • SEJONG AUTH
  • IML Tokenizer
  • SOOJLE Crawler
  • SOOJLE Frontend
  • SOOJLE Backend
Powered by GitBook
On this page
  • 전반적인 프로젝트 절차
  • 데이터 수집
  • 데이터 전처리
  • 탐색적 데이터 분석(EDA)
  • 모델 선정
  • 성능 평가 및 배포

Was this helpful?

  1. 인공지능 개발

인공지능 개발 개요

Previous결과 보고NextNLP 스터디

Last updated 5 years ago

Was this helpful?

본 문서는 SOOJLE 서비스에서 사용될 인공지능 개발을 위한 학습 과정, 모델 구현 및 분석에 대한 내용을 다룬다. 본 프로젝트에서 개발될 모델은 다음과 같다.

  • 크롤링된 문서를 학습하여 주제를 분류해주는 LDA 모델

  • 특정 단어의 의미를 분석하여 유사한 단어를 추출해주는 FastText 모델

본 문서에서는 상기의 구현 목표를 달성하기 위한 과정을 나열하고 각 과정에 대한 분석 및 회고에 대한 내용을 다루고 있다.

전반적인 프로젝트 절차

데이터 수집

​학습을 수행하기 위한 데이터 수집 관련은 데이터 크롤러 문서를 참고하도록 한다.

데이터 전처리

중복되거나 학습에 좋지 않은 영향을 끼칠 만한 데이터를 처리해야 한다. 또한 초기 데이터를 머신러닝 모델의 입력에 적합한 형태로 바꿔주는 데이터 정제 과정 또한 이에 포함된다.

탐색적 데이터 분석(EDA)

EDA는 프로젝트의성공 여부를 결정하는 매우 중요한 프로세스이다. 데이터를 이해하기 위해 데이터의특징을 찾고, 숨겨진 패턴을 발견하는 과정이 이에 해당한다.

모델 선정

예측값을 도출해내는 알고리즘 및 각 모델에 대한 hyperparameter를 선정한다. 모델에 사용될 feature의 경우, 공모전의 룰을 따른다.

성능 평가 및 배포

수행 모델에 대한 성능을 평가하는 과정이다. 평가를 위한 test 데이터셋은 모델 선정 및 학습 과정에서 사용되지 않은 것들은 선정하여 평가를 수행한다.

데이터 크롤러 개요
데이터 전처리 과정