본문 바로가기
TIL _Today I Learned/2024.11

[DAY 75] 중간 프로젝트_ 영어 발음 채점 서비스 구현

by gamdong2 2024. 11. 5.
[천재교육] 프로젝트 기반 빅데이터 서비스 개발자 양성 과정 9기
학습일 : 2024.11.05

📕 프로젝트 작업 내역

  • 프로젝트 주제∙모델 확정
  • DB∙Django 활용 계획 구체화
  • 회의록 작성

 

📗 회의록

  • 회의 일자: 2024년 11월 5일
  • 회의 주제: 프로젝트 주제∙모델 확정 및 DB/Django 활용 계획 구체화
  • 참석자: OOO, OOO, OOO

 

1. 주요 논의 사항

 

1) 학습 데이터 선정

  • 학년별 영어 음성 mp3 데이터

2) 사용자 GUI 설계

  • 프로세스 흐름
    1. 학년 선택
    2. 학습 문장 제시
    3. 원어민 음성 듣고 따라 읽기
    4. 발음 유사도 분석 및 피드백 제공
    5. 발음 개선 기회 제공 및 관련 강의 추천

3) 음성 인식 모델 선정 및 사용

  • 모델 후보: HuBERT, Whisper
  • 학습 데이터 fine-tuning 계획 미포함
  • Whisper 모델을 통해 사용자 발음 텍스트로 변환 후 HuBERT로 유사도 평가
  • 단어별 유사도와 불일치 단어 식별을 위한 타임스탬프 정보 활용

4) DB 설계 및 서비스 구현

  • DB 구조
    • User: 사용자 정보 저장 (ID, 이름, 비밀번호 해시화, 로그인 기록)
    • UserSession: 세션 관리 (세션 ID, 사용자 참조, 만료 일자)
    • Lesson: 학습 문장 및 원어민 음성 경로 저장 (학년, 문장 내용, TTS 경로)
    • UserPronunciation: 사용자 발음 기록 (녹음 경로, 변환된 텍스트, 유사도 점수 등)
    • FeedbackLog: 발음 피드백 기록 및 추천 강의 (유사도 점수, 불일치 단어, 생성 일자 등)

5) Django 활용 계획

  • 구현 절차
    1. Django 프로젝트 및 앱 설정: users, lessons, pronunciation 등 앱으로 기능별 관리
    2. DBMS 연결: PostgreSQL 설정 및 모델 기반 마이그레이션
    3. 로그인 및 세션 관리: authenticate(), login() 함수로 사용자 인증
    4. 학습 문장 조회: 학년별 학습 문장 호출 및 TTS 음성 파일 제공
    5. 사용자 음성 녹음 및 Whisper 변환: 녹음 저장 및 텍스트 변환 후 DB 기록
    6. 원어민/사용자 발음 비교 및 피드백 생성: HuBERT로 유사도 분석 후 피드백 저장 및 제공

6) 평가 항목

  • 원어민과 사용자 간 발음 특징(피치, 성조, 리듬, 강세) 비교
  • Whisper를 통한 텍스트 변환 결과를 제공하여 시각적으로 발음 결과를 피드백할지 고려

 

2. 다음 과제

 

  • 학습 데이터 확정 및 요청: 학년별 학습 문장 및 음성 파일을 확보하여 학습 데이터 확정
  • 예시 데이터 사용하여 초기 모델(HuBERT, Whisper) 성능 테스트
  • 기획안 완성 및 제출

 

 

 

📙 내일 일정

  • 중간 프로젝트 기획