KR102625347B1 - 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출 방법과 이를 이용하여 음식 사전을 업데이트하는 방법 및 이를 위한 시스템 - Google Patents

동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출 방법과 이를 이용하여 음식 사전을 업데이트하는 방법 및 이를 위한 시스템 Download PDF

Info

Publication number
KR102625347B1
KR102625347B1 KR1020210154049A KR20210154049A KR102625347B1 KR 102625347 B1 KR102625347 B1 KR 102625347B1 KR 1020210154049 A KR1020210154049 A KR 1020210154049A KR 20210154049 A KR20210154049 A KR 20210154049A KR 102625347 B1 KR102625347 B1 KR 102625347B1
Authority
KR
South Korea
Prior art keywords
noun
unregistered
nouns
food
verbs
Prior art date
Application number
KR1020210154049A
Other languages
English (en)
Other versions
KR20230068092A (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 KR1020210154049A priority Critical patent/KR102625347B1/ko
Publication of KR20230068092A publication Critical patent/KR20230068092A/ko
Application granted granted Critical
Publication of KR102625347B1 publication Critical patent/KR102625347B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

실시예는, 메모리에 저장된 음식 메뉴 명사 추출 프로그램 코드가 제공하는 제어 명령에 따라 프로세서에 의해 수행되는 수신된 음식명 검색어를 포함하는 웹페이지를 검색하고, 검색된 웹페이지 내에서 음식명 검색어를 포함한 문장을 수집하는 단계; 수집된 음식명 검색어를 포함한 문장들에서 용언을 추출하는 단계; 추출된 용언을 검색어로 하여 웹페이지를 검색하고 검색된 웹페이지 내에서 용언을 포함한 문장을 수집하는 단계; 및 수집된 용언을 포함한 문장들에서 명사를 추출하는 단계;를 포함하는 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출 방법을 제공할 수 있다.

Description

동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출 방법과 이를 이용하여 음식 사전을 업데이트하는 방법 및 이를 위한 시스템{A method for extracting food menu nouns using parts of speech such as verbs and adjectives, a method for updating a food dictionary using the same, and a system for the same}
본 발명은 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사를 추출하는 방법과 이를 이용하여 음식 사전을 업데이트하는 방법 및 이를 위한 시스템에 관한 것이다.
메일, 소셜미디어와 같은 비정형데이터가 많은 비중을 차지함에 따라서 자연어 처리에 대한 관심이 높아지고 있다. 제품이나 서비스 구매 후기의 구전효과가 확장되면서 기업의 평판 분석에 집중하고 있다. 또한, 인공지능의 발달로 AI스피커의 대중화로 소통 패러다임의 변화가 발생하면서 기존 키보드 중심의 텍스트 방식에서 대화형으로 변화되면서 더욱 자연어에 대한 관심이 높아지고 있다. 자연어처리는 사람의 자연어를 컴퓨터가 분석하고 주어진 문제를 해결하는 기능이다(이종화 외, 2019). 하지만 동음이의어나 다의어처럼 한글이 가지는 모호성 분석이 어렵다. 문법적인 구어와 문어의 차이, '아버지 가방에 들어가신다'와 같이 띄어쓰기 문제, 동음이의어나 주어, 서술어, 목적어 등 생략된 문장 분석 등 한글의 특수성에 많은 연구자의 한계점을 제시하고 있다(김미경, 최소영, 2020). 고객의 평점이나 리뷰를 읽고 제품이나 서비스의 구매 결정에 많은 영향을 줌으로써 이를 실시간 모니터링하여 대응하는 실시간 리뷰 모니터링 서비스도 가능하며 자사와 타사의 온라인 데이터 분석을 통해 경쟁우위와 경쟁 열위를 판단하여 문제의 원인 찾아내는 경쟁사 분석도 가능하다. 뉴스에서 자연어처리로 핵심키워드, 요약분석을 통해 분석시간을 대폭 줄일 수 있으며 뉴스레터나 SNS 포스팅 자동화도 가능하며 리뷰, 블로그 등을 자연어 처리 분석하여 충성도 높은 우수 고객을 식별할 수 있는 고객 분석도 가능하다(임용택, 임희석, 2020). 채팅어나 인터넷어는 새로운 이슈가 발생할 때마다 신조어가 등장하며 비표준어지만 표준어로 치환하여 어휘와 매칭할 수 있는 연구도 진행되고 있다(이종화, 2018; 김진수, 2020; 길호현, 2018).
한국등록특허공보 제1935109호의 패션 분야의 단어 구 단위 감성분석방법 및 이를 포함하는 저장매체에 관한 것으로 저장매체에 저장된 패션 분야의 단어 구 단위 감성분석용 프로그램이 설치된 관리서버를 통해 수행되는 패션 분야의 단어 구 단위 감성분석방법에 있어서, 온라인 서비스를 대상으로 비정형 텍스트 데이터를 수집하여 상기 관리서버에 저장하는 (a)단계와, 상기 비정형 텍스트 데이터에서, 패션 분야에 포함되는 복수의 감성어휘를 추출하는 (b)단계와, 상기 감성어휘 중 적어도 일부를 조합한 문장을 구성하는 (c)단계와, 상기 (c)단계에서 조합된 문장을 구성하는 감성어휘 각각의 긍정/부정 극성 가중치를 부여하는 (d)단계와, 상기 감성어휘의 긍정/부정 극성 가중치를 통해, 상기 감성어휘 중 적어도 일부를 조합한 문장의 긍정/부정 극성을 분석하는 (e)단계와, 상기 (e)단계의 분석 결과를 통해 패션 분야의 트렌드를 분석하는 (f)단계를 포함하는 것을 특징으로 한다.
한국공개특허공보 제2014-0078312호의 텍스트 기반 감성 분석 결과를 제공하기 위한 장치, 시스템 및 그 방법은 사용자로부터 감성을 분석하고자 하는 대상에 대한 키워드를 입력 받는 입력부, 입력 받은 상기 키워드에 대한 감성 분석을 서비스 서버에 요청하고 그 요청한 결과로 감성 분석 결과를 제공받는 제어부, 제공받은 상기 감성 분석 결과에 따라 상기 대상에 대한 속성을 디스플레이하고 디스플레이된 각 속성마다 속성값에 상응하는 텍스트를 디스플레이하는 표시부 및 제공받은 상기 감성 분석 결과를 저장하는 저장부를 포함하되, 상기 속성은 상기 감성의 대상에 대해 평가하거나 상기 감성을 표현하려는 구체적인 항목이고, 상기 속성값은 상기 속성을 평가하거나 상기 속성에 대한 감성을 나타내는 표현인 것을 특징으로 한다.
한국공개특허공보 제2015-0022583호의 키워드를 추출하는 장치 및 방법은 사용자 단말로부터 상기 검색어를 수신하는 검색어 수신부, 상기 수신된 검색어를 포함하는 복수의 문서들을 외부 장치로부터 수집하는 문서 수집부, 상기 수집된 문서들로부터 상기 수집된 문서들에 포함된 명사들 중 기설정된 개수의 빈출 명사들을 추출하는 빈출 명사 추출부, 상기 빈출 명사들 및 최빈출 명사에 대하여 상기 수집된 문서들을 분석함으로써 상기 빈출 명사들 각각에 대한 가중치를 결정하는 가중치 결정부, 상기 결정된 가중치에 기초하여 상기 빈출 명사들 각각의 유효성을 판단하는 유효성 판단부, 및 상기 유효성 판단 결과 유효한 빈출 명사들을 상기 검색어에 대한 키워드로서 결정하는 키워드 추출부를 포함하는 것을 특징으로 한다.
한국등록특허공보 제1042515호의 사용자의 의도에 기반한 정보 검색방법 및 정보 제공방법은 검색어에 대한 해석결과를 이용하여 파악한 검색자의 의도에 맞는 편집기를 제공하고, 편집기를 통해 입력된 메타데이터들과 관련된 메타데이터를 가지는 컨텐츠를 검색한다. 이에 의해, 검색자가 입력한 정보로부터 검색자의 의도를 파악하고, 파악된 의도를 기초로 세부적인 메타데이터 입력을 유도하고, 입력된 메타데이터를 이용하여 검색을 수행할 수 있다.
한국등록특허공보 제0886687호의 중국어 미등록어 자동 추출 방법 및 장치는 중국어 문장이 포함된 웹문서를 입력받으면, 입력된 웹문서의 html 태그를 제거하고, 웹문서 내의 문장별로 메타 태그와 일반 태그 처리 방식으로 분류하며, 형태소 분석을 진행하여 분석결과를 출력하고, 분석 결과를 이용하여 어근 중심의 미등록어를 추출하는 방식과, 단음절 토큰을 중심으로 미등록어를 추출하는 방식과, 4음절로 된 동사 미등록어를 추출하는 방식과, 단음절 토큰의 단어 가능 여부를 판단하여 단어 가능 미등록어를 추출하는 방식과, 메타 태그 정보에 포함된 단어를 이용하여 미등록어를 추출하는 방식 중 적어도 하나의 방식을 이용하여 미등록어를 추출하는 것을 특징으로 한다. 본 발명에 의하면, 중국어 미등록어 추출방식을 통하여 쉽고 빠르게 중국어 분석용 사전을 구축할 수 있으며, 특히 신조어, 미등록 용언에 대한 사전 보강은 실제 웹문서 번역시스템에 있어서 정확도를 크게 향상시킬 수 있는 것을 특징으로 한다.
종래의 기술은 특정 어휘를 추출하여 추출된 어휘를 분석하여 감성 결과를 도출하거나, 키워드를 설정하거나, 사용자의 의도를 추정하는 기술에 관한 것이다. 여기서의 추출되는 어휘는 표준어로 인정된 어휘이거나 대중들 사이에서 널리 쓰여 인터넷 사전 상에 등록된 어휘 정도에 불과하다. 따라서 현대의 급변하는 사회와 문화가 반영되어 확대 재생산되는 다양한 신조어를 추출하고 이를 분석하는데는 어려움이 있다.
관련하여 한국등록특허공보 제2019756호는 신조어 자동 인식을 위한 언어 분석에 기반한 온라인 문맥 광고 지능화 장치 및 그 방법을 개시하고 있다. 다만, 제2019756호는 랜덤하게 수집된 문서들 사이에서 신조어를 검출하는 기술로 웹 상에 거의 무한한 정보들을 중에서 적절한 수집 대상을 설정하는 것은 현실적으로 매우 어렵다. 특히, 음식 명칭의 경우 사람들 저마다 다양한 표현으로 지칭하는 경우가 많고 음식의 레시피나 음식의 제조 지역, 음식의 조리법, 퓨전 요리 등에 따라서 매우 다양한 표현으로 해당 음식을 지칭하는 경우가 많으며 외래어로된 메뉴가 많아 표준화된 음식명 하나로 그룹핑될 수 있는 다양한 표현들을 수집하고 정리하는 것은 중요한 과제들 중 하나로 인식되고 있다.
한국등록특허공보 제1935109호 한국공개특허공보 제2014-0078312호 한국공개특허공보 제2015-0022583호 한국등록특허공보 제1042515호 한국등록특허공보 제0886687호 한국등록특허공보 제2019756호
이종화, 이문봉, 김종원. (2019). TF-IDF를 활용한 한글 자연어 처리 연구. 정보시스템연구, 28(3), 105-121. 김미경, 최소영. (2020). 명칭실어증 환자의 동음이의어 처리 특성. 특수교육논총, 36(2), 67-80. 임용택, 임희석. (2020). 기업 리뷰 정보를 활용한 주가 방향 예측 모델 비교 분석. 한국융합학회논문지, 11(8), 165-171. 이종화. (2018). SNS 해시태그를 이용한 감정 단어 일반화 연구. 인터넷전자상거래연구, 18(4), 53-63. 김진수. (2020). 비정형 문서에서 감정과 상황 정보를 이용한 감성 예측. 융합정보논문지 (구 중소기업융합학회논문지), 10(10), 40-46. 길호현. (2018). 텍스트마이닝을 위한 한국어 불용어 목록 연구. 우리말글, 78, 1-25.
본 발명은 텍스트 문장 내 명사의 동작이나 작용을 설명하고나 성질의 상태를 표현하는 용언을 이용하는 명사 추출 방법을 제공하고자 한다.
본 발명은 음식명 검색어와 연관된 용언을 활용하여 음식 명사를 검색하고 미등록된 음식 명사를 저장하고 활용할 수 있도록 하는 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출 방법과 이를 이용하여 음식 사전을 업데이트하는 방법 및 이를 위한 시스템을 제공하고자 한다.
실시예는, 메모리에 저장된 음식 메뉴 명사 추출 프로그램 코드가 제공하는 제어 명령에 따라 프로세서에 의해 수행되는 수신된 음식명 검색어를 포함하는 웹페이지를 검색하고, 검색된 웹페이지 내에서 음식명 검색어를 포함한 문장을 수집하는 단계; 수집된 음식명 검색어를 포함한 문장들에서 용언을 추출하는 단계; 추출된 용언을 검색어로 하여 웹페이지를 검색하고 검색된 웹페이지 내에서 용언을 포함한 문장을 수집하는 단계; 및 수집된 용언을 포함한 문장들에서 명사를 추출하는 단계;를 포함하는 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출 방법을 제공할 수 있다.
다른 측면에서, 추출된 명사가 사전 데이터베이스 상의 등록 명사인지 여부를 판단하여, 상기 사전 데이터베이스에 등록되지 않은 미등록명사를 추출하여 표시하는 단계;를 더 포함하는 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출 방법을 제공할 수 있다.
또 다른 측면에서, 클라이언트 장치는 수신한 음식명 검색어를 서버로 전송하고, 상기 서버는 수신된 음식명 검색어를 포함하는 웹페이지를 검색하고, 검색된 웹페이지 내에서 음식명 검색어를 포함한 문장을 수집하고, 수집된 음식명 검색어를 포함한 문장들에서 용언을 추출하고, 추출된 용언을 검색어로 하여 웹페이지를 검색하고 검색된 웹페이지 내에서 용언을 포함한 문장을 수집하며, 수집된 용언을 포함한 문장들에서 명사를 추출하는 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출하는 시스템을 제공할 수 있다.
다른 측면에서, 상기 서버는 기 등록된 관심 모니터링 사이트 목록 정보에 해당하는 사이트 상에서 상기 음식명 검색어를 포함하는 웹페이지를 검색하는 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출하는 시스템을 제공할 수 있다.
다른 측면에서, 상기 서버는 상기 음식명 검색어에 기초하여 이미 검색된 웹페이지와 동일한 웹페이지와 중복되는 웹페이지를 제외한 다른 웹페이지 내에서 용언을 포함한 문장을 수집하는 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출하는 시스템을 제공할 수 있다.
다른 측면에서, 상기 서버는 추출된 명사들 각각을 미리 저장된 사전 데이터베이스 상에서 검색하여, 상기 추출된 명사들 각각을 상기 미리 저장된 사전 데이터베이스에 등록된 등록 명사 및 상기 사전 데이터베이스에 등록되지 않은 미등록 명사로 분류하는 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출하는 시스템을 제공할 수 있다.
다른 측면에서, 상기 서버는 상기 사전 데이터베이스 상에서 상기 등록 명사의 의미 정보를 분석하여 상기 등록 명사들 중에서 등록 음식명 명사를 추출하는 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출하는 시스템을 제공할 수 있다.
다른 측면에서, 상기 서버는 상기 등록 음식명 명사와 상기 미등록 음식명 명사 상호간의 음절간의 동일성 여부를 판단하여 상기 등록 음식명 명사와 상기 미등록 음식명 명사 상호간의 유사도를 계산하고, 상기 서버는 상기 미등록 명사들 및 상기 등록 음식명 명사 각각의 추출 빈도 정보를 계산하는 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출하는 시스템을 제공할 수 있다.
다른 측면에서, 상기 클라이언트 장치는 상기 미등록 명사들을 수신하고, 상기 유사도 또는 상기 추출 빈도 정보에 기초하여 상기 미등록 명사들을 정렬하여 표시하고, 상기 클라이언트 장치는 상기 등록 음식명 명사를 수신하고, 상기 등록 음식명 명사의 검출 빈도수에 기초하여 상기 등록 음식명 명사를 정렬하여 표시하는 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출하는 시스템을 제공할 수 있다.
다른 측면에서, 상기 클라이언트 장치는 표시된 미등록 명사들 중 어느 하나의 선택에 응답하여 상기 서버로부터 선택된 미등록 명사를 포함한 문장 정보를 수신하여 표시하고, 상기 문장 정보에는 상기 선택된 미등록 명사가 하이라이트 되어 표시되는 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출하는 시스템을 제공할 수 있다.
다른 측면에서, 상기 클라이언트 장치는 표시된 문장에서 드레그된 텍스트 정보인 등록용 텍스트 정보를 상기 선택된 미등록 명사 정보의 의미 정보로서 사용자용 사전 데이터베이스에 등록하는 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출하는 시스템을 제공할 수 있다.
다른 측면에서, 상기 클라이언트 장치는 표시된 문장에서 드레그된 텍스트 정보인 등록용 텍스트 정보 및 상기 선택된 미등록 명사 정보를 상기 서버로 전송하고, 상기 서버는 상기 선택된 미등록 명사 정보에 매칭된 등록용 텍스트 정보를 복수의 클라이언트 장치들로부터 수집하고, 기 설정치 이상의 유사도를 나타내는 등록용 텍스트 정보들의 개수를 산출하여 기설정치 이상이면 상기 등록용 텍스트 정보 중 어느 하나의 텍스트 정보를 상기 미등록 명사 정보의 의미 정보로서 상기 사전 데이터베이스에 등록하는 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출하는 시스템을 제공할 수 있다.
본 발명에 따른 실시예는 문장 내 명사의 특성을 표현하는 동사와 형용사를 이용하여 보다 방대한 음식 명사 사전을 구축하는 방법을 제공할 수 있다.
또한, 실시예는 음식 이름은 각기 다르지만 음식을 표현하는 동사와 형용사는 같은 표현을 사용하는 점을 이용하여 음식명 검색어로부터 추출된 용언이 사용된 다양한 음식명 명사를 추출할 수 있는 음식 메뉴 명사 추출 방법 및 이를 위한 시스템을 제공할 수 있다.
또한, 실시예는 사전 데이터베이스 등록되지 않은 미등록 명사를 추출하여 최근 트렌드에 따라 다양하게 표현되는 명사를 광고용 태그로 활용할 수 있도록 하는 음식 메뉴 명사 추출 방법 및 이를 위한 시스템을 제공할 수 있다.
또한, 실시예는 사전 데이터베이스 등록되지 않은 미등록 명사를 추출하여 최근 트렌드에 따라 다양하게 표현되는 명사에 대한 의미 정보를 사전 데이터베이스에 업데이트할 수 있도록 하는 음식 메뉴 명사 추출 방법 및 이를 위한 시스템을 제공할 수 있다.
또한, 실시예는 특정 용언에 의해 수식되는 음식명의 명사에 대한 정보를 확인할 수 있도록 하는 음식 메뉴 명사 추출 방법 및 이를 위한 시스템을 제공할 수 있다.
도 1은 본 개시내용의 실시형태들에 따른, 단독으로 사용될 수 있거나 혹은 네트워크화된 구성으로 사용될 수 있는 다양한 컴퓨팅 장치(computing device)들을 도시하는 컴퓨터 시스템의 개략적 도면을 제시한다.
도 2는 일 실시예에 따른 클라이언트 장치 및 서버의 내부 구성을 설명하기 위한 것이다.
도 3a 내지 도 3c는 본 발명의 다양한 실시예에 따른 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출 방법에 대한 흐름도이다.
도 4 내지 도 7은 음식 메뉴 명사 추출 프로그램의 실행에 따라 클라이언트 장치에서 표시되는 유저 인터페이스를 개략적으로 나타낸 것이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 본 발명의 효과 및 특징, 그리고 그것들을 달성하는 방법은 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있다. 이하의 실시예에서, 제1, 제2 등의 용어는 한정적인 의미가 아니라 하나의 구성 요소를 다른 구성 요소와 구별하는 목적으로 사용되었다. 또한, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징들 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다. 또한, 도면에서는 설명의 편의를 위하여 구성 요소들이 그 크기가 과장 또는 축소될 수 있다. 예컨대, 도면에서 나타난 각 구성의 크기 및 두께는 설명의 편의를 위해 임의로 나타내었으므로, 본 발명이 반드시 도시된 바에 한정되지 않는다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명하기로 하며, 도면을 참조하여 설명할 때 동일하거나 대응하는 구성 요소는 동일한 도면부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
도 1은 본 개시내용의 실시형태들에 따른, 단독으로 사용될 수 있거나 혹은 네트워크화된 구성으로 사용될 수 있는 다양한 컴퓨팅 장치(computing device)들을 도시하는 컴퓨터 시스템의 개략적 도면을 제시한다. 예를 들어, 본 도면은 네트워크(300)를 통해 통신하는 클라이언트 장치(100)와 서버(200)를 갖는 컴퓨터 시스템(10)을 예시한다.
클라이언트 장치(100)는 이동형 단말(101) 이거나 고정형 단말(102)일 수 있다. 예를 들어, 클라이언트 장치(100)는 스마트폰(smart phone), 휴대폰, 네비게이션, 컴퓨터, 노트북, 디지털방송용 단말, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 태블릿 PC 등이 있다.
서버(200)는 적어도 하나의 클라이언트 장치(100)와 네트워크(300)를 통해 통신하여 명령, 코드, 파일, 컨텐츠, 서비스 등을 제공하는 컴퓨팅 장치 또는 복수의 컴퓨팅 장치들로 구현될 수 있다.
통신 방식은 제한되지 않으며, 네트워크(300)가 포함할 수 있는 통신망(일례로, 이동통신망, 유선 인터넷, 무선 인터넷, 방송망)을 활용하는 통신 방식뿐만 아니라 기기들간의 근거리 무선 통신 역시 포함될 수 있다. 예를 들어, 네트워크(300)는, PAN(personal area network), LAN(local area network), CAN(campus area network), MAN(metropolitan area network), WAN(wide area network), BBN(broadband network), 인터넷 등의 네트워크 중 하나 이상의 임의의 네트워크를 포함할 수 있다. 또한, 네트워크(300)는 버스 네트워크, 스타 네트워크, 링 네트워크, 메쉬 네트워크, 스타-버스 네트워크, 트리 또는 계층적(hierarchical) 네트워크 등을 포함하는 네트워크 토폴로지 중 임의의 하나 이상을 포함할 수 있으나, 이에 제한되지 않는다.
클라이언트 장치(100)는 검색어를 사용하여 검색 동작을 개시시키기 위해 사용자로 하여금 검색어를 제출하도록 할 수 있다. 서버(200)는 검색어를 수신하고, 검색어를 사용하여 검색 동작을 수행한다. 또한, 서버(200)는 검색 결과를 클라이언트 장치(100)로 제공하는 동작을 수행할 수 있다. 또한, 서버(200)는 클라이언트 장치(100)로 제공한 검색 결과 정보에 기반하여 클라이언트 장치(100)로부터 수신한 추가적인 정보의 요청에 응답하여 클라이언트 장치(100)로 요청한 정보를 전송할 수도 있다.
일례로, 서버(160)는 네트워크(300)를 통해 접속한 클라이언트 장치(100)로 음식 메뉴 명사 추출을 위한 어플리케이션의 설치를 위한 파일을 제공할 수 있다. 이 경우 클라이언트 장치(100)는 서버(200)로부터 제공된 파일을 이용하여 음식 메뉴 명사 추출을 위한 어플리케이션을 설치할 수 있다. 또한, 클라이언트 장치(100)가 포함하는 운영체제(Operating System, OS) 및 적어도 하나의 프로그램(일례로 브라우저나 상기 설치된 어플리케이션)의 제어에 따라 서버(200)에 접속하여 서버(200)가 제공하는 서비스나 컨텐츠를 제공받을 수 있다. 예를 들어, 클라이언트 장치(100)가 어플리케이션의 제어에 따라 네트워크(300)를 통해 서비스 요청 메시지를 서버(200)로 전송하면, 서버(200)는 서비스 요청 메시지에 대응하는 코드를 클라이언트 장치(100)로 전송할 수 있고, 클라이언트 장치(100)는 어플리케이션의 제어에 따라 코드에 따른 화면을 구성하여 표시함으로써 사용자에게 컨텐츠를 제공할 수 있다.
도 2는 일 실시예에 따른 클라이언트 장치 및 서버의 내부 구성을 설명하기 위한 것이다.
도 2에서는 하나의 클라이언트 장치(100) 및 하나의 서버(200)에 대한 예로서 이들의 내부 구성을 설명한다. 또한, 클라이언트 장치(100) 및 서버(200)는 도 1에서 설명한 네트워크 환경에 포함될 수 있는 또 다른 클라이언트 장치나 또 다른 서버들에도 동일한 또는 유사한 내부 구성요소들이 적용될 수 있다.
클라이언트 장치(100)와 서버(200)는 각각 적어도 하나의 메모리(110, 210), 적어도 하나의 프로세서(120, 220) 및 통신 모듈(130, 230) 그리고 입출력 인터페이스(140, 240)를 포함할 수 있다. 메모리(110, 210)는 컴퓨터에서 판독 가능한 기록 매체로서, RAM(random access memory), ROM(read only memory) 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있다. 또한, 메모리(110, 210)에는 운영체제와 적어도 하나의 프로그램 코드(일례로 클라이언트 장치(100)에 설치되어 구동되는 브라우저나 상술한 어플리케이션 등을 위한 코드)가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 드라이브 메커니즘(drive mechanism)을 이용하여 메모리(110, 210)와는 별도의 컴퓨터에서 판독 가능한 기록 매체로부터 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독 가능한 기록 매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록 매체를 포함할 수 있다. 다른 실시예에서 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록 매체가 아닌 통신 모듈(130, 230)을 통해 메모리(110, 210)에 로딩될 수도 있다. 예를 들어, 적어도 하나의 프로그램은 개발자들 또는 어플리케이션의 설치 파일을 배포하는 파일 배포 시스템(일례로 상술한 서버(200))이 네트워크(300)를 통해 제공하는 파일들에 의해 설치되는 프로그램(일례로 상술한 어플리케이션)에 기반하여 메모리(110, 210)에 로딩될 수 있다. 프로세서(120, 220)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(110, 210) 또는 통신 모듈(130, 230)에 의해 프로세서(120, 220)로 제공될수 있다. 예를 들어 프로세서(120, 220)는 메모리(110, 210)와 같은 기록 장치에 저장된 프로그램 코드에 따라 수신되는 명령을 실행하도록 구성될 수 있다. 통신 모듈(130, 230)은 네트워크(300)를 통해 클라이어트 장치(100)와 서버(200)가 서로 통신하기 위한 기능을 제공할 수 있으며, 다른 클라이언트 장치 또는 다른 서버와 통신하기 위한 기능을 제공할 수 있다. 일례로, 클라이언트 장치(100)의 프로세서(120)가 메모리(110)와 같은 기록 장치에 저장된 프로그램 코드에 따라 생성한 요청이 통신 모듈(130)의 제어에 따라 네트워크(300)를 통해 서버(200)로 전달될 수 있다. 역으로, 서버(200)의 프로세서(220)의 제어에 따라 제공되는 제어 신호나 명령, 컨텐츠, 파일 등이 통신 모듈(230)과 네트워크(300)를 거쳐 클라이언트 장치(100)의 통신모듈(130)을 통해 클라이언트 장치(100)로 수신될 수 있다. 예를 들어 통신 모듈(230)을 통해 수신된 서버(200)의 제어 신호나 명령 등은 프로세서(220)나 메모리(210)로 전달될 수 있고, 컨텐츠나 파일 등은 클라이언트 장치(100)가 더 포함할 수 있는 저장 매체로 저장될 수 있다.
입출력 인터페이스(140, 240)는 입출력 장치(141, 241)와의 인터페이스를 위한 수단일 수 있다. 예를 들어, 입력 장치는 키보드 또는 마우스 등의 장치를, 그리고 출력 장치는 어플리케이션의 통신 세션을 표시하기 위한 디스플레이와 같은 장치를 포함할 수 있다. 다른 예로 입출력 인터페이스(140, 240)는 터치스크린과 같이 입력과 출력을 위한 기능이 하나로 통합된 장치와의 인터페이스를 위한 수단일 수도 있다. 보다 구체적인 예로, 클라이언트 장치(100)의 프로세서(120)는 메모리(110)에 로딩된 컴퓨터 프로그램의 명령을 처리함에 있어서 서버(200)나 클라이언트 장치(100)가 제공하는 데이터를 이용하여 구성되는 서비스 화면이나 컨텐츠가 입출력 인터페이스(140)를 통해 디스플레이에 표시될 수 있다.
또한, 다른 실시예들에서 클라이언트 장치(100) 및 서버(200)는 도 2의 구성요소들보다 더 많은 구성요소들을 포함할 수도 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요성은 없다. 예를 들어, 클라이언트 장치(100)는 상술한 입출력 장치(141) 중 적어도 일부를 포함하도록 구현되거나 또는 트랜시버(transceiver), GPS(Global Positioning System) 모듈, 카메라, 각종 센서, 데이터베이스 등과 같은 다른 구성요소들을 더 포함할 수도 있다.
도 3a 내지 도 3c는 본 발명의 다양한 실시예에 따른 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출 방법에 대한 흐름도이다.
도 3a를 참조하면, 본 발명의 실시예에 따른 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출 방법(S100)은 음식명을 이용하여 검색을 진행하는 단계(S110), 음식명을 포함한 문장을 수집하는 단계(S120), 음식명이 포함된 문장 내에서 용언을 추출하는 단계(S130), 추출된 용언을 이용하여 검색을 진행하는 단계(S140), 용언을 포함한 문장을 수집하는 단계(S150), 용언이 포함된 문장 내에서 음식명에 해당하는 명사를 추출하는 단계(S160) 및 추출된 음식명을 기 등록된 음식명과 비교하여 저장하는 단계(S170)를 포함할 수 있다.
도 3b를 참조하면, 다른 실시에에 따른 품사를 이용한 음식 메뉴 명사 추출 방법(S200)은 음식명을 이용하여 검색을 진행하는 단계(S210), 음식명을 포함한 문장을 수집하는 단계(S220), 음식명이 포함된 문장 내에서 용언을 추출하는 단계(S230), 동일한 용언의 검출 빈도수가 기 설정치 이상의 용언을 이용하여 검색을 진행하는 단계(S240), 용언을 포함한 문장을 수집하는 단계(S250), 용언이 포함된 문장 내에서 음식명에 해당하는 명사를 추출하는 단계(S260) 및 추출된 음식명을 기 등록된 음식명과 비교하여 저장하는 단계(S270)를 포함할 수 있다.
도 3c를 참조하면, 다른 실시예에 따른 품사를 이용한 음식 메뉴 명사 추출 방법(S300)은 음식명을 이용하여 검색을 진행하는 단계(S310), 음식명을 포함한 문장을 수집하는 단계(S320), 음식명이 포함된 문장 내에서 용언을 추출하는 단계(S330), 추출된 용언을 이용하여 검색을 진행하는 단계(S340), 용언을 포함한 문장을 수집하는 단계(S350), 용언이 포함된 문장 내에서 명사를 추출하는 단계(S360), 추출된 명사가 사전 데이터베이스의 등록 명사인지 판단하는 단계(S370), 추출된 명사가 사전 데이터베이스 상의 등록 명사가 아닌 경우 해당 명사를 미등록명사로 분류하는 단계(S371), 추출된 명사가 사전 데이터베이스의 등록 명사인 경우에는 해당 명사가 음식명에 해당하는지 여부를 판단하는 단계(S380), 등록 명사가 음식명에 해당하지 않는 경우 비음식명 명사로 분류하는 단계(S381) 및 등록 명사가 음식명에 해당하는 경우 등록 명사로 분류하는 단계(S390)를 포함할 수 있다.
이하, 본 발명의 실시예에 따른 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출 방법(S100, S200, S300)의 각 단계를 구체적으로 설명한다.
클라이언트 장치(100)는 메모리(110)에 저장된 클라이언트측 음식 메뉴 명사 추출 프로그램 코드가 제공하는 제어 명령에 따라 프로세서(120)에 의해 수행되는 다음의 기능을 제공할 수 있다.
클라이언트 장치(100)는 사용자로부터 입력된 음식명 검색어 정보를 수신할 수 있다.
클라이언트 장치(100)는 수신한 음식명 검색어 정보를 서버(200)로 전송할 수 있다.
다양한 실시예에서, 사용자는 서버(200)의 입출력 장치(241)를 통해 서버(200)로 음식명 검색어 정보를 입력할 수도 있다.
서버(200)의 프로세서(220)는 메모리(210) 상에 서버측 음식 메뉴 명사 추출 프로그램 코드를 로딩하고 서버측 음식 메뉴 명사 추출 프로그램을 실행할 수 있다.
서버(200)는 서버측 음식 메뉴 명사 추출 프로그램 코드가 제공하는 제어 명령에 따라 프로세서(220)에 의해 수행되는 검색 기능 및 용언 추출 기능 및 명사 추출 기능 및 검출 단어의 비교 기능, 정보의 저장/전송 기능 등을 제공할 수 있다.
서버(200)의 크롤러는 수신한 음식명 검색어 정보에 기초하여 네트워크(300)에 연결된 웹서버를 순회하면서 음식명 검색어를 포함하는 웹 페이지를 검색하고 검색된 웹 페이지 내에서 적어도 하나의 문장을 수집할 수 있다.
다양한 실시예에 따라, 서버(200)는 기 등록된 관심 모니터링 사이트 목록 정보에 기초하여 웹 페이지를 수집할 수 있다. 상세하게, 관심 모니터링 사이트 목록 정보는 관심 사이트 주소, 관심 언론사 사이트, 관심 URL, 블로그 주소, SNS 주소 등의 정보를 포함할 수 있다.
일부 실시예에서, 서버(200)는 관심 모니터링 사이트 목록 정보를 클라이언트 장치(100)로부터 수신할 수 있다.
일부 실시예에서, 관심 모니터링 사이트 목록은 수정, 삭제, 추가될 수 있다.
서버(200)는 관심 모니터링 사이트 목록 상의 관심 사이트를 통해서 음식명 검색어를 포함하는 웹 페이지를 검색하고 웹 페이지 내에서 음식명 검색어를 포함하는 적어도 하나의 문장을 수집할 수 있다.
서버(200)는 검색된 웹 페이지를 파싱하여 웹 페이지에 포함된 복수의 문장들을 식별할 수 있다. 일부 실시예에서, 서버(200)는 웹 페이지 상에서 종결어미를 식별하고, 식별된 종결어미를 기준으로 하여 웹 페이지 내에서 복수의 문장들을 식별할 수 있다. 다만, 이에 제한되는 것은 아니고 웹 페이지 내에 포함된 마침표, 물음표, 쉼표 등과 같은 부호를 식별하고 식별된 부호를 기준으로 웹 페이지에 포함된 각 문장들을 식별할 수 있다.
서버(200)는 식별된 문장들 중에서 음식명 검색어를 포함하는 문장을 추출할 수 있다. 서버(200)는 검색된 복수의 웹페이지 상에서 복수의 문장을 추출하여 수집할 수 있다.
서버(200)는 수집된 문장들 각각에서 용언을 추출할 수 있다. 용언은 대상의 동작과 상태의 성질을 나타내며 문장에서 서술하는 기능을 수행하는 단어들의 큰 부류로 하위 품사로는 동사와 형용사가 있다. 동사는 사람이나 사물의 움직임이나 과정 등을 나타내는 말이며 형용사는 사람이나 사물의 상태나 성질을 나타내는 단어를 말한다. 다양한 실시예에 따라, 서버(200)는 형태소 분석 기법 및/또는 자연어 처리 기법 등에 기초하여 수집된 문장들 각각에서 용언을 추출할 수 있으나, 용언을 추출하는 방법은 전술한 기법에 한정하는 것은 아니다. 또한, 여기서의 용언은 형용사와 동사를 의미한다.
서버(200)는 수집된 문장들 각각에서 용언을 추출함으로써 음식 메뉴를 수식할 수 있는 용언을 추출할 수 있다.
다양한 실시예에서, 서버(200)는 추출된 용언 정보를 클라이언트 장치(100)로 전송할 수 있다. 일부 실시예에서, 서버(200)는 추출된 형용사 정보를 클라이언트 장치(100)로 전송할 수 있다. 또한, 서버(200)는 동일한 용언의 추출 빈도를 계산하거나, 동일한 형용사의 추출 빈도를 계산하고 그 결과인 용언이나 형용사의 추출 빈도 정보를 클라이언트 장치(100)로 전송할 수도 있다.
서버(200)는 추출된 용언을 검색어로 하여 네트워크(300)를 통해 웹 상에서 용언 검색어를 포함하는 웹 페이지를 검색하고 검색된 웹 페이지 내에서 적어도 하나의 문장을 수집할 수 있다. 문장을 수집하는 기법은 전술한 기법과 동일할 수 있다.
다양한 실시예에서, 서버(200)는 동일한 용언의 검출 빈도수를 계산할 수 있다. 서버(200)는 검출 빈도수가 기 설정치 이상인 용언들을 추출할 수 있다. 그리고, 서버(200)는 검출 빈도수가 기 설정치 이상으로 추출된 용언을 검색어로 하여 용언 검색어를 포함하는 웹 페이지를 검색하고 검색된 웹 페이지 내에서 용언을 포함하는 적어도 하나의 문장을 수집할 수도 있다.
다양한 실시예에서, 서버(200)는 검색된 웹 페이지들 중에서 음식명 검색어에 기초하여 이미 검색된 웹페이지와 동일한 웹페이지를 제외시키는 중복제거 과정을 수행할 수 있다. 따라서, 사용자가 입력한 음식명 검색어가 다시 검색되는 사용자에게 제공되는 정보로 활용되는 문제를 최소화할 수 있다.
서버(200)는 수집된 문장에서 명사를 추출할 수 있다.
서버(200)는 동일한 명사의 추출 빈도수를 계산할 수 있다.
다양한 실시예에서, 서버(200)는 수집된 문장에서 검색어였던 용언에 의해 수식되는 명사를 추출할 수 있다. 따라서, 서버(200)는 음식명에 해당하는 명사를 추출할 수 있으나 추출된 명사에는 음식명과 관련이 없는 명사가 포함될 수도 있다.
서버(200)는 추출된 명사들 각각을 미리 저장된 사전 데이터베이스 상에서 검색할 수 있다. 서버(200)는 추출된 명사들 중에서 사전 데이터베이스 상에서 검색이 가능한 명사인 경우 해당 명사의 의미 정보를 사전 데이터베이스 상에서 파악하여 검색된 명사가 음식 이름에 관한 것인지, 비음식명에 해당하는 것인지를 판단할 수 있다. 비음식명은 대명사, 장소 명칭 등 음식의 이름과는 관련이 없는 명사를 의미할 수 있다. 또한, 서버(200)는 사전 데이터베이스 상에서 검색되지 않는 명사들을 미등록 명사로 분류할 수 있다.
다양한 실시예에서, 서버(200)는 추출된 명사들 각각이 속한 문장에서의 명사 좌우의 문맥의 의미와 용언을 분석하여 명사가 음식명에 해당하는지 여부에 관한 추정치를 계산할 수 있다. 그리고, 서버(200)는 추정치가 기 설정치 이상인 명사들을 만을 검출하고, 검출된 명사들 각각에 대해서 사전 데이터베이스 상에서 검색이 되는지 여부를 판단하여 검출된 명사들을 등록 명사와 미등록 명사로 분류할 수 있다. 서버(200)는 사전 데이터베이스 상에서의 등록 명사의 의미 정보를 파악하여 등록 명사가 음식명에 해당하는지 여부를 확정할 수 있다.
서버(200)는 등록 명사들 중에서 음식명에 해당하는 등록 음식명 명사를 추출할 수 있다.
서버(200)는 미등록 명사들과 등록 음식명 명사의 음절간의 동일성 여부를 판단하여 등록 음식명 명사와 미등록 명사들 사이의 유사도를 계산할 수 있다.
서버(200)는 미등록 명사들을 클라이언트 장치(100)로 전송할 수 있다. 또한, 서버(200)는 미등록 명사들의 추출 빈도 정보를 클라이언트 장치(100)로 전송할 수 있다. 또한, 서버(200)는 미등록 명사들과 등록 음식명 명사와의 유사도 정보를 클라이언트 장치(100)로 전송할 수 있다.
도 4 내지 도 7은 음식 메뉴 명사 추출 프로그램의 실행에 따라 클라이언트 장치에서 표시되는 유저 인터페이스를 개략적으로 나타낸 것이다.
도 4를 참조하면, 사용자는 클라이언트 장치(100)에서 표시된 유저 인터페이스 상의 검색창(sa)에 음식명 검색어를 입력한 후 검색 버튼을 선택하면, 클라이언트 장치(100)는 입력된 음식명 검색어 정보를 서버(200)로 전송할 수 있다. 서버(200)는 도 3a 내지 도 3b에서 설명한 바와 같이 수신한 음식명 검색어 정보에 기초하여 음식 메뉴 명사 추출을 실행할 수 있다.
검색창(sa)에 입력된 음식명 검색어가 사전 데이터베이스 상의 등록된 검색어인 경우, 클라이언트 장치(100)는 서버(200)로부터 사전 데이터베이스 상에 등록된 음식명 검색어에 대한 정보를 수신하여 음식명 검색어의 사전적 의미 정보를 사전적 의미 표시 영역(11) 상에 표시할 수 있다.
다양한 실시예에서, 클라이언트 장치(100)는 입력된 음식명 검색어가 서버(200) 상의 사전 데이터베이스 상에 등록된 검색어에는 해당하지 않으나 사용자용 사전 데이터베이스 상에 등록된 검색어에 해당하는 경우 사용자용 사전 데이터베이스 상에서 음식명 검색어에 매칭된 의미 정보를 읽어 드려 사전적 의미 표시 영역(11) 상에 표시할 수도 있다.
또한, 클라이언트 장치(100)는 서버(200)로부터 미등록 명사들의 정보를 수신하여 제1 및 제2 미등록 명사 표시 영역(12, 13) 상에 표시할 수 있다. 제1 미등록 명사 표시 영역(12) 상에는 등록 음식명 명사와의 유사도 정보에 기초하여 유사도가 높은 순위로 정렬되어 미등록 명사들이 표시될 수 있다. 제2 미등록 명사 표시 영역(13) 상에는 검출 빈도수가 높은 순위로 정렬되어 미등록 명사들이 표시될 수 있다.
또한, 클라이언트 장치(100)는 서버(200)로부터 등록 음식명 명사 정보를 수신하여 등록 음식명 표시 영역(14) 상에 표시할 수 있다. 등록 음식명 표시 영역(14) 상에는 검출 빈도수가 높은 순위로 정렬되어 등록 음식명 명사가 표시될 수 있다.
다양한 실시예에서, 클라이언트 장치(100)는 서버(200)로부터 검출된 용언의 정보를 수신하여 표시할 수도 있다. 일부 실시예에서, 클라이언트 장치(100)는 서버(200)로부터 수신한 용언을 검출 빈도수가 높은 순위로 정렬하여 표시할 수도 있다.
다양한 실시예에서, 클라이언트 장치(100)는 제1 미등록 명사 표시 영역(12), 제2 미등록 명사 표시 영역(13), 등록 음식명 표시 영역(14) 상의 적어도 하나의 명사 및/또는 검출된 용언이 표시된 영역 상의 적어도 하나의 용언의 선택에 응답하여 태그어 저장 어포던스를 표시할 수 있다. 클라이언트 장치(100)는 태그어 저장 어포던스의 선택에 응답하여 선택된 모든 명사 및/또는 용언의 정보를 태그어로서 저장할 수 있다. 사용자는 검색창(sa)에 입력한 검색어와 관련한 음식을 광고하는데 있어서 이와 밀접한 관련성이 있는 명사, 예를 들어 음식명 검색어와 동일하거나 유사한 의미를 가지나 다르게 표현된 명사나 신조어, 해당 음식과 관련된 형용사를 확인하고, 이들을 태그어로써 저장할 수 있다. 그리고, 사용자는 광고 웹페이지를 제작시 저장된 태그어를 검색 태그어로 활용함으로써, 일반 사용자들이 다양한 검색어를 이용하여 웹페이지를 검색할 때 사용자가 등록한 광고물의 노출 가능성을 높인다.
다양한 실시예에서, 클라이언트 장치(100)는 등록된 태그어 정보를 서버(200)로 전송할 수 있다. 서버(200)는 수신한 태그어 정보 내의 복수의 태그어들 중 사전 데이터베이스에 등록된 등록 음식명 명사와 용언을 제외한 나머지 태그어인 명사들을 추출할 수 있다. 서버(200)는 추출된 명사들 각각을 상표 권리 존부를 확인할 수 있는 외부 서버 상에서 조사함으로써 상표 권리 존재 여부를 판단할 수 있다. 서버(200)는 상표 권리가 존재하는 명사에 대한 정보를 클라이언트 장치(100)로 제공할 수 있다. 사용자는 태그어로 설정된 명사들 중에서 상표 권리가 존재하는 명사를 확인함으로써 상표 등록된 태그어를 검색 키워드로 사용함에 따른 법적 문제를 미연에 방지할 수 있다.
클라이언트 장치(100)는 제1 및 제2 미등록 명사 표시 영역(12, 13) 상에 표시된 복수의 미등록 명사 중 어느 하나의 선택에 응답하여 선택된 미등록 명사 정보를 서버(200)로 전송할 수 있다. 서버(200)는 선택된 미등록 명사를 추출했던 문장 정보를 클라이언트 장치(100)로 전송할 수 있다. 도 5를 참조하면, 클라이언트 장치(100)는 서버(200)로부터 수신한 문장 정보를 문장 표시 영역(15) 상에 표시할 수 있다. 일부 실시예에서, 문장 표시 영역(15) 상에서 선택된 미등록 명사가 하이라이트되어 표시될 수 있다.
다양한 실시예에서, 서버(200)는 선택된 미등록 명사를 추출했던 문장이 복수개인 경우 선택된 미등록 명사를 가장 많은 수로 포함하는 문장을 추출하여 클라이언트 장치(100)로 전송할 수 있다.
클라이언트 장치(100)는 문장 표시 영역(15) 상의 웹 페이지 이동 어포던스의 선택에 응답하여 문장 표시 영역(15) 상에 표시된 문장을 포함한 웹페이지를 전송할 것을 서버(200)로 요청할 수 있다. 서버(200)는 이에 응답하여 문장이 포함된 웹페이지 정보를 클라이언트 장치(100)로 전송할 수 있다. 도 6을 참조하면, 클라이언트 장치(100)는 서버(200)로부터 수신한 웹페이지 정보(16)을 표시할 수 있다.
다양한 실시예에서, 클라이언트 장치(100)는 표시된 용언의 정보 내의 어느 하나의 용언의 선택과 미등록 명사들 중 어느 하나의 선택에 응답하여 선택된 용언과 선택된 미등록 명사를 포함하는 문장의 전송을 서버(200)로 요청할 수 있다. 서버(200)는 이에 응답하여 선택된 용언과 선택된 미등록 명사를 포함하는 문장이 존재하는 경우 해당 문장 정보를 클라이언트 장치(100)로 전송할 수 있다. 따라서, 사용자는 특정 용언에 의해 수식되는 미등록 명사와 관련된 정보를 확인할 수 있다. 이는 사용자가 '칼칼하다', '고소하다', '달다', '맵다', '새콤달콤하다' 등과 같은 사용자의 취향이 담긴 용언에 의해 수식되는 음식명의 미등록 명사와 관련된 정보를 포함한 문장을 확인할 수 있도록 한다.
도 5 내지 도 7을 참조하면, 클라이언트 장치(100)는 설명 등록 어포던스의 선택에 응답하여 표시된 문장이나 표시된 웹페이지 상의 텍스트를 드레그할 수 있도록 하는 인터페이스를 제공할 수 있다. 사용자는 설명 등록 어포던스를 선택한 후에 표시된 문장이나 표시된 웹페이지 상의 문장들 내의 텍스트의 적어도 일부를 드레그할 수 있다. 클라이언트 장치(100)는 드레그에 응답하여 드레그된 텍스트(td1, td2)를 하이라이트하여 표시할 수 있다. 클라이언트 장치(100)는 텍스트의 드레그가 감지되면 사전 등록 어포던스를 표시할 수 있다. 클라이언트 장치(100)는 사전 등록 어포던스의 선택에 응답하여 드레그된 텍스트를 도 4에서 선택한 미등록 명사에 매칭하여 해당 미등록 명사의 의미 정보로서 사용자용 사전 데이터베이스에 저장할 수 있다. 또한, 클라이언트 장치(100)는 도 4에서 선택한 드레그된 텍스트 정보인 등록용 텍스트 정보와 미등록 명사를 서버(200)로 전송할 수 있다.
서버(200)는 복수의 클라이언트 장치들로부터 미등록 명사 정보와 해당 미등록 명사에 사용자들이 매칭시킨 등록용 텍스트 정보들을 수신할 수 있다. 예를 들어, 서버(200)는 10개의 클라이언트 장치로부터 동일한 미등록 명사에 매칭된 10개의 등록용 텍스트 정보들을 수신할 수 있다. 서버(200)는 10개의 등록용 텍스트 정보들 상호간의 유사도를 검출할 수 있다. 10개의 등록용 텍스트 정보들 상호간에는 서로 텍스트가 완전히 일치할 수도 있고(서로 다른 사용자들이 동일한 문장을 드레그한 경우), 일부 텍스트만 차이날 수도 있고(서로 다른 사용자들이 동일한 문장 내에서 일부 텍스트를 드레그한 경우), 많은 텍스트가 차이(서로 다른 사용자들이 서로 다른 문장 내에서 텍스트를 드레그한 경우)날 수도 있다.
서버(200)는 기 설정치 이상의 유사도를 나타내는 등록용 텍스트 정보들을 추출하고 추출된 등록용 텍스트 정보들의 정량적인 개수를 산출할 수 있다. 서버(200)는 정량적인 개수의 산출 결과 미리 설정된 개수를 초과하는 등록용 텍스트 정보가 확인되면 해당 등록용 텍스트 정보들 중 어느 하나의 등록용 텍스트 정보를 미등록 명사의 승인된 의미 정보로 설정할 수 있다. 그리고, 서버(200)는 미등록 명사를 등록 명사로 지위를 전환하여 사전 데이터베이스에 등록하고, 지위가 전환된 등록 명사의 의미 정보로서 해당 승인된 등록용 텍스트 정보를 등록하여 사전 데이터베이스를 업데이트할 수 있다.
이상 설명된 본 발명에 따른 실시예는 다양한 컴퓨터 구성요소를 통하여 실행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위하여 하나 이상의 소프트웨어 모듈로 변경될 수 있으며, 그 역도 마찬가지이다.
본 발명에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, “필수적인”, “중요하게” 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.
또한 설명한 본 발명의 상세한 설명에서는 본 발명의 바람직한 실시 예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자 또는 해당 기술분야에 통상의 지식을 갖는 자라면 후술할 특허청구범위에 기재된 본 발명의 사상 및 기술 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. 따라서, 본 발명의 기술적 범위는 명세서의 상세한 설명에 기재된 내용으로 한정되는 것이 아니라 특허청구범위에 의해 정하여져야만 할 것이다.
시스템(10)
클라이언트 장치(100)
서버(200)
네트워크(300)
메모리(110, 210)
프로세서(120, 220)
통신 모듈(130, 230)
입출력 인퍼테이스(140, 240)
입출력 장치(141, 241)

Claims (12)

  1. 삭제
  2. 삭제
  3. 클라이언트 장치는 수신한 음식명 검색어를 서버로 전송하고,
    상기 서버는 수신된 음식명 검색어를 포함하는 웹페이지를 검색하고, 검색된 웹페이지 내에서 음식명 검색어를 포함한 문장을 수집하고, 수집된 음식명 검색어를 포함한 문장들에서 동일한 용언의 검출 빈도수를 계산하여 검출 빈도수가 기 설정치 이상인 용언을 추출하고, 추출된 용언을 검색어로 하여 웹페이지를 검색하고 검색된 웹페이지 내에서 용언을 포함한 문장을 수집하며, 수집된 용언을 포함한 문장들에서 용언이 수식하는 명사를 추출하고, 추출된 명사들 각각이 속한 문장에서의 명사 좌우의 문맥의 의미와 용언을 분석하여 명사가 음식명에 해당하는지 여부에 관한 추정치를 계산하고, 추출된 명사가 사전 데이터베이스 상의 등록 명사인지 여부를 판단하여, 상기 사전 데이터베이스 상에서 검색이 가능한 명사인 경우 해당 명사의 의미 정보를 상기 사전 데이터베이스 상에서 파악하여 검색된 명사가 등록 음식명 또는 비음식명에 해당하는 것인지를 판단하고, 상기 사전 데이터베이스에 등록되지 않은 미등록명사를 추출하고, 상기 미등록명사와 상기 등록 음식명의 음절간의 동일성 여부를 판단하여 상기 등록 음식명과 상기 미등록명사 사이의 유사도를 계산하고,
    상기 클라이언트 장치는 상기 미등록명사를 제1 미등록 명사 표시 영역에 상기 등록 음식명과의 유사도에 따라 정렬하여 표시하고, 상기 미등록명사를 제2 미등록 명사 표시 영역에 상기 미등록명사의 검출 빈도수에 따라 정렬하여 표시하고, 상기 등록 음식명을 검출 빈도수에 따라 정렬하여 표시하고, 표시된 용언의 선택에 응답하여 태그어 저장 어포던스를 표시하고, 상기 태그어 저장 어포던스의 선택에 응답하여 선택된 용언 및 명사를 태그어로서 저장하고, 상기 미등록명사의 선택에 응답하여 선택된 미등록명사를 추출했던 문장 정보를 표시하고,
    상기 서버는 표시된 문장 내의 텍스트 중 적어도 일부의 드레그된 텍스트인 등록용 텍스트 정보와 선택된 미등록명사를 서로 다른 복수의 클라이언트 장치들로부터 각각 수신하고, 동일한 미등록명사에 매칭된 복수의 등록용 텍스트 정보들 상호간의 유사도를 검출하고, 기 설정치 이상의 유사도를 나타내는 등록용 텍스트 정보들을 추출하고 추출된 등록용 텍스트 정보들의 정량적인 개수를 산출하고, 미리 설정된 개수를 초과하는 등록용 텍스트 정보가 확인되면 해당 등록용 텍스트 정보들 중 어느 하나의 등록용 텍스트 정보를 해당 등록용 텍스트 정보에 매칭되는 미등록명사의 승인된 의미 정보로 설정하여 해당 미등록명사를 등록 명사로 지위를 전환하여 상기 사전 데이터베이스에 등록하고, 지위가 전환된 등록 명사의 의미 정보로서 승인된 등록용 텍스트 정보를 등록하여 상기 사전 데이터베이스를 업데이트하는
    동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출하는 시스템.
  4. 제3 항에 있어서,
    상기 서버는 기 등록된 관심 모니터링 사이트 목록 정보에 해당하는 사이트 상에서 상기 음식명 검색어를 포함하는 웹페이지를 검색하는
    동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출하는 시스템.
  5. 제4 항에 있어서,
    상기 서버는 상기 음식명 검색어에 기초하여 이미 검색된 웹페이지와 동일한 웹페이지와 중복되는 웹페이지를 제외한 다른 웹페이지 내에서 용언을 포함한 문장을 수집하는
    동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출하는 시스템.
  6. 삭제
  7. 삭제
  8. 삭제
  9. 삭제
  10. 제5 항에 있어서,
    상기 클라이언트 장치는 표시된 미등록 명사들 중 어느 하나의 선택에 응답하여 상기 서버로부터 선택된 미등록 명사를 포함한 문장 정보를 수신하여 표시하고, 상기 문장 정보에는 상기 선택된 미등록 명사가 하이라이트 되어 표시되는
    동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출하는 시스템.
  11. 삭제
  12. 삭제
KR1020210154049A 2021-11-10 2021-11-10 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출 방법과 이를 이용하여 음식 사전을 업데이트하는 방법 및 이를 위한 시스템 KR102625347B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210154049A KR102625347B1 (ko) 2021-11-10 2021-11-10 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출 방법과 이를 이용하여 음식 사전을 업데이트하는 방법 및 이를 위한 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210154049A KR102625347B1 (ko) 2021-11-10 2021-11-10 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출 방법과 이를 이용하여 음식 사전을 업데이트하는 방법 및 이를 위한 시스템

Publications (2)

Publication Number Publication Date
KR20230068092A KR20230068092A (ko) 2023-05-17
KR102625347B1 true KR102625347B1 (ko) 2024-01-15

Family

ID=86547198

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210154049A KR102625347B1 (ko) 2021-11-10 2021-11-10 동사와 형용사와 같은 품사를 이용한 음식 메뉴 명사 추출 방법과 이를 이용하여 음식 사전을 업데이트하는 방법 및 이를 위한 시스템

Country Status (1)

Country Link
KR (1) KR102625347B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009295052A (ja) * 2008-06-06 2009-12-17 Yahoo Japan Corp 複合語の区切り位置を推定する複合語区切り推定装置、方法、およびプログラム
JP2011008373A (ja) * 2009-06-24 2011-01-13 Fuji Xerox Co Ltd 自然言語処理装置及びプログラム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100682897B1 (ko) * 2004-11-09 2007-02-15 삼성전자주식회사 사전 업데이트 방법 및 그 장치
KR100886687B1 (ko) 2007-12-12 2009-03-04 한국전자통신연구원 중국어 미등록어 자동 추출 방법 및 장치
KR101042515B1 (ko) 2008-12-11 2011-06-17 주식회사 네오패드 사용자의 의도에 기반한 정보 검색방법 및 정보 제공방법
KR20140078312A (ko) 2012-12-17 2014-06-25 한국전자통신연구원 텍스트 기반 감성 분석 결과를 제공하기 위한 장치, 시스템 및 그 방법
KR20150022583A (ko) 2013-08-23 2015-03-04 주식회사 케이티 키워드를 추출하는 장치 및 방법
KR102146261B1 (ko) * 2014-02-14 2020-08-20 삼성전자 주식회사 전자 장치 및 전자 장치의 대화 메시지에서 의미개체 추출 및 이용방법
KR20160056983A (ko) * 2014-11-12 2016-05-23 한국전자통신연구원 미등록어 자동 추출에 기반한 형태소 사전 구축 시스템 및 방법
KR101935109B1 (ko) 2016-12-29 2019-01-04 (주) 더아이엠씨 패션 분야의 단어 구 단위 감성분석방법 및 이를 포함하는 저장매체
KR102019756B1 (ko) 2017-03-14 2019-09-10 한국전자통신연구원 신조어 자동 인식을 위한 언어 분석에 기반한 온라인 문맥 광고 지능화 장치 및 그 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009295052A (ja) * 2008-06-06 2009-12-17 Yahoo Japan Corp 複合語の区切り位置を推定する複合語区切り推定装置、方法、およびプログラム
JP2011008373A (ja) * 2009-06-24 2011-01-13 Fuji Xerox Co Ltd 自然言語処理装置及びプログラム

Also Published As

Publication number Publication date
KR20230068092A (ko) 2023-05-17

Similar Documents

Publication Publication Date Title
Bharti et al. Sarcastic sentiment detection in tweets streamed in real time: a big data approach
Asghar et al. Sentiment analysis on youtube: A brief survey
US8452772B1 (en) Methods, systems, and articles of manufacture for addressing popular topics in a socials sphere
JP6749110B2 (ja) ソーシャルメディアにおける言語識別
US20130060769A1 (en) System and method for identifying social media interactions
Bansal et al. Hybrid attribute based sentiment classification of online reviews for consumer intelligence
KR101723862B1 (ko) 텍스트를 포함하는 문서 분류 및 분석 방법 및 이를 수행하는 문서 분류 및 분석 장치
Lopez Barbosa et al. Evaluating hotels rating prediction based on sentiment analysis services
US10740406B2 (en) Matching of an input document to documents in a document collection
Rahate et al. Feature selection for sentiment analysis by using svm
Fayaz et al. Machine learning for fake news classification with optimal feature selection
US20160350278A1 (en) Claim polarity identification
Chirgaiya et al. Analysis of sentiment based movie reviews using machine learning techniques
Banjar et al. Aspect-Based Sentiment Analysis for Polarity Estimation of Customer Reviews on Twitter.
Mehrbod et al. Tender calls search using a procurement product named entity recogniser
Shekhawat Sentiment classification of current public opinion on BREXIT: Naïve Bayes classifier model vs Python’s TextBlob approach
Kolajo et al. Real-time event detection in social media streams through semantic analysis of noisy terms
US20220365956A1 (en) Method and apparatus for generating patent summary information, and electronic device and medium
Rashid et al. Analysis of streaming data using big data and hybrid machine learning approach
WO2015084757A1 (en) Systems and methods for processing data stored in a database
Saghayan et al. Exploring the impact of machine translation on fake news detection: A case study on persian tweets about covid-19
Abudalfa et al. Survey on target dependent sentiment analysis of micro-blogs in social media
Reddy et al. Classification of user’s review using modified logistic regression technique
Hoon et al. App reviews: Breaking the user and developer language barrier
Kama et al. A web search enhanced feature extraction method for aspect-based sentiment analysis for Turkish informal texts

Legal Events

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