AI 기반 정신건강 플랫폼
-
성정환 (육군 지작사 1공병여단)
고려대학교 산업경영공학과
2021 국방부 데이터활용 경진대회 국방부장관상 수상 -
기윤호 (해군 정보체계관리단)
한동대학교 전산전자공학부 컴퓨터공학심화전공 -
하철환 (육군 1군단 25사단 72여단)
국민대학교 소프트웨어융합학과 -
조성우 (국직 국군의무사령부 국군구리병원)
세종대학교 데이터사이언스학과
AICARE는 군대에서 나라를 지키고 있는 국군 장병 및 간부님들의 정신건강을 AI를 기반으로 관리하는 플랫폼입니다.
마음속 이야기가 담긴 음성의 내용과 음향학적 특성을 활용하여 정신건강을 객관적으로 분석합니다.
그리고 코로나로 1년넘게 휴가 및 외출이 통제되어 있는 폐쇄적인 상황에서 정신적으로 어려움을 겪고 스트레스를 받는 장병들과 간부님들의 상황에 맞는 개인맞춤형 해결책을 제공합니다.
- 기존모델의 한계1 : 감성을 파악하는데 있어서 기존사례를 분석해보니 단일 데이터를 사용하는 모델의 정확도가 낮음
- 기존모델의 한계2 : 단순 긍/부정만을 판단하기때문에 구체적인 상황에서 실질적인 활용이 어려움
- 따라서 상세한 감성정보를 가지고있는 멀티모달 데이터(텍스트와 음성)을 동시에 분석하여 감성을 파악하기로 결정
- 상세감성 및 텍스트와 음성을 모두 보유하고 있는 데이터로 한국지능정보사회진흥원에서 제공하는 감성대화말뭉치를 찾았고, 이 데이터를 활용하기로 결정
- 해당 데이터를 수집하고, 전체적인 구조와 특성을 파악
- 음성과 텍스트 각각의 데이터에 맞는 모델 구조를 설계
- 해당 모델에 맞게 데이터를 적절하게 가공(Preprocessing)
- 음성은 주파수기반의 스펙트로그램으로 변형하여 벡터화하여 활용
- 텍스트는 Transformer기반의 ko-Bert모델에서 주어지는 토큰화함수를 이용하여 벡터화하여 활용
- LSTM, RNN, TRANSFORMER등의 여러가지 모델을 각각 적용해보고 데이터에 맞는 세부 모델을 탐색
- 최적의 모델을 찾은뒤 multi-weight 방식의 fusion을 통하여 텍스트모델과 음성모델을 앙상블
- 강제적이고 작위적인 설문조사가 아닌 매일 기록하는 마음일기를 통하여 자연스럽게 정신건강을 분석
- 데이터의 의미와 특징을 모두 활용하여 분석함으로서 분석결과에 대한 높은 신뢰성 확보
- 단순감성이 아닌 의학적으로 의미있는 감성을 상세하게 분석하여 제공
- 기존의 주관적인 정신건강 검사의 문제점을 해결
- 다양한 감정을 앱을 통하여 기록하고 보관하여 체계적으로 관리
- 일기를 통하여 정신건강을 기록하고 분석하여 정신건강을 시간의 흐름에 따라 파악
- 주의가 필요하거나 불안정한 감정상태를 조기에 선제적으로 파악, 대처 가능
- 각 개인별 정신건강상태에 따라 맞춤형으로 해결책을 제시
- 비교적 가벼운 경우에는 음악을 추천하고, 정도가 심한 경우에는 감성에 맞는 전문상담을 연결
구체적인 개발문서의 양호도 및 구체적 표현성
- 활용한 데이터에 대한 구조를 시각적으로 표현
- 데이터의 전처리과정을 상세하게 설명하고, 코드상의 주석으로 문서화
- 모델의 앙상블과정에 대해서 코드와 시각자료를 통해 상세하게 표현
- 모델의 서비스화 상세 과정을 Issue에 적어놓음으로서, 구현과정에 대한 상세 설명
뚜렷한 독창성 유무 정도
- 단순긍부정이 아닌 의학적으로 의미가 있는 상세감성에 대한 분석
- 텍스트와 음성을 동시에 활용한 멀티모달 모델을 구성
- 각각의 감성에 따라 맞춤형 해결책을 제공
- 모바일 완벽 지원 및 PWA를 이용한 앱 활용 가능
커뮤니티, 비즈니스 등에 대한 발전 가능성
- 상세감성분석을 통하여 감성분석이 다양한 분야에 활용될 수 있는 토대를 구축
- 멀티모달 모델을 통하여 2차원, 3차원의 데이터를 활용한 모델의 가이드를 제공
- 간부님 및 관리자가 손쉽게 관리할 수 있도록 관리 시스템 구축
데모 결과에 대한 시현 능숙도 및 원활한 작동
- 즉시 서비스를 시행할 수 있도록 완성도 있게 제작
- 관리자 페이지를 제공하여 보다 체계적인 관리가 가능
크로스 브라우징 (Cross Browsing) |
웹 표준 (Web Standards) |
SEO 검색엔진최적화 (Search Engine Optimization) |
SSR (Server Side Rendering) |
CSR (Client Side Rendering) |
PWA (Progressive Web Apps) |
mxnet
torch
scikit-learn<0.23
gluonnlp
sentencepiece
transformers==3.0.2
speechrecognition
git+https://[email protected]/SKTBrain/KoBERT.git@master
librosa
USAGE
Start the server:
python -m ai.simple-keras-rest-api.run_keras_server
Submit a request via cURL:
curl -X POST -F wav=@ai/test.wav https://yhkee0404-osamhack2021-ai-web-aicare-aim-xxrpgj9v3q6q-5000.githubpreview.dev/score
Submit a request via Python:
python -m ai.simple-keras-rest-api.simple_request ai/test.wav https://yhkee0404-osamhack2021-ai-web-aicare-aim-xxrpgj9v3q6q-5000.githubpreview.dev/score
- 성정환 ([email protected]), Github Id: DINFBO
- 기윤호 ([email protected]), Github Id: yhkee0404
- 하철환([email protected]), Github Id: hwna00
- 조성우([email protected]), Github Id: seouk812
The development of this software was made possible using the following components:
KoBERT by SK T-Brain
Licensed Under: Apache License 2.0 (Apache-2.0)
Korean BERT pre-trained cased (KoBERT)
A Simple Keras + deep learning REST API by Adrian Rosebrock
Licensed Under: MIT License
A simple Keras REST API using Flask
Attribution document generated using tldrLegal
Rewritten in markdown
This project is licensed under the terms of the MIT license.