KR100289065B1 - Method for processing natural query language for searching commodity information of electronic commerce - Google Patents

Method for processing natural query language for searching commodity information of electronic commerce Download PDF

Info

Publication number
KR100289065B1
KR100289065B1 KR1019970052617A KR19970052617A KR100289065B1 KR 100289065 B1 KR100289065 B1 KR 100289065B1 KR 1019970052617 A KR1019970052617 A KR 1019970052617A KR 19970052617 A KR19970052617 A KR 19970052617A KR 100289065 B1 KR100289065 B1 KR 100289065B1
Authority
KR
South Korea
Prior art keywords
term
query
search
token
natural language
Prior art date
Application number
KR1019970052617A
Other languages
Korean (ko)
Other versions
KR19990031784A (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 KR1019970052617A priority Critical patent/KR100289065B1/en
Publication of KR19990031784A publication Critical patent/KR19990031784A/en
Application granted granted Critical
Publication of KR100289065B1 publication Critical patent/KR100289065B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]

Abstract

PURPOSE: A method for processing a natural query language is provided to convert into an SQL(structured query language) which is a query language of an RDBMS(relational database management system) by extracting a commodity term in a natural query language when a user requests a search according to a desired commodity using a natural language. CONSTITUTION: If a buyer requests a search for a commodity by a natural query language for buying the commodity through Internet virtual stores(S1), a query language is extracted by an extractor(S3) and stored in a storing place array through an HTTPa(40) which is a web server in an electronic commerce system(S2). A token of the stored natural query language is separated by a separator by making various conditions as a space, a pause, a period, and a symbol such as a delimiters(S4). If a term which indicates a commodity price is existed in the separated token, the term is stored in a storage location array and removes the corresponding token(S5). After a postposition is removed in each token(S6), an unused token is removed(S7). If an ESQL(embedded SQL) is created according to an extracted term and an electronic commerce term table is searched, characteristics(CIC(Company Identification Code), PCC(product Classification Code), BN(Brand name), CFC(Chief Function Code)) of each term may be sensed from a control field(S8). A term, which is not possessed in five categories(company identification code, product classification code, brand name, chief function code, and price), is excluded in a processing object, and an ESQL is created according to the four terms except the price and an electronic commerce synonym table is searched, thus a synonym/similar language/foreign language may be obtained(S9). The synonym/similar language/foreign language is processed as one term group and is not considered in a normal creation according to a query language(S10).

Description

전자상거래 상품정보 검색용 자연언어 질의어 처리방법Natural Language Query Processing Method for E-Commerce Product Information Retrieval

본 발명은 전자상거래(Electronic Commerce)에서 상품을 구입하고자 하는 구매자가 자연언어 질의어로 자신이 원하는 상품정보에 대한 검색을 요청하면, 이를 관계형데이터베이스(Relational DataBase, 이하 RDB라 칭함)에서 추출하여 제공하는 방법에 관한 것이다.According to the present invention, when a purchaser who wants to purchase a product in an electronic commerce request a search for product information desired by a natural language query, it is extracted and provided from a relational database (hereinafter referred to as RDB). It is about a method.

종래에는 이 분야의 검색서비스가 인터넷 월드와이드웹(Internet World-Wide -Web)상에서 이루어지므로 자연언어 질의어에 대한 검색서비스를 수행할 경우, 자연언어 질의어에 대한 구문 분석의 복잡성으로 인하여 검색속도의 저하가 수반되므로 자연언어 질의어에 의한 검색서비스를 수행하지 못하고, ‘하이퍼텍스트 형성 언어(Hyper Text Markup Language, 이하 HTML라 칭함) 양식 태그(Form Tag)’에 검색하고자 하는 상품정보를 일일이 구분하여 입력하는 방식을 사용해 왔다.In the past, since the search service of this field is performed on the Internet World Web, when the search service for the natural language query is performed, the search speed is reduced due to the complexity of parsing the natural language query. Is not able to perform a search service using a natural language query, and inputs the product information to be searched separately in the 'Hyper Text Markup Language' (form HTML) form tag. Method has been used.

따라서 사용자 인터페이스가 자연스럽지 않으므로 사용의 불편을 초래하여, 일반 국민이 널리 손쉽게 사용하기가 어려운 문제점이 있었다.Therefore, the user interface is not natural, causing inconvenience in use, and it is difficult for the general public to easily use it.

상기 문제점을 해결하기 위해 본 발명은, 사용자가 자연언어를 이용하여 원하는 상품에 대한 검색을 요청하면, 신속 정확하게 제공할 수 있도록 자연언어 질의어에서 상품정보 검색용어를 추출하여 관계형데이터베이스 관리시스템(Relational DataBase Management System, 이하 RDBMS라 칭함)의 질의어인 구조적질의어(Structured Query Language, 이하 SQL라 칭함)로 변환하여 가는 방법을 제공하는 것을 목적을 한다.In order to solve the above problems, the present invention, when a user requests a search for a desired product using a natural language, a relational database management system by extracting a product information search term from a natural language query language so that it can be provided quickly and accurately. An object of the present invention is to provide a method of converting a structured query language (hereinafter referred to as SQL) that is a query word of a management system (hereinafter referred to as RDBMS).

도 1은 본 발명에 따른 전자상거래정보 서비스 시스템의 전체 구성도,1 is an overall configuration diagram of an electronic commerce information service system according to the present invention;

도 2는 본 발명이 적용되는 전자상거래 상품정보 검색용 자연언어 질의어 처리방법의 처리 흐름도.Figure 2 is a flow chart of a natural language query processing method for e-commerce product information search to which the present invention is applied.

〈도면의 주요부분에 대한 부호의 설명〉<Explanation of symbols for main parts of drawing>

10 : 구매자 웹브라우저 20 : 판매자 웹브라우저10: Buyer web browser 20: Seller web browser

30 : 머천트 시스템 40 : 웹서버30: Merchant System 40: Web Server

50 : 고성능 웹-데이터베이스 게이트웨이 응용서버50: high performance web-database gateway application server

51 : 전자상거래정보 검색 시스템51: Electronic Commerce Information Search System

52 : 전자상거래정보 디렉토리관리 시스템52: Electronic Commerce Information Directory Management System

53 : 전자상거래정보 색인 시스템53: e-commerce information indexing system

60 : 관계형데이터베이스 관리시스템60: relational database management system

70 : 전자상거래정보 데이터베이스 80 : 검색대상 용어 추출기70: e-commerce information database 80: search term extractor

90 : 질의어 정규식 생성기 91 : 용어 데이터베이스90: query regular expression generator 91: term database

92 : 동의어 데이터베이스 100 : 검색결과 생성기92: Synonym Database 100: Search Result Generator

101 : 상품 데이터베이스101: commodity database

상기 목적을 달성하기 위해 본 발명은, 검색대상 용어를 추출하고, 추출된 각각의 용어의 질의어에 대한 정규식을 생성하며, 생성된 정규식을 관계형데이터베이스관리시스템(RDBMS)의 질의어인 구조적질의어(SQL)로 변환하여 검색결과를 생성하는 것을 특징으로 한다.In order to achieve the above object, the present invention extracts a search target term, generates a regular expression for a query of each extracted term, and uses the generated regular expression as a structural query (SQL) that is a query word of a relational database management system (RDBMS). It is characterized by generating a search result by converting to.

이하 첨부된 도면을 참조하여 본 발명을 상세히 설명하면 다음과 같다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명에 따른 전자상거래정보 서비스 시스템의 전체 구성도로서, 구매자 웹브라우저(10), 판매자 웹브라우저(20), 머천트 시스템(30), 웹서버(40), 전자상거래정보 검색시스템(51), 전자상거래정보 디렉토리관리 시스템(52), 전자상거래정보 색인 시스템(53)의 3부분으로 구성된 고성능 웹-데이터베이스 게이트웨이 응용서버(50), 관계형데이터베이스 관리시스템(60), 전자상거래정보 데이터베이스(70)으로 이루어져 있다.1 is an overall configuration diagram of an e-commerce information service system according to the present invention, a buyer web browser 10, a seller web browser 20, a merchant system 30, a web server 40, an e-commerce information search system ( 51), a high performance web-database gateway application server 50 consisting of three parts of the e-commerce information directory management system 52 and the e-commerce information indexing system 53, the relational database management system 60, and the e-commerce information database ( 70).

상기 도 1은 인터넷 가상상점(Internet virtual stores)을 통하여 상품을 구입하고자 하는 구매자는 자신이 구입하고자 하는 상품의 정보를 웹브라우저(10)를 이용하여 자연언어 질의어로 요청하면, 전자상거래정보 서비스 시스템내의 웹서버인 하이퍼텍스트 전송 프로토콜 데몬(HyperText Transfer Protocol Daemon, 이하 HTTPd라 칭함)(40)의 빠른 공통 게이트웨이 인터페이스(Fast Common Gateway Interface, 이하 FastCGI라 칭함)를 통하여 전자상거래정보 검색시스템(51)에 전달되고, SQL로 변환되어, 관계형데이터베이스 관리시스템(RDBMS)(60)에 전달 되면 전자상거래정보 데이터베이스(70)에서 해당 상품정보를 추출하여, 다시 전자상거래정보 검색시스템(51)에게 전달되어 검색결과를 HTML 문서로 동적변환하여 HTTPd(40)을 통하여 구매자의 웹브라우저(10)에 전달된다.1 is a purchaser who wants to purchase a product through an Internet virtual store, and requests information of a product he / she wants to purchase using a natural language query using a web browser 10, an e-commerce information service system. Through the fast common gateway interface (hereinafter referred to as FastCGI) of the hypertext transfer protocol daemon (hereinafter referred to as HTTPd) 40, which is a web server within the web server, the e-commerce information retrieval system 51 When delivered, converted to SQL, and delivered to the relational database management system (RDBMS) 60, the product information is extracted from the e-commerce information database 70, and then passed back to the e-commerce information search system 51 to search results Is converted into an HTML document and transmitted to the buyer's web browser 10 through the HTTPd 40.

인터넷 가상상점을 구축하여 상품을 팔고자 하는 판매자는 자신의 웹브라우저(20)를 이용하여 홈페이지(Home Page) 문서위치(Uniform Resource Locator, 이하 URL라 칭함)와 판매자 정보를 입력하면, HTTPd(40)의 FastCGI를 통하여 전자상거래정보 디렉토리관리시스템(52)에 전달되고 판매자 인증절차를 통과하면 SQL이 생성되어, RDBMS(60)에 전달되고 전자상거래정보 데이터베이스(70)에 판매자의 디렉토리가 등록되어 다시 등록정보가 전자상거래정보 디렉토리관리시스템(60)에게 전달되어 등록결과를 HTML 문서로 동적변환하여 HTTPd(40)을 통하여 판매자의 웹브라우저(20)에게 전달된다.A seller who wants to sell a product by building an internet virtual store enters a home page document location (hereinafter referred to as a URL) and seller information using his web browser 20, and then uses HTTPd (40). After passing through the FastCGI to the e-commerce information directory management system 52 and passing the seller authentication process, SQL is generated, passed to the RDBMS 60, and the seller's directory is registered in the e-commerce information database 70 and again. The registration information is transmitted to the electronic commerce information directory management system 60, and the registration result is dynamically converted into an HTML document and transmitted to the web browser 20 of the seller through the HTTPd 40.

전자상거래정보 데이터베이스(70)에 등록된 가상상점은 전자상거래정보 색인시스템(53)내의 색인용 웹에이전트에 의하여 주기적으로 HTTPd(40)을 통하여 판매자의 머천트시스템(Merchant System)(30)으로 가서 상품정보가 있는 HTML 문서를 찾아서 다시 HTTPd(40)을 통하여 전자상거래정보 색인시스템(53)에 모아지면 상품정보 색인기에 의하여 상품정보를 추출하여 이에 대한 SQL이 생성되어 RDBMS(60)에 전달되면 전자상거래정보 데이터베이스(70)에 해당 상품정보를 등록한다.The virtual store registered in the e-commerce information database 70 goes to the merchant's merchant system 30 through the HTTPd 40 periodically by the indexing web agent in the e-commerce information indexing system 53. When the HTML document with information is found and collected again in the e-commerce information indexing system 53 through the HTTPd 40, the product information is extracted by the product information indexer, and the SQL for this is generated and transmitted to the RDBMS 60. The product information is registered in the information database 70.

다음 표 1, 표 2, 표 3은 전자상거래 상품정보 검색용 자연언어 질의어 처리방법에서 이용되는 데이터베이스의 구성도이다.Table 1, Table 2, and Table 3 show the configuration of the database used in the natural language query processing method for e-commerce product information search.

사용자의 자연언어 질의어로부터 상품정보 검색용 SQL를 생성하는 과정에서 사용되는 데이터베이스는 표 1의 전자상거래정보 서비스 용어 테이블, 표 2의 전자상거래정보 서비스 동의어 테이블, 그리고 표 3의 전자상거래정보 서비스 상품정보 테이블로 구성된다.The database used in the process of generating SQL for product information retrieval from the user's natural language query language includes the e-commerce information service term table of Table 1, the e-commerce information service synonym table of Table 2, and the e-commerce information service product information of Table 3 It consists of a table.

상기 용어 테이블과 동의어 테이블은 전자상거래정보 색인시스템(53)과 전자상거래정보 서비스 시스템 관리자인 사람의 협동에 의하여 데이터베이스가 구축되며, 상품정보 테이블은 전자상거래정보 색인시스템(53)에 의하여 자동으로 구축된다.The term table and the synonym table are constructed by the cooperation of the e-commerce information indexing system 53 and the person who is the e-commerce information service system administrator, and the product information table is automatically constructed by the e-commerce information indexing system 53. do.

상기 용어 테이블은 용어, 통제필드, 그리고 등록일자를 나타내는 필드로 구성되며, 동의어 테이블은 대표용어, 동의어, 그리고 등록일자로 구성되며, 상품정보 테이블은 제조회사명, 상품분류명, 주요사양, 상품명, 모델번호, 가격, 문서 위치, 그리고 등록일자로 구성된다.The term table consists of terms, control fields, and fields indicating registration dates. The synonyms table consists of representative terms, synonyms, and registration dates. The product information table includes the manufacturer's name, product classification name, main specifications, product name, and model number. , Price, document location, and date of registration.

전자상거래정보 서비스 용어 테이블E-commerce information service term table 필드(컬럼) 명칭Field (column) name 필드(컬럼) 사양Field (Column) Specifications 용어(TERM)Terminology (TERM) variable Charactervariable Character 통제필드(CFIELD)Control Field (CFIELD) Variable CharacterVariable Character 등록일자(RDATE)Registration date (RDATE) DATEDATE

전자상거래정보 서비스 동의어 테이블E-Commerce Information Service Synonyms Table 필드(컬럼) 명칭Field (column) name 필드(컬럼) 사양Field (Column) Specifications 대표용어(RTERM)Representative term (RTERM) Variable CharacterVariable Character 동의어(SYNONYM)Synonyms (SYNONYM) Variable CharacterVariable Character 등록일자(RDATE)Registration date (RDATE) DATEDATE

전자상거래정보 서비스 상품정보 테이블E-commerce information service product information table 필드(컬럼) 명칭Field (column) name 필드(컬럼) 사양Field (Column) Specifications 제조회사명(CIC)Manufacturer Name (CIC) Variable CharacterVariable Character 상품분류명(PCC)Product Classification Name (PCC) Variable CharacterVariable Character 상품명(BN)Brand name (BN) Variable CharacterVariable Character 주요사양(CFC)Main Specifications (CFC) Variable CharacterVariable Character 모델번호(MN)Model Number (MN) Variable CharacterVariable Character 가격(PRICE)PRICE IntegerInteger 문서위치(URL)Document location (URL) Variable CharacterVariable Character 등록일자(RDATE)Registration date (RDATE) DATEDATE

도 2는 본 발명이 적용되는 전자상거래 상품정보 검색용 자연언어 질의어 처리방법의 처리 흐름도로서, 인터넷 가상상점(Virtual Stores)을 통하여 상품을 구입하고자 하는 구매자가 자신이 구입하고자 하는 상품의 정보를 웹브라우저(10)를 이용하여 자연언어 질의어로 검색을 요청하면(S1), 전자상거래정보 서비스 시스템내의 웹서버인 HTTPd(40)를 거쳐서(S2) 사용자 자연언어 질의어 추출기에 의하여 질의어가 추출되어(S3) 기억장소 배열에 저장된다.2 is a flowchart of a natural language query processing method for e-commerce product information retrieval to which the present invention is applied, and a buyer who wants to purchase a product through an Internet virtual store stores the information of a product he / she wants to purchase. When the user requests a search using the natural language query using the browser 10 (S1), the query is extracted by the user natural language query extractor through the HTTPd 40 which is a web server in the e-commerce information service system (S2). ) Is stored in the storage array.

저장된 자연언어 질의어는 질의어 토큰(Token) 분리기에 의하여 공백, 쉼표, 마침표, 그리고 기호 등의 여러 가지 조건들을 절단기호(Delimitors)로 하여 토큰이 분리된다(S4).The stored natural language query words are separated by a query token separator using various conditions such as spaces, commas, periods, and symbols as delimiters (S4).

분리된 토큰에서 상품가격을 나타내는 용어가 존재하는지 조사하여 존재할 경우 기억장소 배열에 저장한 후 해당 토큰을 제거하며(S5), 각 토큰에서 조사가 제거된 후(S6) 불용어 토큰이 제거된다(S7).Investigate whether there is a term representing commodity prices in the separated tokens, if any, store them in a storage array and remove the corresponding tokens (S5), and after the investigation is removed from each token (S6), stopwords are removed (S7). ).

본 발명에서 처리대상으로 하는 상품가격을 나타내는 용어는 한 예를 들어 '50만원에서 100만원 사이'인 구간명시형, '100만원대'인 구간추략형, '가장 싼 것'인 최소최대형의 3가지이다.In the present invention, the term indicating the commodity price to be processed is, for example, a section specification type of 'between 500,000 won and 1 million won', a section tracking type of '1 million won', and a 'smallest' 3 It is eggplant.

이상의 처리절차가 완료되면 최초의 사용자 자연언어 질의어로부터 검색대상이 되는 용어가 추출된 것이다(80).When the above processing is completed, the search term is extracted from the first user's natural language query (80).

본 발명에서 처리대상으로 하는 질의어에 관한 상품정보는 제조회사명(Company Identification Code, 이하 CIC라 칭함), 상품분류명(Product Classification Code, 이하 PCC라 칭함), 상품명(Brand Name, 이하 BN라 칭함), 주요사양(Chief Function Code, 이하 CFC라 칭함) 그리고 가격(PRICE)이다.The product information on the query subject to be processed in the present invention includes a company name (Company Identification Code, hereinafter referred to as CIC), a product classification code (hereinafter referred to as PCC), a brand name (Brand Name, hereinafter referred to as BN). , Chief function code (CFC) and price (PRICE).

구매자는 상기 5가지 상품정보를 조합하여 일상생활에서 사용하는 언어를 이용하여 검색을 요청한다.The buyer requests the search using the language used in everyday life by combining the five product information.

상기 추출된 각각의 용어에 대하여 삽입구조적질의어(Embedded SQL, 이하 ESQL라 칭함)을 생성하여 전자상거래정보 서비스 용어 테이블(91)을 검색하면 통제필드로부터 각 용어의 특성(CIC, PCC, BN, CFC)을 파악할 수 있다(S8).For each extracted term, an embedded structural query (hereinafter referred to as ESQL) is generated and the E-commerce information service term table 91 is searched for the characteristics of each term (CIC, PCC, BN, CFC) from the control field. ) Can be grasped (S8).

상기 5가지 범주에 속하지 않는 용어는 처리대상에서 제외시키고, 가격을 제외한 4가지 용어에 대하여 ESQL을 생성하여, 전자상거래정보 서비스 동의어 테이블(92)을 검색하면 각각에 대한 동의어/유사어/외래어를 가져올 수 있다(S9).Terms not belonging to the above five categories are excluded from processing, and ESQL is generated for four terms excluding price, and the e-commerce information service synonym table 92 is searched to obtain synonyms, similar words, and foreign words for each. It may be (S9).

한 용어에 대하여 검색된 동의어/유사어/외래어는 그 용어에 대한 한 개의 용어집합으로 처리되며, 질의어에 대한 정규식 생성시에는 고려되지 않는다(S10).A synonym / similar word / foreign word searched for a term is treated as one term set for that term and is not considered when generating a regular expression for the query word (S10).

상기 자연언어 질의어 정규식 생성은, 질의어로부터 논리연산자를 선택하는 과정 및 상품가격을 나타내는 용어가 어떠한 유형에 속하는 용어인지를 판단하는 과정으로 수행된다.The natural language query regular expression generation is performed by selecting a logical operator from the query and determining a type of a term representing a product price.

이때 상기 질의어로부터 논리연산자를 선택하는 과정으로는, 자연언어 질의어를 논리적 가느 토큰으로 분리하는 제 1 단계, 불용어 토큰을 제거하여 검색 대상 용어를 추출하는 제 2 단계, 추출된 검색 대상용어에 대한 특성을 파악하는 제 3 단계 및 상기 검색 대상용어에 대한 특성을 이용하여 논리적 연산자로 질의어를 생성하는 단계로 이루어진다.At this time, the process of selecting a logical operator from the query, the first step of separating the natural language query language into logical thin tokens, the second step of extracting the search term by removing the stopword token, the characteristics of the extracted search target term And a query step is generated by a logical operator using the characteristics of the search target term.

상기와 같은 각 단계를 거쳐 자연언어 질의어로부터 전자상거래 상품정보 검색용 질의어가 만들어지는데, 실제로 자연언어 질의어로부터 전자상거래 상품정보 검색용 질의어가 만들어지는 과정을 예를 들어 설명하면 다음과 같다.The query for e-commerce product information search is made from the natural language query through each of the above steps. In the following description, a process for generating the query for e-commerce product information search from the natural language query is described below.

먼저 사용자가 자연언어로 "삼성의 냉장고를 100만원대에 사고 싶어요"라고 질문을 했을 때, 사용자의 자연어어로 질의어는 논리적 분리 가능한 "삼성의", "냉장고를", "100만원대에", "사고", "싶어요"라는 토큰들로 분리되는 상기 제 1 단계와, 논리적으로 분리된 토큰들은 조사사전을 통하여 불용어 토큰들이 분리되는 상기 제 1 단계와, 논리적으로 분리된 토큰들을 조사사전을 통하여 불용어 토큰드리 제거되어 "삼성", "냉장고", "100만원대"라는 검색 대상용어를 구함으로써 상기 제 2 단계를 수행하고, 구해진 검색 대상용어를 전자상거래 상품정보 검색을 위한 용어정의 사전테이블을 통하여 "삼성" - 제조회사명(ICC), "냉장고" - 상품분류명(PCC), "100만원대" - 가격정보(Price)와 같은 특성으로 재 정의된다.First, when the user asked, "I want to buy Samsung's refrigerator for 1 million won" in natural language, the user's natural language, "Samsung", "refrigerator", "for 1 million won", " The first stage, which is divided into tokens of "accident" and "I want", and the logical stages, which are logically separated, are the first stage, in which the terminology tokens are separated through a search dictionary, and the logically separated tokens, through a search dictionary. The second step is performed by obtaining a search target term of "Samsung", "fridge" and "1 million won" by removing the token, and using the term definition dictionary table for e-commerce product information search, the search term is found. Samsung "-Manufacturer's name (ICC)," Refrigerator "-Product classification name (PCC)," 1 million won "-Price is redefined.

상기와 같이 검색 대상용어에 대한 특성이 구해지면 데이터베이스에 저장되어 있는 정보를 추출하기 위한 관계형 데이터베이스 관리시스템의 질의어인 구조적 질의어(SQL)을 생성하여야 하는데 구해진 검색 대상용어에 대한 복합질의를 위하여 논리연산자를 사용함으로써 상기 제 4 단계를 수행한다.When the characteristics of the search term are obtained as described above, a structural query word (SQL), which is a query word of a relational database management system for extracting information stored in the database, should be generated. Perform the fourth step by using.

이때 검색 대상용어에 대한 특성을 이용하여 논리적 연산자로 질의어를 생성하는 상시 제 4 단계에 대하여 좀더 복잡한 자연언어 질의어를 예로 들어 설명하면, "삼성와 대우의 TV와 냉장고 100만원대를 사고 싶어요"에 대한 상기 제 1,2,3 단계를 거치면 다음과 같은 결과가 나오게 된다.In this case, a more complicated natural language query is described as an example of the fourth step of generating a query by a logical operator using characteristics of a search term. For example, "I want to buy a TV and a refrigerator of 1 million won for Samsung and Daewoo." After the first, second and third stages, the following results are produced.

"삼성", "대우" - 제조회사명(CIC)"Samsung", "Daewoo"-Manufacturer (CIC)

"냉장고", "TV" - 상품분류명(PCC)"Refrigerator", "TV"-Product Name (PCC)

"100만원대" - 가격정보(PRICE)"1 million won"-PRICE

본 발명에서 생성되는 질의어 정규식은 아래 식 1과 같다.The query regular expression generated in the present invention is shown in Equation 1 below.

((CIC)) * ((PCC)) * ((BIN)) * ((CFC)) * (PRICE)) ……식(1)((CIC)) * ((PCC)) * ((BIN)) * ((CFC)) * (PRICE)). … Formula (1)

상기 식 1의 '*'는 논리연산자 AND, '(( ))'는 발생가능개수로서 0개 이상을 나타낸다.'*' In Formula 1 represents a logical operator AND, and '(())' represents zero or more as possible numbers.

한 예를 들어 구매자가 '삼성과 대우의 TV와 냉장고 100만원대를 사고 싶어요'라는 질의어로 검색을 요청하면, 상기 식 1로부터 생성되는 정규식은 다음과 같다.For example, when a buyer requests a search with the query 'I want to buy a TV and a refrigerator 1 million won for Samsung and Daewoo,' the regular expression generated from Equation 1 is as follows.

(삼성) * (TV) * (100만원대)(Samsung) * (TV) * (1 million won)

(삼성) * (냉장고) * (100만원대)(Samsung) * (Refrigerator) * (Million KRW)

(대우) * (TV) * (100만원대)(Daewoo) * (TV) * (1 million won)

(대우) * (냉장고) * (100만원대)(Daewoo) * (Fridge) * (1 million won)

여기서 상위와 같은 4개의 SQL 적용 대상 정규식이 도출되는 것을 설명하면 다음과 같다.In this case, the four regular expressions that apply to SQL are derived as follows.

첫째, 같은 특성을 나타내는 검색 대상용어들을 OR 관계이고, 다른 특성들끼리는 AND 관계이다.First, the search terms that have the same characteristics are OR-related, and the other characteristics are AND-related.

즉, OR 관계 : (삼성 혹은 대우),Ie OR relationship: (Samsung or Daewoo),

(TV 혹은 냉장고)(TV or refrigerator)

AND 관계 ; (삼성 혹은 대우)와 (TV 혹은 냉장고)와 (100만원대)AND relationship; (Samsung or Daewoo) and (TV or refrigerator) and (1 million won)

둘째, SQL 적용대사 정규식의 개수는 OR 관계인 것의 발생빈도를 AND 관계 개수 만큼의 곱으로 계산되는, 즉 상기 예에서는 CIC가 2개, PCC가 2개, 그리고 Price가 1개 발생하여 2 * 2 * 1 = 4가 된다.Second, the number of SQL metabolic regular expressions is calculated by multiplying the occurrence frequency of the OR relationship by the number of AND relationships, i.e., in the above example, two CICs, two PCCs, and one Price occur. 1 = 4

상기 정규식을 가지고 가장 전형적인 SQL을 생성하는 예를 보면 다음과 같다.The following is an example of generating the most typical SQL using the regular expression.

select * from 상품정보select * from Product Details

where : CIC = '삼성' OR : CIC = '대우'where: CIC = 'Samsung' OR: CIC = 'Daewoo'

AND : PCC = 'TV' OR : PCC = '냉장고'AND: PCC = 'TV' OR: PCC = 'Fridge'

AND : Price between 1000000 and 1999999;AND: Price between 1000000 and 1999999;

여기서 "100만원대"는 1000000원에서 1999999원사이로 변환해서 검색할 수 있는 일실시예를 나타낸 것이다.Here, "one million won" represents an embodiment that can be searched by converting between 1000000 won and 1999999 won.

본 발명에서는 사용자의 자연언어 질의어를 처리하는데 있어서 정확한 구문 분석을 하지 않는다는 것인데, 상기 질의어 정규식(식 1)을 살펴보면 알겠지만 관심의 대상은 5가지 특성이며, 사용자에게 가능한 가장 많은 정보를 제공하여 선택의 폭을 넓히는데 초점을 맞추고 있다. 즉 아래와 같은 복잡한 자연언어 질의어의 경우에도 상기 질의어와 동일한 결과를 보여주고 있다.In the present invention, it does not parse correctly in processing a user's natural language query, but look at the query regular expression (Equation 1), but the subject of interest is five characteristics, providing the user with as much information as possible to select The focus is on widening. In other words, the complex natural language query shown below shows the same result as the query word.

"삼성 TV와 대우 냉장고를 각각 100만원대로 사고 싶어요""I want to buy Samsung TV and Daewoo refrigerator for 1 million won each."

(삼성과 대우의 TV와 냉장고 100만원대를 사고 싶어요")(I want to buy a million won TV and refrigerator for Samsung and Daewoo.)

상기 두 가지 질의어를 비교해 보면, 그 차이점은 "삼성 냉장고 100만원대"와 "대우 TV 100만원대"를 추가로 보여주는 것인데, 결과적으로 사용자가 요구하지는 않았지만 비교를 위한 자료로 제시하게 되는 것이다.Comparing the two query terms, the difference is that "Samsung refrigerator 1 million won" and "Daewoo TV 1 million won" is additionally shown as a result, but the user is not required but presented as a data for comparison.

이와 같이 하는 또 한가지 이유는 정확한 구문분석을 수행할 경우 시스템 응답시간이 현저하게 저하되어 본 발명에서 제시하는 바와 같이 불특정 다수가 이용하는 인터넷 웹상의 검색서비스 환경에 적합하지 않다는 것이다.Another reason for doing this is that when the correct parsing is performed, the system response time is remarkably reduced, which is not suitable for the search service environment on the Internet web used by the unspecified majority.

다음 상기 상품가격을 나타내는 용어가 어떠한 유형에 속하는지에 대한 판단으로는, 구간명시형(예를 들어 50만원에서 100만원사이), 구간추락형(예를 들어 100만원대), 최소최대형(예를 들어 가장 비싼 것, 가장 싼 것)의 3가지를 기준으로 하는데, 상기 질의어로부터 논리연산자를 선택하는 과정의 1, 2, 3 단계를 거치는 동안 가격을 나타내는 용어는 전자사전, 즉 '전자상거래정보 서비스 용어 테이블'과 '전자 상거래정보 서비스 동의어 테이블'에 나타낸 바와 같다.Next, the judgment on which type the term representing the commodity price belongs to includes, for example, a section specification type (for example, between 500,000 won and 1 million won), a section fall type (for example, 1 million won), and a minimum maximum type (for example, For example, the most expensive and the least expensive) is used. During the first, second and third steps of selecting a logical operator from the query word, the term for price refers to an electronic dictionary, that is, an electronic commerce information service. Terminology table 'and' e-commerce information service synonym table '.

예를 들어 '원, '만원', '원대, '만원대', '만원정도' 등등은 상기 구간추략형으로, '원에서', '만원에서', '원부터', '원사이', '만원사이' 등등은 상기 구간명시형으로, '비싼', '싼', '저렴한' 등등은 상기 최소최대형으로 구분하여 등록된 것을 이용하여 가격을 나타내는 검색대상용어임을 파악할 수 있으며, 동시에 3가지 중 어떤 유형에 속하는지를 파악할 수 있다.For example, 'won,' 10,000 won ',' wondae, 'wonwondae', 'about 10,000 won', etc. are in the above section, 'from circle', 'from 10,000 won', 'from circle', 'between', ' 10,000 won ”and the like are the above-mentioned section type, and 'expensive', 'cheap', 'cheap' and the like can be identified as the search target term indicating the price by using the registered items classified as the minimum and maximum types. You can find out which type they belong to.

상기 처리 절차가 완료되면 검색대상이 되는 용어로부터 질의어 정규식이 생성된 것이다(90).When the processing procedure is completed, the query regular expression is generated from the term to be searched (90).

다음은 생성된 질의어 정규식으로부터 RDBMS의 질의어인 SQL을 생성하는 것이다(S11).The following is to generate the SQL that is a query of the RDBMS from the generated query regular expression (S11).

이때 생성되는 SQL은 정적(Static) SQL로서, 질의어 정규식으로 생성가능한 모든 경우의 수를 미리 고려하여 단 1번의 수행으로 관련 정보를 모두 가져올 수 있도록 구성되어진 1개의 SQL 문장에 호스트 변수(Host Variable)를 대입하는 방법으로 생성된다.At this time, the generated SQL is static SQL. In consideration of the number of cases that can be generated by the query regular expression, the host variable is included in one SQL statement configured to retrieve all related information in one execution. Is created by substituting

물론 그때그때 생성되는 질의어 정규식에 대응하는 동적(Dynamic) SQL를 생성하여 대응할 수도 있으나, 불특정 다수가 이용하는 인터넷 월드와이드웹상의 검색서비스 환경에서 동적 SQL를 생성하여 검색하는 것은 처리시간이 길어질 뿐만 아니라 RDBMS의 질의어 최적화 기능을 효과적으로 이용하지 못하므로 본 발명에서는 배제시켰다.Of course, it is possible to generate and respond to dynamic SQL corresponding to the query regular expression generated at that time, but generating and searching dynamic SQL in the search service environment on the Internet World Wide Web used by the unspecified majority not only takes a long processing time but also an RDBMS. Since the query optimization function of is not used effectively, it is excluded in the present invention.

생성된 구조적 질의어를 이용하여 전자상거래정보 서비스 상품 테이블(101)을 검색하여 관련 정보를 가져온다(S12).The e-commerce information service product table 101 is searched using the generated structured query word to obtain related information (S12).

본 발명에서 처리대상으로 하는 질의어에 관한 상품정보는 CIC, PCC, BN, CFC 그리고 PRICE이지만, 검색결과로서 구매자에게 제공되는 상품정보는 이 5가지 정보에 덮붙여서 모델번호, 해당 상품을 판매하는 가상상점내의 URL, 그리고 URL로부터 추출한 가상상점의 홈 페이지 URL이 부가적으로 제공된다.The product information on the query subject to be processed in the present invention is CIC, PCC, BN, CFC and PRICE, but the product information provided to the buyer as a search result is superimposed on these five pieces of information to sell the model number and the corresponding product. The URL in the store and the home page URL of the virtual store extracted from the URL are additionally provided.

상기 8가지 정보에 관한 검색결과는 HTML 문서 형태로 동적으로 생성되어(S13), HTTPd(40)을 통하여 구매자의 웹브라우저(10)에 전달된다(S14).The search results for the eight pieces of information are dynamically generated in the form of an HTML document (S13) and transmitted to the buyer's web browser 10 through the HTTPd 40 (S14).

상술한 바와 같이 본 발명은 사용자가 일상적으로 사용하는 자연언어 질의어로 원하는 상품정보를 요청하므로 편리한 사용자 인터페이스를 제공하며, 자연언어 질의어에 대한 정확한 상품정보 추출 및 빠른 처리시간을 통하여 고품질의 검색서비스를 제공하는 효과가 있다.As described above, the present invention provides a convenient user interface because the user requests the desired product information in the natural language query used by the user everyday, and provides a high-quality search service through accurate product information extraction and fast processing time for the natural language query. It is effective to provide.

Claims (4)

전자상거래 상품정보 검색용 자연언어 질의어 처리방법에 있어서,In the natural language query processing method for e-commerce product information search, 검색대상 용어를 추출하는 제 1 과정과;A first process of extracting a search term; 추출된 각각의 용어에 대하여 질의어 정규식을 생성하는 제 2 과정과;Generating a query regular expression for each extracted term; 생성된 정규식을 관계형데이터베이스관리시스템(RDBMS)의 질의어인 구조적질의어(SQL)로 변환하여 검색결과를 생성하는 제 3 과정을 포함하는 것을 특징으로 하는 전자상거래 상품정보 검색용 자연언어 질의어 처리방법.And a third step of converting the generated regular expression into a structural query (SQL), which is a query of a relational database management system (RDBMS), to generate a search result. 제 1 항에 있어서, 상기 제 1 과정은The method of claim 1, wherein the first process is 인터넷 가상상점을 통해 상품을 구입하고자 하는 구매자가 상품의 정보를 웹브라우저를 이용하여 자연언어 질의어로 검색을 요청하는 제 1 단계와;A first step of requesting a purchaser to purchase a product through an internet virtual shop by using a web browser to search information of the product using a natural language query; 자연언어 질의어로 검색을 요청한 후 전자상거래정보 서비스 시스템내의 웹서버를 거쳐 사용자 자연언어 질의어 추출기를 통해 질의어를 추출하여 기억장소 배열에 저장하는 제 2 단계와;A second step of requesting a search using a natural language query and extracting the query word through a user natural language query extractor through a web server in an e-commerce information service system and storing the query in a storage arrangement; 저장된 자연언어 질의어를 질의어 토큰 분리기를 통해 공백, 쉼표, 마침표 및 기호와 같은 여러 조건들을 절단기호로 하여 토큰을 분리시키는 제 3 단계와;A third step of separating the token from the stored natural language query word using various conditions such as spaces, commas, periods, and symbols as cutters; 분리된 토큰에서 상품가격 용어가 존재할 경우 기억장소 배열에 저장한 후 해당 토큰을 제거하고, 각 토큰에서 조사를 제거한 후 불용어 토큰을 제거하는 제 4 단계를 포함하여 구성된 것을 특징으로 하는 전자상거래 상품정보 검색용 자연언어 질의어 처리방법.If there is a commodity price term in the separated token, the e-commerce product information comprising the fourth step of storing the token in the storage array and removing the corresponding token, removing the investigation from each token and removing the stopword token. Natural language query processing method for search. 제 1 항에 있어서, 상기 제 2 과정은The method of claim 1, wherein the second process 자연언어 질의어를 논리적 가능 토큰으로 분리하고 불용어 토큰을 제거하여 검색 대상용어를 추출하며 추출된 검색 대상용엉에 대한 특성을 파악하여 이를 이용해 논리적 연산자로 질의어를 생성하는 제 1 단계와;Separating a natural language query word into a logical enable token, removing a stop word token, extracting a search target term, identifying characteristics of the extracted search target termong, and generating a query term using a logical operator using the same; 상기 자연언어 질의어를 구간명시형, 구간추략형, 최소최대형으로 구분하여 상품가격을 나타내는 용어의 형태를 파악하는 제 2 단계를 포함하는 것을 특징으로 하는 전자상거래 상품정보 검색용 자연언어 질의어 처리방법.And a second step of identifying the form of the term representing the commodity price by dividing the natural language query into a section specification type, section tracking type, and minimum size type. 4. . 제 1 항에 있어서, 상기 제 3 과정은The method of claim 1, wherein the third process is 생성된 정규식을 RDBMS의 질의어인 SQL로 변환하는 제 1 단계와;A first step of converting the generated regular expression into SQL which is a query word of an RDBMS; 전자상거래정보 서비스 상품 테이블을 검색하여 제조회사명(CIC), 상품분류명(PCC), 상품명(BN), 주요사양(CFC), 모델번호(MN), 가격(PRICE), 문서위치(URL)의 상품정보를 가져오는 제 2 단계와;E-Commerce Information Service Search the product table to find the manufacturer name (CIC), product classification name (PCC), product name (BN), main specifications (CFC), model number (MN), price (PRICE), and document location (URL). A second step of obtaining product information; 상기 URL로부터 홈페이지 URL를 추출하여 검색결과에 덮붙인 후 HTML 문서를 동적 생성하여 웹서버를 통해 사용자에게 제공하는 제 3 단계를 포함하는 것을 특징으로 하는 전자상거래 상품정보 검색용 자연언어 질의어 처리방법.And extracting a homepage URL from the URL, attaching it to a search result, and dynamically generating an HTML document and providing the same to a user through a web server.
KR1019970052617A 1997-10-14 1997-10-14 Method for processing natural query language for searching commodity information of electronic commerce KR100289065B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970052617A KR100289065B1 (en) 1997-10-14 1997-10-14 Method for processing natural query language for searching commodity information of electronic commerce

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970052617A KR100289065B1 (en) 1997-10-14 1997-10-14 Method for processing natural query language for searching commodity information of electronic commerce

Publications (2)

Publication Number Publication Date
KR19990031784A KR19990031784A (en) 1999-05-06
KR100289065B1 true KR100289065B1 (en) 2001-05-02

Family

ID=37517601

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970052617A KR100289065B1 (en) 1997-10-14 1997-10-14 Method for processing natural query language for searching commodity information of electronic commerce

Country Status (1)

Country Link
KR (1) KR100289065B1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030054958A (en) * 2001-12-26 2003-07-02 (주)오비씨소프트 Method for providing information and apparatus for the same
WO2007030692A1 (en) * 2005-09-08 2007-03-15 Microsoft Corporation Autocompleting with queries to a database
KR100736903B1 (en) * 2000-07-06 2007-07-10 제이씨비 캄파니 리미티드 Search system for goods
US7693860B2 (en) 2005-03-18 2010-04-06 Microsoft Corporation Method and system to associate cell and item metadata
US7792847B2 (en) 2005-09-09 2010-09-07 Microsoft Corporation Converting structured reports to formulas
US7805433B2 (en) 2005-10-14 2010-09-28 Microsoft Corporation Multidimensional cube functions
KR20210027939A (en) 2019-09-03 2021-03-11 국민대학교산학협력단 Serch device and serch method based on hash code

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990078925A (en) * 1999-08-20 1999-11-05 강준모 Internet Browsing System For Searching with Usual Words
KR20020030545A (en) * 2000-10-18 2002-04-25 남 데이비드 이 Automatic answer and search method - based on artificial intelligence and natural languane process technology - for natural and sentencial questions.
KR100433584B1 (en) * 2000-12-12 2004-06-04 한국전자통신연구원 Method for product detailed information extraction of internet shopping mall with ontology and wrapper data
KR20010085071A (en) * 2001-07-30 2001-09-07 이준정 Exchanging method of goods information in electronic commerce on computer network
KR20030026006A (en) * 2001-09-24 2003-03-31 한국신용평가정보주식회사 Product information input and searching method using standard product code
KR100490442B1 (en) * 2002-03-16 2005-05-17 삼성에스디에스 주식회사 Apparatus for clustering same and similar product using vector space model and method thereof
KR20030085314A (en) * 2002-04-30 2003-11-05 (주)메타웨이브 System for providing goods information using Internet and operating method thereof
US7613719B2 (en) * 2004-03-18 2009-11-03 Microsoft Corporation Rendering tables with natural language commands
KR20050107200A (en) * 2004-05-08 2005-11-11 (주) 맥스무비 Method and apparatus for extracting the information for booking up movie ticket from user query
KR100740978B1 (en) * 2004-12-08 2007-07-19 한국전자통신연구원 System and method for processing natural language request
KR100623628B1 (en) * 2005-05-20 2006-09-19 엔에이치엔(주) Query matching system and method, and computer readable recording medium recording program for implementing the method
JP5027803B2 (en) * 2005-05-20 2012-09-19 エヌエイチエヌ ビジネス プラットフォーム コーポレーション Query matching system and method, and computer-readable recording medium on which a program for executing the method is recorded
KR100709984B1 (en) * 2005-05-20 2007-04-23 엔에이치엔(주) Query matching method and system for outputting results matched to query by processing the query according to various logics
KR100534493B1 (en) 2005-05-26 2005-12-08 엔에이치엔(주) Method and system for recommending category and computer readable recording medium recording program for implementing the method
KR101137056B1 (en) * 2005-06-03 2012-04-20 엔에이치엔비즈니스플랫폼 주식회사 Commodity information registering method and system which uses automatic commodity model suggesting logic
KR102358357B1 (en) * 2019-09-10 2022-02-04 한국과학기술정보연구원 Estimating apparatus for market size, and control method thereof

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100736903B1 (en) * 2000-07-06 2007-07-10 제이씨비 캄파니 리미티드 Search system for goods
KR20030054958A (en) * 2001-12-26 2003-07-02 (주)오비씨소프트 Method for providing information and apparatus for the same
US7693860B2 (en) 2005-03-18 2010-04-06 Microsoft Corporation Method and system to associate cell and item metadata
WO2007030692A1 (en) * 2005-09-08 2007-03-15 Microsoft Corporation Autocompleting with queries to a database
US8234293B2 (en) 2005-09-08 2012-07-31 Microsoft Corporation Autocompleting with queries to a database
US7792847B2 (en) 2005-09-09 2010-09-07 Microsoft Corporation Converting structured reports to formulas
US7805433B2 (en) 2005-10-14 2010-09-28 Microsoft Corporation Multidimensional cube functions
KR20210027939A (en) 2019-09-03 2021-03-11 국민대학교산학협력단 Serch device and serch method based on hash code

Also Published As

Publication number Publication date
KR19990031784A (en) 1999-05-06

Similar Documents

Publication Publication Date Title
KR100289065B1 (en) Method for processing natural query language for searching commodity information of electronic commerce
JP3597370B2 (en) Document processing device and recording medium
US7418443B2 (en) Question answering system, data search method, and computer program
US9015182B2 (en) Product placement engine and method
US7412442B1 (en) Augmenting search query results with behaviorally related items
US8145619B2 (en) Method and system for identifying companies with specific business objectives
US20050114370A1 (en) Identifier vocabulary data access method and system
US20110173197A1 (en) Methods and apparatuses for clustering electronic documents based on structural features and static content features
EP2729886A1 (en) Systems and methods for natural language searching of structured data
US8560518B2 (en) Method and apparatus for building sales tools by mining data from websites
WO2018125984A1 (en) Systems and methods for harvesting data associated with fraudulent content in a networked environment
US7809672B1 (en) Association of data with a product classification schema
KR100283103B1 (en) Method and system of automatic indexing of product information in online store
US20140089340A1 (en) Method and apparatus for graphic code database updates and search
KR20040021789A (en) Method and system for registering goods information
Hassanzadeh et al. Helix: Online enterprise data analytics
JP2003162639A (en) Stock name selection supporting device
CA3051919C (en) Machine learning (ml) based expansion of a data set
CN106919653B (en) Log filtering method based on user behavior
KR100960709B1 (en) System and method for providing shoping key word using ontology in key word search system
Prathyusha et al. Normalization Methods for Multiple Sources of Data
KR100312430B1 (en) System for learning information of goods in internet shopping malls and method using the same
Hemnani et al. Extracting information from semi-structured web documents
JP2013101415A (en) Commodity web page analyzer, commodity web page analysis method, and program for commodity web page analyzer
CN110737851B (en) Hyper-link semantization method, device, equipment and computer readable storage medium

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20090202

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee