KR20220162681A - 대화형 정보 제공 서비스 방법 및 이를 위한 장치 - Google Patents

대화형 정보 제공 서비스 방법 및 이를 위한 장치 Download PDF

Info

Publication number
KR20220162681A
KR20220162681A KR1020220161633A KR20220161633A KR20220162681A KR 20220162681 A KR20220162681 A KR 20220162681A KR 1020220161633 A KR1020220161633 A KR 1020220161633A KR 20220161633 A KR20220161633 A KR 20220161633A KR 20220162681 A KR20220162681 A KR 20220162681A
Authority
KR
South Korea
Prior art keywords
question
clusters
cluster
information
questions
Prior art date
Application number
KR1020220161633A
Other languages
English (en)
Other versions
KR102654884B1 (ko
Inventor
박남현
김광섭
Original Assignee
주식회사 케이티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 케이티 filed Critical 주식회사 케이티
Priority to KR1020220161633A priority Critical patent/KR102654884B1/ko
Publication of KR20220162681A publication Critical patent/KR20220162681A/ko
Application granted granted Critical
Publication of KR102654884B1 publication Critical patent/KR102654884B1/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/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/243Natural language query formulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2452Query translation
    • G06F16/24522Translation of natural language queries to structured queries
    • 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/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/322Trees
    • 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/3332Query translation
    • G06F16/3338Query expansion
    • 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/35Clustering; Classification
    • 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/903Querying
    • G06F16/9032Query formulation
    • G06F16/90332Natural language query formulation or dialogue systems
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/086Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Physiology (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Business, Economics & Management (AREA)
  • Operations Research (AREA)
  • Tourism & Hospitality (AREA)

Abstract

본 발명은 대화형 질문에 대한 사용자의 선택 응답 정보를 기초로 사용자에게 검색된 정보를 제공하는 대화형 정보 제공 서비스 방법 및 이를 위한 장치에 관한 것이다. 본 발명에 따른 정보 제공 장치는, 질문별로 정의된 속성정보를 기초로, 질문 트리를 생성하는 트리 생성부; 사용자 단말로부터 대화형 정보 제공 서비스를 요청받으면, 상기 질문 트리에 형성된 계층적인 질문을 상기 사용자 단말로 순차적으로 제공하되, 질문에 대한 응답 정보에 근거하여 다음 레벨의 하위 질문을 선택하여 상기 사용자 단말로 전송하는 질문 제공부; 및 최종 질문에 대한 응답 정보가 상기 사용자 단말로부터 수신되면, 상기 최종 질문의 응답 정보와 대응되는 정보를 추출하여 상기 사용자 단말로 제공하는 정보 제공부를 포함한다.

Description

대화형 정보 제공 서비스 방법 및 이를 위한 장치{Method for providing interactive information service and apparatus therefor}
본 발명은 정보 제공 서비스 방법에 관한 것으로서, 더욱 상세하게는 대화형 질문에 대한 사용자의 선택 응답 정보를 기초로 사용자에게 검색된 정보를 제공하는 대화형 정보 제공 서비스 방법 및 이를 위한 장치에 관한 것이다.
오늘날 통신기기와 이동통신망의 발전으로 인하여, 방대한 데이터가 인터넷 상에 존재하고 있으며, 사용자들은 검색 기능을 통해서 원하는 정보를 취득하기도 한다.
하지만 이러한 수동적은 검색 방법은 각 사용자들에 검색 능력에 의해 편차가 발생하는 것으로서, 검색 능력이 좋은 사용자는 원하는 정보를 바로 획득하기도 하며 검색 능력이 떨어지는 사용자는 장시간에 거쳐 원하는 정보를 획득하기도 한다.
한편, 특정 카테고리 내에서 정보를 검색하여 사용자에게 제공하는 기술이 대두되었다. 아래의 특허문헌은 카테고리 식별자를 이용한 검색 방법 및 시스템에 대해서 개시한다.
그러나 이러한 카테고리 기반의 정보 검색 방법도, 사용자가 적절한 키워드를 입력하여 검색하여만 정확한 정보가 사용자에게 제공되며, 키워드가 부적절한 경우에 부정확한 정보가 제공되는 문제점이 있다. 또한, 종래의 카테고리 기반의 정보 검색 방법은, 부정확한 정보가 검색된 경우 계속적으로 키워드를 바꿔가며 검색해야 되는 불편함이 수반되는 문제점도 있다.
한국등록특허 10-0882437
본 발명은 이러한 종래의 문제점을 해결하기 위하여 제안된 것으로, 사용하기 편리하고 정확한 검색 정보를 사용자에게 제공할 수 있는 대화형 정보 제공 서비스 방법 및 이를 위한 장치를 제공하는데 그 목적이 있다.
본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
상기 목적을 달성하기 위한 본 발명의 제 1 측면에 따른 정보 제공 장치는, 질문별로 정의된 속성정보를 기초로, 질문 트리를 생성하는 트리 생성부; 사용자 단말로부터 대화형 정보 제공 서비스를 요청받으면, 상기 질문 트리에 형성된 계층적인 질문을 상기 사용자 단말로 순차적으로 제공하되, 질문에 대한 응답 정보에 근거하여 다음 레벨의 하위 질문을 선택하여 상기 사용자 단말로 전송하는 질문 제공부; 및 최종 질문에 대한 응답 정보가 상기 사용자 단말로부터 수신되면, 상기 최종 질문의 응답 정보와 대응되는 정보를 추출하여 상기 사용자 단말로 제공하는 정보 제공부를 포함하는 것을 특징으로 한다.
상기 목적을 달성하기 위한 본 발명의 제 2 측면에 따른 정보 제공 장치에서 대화형 정보 제공 서비스를 수행하는 방법은, 질문별로 정의된 속성정보를 기초로, 질문 트리를 생성하는 단계; 사용자 단말로부터 대화형 정보 제공 서비스를 요청받는 단계; 상기 질문 트리에 형성된 계층적인 질문을 상기 사용자 단말로 순차적으로 제공하되, 질문에 대한 응답 정보에 근거하여 다음 레벨의 하위 질문을 선택하여 상기 사용자 단말로 전송하는 단계; 및 최종 질문에 대한 응답 정보가 상기 사용자 단말로부터 수신되면, 상기 최종 질문의 응답 정보와 대응되는 정보를 추출하여 상기 사용자 단말로 제공하는 단계를 포함하는 것을 특징으로 한다.
본 발명은 복수의 선택형 질문에 대한 사용자의 응답 정보를 기초로, 데이터를 추출하여 사용자에게 제공함으로써, 정보 검색시에 편의성을 향상시키는 장점이 있다.
또한, 본 발명은 질문의 속성정보를 토대로 질문 트리를 생생하고, 이 질문 트리에 기초하여 연관관계가 높은 질문을 순차적으로 사용자에게 제공하고, 질문에 대한 사용자의 선택 응답을 기초로 정보를 사용자에게 제공하기 때문에, 사용자가 요구하는 정보를 정확하게 검색할 수 있는 효과가 있다.
본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 실시예를 예시하는 것이며, 발명을 실시하기 위한 구체적인 내용과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되어서는 아니 된다.
도 1은 본 발명의 일 실시예에 따른, 통신 시스템을 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른, 정보 제공 장치의 구성을 나타내는 도면이다.
도 3은 본 발명의 일 실시예에 따른, 속성정보를 포함하는 질문을 예시하는 도면이다.
도 4는 본 발명의 일 실시예에 따른, 정보 제공 장치에서 질문 트리를 생성하는 방법을 설명하는 흐름도이다.
도 5는 질문이 이분 군집되는 과정을 예시적으로 나타내는 도면이다.
도 6은 질문 트리가 생성되는 과정을 예시적으로 나타내는 도면이다.
도 7은 본 발명의 일 실시예에 따른, 질문 트리를 토대로 대화형 정보 제공 서비스를 사용자에게 제공하는 방법을 설명하는 흐름도이다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일 실시예를 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른, 통신 시스템을 나타내는 도면이다.
도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 통신 시스템은 사용자 단말(100) 및 정보 제공 장치(200)를 포함하여, 상기 사용자 단말(100)과 정보 제공 장치(200)는 네트워크(300)를 통해서 서로 통신한다. 상기 네트워크(300)는 이동통신망과 유선 인터넷망을 포함하는 것으로서, 본 발명의 주지의 관용 기술에 해당하므로 자세한 설명은 생략한다.
사용자 단말(100)은 사용자가 소지한 통신 장치로서, 정보 제공 장치(200)와 접속하여 대화형 정보 서비스를 제공받는다. 특히, 사용자 단말(100)은 정보 제공 장치(200)로 접속하여, 선택형 질문을 순차적으로 수신하고, 각각의 선택형 질문에 응답하여, 해당 응답에 부합되는 데이터 그룹을 정보 제공 장치(200)로부터 수신한다. 상기 선택형 질문은 복수의 선택 정보가 포함된 다지선다형, 네(yes)와 아니오(no) 중에서 어느 하나를 선택할 수 있는 양자택지형 등의 객관식 유형의 질문이다. 또한, 데이터 그룹은 하나의 이상의 데이터가 집합된 정보로서, 예컨대, 용도에 따라 API(application programming interface)가 집합된 API 데이터 그룹, 부서별로 구분된 부서 데이터 그룹, 여행지에 따라 구분된 여행지 데이터 그룹 등이다. 상기 사용자 단말(100)은 스마트폰 등과 같은 이동통신단말, 데스크톱 컴퓨터 등과 같은 개인용 컴퓨터 등이 채택될 수 있다.
정보 제공 장치(200)는 속성정보가 정의되며 인코딩 정보가 할당된 질문 및 이 질문과 대응되는 데이터 그룹을 데이터 유형별로 구분하여 저장한다. 또한, 정보 제공 장치(200)는 유전자 알고리즘을 이용하여 각 질문을 최적 군집으로 분리하고, 상기 분리된 군집을 토대로 데이터 유형별 질문 트리를 생성한다.
상기 유전자 알고리즘은, 자연의 진화 과정을 토대로 개발된 계산 모델로서, 최적의 해를 도출하기 위하여 사용되는 기법 중의 하나이다. 상기 유전자 알고리즘은 선택 연산, 교배 연산 및 돌연변이 연산을 거쳐서, 특정 문제에 대한 최적의 해를 도출한다. 본 발명의 실시예서는, 정보 제공 장치(200)가 각 질문을 노드로서 설정하고, 각 질문에 할당된 인코딩 정보를 이용하여 질문을 선택 연산, 교배 연산, 돌연변이 연산 및 적합도 평가를 반복적으로 수행하면서, 각 질문을 일정 개수의 최적 군집으로 분리한다. 여기서, 인코딩 정보는, 각 질문에 할당한 일정 자릿수의 식별정보를 나타내는 것으로서, 유전자 알고리즘에서의 유전자 정보(예컨대, 염색체 정보)와 대응되며, 사전에 생성되어 각 질문에 할당된다. 상기 인코딩 정보에는 10진수에 해당하는 일정 자릿수의 숫자가 기록된다. 선택적으로, 상기 인코딩 정보에는 2진수, 8진수, 16진수 등과 같은 다양한 형식의 데이터가 기록될 수도 있다.
상기 정보 제공 장치(200)는 사용자 단말(100)로 질문을 제공하고, 사용자 단말(100)에서 선택한 응답 정보에 근거하여, 연관되는 또 다른 질문을 계속적으로 제공한 후, 최종적인 질문의 응답 정보와 대응되는 정보를 추출하여 사용자 단말(100)로 제공한다. 정보 제공 장치(200)는 API 데이터 그룹, 부서별로 구분된 부서 데이터 그룹, 여행지에 따라 구분된 여행지 데이터 그룹 등 중에서 어느 하나를 정보로서 사용자 단말(100)로 제공할 수 있다.
도 2는 본 발명의 일 실시예에 따른, 정보 제공 장치의 구성을 나타내는 도면이다.
도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 정보 제공 장치(200)는 질문 제공부(210), 저장부(220), 트리 생성부(230) 및 정보 제공부(240)를 포함하며, 이러한 구성요소들은 하드웨어 또는 소프트웨어로 구현되거나, 하드웨어와 소프트웨어의 결합을 통해서 구현될 수 있다.
질문 제공부(210)는 트리 생성부(230)에 형성한 질문 트리를 토대로, 다수의 선택지와 질문 사항이 포함된 질문을 사용자 단말(100)로 제공하는 기능을 수행한다. 상기 질문 제공부(210)는 최초 질문으로서 루트 로드에 해당하는 질문을 사용자 단말(100)로 제공한다. 또한, 질문 제공부(210)는 사용자 단말(100)의 선택 응답 정보에 근거하여, 현재 질문 노드의 자식 노드 중에서 상기 선택 응답 정보에 대응되는 자식 노드의 질문을 추출하여 사용자 단말(100)로 제공한다.
저장부(220)는 메모리, 디스크 장치 등과 같은 저장 매체로서 각 데이터 유형에 대한 복수의 선택형 질문을 저장하고, 또한 질문과 대응되는 정보(즉, 데이터 그룹)를 저장한다. 또한, 저장부(220)는 데이터 유형별 질문 트리를 저장한다. 상기 질문에는 속성정보가 정의되고 있고 인코딩 정보가 할당되어 있으며, 복수의 선택지 정보가 질문에 포함된다. 또한, 상기 속성정보에는 데이터 그룹별 연관성 여부에 대한 정보가 기록된다. 상기 속성정보는 군집 분리의 적합도를 산출하는데 이용된다.
도 3은 본 발명의 일 실시예에 따른, 속성정보를 포함하는 질문을 예시하는 도면이다.
도 3을 참조하여 예를 들어 설명하면, 질문에는 다차원 좌표 형태의 속성정보가 포함된다. 예컨대, "육상 교통과 관련 있습니까?"의 질문에는 (1,1,1,1,1,1,1,1,1,0,0,0,0)의 속성정보가 포함되며, "해상 교통과 관련 있습니까?'의 질문에는 (0,0,0,0,0,0,0,0,0,1,0,0,0)의 속성정보가 포함된다. 각각의 속성정보는 다차원 좌표값으로 표현되며, 세부 값으로서 '0' 또는 '1'이 기록된다. 여기서, '1'은 해당 데이터 그룹과 관련성이 있음을 나타내는 플래그 정보이고, '0'은 해당 데이터 그룹과 관련성이 없음을 나타내는 플래그 정보이다. 도 3의 "해상 교통과 관련 있습니까?'의 질문에 포함된 속성정보에 따르면, 상기 질문은 "선박운항" 데이터 그룹과 관련성이 있으며, 이 외의 데이터 그룹과는 관련성이 없다.
트리 생성부(230)는 유전자 알고리즘을 이용하여 각 질문을 일정 개수의 최적 군집으로 분리하고, 이 분리된 군집을 토대로 데이터 유형별 질문 트리를 생성하여 저장부(220)에 저장하는 기능을 수행한다. 즉, 트리 생성부(230)는 유전자 알고리즘을 이용하여, 질문의 연관성에 따라 계층적인 구조 가지는 질문 트리를 생성하여 저장부(220)에 저장한다.
구체적으로, 트리 생성부(230)는 질문의 속성정보, 질문의 인코딩 정보 등의 인자를 토대로, 복수의 질문을 일정 개수의 최적 군집으로 초기 분리한다. 이때, 트리 생성부(230)는 질문들을 일정 개수의 임의의 군집으로 분리하고, 후술하는 수학식 1과 2를 이용하여 군집에 대한 내부 유사성과 외부 유사성을 산출하고, 상기 내부 유사성과 내부 유사성이 곱해진 최종 유사성이 산출하고 나서, 최종 유사성이 수렴될 때까지 선택 연산, 교배 연산, 돌연변이 연산 및 적합도 평가(즉, 최종 유사성 수렴 평가)를 반복하여, 질문들을 최적의 군집으로 초기 분리한다.
상기 선택 연산은 질문 중에서 교배(crossover) 대상이 되는 질문을 선택하는 것으서, 균등 비례 룰렛 휠 선택 기법, 토너먼트 선택 기법, 순위 기반 선택 기법 등이 이용될 수 있다. 상기 교배(crossover) 연산은 선택된 질문들을 교배하여 새로운 객체(즉, 인코딩 정보)를 생성하는 과정으로서, 교배되어 생성된 새로운 객체에는 부모의 유전자(즉, 인코딩 정보의 일부)가 상속된다. 상기 교배 연산에서는, 싸이클 교차 연산, 순서 교차 연산, 산술적 교차 연산, 휴리스틱 교차 연산 등이 이용될 수 있다. 상기 돌연변이 연산은, 새롭게 생성된 객체의 인코딩 정보의 일부 데이터를, 부모(즉, 선택 연산에서 선택되어진 질문)로부터 상속되지 않은 데이터(즉, 숫자)로 변경함으로써, 돌연변이 객체를 도출하는 과정을 나타낸다. 상기 변경하고자 하는 데이터를 난수 생성기를 통해서 생성될 수 있다.
이렇게 돌연변이 연산이 완료된 객체(즉, 인코딩 정보)는 특정 질문지의 인코딩 정보로 변경된다. 이때, 트리 생성부(230)는 돌연변이 연산이 완료된 객체와 가장 유사한 인코딩 정보를 가지는 질문을 확인하고, 이 질문의 인코딩 정보를 상기 돌연변이 완료된 인코딩 정보로 변경할 수 있다.
상기 선택 연산, 교배 연산, 돌연변이 연산에 따른 1 사이클이 완료되면, 특정 질문의 인코딩 정보가 갱신된다. 그러면, 트리 생성부(230)는 현재 분리된 군집에 속하는 질문의 속성정보를 수학식 1, 수학식 2에 대입하여, 현재 분리된 군집의 최종 유사성을 산출하고, 이 유사성이 수렴되고 있는지 여부를 판별하여, 수렴되고 있으면 현재 분리된 군집을 최적의 군집인 것으로 판별하고 군집 분리를 중단한다.
트리 생성부(230)는 최적의 군집이 초기에 분리되면, 제1군집의 중심값과 가까운 거리에 해당하는 속성정보를 가지는 질문을 루트 로드로 생성한다. 또한, 트리 생성부(230)는 초기에 분리된 제2군집에서 포함된 특정 질문을 상기 루트 로드의 제2자식 노드로 생성한다. 이때, 트리 생성부(230)는 제2군집의 중심값과 가장 가까운 거리에 해당하는 속성정보를 가지는 질문을 상기 루트 로드의 제2자식 노드로 생성할 수 있다.
또한, 트리 생성부(230)는 유전자 알고리즘의 선택 연산, 교배 연산 및 돌연변이 연산을 통해서, 분리된 제1군집과 제2군집 각각을 일정 개수의 서브 군집을 분리한다. 마찬가지로, 트리 생성부(230)는 최적으로 분리된 군집들을 임의의 서브 군집으로 분리하되, 상기 수학식 1과 2를 이용하여 서브 군집의 내부 유사성과 외부 유사성을 산출한 후, 내부 유사성과 외부 유사성이 곱해진 최종 유사성을 산출하고, 최종 유사성이 수렴될 때까지 유전자 알고리즘을 통한 군집 분리를 반복함으로써, 분리된 군집을 다시 최적의 서브 군집으로 각각 분리한다.
트리 생성부(230)는 제1군집의 서브 군집 중에서 연관성 플래그(즉, '1')의 빈도가 가장 높은 서브 군집의 대표 질문(즉, 서브 군집의 중심값과 가장 가까운 거리에 해당하는 속성정보를 가지는 질문)을 루트 노드의 제1자식 노드(예컨대, 오른쪽 자식 노드)로 생성한다. 또한, 트리 생성부(230)는 제1군집의 서브 군집 중에서 연관성 플래그(즉, '0')의 빈도가 가장 낮은 서브 군집의 대표 질문(즉, 서브 군집의 중심값과 가장 가까운 거리에 해당하는 속성정보를 가지는 질문)을 상기 제1자식 노드의 자식 노드로 생성한다. 게다가, 트리 생성부(230)는 제2군집의 서브 군집 중에서 연관성 플래그(즉, '1')의 빈도가 가장 높은 서브 군집의 대표 질문을 제2자식 노드(예컨대, 오른쪽 자식 노드)의 자식 노드로 생성하고, 제1군집의 서브 군집 중에서 연관성 플래그(즉, '0')의 빈도가 낮은 서브 군집중의 대표 질문을 상기 제2자식 노드의 또 다른 자식 노드로 생성한다.
이렇게 각각의 질문이 질문 트리에서 노드로 생성되기까지 서브 군집으로 분리하는 과정을 반복하면서, 상기 트리 생성부(230)는 부모 노드에 대한 자식 노드를 생성하는 과정을 계속적으로 진행한다.
한편, 자식 노드의 개수의 질문의 선택 정보 개수와 대응되어 생성된다. 즉, '예'와 '아니오'와 같은 양자택일형 선택 정보를 가지는 질문인 경우에 자식 노드는 최대 두 개가 생성될 수 있으며, 선택 정보 개수를 3개인 질문인 경우에 자식 노드는 최대 세 개가 생성될 수 있다.
정보 제공부(240)는 마지막 질문에 대한 응답 정보가 사용자 단말(100)로부터 수신되면, 상기 마지막 질문 및 응답 정보와 대응되는 정보(즉, 데이터 그룹)를 저장부(220)에 추출하여, 상기 정보를 사용자 단말(100)로 제공한다.
도 4는 본 발명의 일 실시예에 따른, 정보 제공 장치에서 질문 트리를 생성하는 방법을 설명하는 흐름도이다.
도 5는 질문이 이분 군집되는 과정을 예시적으로 나타내는 도면이다.
도 6은 질문 트리가 생성되는 과정을 예시적으로 나타내는 도면이다.
이하, 도 4와 도 6을 참조한 설명에서는, 질문이 양자택일형 질문이고 이에 따라 2진 트리가 형성되는 것으로 가정한다. 더불어, 부모 노드와 관련성이 높은 질문이 왼쪽 자식 노드(즉, 긍정 응답에 해당하는 자식 노드)에 생성되고, 관련성이 낮은 질문이 오른쪽 자식 노드(즉, 부정 응답에 해당하는 자식 노드)에 생성되는 것으로 가정한다.
도 4 내지 도 6을 참조하면, 트리 생성부(230)는 유전자 알고리즘의 선택 연산, 교배 연산, 돌연변이 연산 및 적합도 평가를 통하여, 복수의 질문을 두 개의 최적 군집으로 초기 분리한다(S401). 상기 트리 생성부(230)는 각 질문에 할당된 인코딩 정보를 이용하여, 각 질문의 교배 연산과 돌연변이 연산을 수행한다. 또한, 트리 생성부(230)는 유전자 알고리즘을 이용하여 질문들을 임의의 두 개의 군집으로 분리하되, 아래의 수학식 1과 2를 이용하여 임의로 분리된 군집의 내부 유사성과 외부 유사성을 산출한 후, 상기 내부 유사성과 외부 유사성이 곱해진 최종 유사성이 수렴될 때까지 군집 분리를 반복 수행하여, 질문들을 최적의 이분 군집으로 초기 분리한다. 부연하면, 트리 생성부(230)는 각 질문에 할당된 인코딩 정보를 유전자 정보로서 이용하여 선택 연산, 교배 연산 및 돌연변이 연산을 수행하여 군집을 분리하고, 적합도 평가 지표로서 최종 유사성을 이용한다.
Figure pat00001
여기서, Fitintra는 내부 유사성을 의미하고, k는 군집 개수, Ck는 k번째의 군집의 중심값, Xi는 같은 군집에 속해 있는 i번째 질문의 속성정보(즉, 다차원 좌표값)을 나타낸다.
Figure pat00002
여기서, Fitinter는 외부 유사성을 의미하고, k는 군집 개수, Ck는 k번째의 군집의 중심값, Xi는 타 군집 각각에 속해 있는 i번째 질문의 속성정보(즉, 다차원 좌표값), d는 최대 k값을 의미한다.
다음으로, 트리 생성부(230)는 복수의 질문들이 최적의 이분 군집으로 초기에 분리되면, 초기에 분리된 A 군집과 B 군집 중에서 어느 하나를 루트대상 군집으로 선정한다. 이때, 트리 생성부(230)는 속성정보에서 연관 플래그 정보 '1'의 빈도(즉, 1의 총 개수)가 많은 군집을 루트대상 군집으로 선정할 수도 있으며, 반대로 연관 플래그 정보 '0'의 빈도가 적은 군집을 루트대상 군집으로 선정할 수 있다. 도 4 내지 도 6을 참조한 설명에서는 A 군집이 루트대상 군집으로 선정된 것으로 설명된다.
도 5는 다차원 질문들을 2차원으로 단순화시킨 도면으로서, X좌표 축을 기준으로 왼쪽으로 가까울수록 연관 플래그 정보 '1'의 빈도가 많아짐을 의미한다. 도 5를 참조하여 예를 들어 설명하면, 트리 생성부(230)는 총 7개의 질문에 대해서, 1번부터 4번까지의 질문을 A 군집으로 형성하고 있으며, 5번부터 7번까지의 질문을 B 군집으로 형성하여, 질문들을 2개의 군집으로 분리하며, 이 중에서 A 군집을 루트대상 군집으로 선정할 수 있다.
이어서, 트리 생성부(230)는 선정된 루트대상 군집(즉, A 군집)의 중심값을 확인하고, 이 중심값과 가장 가까운 거리에 해당하는 속성정보(즉, 다차원 좌표정보)를 가지는 질문을 루트 로드로 생성한다(S403). 도 5의 (a)와 도 6의 (b)를 참조하면, 루트대상 군집인 A 군집의 중심값과 가장 가까운 3번 질문이 루트 로드로 생성된다.
다음으로, 트리 생성부(230)는 루트대상 군집으로 선정되지 않은 B 군집의 중심값을 확인하고, 이 군집의 중심값과 가장 가까운 속성정보를 가지는 질문을 루트 노드의 제1오른쪽 자식 노드로 생성한다(S405). 여기서, 오른쪽 자식 노드는 부모 노드와 연관성이 낮은 노드로서, 부정 응답에 해당되는 질문 노드이다. 도 5의 (a)와 도 6의 (a)를 참조하면, 루트대상 군집으로 선정되지 않은 B 군집의 중심값과 가장 가까운 거리에 있는 7번 질문이 루트 로드의 오른쪽 자식 노드로 생성된다.
다음으로, 트리 생성부(230)는 유전자 알고리즘(즉, 선택 연산, 교배 연산, 돌연변이 연산)을 이용하여 초기 분리된 각 군집을 다시 두 개의 최적의 서브 군집을 각각 분리한다(S407). 이때, 트리 생성부(230)는 초기 분리된 군집을 두 개의 서브 군집으로 분리하되, 상기 수학식 1과 2를 이용하여 서브 군집의 내부 유사성과 외부 유사성을 산출하다. 그리고 트리 생성부(230)는 상기 내부 유사성과 외부 유사성이 곱해진 최종 유사성을 산출하여, 최종 유사성이 수렴될 때까지 유전자 알고리즘을 통한 군집 분리를 다시 실행하는 과정을 반복함으로써, 분리된 군집을 최적의 서브 군집으로 각각 분리한다.
이어서 트리 생성부(230)는 분리된 서브 군집에 포함된 질문들을 자식 노드로서 생성하는 프로세스를 진행한다(S409). 즉, 트리 생성부(230)는 루트 대상 군집에 포함되는 서브 군집(즉, A-1 군집과 A-2 군집) 중에서 연관성 플래그(즉, '1')의 빈도가 가장 높은 서브 군집을 확인하고, 이 서브 군집의 대표 질문(즉, 서브 군집의 중심값과 가장 가까운 거리에 해당하는 속성정보를 가지는 질문)을 루트 노드의 제1왼쪽 자식 노드로 생성한다. 또한, 루트 대상 군집에 포함되는 서브 군집 중에서 연관성 플래그(즉, '0')의 빈도가 낮은 서브 군집의 대표 질문(즉, 서브 군집의 중심값과 가장 가까운 거리에 해당하는 속성정보를 가지는 질문)을 상기 제1왼쪽 자식 노드의 오른쪽 자식 노드로 생성한다. 이때, 트리 생성부(230)는 노드로서 선정되지 않은 질문 중에서 자식 노드를 선정하여 생성한다.
다음으로, 트리 생성부(230)는 B 군집의 서브 군집(즉, B-1 군집과 B-2 군집) 중에서 연관성 플래그(즉, '1')의 빈도가 가장 높은 서브 군집의 대표 질문을 제1오른쪽 자식 노드(즉, 루트 노드 오른쪽 자식 노드)의 왼쪽 자식 노드로 생성하고, B 군집의 서브 군집 중에서 연관성 플래그(즉, '0')의 빈도가 낮은 서브 군집의 대표 질문을 상기 제1오른쪽 자식 노드의 오른쪽 자식 노드로 생성한다.
도 5의 (b)와 도 6의 (b)를 참조하면, A 군집은 A-1 군집과 A-2 군집으로 분리되고, B 군집은 B-1 군집과 B-2 군집으로 분리된다. 그리고 A-1 군집과 A-2 군집 중에서, 연관성 플래그 빈도가 가장 높은 서브 군집인 A-1 군집의 중심값과 가장 가까운 노드인 2번 질문이 루트 노드(즉, 3번째 질문)의 왼쪽 자식 노드로 생성된다. 또한, 연관성 플래그 빈도가 가장 낮은 서브 군집인 A-2 군집의 중심값과 가까운 노드인 4번 질문이 2번 질문의 오른쪽 자식 노드로 생성된다. 또한, B-1 군집과 B-2 군집 중에서, 연관성 플래그 빈도가 가장 높은 서브 군집인 B-1 군집의 중심값과 가장 가까운 노드인 5번 질문이 루트 노드의 오른쪽 자식 노드(즉, 7번 질문)의 왼쪽 자식 노드로 생성된다. 또한, 연관성 플래그 빈도가 가장 낮은 서브 군집인 B-2 군집의 중심값과 가까운 노드인 6번 질문이 루트 노드의 오른쪽 자식 노드(즉, 7번 질문)의 오른쪽 자식 노드로 생성된다.
다음으로, 트리 생성부(230)는 종료 조건, 모든 질문 개수와 대응하여 노드가 트리에 형성되었는지 여부를 판별하여(S411), 종료 조건에 부합되지 않으면, S407 단계를 재진행하여 또 다른 자식 노드를 생성한다. 도 5의 (c)와 도 6의 (c)을 참조하면, 트리 생성부(230)는 S407 단계부터 재진행하여 A-1 군집을 두 개의 서브 군집(즉, A-1-1, A-1-2)으로 분리하고, A-1-1 군집과 A-1-2 군집 중에서 연관 플래그 빈도가 많은 A-1-1의 중심값과 가까운 질문을 2번 질문의 왼쪽 자식 노드로 형성한다.
이러한 반복적인 과정을 통해서, 질문 트리가 형성된다. 상기 트리 생성부(230)는 관리자로부터 데이터 유형(예컨대, API 프로그래밍, 회사 등)을 입력받고, 입력된 데이터 유형과 상기 형성한 질문 트리를 함께 저장부(220)에 저장하고, 이에 따라 저장부(220)에는 데이터 유형별 질문 트리가 저장된다.
한편, 상술한 실시예에서, 질문 트리가 2진 트리인 것으로 설명하였지만, 3개 이상의 자식 노드를 가지는 질문 트리가 형성될 수 있다. 예컨대, 트리 생성부(230)는 3가지 선택 정보를 가지는 복수의 질문에 대해서, 최대 3가지 자식 노드를 생성할 수 있다. 이 경우, 트리 생성부(230)는 부모 노드와 연관성이 가장 높은 질문을 맨 왼쪽(또는 맨 오른쪽)의 자식 노드, 부모 노드와 연관성이 두 번째로 높은 질문을 가운데 자식 노드, 부모 노드와 연관성이 가장 낮은 질문을 맨 오른쪽(또는 맨 왼쪽)의 자식 노드로 각각 생성할 수 있다.
도 7은 본 발명의 일 실시예에 따른, 질문 트리를 토대로 대화형 정보 제공 서비스를 사용자에게 제공하는 방법을 설명하는 흐름도이다.
도 7을 참조하면, 질문 제공부(210)는 사용자 단말(100)로부터 대화형 서비스를 요청받는다. 그러면, 질문 제공부(210)는 데이터 유형 리스트를 사용자 단말(100)로 제공하고, 사용자가 선택한 특정 데이터 유형을 사용자 단말(100)로부터 수신한다(S701).
이어서, 질문 제공부(210)는 상기 특정 데이터 유형과 대응하는 질문 트리를 저장부(220)에서 확인하고(S703), 이 질문 트리에서 최상위에 레벨(즉, 루트)에 해당하는 질문을 사용자 단말(100)로 전송한다(S705). 상기 질문에는 선택지 정보가 포함된다.
이어서, 질문 제공부(210)는 상기 질문에 대한 선택 응답 정보를 사용자 단말(100)로부터 수신하고(S707), 상기 선택 응답 정보와 대응되는 다음 레벨(즉, 2레벨)의 자식 노드를 확인하고, 이 자식 노드에 해당하는 질문을 사용자 단말(100)로 제공한다(S709). 질문 제공부(210)는 질문지가 양자택일형 질문이고 선택 응답 정보가 긍정 응답인 경우에, 루트 로드의 왼쪽(또는 오른쪽) 자식 노드에 해당하는 질문을 사용자 단말(100)로 제공할 수 있다. 다른 예로서, 질문 제공부(210)는 질문지가 양자택일형 질문이고 선택 응답 정보가 부정 응답인 경우에, 루트 로드의 오른쪽(또는 왼쪽) 자식 노드에 해당하는 질문을 사용자 단말(100)로 제공할 수 있다. 또 다른 예로서, 질문 제공부(210)는 질문지가 다지선다형 질문이고 선택 응답 정보가 1번 응답인 경우에, 맨 왼쪽에 위치한 자식 노드에 해당하는 질문을 사용자 단말(100)로 제공할 수 있으며, 선택 응답 정보가 2번 응답인 경우 왼쪽에서 두번째에 위치한 자식 노드를 사용자 단말(100)로 제공할 수 있다.
다음으로, 질문 제공부(210)는 자식 노드에 해당하는 질문에 대한 선택 응답 정보를 사용자 단말(100)로부터 수신한다(S711). 그러면, 질문 제공부(210)는 질문이 종료되었는지 여부를 판별하고(S713), 종료된 경우에 정보 제공부(240)로 데이터 제공을 지시한다.
그러면, 정보 제공부(240)는 마지막 질문과 상기 선택 응답 정보에 대응되는 정보(즉, 데이터 그룹)를 저장부(220)에 추출하여, 이 정보(즉, 데이터 그룹)를 사용자 단말(100)로 제공한다(S715).
*반면에, 질문 제공부(210)는 S713 단계에서 질문이 종료되지 않은 것으로 판별되면, 상기 선택 응답 정보와 대응되는 다음 레벨의 자식 노드를 확인하고, 이 자식 노드에 해당하는 질문을 사용자 단말(100)로 제공하는 S709 단계를 재진행한다.
상술한 바와 같이, 본 발명은, 복수의 선택형 질문에 대한 사용자의 응답 정보를 기초로, 정보를 추출하여 사용자에게 제공함으로써, 정보 검색시에 편의성을 향상시킨다. 또한, 본 발명은 질문의 속성정보를 토대로 질문 트리를 생생하고, 이 질문 트리에 기초하여 관련성이 있는 질문을 순차적으로 사용자에게 제공하고, 질문에 대한 사용자의 선택 응답을 기초로 정보를 사용자에게 제공하기 때문에, 사용자가 요구하는 정보를 정확하게 검색할 수 있다.
본 명세서는 많은 특징을 포함하는 반면, 그러한 특징은 본 발명의 범위 또는 특허청구범위를 제한하는 것으로 해석되어서는 안 된다. 또한, 본 명세서에서 개별적인 실시예에서 설명된 특징들은 단일 실시예에서 결합되어 구현될 수 있다. 반대로, 본 명세서에서 단일 실시예에서 설명된 다양한 특징들은 개별적으로 다양한 실시예에서 구현되거나, 적절히 결합되어 구현될 수 있다.
도면에서 동작들이 특정한 순서로 설명되었으나, 그러한 동작들이 도시된 바와 같은 특정한 순서로 수행되는 것으로, 또는 일련의 연속된 순서, 또는 원하는 결과를 얻기 위해 모든 설명된 동작이 수행되는 것으로 이해되어서는 안 된다. 특정 환경에서 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 아울러, 상술한 실시예에서 다양한 시스템 구성요소의 구분은 모든 실시예에서 그러한 구분을 요구하지 않는 것으로 이해되어야 한다. 상술한 프로그램 구성요소 및 시스템은 일반적으로 단일 소프트웨어 제품 또는 멀티플 소프트웨어 제품에 패키지로 구현될 수 있다.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(시디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.
100 : 사용자 단말 200 : 정보 제공 장치
210 : 질문 제공부 220 : 저장부
230 : 트리 생성부 240 : 정보 제공부
300 : 네트워크

Claims (20)

  1. 복수의 질문을 복수의 군집으로 분리하는 단계; 및
    상기 분리된 복수의 군집에 기반하여, 계층적인 질문들이 형성되는 질문 트리를 생성하는 단계;를 포함하고,
    상기 질문 트리를 생성하는 단계는,
    서로 다른 군집에 포함되는 복수의 질문이, 동일한 부모 노드의 복수의 자식 노드로 생성되도록, 상기 질문 트리를 생성하는 단계;를 포함하는
    정보 제공 방법.
  2. 제 1항에 있어서,
    상기 복수의 질문을 복수의 군집으로 분리하는 단계는,
    선택 연산, 교배 연산 및 돌연변이 연산 중 적어도 하나를 포함하는 유전자 알고리즘을 수행함으로써, 상기 복수의 질문을 일정 개수의 상기 복수의 군집으로 분리하는
    정보 제공 방법.
  3. 제 1항에 있어서,
    상기 복수의 질문을 복수의 군집으로 분리하는 단계는,
    상기 복수의 질문에 할당된 속성 정보를 이용하여 상기 복수의 질문을 일정 개수의 상기 복수의 군집들로 분리하고,
    상기 속성 정보는, 질문과 복수의 데이터 그룹 간의 연관성 여부에 대한 정보를 포함하는
    정보 제공 방법.
  4. 제 2항에 있어서,
    상기 복수의 질문을 복수의 군집으로 분리하는 단계는,
    상기 유전자 알고리즘에 의해 현재 분리된 군집에 대하여, 상기 현재 분리된 군집에 속하는 질문의 속성 정보를 이용하여 상기 현재 분리된 군집의 최종 유사성을 산출하고, 상기 최종 유사성에 기반하여 상기 현재 분리된 군집이 최적의 군집인 것으로 판별하는 단계;를 포함하는
    정보 제공 방법.
  5. 제 1항에 있어서,
    상기 복수의 질문을 복수의 군집으로 분리하는 단계는,
    질문의 선택 정보 개수에 비례하여 군집을 분리하는 단계;를 포함하는
    정보 제공 방법.
  6. 제 1항에 있어서,
    상기 서로 다른 군집에 포함되는 복수의 질문이, 동일한 부모 노드의 복수의 자식 노드로 생성되도록, 상기 질문 트리를 생성하는 단계는,
    상기 복수의 군집 중 제1 군집에 포함되는 제1 질문을 상기 부모 노드의 제1 자식 노드로 생성하고, 상기 복수의 군집 중 상기 제1 군집과 다른 제2 군집에 포함되는 제2 질문을 상기 부모 노드의 제2 자식 노드로 생성하는
    정보 제공 방법.
  7. 제 6항에 있어서,
    상기 부모 노드는,
    상기 제1 군집에 포함되는 질문으로 생성되는
    정보 제공 방법.
  8. 제 7항에 있어서,
    상기 복수의 군집 중 제1 군집에 포함되는 제1 질문을 상기 부모 노드의 제1 자식 노드로 생성하는 단계는,
    상기 제1 군집에 포함되는 질문들을 복수의 서브 군집으로 분리하는 단계; 및
    상기 복수의 서브 군집 중 제1 서브 군집에 포함되는 상기 제1 질문을 상기 부모 노드의 상기 제1 자식 노드로 생성하는 단계;를 포함하는
    정보 제공 방법.
  9. 제 8항에 있어서,
    상기 제1 서브 군집은,
    상기 복수의 서브 군집 중 연관성 플래그의 빈도가 가장 높은 서브 군집인
    정보 제공 방법.
  10. 제 8항에 있어서,
    상기 복수의 군집 중 제1 군집에 포함되는 제1 질문을 상기 부모 노드의 제1 자식 노드로 생성하는 단계는,
    상기 복수의 서브 군집 중 제2 서브 군집에 포함되는 제3 질문을 상기 제1 자식 노드의 자식 노드로 생성하는 단계;를 포함하고,
    상기 제2 서브 군집은,
    상기 복수의 서브 군집 중 연관성 플래그의 빈도가 가장 낮은 서브 군집인
    정보 제공 방법.
  11. 제 1항에 있어서,
    상기 서로 다른 군집에 포함되는 복수의 질문이, 동일한 부모 노드의 복수의 자식 노드로 생성되도록, 상기 질문 트리를 생성하는 단계는,
    군집의 대표 질문을 노드로 생성하는 단계;를 포함하고,
    상기 대표 질문은,
    상기 군집의 중심값과 가장 가까운 거리에 해당하는 속성정보를 가지는 질문인
    정보 제공 방법.
  12. 제 1항에 있어서,
    서로 다른 군집에 포함되는 복수의 질문이, 동일한 부모 노드의 복수의 자식 노드로 생성되도록, 상기 질문 트리를 생성하는 단계는,
    상기 부모 노드와의 관련성이 높은지 또는 낮은지에 근거하여 자식 노드의 위치를 결정하는 단계;를 포함하고,
    상기 부모 노드와의 관련성은, 연관성 플래그의 빈도에 기초하여 결정되는
    정보 제공 방법.
  13. 제 1항에 있어서,
    상기 복수의 군집은,
    초기에 분리한 군집들, 또는 상기 초기에 분리된 군집들 중 하나를 분리한 서브 군집들인
    정보 제공 방법.
  14. 복수의 질문을 저장하는 저장부; 및
    상기 복수의 질문을 복수의 군집으로 분리하고, 상기 분리된 복수의 군집에 기반하여, 계층적인 질문들이 형성되는 질문 트리를 생성하는 트리 생성부;를 포함하고,
    상기 트리 생성부는,
    서로 다른 군집에 포함되는 복수의 질문이, 동일한 부모 노드의 복수의 자식 노드로 생성되도록, 상기 질문 트리를 생성하는
    정보 제공 장치.
  15. 제 14항에 있어서,
    상기 트리 생성부는,
    선택 연산, 교배 연산 및 돌연변이 연산 중 적어도 하나를 포함하는 유전자 알고리즘을 수행함으로써, 상기 복수의 질문을 일정 개수의 상기 복수의 군집으로 분리하는
    정보 제공 장치.
  16. 제 14항에 있어서,
    상기 트리 생성부는,
    상기 복수의 질문에 할당된 속성 정보를 이용하여 상기 복수의 질문을 일정 개수의 상기 복수의 군집들로 분리하고,
    상기 속성 정보는, 질문과 복수의 데이터 그룹 간의 연관성 여부에 대한 정보를 포함하는
    정보 제공 장치.
  17. 제 15항에 있어서,
    상기 트리 생성부는,
    상기 유전자 알고리즘에 의해 현재 분리된 군집에 대하여, 상기 현재 분리된 군집에 속하는 질문의 속성 정보를 이용하여 상기 현재 분리된 군집의 최종 유사성을 산출하고, 상기 최종 유사성에 기반하여 상기 현재 분리된 군집이 최적의 군집인 것으로 판별하는
    정보 제공 장치.
  18. 제 14항에 있어서,
    상기 트리 생성부는,
    질문의 선택 정보 개수에 비례하여 군집을 분리하는
    정보 제공 장치.
  19. 제 14항에 있어서,
    상기 트리 생성부는,
    상기 복수의 군집 중 제1 군집에 포함되는 제1 질문을 상기 부모 노드의 제1 자식 노드로 생성하고, 상기 복수의 군집 중 상기 제1 군집과 다른 제2 군집에 포함되는 제2 질문을 상기 부모 노드의 제2 자식 노드로 생성하는
    정보 제공 장치.
  20. 제 19항에 있어서,
    상기 부모 노드는,
    상기 제1 군집에 포함되는 질문으로 생성되는
    정보 제공 장치.
KR1020220161633A 2016-01-18 2022-11-28 대화형 정보 제공 서비스 방법 및 이를 위한 장치 KR102654884B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220161633A KR102654884B1 (ko) 2016-01-18 2022-11-28 대화형 정보 제공 서비스 방법 및 이를 위한 장치

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020160006090A KR102473155B1 (ko) 2016-01-18 2016-01-18 대화형 정보 제공 서비스 방법 및 이를 위한 장치
KR1020220161633A KR102654884B1 (ko) 2016-01-18 2022-11-28 대화형 정보 제공 서비스 방법 및 이를 위한 장치

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020160006090A Division KR102473155B1 (ko) 2016-01-18 2016-01-18 대화형 정보 제공 서비스 방법 및 이를 위한 장치

Publications (2)

Publication Number Publication Date
KR20220162681A true KR20220162681A (ko) 2022-12-08
KR102654884B1 KR102654884B1 (ko) 2024-04-03

Family

ID=59427068

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020160006090A KR102473155B1 (ko) 2016-01-18 2016-01-18 대화형 정보 제공 서비스 방법 및 이를 위한 장치
KR1020220161633A KR102654884B1 (ko) 2016-01-18 2022-11-28 대화형 정보 제공 서비스 방법 및 이를 위한 장치

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020160006090A KR102473155B1 (ko) 2016-01-18 2016-01-18 대화형 정보 제공 서비스 방법 및 이를 위한 장치

Country Status (1)

Country Link
KR (2) KR102473155B1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102113773B1 (ko) * 2018-07-24 2020-05-21 주식회사 자이냅스 대화 인지를 위한 규칙 생성 방법, 규칙 기반의 추론 방법 및 그 방법이 적용된 장치
CN110931137B (zh) * 2018-09-19 2023-07-07 京东方科技集团股份有限公司 机器辅助对话系统、方法及装置
KR102132696B1 (ko) 2018-12-26 2020-07-13 지의소프트 주식회사 대화형 정보 제공 시스템 및 그 방법
KR102106250B1 (ko) * 2020-02-25 2020-05-06 주식회사 자이냅스 대화 인지를 위한 규칙기반의 사용자 의도 추론 장치
KR102379161B1 (ko) * 2020-03-24 2022-03-28 주식회사 유로보 오역보완 및 의도 도출을 위한 질의응답 시스템
KR20220106406A (ko) * 2021-01-22 2022-07-29 삼성전자주식회사 전자 장치 및 전자 장치의 제어 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07175621A (ja) * 1993-02-18 1995-07-14 Nec Corp 最適メニュー問い合わせ方式及び階層的メニュー問い合わせによる構造データの編集方式
KR100882437B1 (ko) 2006-12-19 2009-02-06 엔에이치엔(주) 카테고리 식별자를 이용한 검색 방법 및 검색 시스템
KR20100056066A (ko) * 2008-11-19 2010-05-27 한국과학기술정보연구원 계층적 클러스터링에서 최적의 군집 분할 방법 및 시스템
KR20130053686A (ko) * 2011-11-16 2013-05-24 포항공과대학교 산학협력단 순위화 질의 처리 방법
KR20130129725A (ko) * 2012-05-21 2013-11-29 주식회사 다음커뮤니케이션 검색 시스템 및 검색 서비스 방법
JP2015230514A (ja) * 2014-06-03 2015-12-21 Kddi株式会社 属性値が付与された情報要素を絞り込んで検索する対話検索プログラム、装置及び方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07175621A (ja) * 1993-02-18 1995-07-14 Nec Corp 最適メニュー問い合わせ方式及び階層的メニュー問い合わせによる構造データの編集方式
KR100882437B1 (ko) 2006-12-19 2009-02-06 엔에이치엔(주) 카테고리 식별자를 이용한 검색 방법 및 검색 시스템
KR20100056066A (ko) * 2008-11-19 2010-05-27 한국과학기술정보연구원 계층적 클러스터링에서 최적의 군집 분할 방법 및 시스템
KR20130053686A (ko) * 2011-11-16 2013-05-24 포항공과대학교 산학협력단 순위화 질의 처리 방법
KR20130129725A (ko) * 2012-05-21 2013-11-29 주식회사 다음커뮤니케이션 검색 시스템 및 검색 서비스 방법
JP2015230514A (ja) * 2014-06-03 2015-12-21 Kddi株式会社 属性値が付与された情報要素を絞り込んで検索する対話検索プログラム、装置及び方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
류정우 외 2인, 휴리스틱 진화에 기반한 효율적 클러스터링 알고리즘, 정보과학회논문지: 소프트에어 및 응용 제29권 제2호, 80-90페이지, 2002.2.* *

Also Published As

Publication number Publication date
KR20170086353A (ko) 2017-07-26
KR102654884B1 (ko) 2024-04-03
KR102473155B1 (ko) 2022-11-30

Similar Documents

Publication Publication Date Title
KR102654884B1 (ko) 대화형 정보 제공 서비스 방법 및 이를 위한 장치
CN106484875B (zh) 基于molap的数据处理方法及装置
CN108304444B (zh) 信息查询方法及装置
CN111460311A (zh) 基于字典树的搜索处理方法、装置、设备和存储介质
Sun et al. The cost-efficient deployment of replica servers in virtual content distribution networks for data fusion
CN108932347B (zh) 一种分布式环境下基于社会感知的空间关键字查询方法
Fredj et al. Efficient semantic-based IoT service discovery mechanism for dynamic environments
CN102063486A (zh) 一种面向多维数据管理的云计算平台查询处理方法
US20130311445A1 (en) Join processing device, data management device, and string similarity join system
JP2022020070A (ja) 情報処理、情報推薦の方法および装置、電子デバイス及び記憶媒体
US9501509B2 (en) Throwaway spatial index structure for dynamic point data
Zhang et al. An affinity propagation clustering algorithm for mixed numeric and categorical datasets
CN109190052B (zh) 一种分布式环境下基于社会感知的空间索引方法
Sun et al. Interactive spatial keyword querying with semantics
JP2020086662A (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP2011170461A (ja) 情報蓄積検索方法及び情報蓄積検索プログラム
Lee et al. Fast mining of spatial frequent wordset from social database
JP6960361B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
Tang et al. Supporting continuous skyline queries in dynamically weighted road networks
Xie Research on Weibo user behavior system for subjective perception and big data mining technology
Li et al. A fast real-time qos-aware service selection algorithm
US11741058B2 (en) Systems and methods for architecture embeddings for efficient dynamic synthetic data generation
CN113609378B (zh) 信息推荐方法、装置、电子设备及存储介质
CN114461661B (zh) 一种基于大数据的数据查询方法及系统
CN106933855B (zh) 对象排序方法、装置及系统

Legal Events

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