KR20240035125A - 대화 상태 교정 방법 및 이를 위한 장치 - Google Patents

대화 상태 교정 방법 및 이를 위한 장치 Download PDF

Info

Publication number
KR20240035125A
KR20240035125A KR1020220114199A KR20220114199A KR20240035125A KR 20240035125 A KR20240035125 A KR 20240035125A KR 1020220114199 A KR1020220114199 A KR 1020220114199A KR 20220114199 A KR20220114199 A KR 20220114199A KR 20240035125 A KR20240035125 A KR 20240035125A
Authority
KR
South Korea
Prior art keywords
information
customer
answer
conversation
probability value
Prior art date
Application number
KR1020220114199A
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 KR1020220114199A priority Critical patent/KR20240035125A/ko
Publication of KR20240035125A publication Critical patent/KR20240035125A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3346Query execution using probabilistic model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0281Customer communication at a business location, e.g. providing product or service information, consulting
    • 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
    • G10L15/1822Parsing for meaning understanding

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Finance (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Probability & Statistics with Applications (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명은 대화 상태를 교정하기 위한 방법 및 이를 위한 장치에 관한 것으로서, 보다 구체적으로는 고객 문의에 기초하여 고객 의도에 관한 제1 정보, 주요 어휘에 관한 제2 정보, 시스템 액션(system action)에 관한 제3 정보를 획득하고, 상기 제1 정보, 상기 제2 정보, 상기 제3 정보 중 적어도 하나에 기초하여 상기 고객 문의에 대한 하나 이상의 추천 답변을 제공하는 것; 및 상기 고객 문의에 대한 상담사 답변이 상기 하나 이상의 추천 답변에 해당하지 않는 경우, 상기 상담사 답변에 기초하여 고객 의도에 관한 제4 정보, 주요 어휘에 관한 제5 정보, 시스템 액션에 관한 제6 정보 중 적어도 하나의 정보를 획득하고, 상기 획득한 적어도 하나의 정보에 기초하여 상기 제1 정보, 상기 제2 정보 중 적어도 하나와 관련된 확률 값을 교정하는 것을 포함하는 방법 및 이를 위한 장치에 관한 것이다. 본 발명에 따르면, 대화 시스템에서 상담사와 고객 간의 실제 대화와 어긋난 대화 상태를 실제 대화와 효과적으로 동기화할 수 있도록 대화 상태를 교정할 수 있다.

Description

대화 상태 교정 방법 및 이를 위한 장치 {METHOD FOR CORRECTING DIALOGUE STATE AND APPARATUS THEREFOR}
본 발명은 대화 시스템에 관한 것으로서, 보다 구체적으로 본 발명은 대화 시스템에서 대화 상태를 교정하기 위한 방법 및 이를 위한 장치에 관한 것이다.
많은 컨택 센터에서 상담사의 업무를 보조적으로 지원해 주는 인공 지능(Artificial Intelligence, AI) 어시스턴트(assistant) 기술을 도입하고 있다. AI 어시스턴트는 AI 기술에 기반하여 상담 진행 중 혹은 상담이 완료된 후의 후처리/분석 등 다양한 형태로 상담사의 업무를 효율화할 수 있으며, 상담 진행 중에 AI 어시스턴트는 실시간으로 현재 상담 과정에서 필요한 적절한 업무 지식을 제공하거나 상담사의 답변을 추천하여 업무를 도와줄 수 있다.
하지만, AI 어시스턴트가 추천한 답변이 적절하지 않거나 오류를 포함하고 있을 경우, 상담사는 AI 어시스턴트의 추천 답변을 무시하고 다른 적절한 답변을 할 수 있다. 이 경우, 대화 컨텍스트를 트레이싱(tracing)하던 AI 어시스턴트는 이전 턴(turn)의 추천 답변이 오류라는 사실을 인지하지 못한 상태에서, 그 답변이 그대로 고객에게 제공되었을 것이라는 가정 하에 지속적으로 고객의 다음 반응을 해석하게 된다. 상담사가 교정 혹은 대체한 답변의 컨텍스트가 유실된 상태에서 고객의 다음 요청을 해석할 경우 AI 어시스턴트는 여전히 올바르지 못한 답변을 추론하게 되며 한번 어긋난 컨텍스트를 올바르게 따라가지 못하고 지속적으로 잘못되고 엉뚱한 답변을 추천할 수 밖에 없다. 즉, 상담사 주도적인 대화를 도와주는 보조적인 수단으로서의 AI 어시스턴트는 대화 전체 흐름에 대한 주도권을 가질 수 없고 실제의 대화 흐름을 알 수 없어 한번 어긋난 오류 상태를 회복하기 어려운 단점과 한계가 있다.
이러한 단점과 한계 때문에 대부분의 컨택 센터에 도입된 AI 어시스턴트는 멀티턴(multi-turn)의 대화 컨텍스트까지 이해하고 도움을 주는 것이 아니라 현재의 단턴(single-turn) 발화에 대해서만 응답을 추천하는 정도로만 활용되는 단점과 한계가 있다.
공개특허공보 제10-2021-0038260호
본 발명의 목적은 대화 시스템에서 대화 상태를 효과적으로 교정할 수 있게 하는 방법 및 이를 위한 장치를 제공하는 데 있다.
보다 구체적으로, 본 발명의 목적은 대화 시스템에서 상담사와 고객 간의 실제 대화와 어긋난 대화 상태를 실제 대화와 효과적으로 동기화할 수 있도록 대화 상태를 교정하기 위한 방법 및 이를 위한 장치를 제공하는 데 있다.
본 발명의 다른 목적은 AI 컨택 센터의 AI 어시스턴트가 상담사와 고객 간의 대화를 효과적으로 보조할 수 있게 하는 방법 및 이를 위한 장치를 제공하는 데 있다.
본 발명에서 해결하고자 하는 기술적 과제는 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제는 본 명세서에 기재된 내용으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명의 제1 양상으로, 장치에서 수행되는 방법이 제공되며, 상기 방법은: 고객 문의에 기초하여 고객 의도에 관한 제1 정보, 주요 어휘에 관한 제2 정보, 시스템 액션(system action)에 관한 제3 정보를 획득하고, 상기 제1 정보, 상기 제2 정보, 상기 제3 정보 중 적어도 하나에 기초하여 상기 고객 문의에 대한 하나 이상의 추천 답변을 제공하는 것; 및 상기 고객 문의에 대한 상담사 답변이 상기 하나 이상의 추천 답변에 해당하지 않는 경우, 상기 상담사 답변에 기초하여 고객 의도에 관한 제4 정보, 주요 어휘에 관한 제5 정보, 시스템 액션에 관한 제6 정보 중 적어도 하나의 정보를 획득하고, 상기 획득한 적어도 하나의 정보에 기초하여 상기 제1 정보, 상기 제2 정보 중 적어도 하나와 관련된 확률 값을 교정하는 것을 포함할 수 있다.
본 발명의 제2 양상으로, 프로세서; 및 메모리를 포함하는 장치가 제공되며, 상기 메모리는 상기 프로세서에 의해 수행될 때 상기 장치가 특정 동작을 구현하도록 구성된 명령어를 포함하고, 상기 특정 동작은: 고객 문의에 기초하여 고객 의도에 관한 제1 정보, 주요 어휘에 관한 제2 정보, 시스템 액션(system action)에 관한 제3 정보를 획득하고, 상기 제1 정보, 상기 제2 정보, 상기 제3 정보 중 적어도 하나에 기초하여 상기 고객 문의에 대한 하나 이상의 추천 답변을 제공하는 것; 및 상기 고객 문의에 대한 상담사 답변이 상기 하나 이상의 추천 답변에 해당하지 않는 경우, 상기 상담사 답변에 기초하여 고객 의도에 관한 제4 정보, 주요 어휘에 관한 제5 정보, 시스템 액션에 관한 제6 정보 중 적어도 하나의 정보를 획득하고, 상기 획득한 적어도 하나의 정보에 기초하여 상기 제1 정보, 상기 제2 정보 중 적어도 하나와 관련된 확률 값을 교정하는 것을 포함할 수 있다.
본 발명의 제3 양상으로, 프로세서에 의해 실행될 때 상기 프로세서를 포함하는 장치로 하여금 특정 동작을 구현하도록 구성된 명령어들을 저장하고 있는 컴퓨터 판독가능한 저장 매체가 제공되며, 상기 특정 동작은: 고객 문의에 기초하여 고객 의도에 관한 제1 정보, 주요 어휘에 관한 제2 정보, 시스템 액션(system action)에 관한 제3 정보를 획득하고, 상기 제1 정보, 상기 제2 정보, 상기 제3 정보 중 적어도 하나에 기초하여 상기 고객 문의에 대한 하나 이상의 추천 답변을 제공하는 것; 및 상기 고객 문의에 대한 상담사 답변이 상기 하나 이상의 추천 답변에 해당하지 않는 경우, 상기 상담사 답변에 기초하여 고객 의도에 관한 제4 정보, 주요 어휘에 관한 제5 정보, 시스템 액션에 관한 제6 정보 중 적어도 하나의 정보를 획득하고, 상기 획득한 적어도 하나의 정보에 기초하여 상기 제1 정보, 상기 제2 정보 중 적어도 하나와 관련된 확률 값을 교정하는 것을 포함할 수 있다.
바람직하게는, 상기 방법 또는 상기 특정 동작은: 상기 상담사 답변이 상기 하나 이상의 추천 답변 중 최고 우선 순위가 아닌 답변에 해당하는 경우, 상기 최고 우선 순위가 아닌 답변에 기초하여 상기 제4 정보, 상기 제5 정보, 상기 제6 정보 중 적어도 하나의 정보를 획득하고, 상기 획득한 적어도 하나의 정보에 기초하여 상기 제1 정보, 상기 제2 정보 중 적어도 하나와 관련된 확률 값을 교정하는 것을 더 포함할 수 있다.
바람직하게는, 상기 상담사 답변이 상기 하나 이상의 추천 답변 중 최고 우선 순위 답변에 해당하는 경우, 상기 적어도 하나의 정보를 획득하는 것과 상기 적어도 하나와 관련된 확률 값을 교정하는 것은 생략될 수 있다.
바람직하게는, 상기 제1 정보, 상기 제2 정보, 상기 제3 정보를 획득하는 것과 상기 하나 이상의 추천 답변을 제공하는 것은 제1 대화 모델에 기초하여 수행될 수 있고, 상기 제4 정보, 상기 제5 정보, 상기 제6 정보 중 적어도 하나의 정보를 획득하는 것과 상기 적어도 하나와 관련된 확률 값을 교정하는 것은 제2 대화 모델에 기초하여 수행될 수 있다.
바람직하게는, 상기 적어도 하나와 관련된 확률 값을 교정하는 것은: 상기 시스템 액션에 관한 제6 정보가 상기 고객에게 특정 주요 어휘에 관한 정보를 요청하는 답변 정책을 나타내는 경우, 상기 특정 주요 어휘와 관련된 확률 값을 0으로 설정하는 것을 포함할 수 있다.
바람직하게는, 상기 적어도 하나와 관련된 확률 값을 교정하는 것은: 상기 시스템 액션에 관한 제6 정보가 상기 고객에게 특정 의도가 맞는지 확인을 요청하는 답변 정책을 나타내는 경우, 상기 특정 의도와 관련된 확률 값을 최대로 설정하는 것을 포함할 수 있다.
바람직하게는, 상기 적어도 하나와 관련된 확률 값을 교정하는 것은: 상기 시스템 액션에 관한 제6 정보가 상기 고객에게 특정 주요 어휘가 맞는지 확인을 요청하는 답변 정책을 나타내는 경우, 상기 특정 주요 어휘와 관련된 확률 값을 최대로 설정하는 것을 포함할 수 있다.
바람직하게는, 상기 적어도 하나와 관련된 확률 값을 교정하는 것은: 상기 시스템 액션에 관한 제6 정보가 상기 고객에게 유사한 확률 값을 갖는 의도 후보 중 선택을 요청하는 답변 정책을 나타내는 경우, 상기 유사한 확률 값을 갖는 의도 후보와 관련된 확률 값을 동일한 확률 값으로 설정하고 나머지 의도 후보와 관련된 확률 값을 0으로 설정하는 것을 포함할 수 있다.
바람직하게는, 상기 적어도 하나와 관련된 확률 값을 교정하는 것은: 상기 시스템 액션에 관한 제6 정보가 상기 고객에게 유사한 확률 값을 갖는 주요 어휘 후보 중 선택을 요청하는 답변 정책을 나타내는 경우, 상기 유사한 확률 값을 갖는 주요 어휘 후보와 관련된 확률 값을 동일한 확률 값으로 설정하고 나머지 주요 어휘 후보와 관련된 확률 값을 0으로 설정하는 것을 포함할 수 있다.
본 발명에 따르면, 대화 시스템에서 대화 상태를 효과적으로 교정할 수 있다.
보다 구체적으로, 본 발명에 따르면, 대화 시스템에서 상담사와 고객 간의 실제 대화와 어긋난 대화 상태를 실제 대화와 효과적으로 동기화할 수 있도록 대화 상태를 교정할 수 있다.
또한, 본 발명에 따르면, AI 컨택 센터의 AI 어시스턴트가 상담사와 고객 간의 대화를 효과적으로 보조할 수 있다.
본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과는 본 명세서에 기재된 내용으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
첨부 도면은 본 발명에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되고 상세한 설명과 함께 본 발명의 실시예와 기술적 특징을 설명한다.
도 1은 목적 지향 대화 시스템을 예시한다.
도 2는 본 발명의 제안 방법에 따른 컨택 센터의 기능적 블록도를 예시한다.
도 3은 상담 대화 어시스턴트 추천부에서 고객 문의 또는 발화에 대하여 N-베스트 답변을 추론하는 예를 예시한다.
도 4는 상담 대화 중재부에서 교정 정보를 획득하는 예를 예시한다.
도 5는 본 발명의 제안 방법의 순서도를 예시한다.
도 6은 본 발명의 제안 방법이 적용될 수 있는 장치를 예시한다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 이하에서는 특정 실시예들을 첨부된 도면을 기초로 상세히 설명하고자 한다.
이하의 실시예는 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, “포함” 또는 “구비”와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.
또한, 제1, 제2 등의 용어는 다양한 구성 요소들을 설명하는 데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되는 것은 아니며, 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다.
AI 컨택 센터(AI Contact Center, AICC)
본 명세서에서, 컨택 센터(contact center)는 전화나 인터넷 등과 같은 통신 수단을 통해 고객이나 민원인의 문의에 대한 답변을 제공하거나 문제 해결을 돕는 업무를 수행하도록 구성된 조직을 지칭한다. 컨택 센터는 회사와 같은 영리 단체 뿐만 아니라 정부나 지방 자치 단체와 같은 비영리 단체에서 널리 운영되고 있으며, 컨택 센터는 콜 센터(call center), 고객 센터(customer center), 상담 센터(counselling center) 등과 같은 다양한 이름과 형태로 운영되고 있다. 본 명세서에서, 컨택 센터는 이와 같이 다양한 이름과 형태로 운영되는 조직을 통칭하는 용어로 사용될 수 있다. AI 컨택 센터는 인공 지능(Artificial Intelligence, AI) 기술에 기반하여 운영되는 컨택 센터를 지칭한다.
본 명세서에서, 컨택 센터에서 전화나 인터넷 등과 같은 통신 수단을 통해 고객이나 민원인의 문의를 수신하여 문의에 대한 답변이나 해결책을 제공하는 업무를 수행하는 사람을 상담사라고 지칭한다. 상담사는 컨택 센터 에이전트(contact center agent) 또는 간략히 에이전트로 지칭될 수 있다. 또한, 편의상 본 명세서에서 컨택 센터에 문의하는 사람을 사용자 또는 고객이라고 지칭한다. 본 명세서에서, AI 어시스턴트(AI assistant)는 AI 기술에 기반하여 상담 진행 중 혹은 상담이 완료된 후의 후처리/분석 등 다양한 형태로 상담사의 업무를 보조하도록 구성된 컴퓨터 장치 또는 컴퓨터 장치에서 동작하도록 구성된 컴퓨터 프로그램 또는 기계 학습 모델을 지칭한다.
인공 지능(Artificial Intelligence, AI)
인공 지능은 수학적 모델에 기반하여 컴퓨터 장치에 인공적인 지능을 구현하는 것을 지칭하고, 기계 학습(machine learning)은 인공 지능의 일 분야로서 명시적인 프로그래밍 없이도 학습을 통해 컴퓨터 장치가 특정 문제를 해결할 수 있도록 하는 것을 지칭한다.
인공 신경망(artificial neural network)은 기계 학습에서 사용되는 모델로서, 시냅스의 결합으로 네트워크를 형성한 인공 뉴런(neuron)들로 구성되는 모델을 지칭한다. 인공 신경망은 신경망으로 약칭될 수 있다. 인공 신경망은 입력층(input layer), 출력층(output layer), 그리고 선택적으로 하나 이상의 은닉층(hidden layer)을 포함할 수 있다. 각 층은 하나 이상의 뉴런을 포함하고, 서로 다른 층(layer) 간의 뉴런과 뉴런은 시냅스를 통해 연결될 수 있다. 입력층의 뉴런은 학습에 사용되는 특징 벡터(feature vector)를 입력 신호로 가질 수 있고, 출력층의 뉴런은 시냅스를 통해 입력되는 입력 신호들, 시냅스의 가중치, 편향에 대한 활성 함수의 함수 값을 출력할 수 있다. 은닉층의 뉴런은 입력층 또는 이전 은닉층의 뉴런 신호와 시냅스의 가중치에 기반하여 연산된 값을 입력 신호로 가질 수 있으며 다음 은닉층 또는 출력층으로 신호를 제공한다.
모델 파라미터(model parameter)는 학습을 통해 결정되는 파라미터를 지칭하며 시냅스의 가중치와 뉴런의 편향 등을 포함할 수 있다. 하이퍼 파라미터(hyper parameter)는 기계 학습 알고리즘에서 학습 전에 설정되어야 하는 파라미터를 의미하며, 학습률(learning rate), 반복 횟수, 미니 배치 크기, 초기화 함수 등이 포함된다. 인공 신경망의 학습 목적은 손실 함수(loss function)를 최소화하는 모델 파라미터를 결정하는 것으로 볼 수 있다. 손실 함수는 인공 신경망의 학습 과정에서 최적의 모델 파라미터를 결정하기 위한 지표로 이용될 수 있다.
기계 학습은 학습 방식에 따라 지도 학습(supervised learning), 비지도 학습(unsupervised learning), 강화 학습(reinforcement learning)으로 분류할 수 있다. 지도 학습(supervised learning)은 학습 데이터에 대한 레이블(label)이 주어진 상태에서 인공 신경망을 학습시키는 방법을 의미하며, 레이블이란 학습 데이터가 인공 신경망에 입력되는 경우 인공 신경망이 추론해 내야 하는 정답(또는 결과 값)을 의미할 수 있다. 비지도 학습(unsupervised learning)은 학습 데이터에 대한 레이블이 주어지지 않는 상태에서 인공 신경망을 학습시키는 방법을 의미할 수 있다. 강화 학습(reinforcement learning)은 어떤 환경 안에서 정의된 에이전트(agent)가 각 상태에서 누적 보상을 최대화하는 행동 혹은 행동 순서를 선택하도록 학습시키는 학습 방법을 의미할 수 있다.
인공 신경망 중에서 복수의 은닉층을 포함하는 심층 신경망(deep neural network)으로 구현되는 기계 학습을 심층 학습(deep learning)으로 지칭할 수 있으며, 심층 학습은 기계 학습의 일 분야이다.
본 명세서에서 “학습” 또는 “기계 학습” 이라는 용어는 기계 학습 또는 심층 학습 뿐만 아니라 다른 인공 지능 알고리즘에 기반한 학습, 규칙 기반 학습(rule-based learning)을 포함할 수 있고, “AI” 또는 “학습 모델” 또는 “기계 학습 모델”은 기계 학습 또는 심층 학습에 기반하여 학습된 인공 신경망 모델 뿐만 아니라 다른 인공 지능 알고리즘에 기반하여 학습된 인공 지능 모델, 규칙 기반 학습 모델을 포함할 수 있다.
대화 시스템(Dialogue System)
대화 시스템은 사람과 기계가 대화를 나눌 수 있게 해주는 인공 지능 기반 시스템을 지칭한다. 대화 시스템은 (기계) 학습 모델 및/또는 언어 모델에 기초하여 구현될 수 있으며, 이에 기초하여 구현된 대화 시스템은 대화 모델이라고 지칭될 수 있다.
예를 들어, 대화 시스템은 텍스트(text) 또는 음성을 통해 사용자의 목적을 이해하고 사용자 목적을 수행하거나 적절한 답변을 제시할 수 있도록 구성된 목적 지향 대화 시스템(Task-Oriented Dialogue System)과 텍스트 또는 음성을 통해 자유로운 주제로 사용자와 대화를 이어갈 수 있도록 구성된 공개 도메인 대화 시스템(Open Domain Dialogue System)을 포함할 수 있다. 목적 지향 대화 시스템의 일 예로, 사용자 또는 고객의 문의를 처리하여 문의에 대한 적절한 답변을 제공하거나 상담사의 업무를 보조하여 추천 답변을 제공하도록 구성된 인공 지능 컨택 센터가 있다.
도 1은 목적 지향 대화 시스템(100)을 예시한다. 도 1은 목적 지향 대화 시스템의 이해를 돕기 위한 예시일 뿐이며 도 1의 일부 구성 요소가 생략되거나 도 1에 예시되지 않은 새로운 구성 요소가 추가되도록 수정/변형될 수 있다.
도 1을 참조하면, 목적 지향 대화 시스템(100)은 자연어 이해(Natural Language Understanding, NLU)(110), 대화 관리(Dialogue Management)(120), 자연어 생성(Natural Language Generation, NLG)(130)을 포함할 수 있다. 자연어 이해(110)는 자연어 표현을 기계가 이해할 수 있는 다른 표현으로 변환시키는 것을 지칭하며, 형태소 분석이나 구문 분석과 같은 자연어 처리(Natural Language Processing, NLP)보다 광의의 개념으로 단순히 단어나 문장의 형태를 기계가 인식하도록 하는 것이 아닌 문장의 의미를 인식하도록 하는 것을 지칭한다. 대화 관리(120)는 대화 상태 추적(dialogue state tracking)(122)과 대화 정책 결정(dialogue policy determination)(124)을 포함하며, 대화 상태 추적(122)은 가장 최근 대화 뿐만 아니라 대화에서 지금까지 표현된 슬롯 필러(slot-filler) 제약 사항(constraints) 전부를 포함하여 대화의 현재 상태를 유지하는 것을 지칭하고, 대화 정책 결정(124)은 대화 시스템이 다음에 무엇을 수행할지 또는 어떤 답변을 출력할지와 같은 시스템 액션(system action)과 관련된 답변 정책 또는 대화 정책을 결정하는 것을 말한다. 자연어 생성(NLG)(130)은 대화 상태 추적(122)에 의해 현재 유지되고 있는 대화 상태 및 대화 정책 결정(124)에 의해 결정된 정책에 따라 자연어를 생성하여 출력하는 것을 지칭한다.
기술적 문제
인공 지능(Artificial Intelligence, AI) 컨택 센터는 콜 센터로 대표되는 컨택 센터의 업무를 자동화하고 상담사의 업무를 대신하여 운용 비용과 부담을 획기적으로 줄일 수 있는 AI 기술을 기반으로 한다. 상담사의 업무를 완전히 대신하여 완결적으로 업무를 수행할 수 있는 보이스 봇(voice bot)은 운용 비용과 부담을 가장 절감할 수 있는 형태이지만, 기계와 대화하는 것에 대한 거부감을 가진 고객을 응대하거나 기존 시스템(legacy system)과의 단순 연동 등에 의해 처리하기 힘든 업무 유형 등에는 도입하기 어려울 수 있다.
이러한 이유로 인해 많은 컨택 센터에서 차선책으로서 상담사의 업무를 보조적으로 지원해 주는 AI 어시스턴트(assistant) 기술을 도입하고 있다. AI 어시스턴트는 AI 기술에 기반하여 상담 진행 중 혹은 상담이 완료된 후의 후처리/분석 등 다양한 형태로 상담사의 업무를 효율화할 수 있으며, 상담 진행 중에 AI 어시스턴트는 실시간으로 현재 상담 과정에서 필요한 적절한 업무 지식을 제공하거나 상담사의 답변을 추천하여 업무를 도와줄 수 있다.
상담사가 상담을 진행하는 동안 AI 어시스턴트가 적절한 최적의 답변을 추천하기 위해서는, 먼저 입력된 고객의 음성 데이터를 텍스트(text)로 변환하고, 변환된 텍스트로부터 자연어 처리 과정을 거쳐 의미를 해석하고, 고객의 상담 의도를 분류하고, 이렇게 분류한 고객의 의도에 따라 적절한 답변을 추론하는 과정(process)을 거치게 되며, 이러한 과정은 상담사를 완전히 대신하는 보이스 봇에서 수행되는 과정과 실질적으로 동일하다.
AI 어시스턴트가 상담사에게 추천한 답변이 상담사도 시간을 들여서 찾아야만 하거나 몰랐던 지식까지 지능적으로 포함한 적절한 응답이면, 추천된 답변을 상담사가 바로 선택하여 고객에게 제시할 수 있고 대화 컨텍스트(context)(또는 문맥 또는 맥락)가 보이스 봇 단독으로 대화를 이끌 경우와 동일하게 유지될 수 있어서 AI 어시스턴트가 다음 고객 문의에 대한 답변까지 지능적으로 추천할 수 있다.
하지만, AI 어시스턴트가 추천한 답변이 적절하지 않거나 오류를 포함하고 있을 경우, 상담사는 AI 어시스턴트의 추천 답변을 무시하고 다른 적절한 답변을 할 수 있다. 이 경우, 대화 컨텍스트를 트레이싱(tracing)하던 AI 어시스턴트는 이전 턴(turn)의 추천 답변이 오류라는 사실을 인지하지 못한 상태에서, 그 답변이 그대로 고객에게 제공되었을 것이라는 가정 하에 지속적으로 고객의 다음 반응을 해석하게 된다. 상담사가 교정 혹은 대체한 답변의 컨텍스트가 유실된 상태에서 고객의 다음 요청을 해석할 경우 AI 어시스턴트는 여전히 올바르지 못한 답변을 추론하게 되며 한번 어긋난 컨텍스트를 올바르게 따라가지 못하고 지속적으로 잘못되고 엉뚱한 답변을 추천할 수 밖에 없다.
즉, 자기 완결적으로 고객을 응대하는 보이스 봇의 경우, 완벽하지 않고 때로 잘못된 반응을 하더라도 대화 컨텍스트를 일관되게 스스로 관리함으로써 잘못된 응대에 대한 고객의 반응을 보고 스스로 컨텍스트를 교정할 수 있는 기회를 가질 수 있지만, 상담사 주도적인 대화를 도와주는 보조적인 수단으로서의 AI 어시스턴트는 대화 전체 흐름에 대한 주도권을 가질 수 없고 실제의 대화 흐름을 알 수 없어 한번 어긋난 오류 상태를 회복하기 어려운 단점과 한계가 있다.
이러한 단점과 한계 때문에 대부분의 컨택 센터에 도입된 AI 어시스턴트는 멀티턴(multi-turn)의 대화 컨텍스트(또는 문맥 또는 맥락)까지 이해하고 도움을 주는 것이 아니라 현재의 단턴(single-turn) 발화에 대해서만 응답을 추천하는 정도로만 활용이 되는 단점과 한계가 있다.
본 발명의 제안 방법
상기 설명한 기술적 문제를 해결하기 위해, 본 발명은 상담사와 고객의 실제 대화를 관찰하고 어시스턴트 추천 모델과 어긋난 대화 컨텍스트(context)(또는 문맥 또는 맥락)를 맞추어 주는 중재자 모델을 도입함으로써 멀티턴(multi-turn)의 전체 상담의 대화 컨텍스트를 이해하면서 효과적으로 상담사를 보조하고 대화 상태를 효과적으로 교정할 수 있는 방법을 제안한다.
본 명세서에서, 어시스턴트 추천 모델은 고객 문의 또는 고객 문의에 대응하는 자연어 문장을 입력받아 처리하여 고객 문의에 대한 추천 답변을 출력하도록 구성된 대화 시스템 또는 대화 모델을 지칭하고, 중재자 모델은 상담사 답변 또는 상담사 답변에 대응하는 자연어 문장을 입력받아 처리하여 어시스턴트 추천 모델의 대화 컨텍스트를 교정하기 위한 교정 정보를 출력하도록 구성된 대화 시스템 또는 대화 모델을 지칭한다.
중재자 모델은 어시스턴트 추천 모델의 추천 답변과 실제 상담사가 고객에게 제공한 답변을 모니터링 또는 관찰하도록 구성될 수 있다. 예를 들어, 중재자 모델은 상담사가 어시스턴트 추천 모델의 추천 답변 중 몇 번째 우선 순위의 답변을 선택했는지 혹은 추천 답변에 없는 전혀 새로운 답변을 했는지를 판별할 수 있다.
상담사가 최고 우선 순위의 추천 답변을 선택하지 않고 n번째 우선 순위의 답변을 선택한 경우, 중재자 모델은 어시스턴트 추천 모델에서 n번째 추천 답변과 함께 제공한 시스템 액션과 주요 어휘(Name Entity, NE) 정보를 기반으로 대화 상태를 교정할 교정 정보를 추론하고 어시스턴트 추천 모델로 전달한다.
상담사가 어시스턴트 추천 모델의 추천 답변을 활용하지 않고 새로운 답변을 고객에게 제공한 경우, 중재자 모델은 상담사 답변의 자연어 문장을 해석하여 시스템 액션과 주요 어휘(NE) 정보를 추론해 내며, 추론한 정보에 기반하여 교정 정보를 추론하고 어시스턴트 추천 모델로 전달한다.
어시스턴트 추천 모델은 중재자 모델이 전달한 교정 정보에 기반하여 상담 대화 컨텍스트를 실제 상담과 동일하게 업데이트 또는 교정한 후 고객의 다음 발화를 해석하여 답변 추천을 지속하게 된다.
본 발명의 제안 방법에 따르면, 이렇게 중재자 모델을 활용함으로써 AI 어시스턴트도 단턴의 단순 발화 기준이 아닌 상담 대화 전체에 걸쳐 대화 컨텍스트를 실제 대화에 맞추어 추적(tracking)하면서 최적 추천 답변을 계속 제공할 수 있으므로 컨택 센터 업무의 효율성을 더욱 향상시킬 수 있다.
도 2는 본 발명의 제안 방법에 따른 컨택 센터의 기능적 블록도를 예시한다.
도 2를 참조하면, 고객(202)과 상담사(206) 간의 대화는 음성/영상 데이터 및/또는 텍스트 데이터 형태로 인터넷 또는 전화망(Public Switched Telephone Network, PSTN) 또는 이동 통신망을 통해 진행될 수 있다. 컨택 센터는 네트워크 장치(204)를 포함할 수 있으며, 네트워크 장치(204)는 인터넷 또는 전화망 또는 이동 통신망에 연결되어 고객(202)과 상담사(206) 간의 대화와 관련된 음성/영상 데이터 및/또는 텍스트 데이터를 송수신할 수 있다.
본 발명의 제안 방법에 따른 컨택 센터는 네트워크 장치(204) 외에 대화 추천 선택 사용자 인터페이스(User Interface, UI) 제공부(210), 상담 대화 어시스턴트 추천부(220), 상담 대화 중재부(230)를 포함할 수 있다. 본 발명을 제한하지 않는 예로, 대화 추천 선택 UI 제공부(210)는 상담사의 단말 장치(600)에 구현될 수 있고, 상담 대화 어시스턴트 추천부(220)와 상담 대화 중재부(230)는 컨택 센터의 서버 장치(600)에 구현될 수 있다. 다른 예로, 대화 추천 선택 UI 제공부(210), 상담 대화 어시스턴트 추천부(220), 상담 대화 중재부(230)는 상담사의 단말 장치(600)에 구현될 수도 있다. 상담 대화 어시스턴트 추천부(220)와 상담 대화 중재부(230)가 별도의 장치에 구현되는 것도 가능하다.
상담 대화 어시스턴트 추천부(220)는 어시스턴트 추천 모델을 포함할 수 있고, 네트워크 장치(204)로부터 고객(202)의 문의 또는 발화와 관련된 음성/영상 데이터 및/또는 텍스트 데이터를 수신하고 어시스턴트 추천 모델에 기반하여 고객(202)의 문의 또는 발화를 자연어 분석하여 의도를 해석하고(222), 문맥 및 대화 컨텍스트를 추적(tracking)하고, 이에 기반하여 현재 상담 대화에서 가장 적절한 대화 정책과 답변을 추론하고(224), 추론한 답변을 상담사(206)가 활용할 수 있도록 대화 추천 선택 UI 제공부(210)에 제공한다. 상담 대화 어시스턴트 추천부(220)는 고객 문의에 대해 적합한 순으로 우선 순위를 부여하여 하나 이상의 추천 답변을 추론할 수 있으며, 이와 같이 추론된 하나 이상의 추천 답변은 N-베스트(N-Best) 답변이라고 지칭될 수 있다.
대화 추천 선택 UI 제공부(210)는 상담 대화가 진행되는 동안 상담 대화 어시스턴트 추천부(220)가 추천하는 N-베스트 답변을 사용자 인터페이스(UI)를 통해 출력하고, 상담사(206)가 실시간으로 조회 및 선택하여 답변으로 바로 출력(212)하여 고객(202)에게 전송하거나, 원하는 답변이 없을 경우 상담사(206)가 직접 별도의 답변을 생성/입력할 수 있는 기능(214)을 제공한다.
챗봇(chat bot)과 같이 텍스트 기반의 상담 대화가 진행되는 경우, 상담사(206)가 N-베스트 답변 중 단순 선택 또는 문장 입력을 통해 답변을 출력 또는 제공할 수도 있다. 전화를 통한 음성 인터페이스로 상담 대화가 진행되는 경우, N-베스트 답변 중 상담사(206)가 선택한 답변 혹은 N-베스트 답변에 없는 새로운 답변을 상담사(206)가 음성으로 제공할 수 있는데, 이 때 상담 대화 중재부(230)가 상담사(206)의 답변을 분석할 수 있도록 상담사(206)의 답변은 고객 문의와 구분하여 음성 인식을 통해 텍스트로 변환되어 제공될 수 있다. 혹은, 상담사(206)가 선택한 텍스트나 입력한 텍스트를 텍스트 음성 변환(Text-To-Speech, TTS)를 통해 음성 데이터로 변환하여 고객(202)에게 제공하는 방식도 가능하다.
도 3은 상담 대화 어시스턴트 추천부(220)에서 고객 문의 또는 발화에 대하여 N-베스트 답변을 추론하는 예를 예시한다. 도 3의 예는 본 발명의 이해를 돕기 위한 예시일 뿐이며 본 발명을 제한하는 것이 아니다.
도 3을 참조하면, 고객(202)이 “요금 알려 주세요”라고 문의하였다고 가정하면, 상담 대화 어시스턴트 추천부(220)는 네트워크 장치(204)를 통해 고객(202)의 문의와 관련된 데이터(예, 음성/영상 데이터, 텍스트 데이터)를 수신하고, 어시스턴트 추천 모델에 기반하여 해당 데이터를 처리하여 고객 의도에 관한 정보(302), 시스템 액션(system action)에 관한 정보(304), 주요 어휘에 관한 정보(306)를 획득할 수 있다. 상담 대화 어시스턴트 추천부(220)는 고객 의도에 관한 정보(302), 시스템 액션(system action)에 관한 정보(304), 주요 어휘에 관한 정보(306)에 기초하여 N-베스트 답변(308)을 구성할 수 있으며, 이들 정보(302, 304, 306)는 통상적으로 목적 지향 대화 시스템(Task-Oriented Dialogue System)에서 고객(202)의 자연어 문장을 이해하고 답변을 제공하기 위해 분석하고 결정하는 데 이용되며, 이들 정보(302, 304, 306)를 추론하는 기술이나 방법, 모델은 특정 기술로만 한정되지 않고 다양한 기술, 방법, 모델이 사용될 수 있다.
고객 의도는 고객(202)이 문의를 통해 궁극적으로 목적하는 의도를 지칭하며, 고객 의도에 관한 정보(302)는 고객 의도를 분류하여 나타내는 정보이다. 고객 의도에 관한 정보(302)는 고객 의도 분류를 위한 기계 학습 모델을 학습하여 학습된 기계 학습 모델에 기반하여 추론 또는 획득할 수 있다. 고객 의도는 편의상 Goal로 표현될 수 있다. 도 3의 예에서, “요금 알려 주세요”라는 고객 문의로부터 실시간 요금 조회, 청구 요금 조회 등과 같은 고객 의도가 추론 또는 획득될 수 있으며, 보다 구체적인 예로 고객 의도에 관한 정보(302)는 ‘실시간요금조회’, ‘청구요금조회’, ‘납부방법변경’ 등과 같은 값을 가질 수 있다.
주요 어휘(Named Entity)는 고객(202)의 문의 또는 발화 중에서 고객 의도를 파악하거나 서비스 진행을 위해 핵심이 되는 주요 어휘를 지칭하며, 주요 어휘에 관한 정보(306)는 주요 어휘 유형 및/또는 어휘 후보에 관한 정보를 포함할 수 있다. 예를 들어, 주요 어휘가 “이번 달”인 경우, 주요 어휘 유형은 Month로 결정될 수 있고, 주요 어휘에 관한 정보(306)는 주요 어휘 유형에 관한 정보(예, NE1=Month) 및/또는 어휘 후보에 관한 정보(예, Month=이번달)를 포함할 수 있다. 다른 예로, 주요 어휘가 “카드 결제”인 경우, 주요 어휘 유형은 PayType으로 결정될 수 있고, 주요 어휘에 관한 정보(306)는 주요 어휘 유형에 관한 정보(예, NE1=PayType) 및/또는 어휘 후보에 관한 정보(예, PayType=카드결제)를 포함할 수 있다. 주요 어휘는 개체명과 같은 다른 용어로 지칭될 수도 있다. 주요 어휘(Named Entity)를 추출하고 인식하는 방식은 예를 들어 미리 정의된 사전에 기반한 방식, 심층 학습(deep learning)을 통해 앞뒤 문맥과 패턴 등에 기반하여 인식하는 방식, 또는 두 가지를 결합하여 하이브리드(hybrid)하게 인식하는 방식 등 다양한 기술과 모델을 포함할 수 있다. 도 3의 예에서, 주요 어휘 유형은 LOB 또는 Month로 추출 또는 결정될 수 있고, Month의 경우 이번 달 요금 조회를 문의하기 위한 어휘 후보로 ‘이번달’이 설정될 수 있다.
시스템 액션(system action)은 고객 의도와 주요 어휘를 인지한 후 현재 대화 상태에서 대화 시스템이 취할 답변 정책을 나타내며, 시스템 액션에 관한 정보(304)는 대화 시스템이 취할 답변 정책을 지시하는 정보이다. 시스템 액션은 편의상 SysAct로 표현될 수 있다. 예를 들어, 시스템 액션에 관한 정보(304)는 Specify, Confirm, Select, Operate 등의 값을 가질 수 있다. 구체적인 예로, Specify는 고객 문의를 처리하기 위해 확인하거나 필요한 정보를 고객(202)에게 요청하는 경우에 설정될 수 있으며, 예를 들어 고객(202)에게 특정 주요 어휘(Name Entity)에 관한 정보를 요청하는 답변 정책을 나타낼 수 있다. Confirm은 고객(202)의 말을 인지했으나 확실히 하기 위해 확인을 요청하는 경우에 설정될 수 있으며, 예를 들어 고객 의도를 확인하기 위한 ConfirmGoal과 주요 어휘(Named Entity)를 확인하기 위한 ConfirmNE를 포함할 수 있다. ConfirmGoal은 고객(202)에게 특정 의도가 맞는지 확인을 요청하는 답변 정책을 나타낼 수 있고, ConfirmNE는 고객(202)에게 특정 주요 어휘가 맞는지 확인을 요청하는 답변 정책을 나타낼 수 있다. Select는 유사한 확률의 후보 중 선택을 요청하는 경우에 설정될 수 있으며, 예를 들어 고객 의도를 선택하기 위한 SelectGoal과 주요 어휘의 값을 선택하기 위한 SelectNE를 포함할 수 있다. SelectGoal은 고객(202)에게 유사한 확률 값을 갖는 복수의 의도 중에서 선택을 요청하는 답변 정책을 나타낼 수 있고, SelectNE는 고객(202)에게 유사한 확률 값을 갖는 복수의 주요 어휘 중에서 선택을 요청하는 답변 정책을 나타낼 수 있다. Operate는 고객 의도와 업무 처리에 필요한 모든 정보가 인지되어 고객 문의에 대한 서비스 실행 및 업무 처리를 바로 수행하는 경우에 설정될 수 있다. 이러한 대화 정책은 최종 대화의 성공율을 높이고 목적을 이루기까지의 오고 가는 말의 수를 줄이도록 강화 학습 등과 같은 다양한 인공 지능 모델 학습을 통해 최적의 정책을 선택하도록 훈련이 가능하다.
도 3의 예에서, 시스템 액션에 관한 정보(304)는 Specify[NE1]으로 결정될 수 있으며, 이 경우 고객(202)에게 특정 주요 어휘(예, NE1=LOB)에 대한 정보를 요청하는 답변 정책을 지시할 수 있다. 혹은, 시스템 액션에 관한 정보(304)는 ConfirmNE[NE1]으로 결정될 수 있으며, 이 경우 고객(202)에게 특정 주요 어휘(예, NE1=Month, Month=이번달)가 맞는지 확인을 요청하는 답변 정책을 지시할 수 있다. 혹은, 시스템 액션에 관한 정보(304)는 SelectGoal[TopGoal1, TopGoal2]로 결정될 수 있으며, 이 경우 고객(202)에게 유사한 확률 값을 갖는 복수의 의도 후보(예, ‘실시간요금조회’, ‘청구요금조회’) 중에서 선택을 요청하는 답변 정책을 지시할 수 있다.
도 3의 예에서, 상담 대화 어시스턴트 추천부(220)는 고객 의도에 관한 정보(302), 시스템 액션(system action)에 관한 정보(304), 주요 어휘에 관한 정보(306)에 기초하여 하나 이상의 시스템 답변(308)을 자연어 문장 형태로 생성할 수 있다. 시스템 답변(308)은 편의상 SysResponse로 표현될 수 있다. 예를 들어, 시스템 답변(308)은 미리 정해진 답변 패턴에 기반하여 생성하는 방법과, 언어 모델 등에 기반하여 완전히 새로운 자연어 문장으로 생성해 내도록 학습된 인공 지능(AI) 모델을 통해 생성될 수 있다. 하나 이상의 시스템 답변(308)은 우선 순위를 부여하여 리스트(list) 또는 테이블(table) 형태로 구성될 수 있으며, 우선 순위는 AI 모델에 의해 결정될 수 있다. 하나 이상의 시스템 답변(308)은 고객 문의에 대한 추천 답변으로서 대화 추천 선택 UI 제공부(210)로 제공될 수 있다.
다시 도 2를 참조하면, 상담 대화 중재부(230)는 중재자 모델을 포함할 수 있고, 중재자 모델에 기반하여 실제 상담과 어시스턴트 추천 모델의 대화 컨텍스트를 동기화시킬 수 있도록 관찰 및 중재하는 역할을 수행할 수 있다. 상담 대화 어시스턴트 추천부(220)가 고객(202)의 문의 또는 발화를 분석하여 고객 의도에 관한 정보(302), 시스템 액션(system action)에 관한 정보(304), 주요 어휘에 관한 정보(306)를 추출 또는 획득하는 반면, 상담 대화 중재부(230)는 상담사(206)가 고객(202)에게 제공한 답변을 분석하여 고객 의도에 관한 정보(미도시), 시스템 액션(system action)에 관한 정보(412), 주요 어휘에 관한 정보(414)를 역으로 추론해 내는 기계 학습 모델을 학습시키고 이용할 수 있다. 예를 들어, 상담사(206)가 “고객님, 청구 요금 조회를 원하시는 게 맞으신가요?” 라고 답변했다면, 이 답변은 고객 의도를 최종 확인하기 위해 물어보는 답변 유형이며, 확인하고자 하는 고객 의도는 ‘청구요금조회’ 임을 추론하도록 시스템 액션 자체를 분류하는 기계 학습 모델을 별도로 학습하여 이용할 수 있다.
상담 대화 중재부(230)는 이렇게 중재자 모델에 기반하여 추론된 정보를 이용하여 상담 대화 어시스턴트 추천부(220)에게 전달할 교정 내용을 결정하고, 이를 ‘교정 정보’로 추출 또는 획득할 수 있다. 예를 들어, 어시스턴트 추천 모델이 확률적인 신뢰도에 기반하여 동작하는 대화 모델인 경우, 상담 대화 중재부(230)는 확률 분포를 최적으로 교정할 수 있도록 하는 교정 정보를 추출 또는 획득할 수 있다(236).
예를 들어, 상담 대화 중재부(230)는 다음과 같이 동작할 수 있다.
(1) 상담 대화 중재부(230)는 상담사(206)가 고객(202)에게 최종 제공하는 답변과 N-베스트 답변 중 대화 추천 선택 UI 제공부(210)에서 출력/선택(212)되는 답변을 모니터링하고 분석한다(232).
(2) 대화 추천 선택 UI 제공부(210)에서 제공하는 N-베스트 답변 중 1-베스트 답변을 상담사(206)가 선택하여 출력 또는 제공했을 경우(212), 상담 대화 중재부(230)는 대화 컨텍스트를 중재할 필요가 없다고 판단하고 해당 턴에 대해 아무런 액션(action)을 수행하지 않는다. 1-베스트 답변은 N-베스트 답변 중에서 가장 우선 순위가 높은 답변을 지칭한다.
(3) 대화 추천 선택 UI 제공부(210)에서 제공하는 N-베스트 답변 중 1-베스트 답변이 아닌 하위 우선 순위의 답변을 상담사(206)가 선택하여 출력 또는 제공했을 경우(212), 상담 대화 중재부(230)는 선택된 답변에 기초하여 교정 정보를 추론 또는 획득한다(236).
(4) 대화 추천 선택 UI 제공부(210)에서 제공하는 N-베스트 답변이 아닌 새로운 답변을 상담사(206)가 신규로 생성/입력(214)하여 출력 또는 제공했을 경우, 상담 대화 중재부(230)는 상담사 답변의 문장을 자연어 처리 과정을 거쳐서 언어 해석을 하고(234), 고객 의도, 시스템 액션, 주요 어휘(Named Entity) 정보를 추론해 낸다.
이 때, 상담사 답변을 해석하는 모델(예, 중재자 모델)은 고객의 요청 발화를 해석하는 모델(예, 어시스턴트 추천 모델)과 달리 시스템 즉 상담사가 어떤 정책으로 무엇을 말하는지 혹은 어떤 정보를 요청하는 대응을 한 것인지를 해석하게 되며, 이는 규칙/심층 학습 기반 멀티태스크 학습 등 다양한 형태의 학습 모델로 구성될 수 있다. 이 학습 모델을 통해 추출 및 추론되는 정보는 고객 의도(Goal)에 관한 정보(미도시), 시스템 액션(SysAct)에 관한 정보(412), 주요 어휘(Named Entity)에 관한 정보(414) 등을 포함할 수 있으며, 상담사 답변 자체는 시스템 답변(SysResponse)(308)으로 매핑(mapping)될 수 있다.
(5) 상담사 답변을 언어 처리한 후(234), 상담 대화 중재부(230)는 실제 대화와 상담 대화 어시스턴트 추천부(220)의 대화 컨텍스트를 동기화하기 위한 교정 정보를 추론 또는 획득할 수 있다(236).
도 4는 상담 대화 중재부(230)에서 교정 정보를 획득하는 예를 예시한다. 상담 대화 중재부(230)는 대화 추천 선택 UI 제공부(210)를 통해 상담 대화 어시스턴트 추천부(220)가 제공한 추천 답변 중 상담사(206)가 선택하여 고객(202)에게 제공한 답변(402)을 수신하고 상담사 답변(402)에 기초하여 고객 의도에 관한 정보(미도시), 시스템 액션에 관한 정보(412), 주요 어휘에 관한 정보(414)를 추론 또는 획득할 수 있다(236).
도 4를 참조하면, 상담사(206)가 Specify 유형(412)의 답변(402)을 했다면, 고객(202)에게 요청한 주요 어휘(예, NE1)(414)가 지금까지의 대화를 통해 정확히 인지되지 않아서 요청하는 것이므로, 상담 대화 중재부(230)는 상담사(206)가 요청한 주요 어휘(예, NE1=ne1)와 관련된 확률 값을 모두 초기화(예, 0으로 설정)하는 교정 정보(416)를 추출 또는 획득할 수 있다. 이렇게 획득한 교정 정보(416)에 기초하여, 기존 대화에서 잘못된 인식으로 인해 일부 확률 값을 가지게 된 주요 어휘(예, NE1)(414)가 다음 고객(202)의 문의 또는 발화를 인식하고 해석하여 대화를 진행하는 데 방해되지 않도록 어시스턴트 추천 모델을 교정할 수 있다.
예를 들어, 상담사(206)가 “등록할 카드 종류를 말씀해 주세요”라고 답변(402)했다면, 시스템 액션에 관한 정보(412)는 Specify[CardType]으로 추론 또는 결정될 수 있고, 상담 대화 중재부(230)는 CardType 유형의 모든 어휘 후보(예, 신한카드, 국민카드, BC카드 등)와 관련된 확률 값을 초기화(예, 0으로 설정)하는 교정 정보(416)를 획득할 수 있다.
도 4의 예에서, 상담사(206)가 ConfirmNE 유형(412)의 답변(402)을 했다면, 상담사(206)가 업무 처리를 위해 필요한 주요 어휘를 인지하기는 하였으나 명확하게 하기 위해 최종 확인하는 것으로 볼 수 있고, 이후 고객의 예/아니오 유형의 명확한 답변을 받아 대화를 처리하기 위해 확인을 요청하는 주요 어휘(예, NE1=ne1, ne1=value1)와 관련된 확률 값이 최대가 될 수 있도록 조정하는 교정 정보(416)를 획득할 수 있다.
예를 들어, 상담사(206)가 “고객님, 명확히 듣지 못했는데, 등록할 카드 종류가 BC 카드가 맞으신가요?”라고 답변(402)했다면, 시스템 액션에 관한 정보(412)는 ConfirmNE[NE1]으로 추론 또는 결정될 수 있고 주요 어휘에 관한 정보(414)는 NE1=CardType, CardType=BC카드로 추론 또는 결정될 수 있다. 지금까지 카드 종류의 여러 값들과 관련된 확률 값의 분포가 신한카드=0.7, 국민카드=0.2, BC카드=0.1의 분포를 가지고 있다고 가정하면, 음성 인식 오류나 다른 요인에 의해 상담 대화 어시스턴트 추천부(220)가 카드 종류를 잘못 인식하고 있다는 의미이다. 또한, 이 상태에서 고객(202)이 “네, 맞아요”라는 다음 답변을 하게 되면, 교정을 거치지 않은 상담 대화 어시스턴트 추천부(220)는 가장 높은 확률 값을 갖는 ‘신한카드’에 대해 고객(202)이 최종 확인했다고 인지하여 잘못된 업무 처리를 할 수 있다. 본 발명의 제안 방법에 따르면, 상담사(206)가 명확히 확인 요청한 값인 ‘BC카드’가 최대 확률 값을 가질 수 있도록 상담 대화 중재부(230)가 교정 정보(416)를 획득하여 상담 대화 어시스턴트 추천부(220)로 전달함으로써 이러한 문제를 방지할 수 있다. 일 예로, 현재 가장 높은 확률 값을 가지는 신한카드의 확률 값과 BC카드의 확률 값을 서로 바꾸는 방법, ‘BC카드’만 일정 확률 값으로 설정하고 그 외의 확률 값은 모두 0으로 설정하는 방법 등 다양한 정책 규칙이 적용될 수 있다.
만일 상담사(206)가 ConfirmGoal 유형(412)의 답변(402)을 했다면, 상담사(206)가 고객 의도를 인지하기는 하였으나 명확하게 하기 위해 최종 확인하는 것으로 볼 수 있고, 이후 고객의 예/아니오 유형의 명확한 답변을 받아 대화를 처리하기 위해 확인을 요청하는 고객 의도와 관련된 확률 값이 최대가 될 수 있도록 ConfirmNE 유형과 유사하게 조정하는 교정 정보를 획득할 수 있다.
예를 들어, 상담사(206)가 “고객님, 청구 요금 조회를 원하시는 게 맞으신가요?”라고 답변(402)했다면, 고객 의도에 관한 정보(미도시)는 TopGoal2=청구요금조회로 추론 또는 결정될 수 있고 시스템 액션에 관한 정보(412)는 ConfirmGoal[TopGoal2]로 추론 또는 결정될 수 있다. 고객 의도에 관한 정보(미도시), 시스템 액션에 관한 정보(412)에 기반하여, 상담 대화 중재부(230)는 고객(202)에게 확인 요청한 의도(예, TopGoal2=청구요금조회)와 관련된 확률 값을 최대로 조정하는 교정 정보를 획득할 수 있다.
만일 상담사(206)가 SelectGoal 유형(412)의 답변(402)을 했다면, 이는 상담사(206)가 보기에도 구분이 어려운 의도 간 선택을 명시적으로 고객에게 요청하는 것으로 볼 수 있다. 이 경우엔 선택 요청한 의도들에 대해서는 동일한 일정 확률 값을 부여하고(예, 균일 분포(uniform distribution)로 설정), 나머지 의도들에 대해서는 확률 값을 0으로 설정하는 교정 정보를 획득함으로써, 상담 대화 어시스턴트 추천부(220)가 고객(202)의 다음 답변에서 선택하는 의도를 인지하고 정확하게 대화를 처리할 수 있도록 대화 상태 교정이 가능하다.
예를 들어, 상담사(206)가 “실시간 요금과 청구 요금 중 원하는 내용을 선택해 주세요”라고 답변한 경우, 고객(202)에게 선택을 요청한 의도 후보(예, TopGoal1=‘실시간요금조회’, TopGoal2=‘청구요금조회’)와 관련된 확률 값을 각각 0.5로 설정하고, 나머지 의도(예, ‘납부방법변경’ 등)와 관련된 확률 값은 모두 0으로 설정하는 교정 정보를 획득할 수 있다.
다시 도 2를 참조하면, 상담 대화 중재부(230)는 교정 정보를 상담 대화 어시스턴트 추천부(220)로 제공하며, 상담 대화 어시스턴트 추천부(220)는 상담 대화 어시스턴트 추천부(220)로부터 수신된 교정 정보에 기초하여 어시스턴트 추천 모델의 대화 상태를 교정할 수 있다(226). 예를 들어, 상담 대화 어시스턴트 추천부(220)는 교정 정보에 기초하여 고객 의도, 주요 어휘와 관련된 확률 값을 교정 또는 업데이트(update)하여 실제 상담과 대화 컨텍스트를 동기화할 수 있다. 그런 다음, 상담 대화 어시스턴트 추천부(220)는 실제 상담과 동기화된 대화 컨텍스트에 기초하여 고객(202)의 다음 문의 또는 발화를 해석하고 추천 답변을 추론 또는 획득하는 과정을 계속할 수 있다.
도 5는 본 발명의 제안 방법의 순서도를 예시한다.
도 5의 예는 장치(600)에서 수행될 수 있으며, 장치(600)는 상담 대화 어시스턴트 추천부(220)와 상담 대화 중재부(230) 중 적어도 하나의 동작을 구현하도록 구성될 수 있다. 및/또는, 장치(600)는 어시스턴트 추천 모델과 중재자 모델 중 적어도 하나를 구현하도록 구성될 수 있다. 예를 들어, 장치(600)는 AI 컨택 센터를 위한 서버 장치 또는 상담사(206)를 위한 단말 장치를 포함할 수 있다.
도 5를 참조하면, 장치(600)는 고객 문의를 입력 받아 고객 문의에 대한 하나 이상의 추천 답변(예, N-베스트 답변)을 제공할 수 있다(S502). 구체적으로, 장치(600)는 고객 문의(예, 자연어 문장)에 기초하여 고객 의도에 관한 정보(302), 주요 어휘에 관한 정보(306), 시스템 액션에 관한 정보(304)를 획득하고, 획득한 고객 의도에 관한 정보(302), 주요 어휘에 관한 정보(306), 시스템 액션에 관한 정보(304) 중 적어도 하나에 기초하여 고객 문의에 대한 하나 이상의 추천 답변을 획득하고 상담사의 단말 장치(예, 대화 추천 선택 UI 제공부(210))로 제공할 수 있다. 장치(600)는 어시스턴트 추천 모델을 구현하도록 구성될 수 있으며, 어시스턴트 추천 모델에 기초하여 고객 문의로부터 고객 의도에 관한 정보(302), 주요 어휘에 관한 정보(306), 시스템 액션에 관한 정보(304)를 획득할 수 있다. 설명의 편의를 위해, 본 명세서에서 어시스턴트 추천 모델은 제1 대화 모델로 지칭될 수 있고, 고객 의도에 관한 정보(302), 주요 어휘에 관한 정보(306), 시스템 액션에 관한 정보(304)는 각각 제1 정보, 제2 정보, 제3 정보로 지칭될 수 있다.
일 예로, 장치(600)는 인터넷 또는 전화망(PSTN) 또는 이동 통신망을 통해 네트워크 장치(204)로부터 음성/영상 데이터 및/또는 텍스트 데이터 형태로 고객 문의를 수신하고, 해당 데이터를 처리하여 고객 문의에 대응하는 자연어 문장을 획득할 수 있으며, 획득한 자연어 문장에 기초하여 (어시스턴트 추천 모델을 이용하여) 고객 의도에 관한 정보(302), 주요 어휘에 관한 정보(306), 시스템 액션에 관한 정보(304)를 획득할 수 있다. 혹은, 네트워크 장치(204) 혹은 다른 장치(미도시)에서 음성/영상 데이터 및/또는 텍스트 데이터 형태의 고객 문의를 처리하여 자연어 문장을 획득한 다음 장치(600)로 전송할 수도 있다. 이외에도 본 발명의 제안 방법에서 장치(600)는 다양한 방식으로 고객 문의에 대응하는 자연어 문장을 획득하고 이에 기초하여 고객 의도에 관한 정보(302), 주요 어휘에 관한 정보(306), 시스템 액션에 관한 정보(304)를 획득할 수 있다.
장치(600)는 네트워크 장치(204) 또는 상담사(206)의 단말 장치(예, 대화 추천 선택 UI 제공부(210))를 통해 상담사 답변(402)을 수신 및 모니터링/분석하고, 만일 상담사 답변(402)이 S502에서 제공한 하나 이상의 추천 답변에 해당하지 않는 경우(S504), 상담사 답변(402)에 기초하여 현재 대화 상태를 교정할 수 있다(S506). 예를 들어, 장치(600)는 상담사 답변(402)에 기초하여 고객 의도에 관한 정보(미도시), 주요 어휘에 관한 정보(414), 시스템 액션에 관한 정보(412)를 추론 또는 획득하고, 획득한 고객 의도에 관한 정보(미도시), 주요 어휘에 관한 정보(414), 시스템 액션에 관한 정보(412)에 기초하여 고객 의도에 관한 정보(302), 주요 어휘에 관한 정보(306) 중 적어도 하나와 관련된 확률 값을 교정할 수 있다(예, 도 4 및 관련 설명 참조). 설명의 편의를 위해, 본 명세서에서 중재자 모델은 제2 대화 모델로 지칭될 수 있고, 고객 의도에 관한 정보(미도시), 주요 어휘에 관한 정보(414), 시스템 액션에 관한 정보(412)는 각각 제4 정보, 제5 정보, 제6 정보로 지칭될 수 있다.
보다 구체적인 예로, S506에서 대화 상태를 교정하는 것은 교정 정보에 기초하여 수행될 수 있다. 장치(600)는 상담 대화 중재부(230)를 통해 고객 의도에 관한 제4 정보(미도시), 주요 어휘에 관한 제5 정보(414), 시스템 액션에 관한 제6 정보(412)에 기초하여 교정 정보(416)를 획득하고 상담 대화 어시스턴트 추천부(220)로 제공하며, 상담 대화 어시스턴트 추천부(220)는 교정 정보(416)에 기초하여 고객 의도에 관한 제1 정보(302), 주요 어휘에 관한 제2 정보(304)와 관련된 확률 값을 교정할 수 있다. 장치(600)는 중재자 모델을 구현하도록 구성될 수 있으며, 중재자 모델에 기초하여 상담사 답변(402)으로부터 제4 정보(미도시), 제5 정보(414), 제6 정보(412)를 획득하고 교정 정보(416)를 추론 또는 획득할 수 있다.
만일 상담사 답변(402)이 S502에서 제공한 하나 이상의 추천 답변 중 최고 우선 순위가 아닌 하위 순위 답변에 해당하는 경우(S508), 장치(600)는 상담사(206)가 선택한 하위 순위 답변에 기초하여 현재 대화 상태를 교정할 수 있다(S510). 예를 들어, 장치(600)는 상담사(206)가 선택한 하위 순위 답변에 기초하여 고객 의도에 관한 제4 정보(미도시), 주요 어휘에 관한 제5 정보(414), 시스템 액션에 관한 제6 정보(412) 중 적어도 하나의 정보를 추론 또는 획득하고, 획득한 적어도 하나의 정보에 기초하여 제1 정보(302), 제2 정보(306) 중 적어도 하나와 관련된 확률 값을 교정할 수 있다(예, 도 4 및 관련 설명 참조).
S510에서 대화 상태를 교정하는 것은 교정 정보에 기초하여 수행될 수 있다. 장치(600)는 상담 대화 중재부(230)를 통해 제4 정보(미도시), 제5 정보(414), 제6 정보(412)에 기초하여 교정 정보(416)를 획득하고 상담 대화 어시스턴트 추천부(220)로 제공하며, 상담 대화 어시스턴트 추천부(220)는 교정 정보(416)에 기초하여 제1 정보(302), 제2 정보(304) 중 적어도 하나와 관련된 확률 값을 교정할 수 있다. S506에서와 마찬가지로, 장치(600)는 중재자 모델에 기초하여 상담사(206)가 선택한 하위 순위 답변으로부터 제4 정보(미도시), 제5 정보(414), 제6 정보(412)를 획득하고 교정 정보(416)를 추론 또는 획득할 수 있다.
만일 상담사 답변(402)이 S502에서 제공한 하나 이상의 추천 답변 중 최고 우선 순위 답변에 해당하는 경우(S512), 장치(600)는 대화 상태를 교정하는 것을 생략할 수 있다(S514). 구체적으로, 장치(600)는 고객 의도에 관한 제4 정보(미도시), 주요 어휘에 관한 제5 정보(414), 시스템 액션에 관한 제6 정보(412) 중 적어도 하나의 정보를 추론 또는 획득하는 것과 제1 정보(302), 제2 정보(306) 중 적어도 하나와 관련된 확률 값을 교정하는 것을 생략할 수 있다.
도 4를 참조하여 설명한 바와 같이, 교정 정보(416)는 시스템 액션에 관한 제6 정보(412)에 기초하여 획득될 수 있으며, 장치(600)는 교정 정보(416)에 기초하여 특정 주요 어휘 또는 특정 의도와 관련된 확률 값을 교정할 수 있다(예, 도 4 및 관련 설명 참조).
일 예로, 장치(600)가 제1 정보(302), 제2 정보(304) 중 적어도 하나와 관련된 확률 값을 교정하는 것(S506, S510)은, 제6 정보(412)가 고객(202)에게 특정 주요 어휘에 관한 정보를 요청하는 답변 정책(예, Specify[NE1])을 나타내는 경우, 특정 주요 어휘와 관련된 확률 값을 0으로 설정하는 것을 포함할 수 있다.
일 예로, 장치(600)가 제1 정보(302), 제2 정보(304) 중 적어도 하나와 관련된 확률 값을 교정하는 것(S506, S510)은, 제6 정보(412)가 고객(202)에게 특정 의도가 맞는지 확인을 요청하는 답변 정책(예, ConfirmGoal)을 나타내는 경우, 특정 의도(예, TopGoal2)와 관련된 확률 값을 최대로 설정하는 것을 포함할 수 있다.
일 예로, 장치(600)가 제1 정보(302), 제2 정보(304) 중 적어도 하나와 관련된 확률 값을 교정하는 것(S506, S510)은, 제6 정보(412)가 고객(202)에게 특정 주요 어휘가 맞는지 확인을 요청하는 답변 정책(예, ConfirmNE[NE1])을 나타내는 경우, 특정 주요 어휘(예, NE1=ne1, ne1=value1)와 관련된 확률 값을 최대로 설정하는 것을 포함할 수 있다.
일 예로, 장치(600)가 제1 정보(302), 제2 정보(304) 중 적어도 하나와 관련된 확률 값을 교정하는 것(S506, S510)은, 제6 정보(412)가 고객(202)에게 유사한 확률 값을 갖는 의도 후보(예, TopGoal1, TopGoal2) 중 선택을 요청하는 답변 정책(예, SelectGoal[TopGoal1, TopGoal2])을 나타내는 경우, 유사한 확률 값을 갖는 의도 후보(예, TopGoal1, TopGoal2)와 관련된 확률 값을 동일한 확률 값(예, 1/n, 이 예에서는 1/2)으로 설정하고 나머지 의도 후보와 관련된 확률 값을 0으로 설정하는 것을 포함할 수 있다.
일 예로, 장치(600)가 제1 정보(302), 제2 정보(304) 중 적어도 하나와 관련된 확률 값을 교정하는 것(S506, S510)은, 제6 정보(412)가 고객(202)에게 유사한 확률 값을 갖는 주요 어휘 후보(예, NE1, NE2) 중 선택을 요청하는 답변 정책(예, SelectNE[NE1, NE2])을 나타내는 경우, 유사한 확률 값을 갖는 주요 어휘 후보(예, NE1, NE2)와 관련된 확률 값을 동일한 확률 값(예, 1/n, 이 예에서는 1/2)으로 설정하고 나머지 주요 어휘 후보와 관련된 확률 값을 0으로 설정하는 것을 포함할 수 있다.
본 발명의 제안 방법이 적용될 수 있는 장치
도 6은 본 발명의 제안 방법이 적용될 수 있는 장치(600)를 예시한다.
도 6을 참조하면, 장치(600)는 본 발명의 제안 방법을 구현하도록 구성될 수 있다. 일 예로, 장치(600)는 상담 대화 어시스턴트 추천부(220)와 상담 대화 중재부(230) 중 적어도 하나의 동작을 구현하도록 구성될 수 있다. 및/또는, 장치(600)는 어시스턴트 추천 모델과 중재자 모델 중 적어도 하나를 구현하도록 구성될 수 있다. 또는, 장치(600)는 대화 추천 선택 UI 제공부(210)와 상담 대화 어시스턴트 추천부(220)와 상담 대화 중재부(230) 중 적어도 하나의 동작을 구현하도록 구성될 수 있다. 예를 들어, 장치(600)는 AI 컨택 센터를 위한 서버 장치 또는 상담사(206)를 위한 단말 장치를 포함할 수 있다.
예를 들어, 본 발명의 제안 방법이 적용될 수 있는 장치(600)는 리피터, 허브, 브리지, 스위치, 라우터, 게이트웨이 등과 같은 네트워크 장치, 데스크톱 컴퓨터, 워크스테이션 등과 같은 컴퓨터 장치, 스마트폰 등과 같은 이동 단말, 랩톱 컴퓨터 등과 같은 휴대용 기기, 디지털 TV 등과 같은 가전 제품, 자동차 등과 같은 이동 수단 등을 포함할 수 있다. 다른 예로, 본 발명이 적용될 수 있는 장치(600)는 SoC(System On Chip) 형태로 구현된 ASIC(Application Specific Integrated Circuit)의 일부로 포함될 수 있다.
메모리(604)는 프로세서(602)의 처리 및 제어를 위한 프로그램 및/또는 명령어들을 저장할 수 있고, 본 발명에서 사용되는 데이터와 정보, 본 발명에 따른 데이터 및 정보 처리를 위해 필요한 제어 정보, 데이터 및 정보 처리 과정에서 발생하는 임시 데이터 등을 저장할 수 있다. 메모리(604)는 ROM(Read Only Memory), RAM(Random Access Memory), EPROM(Erasable Programmable Read Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), 플래쉬(flash) 메모리, SRAM(Static RAM), HDD(Hard Disk Drive), SSD(Solid State Drive) 등과 같은 저장 장치로서 구현될 수 있다.
프로세서(602)는 장치(600) 내 각 모듈의 동작을 제어한다. 특히, 프로세서(602)는 본 발명의 제안 방법을 수행하기 위한 각종 제어 기능을 수행할 수 있다. 프로세서(602)는 컨트롤러(controller), 마이크로 컨트롤러(microcontroller), 마이크로 프로세서(microprocessor), 마이크로 컴퓨터(microcomputer) 등으로도 불릴 수 있다. 본 발명의 제안 방법은 하드웨어(hardware) 또는 펌웨어(firmware), 소프트웨어, 또는 이들의 결합에 의해 구현될 수 있다. 하드웨어를 이용하여 본 발명을 구현하는 경우에는, 본 발명을 수행하도록 구성된 ASIC(application specific integrated circuit) 또는 DSP(digital signal processor), DSPD(digital signal processing device), PLD(programmable logic device), FPGA(field programmable gate array) 등이 프로세서(602)에 구비될 수 있다. 한편, 펌웨어나 소프트웨어를 이용하여 본 발명의 제안 방법을 구현하는 경우에는 펌웨어나 소프트웨어는 본 발명의 제안 방법을 구현하는 데 필요한 기능 또는 동작들을 수행하는 모듈, 절차 또는 함수 등과 관련된 명령어(instruction)들을 포함할 수 있으며, 명령어들은 메모리(604)에 저장되거나 메모리(604)와 별도로 컴퓨터 판독가능한 기록 매체(미도시)에 저장되어 프로세서(602)에 의해 실행될 때 장치(600)가 본 발명의 제안 방법을 구현하도록 구성될 수 있다.
또한, 장치(600)는 네트워크 인터페이스 모듈(network interface module, NIM)(606)을 포함할 수 있다. 네트워크 인터페이스 모듈(606)은 프로세서(602)와 동작시 연결(operatively connected)되며, 프로세서(602)는 네트워크 인터페이스 모듈(606)을 제어하여 무선/유선 네트워크를 통해 정보 및/또는 데이터, 신호, 메시지 등을 나르는 무선/유선 신호를 전송 또는 수신할 수 있다. 네트워크 인터페이스 모듈(606)은 예를 들어 IEEE 802 계열, 3GPP LTE(-A), 3GPP 5G 등과 같은 다양한 통신 규격을 지원하며, 해당 통신 규격에 따라 제어 정보 및/또는 데이터 신호를 송수신할 수 있다. 네트워크 인터페이스 모듈(606)은 필요에 따라 장치(600) 밖에 구현될 수도 있다.
이상에서 설명된 실시예들은 본 발명의 구성 요소들과 특징들이 소정 형태로 결합된 것들이다. 각 구성 요소 또는 특징은 별도의 명시적 언급이 없는 한 선택적인 것으로 고려되어야 한다. 각 구성 요소 또는 특징은 다른 구성 요소나 특징과 결합되지 않은 형태로 실시될 수 있다. 또한, 일부 구성 요소들 및/또는 특징들을 결합하여 본 발명의 실시예를 구성하는 것도 가능하다. 본 발명의 실시예들에서 설명되는 동작들의 순서는 변경될 수 있다. 어느 실시예의 일부 구성이나 특징은 다른 실시예에 포함될 수 있고, 또는 다른 실시예의 대응하는 구성 또는 특징과 교체될 수 있다. 특허청구범위에서 명시적인 인용 관계가 있지 않은 청구항들을 결합하여 실시예를 구성하거나 출원 후의 보정에 의해 새로운 청구항으로 포함시킬 수 있음은 자명하다.
본 발명은 AI 컨택 센터를 위한 서버 장치, 단말 장치, 네트워크 장치 등과 같은 다양한 장치에 적용될 수 있다.
100: 목적 지향 대화 시스템 110: 자연어 이해
120: 대화 관리 122: 대화 상태 추적
124: 대화 정책 결정 130: 자연어 생성
202: 고객 또는 사용자 204: 네트워크 장치
206: 상담사 210: 대화 추천 선택 UI 제공부
212: 추천 답변 리스트 선택/출력
214: 신규 답변 생성/입력
220: 상담 대화 어시스턴트 추천부
222: 고객 발화 및 의도 해석
224: 대화 정책/답변 추론
226: 대화 상태 교정
230: 상담 대화 중재부
232: 상담사 답변 모니터링/분석
234: 상담사 답변 언어 처리
236: 교정 정보 획득
302: 고객 의도에 관한 정보 304: 시스템 액션에 관한 정보
306: 주요 어휘에 관한 정보 308: 시스템 답변
402: 상담사 답변 412: 시스템 액션에 관한 정보
414: 주요 어휘에 관한 정보 416: 교정 정보
600: 장치 602: 프로세서
604: 메모리 606: 네트워크 인터페이스 모듈

Claims (11)

  1. 장치에서 수행되는 방법으로서,
    고객 문의에 기초하여 고객 의도에 관한 제1 정보, 주요 어휘에 관한 제2 정보, 시스템 액션(system action)에 관한 제3 정보를 획득하고, 상기 제1 정보, 상기 제2 정보, 상기 제3 정보 중 적어도 하나에 기초하여 상기 고객 문의에 대한 하나 이상의 추천 답변을 제공하는 것; 및
    상기 고객 문의에 대한 상담사 답변이 상기 하나 이상의 추천 답변에 해당하지 않는 경우, 상기 상담사 답변에 기초하여 고객 의도에 관한 제4 정보, 주요 어휘에 관한 제5 정보, 시스템 액션에 관한 제6 정보 중 적어도 하나의 정보를 획득하고, 상기 획득한 적어도 하나의 정보에 기초하여 상기 제1 정보, 상기 제2 정보 중 적어도 하나와 관련된 확률 값을 교정하는 것을 포함하는, 방법.
  2. 청구항 1에 있어서,
    상기 상담사 답변이 상기 하나 이상의 추천 답변 중 최고 우선 순위가 아닌 답변에 해당하는 경우, 상기 최고 우선 순위가 아닌 답변에 기초하여 상기 제4 정보, 상기 제5 정보, 상기 제6 정보 중 적어도 하나의 정보를 획득하고, 상기 획득한 적어도 하나의 정보에 기초하여 상기 제1 정보, 상기 제2 정보 중 적어도 하나와 관련된 확률 값을 교정하는 것을 더 포함하는, 방법.
  3. 청구항 1에 있어서,
    상기 상담사 답변이 상기 하나 이상의 추천 답변 중 최고 우선 순위 답변에 해당하는 경우, 상기 적어도 하나의 정보를 획득하는 것과 상기 적어도 하나와 관련된 확률 값을 교정하는 것은 생략되는, 방법.
  4. 청구항 1에 있어서,
    상기 제1 정보, 상기 제2 정보, 상기 제3 정보를 획득하는 것과 상기 하나 이상의 추천 답변을 제공하는 것은 제1 대화 모델에 기초하여 수행되고,
    상기 제4 정보, 상기 제5 정보, 상기 제6 정보 중 적어도 하나의 정보를 획득하는 것과 상기 적어도 하나와 관련된 확률 값을 교정하는 것은 제2 대화 모델에 기초하여 수행되는, 방법.
  5. 청구항 1에 있어서,
    상기 적어도 하나와 관련된 확률 값을 교정하는 것은:
    상기 시스템 액션에 관한 제6 정보가 상기 고객에게 특정 주요 어휘에 관한 정보를 요청하는 답변 정책을 나타내는 경우, 상기 특정 주요 어휘와 관련된 확률 값을 0으로 설정하는 것을 포함하는, 방법.
  6. 청구항 1에 있어서,
    상기 적어도 하나와 관련된 확률 값을 교정하는 것은:
    상기 시스템 액션에 관한 제6 정보가 상기 고객에게 특정 의도가 맞는지 확인을 요청하는 답변 정책을 나타내는 경우, 상기 특정 의도와 관련된 확률 값을 최대로 설정하는 것을 포함하는, 방법.
  7. 청구항 1에 있어서,
    상기 적어도 하나와 관련된 확률 값을 교정하는 것은:
    상기 시스템 액션에 관한 제6 정보가 상기 고객에게 특정 주요 어휘가 맞는지 확인을 요청하는 답변 정책을 나타내는 경우, 상기 특정 주요 어휘와 관련된 확률 값을 최대로 설정하는 것을 포함하는, 방법.
  8. 청구항 1에 있어서,
    상기 적어도 하나와 관련된 확률 값을 교정하는 것은:
    상기 시스템 액션에 관한 제6 정보가 상기 고객에게 유사한 확률 값을 갖는 의도 후보 중 선택을 요청하는 답변 정책을 나타내는 경우, 상기 유사한 확률 값을 갖는 의도 후보와 관련된 확률 값을 동일한 확률 값으로 설정하고 나머지 의도 후보와 관련된 확률 값을 0으로 설정하는 것을 포함하는, 방법.
  9. 청구항 1에 있어서,
    상기 적어도 하나와 관련된 확률 값을 교정하는 것은:
    상기 시스템 액션에 관한 제6 정보가 상기 고객에게 유사한 확률 값을 갖는 주요 어휘 후보 중 선택을 요청하는 답변 정책을 나타내는 경우, 상기 유사한 확률 값을 갖는 주요 어휘 후보와 관련된 확률 값을 동일한 확률 값으로 설정하고 나머지 주요 어휘 후보와 관련된 확률 값을 0으로 설정하는 것을 포함하는, 방법.
  10. 프로세서; 및 메모리를 포함하는 장치에 있어서,
    상기 메모리는 상기 프로세서에 의해 수행될 때 상기 장치가 특정 동작을 구현하도록 구성된 명령어를 포함하고, 상기 특정 동작은:
    고객 문의에 기초하여 고객 의도에 관한 제1 정보, 주요 어휘에 관한 제2 정보, 시스템 액션(system action)에 관한 제3 정보를 획득하고, 상기 제1 정보, 상기 제2 정보, 상기 제3 정보 중 적어도 하나에 기초하여 상기 고객 문의에 대한 하나 이상의 추천 답변을 제공하는 것; 및
    상기 고객 문의에 대한 상담사 답변이 상기 하나 이상의 추천 답변에 해당하지 않는 경우, 상기 상담사 답변에 기초하여 고객 의도에 관한 제4 정보, 주요 어휘에 관한 제5 정보, 시스템 액션에 관한 제6 정보 중 적어도 하나의 정보를 획득하고, 상기 획득한 적어도 하나의 정보에 기초하여 상기 제1 정보, 상기 제2 정보 중 적어도 하나와 관련된 확률 값을 교정하는 것을 포함하는, 장치.
  11. 프로세서에 의해 실행될 때 상기 프로세서를 포함하는 장치로 하여금 특정 동작을 구현하도록 구성된 명령어들을 저장하고 있는 컴퓨터 판독가능한 저장 매체에 있어서, 상기 특정 동작은:
    고객 문의에 기초하여 고객 의도에 관한 제1 정보, 주요 어휘에 관한 제2 정보, 시스템 액션(system action)에 관한 제3 정보를 획득하고, 상기 제1 정보, 상기 제2 정보, 상기 제3 정보 중 적어도 하나에 기초하여 상기 고객 문의에 대한 하나 이상의 추천 답변을 제공하는 것; 및
    상기 고객 문의에 대한 상담사 답변이 상기 하나 이상의 추천 답변에 해당하지 않는 경우, 상기 상담사 답변에 기초하여 고객 의도에 관한 제4 정보, 주요 어휘에 관한 제5 정보, 시스템 액션에 관한 제6 정보 중 적어도 하나의 정보를 획득하고, 상기 획득한 적어도 하나의 정보에 기초하여 상기 제1 정보, 상기 제2 정보 중 적어도 하나와 관련된 확률 값을 교정하는 것을 포함하는, 컴퓨터 판독가능한 저장 매체.
KR1020220114199A 2022-09-08 2022-09-08 대화 상태 교정 방법 및 이를 위한 장치 KR20240035125A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220114199A KR20240035125A (ko) 2022-09-08 2022-09-08 대화 상태 교정 방법 및 이를 위한 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220114199A KR20240035125A (ko) 2022-09-08 2022-09-08 대화 상태 교정 방법 및 이를 위한 장치

Publications (1)

Publication Number Publication Date
KR20240035125A true KR20240035125A (ko) 2024-03-15

Family

ID=90272813

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220114199A KR20240035125A (ko) 2022-09-08 2022-09-08 대화 상태 교정 방법 및 이를 위한 장치

Country Status (1)

Country Link
KR (1) KR20240035125A (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210038260A (ko) 2019-09-30 2021-04-07 광운대학교 산학협력단 머신 러닝 기반 한국 고객 서비스 어시스턴트 보조 시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210038260A (ko) 2019-09-30 2021-04-07 광운대학교 산학협력단 머신 러닝 기반 한국 고객 서비스 어시스턴트 보조 시스템

Similar Documents

Publication Publication Date Title
US11956187B2 (en) Natural language processing for information extraction
US20220036899A1 (en) Multi-modal conversational agent platform
KR102625761B1 (ko) 사용자 프로그래머블 자동화 어시스턴트
JP7392004B2 (ja) 通信システムインテント分析のためのシステムおよび方法
US10776580B2 (en) Method for providing dialogue service with chatbot assisted by human agents
CN114830614B (zh) 用于双向通信系统的功能即服务云聊天机器人
US11991126B2 (en) Systems and methods for aggregating user sessions for interactive transactions using virtual assistants
US11461420B2 (en) Referring expression generation
KR20190117840A (ko) 대화 이해 ai 시스템에 의한 고객 상담의 제공 중에 사람 상담 직원으로 하여금 해당 고객을 위한 이후 상담을 진행하도록 전환하는 방법 및 컴퓨터 판독가능 기록 매체
US20240146844A1 (en) Methods, apparatuses, and systems for dynamically navigating interactive communication systems
CN117157643A (zh) 利用知识蒸馏的ai nlp编码器的域自适应
KR20240035125A (ko) 대화 상태 교정 방법 및 이를 위한 장치
WO2022270603A1 (en) A system and method for delivering domain or use-case switch suggestion for an ongoing conversation
Griol et al. A proposal to manage multi-task dialogs in conversational interfaces
Böhm et al. An Analysis of the Applicability of VoiceXML as Basis for a Dialog Control Flow in Industrial Interaction Management
CN114005439A (zh) 确定话术的方法、装置以及存储介质
WO2023239779A1 (en) Ai based hold messaging
CN115687585A (zh) 对话决策及对话决策模型训练方法、装置以及终端
CN117271746A (zh) 状态评估的交互方法、装置及设备
WO2007073798A1 (en) Call routing based on context sensitive speech recognition