Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

명령어 분석 방법 #4

Open
jujuwon opened this issue Apr 9, 2023 · 8 comments
Open

명령어 분석 방법 #4

jujuwon opened this issue Apr 9, 2023 · 8 comments
Assignees
Labels
enhancement 기능 구현

Comments

@jujuwon
Copy link

jujuwon commented Apr 9, 2023

사용자 음성이 STT 를 이용해 Text 로 추출되었을때, 오프라인 환경에서 정해진 명령어 feature 여부를 분석하는 방법을 구체화합니다.

@jujuwon jujuwon added the enhancement 기능 구현 label Apr 9, 2023
@jujuwon jujuwon assigned KDW03 and jujuwon and unassigned KDW03 and jujuwon Apr 9, 2023
@KDW03
Copy link
Contributor

KDW03 commented Apr 9, 2023

dialogflow를 통해 진행하려했으나 클라우드 기반이라 오프라인환경에서는 dialogflow 사용이 불가능할 것 같습니다
dialogflow를 통해 학습을 진행하고 응답 json 데이터를 미리 추출하여 안드로이드에 온디바이스로 진행하려했으나 json 데이터 자체는 오프라인 환경에서 큰 의미를 못 가져서 다른 방법이 필요할 것 같습니다.

@KDW03
Copy link
Contributor

KDW03 commented Apr 9, 2023

학습데이터를 지원받을 수 있는 상황이 아니고, 직접 만들 수 있는 여건도 나오지 않아서
현재 제 생각으로는 STT로 추출된 텍스트를 직접 분석하여 명령어 인식을 하는 수 밖에 없을 것 같습니다.
추출된 텍스트를 모든 명령어 단어에 대해 포함여부를 따지면 시간이 오래 걸릴 것으로 예상되서
형태소 분석을 통해 텍스트를 품사별로 나누고 해당 품사에 매칭되는 명령어 단어들만 포함 여부를 검사하는 부분으로 진행할까생각 중입니다.
안드로이드에서 온디바이스로 사용가능한 형태소분석 api를 찾아보겠습니다.

@usersiyang
Copy link
Contributor

전달해주신 porcupine 라이브러리 2.2.0 버전 빌드 확인 완료했습니다.

implementation 'ai.picovoice:porcupine-android:2.2.0'

@KDW03 빌드스크립트에 반영해서 풀리퀘스트 드리겠습니다~

@KDW03
Copy link
Contributor

KDW03 commented Apr 24, 2023

image

모델 학습 후 TFLITE 변환 후 안드로이드에 넣는 것 까지는 완료했습니다
안드로이드 내부에서 INPUT TEXT를 전처리하는 부분에서 어려움을 겪고 있는 상태입니다
TENSORFLOW-LITE에 대한 공부가 더 필요할 것 같습니다

@KDW03
Copy link
Contributor

KDW03 commented May 10, 2023

기존에 학습을 진행했던 모델은 TFLite 변환 후 안드로이드 스튜디오 환경에서 입력 텍스트를 전처리하는게 안드로이드 환경에서 진행하는게 쉽지 않아서 전처리를 API형태로 제공하는 mobilebert 모델로 모델을 새로 만들었습니다.

mobilebert로 추론을 진행했을 때 현재 한국어 데이터로 정확도가 좋지 못하는 결과가 나왔습니다.
학습 데이터 수정과 파라미터 수정으로 학습을 좀 더 진행 해보고 결과 말씀드리겠습니다.

한국어

image

영어

image

@KDW03
Copy link
Contributor

KDW03 commented May 10, 2023

일단 @ParkJeongmiin 학생한테 학습 데이터 수집을 맡겼고
Random Word Deletion, Synonym Replacement, Random Insertion 등의 데이터 증강 기술을 공부 후 적용하고 학습 데이터를 보강할 생각입니다.

@Moon-janggon
Copy link
Contributor

@KDW03 학생에게 명령어 데이터셋 문장에서 단어 하나씩을 뺀 문장들을 출력해 저장하는 프로그램을 요청받아 Python으로 제작하였습니다.

@ParkJeongmiin
Copy link

@KDW03 학생이 부탁한 명령어 데이터 셋 수집을 완료했습니다.

KDW03 added a commit that referenced this issue May 13, 2023
KDW03 added a commit that referenced this issue May 13, 2023
KDW03 added a commit that referenced this issue May 14, 2023
KDW03 added a commit that referenced this issue May 16, 2023
KDW03 added a commit that referenced this issue May 16, 2023
[refactor] playback time 변경 및 함수 이름 변경 #4
KDW03 added a commit that referenced this issue Jun 4, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement 기능 구현
Projects
None yet
Development

No branches or pull requests

5 participants