osamhack2021 / AI_WEB_AICARE_AIM_2021

MIT License
0 stars 1 forks source link

오디오와 텍스트를 동시에 활용하는 모델의 한계 #6

Open yhkee0404 opened 2 years ago

yhkee0404 commented 2 years ago

목적

상세내용

  1. 음성을 텍스트로 변환하는 것은 공개된 무료 API를 활용합니다. 그리고 Multimodal 모델에 그대로 넣습니다.
  2. 음성에서 텍스트로 변환하는 ASR(Automatic Speech Recognition) 모델은 그것을 최종 목적으로 학습합니다. 이를 사전 학습 모델로 활용하여 감정 분류를 위한 중간 과정에서 Transfer Learning합니다.
  3. 독립된 두 모델의 결합 없이 End-to-End Spoken Language Understanding(E2E SLU)을 활용합니다.

참고사항

DINFBO commented 2 years ago

image

DINFBO commented 2 years ago
  1. 음성파일 -> spectogram -> Modified AlexNet ( 모델간 정확도 비교 필요 ) -> 벡터화
  2. 음성파일 -> STT( Speech to Text ) API ( 구글, 네이버, 오픈소스 - 비교 필요 ) -> 텍스트의 벡터화
  3. 1번과 2번의 벡터를 통합하여 ( 필요하다면 구조를 변환 ) Multimodal 모델에 입력 -> 판단

이게 1번에 관한 내용이고

2번에 관한 내용은 결국 ASR모델의 학습내용을 다시 ASR모델의 사전학습모델로 활용하자는 말씀이신거죠?

3번은 아예 2개의 과정을 각각 분리해서 전처리 및 모델에 적용한뒤 결과를 도출하고 그 2가지 결과가 나온것에 대해 처리하는 방식을 고민하는것 맞나요?

yhkee0404 commented 2 years ago

1번에 관한 내용은 써주신 것이 맞습니다. Multimodal model은 오디오 입력과 텍스트 입력이 둘다 필요한데 사용자가 오디오만 입력하면 텍스트가 없으니까 그건 다른 공개된 ASR STT 모델을 그대로 쓸 수 있습니다. 그런데 일단 ASR과 STT가 같다고 생각하고 글을 썼습니다. 둘이 다를지 모르겠습니다.

2번에 관한 내용은 아예 Multimodal 모델을 안 쓰고 그 대신 ASR STT 모델로 오디오만 입력 받은 후 최종 결과 도출 전에 감정 분류 레이어를 끼워넣는 방식입니다. 이 모델 구조 변경은 자칫 잘못하면 텍스트만 가지고 감정 분류하는 수준에 그칠 수 있어 주의해야 합니다. ASR STT가 내부적으로 오디오와 텍스트를 둘다 고려하기는 하므로 활용할 방법은 있을 건데 명확히 떠오르지는 않습니다.

마지막으로 3번은 Multimodal 모델이나 ASR STT 모델을 쓰지 않고 그 대신 E2E SLU 모델을 씁니다. 오디오만 입력 받는 것은 2번의 ASR STT와 동일하지만 그건 텍스트로 변환하는 게 목적인 것과 달리 E2E SLU는 의문문인지 명령문인지 등 몇 가지 카테고리로 분류하는 게 목적입니다. 분류라는 점에서 감정 데이터와도 잘 어울릴 것이라고 생각합니다. 한편 사람의 의문문 명령문 발화 방식이 감정 표현 방식과 많이 다르다면 문제입니다. 그래도 오디오 감정 분석 모델 KorEmo거의 동일한 구조의 오디오 SLU 모델거의 동일한 구조로 텍스트까지 고려하는 SLU 모델이 있으니 크게 다르지 않을 것 같다는 생각입니다.

다른 웬만한 모델은 텍스트만으로 감정 분류하는 데 만족하고 오디오가 들어와도 텍스트로 변형할 뿐입니다. 2번 주의사항을 지키는 데 실패한 경우와 같으면서도 그보다 훨씬 쉽습니다. 텍스트 감정 분류를 뛰어넘으려면 위 3가지 방법이 있는데 우선 가장 적절해 보이는 것은 1번이라고 생각합니다. 데이터만 없을 뿐이지 그걸 목적으로 만들어진 모델이기 때문입니다. 해당 모델로 감정 분류한 최신 연구도 있는데(발표 자료, 발표 영상) 아쉽게도 모델이 정확히 공개되지는 않았습니다. 그래도 처음 올린 사진의 모델 구조와 크게 다르지 않습니다.

3번은 두가지 참고할 만한 모델이 있습니다: 발표 자료, 코드. 또는 ESPnet입니다.

DINFBO commented 2 years ago

1번에 관한 내용은 써주신 것이 맞습니다. Multimodal model은 오디오 입력과 텍스트 입력이 둘다 필요한데 사용자가 오디오만 입력하면 텍스트가 없으니까 그건 다른 공개된 ASR STT 모델을 그대로 쓸 수 있습니다. 그런데 일단 ASR과 STT가 같다고 생각하고 글을 썼습니다. 둘이 다를지 모르겠습니다.

2번에 관한 내용은 아예 Multimodal 모델을 안 쓰고 그 대신 ASR STT 모델로 오디오만 입력 받은 후 최종 결과 도출 전에 감정 분류 레이어를 끼워넣는 방식입니다. 이 모델 구조 변경은 자칫 잘못하면 텍스트만 가지고 감정 분류하는 수준에 그칠 수 있어 주의해야 합니다. ASR STT가 내부적으로 오디오와 텍스트를 둘다 고려하기는 하므로 활용할 방법은 있을 건데 명확히 떠오르지는 않습니다.

마지막으로 3번은 Multimodal 모델이나 ASR STT 모델을 쓰지 않고 그 대신 E2E SLU 모델을 씁니다. 오디오만 입력 받는 것은 2번의 ASR STT와 동일하지만 그건 텍스트로 변환하는 게 목적인 것과 달리 E2E SLU는 의문문인지 명령문인지 등 몇 가지 카테고리로 분류하는 게 목적입니다. 분류라는 점에서 감정 데이터와도 잘 어울릴 것이라고 생각합니다. 한편 사람의 의문문 명령문 발화 방식이 감정 표현 방식과 많이 다르다면 문제입니다. 그래도 오디오 감정 분석 모델 KorEmo거의 동일한 구조의 오디오 SLU 모델거의 동일한 구조로 텍스트까지 고려하는 SLU 모델이 있으니 크게 다르지 않을 것 같다는 생각입니다.

다른 웬만한 모델은 텍스트만으로 감정 분류하는 데 만족하고 오디오가 들어와도 텍스트로 변형할 뿐입니다. 2번 주의사항을 지키는 데 실패한 경우와 같으면서도 그보다 훨씬 쉽습니다. 텍스트 감정 분류를 뛰어넘으려면 위 3가지 방법이 있는데 우선 가장 적절해 보이는 것은 1번이라고 생각합니다. 데이터만 없을 뿐이지 그걸 목적으로 만들어진 모델이기 때문입니다. 해당 모델로 감정 분류한 최신 연구도 있는데(발표 자료, 발표 영상) 아쉽게도 모델이 정확히 공개되지는 않았습니다. 그래도 처음 올린 사진의 모델 구조와 크게 다르지 않습니다.

3번은 두가지 참고할 만한 모델이 있습니다: 발표 자료, 코드. 또는 ESPnet입니다.

우선 1번 방법으로 적용해보는 중인데... 2개의 구조가 달라서 통합하는거 자체가 어려움이 있는 상황입니다. 구조적인 부분만 통일이 된다고 한다면, 특정 기준에 따라서 음향적인영역과 의미적인영역사이에 가중치를 조절하면서 적절한 가중치를 찾으면 단일모델보다는 훨씬 성능이 좋을거같습니다

yhkee0404 commented 2 years ago

감정을 분류하는 cross-modal transformer입니다. 성능이 그렇게 좋지는 않아 보이지만 이 데이터는 100명 성우가 100번씩 녹음했다고 합니다. 데이터 개수가 10000개로 비슷하더라도, 20명 성우가 녹음한 aihub의 감성 대화 말뭉치보다는 학습이 더 어려웠을 것 같습니다. 마찬가지로 원래 koremo도 2명 성우가 녹음했다고 합니다. 참고로 메일 주소 도메인이 korea입니다. https://github.com/Donghwa-KIM/audiotext-transformer

yhkee0404 commented 2 years ago

감정을 분류하는 cross-modal transformer입니다. 성능이 그렇게 좋지는 않아 보이지만 이 데이터는 100명 성우가 100번씩 녹음했다고 합니다. 데이터 개수가 10000개로 비슷하더라도, 20명 성우가 녹음한 aihub의 감성 대화 말뭉치보다는 학습이 더 어려웠을 것 같습니다. 마찬가지로 원래 koremo도 2명 성우가 녹음했다고 합니다. 참고로 메일 주소 도메인이 korea입니다. https://github.com/Donghwa-KIM/audiotext-transformer

해당 데이터에서는 슬픔만 F1 score가 81.81%인데, 다음 코멘트와 같은 원리로 슬픔과 비슬픔 즉 2개 카테고리로만 줄여서 분류하면 좋은 성능을 보일 것 같습니다. https://github.com/osamhack2021/AI_WEB_AICARE_AIM/issues/3#issuecomment-944346740

yhkee0404 commented 2 years ago

다른 웬만한 모델은 텍스트만으로 감정 분류하는 데 만족하고 오디오가 들어와도 텍스트로 변형할 뿐입니다. 2번 주의사항을 지키는 데 실패한 경우와 같으면서도 그보다 훨씬 쉽습니다. 텍스트 감정 분류를 뛰어넘으려면 위 3가지 방법이 있는데 우선 가장 적절해 보이는 것은 1번이라고 생각합니다. 데이터만 없을 뿐이지 그걸 목적으로 만들어진 모델이기 때문입니다. 해당 모델로 감정 분류한 최신 연구도 있는데(발표 자료, 발표 영상) 아쉽게도 모델이 정확히 공개되지는 않았습니다. 그래도 처음 올린 사진의 모델 구조와 크게 다르지 않습니다.

위 모델은 SADNESS의 recall이 94%인 것을 이용해, 슬픔과 비슬픔으로만 분류하면 예민한 1차 검사로서의 기능을 충분히 강조할 수 있을 것 같습니다.