KR20180134482A - 음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법 - Google Patents

음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법 Download PDF

Info

Publication number
KR20180134482A
KR20180134482A KR1020170072236A KR20170072236A KR20180134482A KR 20180134482 A KR20180134482 A KR 20180134482A KR 1020170072236 A KR1020170072236 A KR 1020170072236A KR 20170072236 A KR20170072236 A KR 20170072236A KR 20180134482 A KR20180134482 A KR 20180134482A
Authority
KR
South Korea
Prior art keywords
keyword
user
address book
terminal device
processor
Prior art date
Application number
KR1020170072236A
Other languages
English (en)
Other versions
KR102394912B1 (ko
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 KR1020170072236A priority Critical patent/KR102394912B1/ko
Priority to US15/802,122 priority patent/US10866948B2/en
Publication of KR20180134482A publication Critical patent/KR20180134482A/ko
Application granted granted Critical
Publication of KR102394912B1 publication Critical patent/KR102394912B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/037Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for occupant comfort, e.g. for automatic adjustment of appliances according to personal settings, e.g. seats, mirrors, steering wheel
    • B60R16/0373Voice control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F17/3074
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4594Address books, i.e. directories containing contact information about correspondents
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/26Devices for calling a subscriber
    • H04M1/27Devices whereby a plurality of signals may be stored simultaneously
    • H04M1/271Devices whereby a plurality of signals may be stored simultaneously controlled by voice recognition
    • H04M1/274533
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/26Devices for calling a subscriber
    • H04M1/27Devices whereby a plurality of signals may be stored simultaneously
    • H04M1/274Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc
    • H04M1/2745Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc using static electronic memories, e.g. chips
    • H04M1/27453Directories allowing storage of additional subscriber data, e.g. metadata
    • H04M1/27457Management thereof, e.g. manual editing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L2015/088Word spotting

Abstract

음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법에 관한 것으로, 주소록 관리 방법은, 주소록 데이터베이스가 저장된 제1 단말 장치와 제2 단말 장치가 상호 통신 가능하게 연결되는 단계, 상기 제1 단말 장치로부터 상기 제1 단말 장치의 제1 사용자 및 상기 제2 단말 장치의 제2 사용자 중 적어도 하나의 음성 신호를 획득하는 단계, 상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호에 대한 음성 인식이 수행되는 단계, 상기 음성 인식 결과를 기반으로 상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호로부터 제1 키워드를 획득하는 단계 및 상기 제1 키워드를 이용하여 상기 주소록 데이터베이스를 갱신하는 단계를 포함할 수 있다.

Description

음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법{Apparatus for managing address book using voice recognition, vehicle, system and method thereof}
음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법에 관한 것이다.
차량은 도로나 선로를 주행하면서 이동할 수 있는 장치를 의미한다. 이와 같은 차량으로는 예를 들어, 삼륜 또는 사륜 자동차나, 모터사이클 등의 이륜 자동차나, 건설 기계나, 자전거나 또는 선로 상에 배치된 레일 위에서 주행하는 열차 등이 있을 수 있다.
근자에 차량은, 스마트 폰과 같은 단말 장치와 페어링되어 스마트 폰의 기능의 전부 또는 일부를 차량에 설치된 차량용 표시 장치, 일례로 내비게이션 장치나 헤드 유닛을 이용하여 수행할 수 있다. 예를 들어, 스마트 폰이 호를 수신한 경우, 차량의 내비게이션 장치는 호에 대응하는 알림 음을 출력하거나, 스마트 폰이 수신하는 상대방의 음성을 출력하거나, 또는 운전자의 음성을 수신하고 수신한 음성을 스마트 폰을 경유하여 상대방의 단말 장치로 전송하도록 할 수 있다. 이에 따라, 차량의 운전자 또는 동승자는, 스마트 폰을 조작하지 않고도, 상대방과 통화를 할 수 있게 되어, 차량 운전의 안정성이 개선된다.
음성 대화를 기반으로 용이하고 편리하게 주소록을 수정 및 갱신할 수 있는 음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법을 제공하는 것을 해결하고자 하는 과제로 한다.
상술한 과제를 해결하기 위하여 음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법이 제공된다.
음성 인식을 이용한 주소록 관리 방법은, 주소록 데이터베이스가 저장된 제1 단말 장치와 제2 단말 장치가 상호 통신 가능하게 연결되는 단계, 상기 제1 단말 장치로부터 상기 제1 단말 장치의 제1 사용자 및 상기 제2 단말 장치의 제2 사용자 중 적어도 하나의 음성 신호를 획득하는 단계, 상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호에 대한 음성 인식이 수행되는 단계, 상기 음성 인식 결과를 기반으로 상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호로부터 제1 키워드를 획득하는 단계 및 상기 제1 키워드를 이용하여 상기 주소록 데이터베이스를 갱신하는 단계를 포함할 수 있다.
상기 제1 키워드를 이용하여 상기 주소록 데이터베이스를 갱신하는 단계는, 상기 제1 키워드에 대응하는 제2 키워드를 결정하는 단계 및 상기 제2 키워드를 상기 주소록 데이터베이스의 대응하는 개체에 부가하여 상기 주소록 데이터베이스를 갱신하는 단계를 포함할 수 있다.
상기 제1 키워드에 대응하는 제2 키워드를 결정하는 단계는, 상기 제2 키워드를 상기 제1 키워드와 동일하게 결정하는 단계, 상기 제2 키워드를 상기 제1 키워드에 미리 정의된 기호를 부가하여 결정하는 단계 및 상기 제2 키워드를 상기 제1 키워드 중 일부를 이용하여 결정하는 단계 중 적어도 하나를 포함할 수 있다.
상기 제1 키워드에 대응하는 제2 키워드는, 상기 제1 사용자 및 상기 제2 사용자 사이의 관계에 대한 정보를 포함할 수 있다.
음성 인식을 이용한 주소록 관리 방법은, 상기 제2 단말 장치 및 상기 제2 사용자 중 적어도 하나에 대한 식별 정보를 획득하는 단계를 더 포함할 수 있다.
상기 제1 키워드를 이용하여 상기 주소록 데이터베이스를 갱신하는 단계는, 상기 제2 키워드에 대한 기대값을 연산하는 단계를 포함할 수 있다.
상기 제1 키워드를 이용하여 상기 주소록 데이터베이스를 갱신하는 단계는, 상기 기대값이 제1 기준 값보다 큰 경우, 상기 제2 키워드를 이용하여 상기 주소록 데이터베이스를 갱신하는 단계, 상기 기대값이 상기 제1 기준 값 및 상기 제1 기준 값보다 상대적으로 작은 제2 기준 값 사이인 경우, 상기 제2 키워드를 임시적으로 저장하는 단계 및 상기 기대값이 상기 제2 기준 값보다 작은 경우, 상기 제2 키워드를 폐기하는 단계 중 적어도 하나를 더 포함할 수 있다.
상기 음성 인식 결과를 기반으로 상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호로부터 제1 키워드를 획득하는 단계는, 상기 음성 인식 결과에 따라 획득된 발화문을 학습 알고리즘을 이용하여 분석하는 단계를 포함하되, 상기 학습 알고리즘은 심층 신경망(DNN, Deep Neural Network), 콘볼루션 신경망(CNN, Convolutional Neural Network), 순환 신경망(RNN, Recurrent Neural Network), 심층 신뢰 신경망(DBN, Deep Belief Network) 및 심층 Q-네트워크(Deep Q-Networks) 중 적어도 하나를 포함할 수 있다.
상기 기대 값은 학습 알고리즘의 수행에 따라 획득되는 확률 출력 값을 포함할 수 있다.
음성 인식을 이용한 주소록 관리 장치는, 주소록 데이터베이스, 제1 사용자의 음성 신호가 입력되는 음성 신호 입력부, 단말 장치로부터 전송된 제2 사용자의 음성 신호를 수신하는 통신부 및 상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호에 대한 음성 인식을 수행하고, 음성 인식 결과를 기반으로 상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호로부터 제1 키워드를 획득하고, 상기 주소록 관리 키워드를 이용하여 상기 주소록 데이터베이스를 갱신하는 프로세서를 포함할 수 있다.
상기 프로세서는, 상기 제1 키워드에 대응하는 제2 키워드를 결정하고, 상기 제2 키워드를 상기 주소록 데이터베이스의 대응하는 개체에 부가하여 상기 주소록 데이터베이스를 갱신할 수 있다.
상기 프로세서는, 상기 제2 키워드를 상기 제1 키워드와 동일하게 결정하거나, 상기 제2 키워드를 상기 제1 키워드에 미리 정의된 기호를 부가하여 결정하거나, 또는 상기 제2 키워드를 상기 제1 키워드 중 일부를 이용하여 결정할 수 있다.
상기 제1 키워드에 대응하는 제2 키워드는, 상기 제1 사용자 및 상기 제2 사용자 사이의 관계에 대한 정보를 포함할 수 있다.
상기 프로세서는, 상기 단말 장치 및 상기 제2 사용자 중 적어도 하나에 대한 식별 정보를 획득할 수 있다.
상기 프로세서는, 상기 제1 키워드에 대한 기대값을 연산할 수 있다.
상기 프로세서는, 상기 기대값이 제1 기준 값보다 큰 경우, 상기 제1 키워드를 이용하여 상기 주소록 데이터베이스를 갱신하거나, 상기 기대값이 상기 제1 기준 값 및 상기 제1 기준 값보다 상대적으로 작은 제2 기준 값 사이인 경우, 상기 제1 키워드를 임시적으로 저장하거나, 또는 상기 기대값이 상기 제2 기준 값보다 작은 경우, 상기 제1 키워드를 폐기하여 상기 주소록 데이터베이스를 갱신할 수 있다.
상기 프로세서는, 상기 음성 인식 결과에 따라 획득된 발화문을 학습 알고리즘을 이용하여 분석하여, 제1 키워드를 획득하되, 상기 학습 알고리즘은 심층 신경망, 콘볼루션 신경망, 순환 신경망, 심층 신뢰 신경망 및 심층 Q-네트워크 중 적어도 하나를 포함할 수 있다.
상기 기대 값은 학습 알고리즘의 수행에 따라 획득되는 확률 출력 값을 포함할 수 있다.
차량은, 제1 사용자의 음성 신호가 입력되는 음성 신호 입력부, 제1 단말 장치와 통신 가능하게 연결되고, 상기 제1 사용자의 음성 신호를 상기 제1 단말 장치로 전송하거나, 또는 상기 제1 단말 장치로부터 제2 사용자의 음성 신호를 수신하는 통신부, 상기 제1 단말 장치에 저장된 주소록 데이터베이스와 주기적으로 또는 임의의 시점에 동기화되는 차량용 주소록 데이터베이스 및 상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호에 대한 음성 인식을 수행하고, 음성 인식 결과를 기반으로 상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호로부터 제1 키워드를 획득하고, 상기 주소록 관리 키워드를 이용하여 상기 차량용 주소록 데이터베이스를 갱신하는 프로세서를 포함할 수 있다.
상기 프로세서는, 상기 제1 키워드에 대응하는 제2 키워드를 결정하고, 상기 제2 키워드를 상기 주소록 데이터베이스의 대응하는 개체에 부가하여 상기 주소록 데이터베이스를 갱신할 수 있다.
상기 프로세서는, 상기 제2 키워드를 상기 제1 키워드와 동일하게 결정하거나, 상기 제2 키워드를 상기 제1 키워드에 미리 정의된 기호를 부가하여 결정하거나, 또는 상기 제2 키워드를 상기 제1 키워드 중 일부를 이용하여 결정할 수 있다.
상기 제1 키워드에 대응하는 제2 키워드는, 상기 제1 사용자 및 상기 제2 사용자 사이의 관계에 대한 정보를 포함할 수 있다.
상기 프로세서는, 상기 제1 키워드에 대한 기대값을 연산하고, 상기 기대값을 기준으로 상기 주소록 데이터베이스를 경신하거나 상기 제1 키워드를 임시적으로 저장하거나 또는 상기 상기 제1 키워드를 폐기할 수 있다.
주소록 관리 시스템은, 제1 주소록 데이터베이스가 마련되고, 제1 사용자의 음성 신호가 입력되는 제1 단말 장치, 제2 주소록 데이터베이스가 마련되고, 제2 사용자의 음성 신호가 입력되고 상기 제1 단말 장치와 통신 가능하게 연결된 제2 단말 장치 및 상기 제1 사용자의 음성 신호 및 상기 제2 사용자의 음성 신호 중 적어도 하나를 획득하고, 상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호에 대한 음성 인식을 수행하고, 음성 인식 결과를 기반으로 상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호로부터 제1 키워드를 획득하고, 상기 주소록 관리 키워드를 이용하여 상기 제1 주소록 데이터베이스 및 상기 제2 주소록 데이터베이스 중 적어도 하나를 갱신하는 컴퓨팅 장치를 포함할 수 있다.
상술한 음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법에 의하면, 사용자가 직접 조작하지 않고도 음성 대화를 기반으로 용이하고 편리하면서도 신속하게 주소록을 수정 및 갱신할 수 있게 된다.
상술한 음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법에 의하면, 상대방의 성명, 별칭, 호칭, 관계 또는 연락처 등을 자동적으로 주소록에 부가하여 저장할 수 있게 되므로, 사용자의 편의성이 개선될 수 있다.
상술한 음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법에 의하면, 차량의 운전자가 주소록 갱신에 주의를 기울일 필요가 감소하므로, 운전의 안전성이 증진될 수 있게 된다.
상술한 음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법에 의하면, 차량의 운전자와 관련된 개인화 데이터를 적절하고 충분히 확보할 수 있게 되며, 이에 따라 차량이 개인에 최적화된 다양한 서비스를 제공할 수 있게 된다.
도 1은 음성 인식을 이용한 주소록 관리 시스템의 일 실시예에 대한 도면이다.
도 2는 주소록 데이터베이스의 일 실시예에 대한 도면이다.
도 3a은 주소록 관리 장치의 일 실시예에 대한 블록도이다.
도 3b는 획득된 제1 키워드에 대한 기대값을 설명하기 위한 도표이다.
도 4는 주소록이 갱신되는 과정의 제1 예를 도시한 도면이다.
도 5는 주소록이 갱신되는 과정의 제2 예를 도시한 도면이다.
도 6은 주소록이 갱신되는 과정의 제3 예를 도시한 도면이다.
도 7은 주소록이 갱신되는 과정의 제4 예를 도시한 도면이다.
도 8은 주소록이 갱신되는 과정의 제5 예를 도시한 도면이다.
도 9는 음성 인식을 이용한 주소록 관리 시스템의 다른 실시예에 대한 도면이다.
도 10은 음성 인식을 이용하여 주소록 관리가 가능한 차량의 일 실시예에 대한 블록도이다.
도 11은 음성 인식을 이용한 주소록 관리 방법의 일 실시예에 대한 흐름도이다.
이하 명세서 전체에서 동일 참조 부호는 특별한 사정이 없는 한 동일 구성요소를 지칭한다. 이하에서 사용되는 '부'가 부가된 용어는, 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시예에 따라 '부'가 하나의 부품으로 구현되거나, 하나의 '부'가 복수의 부품들로 구현되는 것도 가능하다.
명세서 전체에서 어떤 부분이 다른 부분과 연결되어 있다고 할 때, 이는 어떤 부분과 다른 부분에 따라서 물리적 연결을 의미할 수도 있고, 또는 전기적으로 연결된 것을 의미할 수도 있다.
또한, 어떤 부분이 다른 부분을 포함한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 부분 이외의 또 다른 부분을 제외하는 것이 아니며, 설계자의 선택에 따라서 또 다른 부분을 더 포함할 수 있음을 의미한다.
제 1 이나 제 2 등의 용어는 하나의 부분을 다른 부분으로부터 구별하기 위해 사용되는 것으로, 특별한 기재가 없는 이상 이들이 순차적인 표현을 의미하는 것은 아니다.
단수의 표현은 문맥상 명백하게 예외가 있지 않는 한, 복수의 표현을 포함할 수 있다.
이하 도 1 내지 도 8을 참조하여 주소록 관리 장치 및 주소록 관리 시스템을 적어도 하나 포함하는 주소록 관리 시스템의 일 실시예에 대해서 설명하도록 한다.
도 1은 음성 인식을 이용한 주소록 관리 시스템의 일 실시예에 대한 도면이다.
도 1에 도시된 바를 참조하면 주소록 관리 시스템(10)은, 주소록 관리 장치(100)와, 주소록 관리 장치(100)와 이격되고 통신망을 통하여 주소록 관리 장치(100)로부터 음성 신호를 수신하거나 또는 주소록 관리 장치(100)로 음성 신호를 전송할 수 있는 다른 단말 장치(이하 제2 단말 장치, 200)를 포함할 수 있다. 필요에 따라 주소록 관리 시스템(10)은, 주소록 관리 장치(100)와 제2 단말 장치(200) 사이의 통신을 중개하고 필요한 통신 서비스를 제공하는 통신서비스 제공자 서버(500)를 더 포함할 수도 있다.
주소록 관리 장치는, 적어도 하나의 화자의 음성을 이용하여 주소록과 관련된 키워드를 획득하여 주소록을 수정, 변경 및/또는 갱신할 수 있는 장치를 의미한다. 주소록 관리 장치(100)는, 도 1에 도시된 바와 같이, 단말 장치(100, 이하 제1 단말 장치)일 수 있다. 이하 설명의 편의를 위하여 주소록 관리 장치(100)를 제1 단말 장치라고 칭한다.
제1 단말 장치(100), 제2 단말 장치(200) 및 통신서비스 제공자 서버(500)는, 유선 통신 네트워크, 무선 통신 네트워크 또는 이들의 조합을 기반으로 상호 통신을 수행할 수 있다.
여기서 유선 통신 네트워크는, 케이블을 이용하여 구축 가능하며, 케이블은, 예를 들어, 페어 케이블, 동축 케이블, 광섬유 케이블 또는 이더넷 케이블 등을 이용하여 구현된 것일 수 있다. 무선 통신 네트워크는 근거리 통신 기술 및 이동 통신 기술 중 적어도 하나를 이용하여 구현된 것일 수 있다. 근거리 통신 기술로는, 예를 들어, 캔(CAN) 통신, 와이 파이(Wi-Fi), 와이파이 다이렉트(Wi-Fi Direct), 블루투스(Bluetooth), 지그비(zigbee), 저전력 블루투스(Bluetooth Low Energy) 또는 엔에프씨(NFC, Near Field Communication) 등이 이용 가능하다. 또한, 이동 통신 기술로는, 3GPP, 3GPP2 또는 와이맥스 계열 등의 이동 통신 표준을 기반으로 하는 통신 기술이 이용 가능하다.
제1 단말 장치(100)는, 음성의 입력 및 처리가 가능하고, 아울러 주소록 데이터베이스(160)를 저장할 수 있도록 마련된 전자 장치를 포함한다. 예를 들어, 제1 단말 장치(100)는 스마트폰, 셀룰러폰, 태블릿 피씨, 데스크톱 컴퓨터, 랩톱 컴퓨터, 휴대용 게임기 또는 개인용 디지털 보조장치(PDA)를 이용하여 구현될 수 있다.
일 실시예에 따르면, 제1 단말 장치(100)는, 제1 음성 입력부(101)와, 제1 음성 출력부(103)와, 제1 통신부(105)와, 제1 프로세서(110)와, 제1 저장부(150)를 포함할 수 있다.
제1 음성 입력부(101)는, 제1 사용자(u1)의 발화에 따른 음성을 수신하고, 수신한 음성을 전기적 신호(이하 음성 신호)로 변환하여 제1 사용자(u1)의 음성에 대응하는 제1 음성 신호를 출력할 수 있다. 음성 신호는, 케이블 또는 무선 통신 네트워크를 통하여 프로세서(110)로 전달될 수 있다.
일 실시예에 의하면, 제1 음성 입력부(101)는, 미리 정의된 설정에 따라서 특정한 시점부터 계속해서 음성을 수신하도록 마련된 것일 수 있다. 예를 들어, 제1 음성 입력부(101)는 제1 단말 장치(100)가 제2 단말 장치(200)로 호를 송출하거나, 또는 제1 단말 장치(100)와 제2 단말 장치(200) 사이에 통화가 형성된 이후에, 계속해서 또는 주기적으로 제1 사용자(u1)의 음성을 수신하고, 이에 대응하는 음성 신호를 출력할 수 있다.
제1 음성 입력부(101)는, 소정의 마이크로폰을 이용하여 구현될 수 있다.
제1 음성 출력부(103)는, 제2 단말 장치(200)로부터 수신한 제2 사용자(u2)의 음성에 대응하는 제2 음성 신호를 음파로 변환하여 외부에 출력함으로써 제2 사용자(u2)의 음성을 제1 사용자(u1)에게 청각적으로 제공할 수 있다. 또한, 제1 음성 출력부(103)는, 제1 사용자(u1)로부터의 음성 신호를 더 출력할 수도 있고, 또는 제1 프로세서(110)에 의해 수행된 처리 결과, 일례로 제1 주소록 데이터베이스(160) 갱신 결과를 음성 또는 이에 준하는 음향으로 출력할 수도 있다.
제1 음성 출력부(103)는, 예를 들어, 스피커 장치나, 이어폰이나 또는 각종 헤드셋 등을 이용하여 구현될 수 있다.
제1 통신부(105)는, 제2 단말 장치(200) 및 통신 서비스 제공자 서버(500) 중 적어도 하나와의 통신을 수행할 수 있도록 마련된다. 제1 통신부(105)는, 제1 단말 장치(100)에 채용된 통신 기술에 상응하는 부품을 이용하여 구현될 수 있으며, 여기서 부품은 통신 칩, 안테나 및 관련 부품을 포함할 수 있다.
제1 통신부(105)는, 제1 사용자(u1)가 발화한 음성에 대응하는 제1 음성 신호를 제2 단말 장치(200)의 제2 통신부(205)로 직접 또는 통신서비스 제공자 서버(500)를 경유하여 전달할 수 있다. 또한, 제1 통신부(105)는 제2 사용자(u2)가 발화한 음성에 대응하는 제2 음성 신호를 제2 단말 장치(200)의 제2 통신부(205)로 직접 또는 통신서비스 제공자 서버(500)를 경유하여 수신할 수도 있다.
제1 프로세서(110)는, 제1 단말 장치(100)의 전반적인 동작을 제어할 수 있다. 일 실시예에 의하면, 제1 프로세서(110)는, 제1 음성 신호 및 제2 음성 신호 중 적어도 하나를 이용하여 주소록 수정, 변경 및/또는 갱신 처리를 수행할 수 있다.
제1 프로세서(110)는, 상술한 처리를 위하여 미리 프로그래밍된 것일 수도 있고, 또는 상술한 처리를 위하여 저장부(150)에 저장된 프로그램을 구동시킬 수도 있다. 제1 프로세서(110)는, 제1 음성 입력부(101), 제1 음성 출력부(103), 제1 통신부(105) 및 제1 저장부(150)와 상호 데이터를 송수신할 수 있도록 전기적으로 연결되어 마련된 것일 수 있다.
제1 프로세서(110)는, 적어도 하나의 중앙 처리 장치(CPU, Central Processing Unit)나, 적어도 하나의 마이크로 컨트롤러 유닛(MCU, Micro Controller Unit)이나, 또는 적어도 하나의 전자 제어 장치(ECU, Electronic Control Unit)를 이용하여 구현될 수 있다.
제1 프로세서(110)의 상세한 동작은 후술한다.
저장부(150)는, 다양한 데이터를 소정 형태로 저장할 수 있도록 마련된다. 예를 들어, 저장부(150)는, 제1 프로세서(110)의 동작에 필요한 정보나 프로그램을 저장할 수 있으며, 또한 제1 주소록 데이터베이스(160)를 저장할 수 있다.
저장부(150)는 각종 데이터나 프로그램을 일시적으로 저장할 수 있는 주기억장치(151)와, 각종 데이터나 프로그램을 비일시적으로 저장할 수 있는 보조 기억 장치(153)를 포함할 수 있다.
일 실시예에 의하면, 주기억장치(151)는 제1 프로세서(110)에 의해 획득된 기대값이 미리 정의된 제1 기준 값보다 작고 제2 기준 값보다 큰 경우 획득된 키워드(일례로 제1 키워드 및 제2 키워드 중 적어도 하나)를 일시적으로 저장하고, 제1 프로세서(110)의 호출에 따라 저장된 기대값을 제1 프로세서(110)에 제공할 수 있다.
도 2는 주소록 데이터베이스의 일 실시예에 대한 도면이다.
보조 기억 장치(153)에는 제1 주소록 데이터베이스(160)가 저장될 수 있다.
제1 주소록 데이터베이스(160)는, 도 2에 도시된 바와 같이, 적어도 하나의 연락처 및 각각의 연락처에 대응하는 적어도 하나의 데이터를 이용하여 구축된 것일 수 있다. 여기서 적어도 하나의 연락처는, 전화 번호, 휴대폰 번호, 이메일 주소 및 소셜 네트워크 서비스 계정 중 적어도 하나를 포함할 수 있다. 각각의 연락처에 대응하는 적어도 하나의 데이터는, 성명, 소속, 직업, 직책 및 제1 사용자(u1)과의 관계 중 적어도 하나를 포함할 수 있다.
제1 주소록 데이터베이스(160)는, 식별자, 예를 들어 연락처를 기준으로 구분되어 저장된 적어도 하나의 주소록 레코드(161, 163, 165, 167)를 포함할 수 있다. 각각의 주소록 레코드(161, 163, 165, 167)는, 적어도 하나의 필드를 포함할 수 있다. 적어도 하나의 필드 각각은 미리 정의된 필드명에 대응하는 문자, 기호 및/또는 숫자 형식의 데이터를 저장할 수 있도록 마련된다. 예를 들어, 제1 주소록 데이터베이스(160)는, 성명(a1), 소속(a2), 직책/직급(a3), 제1 사용자(u1)과의 관계 필드(a4) 및 연락처 필드(a5) 등과 같은 복수의 필드를 포함할 수 있으며, 각각의 필드에는 성명, 소속, 직책/직급, 관계 및 연락처 등이 대응하여 기록된다. 실시예에 따라서, 성과 이름은 각각 별도의 필드에 저장될 수도 있다.
제2 단말 장치(200)는, 제1 단말 장치(100)와 통신 가능한 전자 장치를 포함할 수 있으며, 예를 들어, 스마트폰, 셀룰러폰, 태블릿 피씨, 데스크톱 컴퓨터, 랩톱 컴퓨터, 휴대용 게임기 또는 개인용 디지털 보조장치를 포함할 수 있다.
실시예에 따라서, 제2 단말 장치(200)는 주소록 관리 장치로 동작할 수도 있으나, 반드시 주소록 관리 장치로 동작해야 하는 것은 아니다.
제2 단말 장치(200)는, 일 실시예에 의하면, 제2 음성 입력부(201)와, 제2 음성 출력부(203)와, 제2 통신부(205)와, 제2 프로세서(210)와, 제2 저장부(250)를 포함할 수 있다.
제2 음성 입력부(201)는, 제2 사용자(u1)의 발화에 따른 음성을 수신하고, 수신한 음성에 대응하는 제2 음성 신호를 출력할 수 있고, 제2 음성 출력부(203)는, 제2 통신부(205)가 수신한 제1 사용자(u1)의 제1 음성 신호를 음파로 변환하여 제2 사용자(u2)에게 청각적으로 제공할 수 있다.
제2 통신부(205)는 제1 단말 장치(100) 및 통신 서비스 제공자 서버(500) 중 적어도 하나와의 통신을 수행할 수 있도록 마련된다. 이에 따라, 제2 단말 장치(200)는 제1 단말 장치(100)로 제2 사용자(u2)의 제2 음성 신호를 전달하거나, 또는 제1 단말 장치(100)로부터 제1 사용자(u1)의 제1 음성 신호를 수신할 수 있게 된다.
제2 프로세서(210)는, 제2 단말 장치(200)의 전반적인 동작을 수행할 수 있다. 실시예에 따라서, 제2 프로세서(210)는 제1 음성 신호 및 제2 음성 신호 중 적어도 하나를 이용하여 주소록 수정, 변경 및/또는 갱신 처리를 수행하도록 설정되는 것도 가능하다.
제2 저장부(250)는, 다양한 데이터를 저장할 수 있으며, 예를 들어, 주기억장치(251)와, 보조기억장치(253)를 포함할 수 있다. 주기억장치(251)는 제2 프로세서(210)의 처리에 따라 생성된 데이터, 일례로 제1 키워드 및 제2 키워드 중 적어도 하나를 일시적으로 저장 가능하도록 마련된 것일 수 있다. 보조 기억 장치(153)는, 도 1에 도시된 바와 같이 제2 사용자(u2)와 관련된 제2 주소록 데이터베이스(260)를 저장하도록 설정된 것일 수 있다.
상술한 제2 음성 입력부(201), 제2 음성 출력부(203), 제2 통신부(205), 제2 프로세서(210) 및 제2 저장부(250) 각각은, 제1 음성 입력부(101), 제1 음성 출력부(103), 제1 통신부(105), 제1 프로세서(110) 및 제1 저장부(150)와 동일한 부품을 이용하여 구현된 것일 수도 있고 또는 상이한 부품을 이용하여 구현된 것일 수도 있다.
통신서비스 제공자 서버(500)는, 제1 단말 장치(100) 및 제2 단말 장치(200) 양자와 통신 가능하게 연결되고, 제1 단말 장치(100)와 연결된 통신 회선과 제2 단말 장치(200)에 연결된 통신 회선을 상호 연결하여, 제1 단말 장치(100)와 제2 단말 장치(200)가, 상호 각종 데이터(제1 음성 신호 및 제2 음성 신호 중 적어도 하나를 포함할 수 있다)를 송수신할 수 있도록 한다. 통신서비스 제공자 서버(500)는, 데스크톱 컴퓨터나 또는 특별히 고안된 소정의 컴퓨팅 장치를 이용하여 구현 가능하다.
이하 제1 단말 장치(100)의 제1 프로세서(110)의 동작에 의해 제1 주소록 데이터베이스(160)가 갱신되는 과정에 대해 보다 상세히 설명한다. 이하 설명되는 제1 프로세서(110)의 동작에 의해 제1 주소록 데이터베이스(160)가 갱신되는 과정은, 제2 프로세서(120)의 동작에 의해 제2 주소록 데이터베이스(260)가 갱신되는 과정에도 동일하거나 또는 일부 변형된 방법을 이용하여 적용 가능하다. 또한, 설명되는 제1 프로세서(110)의 동작에 의해 제1 주소록 데이터베이스(160)가 갱신되는 과정은, 통신서비스 제공자 서버(500) 내에 마련된 프로세서의 동작에 의해 통신서비스 제공자 서버(500)에 마련된 주소록 데이터베이스를 갱신하는 과정에도, 동일하거나 또는 일부 변형된 방법을 이용하여 적용 가능하다.
도 3a은 주소록 관리 장치의 일 실시예에 대한 블록도이다.
도 3a에 도시된 바와 같이, 제1 음성 입력부(101)가 제1 사용자(u1)의 제1 음성 신호(s1)를 전달하거나 및/또는 제1 통신부(105)가 제2 사용자(u2)의 제2 음성 신호(s2)를 전달하면, 프로세서(110)는 전달된 제1 음성 신호(s1) 및 제2 음성 신호(s2) 중 적어도 하나에 대한 음성 인식을 수행한다(112).
프로세서(110)는 음성 인식을 수행함으로써 입력된 제1 음성 신호(s1) 및 제2 음성 신호(s2) 중 적어도 하나에 대응하는 텍스트 형태의 발화문을 획득할 수 있다.
프로세서(110)는, 음성 인식 엔진(speech recognition engine)을 이용하여 제1 음성 신호(s1) 및 제2 음성 신호(s2) 중 적어도 하나에 대한 음성 인식을 수행할 수 있다. 음성 인식 엔진은 입력된 음성에 음성 인식 알고리즘을 적용하여 사용자가 발화한 음성을 인식하고, 인식 결과를 생성할 수 있도록 마련된 장치 또는 프로그램일 수 있다.
일 실시예에 의하면, 프로세서(110)는, 소정의 음성 구간 동안의 음성 신호를 기반으로 음성 인식을 수행할 수도 있다. 다시 말해서, 프로세서(110)는 제1 사용자(u1) 및 제2 사용자(u2)가 발화한 모든 음성에 대한 음성 신호를 분석하는 것이 아니라, 일부의 음성에 대응하는 음성 신호만을 분석할 수도 있다. 여기서, 음성 구간은 사용자가 발화한 음성이 존재하거나, 또는 존재할 가능성이 높은 구간을 기반으로 정의된 것일 수 있다.
일 실시에에 의하면, 소정의 음성 구간은 제1 음성 신호(s1)의 초기 부분 또는 제2 음성 신호(s2)의 초기 부분을 포함할 수 있다. 다시 말해서, 소정의 음성 구간은, 제1 음성 신호(s1) 중에서 제1 사용자(u1)가 처음 발화한 시점에서부터 일정 기간을 포함할 수도 있고, 및/또는 제2 음성 신호(s2) 중에서 제2 사용자(u2)가 처음 발화한 시점에서 일정 기간 동안을 포함할 수도 있다.
발화자는 주소록과 관련된 데이터, 일례로 본인이나 상대방의 성명, 별칭, 호칭, 직책, 직급 또는 기타 통상적으로 이용되는 각종 단어나 문구 등을 초반에 발화하는 경향이 있으므로, 음성 신호(s1, s2)의 초기 구간만을 이용해서도 충분히 제1 주소록 데이터베이스(160)의 갱신에 필요한 정보, 일례로 제1 키워드를 획득할 수 있다. 만약 상술한 초기 구간 내에서 필요한 정보가 획득되지 않는 경우, 프로세서(110)는 초기 구간보다 더 넓은 음성 구간으로부터 제1 주소록 데이터베이스(160)의 갱신에 필요한 정보를 획득할 수 있다. 이를 위해 제1 음성 신호(s1) 및 제2 음성 신호(s2) 중 적어도 하나는 계속적으로 임시적으로 저장부(150)에 저장될 수 있다.
이어서, 프로세서(110)는 음성 구간으로부터 음성의 특징을 추출할 수 있다. 이 경우, 프로세서(110)는 선형 예측 코딩 계수(LPC, Linear Prediction Coefficient), 켑스트럼(Cepstrum), 멜 주파수 켑스트럼 계수(MFCC, Mel Frequency Cepstral Coefficient), 및 필터 뱅크 에너지(Filter Bank Energy) 중 적어도 하나를 이용하여 음성 구간으로부터 음성의 특징(일례로 특징 벡터)을 획득할 수 있다.
음성의 특징의 추출에 응하여, 프로세서(110)는 추출된 음성의 특징에 대응하는 인식 결과를 획득할 수 있다. 이 경우, 프로세서(110)는 추출된 특징과 기존에 미리 학습된 패턴을 비교하여 추출된 특징에 대응하는 패턴을 결정함으로써 인식 결과를 얻을 수 있다.
보다 구체적으로, 프로세서(110)는 미리 정의된 소정의 음향 모델을 이용하여 음성의 특징에 대한 패턴을 결정할 수 있다. 음향 모델은 음성의 신호적 특성을 사전에 모델링 함으로써 획득된 것일 수 있다. 프로세서(100)는, 이와 같은 음향 모델을 이용하여, 제1 음성 신호 및 제2 음성 신호 중 적어도 하나의 주파수 패턴과 동일하거나 근사한 주파수 패턴을 획득함으로써, 음성의 특징에 대한 패턴을 결정할 수 있다. 이에 따라 프로세서(110)는 통해 입력된 음성으로부터 소정의 단어, 음절 또는 짧은 구와 같은 어휘를 인식될 수 있다.
음향 모델은, 인식 대상을 특징 벡터 모델로 설정하고 이를 음성 데이터의 특징 벡터와 비교하는 직접 비교 방법 및 인식 대상의 특징 벡터를 통계적으로 처리하여 이용하는 통계 방법 중 적어도 하나에 따라 패턴을 결정할 수 있도록 마련된 것일 수 있다. 여기서, 직접 비교 방법은 벡터 양자화(Vector Quantization) 방법을 포함할 수 있다. 통계적 모델 방법은 동적 시간 와핑(Dynamic Time Warping: DTW), 히든 마르코프 모델(Hidden Markov Model: HMM) 또는 신경 회로망을 이용한 방식 등을 포함할 수 있다.
음성의 특징이 추출된 경우, 프로세서(110)는 이를 기반으로 발화자(즉, 제1 사용자(u1) 및 제2 사용자(u2) 중 적어도 하나)와 관련된 정보를 획득할 수 있다. 예를 들어, 프로세서(110)는 음성의 특징을 기반으로 발화자(u1, u2)의 성별이나 나이 등을 결정할 수도 있다.
프로세서(110)는, 필요에 따라, 언어 모델을 더 이용하여 음성 인식을 수행할 수 있다. 이에 따라 프로세서(100)는 문장 등을 인식할 수 있게 된다. 언어 모델은, 인식된 단어, 음절 또는 구 등을 언어적 순서 관계를 결정하기 위해, 인간의 언어 및 문법 등을 기반으로 생성된 것일 수 있다. 언어 모들을 이용하여 음성 인식을 수행하는 경우, 프로세서(110)의 음성 인식의 오류가 감소될 수 있다. 언어 모델은, 예를 들어, 통계적 언어 모델 또는 유한 상태 네트워크(Finite State Automata: FSA)에 기반한 모델을 포함할 수 있다.
실시예에 따라서, 프로세서(110)는 음향 모델과 음성 모델을 통합한 N-best 탐색법을 이용하여 음성 인식을 수행할 수도 있다.
음향 모델 및 언어 모델 중 적어도 하나는 소정의 학습 알고리즘을 이용하여 획득된 것일 수 있다. 여기서, 소정의 학습 알고리즘은 심층 신경망(DNN, Deep Neural Network), 콘볼루션 신경망(CNN, Convolutional Neural Network), 순환 신경망(RNN, Recurrent Neural Network), 심층 신뢰 신경망(DBN, Deep Belief Network) 및 심층 Q-네트워크(Deep Q-Networks) 중 적어도 하나를 채용하여 구현된 것일 수 있다.
프로세서(110)는, 신뢰값(confidence value)을 더 계산할 수도 있다. 여기서, 신뢰값은 음성 인식 결과가 얼마나 신뢰할만한 것인지를 나타낸다. 신뢰도는, 인식된 결과인 음소나 단어에 대해서, 그 외의 다른 음소나 단어로부터 그 말이 발화되었을 확률에 대한 상대적인 수치로 정의될 수 있다. 신뢰값은, 설계자의 임의적 선택에 따라서, 0 에서 1 사이의 값으로 표현될 수 있으나, 이에 한정되지 않는다. 신뢰값이 연산된 경우, 프로세서(110)는 미리 정의된 임계값(threshold)을 신뢰값과 비교하고 비교 결과에 따라서 언어 인식 결과를 폐기할 수도 있다.
프로세서(110)는, 음향 모델을 이용하고 필요에 따라 언어 모델을 더 이용한 음성 인식 결과에 따라 제1 음성 신호(s1) 및 제2 음성 신호(s2) 중 적어도 하나에 대응하는 텍스트 형태의 데이터를 획득한다.
텍스트 형태의 데이터 및 발화자(u1, u2)와 관련된 정보가 획득되면, 프로세서(110)는 순차적으로 자연어 이해를 수행한다(114).
자연어 이해를 수행함에 따라서, 프로세서(110)는, 발화문으로부터 제1 키워드를 획득할 수 있게 되며, 또한 발화문에 내포된 제1 사용자(u1) 또는 제2 사용자(u2)의 의도를 파악할 수 있게 된다.
상세하게는, 프로세서(110)는, 제1 키워드의 획득 및/또는 의도 파악을 위하여, 예를 들어, 획득한 텍스트 형태의 발화문에 대한 형태소 분석을 수행할 수 있다. 여기서, 형태소는 의미의 최소 단위로써, 더 이상 세분화할 수 없는 가장 작은 의미 요소를 나타낸다. 필요에 따라, 프로세서(110)는, 형태소 분석 결과에 기초하여 도메인을 더 획득할 수도 있다. 도메인은 사용자(u1, u2)가 발화한 내용(단어, 구 또는 문장 등)을 미리 정의된 분류에 따라 구분한 것이다.
또한, 프로세서(110)는, 발화문으로부터 개체명을 식별하고 식별된 개체명의 종류를 결정함으로써, 발화된 내용으로부터 개체명을 인식할 수 있다. 여기서, 개체명은 인명, 지명, 조직명, 시간, 날짜, 화폐 등과 같은 고유 명사를 포함할 수 있다. 프로세서(110)는, 개체명 인식을 통해 문장에서 중요한 키워드를 추출하여 문장의 의미를 파악할 수 있게 된다.
프로세서(110)는 개체명 인식을 위하여 사전에 마련된 추출 키워드 데이터베이스를 열람할 수 있다. 추출 키워드 데이터베이스는 인명, 지명, 조직명, 시간, 날짜, 화폐 등과 같은 고유 명사를 포함하여 구축된다.
또한, 프로세서(110)는, 발화문의 화행(speech act)을 분석하여 사용자(u1, u2)의 의도를 인식할 수도 있다. 화행 분석의 수행 결과에 따라, 사용자(u1, u2)가 질의나, 요청이나, 응답 등 중에서 어떠한 목적으로 발화를 하였는지 인식할 수 있게 된다.
상술한 형태소 인식 또는 개체명 식별 등의 결과를 기반으로 제1 키워드가 획득될 수 있다(115). 제1 키워드는 발화된 내용으로부터 직접 추출되는 단어, 구, 문장 또는 기타 추출 가능한 어구들 중에서 제1 주소록 데이터베이스(160)의 갱신과 관련된 단어, 구, 문장 또는 기타 추출 가능한 어구를 의미한다. 예를 들어, 제1 키워드는 자연인, 회사, 물건, 전자 장치나 기계 장치 등의 성명, 별칭, 호칭, 직책, 직급 또는 기타 통상적으로 이용되는 각종 단어나 구 등을 포함할 수 있다.
일 실시예에 의하면, 제1 키워드를 획득하기 위하여 상술한 형태소 인식, 개체명 식별 및 화행 분석 중 적어도 하나가 수행되는 과정에서, 소정의 학습 알고리즘을 이용될 수 있다. 여기서, 소정의 학습 알고리즘은 심층 신경망, 콘볼루션 신경망, 순환 신경망, 심층 신뢰 신경망 및 심층 Q-네트워크 중 적어도 하나를 기반으로 구현된 것일 수 있다.
일 실시예에 따르면, 프로세서(110)는 제1 키워드가 결정되면, 이에 응하여 제2 키워드를 결정할 수 있다(116). 제2 키워드는, 실제 제1 주소록 데이터베이스(160)에 부가되는 단어, 구, 문장 또는 기타 가능한 어구들을 포함할 수 있다.
다시 말해서, 제1 키워드는, 사용자(u1, u2)의 발화문에서 직접 추출된 단어, 구 및/또는 문장을 의미하고, 제2 키워드는, 제1 주소록 데이터베이스(160)에 추가될 단어, 구 및/또는 문장을 의미한다.
제2 키워드는 제1 주소록 데이터베이스(160)의 필드 명칭에 따라 사용자 또는 설계자에 의해 미리 정의된 것일 수도 있고, 학습 과정에서 획득된 것일 수도 있다. 예를 들어, 제2 키워드는 도 2에 도시된 바와 같이 복수의 필드명칭, 일례로 성명(a1), 소속(a2), 직책/직급(a3) 및 관계(a4)에 대응하는 단어, 구 또는 문장을 포함할 수 있다.
제2 키워드는, 발화자가 누구인지, 추출된 제1 키워드가 무엇인지, 제1 사용자(u1)에 의해 호가 발신되었는지, 또는 제2 사용자(u2)에 의해 호가 발신되었는지 등 다양한 조건 및 정보를 기반으로 결정될 수 있다.
상황에 따라서 프로세서(110)는, 제2 키워드를 제1 키워드와 동일하게 결정할 수도 있다. 다시 말해서, 제2 키워드는 제1 키워드와 동일한 단어, 구 또는 문장으로 이루어질 수 있다. 예를 들어, 제1 키워드가 '존(John)'인 경우, 프로세서(110)는, 제2 키워드 역시 '존(John)'으로 결정할 수 있다.
또한, 프로세서(110)는, 제1 키워드에 미리 정의된 소정의 기호, 일례로 문자를 더 부가하여 제2 키워드를 결정할 수도 있다. 예를 들어, 제1 키워드가 '존(John)'인 경우, 제2 키워드는 '존'의 앞에 '서(Sir)'라는 단어를 부가하여 '서 존(Sir. John)'으로 결정될 수도 있다.
또한, 프로세서(110)는 제2 키워드를, 제1 키워드의 일부만을 이용하여 결정하는 것도 가능하다. 예를 들어, 제1 키워드가 '서 존(Sir. John)'인 경우, 프로세서(110)는, 제2 키워드를, 제1 키워드 전단의 '서(Sir)'를 제거하고 남은 '존(John)'만으로 결정할 수도 있다
또한, 프로세서(110)는 제1 키워드 및 대화 내용을 기반으로 판단된 제1 사용자(u1)와 제2 사용자(u2) 사이의 관계를 제2 키워드로 결정할 수도 있다. 예를 들어, 제1 키워드는 제1 사용자(u1)와 제2 사용자(u2) 사이에 사용되는 호칭일 수 있으며, 프로세서(110)는 이와 같은 호칭을 기반으로 제1 사용자(u1)와 제2 사용자(u2) 사이의 관계를 결정하고, 결정된 관계에 대응하는 단어, 구 또는 문장을 제2 키워드로 결정하는 것도 가능하다.
보다 구체적으로 예를 들어, 통화 도중에 제2 사용자(u2)가 제1 사용자(u1)에게 '아빠'라고 호칭한 경우, 제1 키워드는 '아빠'로 결정될 수 있으며, 제2 키워드는, '아빠'에 대응하여 '자녀'로 결정될 수 있다. 이에 따라 제1 주소록 데이터베이스(160)에는 '자녀'가 부가될 수 있다.
제1 키워드에 대응하는 제1 사용자(u1)와 제2 사용자(u2) 사이의 관계를 판단하기 위하여, 프로세서(110)는 별도로 마련된 관계와 관련된 정보(이하 관계 정보)를 열람할 수 있다. 프로세서(110)는 열람 결과를 기반으로 제1 키워드로부터 제2 키워드를 결정한다.
여기서, 관계 정보는, 예를 들어, 호칭과 호칭에 대응하는 관계를 포함하여 정의될 수 있다. 예를 들어, 관계 정보는, '여보', '마누라' 또는 아내의 성명 등과 같은 단어와, 이에 대응하여 아내라는 관계를 함께 포함할 수 있다. 또한, 관계 정보는, '여보', '남편' 등과, 이에 대응하여 남편이라는 관계를 포함하여 정의될 수도 있다. 또한, 다른 예를 들어, 관계 정보는, '아빠', '엄마', '아버지' 또는 '어머니' 등과 같이 자녀가 부모를 부를 때 이용되는 호칭과 이에 대응하여 부모라는 관계를 포함하거나, 또는 자식의 성명, '아들' 또는 '딸' 등과 같이 부모가 자녀를 부를 때 이용되는 호칭과, 이에 대응하여 자녀라는 관계를 포함할 수 있다. 이와 같이, 관계 정보는 특정인 사이의 관계와, 관계에 대응하여 상호 호칭될 수 있는 표현(단어, 어구 또는 문장 등)을 포함하여 구축될 수 있다.
상술한 바 이외에도, 설계자가 고려 가능한 다양한 방법을 이용하여, 제2 키워드는 제1 키워드를 기반으로 결정될 수 있다.
실시예에 따라 제2 키워드의 획득 과정(116)은 생략 가능하다.
도 3b는 획득된 제1 키워드에 대한 기대값을 설명하기 위한 도표이다.
프로세서(110)는 프로세서(110)는 제1 키워드가 획득되거나 또는 제2 키워드가 획득되면, 이에 응하여 제1 키워드 또는 제2 키워드에 대응하는 기대값(A)을 획득할 수도 있다(117).
상술한 바와 같이 프로세서(110)가 학습 알고리즘을 이용하여 제1 키워드 및 제2 키워드를 획득하는 경우, 프로세서(110)는, 확률 출력 값도 제1 키워드 및 제2 키워드와 함께 더 획득할 수 있다. 이와 같이 획득되는 확률 출력 값은 기대값(A)으로 결정될 수 있다.
예를 들어, 심층 신경망 기반의 학습 알고리즘의 경우, 입력층에 복수의 입력 값이 입력되고, 복수의 입력 값 각각은 적어도 하나의 은닉층을 통하여 입력층에서 출력층으로 전달된다. 이 경우, 은닉층 내에서 복수의 입력 값 각각은 가중합될 수도 있다. 출력층으로 전달되는 값에는 소정의 활성화 함수(activation function)가 적용될 수 있다. 활성화 함수의 적용에 따라 획득되는 결과 값들은, 확률로 표현될 수 있으며, 제1 키워드 또는 제2 키워드의 정확도를 나타낼 수 있다. 프로세서(110)는, 이와 같이 활성화 함수의 적용에 따라 획득되는 결과 값을 기대값(A)으로 결정한다.
이에 따라 각각의 제1 키워드 또는 제1 키워드에 대응하는 제2 키워3드에 대한 기대값(A)이 결정될 수 있다.
예를 들어, 도 6에 도시된 바와 같이 제2 사용자(u2)가 전화를 하여 소정의 발화문(s22)이 입력된 경우, 각각의 필드, 일례로 성명 필드, 소속 필드, 직책/직급 필드 및 관계 필드에 대응하여, 발화문(s22)으로부터 'G' (K31), 'H사'(K21), '팀장'(K32), '이전'(K33) 등의 단어가 제1 키워드로 검출될 수 있다. 각각의 제1 키워드를 검출하는 과정에 있어서 상술한 바와 같이 학습 알고리즘이 적용된 결과, 각각의 제1 키워드, 즉 'G' (K31), 'H사'(K21), '팀장'(K32), '이전'(K33)에 대응하는 기대값(A1 내지 A4)가 획득될 수 있다. 예를 들어, 성명에 대응하는 제1 키워드가 'G'인 경우에 대한 기대값(A1)은 0.92로, 소속에 대응하는 제1 키워드가 'H사'인 경우에 대한 기대값(A2)은 0.83으로 획득될 수 있다.
실시예에 따라서, 기대 값은 상술한 바와 같은 확률 값 이외에도 설계자가 고려할 수 있는 다양한 함수를 이용하여 구현될 수도 있다.
상술한 바와 같이 기대값(A)이 획득된 경우, 프로세서(110)는 기대값을 이용하여 획득한 제1 키워드 또는 제2 키워드를 검증할 수 있다(119).
구체적으로 프로세서(110)는 획득된 기대값(A, A1 내지 A4)을, 설계자 또는 사용자에 의해 미리 정의된 적어도 하나의 기준 값을 비교하고, 비교 결과를 기반으로 제2 키워드를 검증할 수 있다.
적어도 하나의 기준 값은, 제1 기준 값 및 제2 기준 값을 포함할 수 있다. 제1 기준 값은 예를 들어 0.8로 정의되고 제2 기준 값은 0.3으로 정의될 수도 있다. 그러나, 제1 기준 값 및 제2 기준 값은 이에 한정되는 것은 아니며 설계자의 임의적 선택에 따라 다양하게 정의 가능하다.
프로세서(110)는 획득한 기대값(A)을 제1 기준 값과 비교하고, 만약 기대값(A)이 제1 기준 값보다 큰 경우(실시예에 따라, 기대값(A)이 제1 기준 값과 동일한 경우도 포함 가능하다), 획득된 제2 키워드가 적절한 것으로 판단하고, 제2 키워드를 제1 주소록 데이터베이스(160)에 부가하여, 제1 주소록 데이터베이스(160)를 갱신한다.
제2 키워드가 획득되면, 프로세서(110)는 주소록 데이터베이스(160)의 적어도 하나의 레코드(161, 163, 165, 167) 중에서 제2 키워드가 부가될 적어도 하나의 레코드(161, 163, 165, 167)를 결정한다. 이는 제2 단말 장치(200)에 대한 식별 번호, 일례로 전화 번호나 이메일 주소 등을 이용하여 수행될 수 있다. 또한, 프로세서(110)는, 제2 키워드에 대응하는 필드 명칭(a1 내지 a5)를 결정한다. 다시 말해서, 프로세서(110)는 주소록 데이터베이스(160)의 필드 명칭(a1 내지 a5) 중에서 제2 키워드와 대응하는 필드 명칭을 결정한다. 이어서, 프로세서(110)는, 결정된 주소록 레코드(161, 163, 165, 167)에서 결정된 필드 명칭(a1 내지 a5)에 대응하는 필드를 검출하고, 검출된 필드에 제2 키워드를 부가한다. 이에 따라 주소록 데이터베이스(160)의 갱신이 수행될 수 있다.
프로세서(110)는, 실시예에 따라서, 상술한 바와 같이 검출된 필드에 정보가 이미 기록되어 있는지 판단할 수 있다.
만약 검출된 필드에 기록된 정보가 없어 검출된 필드가 공백 필드라면, 프로세서(110)는 검출된 필드에 제2 키워드를 부가하여 주소록 데이터베이스(160)를 갱신한다.
만약 검출된 필드에 이미 기록된 전보가 존재하고 있는 경우라면, 프로세서(110)는, 설계자 및 사용자 중 적어도 하나의 선택에 따라서, 주소록 데이터베이스(160)의 갱신 과정을 종료하고, 제2 키워드를 폐기할 수도 있고, 또는 검출된 필드에 기 저장된 데이터를 제거하고 제2 키워드를 검출된 필드에 부가함으로써 주소록 데이터베이스(160)를 갱신할 수도 있다. 필요에 따라, 프로세서(110)는 검출된 필드에 이미 정보가 기록되어 있는 경우, 제2 키워드를 이용한 주소록 데이터베이스(160)의 갱신 여부를 사용자에게 먼저 질의할 수도 있다.
또한, 프로세서(110)는 획득한 기대값(A)을 제1 기준 값 및 제2 기준 값과 비교하고, 만약 획득한 기대값(A)이 제1 기준 값보다 작고, 제2 기준 값보다 큰 경우, 획득된 제2 키워드의 적절성 여부를 판단하기 어렵다고 결정하고, 획득된 제2 키워드를 저장부(150), 일례로 주기억장치(151)에 임시적으로 저장한다. 임시적으로 저장된 제2 키워드는 다른 발화문의 분석 결과에 따라 다시 이용되거나 또는 다른 발화문의 분석 결과 획득에 이용 가능하다. 여기서, 다른 발화문은, 동일한 통화로부터 획득된 것일 수도 있고, 또는 다른 통화로부터 획득된 것일 수도 있다.
또한, 프로세서(110)는 획득한 기대값(A)을 제2 기준 값과 비교하고, 만약 획득한 기대값(A)이 제2 기준 값보다 작은 경우, 획득한 제2 키워드는 부적절한 것으로 판단할 수 있다. 이 경우, 획득된 제2 키워드는 폐기된다.
상술한 과정을 거쳐서, 사용자(u1, u2) 사이의 음성 통화를 기반으로 주소록 데이터베이스(160)의 자동 갱신이 가능해진다. 이에 따라, 제1 사용자(u1)가 제1 단말 장치(100)를 직접 조작하기 어려운 상황, 일례로 운전 중인 상황인 경우에도, 제1 사용자(u1)의 수동 조작 없이, 제1 주소록 데이터베이스(160)의 신속하고 편리한 갱신이 가능해진다.
이하 상술한 주소록이 갱신되는 과정의 여러 예를 설명한다.
도 4는 주소록이 갱신되는 과정의 제1 예를 도시한 도면이다. 도 4는 기존에 주소록 데이터베이스(160) 내에 저장된 제1 주소록 레코드(171)의 적어도 하나의 필드(a31)를 갱신하는 과정을 설명하기 위한 도면이다.
도 4에 도시된 바와 같이, 먼저 제1 사용자(u1)의 제1 단말 장치(100)와 제2 사용자(u2)의 제2 단말 장치(200)가 상호 통신 가능하게 연결된다. 제1 단말 장치(100)가 호를 발신하였을 수도 있고, 또는 제2 단말 장치(200)가 호를 발신하였을 수도 있다. 제1 단말 장치(100)가 발신한 경우, 제2 단말 장치(200)에 대한 식별 번호(n1), 일례로 전화번호는, 호의 발신에 선행하여 제1 단말 장치(100)로 입력된다. 제2 단말 장치(200)가 발신한 경우, 제2 단말 장치(200)에 대한 식별 번호(n1), 일례로 전화번호는, 제2 단말 장치(200)에서 전송되는 음성 신호와 함께 전기적 신호의 형태로 제1 단말 장치(100)로 전송된다.
제1 단말 장치(100)와 제2 단말 장치(200)가 상호 통신 가능하게 연결된 이후, 제1 사용자(u1)가 제2 사용자(u2)의 직책과 관련된 단어(k11)를 포함하는 발화문(s11)을 발화하거나, 또는 제2 사용자(u2)가 본인의 직책과 관련된 단어를 포함하는 발화문을 발화할 수 있다.
발화문(s11)에 대응하는 음성 신호(v1)는 제1 단말 장치(100)로 입력되고, 제1 단말 장치(100)의 프로세서(110)는 발화문(s11)을 분석하여 제1 키워드(k11), 일례로 '팀장님'을 획득한다. 이어서, 프로세서(110)는, 미리 설정된 바에 따라서, 제1 키워드(k11)에 대응하는 제2 키워드(k12)를 획득한다. 이 경우, 예를 들어, 프로세서(110)는 '팀장님'으로부터 '님'을 제거함으로써, 제2 키워드(k12), 일례로 팀장'을 획득할 수 있다.
프로세서(110)는, 검증 결과 제2 키워드(k12)가 적절한 키워드라고 판단되면, 제2 키워드(k12)에 대응하는 필드를 결정한다. 예를 들어, 프로세서(110)는 '팀장'은 직책/직급에 관련된 것으로 결정할 수 있다.
또한 프로세서(110)는, 제2 키워드(k12)의 결정 이전 또는 이후에, 제2 단말 장치(200)에 대한 식별 번호를 기반으로 제2 키워드가 부가될 소정의 주소록 레코드(171)를 결정할 수 있다.
주소록 레코드(171) 및 필드 명칭이 결정되면, 프로세서(110)는 결정된 필드 명칭에 대응하는 적어도 하나의 필드(a31)에 제2 키워드, 일례로 '팀장'을 부가한다. 이에 따라, 제2 단말 장치(200)와 관련된 주소록 레코드(171)에는 새로운 정보, 즉 직책/직급에 대한 데이터가 부가되게 되고, 이에 따라 주소록 데이터베이스(160)는 갱신된다.
도 5는 주소록이 갱신되는 과정의 제2 예를 도시한 도면이고, 도 6은 주소록이 갱신되는 과정의 제3 예를 도시한 도면이다. 도 5는 주소록 데이터베이스(160)에 새로운 제2 주소록 레코드(172)를 생성하는 과정을 설명하기 위한 도면이고, 도 6은 생성된 제2 주소록 레코드(172)에 새로운 데이터가 더 부가되는 과정을 설명하기 위한 도면이다.
도 5에 도시된 바와 같이, 제1 사용자(u1)의 제1 단말 장치(100)와 제2 사용자(u2)의 제2 단말 장치(200)가 상호 통신 가능하게 연결된 후, 제1 사용자(u1) 및 제2 사용자(u2) 중 적어도 하나는, 제2 사용자(u2)의 성명, 직급, 소속 및/또는 제1 사용자(u1)와의 관계와 관련된 단어(k21)를 포함하는 발화문(s21)을 발화할 수 있다.
예를 들어, 제2 사용자(u1)는, 본인의 소속, 일례로 'H사'를 발화할 수 있으며, 이에 대응하는 음성 신호(v2)는 제2 단말 장치(200)로부터 제1 단말 장치(100)로 전송된다. 아울러 제2 단말 장치(200)로부터 제2 단말 장치(200)의 식별 번호(n2) 역시 제1 단말 장치(100)로 전송될 수 있다.
프로세서(110)는, 제1 주소록 데이터베이스(160)를 열람하고, 제2 단말 장치(200)의 식별 번호(n2)에 대응하는 주소록 레코드가 제1 주소록 데이터베이스(160)에 부재하는 경우, 이에 대응하는 데이터를 저장하기 위한 별도의 주소록 레코드(172)를 생성한다.
제1 단말 장치(100)의 프로세서(110)는 발화문(s21)을 분석하여 제1 키워드(k21), 일례로 'H사'를 검출하여 획득하고, 제1 키워드(k21)에 대응하는 제2 키워드(k22)를 획득할 수 있다. 이 경우, 예를 들어, 프로세서(110)는 'H사'와 동일하게 제2 키워드(k22)를 결정하여 획득할 수도 있다.
프로세서(110)는, 검증 결과 제2 키워드(k22)가 적절한 키워드라고 판단되면, 제2 키워드(k12)에 대응하는 필드 명칭, 일례로 '소속'(a2)를 결정할 수 있다.
주소록 레코드(172)가 생성되고 제2 키워드(k12)에 대응하는 필드 명칭이 결정되면, 프로세서(110)는 주소록 레코드(172)의 대응하는 필드(a22)에 결정된 제2 키워드, 일례로 'H사'을 부가할 수 있다. 또한, 프로세서(110)는 주소록 레코드(172)의 연락처 필드(h52)에 제2 단말 장치(200)의 식별 번호(n2)를 부가한다.
이에 따라, 제1 주소록 데이터베이스(160)에는 새로운 레코드(172)가 생성 및 부가된다.
일정 시간이 경과된 후, 도 6에 도시된 바와 같이, 제1 사용자(u1)의 제1 단말 장치(100)와 제2 사용자(u2)의 제2 단말 장치(200)는 다시 통화 가능하게 연결될 수 있다. 이때에도, 제1 사용자(u1) 및 제2 사용자(u2) 중 적어도 하나는, 제2 사용자(u2)의 성명, 직급, 소속 및/또는 제1 사용자(u1)와의 관계와 관련된 단어(k21, k31, k32)를 포함하는 발화문(s31)을 발화할 수 있다.
예를 들어, 제2 사용자(u1)는, 본인의 성명, 일례로 'G' 및 직책, 일례로 '팀장'을 발화하고, 제1 단말 장치(100)는, 이에 대응하는 음성 신호(v3)를, 제2 단말 장치(200)의 식별 번호(n2)와 더불어 수신할 수 있다.
제1 프로세서(110)는, 제2 단말 장치(200)에 대한 식별 번호를 이용하여 제1 주소록 데이터베이스(160)로부터 제2 키워드가 부가될 소정의 주소록 레코드(172)를 결정한다. 제1 프로세서(110)는 발화문(s22)으로부터 검출된 단어(k21, k31, k32)를 이용하여 제2 키워드가 부가될 소정의 주소록 레코드(172)를 결정할 수도 있다. 이 경우, 제1 프로세서(110)는, 기 저장된 주소록 레코드 중에서 발화문(s22)으로부터 검출된 단어(k21, k31, k32), 일례로 'H사'(k21)와 일치하는 데이터를 갖는 주소록 레코드(172)가 존재하는지 검색하고, 검색 결과를 기반으로 제2 키워드가 부가될 소정의 주소록 레코드(172)를 결정할 수 있다.
제1 프로세서(110)는 발화문(s22)을 분석하여 발화문(s22)로부터 제1 키워드(k31), 일례로 'G' 및 '팀장'를 검출하고, 제1 키워드(k31, k32)에 대응하는 제2 키워드(k34, k35)를 획득할 수도 있다. 이 경우, 예를 들어, 프로세서(110)는 'H사'와 동일하게 제2 키워드(k22)를 결정하여 획득할 수도 있다.
프로세서(110)는, 제2 키워드(k34, k35)를 검증하고, 검증 결과 결정된 제2 키워드(k34, k35)가 적절한 키워드라고 판단되면, 제2 키워드(k34, k35)를 결정된 주소록 레코드(172)의 소정의 필드, 일례로 '성명'(a1) 및 '직책/직급'(a3)에 대응하는 필드에 부가할 수 있다.
이에 따라, 제1 주소록 데이터베이스(160)의 주소록 레코드(172)는 갱신된다.
도 7은 주소록이 갱신되는 과정의 제4 예를 도시한 도면이다.
도 7에 도시된 바와 같이, 제1 단말 장치(100)와 제2 단말 장치(200)가 통신 가능하게 연결된 후, 제2 사용자(u2)는, 제1 사용자(u1)와의 관계, 일례로 '아빠'와 관련된 단어(k41)를 포함하는 발화문(s23)을 발화할 수 있다.
발화문(s23)에 대응하는 음성 신호(v4) 및 제2 단말 장치(200)의 식별 번호는, 유무선 통신 네트워크를 제1 단말 장치(100)로 전달된다.
프로세서(110)는, 제2 단말 장치(200)에 대한 식별 번호를 기반으로 제2 키워드가 부가될 소정의 주소록 레코드(174)를 결정할 수 있다.
또한, 제1 단말 장치(100)의 프로세서(110)는 발화문(s23)을 분석하여, 제1 주소록 데이터베이스(160)의 갱신과 관련된 제1 키워드(k41), 일례로 '아빠'를 획득한다.
이어서, 프로세서(110)는, 제1 키워드(k41)에 대응하는 제2 키워드(k42)를 획득한다. 예를 들어, 제1 프로세서(110)는, 도 7에 도시된 바와 같이, 관계 정보를 열람하여 제2 사용자(u2)의 발화문에 포함된 제1 키워드(k41), 즉 '아빠'에 대응하는 관계, 일례로 '자녀'를 획득하고, 획득된 관계에 대한 단어를 제2 키워드(k42)로 결정할 수 있다.
프로세서(110)는, 검증 결과 제2 키워드(k42)가 적절한 키워드라고 판단되면, 제2 키워드(k42)에 대응하는 필드(a4, a44)를 결정할 수 있으며, 예를 들어 관계 필드(a44)를 대응하는 필드로 결정할 수 있다.
프로세서(110)는, 제2 키워드, 일례로 '자녀'(k42)를, 제2 단말 장치(200)에 대응하는 주소록 레코드(174)의 관계 필드(a44)에 기록하여 부가한다. 이에 따라 주소록 레코드(174)의 관계 필드(a44)에는 '자녀'라는 데이터가 부가되며, 제1 주소록 데이터베이스(160)는 갱신된다.
도 8은 주소록이 갱신되는 과정의 제5 예를 도시한 도면이다.
도 8에 도시된 바와 같이, 먼저 제1 사용자(u1)의 제1 단말 장치(100)와 제2 사용자(u2)의 제2 단말 장치(200)가 상호 통신 가능하게 연결된 이후, 제1 사용자(u1) 및 제2 사용자(u2)는 각각 발화문(k51, k52)을 발화하여 상호 대화를 할 수 있다.
프로세서(110)는, 제2 단말 장치(200)에 대한 식별 번호를 기반으로 제2 키워드(k53)가 부가될 소정의 주소록 레코드(171)를 결정할 수 있다.
제1 프로세서(110)는 제1 사용자(u1)의 발화문(s12)에 대응하는 음성 신호(v5)와, 제2 사용자(u2)의 발화문(s24)에 대응하는 음성 신호(v6)를 모두 분석하고, 각각의 발화문(s12, s24)으로부터 제1 키워드(k51, k52)를 획득할 수 있다. 예를 들어, 프로세서(110)는 제1 사용자(u1)의 발화문(s12)으로부터 적어도 하나의 제1 키워드(k51), 일례로 '장인 어른'을 추출하여 획득하고, 제2 사용자(u2)의 발화문(s24)으로부터 다른 제1 키워드(k52), 일례로 '아빠'를 획득한다.
이어서, 프로세서(110)는, 미리 설정된 바에 따라서, 제1 키워드(k51, 52)에 대응하는 제2 키워드(k53)를 획득할 수 있으며, 이 경우 관계 정보를 열람하여 두 키워드(k51, k52)로부터 적절한 관계, 일례로 '아내'를 검출하여 획득한다. 다시 말해서, 프로세서(110)는, 제1 사용자(u1)와 대상 사이의 관계(즉, 장인 어른)와, 제2 사용자(u2)와 동일한 대상 사이의 관계(즉, 아빠)를 종합하여, 제1 사용자(u1)와 제2 사용자(u2) 사이의 관계를 결정한다.
순차적으로 프로세서(110)는, 제2 키워드(k53)를 검증하고, 검증 결과 제2 키워드(k53)가 적절한 키워드라고 판단되면, 제2 키워드(k53)를, 제2 단말 장치(200)에 대응하는 주소록 레코드(175)의 대응하는 필드, 즉 관계 필드(a45)에 부가할 수 있다. 이에 따라, 제2 단말 장치(200)와 관련된 주소록 레코드(175)에는 관계에 대한 새로운 정보, 즉 '아내'가 부가되게 될 수 있다. 이에 따라, 주소록 데이터베이스(160)가 적절하게 갱신될 수 있게 된다.
도 9는 음성 인식을 이용한 주소록 관리 시스템의 다른 실시예에 대한 도면이고, 도 10은 음성 인식을 이용하여 주소록 관리가 가능한 차량의 일 실시예에 대한 블록도이다.
도 9에 도시된 바를 참조하면, 주소록 관리 시스템(20)은, 제1 단말 장치(100)와, 제1 단말 장치(100)와 통신 가능하게 연결된 제2 단말 장치(200)와, 제1 단말 장치(200)와 통신 가능하게 연결된 차량(300)을 포함할 수 있다. 필요에 따라 주소록 관리 시스템(20)은 제1 단말 장치(100)와 제2 단말 장치(200) 사이의 통신을 중개하고 필요한 통신 서비스를 제공하는 통신서비스 제공자 서버(500)를 더 포함할 수도 있다.
이 경우, 제1 단말 장치(100) 및 차량(300) 중 어느 하나는 주소록 관리 장치로 동작할 수 있다. 다시 말해서, 제1 단말 장치(100)가 주소록 관리 장치일 수도 있고, 차량(300)이 주소록 관리 장치일 수도 있으며, 또한 제1 단말 장치(100)와 차량(300) 모두 주소록 관리 장치일 수도 있다.
도 10에 도시된 바를 참조하면, 제1 단말 장치(100)는, 제1 통신부(105)와, 프로세서(110)와, 제1 저장부(150)를 포함할 수 있다.
제1 통신부(105)는, 제1 단말 장치(100)가 외부의 장치와 통신을 수행할 수 있도록 하며, 구체적으로 근거리 통신 모듈(107)과, 이동 통신 모듈(109)을 포함할 수 있다.
이동 통신 모듈(109)은, 이동 통신 기술을 기반으로 제1 단말 장치(100)가 제2 단말 장치(200) 또는 통신서비스 제공자 서버(500) 중 적어도 하나와 통신을 수행할 수 있도록 마련된다. 이에 따라 제1 단말 장치(100)는 소정의 통신 네트워크를 통하여, 제2 사용자(u2)의 음성 신호를 수신하거나, 또는 제1 사용자(u1)의 음성 신호를 전송할 수 있게 된다.
근거리 통신 모듈(107)은, 근거리 통신 기술을 기반으로 외부의 장치, 즉 차량(300)의 근거리 통신 모듈(307)과 통신을 수행할 수 있도록 마련된다.
제1 단말 장치(100)는, 근거리 통신 모듈(107)을 통하여, 제2 단말 장치(200)로부터 전달된 제2 사용자(u2)의 음성 신호를 차량(300)의 차량 통신부(305)로 전달하거나, 또는 차량 통신부(305)로부터 차량(300)의 입력부(321)를 통해 입력된 제1 사용자(u1)의 음성을 수신할 수 있다.
또한, 제1 단말 장치(100)는, 근거리 통신 모듈(107)을 이용하여, 제1 주소록 데이터베이스(160)의 전부 또는 일부를 차량(300)의 차량 통신부(305)로 전달하거나, 또는 차량 통신부(305)로부터 차량(300)의 저장부(360)에 저장된 차량 주소록 데이터베이스(360)의 전부 또는 일부를 수신할 수도 있다. 제1 주소록 데이터베이스(160) 및 차량 주소록 데이터베이스(360) 중 적어도 하나의 전송은, 주기적으로 수행될 수도 있고, 사용자의 선택에 따라 수행될 수도 있으며, 제1 주소록 데이터베이스(160) 및 차량 주소록 데이터베이스(360) 중 적어도 하나의 갱신에 응하여 수행될 수도 있다. 이에 따라, 제1 단말 장치(100)의 제1 주소록 데이터베이스(160)와, 차량(300)에 저장된 주소록 데이터베이스(360)는 상호 동기화될 수 있다.
프로세서(110)는 제1 단말 장치(100)와 관련된 각종 처리를 수행하고, 또한 각종 제어 신호를 생성하여 제1 단말 장치(100)의 각 부품에 전송할 수 있다. 제1 단말 장치(100)가 주소록 관리 장치인 경우, 프로세서(110)는 상술한 음성 인식(112), 자연어 이해(114), 검증 처리(119) 및 제1 주소록 데이터베이스(160) 갱신 과정 중 적어도 하나를 수행할 수 있도록 마련된다.
제1 저장부(150)는, 제1 단말 장치(100)의 동작과 관련된 각종 정보를 저장할 수 있으며, 예를 들어, 제1 주소록 데이터베이스(160)를 저장할 수 있다.
도 10에 도시된 바를 참조하면, 차량(300)은, 일 실시예에 있어서, 차량 통신부(305)와, 프로세서(310)와, 사용자 인터페이스(320)와, 저장부(360)를 포함할 수 있다.
차량 통신부(305)는, 근거리 통신 기술을 기반으로 외부의 장치, 즉 제1 단말 장치(100)에 마련된 근거리 통신 모듈(107)과 통신을 수행하는 근거리 통신 모듈(307)을 포함할 수 있다.
근거리 통신 모듈(307)는 미리 정의된 통신 표준을 이용하여 제1 통신부(105)의 근거리 통신 모듈(107)과 통신을 수행할 수 있으며, 예를 들어 블루투스를 기반으로 통신을 수행할 수 있다.
근거리 통신 모듈(307)은, 제1 단말 장치(100)의 근거리 통신 모듈(107)로부터 제2 사용자(u2)의 발화에 기인한 제2 음성 신호를 수신할 수도 있고, 또는 음성 입력부(321)를 통해 입력된 제1 사용자(u1)의 발화에 기인한 제1 음성 신호를 제1 단말 장치(100)의 근거리 통신 모듈(107)로 전달할 수도 있다.
또한, 근거리 통신 모듈(307)은 차량 주소록 데이터베이스(360)의 전부 또는 일부를 제1 단말 장치(100)의 근거리 통신 모듈(107)로 송신하거나, 또는 제1 단말 장치(100)로부터 제1 주소록 데이터베이스(160)의 근거리 통신 모듈(107)의 전부 또는 일부를 수신할 수도 있다.
차량 통신부(305)는, 실시예에 따라서, 이동 통신 기술을 기반으로 외부의 장치, 일례로 제1 단말 장치(100), 제2 단말 장치(200) 및 통신서비스 제공자 서버(500) 중 적어도 하나와 통신을 수행할 수 있는 이동 통신 모듈(309)을 포함할 수도 있다. 실시예에 따라, 차량(300)은 이통 통신 모듈(309)을 통해, 음성 신호나 주소록 데이터베이스(160, 360)의 송수신을 수행할 수도 있다.
프로세서(310)는 차량(300)의 전반적인 동작을 제어할 수 있도록 마련된다. 프로세서(310)는 중앙 처리 장치나, 전자 제어 유닛 등을 이용하여 구현 가능하다.
일 실시예에 의하면, 프로세서(310)는 제1 사용자(u1)의 음성 신호 및 제2 사용자(u2)의 음성 신호 중 적어도 하나를 기반으로 주소록 데이터베이스(360)를 갱신할 수 있다. 여기서, 제1 사용자(u1)의 음성 신호는 사용자 인터페이스(320)의 음성 입력부(321)로부터 프로세서(310)로 전달되고, 제2 사용자(u2)의 음성 신호는 근거리 통신 모듈(307) 또는 이동 통신 모듈(309) 중 적어도 하나로부터 프로세서(310)로 전달된 것일 수 있다.
구체적으로, 프로세서(310)는 상술한 음성 인식(112), 자연어 이해(114) 및 검증 처리(119)를 수행하여 제2 키워드를 획득하고 획득한 제2 키워드를 이용하여 주소록 데이터베이스(360) 갱신할 수 있다. 보다 구체적으로 프로세서(310)는, 음성 인식을 수행하고, 음성 인식 결과로부터 제1 키워드를 획득하고(115), 획득한 제1 키워드를 기반으로 제2 키워드를 획득할 수 있으며(116), 또한 기대값을 획득하고(117), 획득한 기대값을 이용하여 검증 처리를 수행하도록 설계될 수 있다.
실시예에 따라서, 음성 인식 과정(112), 자연어 이해 과정(114), 검증 처리 과정(119) 및 주소록 데이터베이스(360) 갱신 과정 중 일부는 차량(300)의 프로세서(310)에 의해 수행되고, 다른 일부는 제1 단말 장치(100)의 제1 프로세서(110)에 의해 수행되도록 마련되는 것도 가능하다.
프로세서(310)에 의해 수행되는 음성 인식 과정(112), 자연어 이해 과정(114), 검증 처리 과정(119) 및 주소록 데이터베이스(360) 갱신 과정 각각은, 도 2 및 도 3a을 참조하여 설명한 방법과 동일하거나 또는 일부 변형된 방법을 이용하여 수행될 수 있다. 이들에 대해선 자세히 기술하였으므로, 이하 구체적은 설명은 생략하도록 한다.
사용자 인터페이스(320)는, 제1 사용자(u1)로부터 각종 명령을 입력 받고, 또한 제1 사용자(u1)에게 각종 정보를 제공하도록 마련된다.
사용자 인터페이스(320)는 제1 사용자(u1)가 발화한 음성을 수신하고, 수신한 음성에 대응하는 음성 신호를 출력하여 프로세서(310)로 전달하는 음성 입력부(321)와, 프로세서(310)로부터 전달받은 음성 신호, 일례로 제2 사용자(u2)의 음성 신호를 외부로 출력하여 제1 사용자(u1)에게 제공하는 사운드 출력부(323)를 포함할 수 있다. 음성 입력부(321)는, 예를 들어, 마이크로폰을 이용하여 구현 가능하고, 사운드 출력부(323)는, 예를 들어, 스피커 장치, 이어폰 장치 또는 헤드셋을 이용하여 구현 가능하다.
저장부(360)는, 주기억 장치(351)와, 보조 기억 장치(360)를 포함할 수 있다. 주기억장치(351)는, 실시예에 따라, 기대값이 제1 기준 값 및 제2 기준 값 사이인 경우 제2 키워드를 일시적으로 임시적으로 저장할 수 있다. 보조 기억 장치(360)는 차량 주소록 데이터베이스(360)를 저장할 수 있다. 차량 주소록 데이터베이스(360)는, 제1 단말 장치(100)의 제1 주소록 데이터베이스(160)와 수동적으로 또는 자동적으로 동기화될 수 있다.
이상 제1 단말 장치, 제2 단말 장치 및 차량이 주소록 관리 장치로 동작하는 실시예에 대해 설명하였으나, 이들 외에도 제1 단말 장치, 제2 단말 장치 및 차량 중 적어도 하나와 연결 가능한 별도의 서버 장치가 주소록 관리와 관련된 각종 동작, 일례로 음성 인식 과정(112), 자연어 이해 과정(114), 검증 처리 과정(119) 및 주소록 데이터베이스(360) 갱신 과정 중 적어도 하나를 수행하는 것도 가능하다.
이하 음성 인식을 이용한 주소록 관리 방법에 대해 설명한다.
도 11은 음성 인식을 이용한 주소록 관리 방법의 일 실시예에 대한 흐름도이다.
도 11에 도시된 바를 참조하면, 먼저 제1 사용자에 의해 사용되는 제1 단말 장치와 제2 사용자에 의해 사용되는 제2 단말 장치가 상호 통신 가능하게 연결된다(400). 여기서, 제1 단말 장치 및 제2 단말 장치 중 적어도 하나에는 주소록 데이터베이스가 저장되어 마련된다. 제1 단말 장치 및 제2 단말 장치는 상호 직접 통신 가능하게 연결될 수도 있고, 통신 서비스 제공자 서버를 경유하여 통신 가능하게 연결될 수도 있다.
제1 단말 장치 및 제2 단말 장치가 상호 통신 가능하게 연결된 경우, 필요에 따라 제2 단말 장치에 대한 식별 정보 및 제2 단말 장치의 사용자, 즉 제2 사용자에 대한 식별 정보 중 적어도 하나가 획득된다. 이는 제1 단말 장치 및 제2 단말 장치 중 적어도 하나에 의해 수행될 수 있다. 또한, 제1 단말 장치와 블루투스 등을 통해 페어링된 차량에 의해 수행될 수도 있다.
제2 단말 장치에 대한 식별 정보는, 제1 사용자의 제1 단말 장치 조작, 일례로 번호 입력을 통해 획득될 수도 있고, 또는 제2 단말 장치로부터 전송된 발신 번호의 수신을 통해 획득될 수도 있다.
제1 단말 장치 및 제2 단말 장치 사이의 통신 연결에 응하여, 제1 사용자에 대응하는 제1 음성 신호 및 제2 사용자의 제2 음성 신호 중 적어도 하나가, 제1 단말 장치, 제2 단말 장치, 서버 장치 및 차량 중 적어도 하나에 의해 획득될 수 있다(402).
제1 음성 신호 및 제2 음성 신호 중 적어도 하나가 획득되면, 이에 응하여 제1 음성 신호 및 제2 음성 신호 중 적어도 하나에 대한 음성 인식이 수행된다(404). 음성 인식 결과, 제1 음성 신호 및 제2 음성 신호 중 적어도 하나에 대응하는 텍스트 형태의 발화문이 획득된다.
음성 인식은, 미리 정의된 음성 구간에 해당하는 제1 음성 신호에 대해서만 수행되거나, 및/또는 미리 정의된 음성 구간에 해당하는 제2 음성 신호에 대해서만 수행될 수 있다. 여기서, 미리 정의된 음성 구간은 제1 사용자 및 제2 사용자 중 적어도 하나가 처음 발화한 시점부터 일정한 기간을 포함할 수 있다. 이와 같은 음성 인식은, 예를 들어, 특징 추출, 음향 모델의 적용 및 언어 모델의 적용 과정을 이용하여 수행될 수 있다.
음성 인식 결과에 따라서 제1 음성 신호 및 제2 음성 신호 중 적어도 하나로부터 제1 키워드가 추출되어 획득된다(406). 제1 키워드는 발화된 내용으로부터 직접 추출되는 단어, 구, 문장 또는 기타 추출 가능한 어구들 중에서 제1 주소록 데이터베이스(160)의 갱신과 관련된 단어, 구, 문장 또는 기타 추출 가능한 어구를 포함 가능하다.
제1 키워드는, 제1 음성 신호에 대응하는 텍스트 형태의 발화문 및 제2 음성 신호에 대응하는 텍스트 형태의 발화문 중 적어도 하나에 대해 형태소 분석을 수행하여 획득 가능하다.
제1 키워드가 획득되면, 제1 키워드에 대응하는 제2 키워드가 결정될 수 있으며, 실시예에 따라서 제1 키워드 또는 제2 키워드에 대응하는 기대값이 더 결정될 수 있다(408).
실시예에 따라서 제2 키워드는 다양하게 결정될 수 있다. 예를 들어, 제2 키워드는, 제1 키워드와 동일하게 결정될 수도 있고, 제1 키워드에 미리 정의된 기호나 문자를 부가하여 결정될 수도 있으며, 또는 제1 키워드 중 일부만을 이용하여 결정될 수도 있다.
또한, 제2 키워드는, 제1 사용자 및 제2 사용자 사이의 관계를 기반으로 결정될 수도 있다. 예를 들어, 사전에 관계 정보가 호칭과 호칭에 대응하는 관계를 포함하여 정의되어 있을 수 있으며, 제1 단말 장치, 제2 단말 장치, 서버 장치 및 차량 중 적어도 하나는 관계 정보로부터 획득된 제1 키워드(예를 들어, 호칭)에 대응하는 관계를 검출하고, 검출된 관계를 제2 키워드로 정의함으로써 제2 키워드를 결정할 수 있다.
제1 키워드의 획득 및/또는 제2 키워드의 획득은, 학습 알고리즘을 이용하여 수행될 수 있으며, 여기서 학습 알고리즘은 심층 신경망, 콘볼루션 신경망, 순환 신경망, 심층 신뢰 신경망 및 심층 Q-네트워크 중 적어도 하나를 기반으로 한 것일 수 있다.
기대 값은 학습 알고리즘, 일례로 심층 신경망 기반 학습 알고리즘의 수행 과정에서 연산되는 확률 출력 값을 이용하여 획득될 수도 있다. 예를 들어, 활성화 함수의 연산 결과 획득되는 확률 값이 기대값으로 이용될 수 있다.
기대 값은 상술한 바와 같은 확률 값 이외에도 설계자가 고려할 수 있는 다양한 함수를 이용하여 구현될 수도 있다.
상술한 바와 같이 연산된 기대값은 제1 기준 값 및 제2 기준 값 중 적어도 하나와 비교된다. 이 경우, 기대값은 순차적으로 제1 기준 값 및 제1 기준 값보다 상대적으로 작은 제2 기준 값과 비교될 수 있다.
예를 들어, 기대값은 먼저 제1 기준값과 비교된다(410).
만약 연산된 기대값이 제1 기준 값보다 큰 경우(410의 예), 제2 키워드는 적절하게 선정된 것으로 판단되고, 제2 키워드를 주소록 데이터베이스에 부가함으로써 주소록 데이터베이스는 갱신된다(412). 이 경우, 제2 키워드는, 어느 하나의 주소록 레코드에 마련된 복수의 필드 중에서 제2 키워드에 대응하는 필드에 기록된다. 여기서, 어느 하나의 주소록 레코드는 제2 단말 장치에 대응하는 것일 수 있다.
만약 연산된 기대값이 제1 기준 값보다 작다고 판단되면(410의 No), 순차적으로 기대값은 제2 기준 값과 비교된다(414).
만약 기대값이 제2 기준 값보다 크다면(414의 예, 다시 말해서 기대값이 제1 기준 값 및 제2 기준 값 사이의 값을 갖는다면), 제2 키워드는 주기억장치나 또는 보조기억장치에 임시적으로 저장된다(416).
만약 기대값이 제2 기준 값보다 작다면(414의 아니오), 제2 키워드를 포함하여 연산 결과 획득된 각종 데이터는 폐기된다(418).
상술한 단계(400 내지 418)은, 설계자나 사용자의 선택에 따라서, 이 회 이상 반복해서 수행될 수도 있다(420). 이 경우, 상술한 단계(400 내지 418)는, 제1 사용자 및 제2 사용자가 통화하는 동안 계속해서 수행될 수도 있다.
상술한 실시예에 따른 주소록 관리 방법은, 동일하게 또는 일부 변형을 거쳐 차량의 제어 방법에도 적용될 수 있다.
상술한 실시예에 따른 주소록 관리 방법은, 다양한 컴퓨터 장치에 의해 구동될 수 있는 프로그램의 형태로 구현될 수 있다. 여기서 프로그램은, 프로그램 명령, 데이터 파일 및 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 프로그램은 기계어 코드나 고급 언어 코드를 이용하여 설계 및 제작된 것일 수 있다. 프로그램은 상술한 차량 충전 방법을 구현하기 위하여 특별히 설계된 것일 수도 있고, 컴퓨터 소프트웨어 분야에서 통상의 기술자에게 기 공지되어 사용 가능한 각종 함수나 정의를 이용하여 구현된 것일 수도 있다.
주소록 관리 방법을 구현하기 위한 프로그램은, 컴퓨터에 의해 판독 가능한 기록 매체에 기록될 수 있다. 컴퓨터에 의해 판독 가능한 기록 매체는, 예를 들어, 하드 디스크나 플로피 디스크와 같은 자기 디스크 저장 매체, 자기 테이프, 컴팩트 디스크(CD)나 디브이디(DVD)와 같은 광 기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 기록 매체(magneto-optical media) 및 롬(ROM), 램(RAM) 또는 플래시 메모리 등과 같은 반도체 저장 장치 등 컴퓨터 등의 호출에 따라 실행되는 특정 프로그램을 저장 가능한 다양한 종류의 하드웨어 장치를 포함할 수 있다.
이상 음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법의 여러 실시예에 대해 설명하였으나, 음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법은 오직 상술한 실시예에 한정되는 것은 아니다. 해당 기술 분야에서 통상의 지식을 가진 자가 상술한 실시예를 기초로 수정 및 변형하여 구현 가능한 다양한 실시예 역시 상술한 음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법의 일 실시예가 될 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성 요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나 다른 구성 요소 또는 균등물에 의하여 대치되거나 또는 치환되더라도 상술한 음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법과 동일하거나 유사한 결과를 획득할 수 있다.
100: 제1 단말 장치 101: 제1 음성 입력부
103: 제1 음성 출력부 105: 제1 통신부
110: 제1 프로세서 150: 제1 저장부
151: 주기억장치 153: 보조 기억 장치
160: 제1 주소록 데이터베이스 200: 제2 단말 장치
300: 차량 500: 통신 서비스 제공자 서버

Claims (24)

  1. 주소록 데이터베이스가 저장된 제1 단말 장치와 제2 단말 장치가 상호 통신 가능하게 연결되는 단계;
    상기 제1 단말 장치로부터 상기 제1 단말 장치의 제1 사용자 및 상기 제2 단말 장치의 제2 사용자 중 적어도 하나의 음성 신호를 획득하는 단계;
    상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호에 대한 음성 인식이 수행되는 단계;
    상기 음성 인식 결과를 기반으로 상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호로부터 제1 키워드를 획득하는 단계;
    상기 제1 키워드를 이용하여 상기 주소록 데이터베이스를 갱신하는 단계;를 포함하는 음성 인식을 이용한 주소록 관리 방법.
  2. 제1항에 있어서,
    상기 제1 키워드를 이용하여 상기 주소록 데이터베이스를 갱신하는 단계는,
    상기 제1 키워드에 대응하는 제2 키워드를 결정하는 단계; 및
    상기 제2 키워드를 상기 주소록 데이터베이스의 대응하는 개체에 부가하여 상기 주소록 데이터베이스를 갱신하는 단계;를 포함하는 음성 인식을 이용한 주소록 관리 방법.
  3. 제2항에 있어서,
    상기 제1 키워드에 대응하는 제2 키워드를 결정하는 단계는,
    상기 제2 키워드를 상기 제1 키워드와 동일하게 결정하는 단계;
    상기 제2 키워드를 상기 제1 키워드에 미리 정의된 기호를 부가하여 결정하는 단계; 및
    상기 제2 키워드를 상기 제1 키워드 중 일부를 이용하여 결정하는 단계; 중 적어도 하나를 포함하는 음성 인식을 이용한 주소록 관리 방법.
  4. 제2항에 있어서,
    상기 제1 키워드에 대응하는 제2 키워드는, 상기 제1 사용자 및 상기 제2 사용자 사이의 관계에 대한 정보를 포함하는 음성 인식을 이용한 주소록 관리 방법.
  5. 제2항에 있어서,
    상기 제2 단말 장치 및 상기 제2 사용자 중 적어도 하나에 대한 식별 정보를 획득하는 단계;를 더 포함하는 음성 인식을 이용한 주소록 관리 방법.
  6. 제2항에 있어서,
    상기 제1 키워드를 이용하여 상기 주소록 데이터베이스를 갱신하는 단계는,
    상기 제2 키워드에 대한 기대값을 연산하는 단계;를 포함하는 음성 인식을 이용한 주소록 관리 방법.
  7. 제6항에 있어서,
    상기 제1 키워드를 이용하여 상기 주소록 데이터베이스를 갱신하는 단계는,
    상기 기대값이 제1 기준 값보다 큰 경우, 상기 제2 키워드를 이용하여 상기 주소록 데이터베이스를 갱신하는 단계;
    상기 기대값이 상기 제1 기준 값 및 상기 제1 기준 값보다 상대적으로 작은 제2 기준 값 사이인 경우, 상기 제2 키워드를 임시적으로 저장하는 단계; 및
    상기 기대값이 상기 제2 기준 값보다 작은 경우, 상기 제2 키워드를 폐기하는 단계; 중 적어도 하나를 더 포함하는 음성 인식을 이용한 주소록 관리 방법.
  8. 제6항에 있어서,
    상기 음성 인식 결과를 기반으로 상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호로부터 제1 키워드를 획득하는 단계는,
    상기 음성 인식 결과에 따라 획득된 발화문을 학습 알고리즘을 이용하여 분석하는 단계;를 포함하되,
    상기 학습 알고리즘은 심층 신경망(DNN, Deep Neural Network), 콘볼루션 신경망(CNN, Convolutional Neural Network), 순환 신경망(RNN, Recurrent Neural Network), 심층 신뢰 신경망(DBN, Deep Belief Network) 및 심층 Q-네트워크(Deep Q-Networks) 중 적어도 하나를 포함하는 주소록 관리 방법.
  9. 제8항에 있어서,
    상기 기대 값은 학습 알고리즘의 수행에 따라 획득되는 확률 출력 값을 포함하는 주소록 관리 방법.
  10. 주소록 데이터베이스;
    제1 사용자의 음성 신호가 입력되는 음성 신호 입력부;
    단말 장치로부터 전송된 제2 사용자의 음성 신호를 수신하는 통신부; 및
    상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호에 대한 음성 인식을 수행하고, 음성 인식 결과를 기반으로 상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호로부터 제1 키워드를 획득하고, 상기 주소록 관리 키워드를 이용하여 상기 주소록 데이터베이스를 갱신하는 프로세서;를 포함하는 음성 인식을 이용한 주소록 관리 장치.
  11. 제10항에 있어서,
    상기 프로세서는, 상기 제1 키워드에 대응하는 제2 키워드를 결정하고, 상기 제2 키워드를 상기 주소록 데이터베이스의 대응하는 개체에 부가하여 상기 주소록 데이터베이스를 갱신하는 음성 인식을 이용한 주소록 관리 장치.
  12. 제11항에 있어서,
    상기 프로세서는, 상기 제2 키워드를 상기 제1 키워드와 동일하게 결정하거나, 상기 제2 키워드를 상기 제1 키워드에 미리 정의된 기호를 부가하여 결정하거나, 또는 상기 제2 키워드를 상기 제1 키워드 중 일부를 이용하여 결정하는 음성 인식을 이용한 주소록 관리 장치.
  13. 제10항에 있어서,
    상기 제1 키워드에 대응하는 제2 키워드는, 상기 제1 사용자 및 상기 제2 사용자 사이의 관계에 대한 정보를 포함하는 음성 인식을 이용한 주소록 관리 장치.
  14. 제10항에 있어서,
    상기 프로세서는, 상기 단말 장치 및 상기 제2 사용자 중 적어도 하나에 대한 식별 정보를 획득하는 음성 인식을 이용한 주소록 관리 장치.
  15. 제10항에 있어서,
    상기 프로세서는, 상기 제1 키워드에 대한 기대값을 연산하는 음성 인식을 이용한 주소록 관리 장치.
  16. 제15항에 있어서,
    상기 프로세서는, 상기 기대값이 제1 기준 값보다 큰 경우, 상기 제1 키워드를 이용하여 상기 주소록 데이터베이스를 갱신하거나, 상기 기대값이 상기 제1 기준 값 및 상기 제1 기준 값보다 상대적으로 작은 제2 기준 값 사이인 경우, 상기 제1 키워드를 임시적으로 저장하거나, 또는 상기 기대값이 상기 제2 기준 값보다 작은 경우, 상기 제1 키워드를 폐기하여 상기 주소록 데이터베이스를 갱신하는 음성 인식을 이용한 주소록 관리 장치.
  17. 제15항에 있어서,
    상기 프로세서는, 상기 음성 인식 결과에 따라 획득된 발화문을 학습 알고리즘을 이용하여 분석하여, 제1 키워드를 획득하되,
    상기 학습 알고리즘은 심층 신경망, 콘볼루션 신경망, 순환 신경망, 심층 신뢰 신경망 및 심층 Q-네트워크 중 적어도 하나를 포함하는 주소록 관리 장치.
  18. 제17항에 있어서,
    상기 기대 값은 상기 학습 알고리즘의 수행에 따라 획득되는 확률 출력 값을 포함하는 주소록 관리 장치.
  19. 제1 사용자의 음성 신호가 입력되는 음성 신호 입력부;
    제1 단말 장치와 통신 가능하게 연결되고, 상기 제1 사용자의 음성 신호를 상기 제1 단말 장치로 전송하거나, 또는 상기 제1 단말 장치로부터 제2 사용자의 음성 신호를 수신하는 통신부;
    상기 제1 단말 장치에 저장된 주소록 데이터베이스와 주기적으로 또는 임의의 시점에 동기화되는 차량용 주소록 데이터베이스; 및
    상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호에 대한 음성 인식을 수행하고, 음성 인식 결과를 기반으로 상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호로부터 제1 키워드를 획득하고, 상기 주소록 관리 키워드를 이용하여 상기 차량용 주소록 데이터베이스를 갱신하는 프로세서;를 포함하는 차량.
  20. 제19항에 있어서,
    상기 프로세서는, 상기 제1 키워드에 대응하는 제2 키워드를 결정하고, 상기 제2 키워드를 상기 주소록 데이터베이스의 대응하는 개체에 부가하여 상기 주소록 데이터베이스를 갱신하는 차량.
  21. 제20항에 있어서,
    상기 프로세서는, 상기 제2 키워드를 상기 제1 키워드와 동일하게 결정하거나, 상기 제2 키워드를 상기 제1 키워드에 미리 정의된 기호를 부가하여 결정하거나, 또는 상기 제2 키워드를 상기 제1 키워드 중 일부를 이용하여 결정하는 차량.
  22. 제19항에 있어서,
    상기 제1 키워드에 대응하는 제2 키워드는, 상기 제1 사용자 및 상기 제2 사용자 사이의 관계에 대한 정보를 포함하는 차량.
  23. 제19항에 있어서,
    상기 프로세서는, 상기 제1 키워드에 대한 기대값을 연산하고, 상기 기대값을 기준으로 상기 주소록 데이터베이스를 경신하거나 상기 제1 키워드를 임시적으로 저장하거나 또는 상기 상기 제1 키워드를 폐기하는 차량.
  24. 제1 주소록 데이터베이스가 마련되고, 제1 사용자의 음성 신호가 입력되는 제1 단말 장치;
    제2 주소록 데이터베이스가 마련되고, 제2 사용자의 음성 신호가 입력되고 상기 제1 단말 장치와 통신 가능하게 연결된 제2 단말 장치; 및
    상기 제1 사용자의 음성 신호 및 상기 제2 사용자의 음성 신호 중 적어도 하나를 획득하고, 상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호에 대한 음성 인식을 수행하고, 음성 인식 결과를 기반으로 상기 제1 사용자 및 상기 제2 사용자 중 적어도 하나의 음성 신호로부터 제1 키워드를 획득하고, 상기 주소록 관리 키워드를 이용하여 상기 제1 주소록 데이터베이스 및 상기 제2 주소록 데이터베이스 중 적어도 하나를 갱신하는 컴퓨팅 장치;를 포함하는 음성 인식을 이용한 주소록 관리 시스템.
KR1020170072236A 2017-06-09 2017-06-09 음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법 KR102394912B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020170072236A KR102394912B1 (ko) 2017-06-09 2017-06-09 음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법
US15/802,122 US10866948B2 (en) 2017-06-09 2017-11-02 Address book management apparatus using speech recognition, vehicle, system and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170072236A KR102394912B1 (ko) 2017-06-09 2017-06-09 음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법

Publications (2)

Publication Number Publication Date
KR20180134482A true KR20180134482A (ko) 2018-12-19
KR102394912B1 KR102394912B1 (ko) 2022-05-06

Family

ID=64564148

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170072236A KR102394912B1 (ko) 2017-06-09 2017-06-09 음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법

Country Status (2)

Country Link
US (1) US10866948B2 (ko)
KR (1) KR102394912B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210029595A (ko) * 2019-09-06 2021-03-16 주식회사 하이퍼커넥트 키워드 스폿팅 장치, 방법 및 컴퓨터 판독 가능한 기록매체

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112399943B (zh) * 2018-06-12 2022-12-30 西门子交通有限公司 用于记录与轨道车辆相关的信息的方法和设备
WO2020049687A1 (ja) * 2018-09-06 2020-03-12 日本電気株式会社 音声処理装置、音声処理方法、およびプログラム記録媒体
CN112272279B (zh) * 2020-10-23 2023-04-28 岭东核电有限公司 作业信息展示方法、装置、计算机设备和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050030906A (ko) * 2005-02-07 2005-03-31 한국정보통신대학교 산학협력단 집합적 음성인식 시스템 및 그 시스템에서의 음성인식 방법
US20120330993A1 (en) * 2011-06-21 2012-12-27 International Business Machines Corporation Contact recommendation system for a user communication

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6104989A (en) * 1998-07-29 2000-08-15 International Business Machines Corporation Real time detection of topical changes and topic identification via likelihood based methods
US7228335B2 (en) * 2002-02-19 2007-06-05 Goodcontacts Research Ltd. Method of automatically populating contact information fields for a new contract added to an electronic contact database
US7707039B2 (en) * 2004-02-15 2010-04-27 Exbiblio B.V. Automatic modification of web pages
US7567982B2 (en) * 2005-08-02 2009-07-28 Glynntech, Inc. Matrix-connected, artificially intelligent address book system
US7958151B2 (en) * 2005-08-02 2011-06-07 Constad Transfer, Llc Voice operated, matrix-connected, artificially intelligent address book system
KR100640813B1 (ko) 2005-08-25 2006-11-02 엘지전자 주식회사 음성 인식을 이용한 자동 폰 북 업데이트 이동통신 단말기및 방법
KR20080051953A (ko) 2006-12-07 2008-06-11 삼성전자주식회사 전화교환시스템에서 음성 데이터베이스 업데이트 방법 및장치
KR100768127B1 (ko) * 2007-04-10 2007-10-17 (주)올라웍스 가독성 데이터로부터 인간 관계를 추론하는 방법과 가독성데이터를 이용하여 디지털 데이터 내의 인물 식별을 통해태그를 부여하는 방법 및 시스템
US20090171979A1 (en) * 2007-12-28 2009-07-02 Humanbook, Inc. System and method for a web-based address book
KR20090032053A (ko) 2009-02-11 2009-03-31 이문섭 음성인식을 이용한 개인전화번호부 데이터베이스 구축방법과, 그를 이용한 자동 전화연결 서비스 방법 및 시스템
EP2438571A4 (en) * 2009-06-02 2014-04-30 Yahoo Inc AUTOMATICALLY ADDRESSED ADDRESS BOOK
US8914027B2 (en) * 2009-06-25 2014-12-16 Htc Corporation Method of initiating handover pre-preparation and related communication device
US20110082896A1 (en) * 2009-10-07 2011-04-07 At&T Intellectual Property I, L.P. Dynamically Updated Web-Enabled and Embedded Contact Address in Communication Devices
WO2011081946A2 (en) * 2009-12-14 2011-07-07 Alwayson Llc Electronic messaging technology
KR20110096329A (ko) 2010-02-22 2011-08-30 이문섭 음성인식을 이용한 개인전화번호부 데이터베이스 구축방법과, 그를 이용한 자동 전화연결 서비스 방법 및 시스템
US8880555B2 (en) * 2010-12-17 2014-11-04 Facebook, Inc. Ranking of address book contacts based on social proximity
EP2506540B1 (en) * 2011-03-28 2014-09-17 TeliaSonera AB Enhanced contact information
JP5799621B2 (ja) * 2011-07-11 2015-10-28 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
US20130110907A1 (en) * 2011-11-02 2013-05-02 Xerox Corporation Method and system for merging, correcting, and validating data
US20150310862A1 (en) * 2014-04-24 2015-10-29 Microsoft Corporation Deep learning for semantic parsing including semantic utterance classification
US9666204B2 (en) * 2014-04-30 2017-05-30 Qualcomm Incorporated Voice profile management and speech signal generation
KR102505347B1 (ko) * 2015-07-16 2023-03-03 삼성전자주식회사 사용자 관심 음성 알림 장치 및 방법
US10848591B2 (en) * 2017-04-25 2020-11-24 Amazon Technologies, Inc. Sender and recipient disambiguation
DK179745B1 (en) * 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
KR102332826B1 (ko) * 2017-05-30 2021-11-30 현대자동차주식회사 차량용 음성 인식 장치, 상기 차량용 음성 인식 장치를 포함하는 차량, 차량용 음성 인식 시스템 및 상기 차량용 음성 인식 장치의 제어 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050030906A (ko) * 2005-02-07 2005-03-31 한국정보통신대학교 산학협력단 집합적 음성인식 시스템 및 그 시스템에서의 음성인식 방법
US20120330993A1 (en) * 2011-06-21 2012-12-27 International Business Machines Corporation Contact recommendation system for a user communication

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210029595A (ko) * 2019-09-06 2021-03-16 주식회사 하이퍼커넥트 키워드 스폿팅 장치, 방법 및 컴퓨터 판독 가능한 기록매체

Also Published As

Publication number Publication date
KR102394912B1 (ko) 2022-05-06
US10866948B2 (en) 2020-12-15
US20180357269A1 (en) 2018-12-13

Similar Documents

Publication Publication Date Title
JP6945695B2 (ja) 発話分類器
CN106233374B (zh) 用于检测用户定义的关键字的关键字模型生成
CN108242236B (zh) 对话处理装置及其车辆和对话处理方法
US11564090B1 (en) Audio verification
EP3301671B1 (en) Determining hotword suitability
US9443527B1 (en) Speech recognition capability generation and control
US20190355352A1 (en) Voice and conversation recognition system
KR102097710B1 (ko) 대화 분리 장치 및 이에서의 대화 분리 방법
KR102394912B1 (ko) 음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법
JP2019507362A (ja) 外部データソースを用いた音声の再認識
KR20180075009A (ko) 음성 처리 장치, 이를 포함하는 차량 및 음성 처리 방법
JP6797338B2 (ja) 情報処理装置、情報処理方法及びプログラム
CN111684521A (zh) 用于说话者识别的处理语音信号方法及实现其的电子装置
EP2867890B1 (en) Meta-data inputs to front end processing for automatic speech recognition
KR102392992B1 (ko) 음성 인식 기능을 활성화시키는 호출 명령어 설정에 관한 사용자 인터페이싱 장치 및 방법

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant