KR102285115B1 - Chatbot-based web page navigation apparatus and method - Google Patents

Chatbot-based web page navigation apparatus and method Download PDF

Info

Publication number
KR102285115B1
KR102285115B1 KR1020190041301A KR20190041301A KR102285115B1 KR 102285115 B1 KR102285115 B1 KR 102285115B1 KR 1020190041301 A KR1020190041301 A KR 1020190041301A KR 20190041301 A KR20190041301 A KR 20190041301A KR 102285115 B1 KR102285115 B1 KR 102285115B1
Authority
KR
South Korea
Prior art keywords
web page
natural language
user
chatbot
intention
Prior art date
Application number
KR1020190041301A
Other languages
Korean (ko)
Other versions
KR20200119016A (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 KR1020190041301A priority Critical patent/KR102285115B1/en
Publication of KR20200119016A publication Critical patent/KR20200119016A/en
Application granted granted Critical
Publication of KR102285115B1 publication Critical patent/KR102285115B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/954Navigation, e.g. using categorised browsing
    • 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/3343Query execution using phonetics
    • 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/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/30
    • 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/50Business processes related to the communications industry
    • 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/26Speech to text systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Tourism & Hospitality (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Acoustics & Sound (AREA)
  • Primary Health Care (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Artificial Intelligence (AREA)
  • Operations Research (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 챗봇 기반의 웹페이지 내비게이션 장치 및 방법에 관한 것으로, 상기 내비게이션 장치는 특정 웹페이지에 접속한 사용자 단말로부터 해당 특정 웹페이지 상에서 제공되는 챗봇(chatbot)을 통해 자연어 입력을 수신하는 자연어 입력 수신부, 상기 자연어 입력에 관한 자연어 이해(Natural Language Understanding, NLU)를 통해 사용자의 의도(intent)를 결정하는 사용자 의도 결정부 및 상기 특정 웹페이지를 포함하는 웹페이지 모집단에 대한 학습을 통해 생성되고 의도-메뉴 매칭 정보를 포함하는 웹페이지 메뉴 모델을 기초로, 상기 사용자의 의도에 매칭되고 상기 자연어 입력에 응답하는 자연어 응답을 생성하여 상기 챗봇을 통해 상기 사용자 단말에게 제공하는 자연어 응답 제공부를 포함한다.The present invention relates to a chatbot-based web page navigation device and method, wherein the navigation device receives a natural language input from a user terminal accessing a specific web page through a chatbot provided on the specific web page. , a user intention determining unit that determines the user's intent through Natural Language Understanding (NLU) for the natural language input, and a web page population including the specific web page generated through learning and intention- and a natural language response providing unit that generates a natural language response that matches the user's intention and responds to the natural language input based on a web page menu model including menu matching information, and provides it to the user terminal through the chatbot.

Description

챗봇 기반의 웹페이지 내비게이션 장치 및 방법{CHATBOT-BASED WEB PAGE NAVIGATION APPARATUS AND METHOD}A chatbot-based web page navigation device and method {CHATBOT-BASED WEB PAGE NAVIGATION APPARATUS AND METHOD}

본 발명은 챗봇 기반의 웹페이지 내비게이션 기술에 관한 것으로, 보다 상세하게는 챗봇을 이용하여 사용자가 원하는 정보에 용이하게 접근할 수 있도록 지원할 수 있는 챗봇 기반의 웹페이지 내비게이션 장치 및 방법에 관한 것이다.The present invention relates to a chatbot-based webpage navigation technology, and more particularly, to a chatbot-based webpage navigation apparatus and method that can support a user to easily access desired information using the chatbot.

웹사이트는 기업 홍보, 안내 등을 효과적으로 제공하기 위한 목적으로 설계되었으나, 최근에는 웹사이트가 가진 다양한 정보들을 이용자들이 지속적으로 이용할 수 있도록 제공하기 위한 목적으로 설계되고 있다. 아무리 많은 정보를 가진 웹사이트라도 이용자들이 이용하지 않으면 그 가치가 낮아질 수 있다. 따라서, 웹사이트는 이용자들이 좀 더 자주 찾아보고 원하는 정보를 좀 더 쉽게 찾을 수 있도록 정보 컨텐츠를 구조화시킬 필요가 있다. 챗봇(chatbot)은 사용자의 의도를 파악하여 답변/접수를 대화로 진행할 수 있는 Bot서비스에 해당할 수 있으며, 챗봇을 통해 사용자에게 웹사이트 이용에 관한 편의를 제공할 수 있다.The website was designed for the purpose of effectively providing corporate promotion and guidance, but recently it is being designed for the purpose of providing users with a variety of information on the website so that they can continuously use it. No matter how much information a website has, its value may decrease if users do not use it. Therefore, the website needs to structure the information content so that users can browse more frequently and find the desired information more easily. A chatbot may correspond to a bot service that can respond/receive conversationally by understanding the user's intentions, and can provide convenience to users through the chatbot.

한국등록특허 제10-1502822(2015.03.10)호는 모바일 단말기의 웹접근성을 위한 내비게이션 장치 및 그 방법에 관한 것으로, 모바일 단말기를 이용하는데 제약이 따르는 사용자에게 특정 조건에서 조작이 편리한 그래픽 유저 인터페이스를 제공하는 효과가 있다.Korean Patent Registration No. 10-1502822 (2015.03.10) relates to a navigation device and method for web accessibility of a mobile terminal, and provides a graphical user interface that is convenient for operation under certain conditions to users who have restrictions on using a mobile terminal. has the effect of providing.

한국공개특허 제10-2017-0140226(2017.12.20)호는 정보 검색 내비게이션 방법 및 장치에 관한 것으로, 검색 결과 페이지 상에 검색어들에 대응하는 가이드 정보를 디스플레이할 수 있고, 또한 사용자의 키워드 태그 조작에 기초하여 더 정확한 검색 결과 페이지를 사용자에게 제시할 수 있는 기술을 개시하고 있다.Korean Patent Laid-Open No. 10-2017-0140226 (2017.12.20) relates to an information search navigation method and apparatus, which can display guide information corresponding to search terms on a search result page, and also manipulate keyword tags by a user Disclosed is a technology capable of presenting a more accurate search result page to a user based on .

한국등록특허 제10-1502822(2015.03.10)호Korean Patent No. 10-1502822 (2015.03.10) 한국공개특허 제10-2017-0140226(2017.12.20)호Korean Patent Publication No. 10-2017-0140226 (2017.12.20)

본 발명의 일 실시예는 챗봇을 이용하여 사용자가 원하는 정보에 용이하게 접근할 수 있도록 지원할 수 있는 챗봇 기반의 웹페이지 내비게이션 장치 및 방법을 제공하고자 한다.An embodiment of the present invention is to provide a chatbot-based web page navigation apparatus and method that can support a user to easily access desired information using the chatbot.

본 발명의 일 실시예는 다양한 웹페이지들에 대한 학습을 통해 획득한 의도-메뉴 매칭 정보를 기초로 사용자의 요청에 효과적으로 응답할 수 있는 챗봇 기반의 웹페이지 내비게이션 장치 및 방법을 제공하고자 한다.An embodiment of the present invention is to provide a chatbot-based web page navigation apparatus and method that can effectively respond to a user's request based on intention-menu matching information obtained through learning of various web pages.

본 발명의 일 실시예는 웹페이지 메뉴 모델을 기초로 사용자의 의도에 매칭되고 자연어 입력에 응답하는 자연어 응답을 챗봇을 통해 사용자에게 제공할 수 있는 챗봇 기반의 웹페이지 내비게이션 장치 및 방법을 제공하고자 한다.An embodiment of the present invention is to provide a chatbot-based webpage navigation device and method that can match a user's intention based on a webpage menu model and provide a natural language response in response to a natural language input to the user through the chatbot. .

실시예들 중에서, 챗봇 기반의 웹페이지 내비게이션(navigation) 장치는 특정 웹페이지에 접속한 사용자 단말로부터 해당 특정 웹페이지 상에서 제공되는 챗봇(chatbot)을 통해 자연어 입력을 수신하는 자연어 입력 수신부, 상기 자연어 입력에 관한 자연어 이해(Natural Language Understanding, NLU)를 통해 사용자의 의도(intent)를 결정하는 사용자 의도 결정부 및 상기 특정 웹페이지를 포함하는 웹페이지 모집단에 대한 학습을 통해 생성되고 의도-메뉴 매칭 정보를 포함하는 웹페이지 메뉴 모델을 기초로, 상기 사용자의 의도에 매칭되고 상기 자연어 입력에 응답하는 자연어 응답을 생성하여 상기 챗봇을 통해 상기 사용자 단말에게 제공하는 자연어 응답 제공부를 포함한다.In embodiments, a chatbot-based web page navigation device includes a natural language input receiving unit that receives natural language input from a user terminal accessing a specific web page through a chatbot provided on the specific web page, the natural language input A user intention determining unit that determines the user's intent through Natural Language Understanding (NLU) about and a natural language response providing unit that generates a natural language response that matches the user's intention and responds to the natural language input based on the included web page menu model, and provides it to the user terminal through the chatbot.

상기 자연어 입력 수신부는 상기 사용자 단말의 마이크를 통해 수신되는 음성을 기초로 변환된 텍스트를 상기 자연어 입력으로서 수신할 수 있다.The natural language input receiving unit may receive, as the natural language input, a text converted based on a voice received through the microphone of the user terminal.

상기 사용자 의도 결정부는 상기 사용자의 의도에 대한 결정에 실패한 경우 상기 자연어 입력을 기초로 복수의 의도 추론 시나리오들 중 어느 하나를 선택하고 해당 의도 추론 시나리오에 따라 상기 챗봇을 통해 상기 사용자 단말에게 추가적인 자연어 입력을 요청할 수 있다.The user intention determining unit selects any one of a plurality of intention inference scenarios based on the natural language input when the determination of the user's intention fails, and additionally inputs natural language to the user terminal through the chatbot according to the corresponding intention inference scenario can request

상기 자연어 응답 제공부는 주기적인 웹크롤링(web-crawling)을 통해 상기 웹페이지 모집단을 갱신하고, 상기 웹페이지 모집단에 대해 웹페이지 주소를 기초로 그룹화하여 복수의 웹페이지 그룹들을 생성하는 단계, 상기 복수의 웹페이지 그룹들을 분석하여 상기 웹페이지 주소 별로 메뉴 구조를 획득하는 단계, 상기 메뉴 구조의 메뉴와 해당 웹페이지 그룹의 웹페이지 간의 제1 맵핑(mapping)을 수행하는 단계 및 상기 해당 웹페이지 그룹의 웹페이지별 접속 기록을 기초로 상기 웹페이지와 사용자의 방문 의도 간의 제2 맵핑을 수행하는 단계를 통해 상기 학습을 수행할 수 있다.The natural language response providing unit updates the web page population through periodic web-crawling, and generates a plurality of web page groups by grouping the web page population based on a web page address, the plurality of obtaining a menu structure for each web page address by analyzing web page groups of The learning may be performed through the step of performing a second mapping between the web page and the user's intention to visit based on the access record for each web page.

상기 자연어 응답 제공부는 상기 웹페이지 모집단을 생성하고 주기적으로 갱신하는 웹페이지 모집단 관리 모듈, 상기 웹페이지 모집단에 대한 학습을 통해 상기 웹페이지 메뉴 모델을 생성하는 학습/모델 생성 모듈, 상기 사용자의 의도에 매칭되는 메뉴에 관한 내비게이션 객체를 생성하는 내비게이션 객체 생성 모듈 및 상기 내비게이션 객체를 포함하고 상기 자연어 입력에 응답하는 자연어 응답을 생성하는 자연어 응답 생성 모듈을 포함할 수 있다.The natural language response providing unit includes a web page population management module that generates and periodically updates the web page population, a learning/model generation module that generates the web page menu model through learning about the web page population, and the user's intention and a navigation object generation module that generates a navigation object related to a matching menu, and a natural language response generation module that includes the navigation object and generates a natural language response in response to the natural language input.

상기 내비게이션 객체 생성 모듈은 상기 사용자의 의도와 매칭되는 메뉴와 연관된 웹페이지로 이동할 수 있는 페이지 링크(link)를 상기 내비게이션 객체로서 생성할 수 있다.The navigation object creation module may generate, as the navigation object, a page link capable of moving to a web page associated with a menu matching the intention of the user.

상기 자연어 응답 생성 모듈은 적어도 하나의 파라미터를 포함하는 복수의 응답 예문들 중 어느 하나를 선별하고 상기 적어도 하나의 파라미터를 상기 내비게이션 객체로 대체함으로써 상기 자연어 응답을 생성할 수 있다.The natural language response generating module may generate the natural language response by selecting any one of a plurality of response example sentences including at least one parameter and replacing the at least one parameter with the navigation object.

실시예들 중에서, 챗봇 기반의 웹페이지 내비게이션 방법은 특정 웹페이지에 접속한 사용자 단말로부터 해당 특정 웹페이지 상에서 제공되는 챗봇(chatbot)을 통해 자연어 입력을 수신하는 단, 상기 자연어 입력에 관한 자연어 이해(Natural Language Understanding, NLU)를 통해 사용자의 의도(intent)를 결정하는 단계 및 상기 특정 웹페이지를 포함하는 웹페이지 모집단에 대한 학습을 통해 생성되고 의도-메뉴 매칭 정보를 포함하는 웹페이지 메뉴 모델을 기초로, 상기 사용자의 의도에 매칭되고 상기 자연어 입력에 응답하는 자연어 응답을 생성하여 상기 챗봇을 통해 상기 사용자 단말에게 제공하는 단계를 포함한다.Among the embodiments, the chatbot-based web page navigation method includes receiving natural language input from a user terminal accessing a specific web page through a chatbot provided on the specific web page, and understanding the natural language input ( Based on the webpage menu model that is generated through the steps of determining the user's intent through Natural Language Understanding, NLU and learning about the webpage population including the specific webpage and includes intent-menu matching information , generating a natural language response that matches the user's intention and responds to the natural language input and provides it to the user terminal through the chatbot.

개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.The disclosed technology may have the following effects. However, this does not mean that a specific embodiment should include all of the following effects or only the following effects, so the scope of the disclosed technology should not be construed as being limited thereby.

본 발명의 일 실시예에 따른 챗봇 기반의 웹페이지 내비게이션 장치 및 방법은 다양한 웹페이지들에 대한 학습을 통해 획득한 의도-메뉴 매칭 정보를 기초로 사용자의 요청에 효과적으로 응답할 수 있다.A chatbot-based web page navigation apparatus and method according to an embodiment of the present invention can effectively respond to a user's request based on intention-menu matching information obtained through learning of various web pages.

본 발명의 일 실시예에 따른 챗봇 기반의 웹페이지 내비게이션 장치 및 방법은 웹페이지 메뉴 모델을 기초로 사용자의 의도에 매칭되고 자연어 입력에 응답하는 자연어 응답을 챗봇을 통해 사용자에게 제공할 수 있다.The chatbot-based webpage navigation apparatus and method according to an embodiment of the present invention may provide a natural language response that matches the user's intention based on a webpage menu model and responds to a natural language input to the user through the chatbot.

도 1은 본 발명의 일 실시예에 따른 챗봇 기반의 웹페이지 내비게이션 시스템을 설명하는 도면이다.
도 2는 도 1에 있는 웹페이지 내비게이션 장치의 물리적 구성을 설명하는 블록도이다.
도 3은 도 1에 있는 웹페이지 내비게이션 장치의 기능적 구성을 설명하는 블록도이다.
도 4는 도 1에 있는 웹페이지 내비게이션 장치에서 수행되는 웹페이지 내비게이션 과정을 설명하는 순서도이다.
도 5는 도 3에 있는 자연어 응답 제공부에서 수행되는 웹페이지 모집단에 대한 학습 과정의 일 실시예를 설명하는 순서도이다.
도 6은 도 3에 있는 자연어 응답 제공부에서 수행되는 자연어 응답 생성 과정의 일 실시예를 설명하는 순서도이다.
1 is a diagram illustrating a chatbot-based web page navigation system according to an embodiment of the present invention.
FIG. 2 is a block diagram illustrating a physical configuration of the webpage navigation device shown in FIG. 1 .
FIG. 3 is a block diagram illustrating a functional configuration of the web page navigation device of FIG. 1 .
FIG. 4 is a flowchart illustrating a webpage navigation process performed by the webpage navigation device of FIG. 1 .
FIG. 5 is a flowchart illustrating an embodiment of a learning process for a web page population performed by the natural language response providing unit of FIG. 3 .
6 is a flowchart illustrating an embodiment of a natural language response generation process performed by the natural language response providing unit of FIG. 3 .

본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.Since the description of the present invention is merely an embodiment for structural or functional description, the scope of the present invention should not be construed as being limited by the embodiment described in the text. That is, since the embodiment may have various changes and may have various forms, it should be understood that the scope of the present invention includes equivalents capable of realizing the technical idea. In addition, since the object or effect presented in the present invention does not mean that a specific embodiment should include all of them or only such effects, it should not be understood that the scope of the present invention is limited thereby.

한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.On the other hand, the meaning of the terms described in the present application should be understood as follows.

"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.Terms such as “first” and “second” are for distinguishing one component from another, and the scope of rights should not be limited by these terms. For example, a first component may be termed a second component, and similarly, a second component may also be termed a first component.

어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.When a component is referred to as being “connected” to another component, it may be directly connected to the other component, but it should be understood that other components may exist in between. On the other hand, when it is mentioned that a certain element is "directly connected" to another element, it should be understood that the other element does not exist in the middle. Meanwhile, other expressions describing the relationship between elements, that is, “between” and “immediately between” or “neighboring to” and “directly adjacent to”, etc., should be interpreted similarly.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The singular expression is to be understood to include the plural expression unless the context clearly dictates otherwise, and terms such as "comprises" or "have" refer to the embodied feature, number, step, action, component, part or these It is intended to indicate that a combination exists, and it should be understood that it does not preclude the possibility of the existence or addition of one or more other features or numbers, steps, operations, components, parts, or combinations thereof.

각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.Identifiers (eg, a, b, c, etc.) in each step are used for convenience of description, and the identification code does not describe the order of each step, and each step clearly indicates a specific order in context. Unless otherwise specified, it may occur in a different order from the specified order. That is, each step may occur in the same order as specified, may be performed substantially simultaneously, or may be performed in the reverse order.

본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The present invention can be embodied as computer-readable codes on a computer-readable recording medium, and the computer-readable recording medium includes all types of recording devices in which data readable by a computer system is stored. . Examples of the computer-readable recording medium include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, and the like. In addition, the computer-readable recording medium may be distributed in a network-connected computer system, and the computer-readable code may be stored and executed in a distributed manner.

여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.All terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs, unless otherwise defined. Terms defined in general used in the dictionary should be interpreted as being consistent with the meaning in the context of the related art, and cannot be interpreted as having an ideal or excessively formal meaning unless explicitly defined in the present application.

도 1은 본 발명의 일 실시예에 따른 챗봇 기반의 웹페이지 내비게이션 시스템을 설명하는 도면이다.1 is a diagram illustrating a chatbot-based web page navigation system according to an embodiment of the present invention.

도 1을 참조하면, 챗봇 기반의 웹페이지 내비게이션 시스템(100)은 사용자 단말(110), 웹페이지 내비게이션 장치(130) 및 데이터베이스(150)를 포함할 수 있다.Referring to FIG. 1 , the chatbot-based webpage navigation system 100 may include a user terminal 110 , a webpage navigation device 130 , and a database 150 .

사용자 단말(110)은 웹페이지에 접속하여 해당 내용을 확인할 수 있고 챗봇을 통해 대화하는 방식으로 메뉴 내비게이션을 이용할 수 있는 컴퓨팅 장치에 해당할 수 있고, 스마트폰, 노트북 또는 컴퓨터로 구현될 수 있으며, 반드시 이에 한정되지 않고, 태블릿 PC 등 다양한 디바이스로도 구현될 수 있다. 사용자 단말(110)은 웹페이지 내비게이션 장치(130)와 네트워크를 통해 연결될 수 있고, 복수의 사용자 단말(110)들은 웹페이지 내비게이션 장치(130)와 동시에 연결될 수 있다. The user terminal 110 may correspond to a computing device capable of accessing a web page to check the corresponding content and using menu navigation in a conversational manner through a chatbot, and may be implemented with a smartphone, a laptop computer, or a computer, It is not necessarily limited thereto, and may be implemented in various devices such as a tablet PC. The user terminal 110 may be connected to the webpage navigation device 130 through a network, and the plurality of user terminals 110 may be simultaneously connected to the webpage navigation device 130 .

웹페이지 내비게이션 장치(130)는 챗봇을 통해 수신된 특정 정보에 관한 내비게이션 요청에 응답하여 해당 특정 정보를 포함하는 웹페이지로의 접근을 지원할 수 있는 컴퓨터 또는 프로그램에 해당하는 서버로 구현될 수 있다. 웹페이지 내비게이션 장치(130)는 사용자 단말(110)과 블루투스, WiFi 등을 통해 무선으로 연결될 수 있고, 네트워크를 통해 사용자 단말(110)과 데이터를 주고 받을 수 있다.The web page navigation device 130 may be implemented as a server corresponding to a computer or program that can support access to a web page including the specific information in response to a navigation request regarding specific information received through the chatbot. The web page navigation device 130 may be wirelessly connected to the user terminal 110 through Bluetooth, WiFi, or the like, and may exchange data with the user terminal 110 through a network.

일 실시예에서, 웹페이지 내비게이션 장치(130)는 챗봇 서비스 제공을 위해 도 1과 달리 별도의 채팅 서버(또는 메신저 서버)를 통해 사용자 단말(110)과 연결될 수 있다. 즉, 채팅 서버(또는 메신저 서버)가 사용자 단말(110)과 웹페이지 내비게이션 장치(130) 간의 통신을 중계할 수 있고, 이 경우 웹페이지 내비게이션 장치(130)는 사용자 단말(110)로부터의 요청에 대한 응답으로 내비게이션을 제공하기 위해 특정 정보에 직접적으로 접근 가능한 형태의 메시지를 생성하는 역할을 수행할 수 있다.In an embodiment, the web page navigation device 130 may be connected to the user terminal 110 through a separate chat server (or messenger server) unlike FIG. 1 to provide a chatbot service. That is, the chat server (or messenger server) may relay communication between the user terminal 110 and the webpage navigation device 130 , and in this case, the webpage navigation device 130 responds to a request from the user terminal 110 . In response, it can play a role in generating a message in a form that can directly access specific information to provide navigation.

일 실시예에서, 웹페이지 내비게이션 장치(130)는 데이터베이스(150)와 연동하여 웹페이지 내비게이션에 필요한 정보를 저장할 수 있다. 한편, 웹페이지 내비게이션 장치(130)는 도 1과 달리, 데이터베이스(150)를 내부에 포함하여 구현될 수 있다. 또한, 웹페이지 내비게이션 장치(130)는 프로세서, 메모리, 사용자 입출력부 및 네트워크 입출력부를 포함하여 구현될 수 있으며, 이에 대해서는 도 2에서 보다 자세히 설명한다.In an embodiment, the webpage navigation device 130 may store information necessary for webpage navigation in conjunction with the database 150 . Meanwhile, the webpage navigation device 130 may be implemented by including the database 150 inside, unlike FIG. 1 . In addition, the web page navigation device 130 may be implemented including a processor, a memory, a user input/output unit, and a network input/output unit, which will be described in more detail with reference to FIG. 2 .

데이터베이스(150)는 웹페이지 내비게이션을 제공하는 과정에서 필요한 다양한 정보들을 저장하는 저장장치에 해당할 수 있다. 데이터베이스(150)는 분석 및 학습을 통해 획득한 복수의 웹페이지들 각각의 메뉴 구조에 관한 정보를 저장할 수 있고, 반드시 이에 한정되지 않고, 웹페이지 내비게이션 장치(130)가 사용자로부터 요청을 수신하여 관련 응답을 생성하여 제공하는 과정에서 다양한 형태로 수집 또는 가공된 정보들을 저장할 수 있다.The database 150 may correspond to a storage device for storing various information required in the process of providing web page navigation. The database 150 may store information about the menu structure of each of a plurality of web pages obtained through analysis and learning, and is not limited thereto, and the web page navigation device 130 receives a request from the user and relates In the process of generating and providing a response, information collected or processed in various forms can be stored.

도 2는 도 1에 있는 웹페이지 내비게이션 장치의 물리적 구성을 설명하는 블록도이다.FIG. 2 is a block diagram illustrating a physical configuration of the webpage navigation device shown in FIG. 1 .

도 2를 참조하면, 웹페이지 내비게이션 장치(130)는 프로세서(210), 메모리(230), 사용자 입출력부(250) 및 네트워크 입출력부(270)를 포함하여 구현될 수 있다.Referring to FIG. 2 , the web page navigation device 130 may be implemented including a processor 210 , a memory 230 , a user input/output unit 250 , and a network input/output unit 270 .

프로세서(210)는 사용자의 요청에 따라 특정 정보를 포함하고 있는 웹페이지로의 내비게이션을 제공하는 과정에서의 각 동작들을 처리하는 프로시저를 실행할 수 있고, 그 과정 전반에서 읽혀지거나 작성되는 메모리(230)를 관리할 수 있으며, 메모리(230)에 있는 휘발성 메모리와 비휘발성 메모리 간의 동기화 시간을 스케줄할 수 있다. 프로세서(210)는 웹페이지 내비게이션 장치(130)의 동작 전반을 제어할 수 있고, 메모리(230), 사용자 입출력부(250) 및 네트워크 입출력부(270)와 전기적으로 연결되어 이들 간의 데이터 흐름을 제어할 수 있다. 프로세서(210)는 웹페이지 내비게이션 장치(130)의 CPU(Central Processing Unit)로 구현될 수 있다.The processor 210 may execute a procedure for processing each operation in the process of providing navigation to a web page including specific information according to a user's request, and the memory 230 that is read or written throughout the process. ) can be managed, and a synchronization time between the volatile memory and the nonvolatile memory in the memory 230 can be scheduled. The processor 210 may control the overall operation of the web page navigation device 130 , and is electrically connected to the memory 230 , the user input/output unit 250 , and the network input/output unit 270 to control the flow of data therebetween. can do. The processor 210 may be implemented as a central processing unit (CPU) of the web page navigation device 130 .

메모리(230)는 SSD(Solid State Disk) 또는 HDD(Hard Disk Drive)와 같은 비휘발성 메모리로 구현되어 웹페이지 내비게이션 장치(130)에 필요한 데이터 전반을 저장하는데 사용되는 보조기억장치를 포함할 수 있고, RAM(Random Access Memory)과 같은 휘발성 메모리로 구현된 주기억장치를 포함할 수 있다.The memory 230 is implemented as a non-volatile memory such as a solid state disk (SSD) or a hard disk drive (HDD) and may include an auxiliary storage device used to store overall data required for the web page navigation device 130 and , and may include a main memory implemented as a volatile memory such as random access memory (RAM).

사용자 입출력부(250)는 사용자 입력을 수신하기 위한 환경 및 사용자에게 특정 정보를 출력하기 위한 환경을 포함할 수 있다. 예를 들어, 사용자 입출력부(250)는 터치 패드, 터치 스크린, 화상 키보드 또는 포인팅 장치와 같은 어댑터를 포함하는 입력장치 및 모니터 또는 터치스크린과 같은 어댑터를 포함하는 출력장치를 포함할 수 있다. 일 실시예에서, 사용자 입출력부(250)는 원격 접속을 통해 접속되는 컴퓨팅 장치에 해당할 수 있고, 그러한 경우, 웹페이지 내비게이션 장치(130)는 서버로서 수행될 수 있다.The user input/output unit 250 may include an environment for receiving a user input and an environment for outputting specific information to the user. For example, the user input/output unit 250 may include an input device including an adapter such as a touch pad, a touch screen, an on-screen keyboard, or a pointing device, and an output device including an adapter such as a monitor or a touch screen. In an embodiment, the user input/output unit 250 may correspond to a computing device accessed through remote access, and in such a case, the web page navigation device 130 may be implemented as a server.

네트워크 입출력부(270)은 네트워크를 통해 외부 장치 또는 시스템과 연결하기 위한 환경을 포함하고, 예를 들어, LAN(Local Area Network), MAN(Metropolitan Area Network), WAN(Wide Area Network) 및 VAN(Value Added Network) 등의 통신을 위한 어댑터를 포함할 수 있다.The network input/output unit 270 includes an environment for connecting with an external device or system through a network, for example, a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), and a VAN (Wide Area Network) (VAN). It may include an adapter for communication such as Value Added Network).

도 3은 도 1에 있는 웹페이지 내비게이션 장치의 기능적 구성을 설명하는 블록도이다.FIG. 3 is a block diagram illustrating a functional configuration of the web page navigation device of FIG. 1 .

도 3을 참조하면, 웹페이지 내비게이션 장치(130)는 자연어 입력 수신부(310), 사용자 의도 결정부(330), 자연어 응답 제공부(350) 및 제어부(370)를 포함할 수 있다.Referring to FIG. 3 , the web page navigation device 130 may include a natural language input receiving unit 310 , a user intention determining unit 330 , a natural language response providing unit 350 , and a control unit 370 .

자연어 입력 수신부(310)는 특정 웹페이지에 접속한 사용자 단말(110)로부터 해당 특정 웹페이지 상에서 제공되는 챗봇(chatbot)을 통해 자연어 입력을 수신할 수 있다. 이 때, 특정 웹페이지는 웹페이지 내비게이션 장치(130)에 의해 제공되는 웹페이지에 해당할 수 있고, 챗봇(chatbot)은 특정 웹페이지 상에서 별도의 UI(User Interface)를 통해 제공될 수 있다. 예를 들어, UI는 메신저에서 동작하는 대화방 형태로 구현될 수 있고, 사용자는 대화방 내에서 자연어를 포함하는 메시지 형태로 챗봇과의 대화를 진행할 수 있다. 자연어 입력은 사용자가 사용자 단말(110)을 통해 입력하는 메시지로서 텍스트로 구성된 언어적 입력(lexical input)에 해당할 수 있다.The natural language input receiving unit 310 may receive a natural language input from the user terminal 110 accessing the specific web page through a chatbot provided on the specific web page. In this case, the specific web page may correspond to a web page provided by the web page navigation device 130 , and a chatbot may be provided through a separate UI (User Interface) on the specific web page. For example, the UI may be implemented in the form of a chat room operated in a messenger, and the user may conduct a conversation with the chatbot in the form of a message including natural language in the chat room. The natural language input is a message input by the user through the user terminal 110 and may correspond to a lexical input composed of text.

일 실시예에서, 자연어 입력 수신부(310)는 사용자 단말(110)의 마이크를 통해 수신되는 음성을 기초로 변환된 텍스트를 자연어 입력으로서 수신할 수 있다. 보다 구체적으로, 사용자 단말(110)은 내부에 포함된 음성 인식 모듈을 통해 마이크를 통해 수신되는 사용자의 음성을 텍스트로 변환할 수 있고, 이를 웹페이지 내비게이션 장치(130)에 전달하면 자연어 입력 수신부(310)가 해당 텍스트를 자연어 입력으로서 수신할 수 있다. 다른 예로서, 자연어 입력 수신부(310)는 자체적으로 음성 인식 모듈을 포함할 수 있고, 사용자 단말(110)을 통해 음성 데이터가 전달된 경우 음성 인식 모듈을 통해 텍스트로 변환 후 자연어 입력으로서 수신할 수 있다.In an embodiment, the natural language input receiving unit 310 may receive a text converted based on a voice received through the microphone of the user terminal 110 as a natural language input. More specifically, the user terminal 110 may convert a user's voice received through a microphone through a voice recognition module included therein into text, and when delivered to the web page navigation device 130, the natural language input receiving unit ( 310) may receive the corresponding text as a natural language input. As another example, the natural language input receiving unit 310 may include a voice recognition module by itself, and when voice data is transmitted through the user terminal 110, it is converted into text through the voice recognition module and received as natural language input. there is.

일 실시예에서, 자연어 입력 수신부(310)는 사용자 단말(110)로부터 이미지 또는 영상을 수신한 경우 해당 이미지 또는 영상을 텍스트로 변환하여 자연어 입력으로서 수신할 수 있다. 이 경우, 이미지 또는 영상의 텍스트 변환은 이미지 또는 영상에 포함된 텍스트를 추출하거나 또는 이미지 또는 영상에 가장 유사한 텍스트를 매칭하는 방법을 사용하여 수행될 수 있다.In an embodiment, when receiving an image or image from the user terminal 110 , the natural language input receiving unit 310 may convert the image or image into text and receive it as a natural language input. In this case, text conversion of the image or video may be performed using a method of extracting text included in the image or video or matching text most similar to the image or video.

사용자 의도 결정부(330)는 자연어 입력에 관한 자연어 이해(Natural Language Understanding, NLU)를 통해 사용자의 의도(intent)를 결정할 수 있다. 여기에서, 자연어 이해(NLU)는 자연어 처리(Natural Language Processing)에 딥러닝(deep learning)을 포함한 기계 학습(machine learning)이 결합된 것으로 입력된 문장의 의도를 파악하기 위하여 일정한 순서에 따라 의도추론을 수행하는 것에 해당할 수 있다. 의도 추론은 진행 순서에 따라 형태소 분석 우선 추론과 머신러닝 우선 추론으로 구분될 수 있다.The user intention determining unit 330 may determine the user's intent through natural language understanding (NLU) regarding natural language input. Here, natural language understanding (NLU) is a combination of natural language processing and machine learning including deep learning. may be equivalent to performing Intent inference can be divided into morphological analysis-first reasoning and machine learning-first reasoning according to the order of progress.

형태소 분석 우선 추론은 패턴 매칭(이하, A패턴) 추론에서 적합한 의도를 찾지 못할 경우 형태소 분석(이하, B패턴) 추론으로 의도를 재추론할 수 있다. B패턴 추론에서 의도를 찾지 못한 경우, 혹은 적합한 의도를 찾았지만 추론율이 설정한 형태소 분석 추론 성공범위의 임계값 미만일 경우 머신러닝(이하, C패턴) 추론을 수행할 수 있다. C패턴 추론 결과 역시 설정한 머신러닝 추론 성공범위 이상일 경우 찾은 의도를 반환하지만 설정값 이하일 경우 최종적으로 디폴트 결과(default fallback)를 반환할 수 있다. 추론 성공범위는 추론된 데이터를 얼마나 신뢰할 것인지를 결정하는 기준으로서 각 패턴 별로 설정될 수 있다.In the morpheme analysis-first inference, if a suitable intention is not found in pattern matching (hereinafter, pattern A) inference, the intention can be re-inferred by morpheme analysis (hereinafter, pattern B) inference. Machine learning (hereinafter, C pattern) inference can be performed when no intention is found in B pattern inference, or when an appropriate intention is found but the inference rate is less than the threshold of the set morpheme analysis inference success range. If the C pattern inference result is also greater than the set machine learning inference success range, the found intent is returned, but if it is less than the set value, a default fallback can be finally returned. The reasoning success range may be set for each pattern as a criterion for determining how much to trust the inferred data.

머신러닝 우선 추론은 형태소 분석 우선 추론과 반대로 A패턴 추론에서 의도를 찾지 못하면 C패턴 추론으로 먼저 의도를 추론할 수 있다. 순서를 제외한 각 추론의 내용은 형태소 분석 우선 추론과 동일하게 수행될 수 있다.In contrast to morphological analysis-first reasoning, machine learning-first inference can first infer the intention with C-pattern inference if no intention is found in A-pattern inference. The content of each reasoning except for the order may be performed in the same manner as the morphological analysis priority reasoning.

패턴 매칭(A패턴) 추론은 의도와 연관된 예문을 기준으로 완벽히 동일한 패턴을 가진 문장을 찾는 방법에 해당할 수 있다. A패턴 추론은 완벽하게 동일한 문장이나 파라미터(parameter) 등록시 해당 파라미터를 치환할 수 있는 문장을 찾을 수 있으며, 예문에 대한 표준 문장이 정의된 경우 동일한 표준 문장이 입력될 때 이를 인식할 수 있다. 여기에서, 파라미터(parameter)는 사용자의 대화에서 추출된 정보를 저장하는 변수에 해당할 수 있고, 대화 내에서 특정 값을 전달하기 위해 사용될 수 있다.Pattern matching (pattern A) inference may correspond to a method of finding sentences having the exact same pattern based on example sentences related to intent. A pattern inference can find perfectly identical sentences or sentences that can substitute corresponding parameters when registering parameters, and when standard sentences for example sentences are defined, they can be recognized when the same standard sentences are input. Here, the parameter may correspond to a variable storing information extracted from the user's conversation, and may be used to transmit a specific value within the conversation.

형태소 분석(B패턴) 추론은 입력 문장의 형태소 분석 결과와 가장 유사한 형태소 분석 결과를 보이는 예문을 가진 의도를 추론하는 방법에 해당할 수 있다. B패턴 추론은 명사와 동사, 그리고 키워드를 중심으로 유사도를 평가할 수 있다. 머신러닝(C패턴) 추론은 머신러닝으로 자동 학습된 결과를 기초로 의도를 추론하는 방법에 해당할 수 있다.The morpheme analysis (pattern B) inference may correspond to a method of inferring an intention with an example sentence that shows the morpheme analysis result most similar to the morpheme analysis result of the input sentence. B-pattern inference can evaluate similarity based on nouns, verbs, and keywords. Machine learning (C pattern) inference may correspond to a method of inferring intentions based on results automatically learned by machine learning.

또한, A, B 및 C패턴 추론들 이외에 문장 유사도(D패턴) 추론을 통해 의도 추론이 수행될 수 있다. 문장 유사도(D패턴)은 유사한 문장을 기반으로 보정 처리를 통해 의도를 추론하는 방법에 해당할 수 있다. 예를 들어, 문장 유사도를 판단하는 방법으로서 레벤슈타인(Levenshtein) 알고리즘이 사용될 수 있다.In addition, intention inference may be performed through sentence similarity (D pattern) inference in addition to A, B, and C pattern inferences. The sentence similarity (D pattern) may correspond to a method of inferring intention through correction processing based on similar sentences. For example, a Levenshtein algorithm may be used as a method of determining the sentence similarity.

일 실시예에서, 사용자 의도 결정부(330)는 사용자의 의도에 대한 결정에 실패한 경우 자연어 입력을 기초로 복수의 의도 추론 시나리오들 중 어느 하나를 선택하고 해당 의도 추론 시나리오에 따라 챗봇을 통해 사용자 단말(110)에게 추가적인 자연어 입력을 요청할 수 있다. 여기에서, 의도 추론 시나리오는 의도 추론에 사용되는 질문들의 집합에 해당할 수 있고, 각 질문은 사용자에게 제공되는 순서에 관한 우선 순위 정보와 사용자의 응답에 따라 분기되는 하위 질문들과의 연결 정보를 포함할 수 있다. In an embodiment, when the user intention determining unit 330 fails to determine the user's intention, the user terminal selects any one of a plurality of intention inference scenarios based on the natural language input and uses the chatbot according to the corresponding intention inference scenario. An additional natural language input may be requested from 110 . Here, the intention inference scenario may correspond to a set of questions used for intention inference, and each question includes priority information regarding the order provided to the user and connection information with sub-questions branched according to the user's response. may include

즉, 사용자 의도 결정부(330)는 사용자로부터 의도 추론에 필요한 추가적인 정보를 얻기 위하여 챗봇을 통해 추가적인 질의를 수행할 수 있고, 이러한 과정은 의도 추론 시나리오에 따라 사용자와 챗봇 간의 자연스러운 대화 형식으로 진행될 수 있다.That is, the user intention determining unit 330 may perform an additional query through the chatbot in order to obtain additional information necessary for intention inference from the user, and this process may proceed in a natural conversational format between the user and the chatbot according to the intention inference scenario. there is.

자연어 응답 제공부(350)는 특정 웹페이지를 포함하는 웹페이지 모집단에 대한 학습을 통해 생성되고 의도-메뉴 매칭 정보를 포함하는 웹페이지 메뉴 모델을 기초로, 사용자의 의도에 매칭되고 자연어 입력에 응답하는 자연어 응답을 생성하여 챗봇을 통해 사용자 단말(110)에게 제공할 수 있다. 웹페이지 내비게이션 장치(130)는 챗봇을 생성하는 단계에서 학습을 통해 다양한 웹사이트의 메뉴 구조에 관한 정보를 사전에 획득할 수 있다. 학습을 통해 생성된 의도-메뉴 매칭 정보는 웹페이지 메뉴 모델에 포함되어 데이터베이스(150)에 저장될 수 있다.The natural language response providing unit 350 matches the user's intention and responds to a natural language input based on a web page menu model that is generated through learning of a web page population including a specific web page and includes intention-menu matching information. A natural language response may be generated and provided to the user terminal 110 through the chatbot. The webpage navigation device 130 may acquire information about the menu structure of various websites in advance through learning in the step of generating the chatbot. The intention-menu matching information generated through learning may be included in the web page menu model and stored in the database 150 .

의도-메뉴 매칭 정보는 특정 웹사이트의 각 메뉴와 해당 메뉴에 접근하는 사용자의 의도를 매칭한 것으로, 기본적으로 일대일 매칭 관계로 정의될 수 있으나, 반드시 이에 한정되지 않고, 일대다 매칭 관계로 정의될 수 있다. 예를 들어, 특정 웹사이트의 A메뉴는 사용자의 의도 a, b와 매칭될 수 있고, B메뉴는 사용자의 의도 a와 매칭될 수 있으며, C메뉴는 사용자의 의도 a, c와 매칭될 수 있다. 의도-메뉴 매칭 정보는 각 의도별 메뉴 리스트 또는 각 메뉴별 의도 리스트 형태로 표현될 수 있고, 의도-메뉴에 관한 테이블 형태로 표현될 수도 있다.The intention-menu matching information matches each menu of a specific website with the intention of the user accessing the menu, and may be basically defined as a one-to-one matching relationship, but is not necessarily limited thereto, and may be defined as a one-to-many matching relationship. can For example, menu A of a specific website may match user intentions a and b, menu B may match user intention a, and menu C may match user intentions a and c. . The intention-menu matching information may be expressed in the form of a menu list for each intention or an intention list for each menu, or may be expressed in the form of a table regarding the intention-menu.

일 실시예에서, 자연어 응답 제공부(350)는 미리 정의된 웹사이트별 사이트맵, 메뉴 구조 및 인포메이션 아키텍처(Information Architecture)를 통해 사용자의 의도에 매칭되고 자연어 입력에 응답하는 자연어 응답을 생성할 수 있다. 웹페이지 내비게이션 장치(130)는 웹사이트별 사이트맵, 메뉴 구조 및 인포메이션 아키텍처에 관한 데이터를 사전에 구축하여 데이터베이스(150)에 저장할 수 있다. 자연어 응답 제공부(350)는 자연어 입력이 수신된 경우 1차적으로 데이터베이스(150)를 통해 사용자가 접속한 특정 웹사이트에 관한 사이트맵, 메뉴 구조 및 인포메이션 아키텍처를 검색할 수 있고, 해당 특정 웹사이트에 관한 정보가 없는 경우 2차적으로 학습에 의해 생성된 웹페이지 메뉴 모델을 기초로 자연어 입력에 응답하는 자연어 응답을 생성할 수 있다.In an embodiment, the natural language response providing unit 350 may generate a natural language response that matches the user's intention and responds to a natural language input through a predefined website-specific site map, menu structure, and information architecture. there is. The web page navigation device 130 may build data on a site map for each website, a menu structure, and an information architecture in advance and store it in the database 150 . When a natural language input is received, the natural language response providing unit 350 may search the sitemap, menu structure, and information architecture for a specific website accessed by the user through the database 150 primarily, and the specific website When there is no information on , a natural language response responding to a natural language input may be generated based on a web page menu model generated by secondarily learning.

일 실시예에서, 자연어 응답 제공부(350)는 주기적인 웹크롤링(web-crawling)을 통해 웹페이지 모집단을 갱신하고, 웹페이지 모집단에 대해 웹페이지 주소를 기초로 그룹화하여 복수의 웹페이지 그룹들을 생성하는 단계, 복수의 웹페이지 그룹들을 분석하여 웹페이지 주소 별로 메뉴 구조를 획득하는 단계, 메뉴 구조의 메뉴와 해당 웹페이지 그룹의 웹페이지 간의 제1 맵핑(mapping)을 수행하는 단계 및 해당 웹페이지 그룹의 웹페이지별 접속 기록을 기초로 웹페이지와 사용자의 방문 의도 간의 제2 맵핑을 수행하는 단계를 통해 학습을 수행할 수 있다. In one embodiment, the natural language response providing unit 350 updates the web page population through periodic web-crawling, and groups the web page population based on the web page address to form a plurality of web page groups. generating, analyzing a plurality of web page groups to obtain a menu structure for each web page address, performing a first mapping between a menu of a menu structure and a web page of a corresponding web page group, and a corresponding web page Learning may be performed by performing a second mapping between the web page and the user's visit intention based on the group's access record for each web page.

자연어 응답 제공부(350)는 챗봇 생성 시점을 기준으로 학습을 수행할 수 있고, 이후 갱신되는 웹페이지 정보를 반영하기 위하여 주기적으로 웹크롤링(web-crawling)을 수행하여 웹페이지 모집단을 갱신할 수 있다. 자연어 응답 제공부(350)에 의해 수행되는 학습 과정의 일 실시예로서 수행되는 구체적인 단계별 내용에 대해서는 도 5에서 보다 자세히 설명한다.The natural language response providing unit 350 may perform learning based on the chatbot creation time, and periodically perform web-crawling to reflect the web page information updated thereafter to update the web page population. there is. Specific step-by-step contents performed as an embodiment of the learning process performed by the natural language response providing unit 350 will be described in more detail with reference to FIG. 5 .

일 실시예에서, 자연어 응답 제공부(350)는 웹페이지 모집단 관리 모듈(351), 학습/모델 생성 모듈(353), 내비게이션 객체 생성 모듈(355), 자연어 응답 생성 모듈(357) 및 제어 모듈(359)을 포함할 수 있다. 제어 모듈(359)은 자연어 응답 제공부(350)의 전체적인 동작을 제어하고, 웹페이지 모집단 관리 모듈(351), 학습/모델 생성 모듈(353), 내비게이션 객체 생성 모듈(355) 및 자연어 응답 생성 모듈(357) 간의 제어 흐름 또는 데이터 흐름을 관리할 수 있다.In an embodiment, the natural language response providing unit 350 includes a web page population management module 351 , a learning/model generation module 353 , a navigation object generation module 355 , a natural language response generation module 357 and a control module ( 359) may be included. The control module 359 controls the overall operation of the natural language response providing unit 350 , the web page population management module 351 , the learning/model generation module 353 , the navigation object generation module 355 , and the natural language response generation module 357 may manage the control flow or data flow between them.

각 모듈별 동작을 구체적으로 설명하면, 웹페이지 모집단 관리 모듈(351)은 웹페이지 모집단을 생성하고 주기적으로 갱신할 수 있고, 학습/모델 생성 모듈(353)은 웹페이지 모집단에 대한 학습을 통해 웹페이지 메뉴 모델을 생성할 수 있으며, 내비게이션 객체 생성 모듈(355)은 사용자의 의도에 매칭되는 메뉴에 관한 내비게이션 객체를 생성할 수 있고, 자연어 응답 생성 모듈(357)은 내비게이션 객체를 포함하고 자연어 입력에 응답하는 자연어 응답을 생성할 수 있다. 자연어 응답 제공부(350)에 의해 수행되는 자연어 응답 생성 과정의 일 실시예로서 각 모듈별 구체적인 동작 내용에 대해서는 도 6에서 보다 자세히 설명한다.When the operation for each module is described in detail, the web page population management module 351 may generate and periodically update the web page population, and the learning/model generation module 353 may provide a web page population through learning of the web page population. The page menu model may be generated, the navigation object generation module 355 may generate a navigation object related to a menu that matches the user's intention, and the natural language response generation module 357 includes the navigation object and responds to the natural language input. It can generate responsive natural language responses. As an embodiment of the natural language response generation process performed by the natural language response providing unit 350 , specific operation details for each module will be described in more detail with reference to FIG. 6 .

제어부(370)는 웹페이지 내비게이션 장치(130)의 전체적인 동작을 제어하고, 자연어 입력 수신부(310), 사용자 의도 결정부(330) 및 자연어 응답 제공부(350) 간의 제어 흐름 또는 데이터 흐름을 관리할 수 있다.The controller 370 controls the overall operation of the web page navigation device 130 , and manages the control flow or data flow between the natural language input receiving unit 310 , the user intention determining unit 330 , and the natural language response providing unit 350 . can

도 4는 도 1에 있는 웹페이지 내비게이션 장치에서 수행되는 웹페이지 내비게이션 과정을 설명하는 순서도이다.FIG. 4 is a flowchart illustrating a webpage navigation process performed by the webpage navigation device of FIG. 1 .

도 4를 참조하면, 웹페이지 내비게이션 장치(130)는 자연어 입력 수신부(310)를 통해 특정 웹페이지에 접속한 사용자 단말(110)로부터 해당 특정 웹페이지 상에서 제공되는 챗봇(chatbot)을 통해 자연어 입력을 수신할 수 있다(단계 S410). 웹페이지 내비게이션 장치(130)는 사용자 의도 결정부(330)를 통해 자연어 입력에 관한 자연어 이해(Natural Language Understanding, NLU)를 통해 사용자의 의도(intent)를 결정할 수 있다(단계 S430). 웹페이지 내비게이션 장치(130)는 자연어 응답 제공부(350)를 통해 특정 웹페이지를 포함하는 웹페이지 모집단에 대한 학습을 통해 생성되고 의도-메뉴 매칭 정보를 포함하는 웹페이지 메뉴 모델을 기초로, 사용자의 의도에 매칭되고 자연어 입력에 응답하는 자연어 응답을 생성하여 챗봇을 통해 사용자 단말(110)에게 제공할 수 있다(단계 S450).Referring to FIG. 4 , the web page navigation device 130 receives natural language input through a chatbot provided on the specific web page from the user terminal 110 accessing the specific web page through the natural language input receiving unit 310 . can be received (step S410). The web page navigation device 130 may determine the user's intent through natural language understanding (NLU) regarding natural language input through the user intention determiner 330 (step S430). The web page navigation device 130 is generated through learning of a web page population including a specific web page through the natural language response providing unit 350 and based on a web page menu model including intention-menu matching information, the user A natural language response matching the intention of and responding to the natural language input may be generated and provided to the user terminal 110 through the chatbot (step S450).

도 5는 도 3에 있는 자연어 응답 제공부에서 수행되는 웹페이지 모집단에 대한 학습 과정의 일 실시예를 설명하는 순서도이다.FIG. 5 is a flowchart illustrating an embodiment of a learning process for a web page population performed by the natural language response providing unit of FIG. 3 .

도 5를 참조하면, 본 발명의 일 실시예에 따른 웹페이지 내비게이션 장치(130)는 챗봇을 생성하는 시점에서 웹페이지 모집단에 대한 학습을 통해 다양한 웹사이트의 메뉴 구조에 관한 정보를 데이터베이스화 할 수 있고, 자연어 응답 제공부(350)를 통해 웹페이지 모집단에 대한 학습을 수행할 수 있으며, 구체적인 학습 과정은 다음의 순서에 따라 진행될 수 있다.Referring to FIG. 5 , the web page navigation device 130 according to an embodiment of the present invention can database information on the menu structure of various websites through learning about the web page population at the time of generating the chatbot. In addition, learning on the web page population may be performed through the natural language response providing unit 350 , and a specific learning process may be performed according to the following sequence.

-단계 S510: 자연어 응답 제공부(350)는 웹페이지 모집단에 대해 웹페이지 주소를 기초로 그룹화하여 복수의 웹페이지 그룹들을 생성할 수 있다. 웹페이지 주소는 도메인(domain) 또는 IP 주소로 표현될 수 있고, 자연어 응답 제공부(350)는 도메인별 또는 IP 주소별로 웹페이지들을 그룹핑(grouping)하여 웹페이지 그룹을 생성할 수 있다. 따라서, 하나의 웹페이지 그룹은 특정 웹사이트를 구성하는 웹페이지들을 포함할 수 있다.-Step S510: The natural language response providing unit 350 may generate a plurality of webpage groups by grouping the webpage population based on the webpage address. The web page address may be expressed as a domain or an IP address, and the natural language response providing unit 350 may create a web page group by grouping the web pages for each domain or IP address. Accordingly, one webpage group may include webpages constituting a specific website.

-단계 S530: 자연어 응답 제공부(350)는 복수의 웹페이지 그룹들을 분석하여 웹페이지 주소 별로 메뉴 구조를 획득할 수 있다. 자연어 응답 제공부(350)는 웹페이지별 연결 관계를 분석하여 트리(tree) 형태의 데이터 구조를 구축할 수 있다. 예를 들어, 제1 웹페이지에서 페이지 링크를 통해 제2 내지 제4 웹페이지로 이동할 수 있는 경우 제1 웹페이지에 대응되는 노드를 부모 노드로 하여 제2 내지 제4 웹페이지에 각각 대응되는 3개의 자식 노드로 연결된 트리 구조가 형성될 수 있다. 따라서, 특정 웹페이지 주소의 메인 페이지(또는 홈페이지)에 대응되는 노드가 루트(root) 노드에 해당할 수 있다.-Step S530: The natural language response providing unit 350 may analyze a plurality of web page groups to obtain a menu structure for each web page address. The natural language response providing unit 350 may construct a tree-type data structure by analyzing a connection relationship for each web page. For example, when it is possible to move from the first web page to the second to fourth web pages through a page link, 3 corresponding to the second to fourth web pages, respectively, with the node corresponding to the first web page as the parent node. A tree structure connected with child nodes may be formed. Accordingly, a node corresponding to a main page (or homepage) of a specific web page address may correspond to a root node.

-단계 S550: 자연어 응답 제공부(350)는 메뉴 구조의 메뉴와 해당 웹페이지 그룹의 웹페이지 간의 제1 맵핑(mapping)을 수행할 수 있다. 즉, 제1 맵핑은 메뉴와 웹페이지 간의 연결을 설정하는 동작에 해당할 수 있고, 메뉴 구조의 각 메뉴에 대응되는 노드는 맵핑된 웹페이지에 대한 정보를 포함하여 구현될 수 있다.-Step S550: The natural language response providing unit 350 may perform a first mapping between a menu of a menu structure and a web page of a corresponding web page group. That is, the first mapping may correspond to an operation of establishing a connection between a menu and a web page, and a node corresponding to each menu in the menu structure may be implemented by including information on the mapped web page.

-단계 S570: 자연어 응답 제공부(350)는 해당 웹페이지 그룹의 웹페이지별 접속 기록을 기초로 웹페이지와 사용자의 방문 의도 간의 제2 맵핑을 수행할 수 있다. 즉, 제2 맵핑은 웹페이지와 의도 간의 연결을 설정하는 동작에 해당할 수 있고, 웹페이지를 연결 매개체로 제1 및 제2 맵핑을 통해 메뉴와 의도 간의 연결 관계가 형성될 수 있다. 이 때, 사용자의 방문 의도는 해당 웹페이지의 메타 데이터와 컨텐츠 데이터를 기초로 추정될 수 있다. 예를 들어, 해당 웹페이지가 특허출원 번호를 발급받는 방법에 관한 내용을 포함하고 있는 경우 해당 웹페이지를 방문한 사용자는 특허출원에 관한 정보를 획득하기 위한 의도를 가진 것으로 추정할 수 있다.-Step S570: The natural language response providing unit 350 may perform a second mapping between the webpage and the user's intention to visit, based on the access record for each webpage of the corresponding webpage group. That is, the second mapping may correspond to an operation of establishing a connection between the web page and the intent, and a connection relationship between the menu and the intent may be formed through the first and second mappings using the web page as a connection medium. In this case, the user's intention to visit may be estimated based on metadata and content data of the corresponding web page. For example, if the corresponding web page contains information on how to obtain a patent application number, it can be assumed that the user who visited the corresponding web page has an intention to obtain information about the patent application.

도 6은 도 3에 있는 자연어 응답 제공부에서 수행되는 자연어 응답 생성 과정의 일 실시예를 설명하는 순서도이다.6 is a flowchart illustrating an embodiment of a natural language response generation process performed by the natural language response providing unit of FIG. 3 .

도 6을 참조하면, 자연어 응답 제공부(350)는 웹페이지 모집단 관리 모듈(351)을 통해 웹페이지 모집단을 생성하고 주기적으로 갱신할 수 있다(단계 S610). 웹페이지 모집단 관리 모듈(351)은 웹스크래퍼(web-scraper) 또는 웹크롤러(web-crawler)를 포함하여 구현될 수 있고, 특정 URL 리스트에 있는 각 URL에 해당하는 웹사이트를 스크랩하여 웹페이지 모집단을 생성할 수 있다. 자연어 응답 제공부(350)에 의해 수행되는 갱신 주기는 웹페이지 내비게이션 장치(130)에 의해 사전에 설정될 수 있다.Referring to FIG. 6 , the natural language response providing unit 350 may generate and periodically update a web page population through the web page population management module 351 (step S610). The webpage population management module 351 may be implemented including a web-scraper or a web-crawler, and scrapes a website corresponding to each URL in a specific URL list to scrap a webpage population. can create The update cycle performed by the natural language response providing unit 350 may be preset by the web page navigation device 130 .

자연어 응답 제공부(350)는 학습/모델 생성 모듈(353)을 통해 웹페이지 모집단에 대한 학습을 통해 웹페이지 메뉴 모델을 생성할 수 있다(단계 S630). 웹페이지 메뉴 모델은 웹페이지를 구성하는 메뉴 구조에 관한 정보, 메뉴와 의도 간의 매칭 정보를 포함하여 생성될 수 있다. The natural language response providing unit 350 may generate a web page menu model through learning on the web page population through the learning/model generation module 353 (step S630). The web page menu model may be generated by including information about a menu structure constituting a web page and matching information between a menu and an intention.

일 실시예에서, 학습/모델 생성 모듈(353)은 자연어 입력에 대응하여 제공된 자연어 응답에 대한 사용자의 반응을 기초로 웹페이지 메뉴 모델을 갱신할 수 있다. 예를 들어, 학습/모델 생성 모듈(353)은 자연어 응답과 함께 제공된 페이지 링크를 통해 사용자가 해당 웹페이지를 방문한 시점부터 해당 웹페이지를 이탈한 시점까지의 경과 시간을 기초로 사용자의 반응에 관한 반응 점수를 산출할 수 있고, 반응 점수가 기준 점수 이상이면 긍정적 반응으로, 기준 점수 이하이면 부정적인 반응으로 결정할 수 있다. 학습/모델 생성 모듈(353)은 사용자의 반응의 긍정 또는 부정을 기초로 웹페이지 메뉴 모델을 갱신할 수 있다.In an embodiment, the learning/model generating module 353 may update the webpage menu model based on the user's response to the natural language response provided in response to the natural language input. For example, the learning/model generation module 353 may be configured to relate to the user's response based on the elapsed time from the time the user visits the webpage through the page link provided with the natural language response to the time when the user leaves the webpage. A response score may be calculated, and if the response score is greater than or equal to a reference score, it may be determined as a positive response, and if the response score is less than or equal to the reference score, it may be determined as a negative response. The learning/model generating module 353 may update the webpage menu model based on the positive or negative of the user's response.

자연어 응답 제공부(350)는 내비게이션 객체 생성 모듈(355)을 통해 사용자의 의도에 매칭되는 메뉴에 관한 내비게이션 객체를 생성할 수 있다(단계 S650). 내비게이션 객체는 사용자가 원하는 정보를 제공할 수 있는 웹페이지로 안내하는 기능을 제공할 수 있고, 챗봇의 특성이나 챗봇이 제공되는 환경에 따라 다양한 형태로 구현될 수 있다.The natural language response providing unit 350 may generate a navigation object related to a menu matching the user's intention through the navigation object generating module 355 (step S650). The navigation object may provide a function of guiding a user to a web page that can provide desired information, and may be implemented in various forms depending on the characteristics of the chatbot or the environment in which the chatbot is provided.

일 실시예에서, 내비게이션 객체 생성 모듈(355)은 사용자의 의도와 매칭되는 메뉴와 연관된 웹페이지로 이동할 수 있는 페이지 링크(link)를 내비게이션 객체로서 생성할 수 있다. 따라서, 사용자는 해당 페이지 링크를 클릭하거나 선택함으로써 메뉴 구조를 찾아 다닐 필요 없이 원하는 정보에 빠르게 접근할 수 있다.In an embodiment, the navigation object creation module 355 may generate a page link that may move to a web page associated with a menu matching the user's intention as a navigation object. Accordingly, the user can quickly access desired information by clicking or selecting the corresponding page link, without having to navigate through the menu structure.

일 실시예에서, 내비게이션 객체 생성 모듈(355)은 사용자의 의도와 매칭되는 메뉴와 연관된 웹페이지로 자동 이동할 수 있는 자동이동 명령(instruction)(또는 기능)을 내비게이션 객체로서 생성할 수 있다. 자동이동 명령은 웹페이지의 자동 이동에 관한 명령어에 해당할 수 있고, 웹페이지의 구현 환경에 따라 다양한 형태로 구현될 수 있다.In an embodiment, the navigation object creation module 355 may generate an automatic navigation instruction (or function) capable of automatically moving to a webpage associated with a menu matching a user's intention as a navigation object. The automatic movement command may correspond to a command related to automatic movement of a web page, and may be implemented in various forms according to the implementation environment of the web page.

이 경우, 내비게이션 객체는 자연어 응답에 포함될 수 있지만 사용자 단말(110) 상에서 표시되지 않을 수 있고, 사용자는 챗봇을 통해 제공되는 자연어 응답을 확인한 후 별도의 동작을 수행하지 않더라도 자동으로 특정 웹페이지로 이동할 수 있다. 예를 들어, 내비게이션 객체는 페이지 이동에 관한 자바 스크립트로 구현될 수 있고, 챗봇을 통해 웹페이지로 전달됨으로써 사용자의 응답을 기다리지 않더라도 페이지 이동에 관한 동작이 자동으로 수행될 수 있다.In this case, the navigation object may be included in the natural language response, but may not be displayed on the user terminal 110, and the user may automatically move to a specific web page without performing a separate operation after checking the natural language response provided through the chatbot. can For example, the navigation object may be implemented in JavaScript related to page movement, and by being delivered to a web page through a chatbot, an operation related to page movement may be automatically performed without waiting for a user's response.

자연어 응답 제공부(350)는 자연어 응답 생성 모듈(357)을 통해 내비게이션 객체를 포함하고 자연어 입력에 응답하는 자연어 응답을 생성할 수 있다(단계 S670).The natural language response providing unit 350 may include a navigation object through the natural language response generating module 357 and generate a natural language response responding to the natural language input (step S670).

일 실시예에서, 자연어 응답 생성 모듈(357)은 적어도 하나의 파라미터를 포함하는 복수의 응답 예문들 중 어느 하나를 선별하고 적어도 하나의 파라미터를 내비게이션 객체로 대체함으로써 자연어 응답을 생성할 수 있다. 예를 들어, 선별된 응답 예문이 “문의하신 내용에 관한 페이지는 #parameter 입니다.”이고 파라미터가 “#parameter”이며 내비게이션 객체가 “www.abc.com”인 경우, 자연어 응답 생성 모듈(357)은 파라미터를 내비게이션 객체로 대체하여 “문의하신 내용에 관한 페이지는 www.abc.com 입니다.”와 같은 자연어 응답을 생성할 수 있다.In an embodiment, the natural language response generating module 357 may generate a natural language response by selecting any one of a plurality of response examples including at least one parameter and replacing the at least one parameter with a navigation object. For example, if the selected response example sentence is “The page related to your inquiry is #parameter”, the parameter is “#parameter”, and the navigation object is “www.abc.com”, the natural language response generation module 357 can generate a natural language response such as "The page for your inquiry is www.abc.com" by replacing the parameter with a navigation object.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the above has been described with reference to preferred embodiments of the present invention, those skilled in the art can variously modify and change the present invention within the scope without departing from the spirit and scope of the present invention as set forth in the claims below. You will understand that it can be done.

100: 챗봇 기반의 웹페이지 내비게이션 시스템
110: 사용자 단말 130: 웹페이지 내비게이션 장치
150: 데이터베이스
210: 프로세서 230: 메모리
250: 사용자 입출력부 270: 네트워크 입출력부
310: 자연어 입력 수신부 330: 사용자 의도 결정부
350: 자연어 응답 제공부 370: 제어부
351: 웹페이지 모집단 관리 모듈 353: 학습/모델 생성 모듈
355: 내비게이션 객체 생성 모듈 357: 자연어 응답 생성 모듈
359: 제어 모듈
100: chatbot-based web page navigation system
110: user terminal 130: web page navigation device
150: database
210: processor 230: memory
250: user input/output unit 270: network input/output unit
310: natural language input receiving unit 330: user intention determining unit
350: natural language response providing unit 370: control unit
351: web page population management module 353: learning/model generation module
355: navigation object generation module 357: natural language response generation module
359: control module

Claims (8)

특정 웹페이지에 접속한 사용자 단말로부터 해당 특정 웹페이지 상에서 제공되는 챗봇(chatbot)을 통해 자연어 입력을 수신하는 자연어 입력 수신부;
상기 자연어 입력에 관한 자연어 이해(Natural Language Understanding, NLU)를 통해 사용자의 의도(intent)를 결정하고, 상기 사용자의 의도에 대한 결정에 실패한 경우 상기 자연어 입력을 기초로 복수의 의도 추론 시나리오들 중 어느 하나를 선택하고 해당 의도 추론 시나리오에 따라 상기 챗봇을 통해 상기 사용자 단말에게 추가적인 자연어 입력을 요청하는 사용자 의도 결정부; 및
상기 특정 웹페이지를 포함하는 웹페이지 모집단에 대한 학습을 통해 생성되고 의도-메뉴 매칭 정보를 포함하는 웹페이지 메뉴 모델을 기초로, 상기 사용자의 의도에 매칭되고 상기 자연어 입력에 응답하는 자연어 응답을 생성하여 상기 챗봇을 통해 상기 사용자 단말에게 제공하는 자연어 응답 제공부를 포함하는 챗봇 기반의 웹페이지 내비게이션 장치.
a natural language input receiving unit for receiving natural language input from a user terminal accessing a specific web page through a chatbot provided on the specific web page;
The user's intent is determined through Natural Language Understanding (NLU) for the natural language input, and when the determination of the user's intent fails, any one of a plurality of intent inference scenarios based on the natural language input a user intention determining unit that selects one and requests an additional natural language input from the user terminal through the chatbot according to a corresponding intention inference scenario; and
A natural language response that matches the user's intention and responds to the natural language input is generated based on a web page menu model that is generated through learning on a web page population including the specific web page and includes intention-menu matching information. A chatbot-based web page navigation device including a natural language response providing unit to provide to the user terminal through the chatbot.
제1항에 있어서, 상기 자연어 입력 수신부는
상기 사용자 단말의 마이크를 통해 수신되는 음성을 기초로 변환된 텍스트를 상기 자연어 입력으로서 수신하는 것을 특징으로 하는 챗봇 기반의 웹페이지 내비게이션 장치.
According to claim 1, wherein the natural language input receiving unit
A chatbot-based web page navigation device, characterized in that the text converted based on the voice received through the microphone of the user terminal is received as the natural language input.
삭제delete 제1항에 있어서, 상기 자연어 응답 제공부는
주기적인 웹크롤링(web-crawling)을 통해 상기 웹페이지 모집단을 갱신하고,
상기 웹페이지 모집단에 대해 웹페이지 주소를 기초로 그룹화하여 복수의 웹페이지 그룹들을 생성하는 단계, 상기 복수의 웹페이지 그룹들을 분석하여 상기 웹페이지 주소 별로 메뉴 구조를 획득하는 단계, 상기 메뉴 구조의 메뉴와 해당 웹페이지 그룹의 웹페이지 간의 제1 맵핑(mapping)을 수행하는 단계 및 상기 해당 웹페이지 그룹의 웹페이지별 접속 기록을 기초로 상기 웹페이지와 사용자의 방문 의도 간의 제2 맵핑을 수행하는 단계를 통해 상기 학습을 수행하는 것을 특징으로 하는 챗봇 기반의 웹페이지 내비게이션 장치.
The method of claim 1, wherein the natural language response providing unit
Updating the web page population through periodic web-crawling,
Generating a plurality of web page groups by grouping the web page population based on a web page address, analyzing the plurality of web page groups to obtain a menu structure for each web page address, the menu of the menu structure and performing a first mapping between the webpage of the corresponding webpage group and performing a second mapping between the webpage and the user's intention to visit based on the access record for each webpage of the corresponding webpage group. A chatbot-based web page navigation device, characterized in that the learning is performed through
제1항에 있어서, 상기 자연어 응답 제공부는
상기 웹페이지 모집단을 생성하고 주기적으로 갱신하는 웹페이지 모집단 관리 모듈;
상기 웹페이지 모집단에 대한 학습을 통해 상기 웹페이지 메뉴 모델을 생성하는 학습/모델 생성 모듈;
상기 사용자의 의도에 매칭되는 메뉴에 관한 내비게이션 객체를 생성하는 내비게이션 객체 생성 모듈; 및
상기 내비게이션 객체를 포함하고 상기 자연어 입력에 응답하는 자연어 응답을 생성하는 자연어 응답 생성 모듈을 포함하는 것을 특징으로 하는 챗봇 기반의 웹페이지 내비게이션 장치.
The method of claim 1, wherein the natural language response providing unit
a web page population management module for generating and periodically updating the web page population;
a learning/model generation module for generating the web page menu model through learning of the web page population;
a navigation object creation module that generates a navigation object related to a menu matching the user's intention; and
and a natural language response generating module including the navigation object and generating a natural language response in response to the natural language input.
제5항에 있어서, 상기 내비게이션 객체 생성 모듈은
상기 사용자의 의도와 매칭되는 메뉴와 연관된 웹페이지로 이동할 수 있는 페이지 링크(link)를 상기 내비게이션 객체로서 생성하는 것을 특징으로 하는 챗봇 기반의 웹페이지 내비게이션 장치.
The method of claim 5, wherein the navigation object creation module
A chatbot-based web page navigation device, characterized in that, as the navigation object, a page link that can move to a web page associated with a menu matching the user's intention is generated.
제5항에 있어서, 상기 자연어 응답 생성 모듈은
적어도 하나의 파라미터를 포함하는 복수의 응답 예문들 중 어느 하나를 선별하고 상기 적어도 하나의 파라미터를 상기 내비게이션 객체로 대체함으로써 상기 자연어 응답을 생성하는 것을 특징으로 하는 챗봇 기반의 웹페이지 내비게이션 장치.
The method of claim 5, wherein the natural language response generation module is
A chatbot-based web page navigation apparatus, characterized in that the natural language response is generated by selecting any one of a plurality of response examples including at least one parameter and replacing the at least one parameter with the navigation object.
웹페이지 내비게이션(navigation) 장치에서 수행되는 웹페이지 내비게이션 방법에 있어서,
특정 웹페이지에 접속한 사용자 단말로부터 해당 특정 웹페이지 상에서 제공되는 챗봇(chatbot)을 통해 자연어 입력을 수신하는 단계;
상기 자연어 입력에 관한 자연어 이해(Natural Language Understanding, NLU)를 통해 사용자의 의도(intent)를 결정하고, 상기 사용자의 의도에 대한 결정에 실패한 경우 상기 자연어 입력을 기초로 복수의 의도 추론 시나리오들 중 어느 하나를 선택하고 해당 의도 추론 시나리오에 따라 상기 챗봇을 통해 상기 사용자 단말에게 추가적인 자연어 입력을 요청하는 단계; 및
상기 특정 웹페이지를 포함하는 웹페이지 모집단에 대한 학습을 통해 생성되고 의도-메뉴 매칭 정보를 포함하는 웹페이지 메뉴 모델을 기초로, 상기 사용자의 의도에 매칭되고 상기 자연어 입력에 응답하는 자연어 응답을 생성하여 상기 챗봇을 통해 상기 사용자 단말에게 제공하는 단계를 포함하는 챗봇 기반의 웹페이지 내비게이션 방법.
In the web page navigation method performed in a web page navigation device,
Receiving a natural language input from a user terminal accessing a specific web page through a chatbot provided on the specific web page;
The user's intent is determined through Natural Language Understanding (NLU) for the natural language input, and when the determination of the user's intent fails, any one of a plurality of intent inference scenarios based on the natural language input selecting one and requesting an additional natural language input from the user terminal through the chatbot according to a corresponding intention inference scenario; and
A natural language response that matches the user's intention and responds to the natural language input is generated based on a web page menu model that is generated through learning on a web page population including the specific web page and includes intention-menu matching information. and providing to the user terminal through the chatbot.
KR1020190041301A 2019-04-09 2019-04-09 Chatbot-based web page navigation apparatus and method KR102285115B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190041301A KR102285115B1 (en) 2019-04-09 2019-04-09 Chatbot-based web page navigation apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190041301A KR102285115B1 (en) 2019-04-09 2019-04-09 Chatbot-based web page navigation apparatus and method

Publications (2)

Publication Number Publication Date
KR20200119016A KR20200119016A (en) 2020-10-19
KR102285115B1 true KR102285115B1 (en) 2021-08-04

Family

ID=73042710

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190041301A KR102285115B1 (en) 2019-04-09 2019-04-09 Chatbot-based web page navigation apparatus and method

Country Status (1)

Country Link
KR (1) KR102285115B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113688333B (en) * 2021-10-27 2022-02-08 腾讯科技(深圳)有限公司 Navigation information generation method and device, electronic equipment and storage medium
KR102551531B1 (en) * 2023-04-10 2023-07-05 (주)인스웨이브시스템즈 Context-based interactive service providing system and method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180096686A1 (en) * 2016-10-04 2018-04-05 Microsoft Technology Licensing, Llc Combined menu-based and natural-language-based communication with chatbots

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101502822B1 (en) 2012-11-30 2015-03-17 (주)인스웨이브시스템즈 Apparatus and method for web accessibility in mobile terminal
CN106156244B (en) 2015-04-28 2020-08-28 阿里巴巴集团控股有限公司 Information search navigation method and device
KR102426411B1 (en) * 2017-06-21 2022-07-29 삼성전자주식회사 Electronic apparatus for processing user utterance and server

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180096686A1 (en) * 2016-10-04 2018-04-05 Microsoft Technology Licensing, Llc Combined menu-based and natural-language-based communication with chatbots

Also Published As

Publication number Publication date
KR20200119016A (en) 2020-10-19

Similar Documents

Publication Publication Date Title
US20240038088A1 (en) Display apparatus and method for question and answer
US10831345B2 (en) Establishing user specified interaction modes in a question answering dialogue
CN108139849B (en) Action suggestions for user-selected content
US11194448B2 (en) Apparatus for vision and language-assisted smartphone task automation and method thereof
JP6942821B2 (en) Obtaining response information from multiple corpora
CN108369580B (en) Language and domain independent model based approach to on-screen item selection
RU2581840C2 (en) Registration for system level search user interface
US20140316764A1 (en) Clarifying natural language input using targeted questions
KR102285142B1 (en) Apparatus and method for recommending learning data for chatbots
JP2016519349A (en) Text prediction based on multi-language model
KR20210044310A (en) System and method for dynamic trend clustering
CN110770692B (en) Transferring data from memory to manage graphics output latency
KR102285115B1 (en) Chatbot-based web page navigation apparatus and method
US20220391595A1 (en) User discussion environment interaction and curation via system-generated responses
US20200035230A1 (en) System and method supporting context-specific language model
US11544467B2 (en) Systems and methods for identification of repetitive language in document using linguistic analysis and correction thereof
CN111611369B (en) Interaction method and related device based on artificial intelligence
US20170091211A1 (en) Method and system for generating search query suggestions
KR20150029719A (en) A web browser operation method and system
WO2021098876A1 (en) Question and answer method and apparatus based on knowledge graph
KR102289195B1 (en) Pagetalk offer device
US20170177632A1 (en) Method and apparatus for saving web content
JP7441576B1 (en) Information processing system, information processing method and program
US20220223141A1 (en) Electronic apparatus and method for controlling thereof
JP7191763B2 (en) Conversion device, conversion method and conversion program

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant