KR20190123362A - 인공지능을 이용한 음성 대화 분석 방법 및 장치 - Google Patents

인공지능을 이용한 음성 대화 분석 방법 및 장치 Download PDF

Info

Publication number
KR20190123362A
KR20190123362A KR1020180040374A KR20180040374A KR20190123362A KR 20190123362 A KR20190123362 A KR 20190123362A KR 1020180040374 A KR1020180040374 A KR 1020180040374A KR 20180040374 A KR20180040374 A KR 20180040374A KR 20190123362 A KR20190123362 A KR 20190123362A
Authority
KR
South Korea
Prior art keywords
voice
information
mode
model
data
Prior art date
Application number
KR1020180040374A
Other languages
English (en)
Inventor
김창한
김보원
이진석
임현택
김양욱
서귀원
이종화
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020180040374A priority Critical patent/KR20190123362A/ko
Priority to US17/040,746 priority patent/US11769492B2/en
Priority to PCT/KR2019/003508 priority patent/WO2019194451A1/ko
Publication of KR20190123362A publication Critical patent/KR20190123362A/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • G10L13/04Details of speech synthesis systems, e.g. synthesiser structure or memory management
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L2015/088Word spotting
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/225Feedback of the input speech
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
    • G10L25/63Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination for estimating an emotional state

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본 발명은 음성 대화 분석 장치 및 그 방법에 관한 것으로서, 더욱 상세하게는 음성 대화에서 발생하는 음성을 카테고리화하여 필요한 기능을 예측하고, 나아가 음성을 분석하여 적합한 기능을 제공하는 음성 대화 분석 장치 및 그 방법에 관한 것이다. 또한, 본 개시는 기계 학습 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 인공지능(Artificial Intelligence, AI) 시스템 및 그 응용에 관한 것이다.
본 개시의 일 실시 예에 따른, 인공지능 학습 모델을 이용하여 음성 대화를 분석하여 적합한 동작 모드를 통해 동작을 수행하기 위한 전자 장치의 제어 방법은, 음성을 입력받고, 음성에 대한 정보를 획득하는 단계, 음성에 대한 정보를 바탕으로 음성의 카테고리 정보를 획득하여 카테고리 정보에 대응되는 적어도 하나의 동작 모드를 결정하는 단계, 결정된 동작 모드에 대응되는 인공지능 모델을 이용하여 상기 동작 모드와 관련된 동작을 수행하는 단계를 포함한다.

Description

인공지능을 이용한 음성 대화 분석 방법 및 장치{Method and Apparatus for Analyzing Voice Dialogue Using Artificial Intelligence}
본 발명은 음성 대화 분석 장치 및 그 방법에 관한 것으로서, 더욱 상세하게는 음성 대화에서 발생하는 음성을 카테고리화하여 필요한 기능을 예측하고, 나아가 음성을 분석하여 적합한 기능을 제공하는 음성 대화 분석 장치 및 그 방법에 관한 것이다.
또한, 본 개시는 기계 학습 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 인공지능(Artificial Intelligence, AI) 시스템 및 그 응용에 관한 것이다.
근래에는 인간 수준의 지능을 구현하는 인공지능 시스템이 다양한 분야에서 이용되고 있다. 인공지능 시스템은 기존의 룰(rule) 기반 스마트 시스템과 달리 기계가 스스로 학습하고 판단하며 똑똑해지는 시스템이다. 인공지능 시스템은 사용할수록 인식률이 향상되고 사용자 취향을 보다 정확하게 이해할 수 있게 되어, 기존 룰 기반 스마트 시스템은 점차 딥러닝 기반 인공지능 시스템으로 대체되고 있다.
인공지능 기술은 기계학습(예로, 딥러닝) 및 기계학습을 활용한 요소 기술들로 구성된다.
기계학습은 입력 데이터들의 특징을 스스로 분류/학습하는 알고리즘 기술이며, 요소기술은 딥러닝 등의 기계학습 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 기술로서, 언어적 이해, 시각적 이해, 추론/예측, 지식 표현, 동작 제어 등의 기술 분야로 구성된다.
인공지능 기술이 응용되는 다양한 분야는 다음과 같다. 언어적 이해는 인간의 언어/문자를 인식하고 응용/처리하는 기술로서, 자연어 처리, 기계 번역, 대화시스템, 질의응답, 음성 인식/합성 등을 포함한다. 시각적 이해는 사물을 인간의 시각처럼 인식하여 처리하는 기술로서, 객체 인식, 객체 추적, 영상 검색, 사람 인식, 장면 이해, 공간 이해, 영상 개선 등을 포함한다. 추론 예측은 정보를 판단하여 논리적으로 추론하고 예측하는 기술로서, 지식/확률 기반 추론, 최적화 예측, 선호 기반 계획, 추천 등을 포함한다. 지식 표현은 인간의 경험정보를 지식데이터로 자동화 처리하는 기술로서, 지식 구축(데이터 생성/분류), 지식 관리(데이터 활용) 등을 포함한다. 동작 제어는 차량의 자율 주행, 로봇의 움직임을 제어하는 기술로서, 움직임 제어(항법, 충돌, 주행), 조작 제어(행동 제어) 등을 포함한다.
한편, 근래에는 사용자의 음성을 분석하고 그에 대응하는 동작을 수행하는 전자 장치가 개발되었다. 예를 들어, 등록된 번호가 아닌 경우 또는 번호가 등록되지 않은 회사 사람에게 전화가 왔을 때 보이스피싱 전화인지 판별할 수 있다.
다만, 이러한 전자 장치들은 모든 경우의 수를 다 고려하여 대화분석을 수행하기 때문에, 불필요한 연산량이 많아지고 대화분석의 속도가 느리다. 또한, 판별 대상이 기존의 데이터 베이스에 포함된 경우에만 판별할 수 있기 때문에 부정확한 경우가 있다.
본 발명은 상술한 필요성에 따른 것으로, 본 발명의 목적은, 대화 분석을 위한 최소한의 특징만을 추출하여 연산 속도를 증가시키고, 동작 모드에 대응하는 인공지능 모델을 통해 동작 모드에서의 정확한 동작의 수행을 제공함에 있다.
본 개시의 일 실시 예에 따른, 인공지능 학습 모델을 이용하여 음성 대화를 분석하여 적합한 동작 모드를 통해 동작을 수행하기 위한 전자 장치의 제어 방법은, 음성을 입력받고, 상기 음성에 대한 정보를 획득하는 단계, 상기 음성에 대한 정보를 바탕으로 상기 음성의 카테고리 정보를 획득하여 상기 카테고리 정보에 대응되는 적어도 하나의 동작 모드를 결정하는 단계, 상기 결정된 동작 모드에 대응되는 인공지능 모델을 이용하여 상기 동작 모드와 관련된 동작을 수행하는 단계를 포함한다.
또한, 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법은, 상기 카테고리는, 보이스피싱 카테고리, 광고 카테고리, 가족 카테고리, 지인 카테고리를 포함하고, 상기 동작 모드는, 보이스피싱 방지 모드, 광고 필터 모드, 대화분석 모드, 스피치 연습 모드, 전화영어 모드, 자동 모드를 포함한다.
또한, 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법은, 상기 결정된 모드가 대화 분석 모드인 경우 상기 결정된 동작 모드에 대응되는 인공지능 모델에 상기 음성을 입력하여 상기 음성에 대한 키워드 정보, 감정 정보 중 적어도 하나의 정보를 획득하는 단계 및 기설정된 이벤트가 발생하면 상기 획득된 정보를 상기 대화분석 모드의 기능을 통해 출력하는 단계를 더 포함하고, 상기 대화분석 모드의 기능은 기설정된 기간 내 포함된 관심 키워드 빈도 표시, 키워드 관련 정보 링크 제공, 기설정된 기간 내 부정적 대화 빈도 표시를 포함한다.
또한, 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법은, 상기 결정된 모드가 보이스피싱 방지 모드인 경우, 상기 결정된 보이스피싱 방지 모드에 대응되는 인공지능 모델에 상기 음성을 입력하여 제어 명령을 획득하는 단계 및 상기 제어 명령을 바탕으로 상기 보이스피싱 방지 모드의 적어도 하나의 기능을 수행하는 단계를 더 포함하고, 상기 보이스피싱 방지 모드의 기능은 신고 버튼 표시, 금융 어플리케이션 제한, 보이스피싱 알람을 포함한다.
또한, 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법은, 상기 제어명령을 획득하는 단계는, 상기 음성을 텍스트화한 컨텐츠를 획득하는 단계 및 상기 음성에서 음성 특징 정보를 획득하는 단계를 더 포함하고 상기 컨텐츠 및 상기 특징 정보를 상기 결정된 동작 모드에 대응되는 인공지능 모델에 입력하여 제어명령을 획득하는 것을 특징으로 하고, 상기 특징 정보는 상기 음성의 떨림, 어조, 단위 시간당 음소 개수를 포함한다.
또한, 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법은, 상기 결정된 모드가 스피치 연습 모드인 경우 상기 결정된 동작 모드에 대응되는 인공지능 모델에 상기 음성을 입력하여 상기 음성에 대한 문법 정보, 발음 정보, 성조 정보 중 적어도 하나의 정보를 획득하는 단계 및 기설정된 이벤트가 발생하면 상기 획득된 정보를 상기 스피치 연습 모드의 기능을 통해 출력하는 단계를 더 포함하고, 상기 스피치 연습 모드의 기능은 기설정된 기간 내 발음 오류 빈도 표시, 기설정된 기간 내 문법 오류 표시를 포함한다.
또한, 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법은, 상기 카테고리 정보는, 복수의 카테고리에 대응하는 복수의 음성 모델 데이터 패턴을 포함하는 데이터 베이스에서 상기 음성에 대한 정보에 매칭되는 음성 모델 데이터 패턴을 결정하여, 상기 음성 모델 데이터 패턴에 대응하는 카테고리의 정보를 획득하는 것이고, 상기 음성 모델 데이터 패턴은, 기계음 판별 모델, 성별 분류 모델, 연령 분류 모델, 언어 분류 모델을 포함한다.
또한, 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법은, 상기 데이터 베이스에 상기 음성에 대한 정보와 매칭되는 음성 모델 데이터 패턴이 존재하지 않는 경우, 상기 카테고리를 분류 없음 카테고리로 결정하고, 상기 동작 모드를 기설정된 기본 모드로 결정한다.
또한, 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법은, 상기 기본 모드가 자동 모드인 경우, 상기 음성을 복수의 동작 모드에 대응하는 복수의 인공지능 모델에 입력하여 획득한 출력 정보를 바탕으로 상기 출력 정보에 대응되는 동작 모드를 결정하는 단계 및 상기 동작 모드에 대응하는 카테고리 정보를 결정하고, 상기 음성에 대한 정보를 바탕으로 상기 카테고리 정보에 대응되는 음성 모델 데이터 패턴을 업데이트하는 단계를 더 포함한다.
한편, 인공지능 학습 모델을 이용하여 음성을 분석하기 위한 전자 장치는 음성 수신부, 음성 주요부 획득부, 프로세서를 포함하고, 상기 프로세서는, 음성을 입력받도록 상기 음성 수신부를 제어하고, 상기 입력받은 음성에 대한 정보를 획득하도록 상기 음성 주요부 획득부를 제어하고, 상기 음성에 대한 정보를 바탕으로 상기 음성의 카테고리 정보를 획득하여 상기 카테고리 정보에 대응되는 적어도 하나의 동작 모드를 결정하고, 상기 결정된 동작 모드에 대응되는 인공지능 모델을 이용하여 상기 동작 모드와 관련된 동작을 수행한다. 상기 카테고리는, 보이스피싱 카테고리, 광고 카테고리, 가족 카테고리, 지인 카테고리를 포함하고, 상기 동작 모드는, 보이스피싱 방지 모드, 광고 필터 모드, 대화분석 모드, 스피치 연습 모드, 전화영어 모드, 자동 모드를 포함한다.
또한, 인공지능 학습 모델을 이용하여 음성을 분석하기 위한 전자 장치는 통신부를 더 포함하고, 상기 프로세서는, 상기 결정된 동작 모드에 대응되는 인공지능 모델에서 출력된 상기 음성에 대한 키워드 정보, 감정 정보 중 적어도 하나의 정보를 수신하도록 상기 통신부를 제어하고, 기설정된 이벤트가 발생하면 상기 수신한 정보를 상기 대화분석 모드의 기능을 통해 출력하고, 상기 대화분석 모드의 기능은 기설정된 기간 내 포함된 관심 키워드 빈도 표시, 키워드 관련 정보 링크 제공, 기설정된 기간 내 부정적 대화 빈도 표시를 포함한다.
또한, 인공지능 학습 모델을 이용하여 음성을 분석하기 위한 전자 장치는 통신부를 더 포함하고, 상기 결정된 모드가 보이스피싱 방지 모드인 경우, 상기 프로세서는, 상기 결정된 보이스피싱 방지 모드에 대응되는 인공지능 모델에 상기 음성을 입력하여 출력된 제어 명령을 외부 서버로부터 수신하도록 통신부를 제어하고, 상기 제어 명령을 바탕으로 상기 보이스피싱 방지 모드의 적어도 하나의 기능을 수행하고, 상기 보이스피싱 방지 모드의 기능은 신고 버튼 표시, 금융 어플리케이션 제한, 보이스피싱 알람을 포함한다.
또한, 인공지능 학습 모델을 이용하여 음성을 분석하기 위한 전자 장치는 음성 텍스트 변환부, 음성 특징 획득부 및 통신부를 더 포함하고, 상기 프로세서는, 상기 음성을 텍스트화하여 컨텐츠를 획득하도록 상기 음성 텍스트 변환부를 제어하고, 상기 음성에서 음성 특징 정보를 획득하도록 상기 음성 특징 획득부를 제어하고, 상기 컨텐츠 및 상기 특징 정보를 상기 결정된 동작 모드에 대응되는 인공지능 모델에 입력하여 출력된 제어명령을 외부 서버로부터 수신하도록 통신부를 제어하고, 상기 특징 정보는 상기 음성의 떨림, 어조, 단위 시간당 음소 개수를 포함한다.
또한, 인공지능 학습 모델을 이용하여 음성을 분석하기 위한 전자 장치는 통신부를 더 포함하고, 상기 결정된 모드가 스피치 연습 모드인 경우, 상기 결정된 동작 모드에 대응되는 인공지능 모델에 상기 음성을 입력하여 출력된 상기 음성에 대한 문법 정보, 발음 정보, 성조 정보 중 적어도 하나의 정보를 외부 서버로부터 수신하도록 상기 통신부를 제어하고, 기설정된 이벤트가 발생하면 상기 수신된 정보를 상기 스피치 연습 모드의 기능을 통해 출력하고, 상기 스피치 연습 모드의 기능은 기설정된 기간 내 발음 오류 빈도 표시, 기설정된 기간 내 문법 오류 표시를 포함한다.
또한, 인공지능 학습 모델을 이용하여 음성을 분석하기 위한 전자 장치는 상기 프로세서는, 복수의 카테고리에 대응하는 복수의 음성 모델 데이터 패턴을 포함하는 데이터 베이스에서 상기 음성에 대한 정보에 매칭되는 음성 모델 데이터 패턴을 결정하여, 상기 음성 모델 데이터 패턴에 대응하는 카테고리의 정보를 획득하고, 상기 음성 모델 데이터 패턴은, 기계음 판별 모델, 성별 분류 모델, 연령 분류 모델, 언어 분류 모델을 포함한다.
또한, 인공지능 학습 모델을 이용하여 음성을 분석하기 위한 전자 장치는 상기 데이터 베이스에 상기 음성에 대한 정보와 매칭되는 음성 모델 데이터 패턴이 존재하지 않는 경우, 상기 프로세서는, 상기 카테고리를 분류 없음 카테고리로 결정하고, 상기 동작 모드를 기설정된 기본 모드로 결정한다.
또한, 인공지능 학습 모델을 이용하여 음성을 분석하기 위한 전자 장치는 통신부를 더 포함하고, 상기 기본 모드가 자동 모드인 경우, 상기 프로세서는, 상기 음성을 복수의 동작 모드에 대응하는 복수의 인공지능 모델에 입력하여 출력된 정보를 수신하도록 상기 통신부를 제어하고, 상기 출력 정보를 바탕으로 상기 출력 정보에 대응되는 동작 모드를 결정하고, 상기 동작 모드에 대응하는 카테고리 정보를 결정하고, 상기 음성에 대한 정보를 바탕으로 상기 카테고리 정보에 대응되는 음성 모델 데이터 패턴을 업데이트한다.
본 발명은 수집되는 음성에서 화자인식에 필요한 최소한의 특징을 추출하여 1차적으로 범위를 정하는 화자 카테고라이징(Categorizing)을 먼저 수행 하고, 그에 맞는 대화분석방법을 결정하여 대화분석을 진행할 수 있다. 또한, 대화분석의 결과 데이터를 카테고라이징 및 대화분석에 필요한 딥러닝 학습 모델링에 활용하기 때문에 종래기술보다 훨씬 빠르고 정확하며 다양한 동작 모드에 적용할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 전자 시스템을 나타내는 도면이다.
도 2는 본 개시의 일 실시 예에 따른, 전자 장치 및 외부 서버를 포함하는 시스템을 간략히 도시한 도면이다.
도 3은 본 개시의 일 실시 예에 따른, 전자 장치의 구성을 간략하게 도시한 블록도이다.
도 4는 본 개시의 일 실시 예에 따른, 전자 장치의 구성을 상세하게 도시한 블록도이다.
도 5a 및 5b는 본 개시의 일 실시 예에 따른, 전자 장치가 음성에 대한 카테고리 정보를 획득하는 방법을 설명하기 위한 흐름도이다.
도 6은 본 개시의 일 실시 예에 따른, 보이스피싱 모델 데이터 패턴과의 비교를 통해 음성의 카테고리를 보이스피싱 카테고리로 결정하는 방법을 설명하기 위한 도면이다.
도 7은 본 개시의 일 실시 예에 따른, 전자 장치가 보이스피싱 동작 모드로 동작하는 방법을 설명하기 위한 흐름도이다.
도 8은 본 개시의 일 실시 예에 따른, 전자 장치가 대화분석 동작 모드로 동작하는 방법을 설명하기 위한 흐름도이다.
도 9a 내지 9c는 본 개시의 일 실시 예에 따른, 대화분석 모드의 기능을 설명하기 위한 도면이다.
도 10 내지 도 13은 본 개시의 일 실시 예에 따른, 학습 알고리즘을 이용하여 데이터 인식 모델을 생성한 후 데이터 인식 모델을 통해 조건 및 액션, 그리고 조건에 따라 검출할 이벤트 및 액션에 따라 실행할 기능을 결정하는 구성 및 방법을 설명하기 위한 도면이다.
도 14a 및 도 14b는 본 개시의 실시 예에 따른 데이터 인식 모델을 이용하는 전자 장치의 흐름도들이다.
도 15a 및 도 15b는, 본 개시의 실시 예에 따른 데이터 인식 모델을 이용하는 네트워크 시스템의 흐름도들이다.
이하, 본 문서의 다양한 실시 예가 첨부된 도면을 참조하여 기재된다. 그러나 이는 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 문서의 실시 예의 다양한 변경(modifications), 균등물(equivalents), 및/또는 대체물(alternatives)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.
또한, 본 문서에서 사용된 "제1," "제2," 등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 예를 들면, 제1 사용자 기기와 제2 사용자 기기는, 순서 또는 중요도와 무관하게, 서로 다른 사용자 기기를 나타낼 수 있다. 예를 들면, 본 문서에 기재된 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 바꾸어 명명될 수 있다.
어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.
본 문서에서 사용된 용어들은 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 다른 실시 예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 문서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 문서에 사용된 용어들 중 일반적인 사전에 정의된 용어들은, 관련 기술의 문맥상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 문서에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 문서에서 정의된 용어일지라도 본 문서의 실시 예들을 배제하도록 해석될 수 없다.
본 개시의 다양한 실시 예들에 따른 전자 장치는, 예를 들면, 스마트폰, 태블릿 PC, 이동 전화기, 영상 전화기, 전자책 리더기, 데스크탑 PC, 랩탑 PC, 넷북 컴퓨터, 워크스테이션, 서버, PDA, PMP(portable multimedia player), MP3 플레이어, 의료기기, 카메라, 또는 웨어러블 장치 중 적어도 하나를 포함할 수 있다. 웨어러블 장치는 액세서리형(예: 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD)), 직물 또는 의류 일체형(예: 전자 의복), 신체 부착형(예: 스킨 패드 또는 문신), 또는 생체 이식형 회로 중 적어도 하나를 포함할 수 있다. 어떤 실시 예들에서, 전자 장치는, 예를 들면, 텔레비전, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스, 홈 오토매이션 컨트롤 패널, 보안 컨트롤 패널, 미디어 박스(예: 삼성 HomeSyncTM, 애플TVTM, 또는 구글 TVTM), 게임 콘솔(예: XboxTM, PlayStationTM), 전자 사전, 전자 키, 캠코더, 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
본 개시에서, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다.
이하에서, 첨부된 도면을 이용하여 본 발명의 다양한 실시 예들에 대하여 구체적으로 설명한다. 도 1은 본 개시의 일 실시 예에 따른, 입력받은 음성에 대한 정보를 바탕으로 음성의 카테고리를 결정하여, 카테고리에 대응하는 동작 모드를 통해 기능을 수행하는 실시 예를 설명하기 위한 도면이다.
먼저, 전자 장치는 음성을 입력받을 수 있다(S110). 이때, 입력받는 음성은 외부의 화자로부터 발화된 음성, 사용자로부터 발화된 음성, 외부의 화자 간의 대화에서 발화된 음성 및 외부의 화자와 사용자 간의 대화에서 발화된 음성을 포함할 수 있다. 또한, 전자 장치는 기설정된 사용자 입력에 따라 실행된 개인 비서 프로그램을 실행함에 따라 음성을 입력받을 수 있다. 이는 일 실시 예에 불과할 뿐, 기설정된 단어(예를 들어, 빅스비)를 포함하는 사용자 음성, 전자 장치의 기설정된 영역에 구비된 버튼을 선택하는 사용자 입력 등으로 구현될 수 있다. 이 또한 일 실시 예에 불과할 뿐, 전자 장치는 특별한 사용자 입력이 없더라도 전자 장치의 주변에서 발생하는 대화 및 전자 장치를 통한 대화를 항시 입력 받을 수 있다.
전자 장치는 음성을 입력받으면, 음성에 대한 정보를 획득할 수 있다(S120). 이때, 음성에 대한 정보는 기계음/녹음 음성 판별 정보, 화자의 성별 정보, 화자의 연령대 정보, 모국어 사용 판별 정보와 같은 다양한 정보를 포함할 수 있으나, 이는 일 실시 예에 불과할 뿐, 화자에 대한 다양한 정보를 포함할 수 있다.
전자 장치는 음성에 대한 정보를 바탕으로 음성의 카테고리 정보를 획득하고, 획득한 카테고리 정보에 대응되는 동작 모드를 결정할 수 있다(S130). 즉, 전자 장치는 획득한 음성에 대한 정보를 바탕으로 적어도 하나의 카테고리 정보를 획득할 수 있다. 이때, 음성에 대한 카테고리는 보이스피싱 카테고리, 광고 카테고리, 가족 카테고리, 지인 카테고리를 포함할 수 있으나, 이는 일 실시 예에 불과할 뿐 이 외에도 분류 없음 카테고리와 같은 다양한 카테고리를 포함할 수 있다. 또한, 카테고리 종류는 제품이 출고될 때부터 설정되어 있을 수도 있고, 사용자가 별도로 카테고리를 지정할 수도 있다.
한편, 전자 장치는 획득한 카테고리 정보에 대응되는 적어도 하나의 동작 모드를 결정할 수 있다. 이때 동작 모드는 보이스피싱 방지 모드, 광고 필터 모드, 대화분석 모드, 스피치 연습 모드, 기본 모드를 포함할 수 있으나, 이는 일 실시 예에 불과할 뿐 이 외에도 다양한 동작 모드를 포함할 수 있다.
전자 장치는 동작 모드를 결정하면, 결정된 동작 모드에 대응되는 인공지능 모델에 음성을 입력하여 분석하고, 분석 결과에 따라 결정된 동작 모드와 관련된 일 동작을 수행할 수 있다(S140). 이때, 동작 모드에 대응되는 인공지능 모델은 각 동작 모드의 기능을 수행하기 위해 학습된 알고리즘일 수 있다. 예를 들면, 전자 장치는 보이스피싱 방지 모드에 대응하는 보이스피싱 판별 인공지능 모델에 음성을 입력할 수 있고, 입력한 음성이 보이스피싱인 것으로 판단되면 인공지능 모델은 보이스피싱 방지 모드의 일 기능(고 버튼 표시, 금융 어플리케이션 제한, 보이스피싱 알람 등)을 수행하기 위한 제어명령을 출력할 수 있다.
한편, 상술한 바와 같은 학습된 모델은 인공지능 기반으로 학습된 판단 모델로서, 예로, 신경망(Neural Network)을 기반으로 하는 모델일 수 있다. 객체 판단 모델은 인간의 뇌 구조를 컴퓨터상에서 모의하도록 설계될 수 있으며 인간의 신경망의 뉴런(neuron)을 모의하는, 가중치를 가지는 복수의 네트워크 노드들을 포함할 수 있다. 복수의 네트워크 노드들은 뉴런이 시냅스(synapse)를 통하여 신호를 주고받는 뉴런의 시냅틱(synaptic) 활동을 모의하도록 각각 연결 관계를 형성할 수 있다. 또한, 객체 판단 모델은, 일 예로, 신경망 모델, 또는 신경망 모델에서 발전한 딥러닝 모델을 포함할 수 있다. 딥러닝 모델에서 복수의 네트워크 노드들은 서로 다른 깊이(또는, 레이어)에 위치하면서 컨볼루션(convolution) 연결 관계에 따라 데이터를 주고받을 수 있다. 객체 판단 모델의 예에는 DNN(Deep Neural Network), RNN(Recurrent Neural Network), BRDNN(Bidirectional Recurrent Deep Neural Network) 등이 있을 수 있으나 이에 한정되지 않는다.
또한, 전자 장치는 상술한 바와 같은 동작 모드를 결정하고, 동작 모드에 대응하는 기능을 수행하기 위하여, 인공지능 에이전트(Artificial intelligence agent)인 개인 비서 프로그램을 이용할 수 있다. 이때, 개인 비서 프로그램은 AI(Artificial Intelligence) 기반의 서비스를 제공하기 위한 전용 프로그램으로서, 기존의 범용 프로세서(예를 들어, CPU) 또는 별도의 AI 전용 프로세서(예를 들어, GPU 등)에 의해 실행될 수 있다.
구체적으로, 기설정된 사용자 입력(예를 들어, 개인 비서 프로그램에 대응되는 아이콘 터치, 기설정된 단어를 포함하는 사용자 음성 등)이 입력되거나 전자 장치에 구비된 버튼(예를 들어, 인공지능 에이전트를 실행하기 위한 버튼)이 눌러진 경우, 인공지능 에이전트가 동작할 수 있다. 그리고 인공지능 에이전트는 입력된 음성에 대응되는 텍스트 정보 및 채팅 히스토리 정보를 바탕으로 음성에 대응하는 카테고리 정보 및 동작 모드 결정하며, 결정된 동작 모드에 대응되는 인공지능 모델에 텍스트 정보 및 채팅 히스토리 정보를 전송할 수 있다. 그리고 인공지능 에이전트는 인공지능 모델을 통한 분석 결과를 표시할 수도 있다.
물론, 화면상에 기설정된 사용자 입력이 감지되거나 전자 장치에 구비된 버튼(예를 들어, 인공지능 에이전트를 실행하기 위한 버튼)이 눌러지면 인공지능 에이전트가 동작할 수도 있다. 또는, 인공지능 에이전트는 기설정된 사용자 입력이 감지되거나 전자 장치에 구비된 버튼이 선택된 이전에 기실행된 상태일 수 있다. 이 경우, 기설정된 사용자 입력이 감지되거나 전자 장치에 구비된 버튼이 선택된 이후에는 전자 장치의 인공지능 에이전트가 입력된 음성에 대응하는 카테고리 및 동작 모드를 결정할 수 있다. 또한, 인공지능 에이전트는 기설정된 사용자 입력이 감지되거나 전자 장치에 구비된 버튼이 선택된 이전에 대기 상태일 수 있다. 여기서, 대기 상태란, 인공지능 에이전트의 동작 시작을 제어하기 위해 미리 정의된 사용자 입력이 수신되는 것을 감지하는 상태이다. 인공지능 에이전트가 대기 상태인 동안 기설정된 사용자 입력이 감지되거나 전자 장치에 구비된 버튼이 선택되면, 전자 장치는 인공지능 에이전트를 동작시키고, 입력된 음성에 카테고리 및 동작 모드를 결정할 수 있다.
도 2는 본 개시의 일 실시 예에 따른, 전자 장치 및 외부 서버를 포함하는 시스템을 간략히 도시한 도면이다. 도 2에 도시된 바와 같이, 시스템은 전자 장치(100) 및 외부 서버(200)를 포함할 수 있다.
본 도면에서 전자 장치(100)는 스마트폰과 같은 휴대용 기기로 구현된 것을 도시하였으나, 이에 한정되는 것은 아니며, AI 스피커 등 음성을 입력받을 수 있는 기능을 갖춘 다양한 유형의 장치로 구현될 수 있다.
전자 장치(100)는 개인 비서 프로그램을 저장할 수 있다. 이때, 기설정된 사용자 명령이 입력된 경우, 전자 장치(100)는 개인 비서 프로그램을 실행 혹은 활성화시킬 수 있다.
전자 장치(100)는 음성을 수신하면 개인 비서 프로그램을 통해 음성에 대한 정보를 획득하고, 정보에 대응하는 카테고리 및 동작 모드를 결정할 수 있다. 동작 모드를 결정한 전자 장치(100)는 수신한 음성을 학습된 인공지능 모델을 저장하고 있는 외부 서버(200)로 전송할 수 있다. 특히, 전자 장치(100)는 음성에 대응되는 텍스트 정보 및 히스토리 정보를 외부 서버(200)로 전송할 수 있다. 이때, 텍스트 정보는 입력된 음성에 대하여 STT(Speak To Text) 모델을 통하여 변환된 것일 수 있고, 히스토리 정보는 해당 동작 모드에서 인공지능 모델을 통해 분석한 결과를 누적하여 저장한 것일 수 있다.
외부 서버(200)는 전자 장치(100)로부터 수신한 텍스트 정보와 히스토리 정보를 바탕으로, 전자 장치(100)에서 결정한 동작 모드에 대응하는 인공지능 모델을 결정할 수 있다. 또한, 외부 서버(200)는 수신된 텍스트 정보에 대한 자연어 처리를 수행하고, 자연어 처리된 텍스트 정보 및 히스토리 정보를 결정된 인공지능 모델에 입력하여 음성을 분석할 수 있다. 예를 들어, 전자 장치(100)에 의해 결정된 동작 모드가 대화 분석 모드인 경우에, 외부 서버(200)는 대화 분석 모드에 대응하는 학습된 알고리즘에 자연어 처리된 텍스트 정보와 히스토리 정보를 입력하여 음성의 키워드 정보, 감정 정보(기쁨형 대화, 슬픔형 대화 등) 등의 분석 결과를 출력할 수 있다. 이러한 학습된 알고리즘은 일 실시 예에 불과하며, 외부 서버(200)는 다양한 인공지능 모델을 통해 음성을 입력받아 분석하고 이에 대응하는 제어명령을 출력할 수도 있다.
한편, 개인 비서 프로그램이 실행된 후 제2음성이 입력되면, 전자 장치(100)는 제2 음성에 대응되는 카테고리 및 동작 모드를 결정하고, 외부 서버(200)로 입력된 제2 음성의 텍스트 정보와 히스토리 정보를 전송할 수 있다. 특히, 전자 장치(100)가 외부 서버(200)로부터 제1 동작 모드에 대응하는 인공지능 모델을 통해 음성을 분석하여 출력한 제1제어명령을 수신하여 동작을 수행하던 중 제2 음성에 대응되는 모드를 제2 동작 모드로 결정한 경우, 전자 장치(100)는 제2 음성에 대응되는 텍스트 정보 및 히스토리 정보를 외부 서버(200)로 전송할 수 있다. 외부 서버(200)는 제2 동작 모드에 대응하는 인공지능 모델에 제2 음성 텍스트 정보 및 히스토리 정보를 입력하여 제2 제어명령을 출력하고, 전자 장치(100)로 전송할 수 있다. 이때, 전자 장치(100)는 개인 비서 프로그램을 통해 제1 제어명령과 제2제어명령 각각에 대응하는 동작을 출력할 수 있다.
또한, 전자 장치(100)의 개인 비서 프로그램 및 외부 서버(200) 사이에는 텍스트 정보 및 히스토리 정보(혹은 컨텍스트 정보)를 전송하기 위한 정보 전송 규격을 가질 수 있다. 이때, 정보 전송 규격은 개인 비서 프로그램과 외부 서버(200) 사이에 정보를 전송하기 위한 규격으로서, 외부 서버(200)의 구조 정보를 이용하여 정보를 송수신할 수 있다.  따라서, 전자 장치(100)의 개인 비서 프로그램은 정보 전송 규격에 기반하여 텍스트 정보 및 히스토리 정보를 전송할 수 있다.
상술한 실시 예에서는 인공지능 모델을 통한 음성 분석이 외부 서버(200)에서 이루어지는 것으로 설명하였으나 이에 한정되지 않으며, 인공지능 모델을 통한 음성 분석은 외부 서버(200)와의 정보 송수신이 없이도 전자 장치(100) 내부에서 수행될 수 있다. 다만, 이하에서는 외부 서버(200)에서 음성 분석이 수행되는 것으로 설명한다.
도 3 및 도 4는 본 개시의 일 실시 예에 따른, 전자 장치의 구성을 도시한 블록도이다. 도 3에 도시된 바와 같이, 전자 장치(100)는 메모리(110), 음성 수신부(120), 음성 주요부 획득부(130)를 포함할 수 있다. 도 3에 도시된 구성들은 본 개시의 실시 예들을 구현하기 위한 예시도 이며, 당업자에게 자명한 수준의 적절한 하드웨어/소프트웨어 구성들이 전자 장치(100)에 추가로 포함될 수 있다.
메모리(110)는 전자 장치(100)의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 저장할 수 있다. 특히, 메모리(110)는 비휘발성 메모리, 휘발성 메모리, 플래시메모리(flash-memory), 하드디스크 드라이브(HDD) 또는 솔리드 스테이트 드라이브(SSD) 등으로 구현될 수 있다. 메모리(110)는 프로세서(140)에 의해 액세스 되며, 프로세서(140)에 의한 데이터의 독취/기록/수정/삭제/갱신 등이 수행될 수 있다. 본 개시에서 메모리라는 용어는 메모리(110), 프로세서(140) 내 롬(142), 램(141) 또는 전자 장치(100)에 장착되는 메모리 카드(미도시)(예를 들어, micro SD 카드, 메모리 스틱)를 포함할 수 있다. 또한, 메모리(110)에는 디스플레이(160)의 디스플레이 영역에 표시될 각종 화면을 구성하기 위한 프로그램 및 데이터 등이 저장될 수 있다.
특히, 메모리(110)는 개인 비서 프로그램을 저장할 수 있다. 이때, 개인 비서 프로그램은 전자 장치(100)에 대한 다양한 서비스를 제공하기 위한 개인화된 프로그램이다. 나아가, 본 개시의 일 실시 예에 의하면 메모리(110)는 음성 분석을 위한 복수의 인공지능 모델 및 학습된 알고리즘을 저장할 수 있다. 또한 메모리(110)는 복수의 카테고리에 대한 정보를 저장할 수 있고, 복수의 카테고리에 대응하는 복수의 음성 데이터 패턴 모델을 포함하는 데이터 베이스를 저장할 수 있다. 이에 대해서는 추후에 상세히 설명하도록 한다.
음성 수신부(120)는 일반적으로 입력되는 아날로그 음성 신호를 수신하기 위한 구성이다. 음성 수신부(120)는 음성을 수신하기 위한 마이크 등의 구성을 포함하고 있을 수 있다. 음성 수신부(120)는 사용자와 전화 통화 상대방과의 음성뿐만 아니라, 전자 장치를 통한 인터렉션이 없는 상태에서 사용자와 제3자 간의 대화 음성 또한, 수신할 수 있다. 음성 수신부(120)는 아날로그 음성 신호를 식별하기 위한 메인 파라미터 예를 들어 아날로그 음성 신호의 크기 정보와, 서브 파라미터 예를 들어 아날로그 음성 신호의 방향 정보를 갖는 음성 인식 데이터(디지털)로 변환할 수 있다. 이와 같이 변환된 음성 인식 데이터는 시간 변화(T1,..., TN)에 따른 아날로그 음성 신호의 크기 정보만을 포함하는 예를 들어, 1바이트의 음성 인식 데이터로 변환될 수도 있고, 시간 변화(T1,..., TN)에 따른 아날로그 음성 신호의 크기 및 방향 정보를 포함하는 예를 들어, 4바이트의 음성 인식 데이터로 변환될 수도 있다. 이렇듯 다양한 파라미터들을 이용하여 전화 통화로 인한 대화 음성뿐만 아니라 외부의 대화에 대해서도 음성 인식률을 향상시킬 수 있다.
음성 주요부 획득부(130)는 음성 수신부(120)에서 변환된 음성 인식 데이터를 수신하여, 음성 인식 데이터를 식별하고 음성의 주요부 정보를 획득하기 위한 구성이다. 이때, 음성 주요부 획득부(130)는 메인 파라미터(음성의 크기)와 서브 파라미터(음성의 방향) 모두를 고려하여 음성의 주요부 정보를 획득할 수 있다. 이때, 음성 주요부 정보는 기계음/녹음음 정보, 연령 정보, 성별 정보 등 다양한 정보를 포함할 수 있다. 음성 주요부 획득부(130)는 음성의 카테고리를 판별할 수 있는 음소 단위로 분류하고, 분류된 음소의 모음 부와 같은 최소한의 정보를 획득할 수 있다.
통신부(140)는 다양한 통신 방식을 통해 외부의 장치와 통신을 수행할 수 있다. 특히, 통신부(140)는 외부 서버(200)와 통신을 수행하여 음성 분석 결과 또는 제어명령을 수신할 수 있다.
프로세서(150)는 메모리(110), 음성 수신부(120), 음성 주요부 획득부(130), 통신부(140)와 전기적으로 연결되어 전자 장치(100)의 전반적인 동작 및 기능을 제어할 수 있다. 특히, 프로세서(150)는 음성을 입력받도록 음성 수신부(120)를 제어할 수 있고, 입력된 음성의 주요부를 획득하도록 음성 주요부 획득부(130)를 제어할 수 있다. 또한 프로세서(150)는 메모리(110)에 저장된 데이터 베이스 내의 음성 모델 데이터 패턴들과 획득된 음성 주요부를 비교하여 입력된 음성의 카테고리 정보를 획득할 수 있다. 프로세서(150)는 입력된 음성을 외부 서버(200)로 전송하도록 통신부(140)를 제어할 수 있고, 외부 서버(200)가 인공지능 모델에 음성을 입력하고 분석하여 출력된 결과를 수신하도록 통신부(140)를 제어할 수 있다. 프로세서(150)는 통신부(140)를 통해 수신한 제어명령에 따라 기능을 수행할 수 있고, 수신한 분석 결과를 저장하도록 메모리(110)를 제어할 수 있다. 프로세서(150)가 입력된 음성의 카테고리 정보를 획득하고, 그에 대응하는 동작 모드에서 기능을 수행하는 방법에 대해서는 추후에 상세히 설명하도록 한다.
도 4는 본 개시의 다른 실시 예에 따른, 전자 장치(100)의 구성을 상세히 도시한 블록도이다. 도 4에 도시된 바와 같이, 전자 장치(100)는 메모리(110), 음성 수신부(120), 음성주요부 획득부(130), 음성 텍스트 변환부(131), 음성특징 획득부(132), 통신부(140), 프로세서(150), 디스플레이(160), 카메라(170), 오디오 출력부(180), 사용자 입력부(190)를 포함할 수 있다. 한편, 메모리(110), 음성 수신부(120), 음성 주요부 획득부(130)에 대해서는 도 3에서 설명하였으므로, 중복되는 설명은 생략하기로 한다.
음성 텍스트 변환부(131)는 입력받은 음성을 텍스트로 변환하기 위한 구성이다. 음성 텍스트 변환부(131)는 STT(Speak To Text) 모듈을 이용하여 음성을 텍스트로 변환할 수 있다.
음성 특징 획득부(132)는 음성에 포함된 음성의 특징을 획득하기 위한 구성이다. 음성 특징 획득부(132)는 음성의 떨림 정보, 어조 정보 등의 특징을 획득할 수 있다.
통신부(140)는 다양한 유형의 통신방식에 따라 다양한 유형의 외부 기기와 통신을 수행할 수 있다. 통신부(140)는 와이파이칩(140-1), 블루투스 칩(140-2), NFC 칩(140-3) 중 적어도 하나를 포함할 수 있다. 프로세서(150)는 통신부(140)를 이용하여 외부 서버(200) 또는 각종 외부 기기와 통신을 수행할 수 있다. 그 밖에, 통신부(140)는 NFC 칩 등과 같은 다양한 통신 칩을 통해 외부 기기와 통신을 수행할 수 있다.
카메라(170)는 외부의 오브젝트를 포함하는 이미지를 촬영할 수 있다. 이때, 카메라(170)는 전자 장치(100)의 전방 및 후방 중 적어도 하나에 구비될 수 있다. 한편, 카메라(170)는 전자 장치(100) 내부에 구비될 수 있으나, 이는 일 실시 예에 불과할 뿐, 전자 장치(100) 외부에 존재하며, 전자 장치(100)와 유무선으로 연결될 수 있다.
오디오 출력부(180)는 오디오 처리부(미도시)에 의해 디코딩이나 증폭, 노이즈 필터링과 같은 다양한 처리 작업이 수행된 각종 오디오 데이터뿐만 아니라 각종 알림 음이나 음성 메시지를 출력하는 구성이다. 특히, 오디오 출력부(180)는 스피커로 구현될 수 있으나, 이는 일 실시 예에 불과할 뿐, 오디오 데이터를 출력할 수 있는 출력 단자로 구현될 수 있다.
특히, 오디오 출력부(180)는 검색 결과에 대한 정보를 오디오 형태로 사용자에게 제공할 수 있다.
프로세서(150)(또는, 제어부)는 메모리(110)에 저장된 각종 프로그램을 이용하여 전자 장치(100)의 전반적인 동작을 제어할 수 있다.
프로세서(150)는 RAM(151), ROM(152), 그래픽 처리부(153), 메인 CPU(154), 제1 내지 n 인터페이스(155-1~155-n), 버스(156)로 구성될 수 있다. 이때, RAM(151), ROM(152), 그래픽 처리부(153), 메인 CPU(154), 제1 내지 n 인터페이스(155-1~155-n) 등은 버스(156)를 통해 서로 연결될 수 있다.
사용자 입력부(190)는 다양한 사용자 입력을 수신하여 프로세서(150)로 전달할 수 있다. 특히, 사용자 입력부(190)는 터치 센서, (디지털) 펜 센서, 압력 센서, 키를 포함할 수 있다. 터치 센서는, 예를 들면, 정전식, 감압식, 적외선 방식, 또는 초음파 방식 중 적어도 하나의 방식을 사용할 수 있다. (디지털) 펜 센서는, 예를 들면, 터치 패널의 일부이거나, 별도의 인식용 시트를 포함할 수 있다. 키는, 예를 들면, 물리적인 버튼, 광학식 키, 또는 키패드를 포함할 수 있다. 마이크는 사용자 음성을 수신하기 위한 구성으로, 전자 장치(100) 내부에 구비될 수 있으나, 이는 일 실시 예에 불과할 뿐, 전자 장치(100)의 외부에 구비되어 전자 장치(100)와 전기적으로 연결될 수 있다.
특히, 사용자 입력부(190)는 개인 비서 프로그램에 대응되는 아이콘을 선택하기 위한 기설정된 사용자 터치 또는 전자 장치(100) 외부에 구비된 버튼을 선택하는 사용자 입력에 따른 입력 신호를 획득할 수 있다. 그리고 사용자 입력부(190)는 입력 신호를 프로세서(150)로 전송할 수 있다.
도 5a 및 5b는 본 개시의 일 실시 예에 따른, 전자 장치(100)가 음성에 대한 카테고리 정보를 획득하는 방법을 설명하기 위한 흐름도이다.
특히, 도 5a는 전자 장치(100)가 메모리(110)에 저장된 데이터 베이스와의 비교를 통해 음성에 대한 카테고리 정보를 획득하는 방법을 설명하고, 도 5b는 전자 장치(100)가 학습 알고리즘을 통해 음성에 대한 카테고리 정보를 획득하는 방법을 설명한다.
구체적으로 도 5a를 참조하면, 전자 장치(100)는 음성을 입력 받고(S510), 아날로그 음성 신호를 전자 장치(100)에서 인식하고 가공하기 위한 디지털 음성 인식 데이터를 획득할 수 있다(S520).
전자 장치(100)는 변환된 음성 인식 데이터에 포함된 주변 환경의 잡음 성분에 대한 음성 인식 데이터와 대화를 통해 입력된 음성 신호에 대한 음성 인식 데이터를 분리하여, 잡음 성분을 제거할 수 있다(S530).
전자 장치(100)는 잡음 제거 처리된 음성 인식 데이터를 용이하게 구분할 수 있다. 예를 들어, 음성 신호를 음소 단위로 분류하고, 분류된 음소의 모음 부와 같은 음성 주요부 정보를 획득할 수 있으며, 주요부 정보에는 기계음/녹음음 판별 정보, 연령 분류 정보, 성별 분류 정보 등과 같은 다양한 정보를 포함할 수 있다.
전자 장치(100)는 획득된 음성 주요부 정보와 복수의 음성 모델 데이터 패턴을 비교할 수 있다(S550). 여기서, 음성 모델 데이터 패턴은 불특정 다수 화자의 음성 신호의 공통적인 특징을 모델화하여 등록된 패턴을 의미하고, 이러한 음성 모델 데이터 패턴은 음성 데이터 베이스(이하, 음성 DB) 등에 기저장되어 있을 수 있다. 이때, 복수의 음성 모델 데이터 패턴은 복수의 카테고리에 대응되는 패턴일 수 있다. 예를 들면, 보이스피싱 음성은 기계음/녹음음과 같은 공통적인 특징을 가지고 있을 수 있다. 즉, 보이스피싱 음성 모델 패턴은 이러한 공통적인 특징을 모델화하여 등록한 패턴이며, 보이스피싱 음성 모델 패턴은 보이스피싱 카테고리에 대응되는 패턴일 수 있다. 이는 일 실시 예에 불과하며, 다양한 음성 모델 패턴이 다양한 카테고리에 대응될 수 있다.
전자 장치(100)는 음성 모델 데이터 패턴과 획득된 음성 주요부 정보의 비교 결과, 매칭되는 음성 모델 데이터 패턴 및 카테고리가 존재하는지 여부를 판단할 수 있다(S560). 판단 결과는 음성 주요부 정보와 일치하는 음성 모델 데이터 패턴이 존재하면(S560-Y), 해당 음성 모델 데이터 패턴에 대응하는 카테고리의 정보를 획득할 수 있다(S570).
상술한 실시 예에서는 음성에 대한 주요부 정보와 데이터 베이스의 음성 모델 데이터 패턴과의 비교를 통해서 카테고리 정보를 획득하는 방법에 대해서 설명하였으나, 학습된 인공지능 모델을 통해 음성의 카테고리 정보를 획득할 수도 있다. 예를 들면, 도 5b를 참조하면, 전자 장치(100)는 음성을 학습된 인공지능 모델에 입력하여 음성의 카테고리 정보를 획득할 수 있다.
구체적으로, 전자 장치(100)는 음성을 입력받고(S580), 음성에 대한 정보를 획득할 수 있다(S581). 이때, 음성에 대한 정보는 음성의 주파수 정보일 수 있다. 전자 장치(100)는 카테고리 판별을 위해 학습된 인공지능 모델에 획득한 음성에 대한 정보를 입력할 수 있다(S582). 카테고리 판별을 위한 인공지능 모델은 입력된 음성 정보에 대응하는 카테고리 정보를 출력할 수 있다(S582). 이러한 인공지능 모델은 전자 장치(100)의 내부의 메모리(110)에 저장되어 있을 수도 있고, 외부 서버(200)에 저장되어 있을 수도 있다. 또한, 전자 장치(100) 외의 제2 전자 장치(미도시)에 저장되어 있을 수도 있다.
도 5a 및 5b에서 설명한 카테고리 획득 방법에 의하면, 입력된 음성에 대하여 1차적으로 카테고라이징을 통해 음성 전체에 대하여 분석할 필요 없이 빠르게 음성을 분석할 수 있도록 하는 효과가 있다.
한편, 데이터 베이스에 음성에 대한 정보와 매칭되는 음성 모델 데이터 패턴이 존재하지 않는 경우, 전자 장치(100)는 음성의 카테고리를 분류 없음 카테고리로 결정할 수 있다. 입력된 음성이 분류 없음 카테고리에 속하는 경우에 대한 자세한 동작은 추후세 상세히 설명하도록 한다.
도 6은 음성의 카테고리를 보이스피싱 카테고리로 결정하는 과정을 설명하기 위한 도면이다.
전자 장치(100)는 보이스피싱 모델 데이터 패턴과 음성에서 획득한 음성 인식 데이터 및 음성 주요부 데이터를 비교할 수 있다. 전자 장치(100)의 메모리(110)는 다양한 보이스피싱 판별을 위한 모델 데이터 패턴이 데이터 베이스에 저장할 수 있다. 전자 장치(100)는 음성 인식 데이터와 데이터 베이스 내의 복수의 보이스피싱 모델 데이터 패턴의 비교를 통해, 유사도가 높은 특정 패턴을 선택할 수 있다.
도 6을 참조하면, 전자 장치(100)는 보이스피싱 패턴 NO.39, NO.65, NO.77, NO.131이 유사도가 높은 패턴으로 선택된 것을 도시하며, 전자 장치(100)는 음성 주요부 정보와 선택된 보이스피싱 패턴과 추가로 유사도를 비교할 수 있다. 전자 장치(100)는 음성 주요부 정보와 선택된 보이스피싱 패턴과 유사도가 높아 보이스피싱 위험이 높다고 결정하면, 입력된 음성을 보이스피싱 카테고리로 결정할 수 있다.
한편, 본 도면에서는 보이스피싱 카테고리로 결정하기 위해 보이스피싱 모델 데이터 패턴과 음성 정보와의 비교만을 도시하였으나, 이에 한정되지 않으며, 다양한 카테고리를 결정하기 위한 모델 데이터 패턴도 음성 정보와 비교하여 카테고리를 결정할 수 있다.
상술한 방법에 의해 결정된 음성에 대한 카테고리는 각각의 동작 모드와 1대1 대응되는 관계는 아니다. 예를 들면, 외국인 친구로부터 전화 통화를 수신한 경우, 전자 장치(100)는 입력받은 음성을 지인 카테고리로 분류하고, 이에 대응되는 동작 모드로 전화영어 모드, 대화분석 모드를 결정할 수도 있다.
도 7 내지 9는 상술한 방법에 의해 음성의 카테고리를 결정한 전자 장치가 각각의 카테고리에 대응하는 동작 모드를 통해 음성 분석 및 기능 수행하는 방법을 설명한다.
구체적으로, 도 7은 전자 장치가 보이스피싱 동작 모드로 동작하는 방법을 설명하기 위한 흐름도이다.
전자 장치(100)는 도 5a, 5b 및 6에서 설명한 방법에 따라 보이스피싱 카테고리 정보를 획득한 경우, 카테고리 정보를 바탕으로 보이스피싱 방지 모드를 수행할 수 있다(S710). 전자장치(100)는 보이스피싱 카테고리 정보를 획득한 경우가 아닌 경우에도 기설정된 설정에 따라 보이스피싱 방지 모드를 수행하는 할 수 있다. 예를 들면, 전자 장치(100)는 입력받은 음성을 통해 분류 없음 카테고리 정보를 획득한 경우에도 보이스피싱 방지 모드를 통한 동작을 수행할 수 있다.
전자 장치(100)는 입력받은 음성이 보이스피싱 방지 모드 상에서 블랙리스트에 등록된 음성인지 여부를 판단할 수 있다(S720). 입력받은 음성이 블랙리스트에 등록된 음성인 경우(S720-Y), 전자 장치(100)는 보이스피싱 방지 모드 상의 적어도 하나의 기능을 수행하기 위한 제어명령을 획득하고, 기능을 수행할 수 있다(S760). 이때 보이스피싱 방지 모드의 기능은 신고 버튼 표시, 금융 어플리케이션 제한, 보이스피싱 알람 등을 포함할 수 있으나, 이에 한정되지 않는다.
입력받은 음성이 블랙리스트에 등록된 음성이 아닌 경우(S720-Y), 전자 장치(100)는 입력받은 음성에서 음성의 특징 정보를 획득하기 위한 정보 처리를 수행할 수 있다(S730). 이때, 음성의 특징 정보는 음성의 떨림 정보, 어조 정보, 단위 시간당 음소 개수 정보 등을 포함할 수 있으나 이에 한정되지 않는다. 전자 장치(100)는 획득한 음성의 특징 정보와 음성을 보이스피싱 방지 모드에 대응되는 자연어처리모델을 이용하여 학습 알고리즘을 통해 입력할 수 있다(S740). 전술한 바와 같이, 자연어처리모델을 이용하는 학습 알고리즘을 바탕으로 음성 분석은 외부 서버(200)에서 수행될 수도 있고, 전자 장치(100) 내부에서 수행될 수도 있다. 예로, 전자 장치(100)의 개인 비서 프로그램은 입력받은 음성을 메모리(110)에 저장된 학습 알고리즘으로 분석을 수행할 수도 있고, 통신부(140)를 통해 외부 서버(100)로 음성 및 음성의 특징 정보를 전송하여 외부 서버(200)에 저장된 학습 알고리즘으로 분석을 수행할 수도 있다.
보이스피싱 방지 모드에 대응하는 학습 알고리즘을 통해 음성을 분석한 결과, 입력된 음성이 보이스피싱 음성으로 추정되는 경우(S750-Y), 전자 장치(100)는 보이스피싱 방지 모드의 일 기능을 수행하기 위한 제어명령을 획득할 수 있고, 이에 대응하는 기능을 수행할 수 있다(S760). 상술한 바와 같이, 이때 보이스피싱 방지 모드의 기능은 신고 버튼 표시, 금융 어플리케이션 제한, 보이스피싱 알람 등을 포함할 수 있으나, 이에 한정되지 않는다.
전자 장치(100)는 보이스피싱 방지 기능을 수행한 경우에, 해당 음성에 대해 분석한 결과를 추후에 다시 분석을 할 때 정확한 결과를 도출하기 위해 딥러닝으로 학습 알고리즘에 학습시킬 수 있다(S770).
도 8은 전자 장치가 대화분석 동작 모드로 동작하는 방법을 설명하기 위한 흐름도이다.
전자 장치(100)는 도 5a, 5b 및 6에서 설명한 방법에 따라 가족 또는 지인 카테고리 정보를 획득한 경우, 카테고리 정보를 바탕으로 대화분석 모드를 수행할 수 있다(S810). 전자장치(100)는 가족 또는 지인 카테고리 정보를 획득한 경우가 아닌 경우에도 기설정된 설정에 따라 대화분석 모드를 수행하는 할 수 있다. 예를 들면, 전자 장치(100)는 입력받은 음성을 통해 분류 없음 카테고리 정보를 획득한 경우에도 대화분석 모드를 통한 동작을 수행할 수 있다.
전자 장치(100)는 입력받은 음성을 대화분석 모드에 대응되는 자연어처리모델을 이용하여 학습 알고리즘을 통해 입력할 수 있다(S820). 전술한 바와 같이, 자연어처리모델을 이용하는 학습 알고리즘을 바탕으로 음성 분석은 외부 서버(200)에서 수행될 수도 있고, 전자 장치(100) 내부에서 수행될 수도 있다. 예로, 전자 장치(100)의 개인 비서 프로그램은 입력받은 음성을 메모리(110)에 저장된 학습 알고리즘으로 분석을 수행할 수도 있고, 통신부(140)를 통해 외부 서버(100)로 음성 및 음성의 특징 정보를 전송하여 외부 서버(200)에 저장된 학습 알고리즘으로 분석을 수행할 수도 있다.
자연어처리모델을 이용한 학습 알고리즘은 입력받은 음성을 분석한 결과, 음성의 키워드 정보, 감정 정보, 대화유형 정보를 포함하는 정보를 출력할 수 있다. 이때, 키워드 정보는 사용자와 상대방 간의 대화에서 빈도가 높았던 단어들에 대한 정보일 수 있고, 감정 정보는 사용자 또는 상대방의 감정 상태에 대한 정보일 수 있고, 대화유형 정보는 부정형/긍정형 대화 유형에 대한 정보일 수 있으나, 이에 한정되지 않는다.
전자 장치(100)는 출력된 정보를 메모리(110)에 저장할 수 있고(S830), 디스플레이(160) 또는 오디오(180)를 통해 대화분석 모드의 일 기능을 이용하여 출력할 수도 있다. 이에 대해서는 추후에 상세히 설명하기로 한다. 이때 대화분석 모드의 기능은 기설정된 기간 내 포함된 관심 키워드 빈도 표시, 키워드 관련 정보 링크 제공, 기설정된 기간 내 부정적 대화 빈도 표시를 포함할 수 있다.
전자 장치(100)는 학습된 알고리즘을 통해 출력된 정보를 메모리(110)에 저장하고, 기설정된 이벤트가 발생하면 사용자에게 대화분석 모드의 일 기능을 이용하여 출력할 수 있다. 이때, 기설정된 이벤트는 사용자의 대화 또는 통화가 종료일 수 있고, 사용자가 개인 비서 프로그램에 결과를 출력할 것을 명령하는 사용자 명령일 수 있으나 이에 한정되지 않는다. 이에 대해서는 대화분석 모드의 기능을 설명하며, 추후에 상세히 설명하기로 한다.
도 9a 내지 9c는 대화분석 모드의 기능을 설명하기 위한 도면이다.
도 9a는 전자 장치가 사용자가 가족 카테고리에 분류된 상대방들과의 대화를 분석한 결과를 나타내는 대화분석 모드의 기능을 설명하기 위한 도면이다. 도 9a를 참조하면, 전자 장치(100)는 사용자의 가족들과의 대화를 분석하고, 주간 점수(910)와 주요 지표(920)에 대한 출력 결과를 표시할 수 있다.
전자 장치(100)는 사용자와 가족들 간의 대화 분석을 통한 칭찬형, 감사형, 애정형과 같은 긍정형 대화 유형과 부정형, 비난형, 짜증형과 같은 부정형 대화 유형의 출력 결과를 히스토리 정보로 메모리(110)에 저장할 수 있다. 또한, 전자 장치는 사용자와 가족들 간의 대화 분석을 통한 키워드 출력 결과를 히스토리 정보로 메모리(110)에 저장할 수 있고, 사용자와 가족 간의 대화량에 대한 출력 결과 역시 메모리(110)에 저장할 수 있다.
전자 장치(100)는 기설정된 이벤트가 발생하면, 메모리(110)에 저장된 히스토리 정보 및 대화분석 결과를 출력할 수 있다. 이때 기설정된 이벤트는 사용자의 대화 또는 통화가 종료일 수 있고, 사용자가 개인 비서 프로그램에 결과를 출력할 것을 명령하는 사용자 명령일 수 있으나 이에 한정되지 않는다. 예를 들면, 기설정된 이벤트는 사용자가 개인 비서 프로그램을 통해 '지난주 가족들과 대화는 어땠어?'라는 음성을 입력하는 이벤트일 수 있고, 또는 사용자가 개인 비서 프로그램에 표시된 아이콘을 선택하는 이벤트일 수 있다. 기설정된 이벤트가 발생하면, 전자 장치(100)는 주간 점수(910) 및 주요 지표(920)를 사용자에게 디스플레이(160)를 통해 제공할 수 있다. 다만, 이에 한정하지 않으며, 전자 장치(100)는 오디오(180)를 통해 사용자에게 주간 점수(910) 및 주요 지표(920)에 대한 결과를 제공할 수도 있다.
도 9b 및 9c는 전자 장치가 대화분석 모드의 기능과 관련된 부수적인 기능을 제공하는 실시 예를 설명하기 위한 도면이다.
도 9b는 전자 장치(100)가 대화 분석 결과 키워드를 제공한 경우에, 특정 키워드에 대하여 자동 링크를 제공하는 실시 예를 도시한다. 구체적으로 도 9b를 참조하면, 전자 장치(100)는 사용자에게 표시한 키워드 중 하나인 '레고'와 관련하여 연관된 화제 포털에서 자동 링크를 제공할 수 있다. 이러한 자동 링크는 사용자가 직접 선택하는 인터렉션을 통하여 연결될 수도 있고, 사용자가 개인 비서 프로그램에 '레고 링크 연결해줘'라는 음성 명령을 입력하는 인터렉션을 통하여 연결될 수도 있으나, 이에 한정하지 않는다.
도 9c는 전자 장치(100)는 대화 유형 분석 결과를 제공한 후에, 특정 유형의 대화와 관련된 문장 보기 또는 가이드를 제공하는 실시 예를 도시한다. 구체적으로 전자 장치(100)는 사용자가 대화에서 부정형 대화 사용 횟수 누적 결과를 제공할 수 있고, 이를 시정하기 위한 가이드를 제공할 수 있다. 예를 들면 도 9c를 참조하면, 사용자의 부정형 대화 사용 횟수가 40번이며, 이에 대해서 전자 장치(100)는 사용자와 가족들 간의 대화를 긍정적으로 만들기 위한 가이드로 "'안돼'라고 말하기 전에 먼저 이유를 물어봐 주세요"와 같은 링크를 제공할 수 있다. 마찬가지로 사용자의 비난형 대화 사용 횟수가 12번이며, 이에 대해서 전자 장치(100)는 "I 메시지로 말하세요."와 같은 링크를 제공할 수 있다. 이러한 실시 예는 예시에 불과하고 다양한 대화 유형에 대해서 다양한 가이드 링크를 제공할 수 있다. 이러한 링크는 사용자가 직접 선택하는 인터렉션을 통하여 제공될 수도 있고, 사용자가 개인 비서 프로그램에 '음성 가이드 부탁해'와 같은 음성 명령을 입력하는 인터렉션을 통하여 제공될 수도 있다.
한편, 도면에 도시하고 있지는 않지만, 전자 장치(100)는 다양한 동작 모드를 수행할 수 있다. 예를 들면, 스피치 연습 모드인 경우, 전자 장치(100)는 입력받은 음성을 스피치 연습 모드에 대응되는 인공지능 모델에 입력할 수 있다. 이때 스피치 연습 모드에 대응되는 인공지능 모델은 전자 장치(100)에 저장되어 있을 수도 있고, 외부 서버(200)에 포함되어 있을 수도 있다. 인공지능 모델은 음성을 입력받으면, 음성에 대한 문법 정보, 발음 정보, 성조 정보 중 적어도 하나의 정보를 출력할 수 있다. 즉, 인공지능 모델은 입력된 음성의 해당 언어와 관련하여 문법적인 오류, 발음 오류, 성조 오류 등에 대한 정보를 출력할 수 있다. 전자 장치(100)는 인공지능 모델에서 출력된 정보들을 메모리(110)에 저장할 수 있다.
전자 장치(100)는 기설정된 이벤트가 발생하면, 메모리(110)에 저장된 히스토리 정보 및 대화분석 결과를 출력할 수 있다. 이때 기설정된 이벤트는 사용자의 대화 또는 통화가 종료일 수 있고, 사용자가 개인 비서 프로그램에 결과를 출력할 것을 명령하는 사용자 명령일 수 있으나 이에 한정되지 않는다. 예를 들면, 기설정된 이벤트는 사용자가 개인 비서 프로그램을 통해 '지난주 내 영어 발음은 어땠어?'라는 음성을 입력하는 이벤트일 수 있고, 또는 사용자가 개인 비서 프로그램에 표시된 아이콘을 선택하는 이벤트일 수 있다. 기설정된 이벤트가 발생하면, 전자 장치(100)는 기설정된 기간 내 발음 오류 빈도 표시(미도시) 및 기설정된 기간 내 문법 오류 표시(미도시)를 사용자에게 디스플레이(160)를 통해 제공할 수 있으나, 이에 한정하지 않는다. 또한, 전자 장치(100)는 오디오 출력부(180)를 통해 사용자에게 기설정된 기간 내 발음 오류 빈도 (미도시) 및 기설정된 기간 내 문법 오류 표시 (미도시)에 대한 결과를 제공할 수도 있다.
한편, 전자 장치(100)는 입력받은 음성의 동작 모드를 기본 모드로 결정한 경우, 기설정된 기본 모드에 따라 음성 분석 및 기능을 수행하게 된다. 이때, 기설정된 기본 모드는 출고 시에 설정되어 있을 수도 있으나, 사용자가 설정한 모드일 수도 있다.
기설정된 기본 모드가 자동 모드인 경우, 전자 장치(100)는 입력된 음성을 복수의 동작 모드에 대응하는 복수의 인공지능 모델에 입력할 수 있다. 이때 복수의 동작 모드는 메모리(110)에 저장된 동작 모드들일 수 있다. 복수의 인공지능 모델은 각각의 동작 모드에서 동작하는 학습된 알고리즘으로 메모리(110)에 저장되어 있을 수도 있고 외부 서버(200)에 저장되어 있을 수 있다.
복수의 인공지능 모델은 입력된 음성을 분석하고, 이에 대응하는 정보를 출력할 수 있다. 예를 들면, 복수의 인공지능 모델을 통해 분석하던 중, 보이스피싱 방지 모델이 입력된 음성이 보이스피싱 음성 위험이 높다고 판단하면 보이스피싱 방지 모드의 적어도 하나의 기능을 수행할 수 있는 제어명령을 출력한다.
전자 장치(100)는 복수의 인공지능 모델에서 획득한 출력 정보를 바탕으로 출력 정보에 대응되는 동작 모드를 판단할 수 있다. 예를 들면, 출력 정보가 보이스피싱 방지 모드의 적어도 하나의 기능을 수행할 수 있는 제어명령이라면, 전자 장치(100)는 보이스피싱 방지 모드로 동작 모드를 결정하고, 제어명령에 대응하는 기능을 수행할 수 있다.
전자 장치(100)는 출력 정보에 대응하는 동작 모드의 카테고리 정보를 결정할 수 있다. 예를 들면, 출력 정보에 대응하는 동작 모드가 전화영어 모드인 경우, 전자 장치(100)는 전화 영어 모드에 대응하도록 기설정된 지인 카테고리, 외국인 카테고리를 결정할 수 있다.
전자 장치(100)는 결정된 카테고리를 판별하기 위해 메모리(110)에 저장된 카테고리 정보에 대응되는 음성 모델 데이터 패턴을 입력받은 음성 및 음성의 주요부 정보를 바탕으로 업데이트할 수 있다. 즉, 전자 장치(100)는 분류 없음 카테고리로 분류된 음성이 추후에 다시 입력되는 경우에는 업데이트된 데이터 베이스를 이용하여 적절한 카테고리로 분류할 수 있다.
한편, 전자 장치(100)에 음성 수신부(120)와 음성 주요부 획득부(130)가 포함된 것으로 설명하였으나, 본 개시의 일 실시 예에 따르면, 전자 장치(100)와 별도의 제2 전자 장치(미도시)에 포함되어 있을 수 있다. 이때, 제2전자 장치와 전자 장치(100)는 서로 무선 통신으로 연결되어 정보의 송수신이 가능할 수 있다. 제2 전자 장치는 사용자의 전자 장치(100)와 상이한 공간에서 입력되는 대화 음성을 수신하고, 음성을 분석할 수 있다. 이때, 음성을 분석하는 인공지능 모델은 제2 전자 장치에 저장되어 있을 수 있고, 전자 장치(100)에 저장되어 있을 수 있고, 외부 서버(200)에 저장되어 있을 수 있다. 전자 장치(100) 또는 외부 서버(200)에 인공지능 모델이 저장되어 있는 경우에는, 제2 전자 장치는 입력된 음성 및 음성에 대한 정보를 전자 장치(100) 또는 외부 서버(200)로 전송할 수 있다.
상술한 실시 예에 따르면, 사용자는 제2 전자 장치를 사용자의 가족이 주로 이용하는 식탁에 위치시키고, 가족 간의 대화를 분석한 결과를 전자 장치(100)를 통해 확인하고 가이딩 받을 수 있다. 또한, 제2 전자 장치는 사용자의 가족이 휴대하는 제3 전자 장치(미도시)와 무선 통신으로 연결될 수 있고, 이 경우에는 사용자의 가족은 제3 전자 장치를ㄹ 통해 대화 분석 결과 및 가이드를 제공받을 수 있다.
이하에서는 도 10 내지 도 13을 참조하여 본 개시의 일 실시 예에 따른, 학습 알고리즘을 이용하여 데이터 인식 모델을 생성한 후 데이터 인식 모델을 통해 조건 및 액션, 그리고 조건에 따라 검출할 이벤트 및 액션에 따라 실행할 기능을 결정할 수 있다.
도 10을 참조하면, 일부 실시 예에 따른 프로세서(150)는 데이터 학습부(1010) 및 데이터 인식부(1020)를 포함할 수 있다.
데이터 학습부(1010)는 데이터 인식 모델이 소정의 상황 판단(예를 들어, 조건 및 액션, 조건에 따른 이벤트, 액션에 따른 기능에 대한 판단 등)을 위한 기준을 갖도록 생성 또는 학습시킬 수 있다. 데이터 학습부(1010)는 소정의 상황을 판단하기 위하여, 학습 데이터를 데이터 인식 모델에 적용하여, 판단 기준을 갖는 데이터 인식 모델을 생성할 수 있다.
일 예로, 본 개시의 일 실시 예에 따른, 데이터 학습부(1010)는 음성 정보와 관련된 학습 데이터 및 영상 정보와 관련된 학습 데이터를 이용하여 데이터 인식 모델을 생성 또는 학습시킬 수 있다.
다른 예로, 데이터 학습부(1010)는 조건과 관련된 학습 데이터 및 액션과 관련된 학습 데이터를 이용하여 데이터 인식 모델을 생성 및 학습시킬 수 있다.
또 다른 예로, 데이터 학습부(1010)는 이벤트와 관련된 학습 데이터 및 기능과 관련된 학습 데이터를 이용하여 데이터 인식 모델을 생성 및 학습시킬 수 있다.
데이터 인식 부(1020)는 인식 데이터에 기초하여 상황을 판단할 수 있다. 데이터 인식부(1020)는 학습된 데이터 인식 모델을 이용하여, 소정의 인식 데이터로부터 상황을 판단할 수 있다. 데이터 인식부(1020)는 기설정된 기준에 따라 소정의 인식 데이터를 획득하고, 획득된 인식 데이터를 입력 값으로 하여 데이터 인식 모델에 적용함으로써, 소정의 인식 데이터에 기초한 소정의 상황을 판단할 수 있다(또는, 추정(estimate)할 수 있다).
또한, 획득된 인식 데이터를 입력 값을 데이터 인식 모델에 적용하여 출력된 결과 값은, 데이터 인식 모델을 갱신하는데 이용될 수 있다.
특히, 본 개시의 일 실시 예에 따른, 데이터 인식부(1020)는 음성 정보와 관련된 인식 데이터 및 영상 정보와 관련된 인식 데이터를 입력 값으로 데이터 인식 모델에 적용함으로써 전자 장치(100)의 상황을 판단한 판단 결과(예로, 조건 및 조건에 따라 실행을 원하는 액션)를 획득할 수 있다.
또한, 데이터 인식부(1020)는 조건과 관련된 인식 데이터, 액션과 관련된 인식 데이터를 입력 값으로 하여, 데이터 인식 모델에 적용함으로써, 전자 장치(100)의 상황을 판단한 판단 결과(예로, 조건에 따라 검출할 이벤트, 액션에 따라 실행할 기능)를 획득할 수 있다.
또한, 데이터 인식부(1020)는 이벤트와 관련된 인식 데이터, 기능과 관련된 인식 데이터를 입력 값으로 하여, 데이터 인식 모델에 적용함으로써, 전자 장치(100)의 상황을 판단한 판단 결과(예로, 이벤트를 검출할 검출 자원, 기능을 실행할 실행 자원)을 획득할 수 있다.
데이터 학습부(1010)의 적어도 일부 및 데이터 인식부(1020)의 적어도 일부는, 소프트웨어 모듈로 구현되거나 적어도 하나의 하드웨어 칩 형태로 제작되어 전자 장치에 탑재될 수 있다. 예를 들어, 데이터 학습부(1010) 및 데이터 인식부(1020) 중 적어도 하나는 인공지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전술한 각종 전자 장치에 탑재될 수도 있다. 이때, 인공지능을 위한 전용 하드웨어 칩은 확률 연산에 특화된 전용 프로세서로서, 기존의 범용 프로세서보다 병렬처리 성능이 높아 기계 학습과 같은 인공지능 분야의 연산 작업을 빠르게 처리할 수 있다. 데이터 학습부(1010) 및 데이터 인식부(1020)가 소프트웨어 모듈(또는, 인스트럭션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비 일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 이 경우, 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 또는, 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수 있다.
이 경우, 데이터 학습부(1010) 및 데이터 인식부(1020)는 하나의 전자 장치에 탑재될 수도 있으며, 또는 별개의 전자 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 학습부(1010) 및 데이터 인식부(1020) 중 하나는 전자 장치(100)에 포함되고, 나머지 하나는 외부 서버(200)에 포함될 수 있다. 또한, 데이터 학습부(1010) 및 데이터 인식부(1020)는 유선 또는 무선으로 통하여, 데이터 학습부(1010)가 구축한 모델 정보를 데이터 인식부(1020)로 제공할 수도 있고, 데이터 인식부(1020)로 입력된 데이터가 추가 학습 데이터로서 데이터 학습부(1010)로 제공될 수도 있다.
도 11은 본 개시의 실시 예에 따른 데이터 학습부(1010)의 블록도이다.
도 11을 참조하면, 일부 실시 예에 따른 데이터 학습부(1010)는 데이터 획득부(1010-1) 및 모델 학습부(1010-4)를 포함할 수 있다. 또한, 데이터 학습부(1010)는 전처리부(1010-2), 학습 데이터 선택부(1010-3) 및 모델 평가부(1010-5) 중 적어도 하나를 선택적으로 더 포함할 수도 있다.
데이터 획득부(1010-1)는 상황 판단을 위한 학습을 위하여 필요한 학습 데이터를 획득할 수 있다.
학습 데이터는 데이터 학습부(1010) 또는 전자 장치(100)의 제조사에 의하여 수집 또는 테스트한 데이터가 이용될 수도 있다. 또는, 학습 데이터는 본 개시에 따른 마이크를 통해 사용자가 발화한 자연어로부터 생성된 음성 데이터를 포함할 수 있다. 카메라를 통해 사용자가 발화한 자연어와 연관된 사용자의 행위로부터 생성된 음성 데이터를 포함할 수 있다. 이때, 마이크 및 카메라는 전자 장치(100) 내부에 구비될 수 있으나, 이는 일 실시 예에 불과할 뿐, 외부의 마이크 및 카메라를 통해 획득한 자연어에 대한 음성 데이터 및 행위에 대한 영상 데이터가 학습 데이터로써 이용될 수도 있다. 모델 학습부(1010-4)는 학습 데이터를 이용하여, 데이터 인식 모델이 소정의 상황을 어떻게 판단할지에 관한 판단 기준을 갖도록 학습시킬 수 있다. 예로, 모델 학습부(1010-4)는 학습 데이터 중 적어도 일부를 판단 기준으로 이용하는 지도 학습(supervised learning)을 통하여, 데이터 인식 모델을 학습시킬 수 있다. 또는, 모델 학습부(1010-4)는, 예를 들어, 별다른 지도 없이 학습 데이터를 이용하여 스스로 학습함으로써, 상황의 판단을 위한 판단 기준을 발견하는 비지도 학습(unsupervised learning)을 통하여, 데이터 인식 모델을 학습시킬 수 있다.
또한, 모델 학습부(1010-4)는 상황 판단을 위하여 어떤 학습 데이터를 이용해야 하는 지에 대한 선별 기준을 학습할 수도 있다.
특히, 본 개시의 일 실시 예에 따른, 모델 학습부(1010-4)는 음성 정보와 관련된 학습 데이터 및 영상 정보와 관련된 학습 데이터를 이용하여 데이터 인식 모델을 생성 또는 학습시킬 수 있다. 이 경우, 지도 학습 방식을 통하여, 데이터 인식 모델을 학습시키는 경우, 판단 기준으로서, 사용자 의도에 따른 조건 및 조건에 따라 실행할 액션이 학습 데이터로서 추가될 수 있다. 또는, 상기 조건에 따라 검출할 이벤트 및 상기 액션에 실행할 기능이 학습 데이터로서 추가될 수 있다. 또는, 상기 이벤트를 검출할 검출 자원 및 상기 기능을 실행할 실행 자원이 학습 데이터로서 추가될 수 있다.
또는, 모델 학습부(1010-4)는 조건과 관련된 학습 데이터 및 액션과 관련된 학습 데이터를 이용하여 데이터 인식 모델을 생성 및 학습시킬 수 있다.
이 경우, 지도 학습 방식을 통하여, 데이터 인식 모델을 학습시키는 경우, 판단 기준으로서, 조건에 따라 검출할 이벤트 및 상기 액션에 실행할 기능이 학습 데이터로서 추가될 수 있다. 또는, 상기 이벤트를 검출할 검출 자원 및 상기 기능을 실행할 실행 자원이 학습 데이터로서 추가될 수 있다.
또는, 모델 학습부(1010-4)는 이벤트와 관련된 학습 데이터 및 기능과 관련된 학습 데이터를 이용하여 데이터 인식 모델을 생성 및 학습시킬 수 있다.
이 경우, 지도 학습 방식을 통하여, 데이터 인식 모델을 학습시키는 경우, 판단 기준으로서, 이벤트를 검출할 검출 자원 및 상기 기능을 실행할 실행 자원이 학습 데이터로서 추가될 수 있다.
한편, 데이터 인식 모델은 미리 구축되어, 모델 학습부(1010-4)의 학습에 의하여 업데이트되는 모델일 수 있다. 이 경우, 데이터 인식 모델은 기본 학습 데이터(예를 들어, 샘플 이미지 등)을 입력 받아 미리 구축된 상태일 수 있다.
데이터 인식 모델은, 인식 모델의 적용 분야, 학습의 목적 또는 장치의 컴퓨터 성능 등을 고려하여 구축될 수 있다.  데이터 인식 모델은, 예를 들어, 신경망(Neural Network)을 기반으로 하는 모델일 수 있다. 데이터 인식 모델은 인간의 뇌 구조를 컴퓨터상에서 모의하도록 설계될 수 있다. 데이터 인식 모델은 인간의 신경망의 뉴런(neuron)을 모의하는, 가중치를 가지는 복수의 네트워크 노드들을 포함할 수 있다. 복수의 네트워크 노드들은 뉴런이 시냅스(synapse)를 통하여 신호를 주고받는 시냅틱(synaptic) 활동을 모의하도록 각각 연결 관계를 형성할 수 있다. 데이터 인식 모델은, 일 예로, 신경망 모델, 또는 신경망 모델에서 발전한 딥러닝 모델을 포함할 수 있다. 딥러닝 모델에서 복수의 네트워크 노드들은 서로 다른 깊이(또는, 레이어)에 위치하면서 컨볼루션(convolution) 연결 관계에 따라 데이터를 주고 받을 수 있다.
예컨대, DNN(Deep Neural Network), RNN(Recurrent Neural Network), BRDNN(Bidirectional Recurrent Deep Neural Network)과 같은 모델이 데이터 인식 모델로서 사용될 수 있으나, 이에 한정되지 않는다.
다양한 실시 예에 따르면, 모델 학습부(1010-4)는 미리 구축된 데이터 인식 모델이 복수 개가 존재하는 경우, 입력된 학습 데이터와 기본 학습 데이터의 관련성이 큰 데이터 인식 모델을 학습할 데이터 인식 모델로 결정할 수 있다. 이 경우, 기본 학습 데이터는 데이터의 타입별로 기분류되어 있을 수 있으며, 데이터 인식 모델은 데이터의 타입별로 미리 구축되어 있을 수 있다. 예를 들어, 기본 학습 데이터는 학습 데이터가 생성된 지역, 학습 데이터가 생성된 시간, 학습 데이터의 크기, 학습 데이터의 장르, 학습 데이터의 생성자, 학습 데이터 내의 오브젝트의 종류 등과 같은 다양한 기준으로 기 분류되어 있을 수 있다.
또한, 모델 학습부(1010-4)는, 예를 들어, 오류 역 전파법(error back-propagation) 또는 경사 하강법(gradient descent)을 포함하는 학습 알고리즘 등을 이용하여 데이터 인식 모델을 학습시킬 수 있다.
또한, 모델 학습부(1010-4)는, 예를 들어, 판단 기준을 입력 값으로 이용하는 지도 학습을 통하여, 데이터 인식 모델을 학습시킬 수 있다. 또는, 모델 학습부(1010-4)는, 예를 들어, 별다른 지도 없이 필요한 학습 데이터를 이용하여 스스로 학습함으로써, 상황의 판단을 위한 판단 기준을 발견하는 비지도 학습을 통하여, 데이터 인식 모델을 학습시킬 수 있다. 또한, 모델 학습부(1010-4)는, 예를 들어, 학습에 따른 상황 판단의 결과가 올바른 지에 대한 피드백을 이용하는 강화 학습(reinforcement learning)을 통하여, 데이터 인식 모델을 학습시킬 수 있다.
또한, 데이터 인식 모델이 학습 되면, 모델 학습부(1010-4)는 학습된 데이터 인식 모델을 저장할 수 있다. 이 경우, 모델 학습부(1010-4)는 학습된 데이터 인식 모델을 전자 장치(100)의 메모리(110)에 저장할 수 있다. 또는, 모델 학습부(1010-4)는 학습된 데이터 인식 모델을 전자 장치(100)와 유선 또는 무선 네트워크로 연결되는 서버의 메모리에 저장할 수도 있다.
데이터 학습부(1010)는 데이터 인식 모델의 인식 결과를 향상시키거나, 데이터 인식 모델의 생성에 필요한 자원 또는 시간을 절약하기 위하여, 전처리부(1010-2) 및 학습 데이터 선택부(1010-3)를 더 포함할 수도 있다.
전처리부(1010-2)는 상황 판단을 위한 학습에 이용하기 위하여 데이터 획득부(1010-1)에서 획득된 데이터를 전처리할 수 있다.
예로, 전처리부(1010-2)는 모델 학습부(1010-4)가 데이터 인식 모델의 학습을 위한 데이터의 이용이 용이하도록, 획득된 데이터를 기정의된 포맷으로 가공할 수 있다. 예를 들어, 전처리부(1010-2)는 데이터 획득부(1010-1)에 의해 획득된 음성 데이터를 텍스트 데이터로 가공할 수 있으며, 영상 데이터를 기설정된 포맷의 영상 데이터로 가공할 수 있다. 전처리된 데이터는 학습 데이터로서 모델 학습부(1010-4)에게 제공될 수 있다.
또는, 학습 데이터 선택부(1010-3)가 전처리된 데이터 중에서 학습에 필요한 학습 데이터를 선별적으로 선택할 수 있다. 선택된 학습 데이터는 모델 학습부(1010-4)에 제공될 수 있다. 학습 데이터 선택부(1010-3)는 기설정된 선별 기준에 따라, 전처리된 데이터 중에서 학습에 필요한 학습 데이터를 선별할 수 있다. 또한, 학습 데이터 선택부(1010-3)는 모델 학습부(1010-4)에 의한 학습에 의해 기설정된 선별 기준에 따라 학습에 필요한 학습 데이터를 선별할 수도 있다. 본 개시의 일 실시 예로, 학습 데이터 선택부(1010-3)는 입력된 음성 데이터 중 특정 사용자가 발화한 음성 데이터만을 선택할 수 있으며, 영상 데이터 중 배경을 제외한 사람이 포함된 영역만을 선택할 수 있다.
데이터 학습부(1010)는 데이터 인식 모델의 인식 결과를 향상시키기 위하여, 모델 평가부(1010-5)를 더 포함할 수도 있다.
모델 평가부(1010-5)는 데이터 인식 모델에 평가 데이터를 입력하고, 평가 데이터로부터 출력되는 인식 결과가 소정 기준을 만족하지 못하는 경우, 모델 학습부(1010-4)로 하여금 다시 학습하도록 할 수 있다. 이 경우, 평가 데이터는 데이터 인식 모델을 평가하기 위한 기 정의된 데이터일 수 있다.
예를 들어, 모델 평가부(1010-5)는 평가 데이터에 대한 학습된 데이터 인식 모델의 인식 결과 중에서, 인식 결과가 정확하지 않은 평가 데이터의 개수 또는 비율이 미리 설정된 임계치를 초과하는 경우 소정 기준을 만족하지 못한 것으로 평가할 수 있다. 예컨대, 소정 기준이 비율 2%로 정의되는 경우, 학습된 데이터 인식 모델이 총 1000개의 평가 데이터 중의 20개를 초과하는 평가 데이터에 대하여 잘못된 인식 결과를 출력하는 경우, 모델 평가부(1010-5)는 학습된 데이터 인식 모델이 적합하지 않은 것으로 평가할 수 있다.
한편, 학습된 데이터 인식 모델이 복수 개가 존재하는 경우, 모델 평가부(1010-5)는 각각의 학습된 데이터 인식 모델에 대하여 소정 기준을 만족하는지를 평가하고, 소정 기준을 만족하는 모델을 최종 데이터 인식 모델로서 결정할 수 있다. 이 경우, 소정 기준을 만족하는 모델이 복수 개인 경우, 모델 평가부(1010-5)는 평가 점수가 높은 순으로 미리 설정된 어느 하나 또는 소정 개수의 모델을 최종 데이터 인식 모델로서 결정할 수 있다.
전술한, 데이터 획득부(1010-1), 전처리부(1010-2), 학습 데이터 선택부(1010-3), 모델 학습부(1010-4) 및 모델 평가부(1010-5) 중 적어도 하나는, 소프트웨어 모듈로 구현되거나 적어도 하나의 하드웨어 칩 형태로 제작되어 전자 장치에 탑재될 수 있다. 예를 들어, 데이터 획득부(1010-1), 전처리부(1010-2), 학습 데이터 선택부(1010-3), 모델 학습부(1010-4) 및 모델 평가부(1010-5) 중 적어도 하나는 인공지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전술한 각종 전자 장치에 탑재될 수도 있다.
또한, 데이터 획득부(1010-1), 전처리부(1010-2), 학습 데이터 선택부(1010-3), 모델 학습부(1010-4) 및 모델 평가부(1010-5)는 하나의 전자 장치에 탑재될 수도 있으며, 또는 별개의 전자 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 획득부(1010-1), 전처리부(1010-2), 학습 데이터 선택부(1010-3), 모델 학습부(1010-4) 및 모델 평가부(1010-5) 중 일부는 전자 장치에 포함되고, 나머지 일부는 서버에 포함될 수 있다.
또한, 데이터 획득부(1010-1), 전처리부(1010-2), 학습 데이터 선택부(1010-3), 모델 학습부(1010-4) 및 모델 평가부(1010-5) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 획득부(1010-1), 전처리부(1010-2), 학습 데이터 선택부(1010-3), 모델 학습부(1010-4) 및 모델 평가부(1010-5) 중 적어도 하나가 소프트웨어 모듈(또는, 인스터력션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비 일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 또는, 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수 있다.
도 12는 일부 실시 예에 따른 데이터 인식부(1020)의 블록도이다.
도 12를 참조하면, 일부 실시 예에 따른 데이터 인식부(1020)는 데이터 획득부(1020-1) 및 인식 결과 제공부(1020-4)를 포함할 수 있다. 또한, 데이터 인식부(1020)는 전처리부(1020-2), 인식 데이터 선택부(1020-3) 및 모델 갱신부(1020-5) 중 적어도 하나를 선택적으로 더 포함할 수 있다.
데이터 획득부(1020-1)는 상황 판단에 필요한 인식 데이터를 획득할 수 있다.
인식 결과 제공부(1020-4)는 데이터 획득부(1020-1)에서 획득된 데이터를 입력 값으로 학습된 데이터 인식 모델에 적용하여 상황을 판단할 수 있다. 인식 결과 제공부(1020-4)는 데이터의 인식 목적에 따른 인식 결과를 제공할 수 있다. 또는, 인식 결과 제공부(1020-4)는 후술할 전처리부(1020-2)에서 전처리된 데이터를 입력 값으로 학습된 데이터 인식 모델에 적용하여 획득된 인식 결과를 제공할 수 있다. 또는, 인식 결과 제공부(1020-4)는 후술할 인식 데이터 선택부(1020-3)에 의해 선택된 데이터를 입력 값으로 데이터 인식 모델에 적용하여 인식 결과를 제공할 수 있다.
데이터 인식부(1210)는 데이터 인식 모델의 인식 결과를 향상시키거나, 인식 결과의 제공을 위한 자원 또는 시간을 절약하기 위하여, 전처리부(1020-2) 및 인식 데이터 선택부(1020-3)를 더 포함할 수도 있다.
전처리부(1020-2)는 상황 판단을 위한 인식에 이용하기 위하여 데이터 획득부(1020-1)에서 획득된 데이터를 전처리할 수 있다.
전처리부(1020-2)는 인식 결과 제공부(1020-4)가 상황 판단을 위한 데이터의 이용이 용이하도록, 획득된 데이터를 기정의된 포맷으로 가공할 수 있다. 특히, 본 개시의 일 실시 예에 따르면, 데이터 획득부(1020-1)는 상황 판단(조건 및 액션, 조건에 따른 이벤트, 액션에 따른 기능, 이벤트 검출을 위한 검출 자원 등에 대한 판단)을 위해 음성 데이터 및 영상 데이터를 획득하고, 전처리부(1020-2)는 전술한 바와 같이, 기 정의된 포맷으로 전처리할 수 있다.
인식 데이터 선택부(1020-3)는 전처리된 데이터 중에서 상황 판단에 필요한 인식 데이터를 선택할 수 있다. 선택된 인식 데이터는 인식 결과 제공부(1020-4)에게 제공될 수 있다. 인식 데이터 선택부(1020-3)는 기설정된 선별 기준에 따라, 전처리된 데이터 중에서 상황 판단에 필요한 인식 데이터를 선별할 수 있다. 또한, 인식 데이터 선택부(1020-3)는 전술한 모델 학습부(1010-4)에 의한 학습에 의해 기설정된 선별 기준에 따라 데이터를 선택할 수도 있다.
모델 갱신부(1020-5)는 인식 결과 제공부(1020-4)에 의해 제공되는 인식 결과에 대한 평가에 기초하여, 데이터 인식 모델이 갱신되도록 제어할 수 있다. 예를 들어, 모델 갱신부(1020-5)는 인식 결과 제공부(1020-4)에 의해 제공되는 인식 결과를 모델 학습부(1010-4)에게 제공함으로써, 모델 학습부(1010-4)가 데이터 인식 모델을 갱신하도록 제어할 수 있다.
전술한, 데이터 인식부(1020) 내의 데이터 획득부(1020-1), 전처리부(1020-2), 인식 데이터 선택부(1020-3), 인식 결과 제공부(1020-4) 및 모델 갱신부(1020-5) 중 적어도 하나는, 소프트웨어 모듈로 구현되거나 적어도 하나의 하드웨어 칩 형태로 제작되어 전자 장치에 탑재될 수 있다. 예를 들어, 데이터 획득부(1020-1), 전처리부(1020-2), 인식 데이터 선택부(1020-3), 인식 결과 제공부(1020-4) 및 모델 갱신부(1020-5) 중 적어도 하나는 인공지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전술한 각종 전자 장치에 탑재될 수도 있다.
또한, 데이터 획득부(1020-1), 전처리부(1020-2), 인식 데이터 선택부(1020-3), 인식 결과 제공부(1020-4) 및 모델 갱신부(1020-5)는 하나의 전자 장치에 탑재될 수도 있으며, 또는 별개의 전자 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 획득부(1020-1), 전처리부(1020-2), 인식 데이터 선택부(1020-3), 인식 결과 제공부(1020-4) 및 모델 갱신부(1020-5) 중 일부는 전자 장치에 포함되고, 나머지 일부는 서버에 포함될 수 있다.
또한, 데이터 획득부(1020-1), 전처리부(1020-2), 인식 데이터 선택부(1020-3), 인식 결과 제공부(1020-4) 및 모델 갱신부(1020-5) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 획득부(1020-1), 전처리부(1020-2), 인식 데이터 선택부(1020-3), 인식 결과 제공부(1020-4) 및 모델 갱신부(1020-5) 중 적어도 하나가 소프트웨어 모듈(또는, 인스터력션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비 일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 또는, 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수 있다.
도 13은 일부 실시 예에 따른 전자 장치(100) 및 외부 서버(200)가 서로 연동함으로써 데이터를 학습하고 인식하는 예시를 나타내는 도면이다.
도 13을 참조하면, 외부 서버(200)는 상황 판단을 위한 기준을 학습할 수 있으며, 전자 장치(100)는 외부 서버(200)에 의한 학습 결과에 기초하여 상황을 판단할 수 있다.
이 경우, 외부 서버(200)의 모델 학습부(1010-4)는 소정의 상황을 판단하기 위하여 어떤 데이터를 이용할지, 데이터를 이용하여 상황을 어떻게 판단할지에 관한 기준을 학습할 수 있다. 모델 학습부(1010-4)는 학습에 이용될 데이터를 획득하고, 획득된 데이터를 후술할 데이터 인식 모델에 적용함으로써, 상황 판단을 위한 기준을 학습할 수 있다.
또한, 전자 장치(100)의 인식 결과 제공부(1020-4)는 인식 데이터 선택부(1020-3)에 의해 선택된 데이터를 외부 서버(200)에 의해 생성된 데이터 인식 모델에 적용하여 상황을 판단할 수 있다. 구체적으로, 인식 결과 제공부(1020-4)는 인식 데이터 선택부(1020-3)에 의해 선택된 데이터를 외부 서버(200)에게 전송하고, 외부 서버(200)가 인식 데이터 선택부(1020-3)에 의해 선택된 데이터를 인식 모델에 적용하여 상황을 판단할 것을 요청할 수 있다. 또한, 인식 결과 제공부(1020-4)는 외부 서버(200)에 의해 판단된 상황에 관한 정보를 외부 서버(200)로부터 수신할 수 있다. 예를 들어, 인식 데이터 선택부(1020-3)에 의해 음성 데이터 및 영상 데이터가 외부 서버(200)에게 전송된 경우, 외부 서버(200)는 기저장된 데이터 인식 모델에 음성 데이터 및 영상 데이터를 적용하여 상황에 대한 정보(예를 들어, 조건 및 액션, 조건에 따른 이벤트, 액션에 따른 기능 등)을 전자 장치(100)로 전송할 수 있다.
또는, 전자 장치(100)의 인식 결과 제공부(1020-4)는 외부 서버(200)에 의해 생성된 인식 모델을 외부 서버(200)로부터 수신하고, 수신된 인식 모델을 이용하여 상황을 판단할 수 있다. 이 경우, 전자 장치(100)의 인식 결과 제공부(1020-4)는 인식 데이터 선택부(1020-3)에 의해 선택된 데이터를 외부 서버(200)로부터 수신된 데이터 인식 모델에 적용하여 상황을 판단할 수 있다. 예를 들어, 전자 장치(100)는 외부 서버(200)로부터 데이터 인식 모델을 수신하여 저장하고, 인식 데이터 선택부(1020-3)에 의해 선택된 음성 데이터 및 영상 데이터를 외부 서버(200)로부터 수신된 데이터 인식 모델에 적용하여 상황에 대한 정보(예를 들어, 조건 및 액션, 조건에 따른 이벤트, 액션에 따른 기능 등)을 판단할 수 있다.
도 14a 및 도 14b는 본 개시의 실시 예에 따른 데이터 인식 모델을 이용하는 전자 장치(100)의 흐름도들이다.
먼저, 도 14a의 동작 1401에서, 전자 장치(100)는 조건에 따라 실행할 액션을 설정하는 사용자의 자연어 및 행위로부터 생성된 음성 정보 및 영상 정보를 획득할 수 있다.
동작 1403에서, 전자 장치(100)는 획득한 음성 정보 및 영상 정보를 학습된 데이터 인식 모델에 적용하여, 조건에 따라 검출할 이벤트 및 액션에 따라 실행할 기능을 획득할 수 있다.
다음으로, 동작 1405에서, 전자 장치(100)는 결정된 이벤트 및 기능에 기초하여, 이벤트를 검출할 검출 자원 및 기능을 실행할 실행 자원을 결정할 수 있다.
검출 자원 및 실행 자원이 결정된 상태에서, 동작 1407에서, 전자 장치(100)는 결정된 검출 자원을 이용하여 조건을 만족하는 적어도 하나의 이벤트가 검출되는지를 판단할 수 있다.
적어도 하나의 이벤트가 검출되는 경우(1407-Y), 동작 1409에서, 전자 장치(100)는 액션에 따른 기능이 실행되도록 제어할 수 있다.
다른 실시 예로, 도 14b의 동작 1411에서, 전자 장치(100)는 조건에 따라 실행할 액션을 설정하는 사용자의 자연어 및 행위로부터 생성된 음성 정보 및 영상 정보를 획득할 수 있다.
동작 1413에서, 전자 장치(100)는 획득된 음성 정보 및 영상 정보에 기초하여, 조건에 따라 검출할 이벤트 및 액션에 따라 실행할 기능을 결정할 수 있다.
다음으로, 동작 1415에서, 전자 장치(100)는 결정된 이벤트 및 기능을 데이터 인식 모델에 적용하여, 이벤트를 검출할 검출 자원 및 기능을 실행할 실행 자원을 획득할 수 있다.
이하, 동작 1417 내지 동작 1419에서, 전자 장치(100)는 조건을 만족하는 적어도 하나의 이벤트가 검출되는 경우, 액션에 따른 기능이 실행되도록 제어할 수 있다.
도 15a 및 도 15b는, 본 개시의 실시 예에 따른 데이터 인식 모델을 이용하는 네트워크 시스템의 흐름도들이다.
도 15a 내지 도 15b에서, 데이터 인식 모델을 이용하는 네트워크 시스템은 제1 구성 요소(1501) 및 제2 구성 요소(1502)를 포함할 수 있다.
일 예로, 제1 구성 요소(1501)는 전자 장치(100)이고, 제2 구성 요소(1502)는 데이터 인식 모델이 저장된 외부 서버(200)가 될 수 있다. 또는, 제1 구성 요소(1501)는 범용 프로세서이고, 제2 구성 요소(1502)는 인공지능 전용 프로세서가 될 수 있다. 또는, 제1 구성 요소(1501)는 적어도 하나의 어플리케이션이 될 수 있고, 제2 구성 요소(1502)는 운영 체제(operating system, OS)가 될 수 있다. 즉, 제2 구성 요소(1502)는 제1 구성 요소(1501)보다 더 집적화되거나, 전용화되거나, 딜레이(delay)가 작거나, 성능이 우세하거나 또는 많은 리소스를 가진 구성 요소로서 데이터 인식 모델의 생성, 갱신 또는 적용 시에 요구되는 많은 연산을 제1 구성 요소(1501)보다 신속하고 효과적으로 처리 가능한 구성 요소가 될 수 있다.
이 경우, 제1 구성 요소(1501) 및 제2 구성 요소(1502) 간에 데이터를 송/수신하기 위한 인터페이스가 정의될 수 있다.
예로, 데이터 인식 모델에 적용할 학습 데이터를 인자 값(또는, 매개 값 또는 전달 값)으로 갖는 API(application program interface)가 정의될 수 있다. API는 어느 하나의 프로토콜(예로, 전자 장치(100)에서 정의된 프로토콜)에서 다른 프로토콜(예로, 외부 서버(200)에서 정의된 프로토콜)의 어떤 처리를 위해 호출할 수 있는 서브 루틴 또는 함수의 집합으로 정의될 수 있다. 즉, API를 통하여 어느 하나의 프로토콜에서 다른 프로토콜의 동작이 수행될 수 있는 환경을 제공될 수 있다.
일 실시 예로, 도 15a의 동작 1511에서, 제1 구성 요소(1501)는 조건에 따라 실행할 액션을 설정하는 사용자의 자연어 및 행위로부터 생성된 음성 정보 및 영상 정보를 획득할 수 있다.
동작 1513에서, 제1 구성 요소(1501)는 획득한 음성 정보 및 영상 정보에 관한 데이터(또는, 메시지)를 제2 구성 요소(1502)로 전송할 수 있다. 예로, 제1 구성 요소(1501)가 API 함수를 호출하여 데이터 인자 값으로 음성 정보 및 영상 정보를 입력하면, API 함수는 음성 정보 및 영상 정보를 데이터 인식 모델에 적용할 인식 데이터로서 제2 구성 요소(1502)로 전달할 수 있다.
동작 1515에서, 제2 구성 요소(1502)는 수신한 음성 정보 및 영상 정보를 데이터 인식 모델에 적용하여 조건에 따라 검출할 이벤트 및 액션에 따라 실행할 기능을 획득할 수 있다.
동작 1517에서, 제2 구성 요소(1502)는 획득한 이벤트 및 기능에 관한 데이터(또는, 메시지)를 제1 구성 요소(1501)로 전송할 수 있다.
동작 1519에서, 제1 구성 요소(1501)는 수신한 이벤트 및 기능에 기초하여, 이벤트를 검출할 검출 자원 및 기능을 실행할 실행 자원을 결정할 수 있다.
동작 1521에서, 제1 구성 요소(1501)는 결정된 검출 자원을 이용하여 조건을 만족하는 적어도 하나의 이벤트가 검출되면, 결정된 실행 자원을 이용하여 액션에 따른 기능을 실행할 수 있다.
다른 실시 예로, 도 15b의 동작 1531에서, 제1 구성 요소(1501)는 조건에 따라 실행할 액션을 설정하는 사용자의 자연어 및 행위로부터 생성된 음성 정보 및 영상 정보를 획득할 수 있다.
동작 1533에서, 제1 구성 요소(1501)는 획득된 음성 정보 및 영상 정보에 기초하여, 조건에 따라 검출할 이벤트 및 액션에 따라 실행할 기능을 결정할 수 있다.
동작 1535에서, 제1 구성 요소(1501)는 결정된 이벤트 및 기능에 관한 데이터(또는, 메시지)를 제2 구성 요소(1502)로 전송할 수 있다. 예로, 제1 구성 요소(1501)가 API 함수를 호출하여 데이터 인자 값으로 이벤트 및 기능을 입력하면, API 함수는 이벤트 및 기능을 데이터 인식 모델에 적용할 인식 데이터로서 제2 구성 요소(1502)로 전달할 수 있다.
동작 1537에서, 제2 구성 요소(1502)는 수신한 이벤트 및 기능을 데이터 인식 모델에 적용하여, 이벤트를 검출할 검출 자원 및 기능을 실행할 실행 자원을 획득할 수 있다.
동작 1539에서, 제2 구성 요소(1502)는 획득한 검출 자원 및 실행 자원에 관한 데이터(또는, 메시지)를 제1 구성 요소(1501)로 전송할 수 있다.
동작 1541에서, 제1 구성 요소(1501)는 수신한 검출 자원을 이용하여 조건을 만족하는 적어도 하나의 이벤트가 검출되면, 수신한 실행 자원을 이용하여 액션에 따른 기능을 실행할 수 있다.
한편, 본 개시의 실시 예를 구성하는 모든 구성 요소들이 하나로 결합하거나 결합하여 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시 예에 한정되는 것은 아니다. 즉, 본 개시의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다.
다양한 실시 예에 따른 장치(예: 모듈들 또는 그 기능들) 또는 방법(예: 동작들)의 적어도 일부는 프로그램 모듈의 형태로 컴퓨터로 판독 가능한 비 일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장된 명령어로 구현될 수 있다. 명령어가 프로세서(예: 프로세서(120))에 의해 실행될 경우, 프로세서가 상기 명령어에 해당하는 기능을 수행할 수 있다.
여기서, 프로그램은 컴퓨터가 읽을 수 있는 비 일시적 기록매체에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 개시의 실시 예를 구현할 수 있다.
여기서 비 일시적 판독 가능 기록매체란, 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미할 뿐만 아니라 레지스터, 캐시, 버퍼 등을 포함하며, 신호(signal), 전류(current) 등과 같은 전송 매개체는 포함하지 않는다.
구체적으로, 상술한 프로그램들은 CD, DVD, 하드 디스크, 블루레이 디스크, USB, 내장 메모리(예: 메모리(110)), 메모리 카드, ROM 또는 RAM 등과 같은 비 일시적 판독가능 기록매체에 저장되어 제공될 수 있다.
또한, 개시된 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)으로 제공될 수 있다.
컴퓨터 프로그램 제품은 S/W 프로그램, S/W 프로그램이 저장된 컴퓨터로 읽을 수 있는 저장 매체 또는 판매자 및 구매자 간에 거래되는 상품을 포함할 수 있다.
예를 들어, 컴퓨터 프로그램 제품은 전자 장치 또는 전자 장치의 제조사 또는 전자 마켓(예, 구글 플레이 스토어, 앱 스토어)을 통해 전자적으로 배포되는 S/W 프로그램 형태의 상품(예, 다운로더블 앱)을 포함할 수 있다. 전자적 배포를 위하여, S/W 프로그램의 적어도 일부는 저장 매체에 저장되거나, 임시적으로 생성될 수 있다. 이 경우, 저장 매체는 제조사 또는 전자 마켓의 서버, 또는 중계 서버의 저장매체가 될 수 있다.
이상에서는 본 개시의 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안 될 것이다.
100: 전자 장치 110: 메모리
120: 음성 수신부 130: 음성주요부 획득부
131: 음성 텍스트 변환부 132: 음성특징 획득부
140: 통신부 150: 프로세서
160: 디스플레이 170: 카메라
180: 오디오 출력부 190: 사용자 입력부
200: 외부 서버

Claims (18)

  1. 인공지능 학습 모델을 이용하여 음성을 분석하기 위한 전자 장치의 제어 방법에 있어서,
    음성을 입력받고, 상기 음성에 대한 정보를 획득하는 단계;
    상기 음성에 대한 정보를 바탕으로 상기 음성의 카테고리 정보를 획득하여 상기 카테고리 정보에 대응되는 적어도 하나의 동작 모드를 결정하는 단계;
    상기 결정된 동작 모드에 대응되는 인공지능 모델을 이용하여 상기 동작 모드와 관련된 동작을 수행하는 단계;를 포함하는 전자 장치 제어 방법.
  2. 제1항에 있어서,
    상기 카테고리는,
    보이스피싱 카테고리, 광고 카테고리, 가족 카테고리, 지인 카테고리를 포함하고,
    상기 동작 모드는,
    보이스피싱 방지 모드, 광고 필터 모드, 대화분석 모드, 스피치 연습 모드, 전화영어 모드, 자동 모드를 포함하는 전자 장치 제어방법.
  3. 제1항에 있어서,
    상기 결정된 모드가 대화 분석 모드인 경우
    상기 결정된 동작 모드에 대응되는 인공지능 모델에 상기 음성을 입력하여 상기 음성에 대한 키워드 정보, 감정 정보 중 적어도 하나의 정보를 획득하는 단계; 및
    기설정된 이벤트가 발생하면 상기 획득된 정보를 상기 대화분석 모드의 기능을 통해 출력하는 단계;를 더 포함하고,
    상기 대화분석 모드의 기능은 기설정된 기간 내 포함된 관심 키워드 빈도 표시, 키워드 관련 정보 링크 제공, 기설정된 기간 내 부정적 대화 빈도 표시를 포함하는 전자 장치 제어 방법.
  4. 제1항에 있어서,
    상기 결정된 모드가 보이스피싱 방지 모드인 경우,
    상기 결정된 보이스피싱 방지 모드에 대응되는 인공지능 모델에 상기 음성을 입력하여 제어 명령을 획득하는 단계; 및
    상기 제어 명령을 바탕으로 상기 보이스피싱 방지 모드의 적어도 하나의 기능을 수행하는 단계;를 더 포함하고,
    상기 보이스피싱 방지 모드의 기능은 신고 버튼 표시, 금융 어플리케이션 제한, 보이스피싱 알람을 포함하는 전자 장치 제어 방법.
  5. 제4항에 있어서,
    상기 제어명령을 획득하는 단계는,
    상기 음성을 텍스트화한 컨텐츠를 획득하는 단계; 및
    상기 음성에서 음성 특징 정보를 획득하는 단계;를 더 포함하고
    상기 컨텐츠 및 상기 특징 정보를 상기 결정된 동작 모드에 대응되는 인공지능 모델에 입력하여 제어명령을 획득하는 것을 특징으로 하고,
    상기 특징 정보는 상기 음성의 떨림, 어조, 단위 시간당 음소 개수를 포함하는 전자 장치 제어 방법.
  6. 제1항에 있어서,
    상기 결정된 모드가 스피치 연습 모드인 경우
    상기 결정된 동작 모드에 대응되는 인공지능 모델에 상기 음성을 입력하여 상기 음성에 대한 문법 정보, 발음 정보, 성조 정보 중 적어도 하나의 정보를 획득하는 단계; 및
    기설정된 이벤트가 발생하면 상기 획득된 정보를 상기 스피치 연습 모드의 기능을 통해 출력하는 단계;를 더 포함하고,
    상기 스피치 연습 모드의 기능은 기설정된 기간 내 발음 오류 빈도 표시, 기설정된 기간 내 문법 오류 표시를 포함하는 전자 장치 제어 방법.
  7. 제1항에 있어서,
    상기 카테고리 정보는,
    복수의 카테고리에 대응하는 복수의 음성 모델 데이터 패턴을 포함하는 데이터 베이스에서 상기 음성에 대한 정보에 매칭되는 음성 모델 데이터 패턴을 결정하여, 상기 음성 모델 데이터 패턴에 대응하는 카테고리의 정보를 획득하는 것이고,
    상기 음성 모델 데이터 패턴은, 기계음 판별 모델, 성별 분류 모델, 연령 분류 모델, 언어 분류 모델을 포함하는 전자 장치 제어 방법.
  8. 제7항에 있어서,
    상기 데이터 베이스에 상기 음성에 대한 정보와 매칭되는 음성 모델 데이터 패턴이 존재하지 않는 경우,
    상기 카테고리를 분류 없음 카테고리로 결정하고,
    상기 동작 모드를 기설정된 기본 모드로 결정하는 전자 장치 제어 방법.
  9. 제8항에 있어서,
    상기 기본 모드가 자동 모드인 경우,
    상기 음성을 복수의 동작 모드에 대응하는 복수의 인공지능 모델에 입력하여 획득한 출력 정보를 바탕으로 상기 출력 정보에 대응되는 동작 모드를 결정하는 단계; 및
    상기 동작 모드에 대응하는 카테고리 정보를 결정하고, 상기 음성에 대한 정보를 바탕으로 상기 카테고리 정보에 대응되는 음성 모델 데이터 패턴을 업데이트하는 단계;를 더 포함하는 전자 장치 제어 방법.
  10. 인공지능 학습 모델을 이용하여 음성을 분석하기 위한 전자 장치에 있어서,
    음성 수신부;
    음성 주요부 획득부;
    프로세서;를 포함하고,
    상기 프로세서는,
    음성을 입력받도록 상기 음성 수신부를 제어하고,
    상기 입력받은 음성에 대한 정보를 획득하도록 상기 음성 주요부 획득부를 제어하고,
    상기 음성에 대한 정보를 바탕으로 상기 음성의 카테고리 정보를 획득하여 상기 카테고리 정보에 대응되는 적어도 하나의 동작 모드를 결정하고,
    상기 결정된 동작 모드에 대응되는 인공지능 모델을 이용하여 상기 동작 모드와 관련된 동작을 수행하는 전자 장치.
  11. 제10항에 있어서,
    상기 카테고리는,
    보이스피싱 카테고리, 광고 카테고리, 가족 카테고리, 지인 카테고리를 포함하고,
    상기 동작 모드는,
    보이스피싱 방지 모드, 광고 필터 모드, 대화분석 모드, 스피치 연습 모드, 전화영어 모드, 자동 모드를 포함하는 전자 장치.
  12. 제10항에 있어서,
    통신부;를 더 포함하고,
    상기 프로세서는,
    상기 결정된 동작 모드에 대응되는 인공지능 모델에서 출력된 상기 음성에 대한 키워드 정보, 감정 정보 중 적어도 하나의 정보를 수신하도록 상기 통신부를 제어하고, 기설정된 이벤트가 발생하면 상기 수신한 정보를 상기 대화분석 모드의 기능을 통해 출력하고,
    상기 대화분석 모드의 기능은 기설정된 기간 내 포함된 관심 키워드 빈도 표시, 키워드 관련 정보 링크 제공, 기설정된 기간 내 부정적 대화 빈도 표시를 포함하는 전자 장치.
  13. 제10항에 있어서,
    통신부;를 더 포함하고,
    상기 결정된 모드가 보이스피싱 방지 모드인 경우,
    상기 프로세서는,
    상기 결정된 보이스피싱 방지 모드에 대응되는 인공지능 모델에 상기 음성을 입력하여 출력된 제어 명령을 외부 서버로부터 수신하도록 통신부를 제어하고, 상기 제어 명령을 바탕으로 상기 보이스피싱 방지 모드의 적어도 하나의 기능을 수행하고,
    상기 보이스피싱 방지 모드의 기능은 신고 버튼 표시, 금융 어플리케이션 제한, 보이스피싱 알람을 포함하는 전자 장치.
  14. 제10항에 있어서,
    음성 텍스트 변환부;
    음성 특징 획득부; 및
    통신부;를 더 포함하고,
    상기 프로세서는,
    상기 음성을 텍스트화하여 컨텐츠를 획득하도록 상기 음성 텍스트 변환부를 제어하고, 상기 음성에서 음성 특징 정보를 획득하도록 상기 음성 특징 획득부를 제어하고, 상기 컨텐츠 및 상기 특징 정보를 상기 결정된 동작 모드에 대응되는 인공지능 모델에 입력하여 출력된 제어명령을 외부 서버로부터 수신하도록 통신부를 제어하고,
    상기 특징 정보는 상기 음성의 떨림, 어조, 단위 시간당 음소 개수를 포함하는 전자 장치.
  15. 제10항에 있어서,
    통신부;를 더 포함하고,
    상기 결정된 모드가 스피치 연습 모드인 경우,
    상기 결정된 동작 모드에 대응되는 인공지능 모델에 상기 음성을 입력하여 출력된 상기 음성에 대한 문법 정보, 발음 정보, 성조 정보 중 적어도 하나의 정보를 외부 서버로부터 수신하도록 상기 통신부를 제어하고, 기설정된 이벤트가 발생하면 상기 수신된 정보를 상기 스피치 연습 모드의 기능을 통해 출력하고,
    상기 스피치 연습 모드의 기능은 기설정된 기간 내 발음 오류 빈도 표시, 기설정된 기간 내 문법 오류 표시를 포함하는 전자 장치.
  16. 제10항에 있어서,
    상기 프로세서는,
    복수의 카테고리에 대응하는 복수의 음성 모델 데이터 패턴을 포함하는 데이터 베이스에서 상기 음성에 대한 정보에 매칭되는 음성 모델 데이터 패턴을 결정하여, 상기 음성 모델 데이터 패턴에 대응하는 카테고리의 정보를 획득하고,
    상기 음성 모델 데이터 패턴은, 기계음 판별 모델, 성별 분류 모델, 연령 분류 모델, 언어 분류 모델을 포함하는 전자 장치.
  17. 제16항에 있어서,
    상기 데이터 베이스에 상기 음성에 대한 정보와 매칭되는 음성 모델 데이터 패턴이 존재하지 않는 경우,
    상기 프로세서는,
    상기 카테고리를 분류 없음 카테고리로 결정하고, 상기 동작 모드를 기설정된 기본 모드로 결정하는 전자 장치.
  18. 제17항에 있어서,
    통신부;를 더 포함하고,
    상기 기본 모드가 자동 모드인 경우,
    상기 프로세서는,
    상기 음성을 복수의 동작 모드에 대응하는 복수의 인공지능 모델에 입력하여 출력된 정보를 수신하도록 상기 통신부를 제어하고, 상기 출력 정보를 바탕으로 상기 출력 정보에 대응되는 동작 모드를 결정하고,
    상기 동작 모드에 대응하는 카테고리 정보를 결정하고, 상기 음성에 대한 정보를 바탕으로 상기 카테고리 정보에 대응되는 음성 모델 데이터 패턴을 업데이트하는 전자 장치.
KR1020180040374A 2018-04-06 2018-04-06 인공지능을 이용한 음성 대화 분석 방법 및 장치 KR20190123362A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020180040374A KR20190123362A (ko) 2018-04-06 2018-04-06 인공지능을 이용한 음성 대화 분석 방법 및 장치
US17/040,746 US11769492B2 (en) 2018-04-06 2019-03-26 Voice conversation analysis method and apparatus using artificial intelligence
PCT/KR2019/003508 WO2019194451A1 (ko) 2018-04-06 2019-03-26 인공지능을 이용한 음성 대화 분석 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180040374A KR20190123362A (ko) 2018-04-06 2018-04-06 인공지능을 이용한 음성 대화 분석 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20190123362A true KR20190123362A (ko) 2019-11-01

Family

ID=68100981

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180040374A KR20190123362A (ko) 2018-04-06 2018-04-06 인공지능을 이용한 음성 대화 분석 방법 및 장치

Country Status (3)

Country Link
US (1) US11769492B2 (ko)
KR (1) KR20190123362A (ko)
WO (1) WO2019194451A1 (ko)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210069899A (ko) * 2019-12-04 2021-06-14 주식회사 핑거 보이스피싱 탐지 시스템
KR20210117827A (ko) 2020-03-20 2021-09-29 챌린고 주식회사 인공지능을 활용한 음성 서비스 제공 시스템 및 제공 방법
KR20220019551A (ko) 2020-08-10 2022-02-17 (주)씨아이그룹 Ai 학습을 통한 음성 서비스 방법
KR20220033304A (ko) * 2020-09-09 2022-03-16 주식회사 엘지유플러스 사용자의 행동 추천 방법 및 장치
KR20220033194A (ko) 2020-09-09 2022-03-16 주식회사 코탁스 가상 공간 기반의 보이스 데이터의 선택적 추출과 매칭 통한 커뮤니케이팅 시스템
KR102390412B1 (ko) * 2021-12-10 2022-04-26 (주)라바웨이브 인공지능 기반의 피싱 대응 챗봇 시스템
KR20220060963A (ko) * 2020-11-05 2022-05-12 한국과학기술원 대화 상대와 사용자의 성격 정보를 고려한 대화 상대에 대한 신뢰 정도 예측 시스템 및 그 방법
KR102418558B1 (ko) * 2021-11-22 2022-07-07 주식회사 유나이티드어소시에이츠 대화형 인공지능 아바타를 이용한 영어 말하기 교육 방법, 장치 및 이에 대한 시스템
WO2023128120A1 (ko) * 2021-12-30 2023-07-06 서울대학교산학협력단 음성전화 및 문자 트랩 서버를 이용한 피싱 감지시스템
KR102558383B1 (ko) * 2022-02-24 2023-07-24 (주)메티스 보이스 피싱 방지용 어플리케이션 및 이를 이용한 보이스 피싱 방지시스템
KR20240074680A (ko) 2022-11-21 2024-05-28 고려대학교 산학협력단 음성 코덱 분석을 통한 보이스 피싱 방지 장치 및 방법

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021126492A1 (en) * 2019-12-17 2021-06-24 Google Llc Machine learning for interpretation of subvocalizations
CN111863036B (zh) * 2020-07-20 2022-03-01 北京百度网讯科技有限公司 语音检测的方法和装置
CN111951804A (zh) * 2020-08-21 2020-11-17 韩山师范学院 一种基于深度学习的语音互动设备
US11756555B2 (en) * 2021-05-06 2023-09-12 Nice Ltd. Biometric authentication through voice print categorization using artificial intelligence
US11842733B2 (en) * 2021-06-02 2023-12-12 Kyndryl, Inc. Artificial intelligence system for tasks

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59192A (ja) * 1982-06-25 1984-01-05 株式会社東芝 個人照合装置
US6510417B1 (en) * 2000-03-21 2003-01-21 America Online, Inc. System and method for voice access to internet-based information
US7881930B2 (en) * 2007-06-25 2011-02-01 Nuance Communications, Inc. ASR-aided transcription with segmented feedback training
WO2011005973A2 (en) * 2009-07-08 2011-01-13 The University Of Memphis Research Foundation Methods and computer-program products for teaching a topic to a user
JP5644137B2 (ja) 2010-03-02 2014-12-24 日本電気株式会社 振込防止装置及び振込防止システム及び振込防止方法
JP5685488B2 (ja) 2011-05-19 2015-03-18 佐藤 英典 電話装置及びその制御方法
KR101328389B1 (ko) 2011-09-30 2013-11-13 고려대학교 산학협력단 메신저 피싱을 탐지하는 장치 및 방법
KR101920019B1 (ko) 2012-01-18 2018-11-19 삼성전자 주식회사 휴대단말기의 통화 서비스 장치 및 방법
US10346542B2 (en) 2012-08-31 2019-07-09 Verint Americas Inc. Human-to-human conversation analysis
JP6268717B2 (ja) 2013-03-04 2018-01-31 富士通株式会社 状態推定装置、状態推定方法及び状態推定用コンピュータプログラム
US8910305B1 (en) * 2013-03-14 2014-12-09 Ca, Inc. Method and apparatus for analyzing mouse cursor path
US9118751B2 (en) * 2013-03-15 2015-08-25 Marchex, Inc. System and method for analyzing and classifying calls without transcription
CN110096712B (zh) * 2013-03-15 2023-06-20 苹果公司 通过智能数字助理的用户培训
JP6098654B2 (ja) * 2014-03-10 2017-03-22 ヤマハ株式会社 マスキング音データ生成装置およびプログラム
KR102342571B1 (ko) * 2014-11-19 2021-12-22 에스케이텔레콤 주식회사 다중 음성인식모듈을 적용한 음성 인식 방법 및 이를 위한 음성인식장치
KR20160149488A (ko) * 2015-06-18 2016-12-28 한국전자통신연구원 대화 상황 및 주제에 따른 대화 순서 관리 장치 및 방법
KR102495523B1 (ko) * 2016-02-04 2023-02-03 삼성전자 주식회사 음성 명령을 처리하는 방법 및 이를 제공하는 전자 장치
KR101779696B1 (ko) 2016-02-12 2017-09-19 홍동철 보이스 피싱 탐지 방법 및 시스템
CN105957516B (zh) * 2016-06-16 2019-03-08 百度在线网络技术(北京)有限公司 多语音识别模型切换方法及装置
US10244109B2 (en) * 2016-07-13 2019-03-26 International Business Machines Corporation Detection of a spear-phishing phone call
US9942752B1 (en) * 2016-12-30 2018-04-10 Symantec Corporation Method and system for detecting phishing calls using one-time password

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210069899A (ko) * 2019-12-04 2021-06-14 주식회사 핑거 보이스피싱 탐지 시스템
KR20210117827A (ko) 2020-03-20 2021-09-29 챌린고 주식회사 인공지능을 활용한 음성 서비스 제공 시스템 및 제공 방법
KR20220019551A (ko) 2020-08-10 2022-02-17 (주)씨아이그룹 Ai 학습을 통한 음성 서비스 방법
KR20220033304A (ko) * 2020-09-09 2022-03-16 주식회사 엘지유플러스 사용자의 행동 추천 방법 및 장치
KR20220033194A (ko) 2020-09-09 2022-03-16 주식회사 코탁스 가상 공간 기반의 보이스 데이터의 선택적 추출과 매칭 통한 커뮤니케이팅 시스템
KR20220060963A (ko) * 2020-11-05 2022-05-12 한국과학기술원 대화 상대와 사용자의 성격 정보를 고려한 대화 상대에 대한 신뢰 정도 예측 시스템 및 그 방법
KR102418558B1 (ko) * 2021-11-22 2022-07-07 주식회사 유나이티드어소시에이츠 대화형 인공지능 아바타를 이용한 영어 말하기 교육 방법, 장치 및 이에 대한 시스템
KR102390412B1 (ko) * 2021-12-10 2022-04-26 (주)라바웨이브 인공지능 기반의 피싱 대응 챗봇 시스템
WO2023128120A1 (ko) * 2021-12-30 2023-07-06 서울대학교산학협력단 음성전화 및 문자 트랩 서버를 이용한 피싱 감지시스템
KR102558383B1 (ko) * 2022-02-24 2023-07-24 (주)메티스 보이스 피싱 방지용 어플리케이션 및 이를 이용한 보이스 피싱 방지시스템
KR20240074680A (ko) 2022-11-21 2024-05-28 고려대학교 산학협력단 음성 코덱 분석을 통한 보이스 피싱 방지 장치 및 방법

Also Published As

Publication number Publication date
US11769492B2 (en) 2023-09-26
WO2019194451A1 (ko) 2019-10-10
US20210012766A1 (en) 2021-01-14

Similar Documents

Publication Publication Date Title
KR20190123362A (ko) 인공지능을 이용한 음성 대화 분석 방법 및 장치
US11183190B2 (en) Method and apparatus for recognizing a voice
US20230027828A1 (en) Multiple classifications of audio data
KR102473447B1 (ko) 인공지능 모델을 이용하여 사용자 음성을 변조하기 위한 전자 장치 및 이의 제어 방법
US10521723B2 (en) Electronic apparatus, method of providing guide and non-transitory computer readable recording medium
US20200065612A1 (en) Interactive artificial intelligence analytical system
US20210335381A1 (en) Artificial intelligence apparatus for converting text and speech in consideration of style and method for the same
KR102321855B1 (ko) 음성으로 상호작용하는 인공 지능 장치 및 그 방법
US20220277746A1 (en) Artificial intelligence apparatus for recognizing speech of user and method for the same
KR102531654B1 (ko) 음성 입력 인증 디바이스 및 그 방법
US11423884B2 (en) Device with convolutional neural network for acquiring multiple intent words, and method thereof
KR20210070213A (ko) 음성 사용자 인터페이스
KR20180108400A (ko) 전자 장치, 그의 제어 방법 및 비일시적 컴퓨터 판독가능 기록매체
US20200043476A1 (en) Electronic device, control method therefor, and non-transitory computer readable recording medium
US11468886B2 (en) Artificial intelligence apparatus for performing voice control using voice extraction filter and method for the same
KR20190098859A (ko) 컨텍스트에 따라 이벤트의 출력 정보를 제공하는 전자 장치 및 이의 제어 방법
KR20190099153A (ko) 전자 장치
KR102206181B1 (ko) 단말기 및 그의 동작 방법
US20190371300A1 (en) Electronic device and control method
EP3828884A1 (en) Electronic apparatus and control method thereof
KR20200044175A (ko) 전자 장치 및 그의 비서 서비스 제공 방법
KR102221963B1 (ko) 화상 정보를 제공하는 인공 지능 장치 및 그 방법
KR20190105175A (ko) 전자 장치 및 이의 자연어 생성 방법
KR20210089782A (ko) 수면 유도 장치
KR20210027991A (ko) 전자장치 및 그 제어방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right