연구성과물검색
유형별/분류별 연구성과물 검색
HOME ICON HOME > 연구성과물 유형별 검색 > 보고서 상세정보

보고서 상세정보

https://www.krm.or.kr/krmts/link.html?dbGubun=SD&m201_id=10018905&local_id=10021399
사용자 의도 분석에 기반한 인공지능 대화 시스템 연구 ― 화행 분석을 중심으로
이 보고서는 한국연구재단(NRF, National Research Foundation of Korea)이 지원한 연구과제( 사용자 의도 분석에 기반한 인공지능 대화 시스템 연구 ― 화행 분석을 중심으로 | 2008 년 신청요강 다운로드 PDF다운로드 | 고창수(한성대학교) ) 연구결과물 로 제출된 자료입니다.
한국연구재단 인문사회연구지원사업을 통해 연구비를 지원받은 연구자는 연구기간 종료 후 6개월 이내에 결과보고서를 제출하여야 합니다.(*사업유형에 따라 결과보고서 제출 시기가 다를 수 있음.)
  • 연구자가 한국연구재단 연구지원시스템에 직접 입력한 정보입니다.
연구과제번호 A00083
선정년도 2008 년
과제진행현황 종료
제출상태 재단승인
등록완료일 2010년 11월 30일
연차구분 결과보고
결과보고년도 2010년
결과보고시 연구요약문
  • 국문
  • 본 연구는 인간과 자연스러운 대화를 주고받을 수 있는 자동 대화 시스템을 구축하려는 큰 목표의 일종으로 진행되었다. 즉 상대방의 발화 의도를 분석하고 그에 대응하는 발화를 적절히 구성할 수 있는 인간의 언어 능력, 그리고 세계에 대한 지식을 기반으로 하여 학습하고 추론할 수 있는 인간의 인지 능력을 표상하는 인공지능 대화 시스템의 모델을 제안하고자 한 것이다. 다만 실용적인 목적에 따라, 게임에 등장하는 NPC(non player character)와 인간의 대화를 대상으로 하는 것으로 범위를 좁혀 연구를 진행하였다.
    기존의 대화 시스템은 컴퓨터와 시스템 사용자의 대화 패턴을 저장하고, 나중에 비슷한 패턴의 대화문이 다시 입력되면 저장되어 있는 내용을 바탕으로 응답문을 산출하는 방식을 이용하는 경우가 많았다. 그러나 비슷해 보이는 문장도 서로 완전히 다른 뜻을 담고 있는 경우가 많고(예: 관습적인 인사 표현인 "안녕하세요 "와 구체적인 내용을 요구하는 질문인 "어머님은 안녕하세요 "), 서로 달라 보이는 문장도 같은 뜻을 담고 있는 경우가 많다(예: "아르바이트를 하고 싶은데요."와 "일 좀 주세요.").
    또한 대화 시스템에 세계에 대한 지식이 저장되어 있지 않다면 컴퓨터와 인간 사이에 대화가 자연스럽게 이어질 것으로 기대하기 어렵다. 지식이 없다면 시스템은 어떤 대화문에 대해서도 단편적인 응답문만 반복적으로 내놓게 될 것이다.
    본 연구에서는 자동 대화 시스템의 성능을 향상시키기 위해서는 이 두 가지 문제를 우선적으로 해결할 수 있어야 한다고 보았다. 즉 어떤 형식의 문장으로 대화문이 입력되든 그 문장의 이면에 있는 인간의 발화 의도를 포착할 수 있는 시스템을 만드는 것, 세계에 대한 지식을 가지고 있어서 인간의 대화문에 대해 지식을 기반으로 한 응답문을 내놓을 수 있는 시스템을 만드는 것이 본 연구에서의 주된 목표였다.
    이 목표를 달성하기 위해 대화 시스템을 구성하는 모듈을 세분화하고, 그 중 ‘화행 결정 모듈’과 ‘대응 화행 결정 모듈’, ‘지식베이스 탐색 모듈’을 구축하는 것에 주안점을 두었다.
    ‘화행 결정 모듈’은 인간에 의해 컴퓨터에 입력된 대화문이 어떤 의도를 가지고 입력된 것인지를 파악하는 모듈이다. 예를 들어 "지금 몇 시인지 알려 줄래 "라는 대화문은 "응" 또는 "아니"라는 대답을 요구하는 단순한 질문이 아니라 "지금 몇 시인지 알려 줘."와 마찬가지로 "10시야."라는 구체적인 내용을 요구하는 요청의 일종이다. 이 문장은 ‘-어 주다’, ‘-ㄹ래’, ‘ ’의 조합을 통해 단순한 의문문이 아니라 무엇을 요청하기 위한 문장이라는 것이 파악될 수 있다. 이처럼 문장에 나타난 요소들이 발화 의도를 포착할 수 있도록 해 주는 경우를 유형별로 정리한 결과를 하나의 모듈로 만든 것이 화행 결정 모듈이다.
    ‘대응 화행 결정 모듈’은 인간에 의해 입력된 대화문의 발화 의도가 파악된 이후에 그에 자연스럽게 대응할 수 있는 응답문의 화행을 결정하는 모듈이다. 이 모듈을 구성하기 위하여 대학생들의 대화를 녹음하여 전사한 자료를 바탕으로 어떤 화행에 어떤 화행이 대응하는 것이 일상적인 대화에서 자연스럽게 나타나는지를 통계적으로 조사하고 반복적으로 검토하는 과정을 거쳤다.
    ‘지식베이스 탐색 모듈’은 ‘지식베이스’의 존재를 전제로 한다. 지식베이스는 컴퓨터 시스템이 갖고 있는 세계 지식의 모음집을 말한다. 인간이 입력한 대화문이 "아르바이트는 어디서 구할 수 있어 "와 같이 세계 지식을 기반으로 한 응답을 요구하는 경우라면, 컴퓨터 시스템은 이에 대한 적절한 응답문을 내놓기 위해 스스로 가지고 있는 지식들을 검색해야 한다. 지식베이스에 들어 있는 지식들을 어떤 방식으로 탐색할 것인지에 대한 논리를 기록한 것이 지식베이스 탐색 모듈이다.
    지식베이스를 효율적으로 탐색하기 위해 지식베이스를 프레임 지식베이스, 의미망 지식베이스, 사실 지식베이스, 게임 세계 어휘 지식 베이스, 시소러스로 구분하였다.
    이러한 모듈들을 중심으로 자동 대화 시스템을 재구성함으로써 보다 ‘인공지능’에 접근한 대화 시스템의 전체적인 모형을 제안할 수 있었다. 또한 이 모형을 게임 세계를 전제로 한 대화 시나리오를 통해 반복적으로 점검함으로써 그 신뢰도를 입증하였다.
  • 영문
  • This research aims to make an automatic conversation system which can converse with people naturally. We intend to suggest a model for an intelligent conversation system which represents the human language competence ― human can analyze the communication partner's intentions, and construct corresponding sentences properly ― and the human cognitive competence ― human can learn and infer on the basis of encyclopedic knowledge. But for the practical purposes, we limit our research range to the conversation between a human user and an NPC(non player character) in MMORPG games.
    Existing conversation systems usually use a methodology that the computer has had conversation patterns between the system and human users, so that the system can output corresponding sentences as a human user inputs a sentence. But formally similar sentences can conceive very different intentions(ex. "안녕하세요 " as a conventional greeting expression vs. "어머님은 안녕하세요 " as a question which asks for specific response) and formally different sentences can conceive very similar intention(for example, both "아르바이트를 하고 싶은데요." and "일 좀 주세요." have same intention of 'asking something').
    Besides, if the conversation system doesn't have encyclopedic knowledge, communication through that system can't be continued naturally. Without knowledge, the system may output only fragmentary sentences repeatedly whatever the input sentences are.
    These two problems should be solved first in order to improve performance of conversation system. That is, the system can understand intention of human conversation whatever form it has, and can respond to the input sentence properly based on encyclopedic knowledge.
    In order to achieve this purpose, we subdivide the conversation system into several modules. Among those modules, we specially pay attention to set up 'speech act-decision module', 'corresponding speech act-decision module' and 'knowledge base-exploring module'.
    The speech act-decision module is to catch a user's intention in an input sentence. For example, the sentence "지금 몇 시인지 알려 줄래 " isn't a yes/no question. That sentence asks a specific answer like "10시야." as the sentence "지금 몇 시인지 알려 줘.", which is an imperative sentence. In that sentence, the combination of ‘-어 주다’, ‘-ㄹ래’ and ‘ ’ signals that the sentence isn't simple question but asking. Like this, we survey linguistic forms which signal certain speech act, and arrange collected informations in terms of speech act types. So, the speech act-decision module consists of such information.
    The corresponding speech act-decision module is to decide corresponding sentence's speech act type that matches well with the user input sentence. In order to set up this module, we examine verbal corpora which consist of undergraduates' conversation, and then repeatedly adjust information statistically which improves matching between speech act types.
    The knowledge base-exploring module presupposes the knowledge base. The knowledge base indicates a archive of encyclopedic knowledge that the computer system has. When a system user inputs a sentence which asks a response based on encyclopedic knowledge like "아르바이트는 어디서 구할 수 있어 ", the computer system has to search for relevant knowledge in order to answer the question properly. It is the knowledge base-exploring module in which a logic how system searches for relevant information in the knowledge base efficiently is recorded.
    In order to search for relevant information in the knowledge base efficiently, we subdivide the knowledge base into the frame knowledge base, the semantic web knowledge base, the fact knowledge base, the game-world knowledge base and the thesaurus.
    Through realizing all these processes, we have proposed a whole model of an intelligent conversation system.
연구결과보고서
  • 초록
  • 이 연구는 사용자 의도 분석에 기반하여 사용자에게 필요한 정보를 제공해 줄 수 있는 인공지능 대화 시스템의 모형을 설계하고, 대화 시스템의 지능적 작동에 필요한 언어 지식을 표현하는 방법론을 제안하는 데 목적이 있다. 사용자 의도 분석 기반한 대화 시스템이란 인간의 발화 의도를 분석함으로써 의도에 적합한 응답을 산출하는 지능적인 대화 시스템을 말한다.
    연구의 진행 과정은 1단계로 대화 시스템에 필요한 기초 데이터 구축 작업을 하였다. 사용자 의도 분석을 위한 대표 1000문장 샘플을 구축하고, 게임 세계의 지식 내용을 체계하기 위해 시소러스 및 게임 세계 어휘 지식, 프레임, 의미망 지식베이스를 구축하였다. 마지막으로 인공지능 대화 시스템 모형의 정확성과 적절성 등을 검증하기 위한 기반 자료로 게임 세계의 가상 시나리오를 제작하였다.
    2단계는 대화 시스템의 각 모듈을 종합하여 대화 시스템 로직 모형을 제안하였다. 모형 내에서 유기적으로 진행되는 다섯 가지의 모듈은 ‘화행 결정 모듈, 대응 화행 모듈, 화제어 선택 모듈, 지식베이스 탐색 모듈, 응답 산출 모듈’이다. 사용자의 발화문이 입력되면 각 모듈이 절차적으로 진행되어 NPC의 응답문이 산출되는 방식으로 진행된다.
    3단계는 2단계에서 완성한 대화 시스템의 전체적인 과정을 점검하고 대화 시스템 모형을 평가한 후에 성능을 예측하는 작업을 하였다. 성능의 검증을 위해 마련된 가상 시나리오를 대화 시스템에 적용하여 평가 시트를 작성하고, 대화 시스템의 오류 빈도를 조사하면서 문제의 원인을 수정·보완하였다.
    사용자 의도 분석에 기반한 대화 시스템은 크게 사용자의 발화(입력문)에 대한 ‘이해부’, 시스템 발화(응답문)의 ‘생성부’, 그리고 대화의 ‘관리부’ 세 부분으로 구성된다. 입력문은 총 3단계의 모듈(이해부)을 거침으로써 그 발화의 의도가 분석된다. 분석된 입력문에 대한 적절한 응답문을 산출하기 위해서는 3단계의 모듈(생성부)을 거치게 되며, 생성부에서 생성된 응답문이 출력됨으로써 하나의 대화쌍이 완성된다. 일련의 절차를 구체화하면, ‘발화 입력 → 화제어 결정 → 화행 결정 → 중심문 선택 → 대응 화행 결정 → 지식베이스 탐색 → 응답 산출’로 이루어진다.
  • 연구결과 및 활용방안
  • 이 연구의 언어학적인 연구 성과는 다음과 같다. 이 연구는 사회적인 흐름을 반영하여 이론적인 화행 분류와 대응쌍의 체계를 인간-컴퓨터 대화에 적용하여 실제 세계에서의 적용 가능성을 고찰하였다. 화자와 청자 상호 간에 유연한 대화가 보장되기 위해서는 서로의 의도가 정확하게 반영되어야 한다. 일반적으로 화자의 의도는 화행의 유형으로 표시되는데, 실제 대화에서 화행의 유형만을 고려해서 화자와 청자가 원하는 유연한 상호작용이 이루어질 수 없다.
    이 연구는 MMORPG 방식으로 이루어지는 제한된 영역을 가상의 공간으로 설정하여 화자의 의도를 반영하여 대화가 이루어지기 위한 절차를 마련하였다. 일련의 절차는 ‘발화 입력 → 화제어 결정 → 화행 결정 → 중심문 선택 → 대응 화행 결정 → 지식베이스 탐색 → 응답 산출’로 이루어진다. 화자의 발화에 적절한 반응을 하기 위해 반드시 수반되어야 하는 영역으로, 크게 ‘발화 내용, 발화 의도, 화제, 사전지식’ 등이 화자와 청자 간에 공유되어야 함을 시사한다. 이 결과는 발화의 산출과 이해 과정을 연구하는 심리언어학 분야나 인지언어학 분야에 과학적인 검증을 위한 방법으로 유용하게 활용될 것이다.
    이 연구의 활용 방안은 다음과 같다. 첫째, 전산언어학의 연구를 형태소 분석과 구분 분석에서 인공지능 대화 시스템으로 확대할 수 있고, 순수언어학과 응용언어학 사이의 학제 간 연구를 진행하여 이론적 토대를 검증하고, 활용 방안을 모색할 수 있다. 둘째, 인터랙티브 스토리텔링 저작 툴 연구를 위한 기반이 된다. 셋째, 인간-컴퓨터 사이의 커뮤니케이션 연구를 위한 기반이 된다. 인간과 인간 사이의 대화에 국한되었던 화행 연구를 인간과 컴퓨터 사이에서 이루어지는 대화에까지 확장함으로써 화용론의 연구 영역이 다양화되는 계기를 마련할 것이다.
    다음으로 사회적·산업적 활용 방안은 다음과 같다. 첫째, 인공지능 대화 시스템의 발달로 게임의 몰입도를 향상시켜 게임 산업의 경쟁력을 강화할 수 있다. 둘째, 인터페이스 측면에서 다양한 제품의 인터렉티브 콘텐츠 개발을 촉진시키는 계기가 될 것이다. 셋째, 교육 현장에 쌍방향 커뮤니케이션 교육 방식을 도입하여 교육의 툴로 사용할 수 있다.
  • 색인어
  • MMORPG, NPC, 사용자 의도, 대화, 화행, 화행 결정, 대응 화행, 인공지능, 대화 시스템, 지식베이스, 화제어, 전산언어, 불용어, 구문 분석, 형태소 분석, 시소러스, 학습, 추론
  • 이 보고서에 대한 디지털 콘텐츠 목록
데이터를 로딩중 입니다.
  • 본 자료는 원작자를 표시해야 하며 영리목적의 저작물 이용을 허락하지 않습니다.
  • 또한 저작물의 변경 또는 2차 저작을 허락하지 않습니다.
데이터 이용 만족도
자료이용후 의견
입력