딥러닝의 개발 과정
AI 산업적 활용을 위한 개발 과정
AI 개발 과정
AI 서비스 기획
- AI 서비스 시나리오 기획 및 요구사항 도출
- 가정, 사무실 등 소음 수준이 60dB이하인 환경에서 사람의 음성을 인식하고 이해하여 응답하는 자동화 서비스 제공
- 제공 기능 : 날씨 정보, 신문기사 읽기, 일정 관리, 음악 추천 및 재생, 간단한 질의 응답
- 요구사항 : 최대 2명의 화자 분리, 방언 구분, 음성 이외 잡음 처리, 응답시간 최대 3초 이내, 음성 인식률 90% 이상, 질문 응답 정확도 80% 이상, 음성 합성 moss score 4.0 이상
- 서비스 형태 : 마이크, 스피커, WiFi, 블루투스 등의 기능을 갖는 고정형 음향 장치를 통해 서비스 제공
- AI 서비스의 AI 기능 요구사항 도출
- AI 기능 : 음성 인식, 질의 응답, 음성 합성
- 음성 인식 : 60dB 이하 환경에서 최대 2명 이상 화자 구분, 음성 신호를 텍스트로 변환(Speech To Text)하여 정확도를 측정, STT 정확도 90% 확보
- 질의 응답 : 텍스트로 변환된 음성의 형태소 분석 및 지문 의도 파악, 제공할 기능에 대한 응답 정확도 90% 이상 확보, 응답 텍스트 생성
- 음성 합성 : 음성 텍스트의 음성 신호 출력, 텍스트를 음성으로 합성(Text To Speech)하여 정확도를 측정, moss score 4.0 이상
- AI 기능 학습을 위한 데이터 요구사항 도출
- 기능 별(음성 인식, 질의 응답, 음성 합성) 데이터 요구사항 도출
- 음성 인식 : 음성(입력)-텍스트(출력) 데이터 1만 시간 확보, 대상 연령층 및 성비를 바탕으로 비율 산정
- 질의 응답 : 각각 제공할 기능에 대한 질문(입력)-응답(출력) 데이터 1만 건 확보, 일상 대화에 대한 입출력 데이터 10만 건 확보
- 음성 합성 : 텍스트(입력)-음성(출력) 데이터 5,000 시간 확보, 출력 음성의 성별, 연령대 구분(남/여, 20대/40대 등)
- 법·규제 검토 : 음성 데이터 수집 및 활용에 대한 개인정보보호법 등 검토
- AI 서비스의 시스템 아키텍처 기획 및 요구사항 도출
- 시스템 개요 : 스피커 장치(단말)의 음성 → AI 기능 계산장치(서버) 전송 → 음성인식(STT) → 자연어 처리(질문 의도 이해) → 응답 텍스트 생성 → 서버·단말 전송 → 단말에서 음성 출력(음성 단말)
- 서버 : AI 기능 중 음성 인식, 질의 응답 구현, 다중 접속 및 처리를 위한 분산 환경 조성, 최대 응답시간 2초 이내 구성을 위한 서버 사양 결정
- 단말 : AI 기능 중 음성 합성 구현, 음성 신호 인식, 유무선 통신망을 통한 서버로의 데이터 전송, 음성 출력
- 사용자 어플리케이션 : 스마트폰 앱 등 단말 조작 관련 SW 제공
AI 데이터 구축
- AI 데이터 구축 기획
- 데이터 요구사항에 의거한 데이터 구축
- 데이터 구축 기획 : AI 학습용 데이터 구축 일정 수립, 가용 자원 파악 및 신규 데이터 확보 비용 산정 등 전반을 기획
- 데이터 인프라 기획 : 요구사항에 명시된 데이터의 저장, 관리, 운영을 위한 서버 환경 기획 (기존 시스템 활용, 신규 구축 등)
- 비용 산정 : 음성 인식을 위한 연령별 배우 섭외, 입력·출력 데이터 레이블링을 위한 인건비 산정
- 원시 데이터 관리 지침 마련 : AI 학습용 데이터로의 가공 이전의 원시 데이터에 대한 저장 및 처리에 대한 지침 마련
- 데이터 관련 법·제도적 규제사항 파악
- 데이터 확보 가능 여부
- 데이터 확보 불가 예시
- 데이터 확보에 과도한 비용 발생
- 주어진 개발 기간 안에 데이터 구축 불가
- 현재의 법·제도 상의 규제 이슈 발생
- 피드백 : AI 서비스 시나리오 재기획
- 데이터 부족 예시
- 주어진 비용과 개발 기간을 고려했을 때, 8,000시간의 음성 인식 데이터 확보 가능 (2,000 시간 부족)
- 피드백 : AI 기능 요구사항 완화(인식률 낮춤), 데이터 요구사항 완화
- 데이터 시슴템 관리 및 운영
- 구축 기획에 의거한 시스템 관리 및운영, 데이터 수집·저장·가공의 총괄 역할 수행
- 데이터 수집
- 연령별, 성별 배우의 음성 녹음
- 생활 소음
- 환경 조성
- 질의 응답 데이터 수집 및 생성
- 음성 응답 데이터 생성
- 데이터 저장
- 수집된 데이터의 효율적인 저장을 위해 빅데이터 SW 활용(Hadoop, Spark 등)
- 데이터 저장소 관리
- 데이터 가공
- AI 학습용 데이터 구축을 위한 데이터 레이블링(녹음된 음성 데이터의 텍스트, 질문에 대한 응답, 음성 합성 출력 등)
AI 모델링
- 기능 구현
- AI 모델 개발
- 선행 연구 결과 분석 : 음성 인식(BLSTM, RNN-T, Attention), 질의응답(Transformer, BERT), 음성 합성(WaveNet, Tacotron)의 선행 연구결과 분석, 이미 공개된 AI 모델에 대한 전이 학습 등으로 개괄적인 성능 측정
- 최신 연구 논문 분석 : 각 AI 기능의 최신 연구 결과(State-Of-The-Art) 분석, 새로운 AI 모델 제안
- 학습용 AI 모델 도출
- 주어진 데이터로 학습을 진행하기 위해, 각 기능별 3종의 AI 모델을 도출
- AI 학습 일정 기획
- 보유 인프라 규모 : 2개의 GPU가 탑재된 25대의 컴퓨팅 클러스터
- AI 학습 일정 기획 : 보유 컴퓨팅 인프라를 바탕으로 도출된 학습용 AI 모델에 대한 학습 일정 수립, 초모수(한 번에 학습할 양, 학습률, 손실 함수 등) 조정 기준 마련
- 환류 체계 마련 : 학습된 AI의 성능 기준에 대한 환류 체계 마련 (요구사항 재기획, AI 모델 재선정 등)
- AI 학습
- AI 학습 수행 : 이미 정의된 AI 학습 일정을 바탕으로, AI 모델 구현, 데이터를 통한 학습, 성능 측정 결과 분석 수행
- 학습된 AI 성능
- 학습된 AI 성능이 AI 기능의 요구사항에 부합할 경우 각 기능별 학습된 AI 모델 도출
- 학습된 AI 모델
- 학습된 AI 성능이 AI 기능의 요구사항에 부합하지 않는 경우
- 데이터 문제
- 확보한 데이터의 양이 부족하거나, 데이터의 품질로 인해 성능이 저하된 경우 데이터 구축 재 기획을 통한 환류
- AI 모델 문제
- 학습용으로 도출된 AI 모델이 주어진 AI 기능을 제대로 학습하지 못했을 경우
- AI 서비스 기획 문제
- AI 기능의 요구사항이 높을 경우 이를 완화하기 위해 새로운 기준 마련
- AI 서비스의 AI 기능의 재조정
- AI 모델 최적화
- AI 추론 성능 분석
- AI 서비스 시나리오에서 도출된 AI 서비스 실제 환경에서 AI 기능을 시험하기 위해 학습된 AI 모델을 시험(추론)하여 성능을 분석
- AI 추론 성능
- 실제 환경에서의 AI 추론 성능이 요구사항을 만족시킬 경우 각 AI 기능별 최종 AI 모델 도출
- 최종 AI 모델
- 실제 환경에서의 AI 추론 성능이 요구사항을 만족시키지 못할 경우 AI 기능 구현 단계의 “학습된 AI 성능”의 기준을 미달성한 경우와 동일하게 환류
- 데이터 문제
- 시험 환경에서 발생할 수 있는 추가 데이터 확보 요구
- AI 모델 문제
- AI 서비스 기획 문제
- 시험 환경의 데이터 전처리 시간의 증가등으로 서비스 시간 지연이 발생하여 서비스 요구사항 재기획
- AI 모델 최적화
- AI 기능의 요구사항을 만족하는 최종 AI 모델을 토대로 계산 측면의 최적화 수행
- 최종 AI 모델(SW)
- 계산적인 측면에서 AI 모델의 경량화를 위한 최적화 수행(Pruning, Quantization, Compression 등)
- 최종 AI 모델(HW)
- 스피커 단말에 음성 합성 기능을 구현하기 위해 전용 연산처리 HW 개발
AI 서비스 구현
- AI 서비스 구현 기획
- AI 서비스의 시스템 아키텍처 기획을 바탕으로 AI 서비스를 실제로 구현하는 일련의 AI 서비스를 실제로 구현하는 일련의 과정에 대한 세부적인 기획 추진
- 스마트 스피커 서비스의 전주기적인 개발 과정 기획과 요구되는 모듈 구체화 (스피커 단말 장치, 서버-클라이언트, 데이터 처리 등, 사용자 소통, 시스템 관리 도구 등)
- 스마트 스피커 개발의 총괄 및 일정 관리
- 데이터 기능 구현
- AI 기능 수행을 위한 음성 신호 데이터 입력 인터페이스 개발, 음성 데이터의 저장 및 가공, 음성 데이터 수집·저장·활용 동의 약관 마련
- 인프라 구현
- 스마트 스피커 단말 개발 : 음성 입출력, 음향 출력, WiFi, 블루투스 등의 기능을 갖는 단말 기계장치 구현
- 서버·클라이언트 구축 : 음성 인식, 질의 응답 AI 기능을 계산하기 위한 서버 구축과 서버·클라이언트 간의 효율적인 통신 방법 구현
- 사용자 소통 및 시스템 관리 도구 구현
- 사용자 소통 도구 개발 : 단말-사용자 소통을 위한 SW 및 스마트폰 앱 개발, 사용자 의견 피드백 시스템 구현
- 시스템 관리 도구 개발 : 스마트 스피커 서비스 과정 전주기의 흐름을 파악하는 시스템 관리 도구 개발
- AI 서비스 유지/관리/보수
- 시스템 관리 도구를 바탕으로 스마트 스피커 서비스를 모니터링하고, 문제 발생시 해결
- 스피커 단말 장치에 대한 A/S
댓글남기기