KR102014859B1 - 개념 그래프 생성하기 - Google Patents

개념 그래프 생성하기 Download PDF

Info

Publication number
KR102014859B1
KR102014859B1 KR1020187012394A KR20187012394A KR102014859B1 KR 102014859 B1 KR102014859 B1 KR 102014859B1 KR 1020187012394 A KR1020187012394 A KR 1020187012394A KR 20187012394 A KR20187012394 A KR 20187012394A KR 102014859 B1 KR102014859 B1 KR 102014859B1
Authority
KR
South Korea
Prior art keywords
query
item
node
trend
page
Prior art date
Application number
KR1020187012394A
Other languages
English (en)
Other versions
KR20180061329A (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 이베이 인크.
Publication of KR20180061329A publication Critical patent/KR20180061329A/ko
Application granted granted Critical
Publication of KR102014859B1 publication Critical patent/KR102014859B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • 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/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • 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/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees
    • 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/9038Presentation of query results
    • 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/953Querying, e.g. by the use of web search engines
    • 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/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

다양한 예시적인 실시예들에서, 개념 그래프를 생성하기 위한 시스템 및 방법이 제시된다. 트렌드 쿼리는 데이터베이스에 저장된 쿼리 로그에서 결정된다. 트렌드 쿼리에 대응하는 아이템 페이지가 식별된다. 아이템 페이지의 애스펙트가 또한 식별된다. 아이템 페이지의 애스펙트는 데이터베이스 내에 미리 정의된 데이터로 저장될 수 있다. 트렌드 쿼리 각각에 대한 쿼리 노드가 생성되고, 쿼리 노드가 그래프에 포함된다. 각 애스펙트에 대한 리프 노드가 생성된다. 리프 노드와 쿼리 노드 사이에 연결이 생성된다. 다양한 애스펙트를 포함하는 목적지 페이지가 생성된다.

Description

개념 그래프 생성하기
우선권 주장
본 국제출원은 발명의 명칭이 "SYSTEMS AND METHODS TO GENERATE A CONCEPT GRAPH"인 2015년 10월 1일 출원된 미국 특허출원 제14/873,099호를 우선권 주장하며, 그 전체 내용은 본 명세서에서 참고로 통합된다.
본 발명의 실시예는 일반적으로 데이터 처리에 관한 것으로, 보다 구체적으로는 개념 그래프(concept graph)를 생성하는 시스템 및 방법에 관한 것이지만, 이에 한정되는 것은 아니다.
통상적으로, 아이템 목록의 아이템 페이지는 아이템 목록의 아이템을 설명하는 데이터를 포함한다. 또한, 아이템을 설명하는 데이터는 데이터베이스에 저장된다.
첨부된 다양한 도면들은 단지 본 개시의 예시적인 실시예를 도시한 것이며 본원의 범위를 제한하는 것으로 간주되어서는 안 된다.
도 1은 몇몇 예시적인 실시예에 따른 네트워크 시스템을 도시하는 블록도이다.
도 1은 몇몇 예시적인 실시예에 따른 네트워크 시스템을 도시하는 블록도이다.
도 2는 일부 예시적인 실시예에 따른 개념 생성 시스템의 구성 요소를 나타내는 블록도이다.
도 3 내지 도 6은 일부 예시적인 실시예에 따른 개념 생성 시스템의 동작을 도시한 흐름도이다.
도 7은 일부 예시적인 실시예에 따른 개념 생성 시스템에 의해 생성되는 그래프를 도시한 블록도이다.
도 8은 일부 예시적인 실시예에 따라, 목적지 페이지의 예시적인 사용자 인터페이스를 도시한 블록도이다.
도 9는 일부 예시적인 실시예에 따른, 추가적인 목적지 페이지의 예시적인 사용자 인터페이스를 도시한 블록도이다.
도 10은 예시적인 실시예에 따른, 컴퓨터 시스템 형태의 기계의 개략적인 표현을 도시한 것으로, 이 컴퓨터 시스템 내에서 기계로 하여금 본 명세서에서 논의된 방법들 중 하나 이상을 수행하게 하는 명령어 세트가 실행될 수 있다.
본원에 제공된 표제는 단지 편의를 위한 것이며 사용된 용어의 범위 또는 의미에 반드시 영향을 주지는 않는다.
이하의 설명은 본 발명의 예시적인 실시예를 구현하는 시스템, 방법, 기술, 명령 시퀀스 및 컴퓨팅 기계 프로그램 제품을 포함한다. 이하의 설명에서, 설명의 목적으로, 본 발명의 주제의 다양한 실시예에 대한 이해를 제공하기 위해 다수의 특정 세부 사항이 설명된다. 그러나, 당업자에게는 본원 특허대상의 실시예가 이러한 특정 세부 사항없이 실시될 수 있음이 명백할 것이다. 일반적으로, 잘 알려진 명령 인스턴스, 프로토콜, 구조 및 기법은 반드시 상세하게 설명하지는 않는다.
본원에서는 개념 그래프를 생성하기 위한 시스템 및 방법을 설명한다. 개념 그래프(concept graph)는 쿼리 로그(query log)의 정보를 사용하여 생성되며, 개념 그래프는 목적지 페이지(destination page)를 생성하기 위해 시스템에서 사용된다. 다양한 실시예에서, 네트워크 퍼블리케이션 시스템(network publication system)의 사용자는 네트워크 퍼블리케이션 시스템에서 아이템 목록으로 발행된 아이템을 검색하기 위해 네트워크 퍼블리케이션 시스템에 질의할 것이다. 네트워크 퍼블리케이션에 의해 수신된 쿼리는 추적되어 쿼리 로그에 저장된다. 대중적인(popular) 또는 트렌드(trending) 쿼리는 쿼리 로그에서 식별된다. 또한 퍼블리싱된 아이템 목록의 정보는 네트워크 퍼블리케이션 시스템이 관리하는 데이터베이스에 구성되어 저장된다. 네트워크 퍼블리케이션 시스템의 사용자에 의한 대중적인 쿼리에 대응하는 아이템 목록으로부터의 정보를 포함하는 목적지 페이지를 디스플레이하기 위해, 네트워크 퍼블리케이션 시스템에 의해 개념 그래프가 생성된다. 개념 그래프는 쿼리 로그의 정보와 퍼블리싱된 아이템 목록의 정보를 사용하여 생성된다. 네트워크 퍼블리케이션 시스템은 개념 그래프로부터 목적지 페이지를 생성하여 이것을 클라이언트 장치에 디스플레이할 수 있다. 목적지 페이지는 또한 트렌드 쿼리 중 하나에 대응할 수 있다.
따라서, 본원에서 논의되는 방법들 중 하나 이상은 쿼리 로그 내의 각각의 쿼리에 대해 목적지 페이지를 생성할 필요가 없게 할 수 있는데, 이는 시스템 내의 하나 이상의 장치에 의해 사용되는 컴퓨팅 리소스를 감소시키는 기술적 효과를 가질 수 있다. 또한, 목적지 페이지는 트렌드 쿼리와 관련이 있는 정보를 디스플레이할 수 있는데, 이는 네트워크 퍼블리케이션 시스템의 사용자가 트렌드 쿼리와 덜 관련있는 아이템 목록을 훑어볼 필요가 없게 할 수 있다. 또한, 트렌드 쿼리의 식별은 맞춤법이 틀린 쿼리의 발생을 줄일 수 있는데, 맞춤법이 틀린 쿼리는 트렌드 쿼리가 될 확률이 낮기 때문이다. 이러한 컴퓨팅 리소스의 예로는 프로세서 사이클, 네트워크 트래픽, 메모리 사용량, 저장 공간 및 전력 소비가 있다.
도 1을 참조하면, 고수준 클라이언트-서버 기반 네트워크 아키텍처(100)의 예시적인 실시예가 도시되어 있다. 네트워크 시스템(102)은, 네트워크 기반 퍼블리케이션 또는 결제 시스템의 예시적인 형태로, 네트워크(104)(예컨대, 인터넷 또는 광역 네트워크(WAN))를 통해 하나 이상의 클라이언트 장치(110)에 서버측 기능을 제공한다. 도 1은, 예를 들어, 웹 클라이언트(112)(예컨대, 워싱턴주 레드몬드의 마이크로소프트 코포레이션에 의해 개발된 인터넷 익스플로러 브라우저와 같은 브라우저), 클라이언트 애플리케이션(114) 및 클라이언트 장치(110) 상에서 실행되는 프로그램 방식 클라이언트(116)를 예시한다.
클라이언트 장치(110)는, 제한되는 것은 아니지만, 휴대 전화, 데스크탑 컴퓨터, 랩탑, 휴대용 디지털 보조 장치(PDA), 스마트폰, 태블릿, 울트라 북, 넷북, 멀티프로세서 시스템, 마이크로프로세서 기반 또는 프로그램 가능 가전, 게임 콘솔, 셋톱 박스, 또는 사용자가 네트워크 시스템(102)에 액세스하기 위해 이용할 수 있는 임의의 다른 통신 장치를 포함할 수 있다. 일부 실시예에서, 클라이언트 장치(110)는(예컨대, 사용자 인터페이스의 형태로) 정보를 디스플레이하는 디스플레이 모듈(도시되지 않음)을 포함한다. 다른 실시예에서, 클라이언트 장치(110)는 터치 스크린, 가속도계, 자이로스코프, 카메라, 마이크로폰, GPS(Global Positioning System) 장치 등 중 하나 이상을 포함할 수 있다. 클라이언트 장치(110)는 네트워크 시스템(102) 내에서 디지털 아이템을 포함하는 트랜잭션을 수행하는데 사용되는 사용자의 장치일 수 있다. 일 실시예에서, 네트워크 시스템(102)은 제품 목록에 대한 요청에 응답하고, 네트워크 기반 퍼블리케이션 시스템에서 이용 가능한 제품의 아이템 목록을 포함하는 퍼블리케이션을 발행하고, 이들 시장 거래에 대한 결제를 관리하는 네트워크 기반 퍼블리케이션 시스템이다. 예를 들어, 네트워크(104)의 하나 이상의 부분은 애드혹 네트워크, 인트라넷, 엑스트라 넷, 가상 사설망(VPN), 근거리 통신망(LAN), 무선 LAN(WLAN), 광역 네트워크(WAN), 무선 WAN(WWAN), MAN(Metropolitan Area Network), 인터넷의 일부, PSTN(Public Switched Telephone Network)의 일부, 셀룰러 전화 네트워크, 무선 네트워크, WiFi 네트워크, WiMax 네트워크, 다른 유형의 네트워크, 또는 둘 이상의 이들 네트워크의 조합일 수 있다.
각각의 클라이언트 장치(110)는, 제한적인 것은 아니지만, 웹 브라우저, 메시징 애플리케이션, 전자 메일(email) 애플리케이션, 전자 상거래 사이트 애플리케이션(마켓 플레이스 애플리케이션이라고도 함) 등과 같은 하나 이상의 애플리케이션("앱(app)"이라고도 함)을 포함한다. 일부 실시예에서, 전자 상거래 사이트 애플리케이션이 소정의 클라이언트 장치(110)에 포함되면, 이 애플리케이션은 사용자 인터페이스 및 적어도 일부 기능을 로컬로 제공하도록 구성되며, 이 애플리케이션은 로컬로 이용가능하지 않는 데이터 및/또는 처리 능력을 위해(예컨대, 판매할 수 있는 아이템의 데이터베이스에 액세스하고, 사용자를 인증하고, 결제 방법을 검증하기 위해), 필요에 따라 네트워킹된 시스템(102)과 통신하도록 구성된다. 반대로, 전자 상거래 사이트 애플리케이션이 클라이언트 장치(110)에 포함되지 않으면, 클라이언트 장치(110)는 자신의 웹 브라우저를 사용하여, 네트워크 시스템(102) 상에서 호스트되는 전자 상거래 사이트(또는 그 변형)에 액세스할 수 있다.
하나 이상의 사용자(106)는 사람, 기계, 또는 클라이언트 장치(110)와 상호 작용하는 다른 수단일 수 있다. 예시적인 실시예에서, 사용자(106)는 네트워크 아키텍처(100)의 일부가 아니며, 클라이언트 장치(110) 또는 다른 수단을 통해 네트워크 아키텍처(100)와 상호 작용한다. 예를 들어, 사용자(106)는 클라이언트 장치(110)에 입력(예컨대, 터치 스크린 입력 또는 영숫자 입력)을 제공하고, 입력은 네트워크(104)를 통해 네트워크 시스템(102)에 전달된다. 이 예에서, 네트워크 시스템(102)은 사용자(106)로부터의 입력을 수신한 것에 응답하여 네트워크(104)를 통해 정보를 클라이언트 장치(110)에 전달하여 사용자(106)에게 제공한다. 이런 방식으로, 사용자(106)는 클라이언트 장치(110)를 사용하여 네트워크 시스템(102)과 상호 작용할 수 있다.
애플리케이션 프로그램 인터페이스(API) 서버(120) 및 웹 서버(122)는 각각 하나 이상의 애플리케이션 서버(140)에 연결되어 프로그램 방식 인터페이스 및 웹 인터페이스를 제공한다. 애플리케이션 서버(140)는 하나 이상의 퍼블리케이션 시스템(142) 및 결제 시스템(144)을 호스팅하는데, 이들 각각은 하나 이상의 모듈 또는 애플리케이션을 포함할 수 있으며, 하드웨어, 소프트웨어, 펌웨어 또는 이들의 임의의 조합으로 구현될 수 있다. 애플리케이션 서버(140)는, 하나 이상의 정보 저장소 또는 데이터베이스(들)(126)로의 액세스를 용이하게 하는 하나 이상의 데이터베이스 서버(124)에 차례로 연결되는 것으로 도시되어 있다. 예시적인 실시예에서, 데이터베이스(126)는 퍼블리케이션 시스템(142)에 게시될 정보(예컨대, 퍼블리케이션 또는 목록)를 저장하는 저장 장치이다. 데이터베이스(126)는 또한 예시적인 실시예에 따라 디지털 아이템 정보를 저장할 수 있다.
또한, 제3자 서버(들)(130)에서 실행되는 제3자 애플리케이션(132)은 API 서버(120)에 의해 제공되는 프로그램 방식의 인터페이스를 통해 네트워크 시스템(102)에 프로그램 방식으로 액세스하는 것으로 도시되어 있다. 예를 들어, 네트워크 시스템(102)으로부터 검색된 정보를 이용하는 제3자 애플리케이션(132)은 제3자에 의해 호스팅되는 웹 사이트상의 하나 이상의 특징 또는 기능을 지원한다. 예를 들어, 제3자 웹 사이트는 네트워크 시스템(102)의 관련 애플리케이션에 의해 지원되는 하나 이상의 판촉, 퍼블리케이션 또는 결제 기능을 제공한다.
퍼블리케이션 시스템(142)은 네트워크 시스템(102)에 액세스하는 사용자(106)에게 다수의 퍼블리케이션 기능 및 서비스를 제공한다. 결제 시스템(144)은 마찬가지로 결제 및 거래를 수행하거나 촉진시키는 다수의 기능을 제공한다. 퍼블리케이션 시스템(142) 및 결제 시스템(144)은 네트워크 시스템(102)의 일부를 형성하도록 도 1에 도시되어 있지만, 다른 실시예에서는, 각각의 시스템(142 및 144)이 네트워크 시스템(102)과 분리되어 별개의 결제 서비스의 일부를 형성할 수도 있다는 것을 이해할 수 있을 것이다. 일부 실시예에서, 결제 시스템(144)은 퍼블리케이션 시스템(142)의 일부를 형성할 수 있다.
개념 생성 시스템(150)은 개념 그래프를 생성하는 기능을 제공한다. 개념 그래프를 생성하는 중에, 개념 생성 시스템(150)은 데이터베이스(126), 제3자 서버(130), 퍼블리케이션 시스템(142) 및 다른 소스로부터의 특정 데이터에 액세스할 수 있다. 특히, 개념 생성 시스템(150)은 데이터베이스(126)에서 쿼리 로그 및 퍼블리케이션 시스템(142)에 의해 발행된 아이템 목록에 관한 정보에 액세스할 수 있다. 일부 예시적인 실시예에서, 개념 생성 시스템(150)은 사용자 선호도의 개인화를 수행하기 위해 사용자 데이터를 분석할 수 있다. 일부 예시적인 실시예에서, 개념 생성 시스템(150)은 퍼블리케이션 시스템(142)(예컨대, 아이템 목록에 액세스) 및 결제 시스템(144)과 통신한다. 다른 실시예에서, 개념 생성 시스템(150)은 퍼블리케이션 시스템(142)의 일부일 수 있다.
또한, 도 1에 도시된 클라이언트-서버 기반 네트워크 아키텍처(100)는 클라이언트-서버 아키텍처를 사용하지만, 본원의 특허대상은 물론 그러한 아키텍처에 국한되지 않으며, 예를 들어 분산형 또는 피어-투-피어(peer-to-peer) 아키텍처 시스템에서도 마찬가지로 동등하게 적용할 수 있다. 다양한 퍼블리케이션 시스템(142), 결제 시스템(144) 및 개념 생성 시스템(150)은 반드시 네트워킹 기능을 갖지는 않는 독립형 소프트웨어 프로그램으로서 구현될 수도 있다.
웹 클라이언트(112)는 웹 서버(122)에 의해 지원되는 웹 인터페이스를 통해 다양한 퍼블리케이션 및 결제 시스템(142 및 144)에 액세스한다. 유사하게, 프로그래밍 클라이언트(116)는 API 서버(120)에 의해 제공되는 프로그래밍 인터페이스를 통해 퍼블리케이션 및 결제 시스템(142 및 144)에 의해 제공되는 다양한 서비스 및 기능에 액세스한다. 프로그램 방식 클라이언트(116)는, 예를 들어, 판매자가 네트워크 시스템(102)에서 목록을 작성하고 관리할 수 있게 하며, 프로그램 방식 클라이언트(116)와 네트워크 시스템(102) 사이에서 배치 모드 통신을 수행할 수 있게 하는 판매자 애플리케이션(예컨대, 캘리포니아 산호세의 eBay® Inc.에 의해 개발된 Turbo Lister 애플리케이션)일 수 있다.
도 2는 일부 예시적인 실시예에 따른, 개념 생성 시스템(150)의 컴포넌트를 도시하는 블록도이다. 개념 생성 시스템(150)은 판정 모듈(210), 식별 모듈(220), 생성 모듈(230), 수신 모듈(240) 및 디스플레이 모듈(250)을 포함하는 것으로 도시되어 있으며, 이들 모두는 (예컨대, 버스, 공유 메모리 또는 스위치를 통해) 서로 통신하도록 구성된다. 본원에 기술된 모듈들 중 임의의 하나 이상은 하드웨어(예컨대, 기계의 하나 이상의 프로세서) 또는 하드웨어와 소프트웨어의 조합을 사용하여 구현될 수 있다. 예를 들어, 본원에 기술된 임의의 모듈은 그 모듈에 대해 본원에 기술된 동작을 수행하도록 프로세서(예컨대, 기계의 하나 이상의 프로세서 중하나)를 구성할 수 있다. 또한, 이들 모듈 중 임의의 2개 이상은 단일 모듈로 결합될 수 있으며, 본 명세서에서 단일 모듈에 대해 설명된 기능은 다수의 모듈로 세분될 수 있다. 또한, 다양한 예시적인 실시예들에 따르면, 단일 기계, 데이터베이스 또는 장치 내에서 구현되는 본 명세서에 설명된 모듈들은 다수의 기계, 데이터베이스 또는 장치에 걸쳐 분산될 수 있다.
다양한 실시예에서, 판정 모듈(210)은 트렌드 쿼리를 판정하도록 구성된다. 또한, 판정 모듈(210)은 데이터베이스에 저장된 쿼리 로그에서 트렌드 쿼리를 판정한다. 트렌드 쿼리는, 쿼리 로그에 의해 적어도 임계 발생 횟수로 수신된 것으로 각각 표시되는 쿼리이다. 또한, 트렌드 쿼리는 네트워크 퍼블리케이션 시스템(예컨대, 퍼블리케이션 시스템(142))에서 수신되며, 네트워크 퍼블리케이션 시스템의 사용자에 의해 수행된다. 예시적인 트렌드 쿼리는 네트워크 퍼블리케이션 시스템에서 임계 수보다 많은 횟수만큼 수신되는 쿼리이다. 이러한 방식으로, 맞춤법 오류가 있는 쿼리는 판정 모듈(210)에 의해 트렌드 쿼리로서 판정될 가능성이 더 낮다. 다른 실시예에서, 트렌드 쿼리는 판정 모듈(210)에 의해 소정의 시간 윈도우(window of time) 내에 수신되는 것으로 판정되는 쿼리가다.
다양한 실시예에서, 식별 모듈(220)은 트렌드 쿼리에 대응하는 아이템 페이지를 식별하도록 구성된다. 아이템 페이지는 아이템에 대한 설명과 해당 아이템의 이미지를 포함한다. 아이템에 대한 설명은 아이템의 가격을 비롯한 아이템에 대한 정보를 제공할 수 있다. 아이템 페이지에는 아이템을 구매할 수 있는 옵션이 있다. 다른 실시예에서, 아이템 페이지는 하나 이상의 아이템에 대한 하나 이상의 아이템 목록을 디스플레이한다. 다른 실시예에서, 식별 모듈(220)은 트렌드 쿼리에 의해 생성된 결과로부터 퍼블리케이션 시스템의 사용자가 선택한 아이템 페이지를 식별하는 것이다. 따라서, 이들 아이템 페이지는 식별 모듈(220)에 의해 트렌드 쿼리에 대응하는 것으로 식별된다. 예를 들어, "어버이 날 선물"에 대한 트렌드 쿼리는 스마트폰에 대한 아이템 페이지와 신발에 대한 아이템 페이지를 포함하는 검색 결과 페이지를 생성할 수 있으며, 각 페이지는 퍼블리케이션 시스템의 사용자에 의해 선택된다. 결과적으로, 스마트폰에 대한 아이템 페이지 및 신발에 대한 아이템 페이지가 "어버이 날 선물"에 대한 트렌드 쿼리에 대응하는 것으로 식별된다. 또 다른 예로, "iPhone 스마트폰"에 대한 트렌드 쿼리는 iPhone®의 첫 번째 버전과 iPhone®의 두 번째 버전에 대한 아이템 페이지를 포함하는 검색 결과 페이지를 생성할 수 있고, 각 아이템 페이지는 퍼블리케이션 시스템의 사용자에 의해 선택된다. 따라서 iPhone®의 두 버전에 대한 아이템 페이지는 "iPhone 스마트폰"에 대한 트렌드 쿼리에 대응하는 것으로 식별된다. 또한 트렌드 쿼리는 아이템 페이지를 식별하는 키워드를 포함할 수 있다.
다양한 실시예에서, 식별 모듈(220)은 또한 트렌드 쿼리에 대응하는 아이템 페이지로부터 애스펙트(aspects)를 식별하도록 구성된다. 이들 애스펙트는 데이터베이스 내에 데이터로서 저장될 수 있다. 예를 들어, 아이템 페이지를 생성하는 동안, 아이템 페이지로부터의 각각의 애스펙트는 식별 모듈(220)에 의해 식별되고 데이터베이스 내에 정보로서 구성될 수 있다. 이들 애스펙트는 아이템 페이지에서 아이템의 특징(features)을 식별한다. 예를 들어, 스마트폰을 위한 아이템 페이지는 스마트폰의 모델, 스마트폰의 저장 능력, 스마트폰의 크기 등에 관한 애스펙트를 포함할 수 있다. 따라서, 식별 모듈(220)은 아이템 페이지들로부터 아이템들의 특징을 식별한다.
다양한 실시예에서, 식별 모듈(220)은 아이템 페이지의 아이템에 대응하는 아이템의 카테고리를 식별하도록 또한 구성된다. 예를 들어, 아이템 페이지의 아이템은 특정 범주에 속할 수 있다. 스마트폰의 아이템 페이지는 전자 장치 카테고리에 속하는 아이템을 포함할 수 있다. 스마트폰의 아이템 페이지는 또한 휴대용 장치 카테고리에 속하는 아이템을 포함할 수 있다. 따라서, 아이템의 카테고리는 또한 식별 모듈(220)에 의해 식별되는 애스펙트이다.
다양한 실시예에서, 식별 모듈(220)은 트렌드 쿼리 중에서 임계 발생 횟수로 연속적으로 수신되는 쿼리를 식별하도록 또한 구성된다. 구체적으로, 식별 모듈(220)은 트렌드 쿼리들 중에서 제1 쿼리 및 제2 쿼리를 식별한다. 또한, 제1 쿼리 및 제2 쿼리는 적어도 임계 발생 횟수로 연속적으로 수신되는 것으로 표시된다.
다양한 실시예들에서, 생성 모듈(230)은 트렌드 쿼리들 각각에 대한 쿼리 노드를 생성하도록 구성된다. 쿼리 노드는 또한 그래프에 포함된다. 환언하면, 생성 모듈(230)은 트렌드 쿼리들 각각에 대해 그래프에서 개별 노드를 생성한다. 따라서 각 트렌드 쿼리는 그래프에서 노드로 표시되며, 각 트렌드 쿼리에 대한 정보는 그래프의 노드에 저장된다. 생성 모듈(230)은 또한 아이템 페이지들로부터 각각의 애스펙트에 대한 리프 노드(leaf node)를 생성한다. 또한, 생성 모듈(230)은 각 트렌드 쿼리에 대한 쿼리 노드와 리프 노드 사이에 연결(connection)을 생성한다. 이것을 달성하기 위해, 생성 모듈(230)은 특정 리프 노드와 특정 쿼리 노드 사이에 연결을 생성한다. 특정 리프 노드는 아이템 페이지의 한 애스펙트를 나타내고, 아이템 페이지는 특정 쿼리 노드가 나타내는 특정 쿼리에 대응한다. 생성 모듈(230)은 가능한 모든 연결이 생성될 때까지 그래프의 각 쿼리 노드에 대해 이 프로세스를 반복할 수 있다. 또 다른 실시예에서, 생성 모듈(230)은 각각의 트렌드 쿼리에 대한 쿼리 노드들 사이에 연결을 생성한다. 쿼리 노드들 사이의 연결은, 제1 쿼리 및 제2 쿼리와 같이 연속적으로 수신되는 것으로 식별된 쿼리에 기초하여 생성된다. 그래프는 아래에서 더 설명되는 바와 같이, 목적지 페이지의 디스플레이를 돕기 위해 디스플레이 모듈(250)에 의해 사용될 수 있다. 또한, 그래프는 일단 생성되면, 네트워크 퍼블리케이션 시스템의 데이터베이스 내에 데이터 구조로서 저장될 수 있다. 다른 실시예들에서, 리프 노드들 각각은 또한 서로 연결될 수 있고, 이들 연결은 생성 모듈(230)에 의해 생성된다. 예를 들어, 아이템의 카테고리를 나타내는 카테고리 리프 노드가 카테고리 리프 노드에 연결된 다른 리프 노드를 가질 수도 있다. 카테고리 리프 노드에 연결된 리프 노드는 카테고리 리프 노드에 의해 표시된 카테고리에 속하는 아이템의 특징을 나타낼 수 있다.
또 다른 실시예에서, 생성 모듈(230)은 트렌드 쿼리에 대응하는 각각의 아이템 페이지에 대한 노드를 생성한다. 즉, 생성 모듈(230)에 의해 각 아이템 페이지에 대한 개별 노드가 생성된다. 예를 들어, iPhone® 6 아이템 페이지는 트렌드 쿼리에 대응하는 것으로 식별되므로 iPhone® 6의 노드는 생성 모듈(230)에 의해 생성된다. 또한 아이템 페이지에 대한 노드는 아이템 페이지의 아이템에 대한 정보를 포함할 수 있다.
다른 실시예에서, 생성 모듈(230)은 다양한 애스펙트를 포함하는 목적지 페이지를 생성한다. 목적지 페이지의 생성은 생성된 그래프를 기반으로 한다. 목적지 페이지는 생성된 그래프의 특정 쿼리 노드에 대응하고, 생성 모듈(230)은 특정 쿼리 노드를 사용하여 목적지 페이지를 생성한다. 다양한 애스펙트는 생성된 그래프의 특정 쿼리 노드에 연결되는 리프 노드에 대응하고, 생성 모듈(230)은 특정 쿼리 노드에 연결된 리프 노드를 사용하여 목적지 페이지를 생성한다.
다양한 실시예에서, 수신 모듈(240)은 클라이언트 장치로부터 생성된 그래프의 쿼리 노드들 중 하나와 매칭되는 쿼리를 수신하도록 구성된다. 또한, 식별 모듈(220)은 또한 생성된 그래프를 사용하여 클라이언트 장치로부터 수신된 쿼리와 매칭되는 특정 쿼리 노드를 식별한다. 즉, 클라이언트 장치로부터 수신된 쿼리와 매칭되는 특정 쿼리 노드가, 식별 모듈(220)에 의해, 생성된 그래프로부터 식별된다. 또한, 특정 쿼리 노드는 클라이언트 장치로부터의 쿼리와 매칭되는 트렌드 쿼리를 나타낸다. 예를 들어, 클라이언트 장치로부터의 쿼리는 생성된 그래프에서의 쿼리 노드에 의해 표현된 트렌드 쿼리 중 하나와 매칭될 수 있다. 또한, 매칭은 수신된 쿼리와 트렌드 쿼리 사이의 임계 수의 문자 오버랩을 포함할 수 있다. 예를 들어, 클라이언트 장치로부터의 쿼리는 클라이언트 장치를 조작하는 사용자에 의해 맞춤법이 틀렸을 수도 있다. 그러나 사용자가 몇 문자의 맞춤법만 틀렸다면, 그 쿼리는 쿼리와 특정 쿼리 노드에 의해 표시된 트렌드 쿼리 사이의 임계 중복 문자 수 때문에 특정 쿼리 노드와 여전히 매칭될 것이다. 또 다른 실시예에서, 수신 모듈(240)은 하나 이상의 클라이언트 장치로부터 각각의 트렌드 쿼리를 수신하도록 구성된다.
다양한 실시예에서, 디스플레이 모듈(250)은 다양한 애스펙트들을 포함하는 목적지 페이지를 디스플레이하도록 구성된다. 목적지 페이지는 클라이언트 장치의 사용자 인터페이스 내에 표시된다. 목적지 페이지는 생성된 그래프의 특정 쿼리 노드에 대응한다. 또한 다양한 애스펙트는 생성된 그래프의 특정 쿼리 노드에 연결되는 리프 노드에 대응한다. 목적지 페이지는 특정 쿼리 노드에 포함된 트렌드 쿼리에 관한 정보를 포함할 수 있다. 예를 들어, 목적지 페이지는 트렌드 쿼리를 사용하여 제목이 붙여지거나 특정 쿼리 노드에 포함된 트렌드 쿼리를 단순히 묘사할 수 있다. 또한, 목적지 페이지는 특정 쿼리 노드에 포함되거나 이 특정 쿼리 노드에 의해 표현되는 트렌드 쿼리에 대응하는 아이템 페이지를 표시하도록 선택 가능한 링크를 포함할 수 있다. 예를 들어, 아이템 페이지에 관한 썸네일 정보가 목적지 페이지의 일부로서 디스플레이될 수 있으며, 이 썸네일은 또한 각각의 아이템 페이지에 대한 링크 역할을 할 수도 있다. 또한, 이들 섬네일 또는 링크는 식별 모듈(220)에 의해 식별되는 애스펙트에 대응할 수 있다. 예를 들어, 이들 섬네일은 식별 모듈(220)에 의해 식별되는 카테고리일 수 있다.
도 3 내지 도 6은 몇몇 예시적인 실시예에 따른, 그래프를 생성하는 방법(300)을 수행할 때의 개념 생성 시스템(150)의 동작을 나타내는 흐름도이다. 방법(300)에서의 동작들은 도 2와 관련하여 위에서 설명한 모듈을 사용하여 개념 생성 시스템(150)에 의해 수행될 수 있다. 도 3에 도시된 바와 같이, 방법(300)은 동작들(310, 320, 330, 340, 350 및 360)을 포함한다.
동작(310)에서, 판정 모듈(210)이 트렌드 쿼리를 판정한다. 트렌드 쿼리는 쿼리 로그에 의해 적어도 임계 발생 횟수로 수신한 것으로서 각각 표시되는 쿼리이다. 또한, 트렌드 쿼리는, 네트워크 퍼블리케이션 시스템(예컨대, 퍼블리케이션 시스템(142))에서 수신되고 네트워크 퍼블리케이션 시스템의 사용자에 의해 수행된다. 예를 들어, "어버이날 선물(Mother's Day Gifts)"에 대한 트렌드 쿼리는 네트워크 퍼블리케이션 시스템을 통해 충분한 수의 발생이 있는 것으로 식별될 수 있다. 추가적인 예들에서, 트렌드 쿼리는 또한 소정의 시간 윈도우 내에 수신되는 것으로 결정된다. 예를 들어, "어버이날 선물(Mother's Day Gifts)"에 대한 트렌드 쿼리는 지난 주 동안에 제출된 것으로 식별된다. 또 다른 예로, "iPhone 스마트폰"에 대한 트렌드 쿼리는 충분한 수의 발생이 있는 것으로서 식별될 수 있다.
동작(320)에서, 식별 모듈(220)이 트렌드 쿼리에 대응하는 아이템 페이지를 식별한다. 아이템 페이지는 아이템에 대한 설명과 해당 아이템의 이미지를 포함한다. 아이템에 대한 설명은 아이템의 가격을 비롯한 아이템에 대한 정보를 제공할 수 있다. 아이템 페이지는 또한 아이템을 구매할 수 있는 옵션을 포함한다. 경우에 따라, 트렌드 쿼리에 대응하는 아이템 페이지는 트렌드 쿼리에 의해 검색되는 아이템 페이지이다. 예를 들어, 트렌드 쿼리 중 하나는 아이템 페이지 중 하나를 검색할 수 있다. 다른 예에서, 트렌드 쿼리에 대응하는 아이템 페이지는, 트렌드 쿼리에 의해 검색된 결과 페이지로부터 네트워크 퍼블리케이션 시스템의 사용자에 의해 선택된 아이템 페이지이다. 또 다른 예에서, 트렌드 쿼리에 대응하는 아이템 페이지는 트렌드 쿼리의 결과로서 네트워크 퍼블리케이션 시스템 사용자가 본 아이템 페이지이다. 또 다른 예에서, 트렌드 쿼리는 트렌드 쿼리에 대응하는 아이템 페이지를 식별하는데 사용되는 키워드를 포함할 것이다.
동작(330)에서, 식별 모듈(220)이 트렌드 쿼리에 대응하는 아이템 페이지에서 애스펙트(aspects)를 식별한다. 애스펙트는 아이템 페이지에서 아이템의 특징을 식별한다. 예를 들어, 아이템의 애스펙트는 아이템의 모델, 아이템의 색상, 아이템의 사이즈 등을 포함할 수 있다. 또한, 아이템 페이지들로부터의 각각의 이들 애스펙트는 데이터베이스 내에 데이터로서 저장될 수 있다.
동작(340)에서, 생성 모듈(230)이 각각의 트렌드 쿼리에 대한 쿼리 노드를 생성한다. 노드는 트렌드 쿼리를 나타낼 수 있고 트렌드 쿼리에 관한 정보를 포함할 수 있다. 예를 들어, 노드는 트렌드 쿼리에 대한 정보를 포함할 수 있다.
동작(350)에서, 생성 모듈(230)이 아이템 페이지로부터의 각각의 애스펙트에 대한 리프 노드를 생성한다. 리프 노드는 아이템 페이지에서의 한 애스펙트를 나타낼 수 있으며 그 애스펙트에 관한 정보를 포함할 수 있다.
동작(360)에서, 생성 모듈(230)이 리프 노드와 쿼리 노드 사이의 연결을 생성한다. 다른 실시예들에서, 리프 노드들 각각은 또한 서로 연결될 수 있고, 연결은 생성 모듈(230)에 의해 생성된다. 예를 들어, 아이템의 카테고리를 나타내는 카테고리 리프 노드는 또한 카테고리 리프 노드에 연결된 다른 리프 노드를 가질 수도 있다. 카테고리 리프 노드에 연결된 리프 노드는 카테고리 리프 노드에 의해 표현된 카테고리에 속하는 아이템의 특징을 나타낼 수 있다.
도 4에 도시된 바와 같이, 방법(300)은 동작들(410, 420, 430 및 440)을 포함한다.
동작(410)에서, 식별 모듈(220)은 제1 쿼리 및 제2 쿼리를 식별한다. 식별 모듈(220)은 트렌드 쿼리들 중에서 제1 쿼리 및 제2 쿼리를 식별한다. 또한, 제1 쿼리 및 제2 쿼리는 쿼리 로그에 적어도 임계 발생 횟수로 연속적으로 수신된 것으로 표시된다.
동작(420)에서, 생성 모듈(230)이 제1 쿼리 및 제2 쿼리의 식별에 기초하여 쿼리 노드들 사이에 연결을 생성한다.
동작(430)에서, 수신 모듈(240)이 쿼리 노드들 중 하나와 매칭되는 쿼리를 수신한다. 이 쿼리는 네트워크 퍼블리케이션 시스템의 사용자에 의해 작동되는 클라이언트 장치로부터 수신될 수 있다.
동작(440)에서, 식별 모듈(220)이 수신된 쿼리와 매칭되는 특정 쿼리 노드를 식별한다. 특정 쿼리 노드는 트렌드 쿼리를 나타낸다. 또한, 매칭은 동작(430)에서 수신된 쿼리와 트랜드 쿼리 사이의 임계 수의 문자 오버랩을 포함할 수 있다.
도 5에 도시된 바와 같이, 방법(300)은 동작들(510, 520, 530 및 540)을 포함한다.
동작(510)에서, 생성 모듈(230)이 아이템 페이지들 각각에 대한 노드를 생성한다. 생성된 노드들 각각은 아이템 페이지들 중 특정 아이템 페이지를 나타낼 수 있다. 또한, 생성된 노드들 각각은 아이템 페이지의 아이템과 같은 특정 아이템 페이지에 관한 정보를 포함할 수 있다.
동작(520)에서, 생성 모듈(230)이 아이템 페이지들 각각에 대한 노드와 트렌드 쿼리들 각각에 대한 쿼리 노드 사이에 연결을 생성한다.
동작(530)에서, 생성 모듈(230)이 특정 리프 노드와 특정 쿼리 노드 사이에 연결을 생성한다. 특정 리프 노드는 아이템 페이지의 한 애스펙트를 나타내고, 아이템 페이지는 특정 쿼리 노드에 의해 표현되는 특정 쿼리에 대응한다.
동작(540)에서, 디스플레이 모듈(250)이 다양한 애스펙트를 포함하는 목적지 페이지를 디스플레이한다.
동작(610)에서, 식별 모듈(220)이 아이템들의 카테고리들을 식별한다. 아이템의 카테고리는 아이템 페이지의 아이템에 대응할 수 있으며, 아이템 페이지는 트렌드 쿼리에 대응한다.
동작(620)에서, 식별 모듈(220)이 아이템 페이지에서 아이템의 특징을 식별한다. 아이템의 특징은 브랜드명, 모델, 물리적인 사양, 컬러 등을 포함할 수 있다.
동작(630)에서, 생성 모듈(230)이 식별된 아이템 카테고리들 각각에 대한 리프 노드를 생성한다. 생성된 리프 노드들 각각은 특정 카테고리를 나타낼 수 있고 또한 특정 카테고리에 관한 정보를 포함할 수 있다.
동작(640)에서, 생성 모듈(230)이 식별된 특징들 각각에 대한 리프 노드를 생성한다. 생성된 리프 노드들 각각은 특정 특징을 나타낼 수 있고, 또한 특정 특징에 관한 정보를 포함할 수 있다.
도 7은 일부 예시적인 실시예에 따른, 개념 생성 시스템(150)에 의해 생성되는 그래프(700)를 도시한 블록도이다. 그래프(700)는 트렌드 쿼리 노드(710), 제1 아이템 노드(720), 제2 아이템 노드(730), 제1 애스펙트 노드(740), 제2 애스펙트 노드(750) 및 제3 애스펙트 노드(760)를 포함한다. 트렌드 쿼리 노드(710)는 판정 모듈(210)에 의해 판정되는 트렌드 쿼리에 관한 정보를 포함한다. 예를 들어, 트렌드 쿼리 노드(710)는 "어버이날 선물(Mother's Day Gifts)"에 대한 트렌드 쿼리에 대한 정보를 포함한다. 제1 아이템 노드(720) 및 제2 아이템 노드(730) 각각은 트렌드 쿼리에 대응하는 아이템 페이지의 아이템을 나타낸다. 예를 들어, 제1 아이템 노드(720)는 아이폰(iPhone®)을 나타내고, 제2 아이템 노드(730)는 나이키(Nike®) 신발을 나타낸다. 각 아이템 노드는 아이템 페이지의 아이템에 대한 정보를 포함한다. 또한, 제1 애스펙트 노드(740), 제2 애스펙트 노드(750) 및 제3 애스펙트 노드(760)는 각각 트렌드 쿼리 노드(710)의 트렌드 쿼리에 대응하는 아이템 페이지(예컨대, 아이폰(iPhone®))의 애스펙트에 관한 정보를 포함한다.
도 8은 일부 예시적인 실시예에 따른, 목적지 페이지(800)의 예시적인 사용자 인터페이스를 나타내는 블록도이다. 목적지 페이지(800)는 클라이언트 장치 상에 디스플레이될 수 있다. 도 8에 도시된 바와 같이, 목적지 페이지(800)는 제목(810)을 포함한다. 일부 예에서, 제목(810)은 트렌드 쿼리(예컨대, "어버이날 선물") 중 하나에 대응한다. 목적지 페이지(800)는 또한 제1 링크(820) 및 제2 링크(830)를 포함한다. 도시된 바와 같이, 제1 링크(820)는 나이키 신발의 아이템 페이지에 대응하고, 제2 링크(830)는 스마트폰의 아이템 페이지에 대응한다. 나이키 신발 및 스마트폰은 모두 식별 모듈(220)에 의해 식별되는 아이템 페이지일 수 있다. 또한, 제목(810)은 도 7의 트렌드 쿼리 노드(710)에 대응할 수 있다. 또한, 나이키 신발은 도 7의 제2 아이템 노드(730)에 대응할 수 있고, 스마트폰은 도 7의 제1 아이템 노드(720)에 대응할 수 있다.
도 9는 일부 예시적인 실시예에 따른, 추가적인 목적지 페이지(900)의 예시적인 사용자 인터페이스를 도시한 블록도이다. 추가적인 목적지 페이지(900)는 도 8의 제2 링크(830)의 활성화 시에 클라이언트 장치에 디스플레이될 수 있다. 추가적인 목적지 페이지(900)는 또한 트렌드 쿼리(예컨대, "어버이날 선물(Mother's Day Gifts)")에 대응하는 제목(910)을 포함할 수 있다. 또한, 추가적인 목적지 페이지(900)는 제1 애스펙트(920), 제2 애스펙트(930) 및 제3 애스펙트(940)를 포함한다. 애스펙트들 각각은 아이템 페이지의 아이템 특징에 대응할 수 있고, 아이템 페이지는 트렌드 쿼리(예컨대, "어버이날 선물")에 대응할 수 있다. 예를 들어, 16GB 검은색 스마트폰 아이템 페이지가 '어버이날 선물'에 대한 트렌드 쿼리에 대응할 수 있다. 또한, 32GB 흰색 스마트폰 아이템 페이지가 "어버이날 선물"에 대한 트렌드 쿼리에 대응할 수 있다. 추가적인 목적지 페이지(900)로부터의 애스펙트들 각각은 클라이언트 장치 상에 각각의 아이템 페이지를 디스플레이하도록 선택 가능하다.
모듈, 컴포넌트 및 로직
특정 실시예는 본 명세서에서 로직 또는 다수의 컴포넌트, 모듈 또는 메커니즘을 포함하는 것으로 설명된다. 모듈은 소프트웨어 모듈(예컨대, 기계(또는 머신) 판독 가능 매체 상에 구현된 코드) 또는 하드웨어 모듈을 구성할 수 있다. "하드웨어 모듈"은 특정 동작을 수행할 수 있는 유형의 장치이며 특정한 물리적 방식으로 구성 또는 정렬될 수 있다. 다양한 예시적인 실시예에서, 하나 이상의 컴퓨터 시스템(예컨대, 독립형 컴퓨터 시스템, 클라이언트 컴퓨터 시스템, 또는 서버 컴퓨터 시스템) 또는 컴퓨터 시스템의 하나 이상의 하드웨어 모듈(예컨대, 프로세서 또는 프로세서 그룹)은, 소프트웨어(예컨대, 애플리케이션 또는 애플리케이션 부분)에 의해 본원에 설명된 바와 같은 특정 동작을 수행하도록 동작하는 하드웨어 모듈로서 구성될 수 있다.
일부 실시예에서, 하드웨어 모듈은 기계적으로, 전자적으로 또는 이들의 임의의 적절한 조합으로 구현될 수 있다. 예를 들어, 하드웨어 모듈은 특정 동작을 수행하도록 영구적으로 구성되는 전용 회로 또는 로직을 포함할 수 있다. 예를 들어, 하드웨어 모듈은 FPGA(Field-Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)과 같은 특수 목적 프로세서일 수 있다. 하드웨어 모듈은 또한 특정 동작을 수행하기 위해 소프트웨어에 의해 일시적으로 구성되는 프로그램 가능한 로직 또는 회로를 포함할 수 있다. 예를 들어, 하드웨어 모듈은 범용 프로세서 또는 다른 프로그램 가능 프로세서에 의해 실행되는 소프트웨어를 포함할 수 있다. 하드웨어 모듈은, 이러한 소프트웨어에 의해 일단 구성되면, 구성된 기능을 수행하도록 고유하게 맞추어진 특정 기계(또는 기계의 특정 컴포넌트)가 되며 더 이상 범용 프로세서가 아니다. 하드웨어 모듈을 기계적으로, 전용 및 영구적으로 구성된 회로로, 또는 일시적으로 구성된(예컨대, 소프트웨어에 의해 구성된) 회로로 구현하기 위한 결정은 비용 및 시간을 고려하여 이루어질 수 있음을 이해할 수 있을 것이다.
따라서, "하드웨어 모듈"이라는 표현은 특정 방식으로 동작하거나 또는 본원에 설명된 특정 작업을 수행하도록 물리적으로 구성되거나, 영구적으로 구성되거나(예컨대, 하드와이어드) 또는 일시적으로 구성되는(예컨대, 프로그래밍되는) 유형의 개체(tangible entity)를 포함하는 것으로 이해해야 한다. 본 명세서에 사용된 바와 같이, "하드웨어 구현 모듈"은 하드웨어 모듈을 지칭한다. 하드웨어 모듈들이 일시적으로 구성되는(예컨대, 프로그래밍되는) 실시예를 고려할 경우, 이들 하드웨어 모듈 각각이 어느 한 시점에 구성되거나 인스턴스화될 필요는 없다. 예를 들어, 하드웨어 모듈이 소프트웨어에 의해 특수 목적 프로세서가 되도록 구성된 범용 프로세서를 포함할 경우, 이 범용 프로세서는 다른 시간에는 (예컨대, 다른 하드웨어 모듈을 포함하는) 다른 특수 목적 프로세서로서 구성될 수 있다. 따라서, 소프트웨어는, 예를 들어 한 특정 시간에는 특정 하드웨어 모듈을 구성하고 다른 특정 시간에는 다른 하드웨어 모듈을 구성하도록 특정 프로세서 또는 프로세서들을 구성한다.
하드웨어 모듈은 다른 하드웨어 모듈과 정보를 주고받을 수 있다. 따라서, 전술한 하드웨어 모듈들은 통신 가능하게 결합된 것으로 간주될 수 있다. 동시에 다수의 하드웨어 모듈이 존재하는 경우, 통신은 2개 이상의 하드웨어 모듈 사이에서 신호 전송(예컨대, 적절한 회로 및 버스를 통해)을 통해 달성될 수 있다. 다수의 하드웨어 모듈들이 상이한 시간에 구성되거나 인스턴스화되는 실시예에서, 그러한 하드웨어 모듈들 간의 통신은, 예를 들어, 다수의 하드웨어 모듈이 액세스하는 메모리 구조 내의 정보의 저장 및 검색을 통해 달성될 수 있다. 예를 들어, 하나의 하드웨어 모듈이 동작을 수행하고 그 동작의 출력을 통신 가능하게 연결된 메모리 장치에 저장할 수 있다. 그 후, 다른 하드웨어 모듈이 나중에 메모리 장치에 액세스하여 저장된 출력을 검색하고 처리할 수 있다. 하드웨어 모듈들은 입력 또는 출력 장치와의 통신을 개시할 수 있으며, 자원(예컨대, 정보 모음)에 대해 동작할 수 있다.
본원에 설명된 예시적인 방법의 다양한 동작은 관련 동작을 수행하도록 (예컨대, 소프트웨어에 의해) 일시적으로 구성되거나 영구적으로 구성된 하나 이상의 프로세서에 의해 적어도 부분적으로 수행될 수 있다. 이러한 프로세서는 일시적으로 구성되든 또는 영구적으로 구성되든, 본원에 설명된 하나 이상의 동작 또는 기능을 수행하도록 작동하는 프로세서 구현 모듈을 구성할 수 있다. 본원에 사용된 "프로세서 구현 모듈"은 하나 이상의 프로세서를 사용하여 구현된 하드웨어 모듈을 지칭한다.
유사하게, 본 명세서에 설명된 방법들은 적어도 부분적으로 프로세서로 구현될 수 있으며, 특정 프로세서 또는 프로세서들은 하드웨어의 한 예이다. 예를 들어, 방법의 동작 중 적어도 일부는 하나 이상의 프로세서 또는 프로세서 구현 모듈에 의해 수행될 수 있다. 또한, 하나 이상의 프로세서는 "클라우드 컴퓨팅" 환경에서 또는 "서비스로서의 소프트웨어(software as a service)"(SaaS)로서 관련 동작의 성능을 지원하도록 동작할 수 있다. 예를 들어, 적어도 일부 동작은 컴퓨터들(프로세서를 포함하는 기계의 예로서)의 그룹에 의해 수행될 수 있는데, 이들 동작은 네트워크(예컨대, 인터넷) 및 하나 이상의 적절한 인터페이스(예컨대, 애플리케이션 프로그램 인터페이스(API))를 통해 액세스 가능하다.
소정의 동작의 수행은, 단일 기계 내에 존재할 뿐만 아니라 다수의 기계에 걸쳐 배치되어 있는 프로세서들 사이에 분산될 수 있다. 일부 예시적인 실시예에서, 프로세서 또는 프로세서 구현 모듈은 단일 지리적 위치(예컨대, 가정 환경, 사무실 환경 또는 서버 팜 내)에 위치할 수 있다. 다른 예시적인 실시예에서, 프로세서 또는 프로세서 구현 모듈은 다수의 지리적 위치에 걸쳐 분산될 수 있다.
예시적인 기계 구조 및 기계 판독 가능한 매체
도 10은 기계 판독 가능 매체(예컨대, 기계 판독 가능 저장 매체)로부터의 명령어를 판독하고 본원에서 논의된 임의의 하나 이상의 방법을 수행할 수 있는, 일부 예시적인 실시예에 따른 기계(1000)의 컴포넌트를 도시한 블록도이다. 구체적으로, 도 10은 컴퓨터 시스템의 예시적인 형태의 기계(1000)를 도시하고 있으며, 그 내부에서 기계(1000)로 하여금 본원에서 논의된 방법들 중 하나 이상을 수행하게 하는 명령어(예컨대, 소프트웨어, 프로그램, 애플리케이션, 애플릿, 앱, 또는 다른 실행가능 코드)가 실행될 수 있다. 예를 들어, 이들 명령어는 기계로 하여금도 3 내지 6의 흐름도를 실행하게 할 수 있다. 이들 명령어는 일반적으로 프로그램되지 않은 기계를 전술한 방식으로 예시된 기능들을 수행하도록 특별히 구성된 특정 기계로 변환한다. 다른 실시예에서, 기계(1000)는 독립형 장치로서 동작하거나 다른 기계들에 결합(예컨대, 네트워킹)될 수 있다. 네트워크 배치에서, 기계(1000)는 서버-클라이언트 네트워크 환경에서 서버 기계 또는 클라이언트 기계의 용량으로 동작할 수 있거나 피어-투-피어(또는 분산) 네트워크 환경에서 피어 기계로 작동할 수 있다. 기계(1000)는, 제한적인 것은 아니지만, 서버 컴퓨터, 클라이언트 컴퓨터, 퍼스널 컴퓨터(PC), 태블릿 컴퓨터, 랩탑 컴퓨터, 넷북, 셋톱 박스(STB), 개인용 디지털 보조 장치(PDA), 엔터테인먼트 미디어 시스템, 셀룰러 폰, 스마트폰, 모바일 장치, 웨어러블 장치(예컨대, 스마트 시계), 기타 스마트 장치, 네트워크 라우터, 네트워크 스위치, 네트워크 브릿지 또는 기계(1000)에 의해 취해질 동작을 지정하는 명령(1016)을 순차적으로 또는 다른 방식으로 실행할 수 있는 임의의 기계를 포함할 수 있다. 또한, 단일 기계(1000)가 도시되어 있지만, "기계"라는 용어는 본 명세서에서 논의된 방법들 중 임의의 하나 이상의 방법을 수행하기 위해 개별적으로 또는 공동으로 명령어(1016)를 실행하는 기계 군(1000)을 포함하는 것으로 이해해야 한다.
기계(1000)는 버스(1002)를 통해 서로 통신하도록 구성될 수 있는 프로세서(1010), 메모리(1030) 및 I/O 컴포넌트(1050)를 포함할 수 있다. 일 실시예에서, 프로세서(1010)(예컨대, CPU(Central Processing Unit), RISC(Reduced Instruction Set Computing) 프로세서, CISC(Complex Instruction Set Computing) 프로세서, GPU(Graphics Processing Unit), DSP(Digital Signal Processor) ASIC(Application Specific Integrated Circuit), RFIC(Radio-Frequency Integrated Circuit), 다른 프로세서, 또는 이들의 임의의 적절한 조합)는, 예를 들어 명령어(1016)를 실행할 수 있는 프로세서(1012) 및 프로세서(1014)를 포함할 수 있다. "프로세서"라는 용어는 명령어들을 동시에 실행할 수 있는 두 개 이상의 독립 프로세서(때로는 "코어"라고 함)를 포함할 수 있는 멀티 코어 프로세서를 포함한다. 또한, 도 10은 다수의 프로세서를 도시하고 있으며, 기계(1000)는 단일 코어를 갖는 단일 프로세서, 복수의 코어(예컨대, 멀티 코어 프로세스)를 갖는 단일 프로세서, 단일 코어를 갖는 복수의 프로세서, 복수의 코어를 갖는 복수의 프로세서를 포함할 수 있다.
메모리/저장부(1030)는 메인 메모리 또는 다른 메모리 스토리지와 같은 메모리(1032) 및 저장 유닛(1036)을 포함할 수 있는데, 둘 모두 예컨대 버스(1002)를 통해 프로세서(1010)에게 액세스 가능하다. 저장 유닛(1036) 및 메모리(1032)는 본원에 설명된 방법들 중 임의의 하나 이상의 방법 또는 기능을 구현하는 명령어(1016)를 저장한다. 명령어(1016)는 또한 기계(1000)에 의해 실행되는 동안에 메모리(1032), 저장 유닛(1036), 적어도 하나의 프로세서(1010) 또는 이들의 임의의 적절한 조합 내에 위치할 수 있다. 따라서, 메모리(1032), 저장 유닛(1036) 및 프로세서(1010)의 메모리는 기계 판독 가능 매체의 예들이다.
본 명세서에 사용된 바와 같이, "기계 판독 가능 매체"는 명령어 및 데이터를 일시적으로 또는 영구적으로 저장할 수 있는 장치를 의미하며, 제한적인 것은 아니지만, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 버퍼 메모리, 플래시 메모리, 광학 매체, 자기 매체, 캐시 메모리, 다른 유형의 저장 장치(예컨대, 지울 수 있는 프로그램 가능 판독 전용 메모리(EEPROM)) 및/또는 이들의 임의의 적절한 조합을 포함할 수 있다. "기계 판독 가능 매체"라는 용어는 명령어(1016)를 저장할 수 있는 단일 매체 또는 복수 매체(예컨대, 중앙 집중식 또는 분산형 데이터베이스, 또는 연관된 캐시 및 서버)를 포함하는 것으로 이해해야 한다. "기계 판독 가능 매체"라는 용어는 또한 기계(예컨대, 기계(1000))에 의해 실행되는 명령어(예컨대, 명령어(1016))를 저장할 수 있는 임의의 매체 또는 복수 매체의 조합을 포함하는 것으로 이해할 수 있는데, 이들 명령어는 기계(1000)의 하나 이상의 프로세서(예컨대, 프로세서(1010))에 의해 실행될 때, 기계(1000)로 하여금 본원에 기술된 임의의 하나 이상의 방법을 수행하게 한다. 따라서, "기계-판독 가능 매체"는 단일 저장 장치 또는 디바이스 뿐만 아니라 다수의 저장 장치 또는 디바이스를 포함하는 "클라우드 기반" 저장 시스템 또는 저장 네트워크를 말한다.
유형의 기계 판독 가능 매체를 "일시적이지 않은"으로 표시한 것을 매체가 움직일 수 없음을 의미하는 것으로 해석되어서는 안 되는데, 즉, 이 매체는 한 물리적 위치에서 다른 위치로 이송가능한 것으로 간주되어야 한다. 또한, 기계 판독 가능 매체는 유형이므로, 이 매체는 기계 판독 가능 장치로 간주될 수 있다.
I/O 컴포넌트(1050)는 입력을 수신하고, 출력을 제공하고, 출력을 생성하고, 정보를 전송하고, 정보를 교환하고, 측정을 캡처하는 등의 다양한 컴포넌트를 포함할 수 있다. 특정 기계에 포함되는 특정 I/O 컴포넌트(1050)는 기계의 타입에 의존할 것이다. 예를 들어, 휴대 전화와 같은 휴대용 기계는 터치 입력 장치 또는 기타 입력 메커니즘을 포함할 수 있지만, 헤드리스 서버 기계는 그러한 터치 입력 장치를 포함하지 않을 것이다. I/O 컴포넌트(1050)는 도 10에 도시되지 않은 많은 다른 컴포넌트를 포함할 수 있음을 알 것이다. I/O 컴포넌트(1050)는 단지 다음의 설명을 단순화하기 위해 기능에 따라 그룹화되며, 그룹핑은 결코 제한적인 것이 아니다. 다양한 예시적인 실시예에서, I/O 컴포넌트(1050)는 출력 컴포넌트(1052) 및 입력 컴포넌트(1054)를 포함할 수 있다. 출력 컴포넌트(1052)는 비주얼 컴포넌트(예컨대, 플라즈마 디스플레이 패널(PDP), 발광 다이오드(LED) 디스플레이, 액정 디스플레이(LCD), 프로젝터, 또는 음극선관(CRT)과 같은 디스플레이), 음향 컴포넌트(예컨대, 스피커), 햅틱 컴포넌트(예컨대, 진동 모터, 저항 메커니즘), 기타 신호 생성기 등을 포함할 수 있다. 입력 컴포넌트(1054)는 영숫자 입력 컴포넌트(예컨대, 키보드, 영숫자 입력을 수신하도록 구성된 터치 스크린, 광학 키보드 또는 다른 영숫자 입력 컴포넌트), 포인트 기반 입력 컴포넌트(예컨대, 마우스, 터치패드, 트랙볼, 조이스틱, 모션 센서 또는 다른 포인팅 기구), 촉각 입력 컴포넌트(예컨대, 물리적인 버튼, 터치 또는 터치 제스처의 위치 및/또는 힘을 제공하는 터치 스크린, 또는 다른 촉각 입력 컴포넌트), 오디오 입력 컴포넌트(예컨대, 마이크로폰) 등을 포함할 수 있다.
또 다른 예시적인 실시예에서, I/O 컴포넌트(1050)는 다양한 컴포넌트들 중에서도 생체 인식 컴포넌트(1056), 동작 컴포넌트(1058), 환경 컴포넌트(1060) 또는 위치 컴포넌트(1062)를 포함할 수 있다. 예를 들어, 생체 인식 컴포넌트(1056)는, 표현(예컨대, 손짓, 얼굴 표정, 음성 표현, 몸짓 또는 눈 추적)을 검출하고, 생체 신호(예컨대, 혈압, 심박수, 체온, 땀 또는 뇌파)를 측정하며, 사람을 식별(예컨대, 음성 식별, 망막 식별, 안면 식별, 지문 식별 또는 뇌파 기반 식별)하는 등의 컴포넌트를 포함할 수 있다. 동작 컴포넌트(1058)는 가속도 센서 컴포넌트(예컨대, 가속도계), 중력 센서 컴포넌트, 회전 센서 컴포넌트(예컨대, 자이로스코프) 등을 포함할 수 있다. 환경 컴포넌트(1060)는, 예를 들어, 조명 센서 컴포넌트(예컨대, 광도계), 온도 센서 컴포넌트(예컨대, 주위 온도를 검출하는 하나 이상의 온도계), 습도 센서 컴포넌트, 압력 센서 컴포넌트(예컨대, 기압계), 음향 센서 컴포넌트(예컨대, 배경 잡음을 검출하는 하나 이상의 마이크로폰), 근접 센서 컴포넌트(예컨대, 근접 물체를 검출하는 적외선 센서), 가스 센서(예컨대, 안전을 위해 유해 가스의 농도를 검출하거나 또는 대기 중의 오염 물질을 측정하는 가스 검출 센서), 또는 주변 물리적 환경에 대응하는 표시, 측정 또는 신호를 제공할 수 있는 기타 컴포넌트를 포함할 수 있다. 위치 컴포넌트(1062)는 위치 센서 컴포넌트(예컨대, 글로벌 위치 시스템(GPS) 수신기 컴포넌트), 고도 센서 컴포넌트(고도를 추론하는데 이용될 수 있는 공기압을 검출하는 고도계 또는 기압계), 방향 센서 컴포넌트(예컨대, 자력계) 등을 포함할 수 있다.
통신은 다양한 기술을 사용하여 구현될 수 있다. I/O 컴포넌트(1050)는 커플링(1082) 및 커플링(1072)을 통해 기계(1000)를 네트워크(1080) 또는 장치(1070)에 연합하도록 동작 가능한 통신 컴포넌트(1064)를 포함할 수 있다. 예를 들어, 통신 컴포넌트(1064)는 네트워크 인터페이스 컴포넌트 또는 네트워크(1080)와 인터페이스하기 위한 다른 적절한 장치를 포함할 수 있다. 다른 예에서, 통신 컴포넌트(1064)는 유선 통신 컴포넌트, 무선 통신 컴포넌트, 셀룰러 통신 컴포넌트, 근거리 통신(NFC) 컴포넌트, 블루투스 컴포넌트(예컨대, 블루투스 저 에너지), Wi-Fi 컴포넌트 및 다른 형태를 통해 통신을 제공하는 기타 통신 컴포넌트를 포함한다. 장치(1070)는 다른 기계 또는 임의의 다양한 주변 장치(예컨대, 범용 직렬 버스(USB)를 통해 연결된 주변 장치)일 수 있다.
더욱이, 통신 컴포넌트(1064)는 식별자를 검출하거나 식별자를 검출하도록 동작 가능한 컴포넌트를 포함할 수 있다. 예를 들어, 통신 컴포넌트(1064)는 무선 주파수 식별(RFID) 태그 판독기 컴포넌트, NFC 스마트 태그 검출 컴포넌트, 광학 판독기 컴포넌트(예컨대, UPC(Universal Product Code) 바코드와 같은 1차원 바코드, QR(Quick Response)코드와 같은 다차원 바코드, 아즈텍(Aztec) 코드, 데이터 매트릭스, Dataglyph, MaxiCode, PDF417, 울트라 코드, UCC RSS-2D 바 코드, 및 기타 광학 코드를 검출하는 광학 센서), 또는 음향 검출 컴포넌트(예컨대, 태그된 오디오 신호를 식별하는 마이크로폰)를 포함할 수 있다. 또한, 통신 컴포넌트(1064)를 통해 인터넷 프로토콜(IP) 지리적 위치, Wi-Fi 신호 삼각 측량을 통한 위치, 특정 위치를 나타낼 수 있는 NFC 비콘 신호 검출을 통한 위치 등과 같은 다양한 정보가 도출될 수 있다.
전송 매체
다양한 예시적인 실시예에서, 네트워크(1080)의 하나 이상의 부분은 애드혹 네트워크, 인트라넷, 엑스트라넷, 가상 사설망(VPN), 근거리 통신망(LAN), 무선 LAN(WLAN) WAN(Wide Area Network), 무선 WAN(WWAN), MAN(Metropolitan Area Network), 인터넷, 인터넷의 일부, PSTN(Public Switched Telephone Network)의 일부, POTS(plain old telephone service) 네트워크, 셀룰러 전화 네트워크, 무선 네트워크, Wi-Fi® 네트워크, 다른 유형의 네트워크 또는 이들 네트워크의 둘 이상의 조합일 수 있다. 예를 들어, 네트워크(1080) 또는 네트워크(1080)의 일부는 무선 또는 셀룰러 네트워크를 포함할 수 있고, 커플링(1082)은 코드 분할 멀티 접속(CDMA) 연결, 글로벌 이동 통신 시스템(GSM) 연결, 또는 다른 유형의 셀룰러 또는 무선 연결을 포함할 수 있다. 이 예에서, 커플링(1082)은 단일 반송파 무선 전송 기술(1xRTT), EVDO(Evolution-Data Optimized) 기술, GPRS(General Packet Radio Service) 기술, EDGE(Enhanced Data rates for GSM Evolution), 3G를 포함하는 3GPP(third Generation Partnership Project), 4세대 무선(4G) 네트워크, UMTS(Universal Mobile Telecommunications System), HSPA(High Speed Packet Access), WiMAX(Worldwide Interoperability for Microwave Access), LTE(Long Term Evolution) 표준, 다양한 표준 설정 기관에 의해 정의된 기타 표준, 기타 장거리 프로토콜 또는 기타 데이터 전송 기술과 같은 다양한 유형의 데이터 전송 기술 중 어느 하나를 구현할 수 있다.
명령어(1016)는 네트워크 인터페이스 장치(예컨대, 통신 컴포넌트(1064)에 포함된 네트워크 인터페이스 컴포넌트)를 통해 전송 매체를 사용하여 네트워크(1080)를 통해 그리고 다수의 잘 알려진 전송 프로토콜들 중 임의의 하나(예컨대, 하이퍼 텍스트 전송 프로토콜(HTTP))를 이용하여 송신 또는 수신될 수 있다. 유사하게, 명령어(1016)는 전송 매체를 사용하여 커플링(1072)(예컨대, 피어-투-피어 커플 링)을 통해 장치(1070)에 대해 송신 또는 수신될 수 있다. "전송 매체"라는 용어는 기계(1000)에 의한 실행을 위해 명령어(1016)를 저장, 인코딩, 또는 운반할 수 있는 임의의 무형의 매체를 포함하고, 그러한 소프트웨어의 통신을 용이하게 하는 디지털 또는 아날로그 통신 신호 또는 다른 무형의 매체를 포함한다. 전송 매체는 기계 판독 가능 매체의 일 실시예이다.
다음의 번호가 매겨진 예들은 실시예들이다.
1. 시스템으로서,
데이터베이스에 저장된 쿼리 로그로부터, 적어도 임계 발생 횟수로(a threshold number of instances) 수신되는 것으로 각각 표시되는 트렌드 쿼리를 판정하도록 구성된 판정 모듈 - 상기 트렌드 쿼리는 네트워크 퍼블리케이션 시스템의 사용자에 의해 수행됨 - 과,
상기 트렌드 쿼리에 대응하는 아이템 페이지를 식별하고, 상기 트렌드 쿼리에 대응하는 아이템 페이지로부터의 애스펙트(aspects)를 식별하도록 구성된 식별 모듈 - 상기 애스펙트는 상기 데이터베이스 내에 데이터로서 저장됨 - 과,
상기 트렌드 쿼리의 각각에 대한 쿼리 노드 - 상기 쿼리 노드는 그래프에 포함됨 - 를 생성하고, 상기 아이템 페이지로부터의 상기 애스펙트의 각각에 대한 리프 노드를 생성하며, 상기 트렌드 쿼리의 각각에 대한 상기 쿼리 노드와 상기 리프 노드 사이에 연결(connections)을 생성하고, 다양한 애스펙트를 포함하는 목적지 페이지를 생성하도록 구성된 생성 모듈 - 상기 목적지 페이지의 생성은 생성된 상기 그래프에 기초함 - 을 포함하는 시스템.
2. 예 1의 시스템으로서, 상기 식별 모듈은, 또한, 상기 트렌드 쿼리에 의해 생성된 결과로부터 상기 퍼블리케이션 시스템의 사용자에 의해 선택되는 아이템 페이지를 식별하도록 구성되는 시스템.
3. 예 1 또는 예 2의 시스템으로서, 상기 생성 모듈은, 또한, 특정 리프 노드와 특정 쿼리 노드 사이에 연결을 생성하도록 구성되고, 상기 특정 리프 노드는 아이템 페이지의 애스펙트를 나타내며, 상기 아이템 페이지는 상기 특정 쿼리 노드에 의해 표현되는 특정 쿼리에 대응하는 시스템.
4. 예 1 내지 3 중 어느 하나의 시스템으로서, 상기 식별 모듈은, 또한, 상기 아이템 페이지의 아이템에 대응하는 카테고리를 식별하도록 구성되고, 상기 생성 모듈은, 또한, 상기 아이템 페이지의 아이템에 대응하는 상기 식별된 카테고리의 각각에 대한 리프 노드를 생성하도록 구성되는 시스템.
5. 예 1 내지 4 중 어느 하나의 시스템으로서, 상기 식별 모듈은, 또한, 상기 아이템 페이지로부터의 상기 아이템의 특징을 식별하도록 구성되고, 상기 생성 모듈은, 또한, 상기 아이템 페이지로부터의 상기 아이템의 상기 식별된 특징의 각각에 대한 리프 노드를 생성하도록 구성되는 시스템.
6. 예 1 내지 5 중 어느 하나의 시스템으로서, 상기 식별 모듈은, 또한, 상기 트렌드 쿼리로부터 제1 쿼리 및 제2 쿼리를 식별하도록 구성되고 - 상기 제1 쿼리 및 상기 제2 쿼리는 적어도 임계 발생 횟수로 연속적으로 수신되는 것으로 표시됨 - , 상기 생성 모듈은, 또한, 상기 제1 쿼리 및 상기 제2 쿼리의 식별에 기초하여 상기 트렌드 쿼리의 각각에 대한 상기 쿼리 노드들 사이에 연결을 생성하도록 구성되는 시스템.
7. 예 1 내지 6 중 어느 하나의 시스템으로서, 상기 생성 모듈은, 또한, 상기 트렌드 쿼리들에 대응하는 상기 아이템 페이지의 각각에 대한 노드를 생성하고, 상기 트렌드 쿼리의 각각에 대한 상기 노드와 상기 아이템 페이지의 각각에 대한 상기 쿼리 노드 사이에 연결을 생성하는 시스템.
8. 예 1 내지 7 중 어느 하나의 시스템으로서, 클라이언트 장치로부터, 상기 생성된 그래프로부터의 쿼리 노드들 중 하나와 매칭되는 쿼리를 수신하도록 구성된 수신 모듈을 더 포함하며, 상기 식별 모듈은, 또한, 상기 생성된 그래프를 사용하여, 상기 클라이언트 장치로부터 수신된 상기 쿼리에 매칭되는 특정 쿼리 노드를 식별하도록 구성되는 시스템.
9. 예 8의 시스템으로서, 상기 다양한 애스펙트를 포함하는 상기 목적지 페이지를 상기 클라이언트 장치 상에 디스플레이하는 디스플레이 모듈을 더 포함하되, 상기 목적지 페이지는 상기 생성된 그래프로부터의 상기 특정 쿼리 노드에 대응하고, 상기 다양한 애스펙트는 상기 생성된 그래프로부터의 상기 특정 쿼리 노드에 연결되는 리프 노드에 대응하며, 상기 목적지 페이지는 상기 특정 쿼리 노드에 의해 표현된 트렌드 쿼리에 대응하는 아이템 페이지를 디스플레이하도록 선택가능한 링크를 포함하는 시스템.
10. 예 8 또는 예 9의 시스템으로서, 상기 수신 모듈은, 또한, 상기 퍼블리케이션 시스템의 사용자에 의해 작동되는 장치로부터 상기 트렌드 쿼리를 수신하도록 구성되는 시스템.
11. 컴퓨터로 구현되는 방법으로서,
데이터베이스에 저장된 쿼리 로그로부터, 적어도 임계 발생 횟수로 수신되는 것으로 각각 표시되는 트렌드 쿼리를 판정하는 단계 - 상기 트렌드 쿼리는 네트워크 퍼블리케이션 시스템의 사용자에 의해 수행됨 - 와,
상기 트렌드 쿼리에 대응하는 아이템 페이지를 식별하는 단계와,
상기 트렌드 쿼리에 대응하는 아이템 페이지로부터 애스펙트를 식별하는 단계 - 상기 애스펙트는 상기 데이터베이스 내에 데이터로서 저장됨 - 와,
상기 트렌드 쿼리의 각각에 대한 쿼리 노드를 생성하는 단계 - 상기 쿼리 노드는 그래프에 포함됨 - 와,
상기 아이템 페이지로부터 상기 애스펙트의 각각에 대한 리프 노드를 생성하는 단계와,
상기 트렌드 쿼리의 각각에 대한 상기 쿼리 노드와 상기 리프 노드 사이에 연결(connections)을 생성하는 단계와,
다양한 애스펙트를 포함하는 목적지 페이지를 생성하는 단계 - 상기 목적지 페이지의 생성은 생성된 상기 그래프에 기초함 - 를 포함하는
방법.
12. 예 11의 방법으로서, 상기 트렌드 쿼리에 대응하는 아이템 페이지를 식별하는 단계는, 상기 트렌드 쿼리에 의해 생성된 결과로부터 상기 퍼블리케이션 시스템의 사용자에 의해 선택되는 아이템 페이지를 식별하는 단계를 포함하는 방법.
13. 예 11 또는 예 12의 방법으로서, 상기 트렌드 쿼리의 각각에 대한 상기 쿼리 노드와 상기 리프 노드 사이에 연결을 생성하는 단계는, 특정 리프 노드와 특정 쿼리 노드 사이에 연결을 생성하는 단계를 포함하되, 상기 특정 리프 노드는 아이템 페이지의 애스펙트를 나타내고, 상기 아이템 페이지는 상기 특정 쿼리 노드에 의해 표현되는 특정 쿼리에 대응하는 방법.
14. 예 11 내지 13 중 어느 하나의 방법으로서, 상기 애스펙트를 식별하는 단계는 상기 아이템 페이지로부터의 아이템에 대응하는 카테고리를 식별하는 단계를 포함하고, 상기 리프 노드를 생성하는 단계는 상기 아이템 페이지로부터의 상기 아이템에 대응하는 상기 식별된 카테고리의 각각에 대한 리프 노드를 생성하는 단계를 포함하는 방법.
15. 예 11 내지 14 중 어느 하나의 방법으로서, 상기 애스펙트를 식별하는 단계는 상기 아이템 페이지로부터의 상기 아이템의 특징을 식별하는 단계와, 상기 리프 노드를 생성하는 단계는 상기 아이템 페이지로부터의 상기 아이템의 식별된 특징의 각각에 대한 리프 노드를 생성하는 단계를 포함하는 방법.
16. 예 11 내지 15 중 어느 하나의 방법으로서, 상기 트렌드 쿼리로부터 제1 쿼리 및 제2 쿼리를 식별하는 단계 - 상기 제1 쿼리 및 상기 제2 쿼리는 적어도 임계 발생 횟수로 연속적으로 수신되는 것으로 표시됨 - 와, 상기 제1 쿼리 및 상기 제2 쿼리의 식별에 기초하여 상기 트렌드 쿼리의 각각에 대한 상기 쿼리 노드들 사이의 연결을 생성하는 단계를 더 포함하는 방법.
17. 예 11 내지 17 중 어느 하나의 방법으로서, 상기 트렌드 쿼리에 대응하는 상기 아이템 페이지의 각각에 대한 노드를 생성하는 단계와, 상기 아이템 페이지의 각각에 대한 상기 노드와 상기 트렌드 쿼리의 각각에 대한 상기 쿼리 노드 사이에 연결을 생성하는 단계를 더 포함하는 방법.
18. 예 11 내지 17 중 어느 하나의 방법으로서, 클라이언트 장치로부터, 상기 생성된 그래프의 쿼리 노드들 중 하나와 매칭되는 쿼리를 수신하는 단계와, 상기 생성된 그래프를 사용하여, 상기 클라이언트 장치로부터 수신된 상기 쿼리와 매칭되는 특정 쿼리 노드를 식별하는 단계와, 상기 다양한 애스펙트를 포함하는 상기 목적지 페이지를 상기 클라이언트 장치 상에 디스플레이하는 단계 - 상기 목적지 페이지는 상기 생성된 그래프로부터의 상기 특정 쿼리 노드에 대응하고, 상기 다양한 애스펙트는 상기 생성된 그래프로부터의 상기 특정 쿼리 노드에 연결되는 리프 노드에 대응함 - 를 더 포함하는 방법.
19. 예 18의 방법으로서, 상기 목적지 페이지는 상기 특정 쿼리 노드에 의해 표현된 트렌드 쿼리에 대응하는 아이템 페이지를 디스플레이하도록 선택가능한 링크를 포함하는 방법.
20. 기계의 하나 이상의 프로세서에 의해 실행될 때, 상기 기계로 하여금 동작을 수행하게 하는 명령어를 저장하는 기계-판독 가능 매체로서,
상기 동작은
데이터베이스에 저장된 쿼리 로그로부터, 적어도 임계 발생 횟수로 수신되는 것으로 각각 표시되는 트렌드 쿼리를 판정하는 것 - 상기 트렌드 쿼리는 네트워크 퍼블리케이션 시스템의 사용자에 의해 수행됨 - 과,
상기 트렌드 쿼리에 대응하는 아이템 페이지를 식별하는 것과,
상기 트렌드 쿼리에 대응하는 아이템 페이지로부터의 애스펙트를 식별하는 것 - 상기 애스펙트는 상기 데이터베이스 내에 데이터로서 저장됨 - 과,
상기 트렌드 쿼리의 각각에 대한 쿼리 노드를 생성하는 것 - 상기 쿼리 노드는 그래프에 포함됨 - 과,
상기 아이템 페이지로부터의 상기 애스펙트의 각각에 대한 리프 노드를 생성하는 것과,
상기 트렌드 쿼리의 각각에 대한 상기 쿼리 노드와 상기 리프 노드 사이에 연결(connections)을 생성하는 것과,
다양한 애스펙트를 포함하는 목적지 페이지를 생성하는 것 - 상기 목적지 페이지의 생성은 생성된 상기 그래프에 기초함 - 을 포함하는
기계-판독 가능 매체.
21. 기계의 하나 이상의 프로세서에 의해 실행될 때, 상기 기계로 하여금 예 11 내지 19 중 어느 한 예의 방법을 수행하게 하는 명령어를 포함하는 기계 판독 가능 매체.
표현
본 명세서에서, 복수의 인스턴스(instance)는 단일 인스턴스로 설명된 컴포넌트, 동작 또는 스트럭처를 구현할 수 있다. 하나 이상의 방법의 개별적인 동작이 별개의 동작으로 도시되고 설명되지만, 하나 이상의 개별적인 동작은 동시에 수행될 수 있고, 동작은 도시된 순서대로 수행될 필요는 없다. 예시적인 구성에서 별개의 컴포넌트로서 제시된 스트럭처 및 기능은 결합된 스트럭처 또는 컴포넌트로 구현될 수 있다. 유사하게, 단일 컴포넌트로서 제시된 스트럭처 및 기능은 별개의 컴포넌트로서 구현될 수 있다. 이들 및 다른 변형, 수정, 추가 및 개선은 본 명세서의 주제의 범위 내에 있다.
본 발명의 주제에 대한 개요가 특정 예시적인 실시예를 참조하여 설명되었지만, 본 발명의 보다 넓은 범위를 벗어나지 않으면서 이러한 실시예에 대한 다양한 수정 및 변경이 이루어질 수 있다. 본 발명의 주제의 이러한 실시예는 본 명세서에서, 실제로 둘 이상이 개시된 경우에, 어떤 단일한 개시 또는 발명으로 본 출원의 범위를 자발적으로 제한하지 않도록 의도하며, 개별적으로 또는 집합적으로 단지 편의상 "발명"이라는 용어로 지칭될 수 있다.
본 명세서에 설명된 실시예는 당업자가 개시된 교시를 실시할 수 있도록 충분히 상세하게 설명된다. 본 개시의 범위를 벗어나지 않고 구조적이고 논리적인 대체 및 변경이 이루어질 수 있도록 다른 실시예가 사용될 수 있고 이로부터 유도될 수 있다. 따라서, 상세한 설명을 제한적인 의미로 받아들여서는 안되며, 다양한 실시예의 범위는 첨부된 청구 범위와 그러한 청구 범위가 부여되는 등가물의 전체 범위에 의해서만 정의된다.
본 명세서에 사용된 바와 같이, "또는(or)"이라는 용어는 포괄적이거나 배타적인 의미로 해석될 수 있다. 또한, 본 명세서에서 단일 인스턴스로서 설명된 리소스, 동작 또는 스트럭처에 대해 복수의 인스턴스가 제공될 수 있다. 또한, 다양한 리소스, 동작, 모듈, 엔진 및 데이터 저장소 사이의 경계는 다소 임의적이며, 특정 동작은 특정 예시적인 구성과 관련하여 설명된다. 기능의 다른 할당이 계획되고 본 개시의 다양한 실시예의 범위 내에 있을 수 있다. 일반적으로, 예시적인 구성에서 별개의 리소스로 제시된 스트럭처 및 기능은 결합된 스트럭처 또는 리소스로 구현될 수 있다. 유사하게, 단일 리소스로 제시된 스트럭처 및 기능은 별개의 리소스로 구현될 수 있다. 이들 및 다른 변형, 수정, 추가 및 개선은 첨부된 청구 범위에 의해 나타난 본 개시의 실시예의 범위 내에 있다. 따라서, 명세서 및 도면은 제한적인 의미보다는 예시적인 것으로 간주되어야 한다.

Claims (21)

  1. 시스템으로서,
    데이터베이스에 저장된 쿼리 로그(query log)로부터, 적어도 임계 발생 횟수로(a threshold number of instances) 수신되는 것으로 각각 표시되는 트렌드 쿼리를 판정하도록 구성된 판정 모듈 - 상기 트렌드 쿼리는 네트워크 퍼블리케이션 시스템의 사용자에 의해 수행됨 - 과,
    상기 트렌드 쿼리에 대응하는 아이템 페이지를 식별하고, 상기 트렌드 쿼리에 대응하는 아이템 페이지로부터의 애스펙트(aspects)를 식별하도록 구성된 식별 모듈 - 상기 애스펙트는 상기 데이터베이스 내에 데이터로서 저장됨 - 과,
    상기 트렌드 쿼리의 각각에 대한 쿼리 노드 - 상기 쿼리 노드는 그래프에 포함됨 - 를 생성하고, 상기 아이템 페이지로부터의 상기 애스펙트의 각각에 대한 리프 노드를 생성하며, 상기 트렌드 쿼리의 각각에 대한 상기 쿼리 노드와 상기 리프 노드 사이에 연결(connections)을 생성하고, 다양한 애스펙트를 포함하는 목적지 페이지를 생성하도록 구성된 생성 모듈 - 상기 목적지 페이지의 생성은 생성된 상기 그래프에 기초함 - 을 포함하는
    시스템.
  2. 제1항에 있어서,
    상기 식별 모듈은, 또한, 상기 트렌드 쿼리에 의해 생성된 결과로부터 상기 퍼블리케이션 시스템의 사용자에 의해 선택되는 아이템 페이지를 식별하도록 구성되는
    시스템.
  3. 제1항에 있어서,
    상기 생성 모듈은, 또한, 특정 리프 노드와 특정 쿼리 노드 사이에 연결을 생성하도록 구성되고, 상기 특정 리프 노드는 아이템 페이지의 애스펙트를 나타내며, 상기 아이템 페이지는 상기 특정 쿼리 노드에 의해 표현되는 특정 쿼리에 대응하는
    시스템.
  4. 제1항에 있어서,
    상기 식별 모듈은, 또한, 상기 아이템 페이지로부터의 아이템에 대응하는 카테고리를 식별하도록 구성되고,
    상기 생성 모듈은, 또한, 상기 아이템 페이지로부터의 아이템에 대응하는 상기 식별된 카테고리의 각각에 대한 리프 노드를 생성하도록 구성되는
    시스템.
  5. 제1항에 있어서,
    상기 식별 모듈은, 또한, 상기 아이템 페이지로부터의 상기 아이템의 특징(features)을 식별하도록 구성되고,
    상기 생성 모듈은, 또한, 상기 아이템 페이지로부터의 상기 아이템의 상기 식별된 특징의 각각에 대한 리프 노드를 생성하도록 구성되는
    시스템.
  6. 제1항에 있어서,
    상기 식별 모듈은, 또한, 상기 트렌드 쿼리로부터 제1 쿼리 및 제2 쿼리를 식별하도록 구성되고 - 상기 제1 쿼리 및 상기 제2 쿼리는 적어도 임계 발생 횟수로 연속적으로 수신되는 것으로 표시됨 - ,
    상기 생성 모듈은, 또한, 상기 제1 쿼리 및 상기 제2 쿼리의 식별에 기초하여 상기 트렌드 쿼리의 각각에 대한 상기 쿼리 노드들 사이에 연결을 생성하도록 구성되는
    시스템.
  7. 제1항에 있어서,
    상기 생성 모듈은, 또한, 상기 트렌드 쿼리에 대응하는 상기 아이템 페이지의 각각에 대한 노드를 생성하고, 상기 아이템 페이지의 각각에 대한 상기 노드와 상기 트렌드 쿼리의 각각에 대한 상기 쿼리 노드 사이에 연결을 생성하는
    시스템.
  8. 제1항에 있어서,
    클라이언트 장치로부터, 상기 생성된 그래프로부터의 쿼리 노드들 중 하나와 매칭되는 쿼리를 수신하도록 구성된 수신 모듈을 더 포함하며,
    상기 식별 모듈은, 또한, 상기 생성된 그래프를 사용하여, 상기 클라이언트 장치로부터 수신된 상기 쿼리에 매칭되는 특정 쿼리 노드를 식별하도록 구성되는
    시스템.
  9. 제8항에 있어서,
    상기 다양한 애스펙트를 포함하는 상기 목적지 페이지를 상기 클라이언트 장치 상에 디스플레이하는 디스플레이 모듈을 더 포함하되, 상기 목적지 페이지는 상기 생성된 그래프로부터의 상기 특정 쿼리 노드에 대응하고, 상기 다양한 애스펙트는 상기 생성된 그래프로부터의 상기 특정 쿼리 노드에 연결되는 리프 노드에 대응하며, 상기 목적지 페이지는 상기 특정 쿼리 노드에 의해 표현된 트렌드 쿼리에 대응하는 아이템 페이지를 디스플레이하도록 선택가능한 링크를 포함하는
    시스템.
  10. 제8항에 있어서,
    상기 수신 모듈은, 또한, 상기 퍼블리케이션 시스템의 사용자에 의해 작동되는 장치로부터 상기 트렌드 쿼리를 수신하도록 구성되는
    시스템.
  11. 컴퓨터로 구현되는 방법으로서,
    데이터베이스에 저장된 쿼리 로그로부터, 적어도 임계 발생 횟수로 수신되는 것으로 각각 표시되는 트렌드 쿼리를 판정하는 단계 - 상기 트렌드 쿼리는 네트워크 퍼블리케이션 시스템의 사용자에 의해 수행됨 - 와,
    상기 트렌드 쿼리에 대응하는 아이템 페이지를 식별하는 단계와,
    상기 트렌드 쿼리에 대응하는 아이템 페이지로부터 애스펙트를 식별하는 단계 - 상기 애스펙트는 상기 데이터베이스 내에 데이터로서 저장됨 - 와,
    상기 트렌드 쿼리의 각각에 대한 쿼리 노드를 생성하는 단계 - 상기 쿼리 노드는 그래프에 포함됨 - 와,
    상기 아이템 페이지로부터 상기 애스펙트의 각각에 대한 리프 노드를 생성하는 단계와,
    상기 트렌드 쿼리의 각각에 대한 상기 쿼리 노드와 상기 리프 노드 사이에 연결(connections)을 생성하는 단계와,
    다양한 애스펙트를 포함하는 목적지 페이지를 생성하는 단계 - 상기 목적지 페이지의 생성은 생성된 상기 그래프에 기초함 - 를 포함하는
    컴퓨터로 구현된 방법.
  12. 제11항에 있어서,
    상기 트렌드 쿼리에 대응하는 아이템 페이지를 식별하는 단계는, 상기 트렌드 쿼리에 의해 생성된 결과로부터 상기 퍼블리케이션 시스템의 사용자에 의해 선택되는 아이템 페이지를 식별하는 단계를 포함하는
    방법.
  13. 제11항에 있어서,
    상기 트렌드 쿼리의 각각에 대한 상기 쿼리 노드와 상기 리프 노드 사이에 연결을 생성하는 단계는, 특정 리프 노드와 특정 쿼리 노드 사이에 연결을 생성하는 단계를 포함하되, 상기 특정 리프 노드는 아이템 페이지의 애스펙트를 나타내고, 상기 아이템 페이지는 상기 특정 쿼리 노드에 의해 표현되는 특정 쿼리에 대응하는
    방법.
  14. 제11항에 있어서,
    상기 애스펙트를 식별하는 단계는 상기 아이템 페이지로부터의 아이템에 대응하는 카테고리를 식별하는 단계를 포함하고,
    상기 리프 노드를 생성하는 단계는 상기 아이템 페이지로부터의 상기 아이템에 대응하는 상기 식별된 카테고리의 각각에 대한 리프 노드를 생성하는 단계를 포함하는
    방법.
  15. 제11항에 있어서,
    상기 애스펙트를 식별하는 단계는 상기 아이템 페이지로부터의 상기 아이템의 특징을 식별하는 단계와,
    상기 리프 노드를 생성하는 단계는 상기 아이템 페이지로부터의 상기 아이템의 식별된 특징의 각각에 대한 리프 노드를 생성하는 단계를 포함하는
    방법.
  16. 제11항에 있어서,
    상기 트렌드 쿼리로부터 제1 쿼리 및 제2 쿼리를 식별하는 단계 - 상기 제1 쿼리 및 상기 제2 쿼리는 적어도 임계 발생 횟수로 연속적으로 수신되는 것으로 표시됨 - 와,
    상기 제1 쿼리 및 상기 제2 쿼리의 식별에 기초하여 상기 트렌드 쿼리의 각각에 대한 상기 쿼리 노드들 사이의 연결을 생성하는 단계를 더 포함하는
    방법.
  17. 제11항에 있어서,
    상기 트렌드 쿼리에 대응하는 상기 아이템 페이지의 각각에 대한 노드를 생성하는 단계와,
    상기 아이템 페이지의 각각에 대한 상기 노드와 상기 트렌드 쿼리의 각각에 대한 상기 쿼리 노드 사이에 연결을 생성하는 단계를 더 포함하는
    방법.
  18. 제11항에 있어서,
    클라이언트 장치로부터, 상기 생성된 그래프의 쿼리 노드들 중 하나와 매칭되는 쿼리를 수신하는 단계와,
    상기 생성된 그래프를 사용하여, 상기 클라이언트 장치로부터 수신된 상기 쿼리와 매칭되는 특정 쿼리 노드를 식별하는 단계와,
    상기 다양한 애스펙트를 포함하는 상기 목적지 페이지를 상기 클라이언트 장치 상에 디스플레이하는 단계 - 상기 목적지 페이지는 상기 생성된 그래프로부터의 상기 특정 쿼리 노드에 대응하고, 상기 다양한 애스펙트는 상기 생성된 그래프로부터의 상기 특정 쿼리 노드에 연결되는 리프 노드에 대응함 - 를 더 포함하는
    방법.
  19. 제18항에 있어서,
    상기 목적지 페이지는 상기 특정 쿼리 노드에 의해 표현된 트렌드 쿼리에 대응하는 아이템 페이지를 디스플레이하도록 선택가능한 링크를 포함하는
    방법.
  20. 삭제
  21. 머신의 하나 이상의 프로세서에 의해 실행될 때, 상기 머신으로 하여금 제11항 내지 제19항 중 어느 한 항의 방법을 수행하게 하는 명령어가 저장되어 있는 머신 판독 가능 저장 매체.
KR1020187012394A 2015-10-01 2016-09-28 개념 그래프 생성하기 KR102014859B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/873,099 2015-10-01
US14/873,099 US10157240B2 (en) 2015-10-01 2015-10-01 Systems and methods to generate a concept graph
PCT/US2016/054216 WO2017058939A1 (en) 2015-10-01 2016-09-28 Generating a concept graph

Publications (2)

Publication Number Publication Date
KR20180061329A KR20180061329A (ko) 2018-06-07
KR102014859B1 true KR102014859B1 (ko) 2019-08-27

Family

ID=58424570

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187012394A KR102014859B1 (ko) 2015-10-01 2016-09-28 개념 그래프 생성하기

Country Status (4)

Country Link
US (1) US10157240B2 (ko)
KR (1) KR102014859B1 (ko)
CN (2) CN108292318B (ko)
WO (1) WO2017058939A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108256070B (zh) * 2018-01-17 2022-07-15 北京百度网讯科技有限公司 用于生成信息的方法和装置
JP2022549671A (ja) * 2019-09-25 2022-11-28 コモンウェルス サイエンティフィック アンド インダストリアル リサーチ オーガナイゼーション ブラウザアプリケーション用の暗号化サービス

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2302254C (en) 1997-09-29 2006-10-24 International Business Machines Corporation Method and system for prefetching information
US20140040285A1 (en) 2010-04-19 2014-02-06 Facebook, Inc. Generating Default Search Queries on Online Social Networks

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2004240244A1 (en) 1995-10-31 2005-01-27 Frederick S. M. Herz System for Customized Electronic Identification of Desirable Objects
US6978264B2 (en) * 2002-01-03 2005-12-20 Microsoft Corporation System and method for performing a search and a browse on a query
JP4363868B2 (ja) * 2002-08-23 2009-11-11 株式会社東芝 検索キーワード分析プログラム及びシステム並びに方法
US20040181517A1 (en) * 2003-03-13 2004-09-16 Younghee Jung System and method for social interaction
CN100485603C (zh) * 2003-04-04 2009-05-06 雅虎公司 用于从搜索查询中产生概念单元的系统和方法
US7146352B2 (en) * 2003-06-23 2006-12-05 Microsoft Corporation Query optimizer system and method
JP2012504814A (ja) * 2008-10-03 2012-02-23 アダプティブ コンピューティング エンタープライジズ インク データセントリック検索の動的管理のためのシステムおよび方法
US9092485B2 (en) * 2010-04-19 2015-07-28 Facebook, Inc. Dynamic suggested search queries on online social networks
US8316019B1 (en) * 2010-06-23 2012-11-20 Google Inc. Personalized query suggestions from profile trees
US20120030164A1 (en) * 2010-07-27 2012-02-02 Oracle International Corporation Method and system for gathering and usage of live search trends
US8631414B2 (en) * 2010-09-15 2014-01-14 Qualcomm Incorporated Distributed resource management in a portable computing device
CN104866474B (zh) * 2014-02-20 2018-10-09 阿里巴巴集团控股有限公司 个性化数据搜索方法及装置
CN103853831B (zh) * 2014-03-10 2017-02-01 中国电子科技集团公司第二十八研究所 一种基于用户兴趣的个性化搜索实现方法
US9805142B2 (en) * 2014-04-11 2017-10-31 Google Inc. Ranking suggestions based on user attributes
CN104331493B (zh) * 2014-11-17 2017-07-07 百度在线网络技术(北京)有限公司 通过计算机实现的用于生成趋势解释数据的方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2302254C (en) 1997-09-29 2006-10-24 International Business Machines Corporation Method and system for prefetching information
US20140040285A1 (en) 2010-04-19 2014-02-06 Facebook, Inc. Generating Default Search Queries on Online Social Networks

Also Published As

Publication number Publication date
KR20180061329A (ko) 2018-06-07
CN113779354A (zh) 2021-12-10
US10157240B2 (en) 2018-12-18
WO2017058939A1 (en) 2017-04-06
CN108292318B (zh) 2021-08-10
US20170098011A1 (en) 2017-04-06
CN108292318A (zh) 2018-07-17

Similar Documents

Publication Publication Date Title
US11836776B2 (en) Detecting cross-lingual comparable listings
US20170193544A1 (en) Modification of content according to user engagement
US20170372398A1 (en) Vector representation of descriptions and queries
US11681768B2 (en) Search and notification in response to a request
US11907938B2 (en) Redirecting to a trusted device for secured data transmission
US11556506B2 (en) Consistent schema-less scalable storage system for orders
US11954723B2 (en) Replaced device handler
WO2016168663A1 (en) Web barcode scanner
KR102014859B1 (ko) 개념 그래프 생성하기
US20160335312A1 (en) Updating asset references
KR20190077123A (ko) 상품 특징을 도시하는 발견 페이지 생성 기법
US20160314513A1 (en) Automatic negotiation using real time messaging
US10769695B2 (en) Generating titles for a structured browse page

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant