KR20180017182A - 자동화된 정보 검색 - Google Patents

자동화된 정보 검색 Download PDF

Info

Publication number
KR20180017182A
KR20180017182A KR1020187001280A KR20187001280A KR20180017182A KR 20180017182 A KR20180017182 A KR 20180017182A KR 1020187001280 A KR1020187001280 A KR 1020187001280A KR 20187001280 A KR20187001280 A KR 20187001280A KR 20180017182 A KR20180017182 A KR 20180017182A
Authority
KR
South Korea
Prior art keywords
web
scores
content
deep
similarity
Prior art date
Application number
KR1020187001280A
Other languages
English (en)
Other versions
KR102091225B1 (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 KR20180017182A publication Critical patent/KR20180017182A/ko
Application granted granted Critical
Publication of KR102091225B1 publication Critical patent/KR102091225B1/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/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results
    • G06F17/30867
    • 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
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24575Query processing with adaptation to user needs using context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation 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/951Indexing; Web crawling techniques
    • G06F17/30528
    • G06F17/3053
    • G06F17/30554

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

컴퓨터 저장 매체 상에 인코딩된 컴퓨터 프로그램을 포함하는, 자동화된 정보 검색을 위한 방법, 시스템 및 디바이스는, 웹 리소스들의 개별 세트에 대한 관련성 점수들(relevance scores)을 수신하는 단계, 각각의 관련성 점수는 검색 쿼리에 대응하는 웹 리소스의 관련성을 나타내며; 상기 웹 리소스들의 세트의 각각의 웹 리소스에 대하여, 복수의 유사성 점수들(similarity scores)을 획득하는 단계, 웹 리소스에 대한 각각의 유사성 점수는, 네이티브 어플리케이션에 대한 각각의 딥링크(deeplink)에 의해서 참조되는 각각의 콘텐츠와 상기 웹 리소스 사이의 유사성을 나타내며; 상기 딥링크들 각각에 대해, 상기 딥링크에 의해 참조되는 콘텐츠와 상기 웹 리소스들 사이의 상기 유사성 점수들 각각과 상기 웹 리소스들에 대한 상기 관련성 점수들 각각에 기초하여, 상기 딥링크에 의해 참조되는 콘텐츠에 대한 각각의 품질 점수를 생성하는 단계; 임계 품질 점수를 충족시키는 각각의 품질 점수를 갖는, 콘텐츠를 참조하는 딥링크들을 선택하는 단계; 및 상기 검색 쿼리에 응답하여, 대응하는 웹 리소스를 각각 참조하는 복수의 웹 검색 결과들과 함께 상기 선택된 딥링크들을 사용자 디바이스에 제공하는 단계를 포함한다.

Description

자동화된 정보 검색
인터넷은 다양한 정보에 대한 액세스를 제공한다. 예를 들어, 디지털 이미지 파일, 비디오 및/또는 오디오 파일, 특정 주제 또는 특정 뉴스 기사의 웹 페이지 리소스R가 인터넷을 통해 액세스될 수 있다. 웹 페이지 리소스와 관련하여 이들 리소스들 중 많은 것들은, 뱅킹, 호텔 예약, 쇼핑 등과 같은 특정 기능의 수행을 용이하게 하도록 설계되거나 혹은 온라인 백과 사전, 영화 데이터베이스, 기타 등등과 같은 구조화된 정보를 제공하도록 설계된다. 검색 엔진들은 이들 리소스들을 크롤링하고 인덱싱하여 리소스 검색을 용이하게 한다.
또한, 태블릿 컴퓨터 및 스마트 폰의 출현으로, 웹 페이지 리소스의 사용에 의해 촉진되는 동일한 기능들의 수행을 용이하게 하는 네이티브 어플리케이션들이 현재 많이 제공되고 있다. 또한, 게임과 같이 콘텐츠가 비슷한 웹 사이트가 없는 네이티브 어플리케이션들이 태블릿 컴퓨터 및 스마트 폰에서 널리 사용된다. 따라서, 검색 엔진은 이제 이러한 네이티브 어플리케이션들에 대한 검색을 용이하게 한다.
검색 엔진이 네이티브 어플리케이션에 대한 정보를 수집하는 프로세스 중 하나는 네이티브 어플리케이션에 대한 "딥링크(deeplinks)"에 액세스하는 것이다. 딥링크(deeplink)는 네이티브 어플리케이션의 특정 환경 인스턴스를 지정하는 명령이며, 그리고 사용자 디바이스에서 선택될 때 특정 네이티브 어플리케이션의 환경 인스턴스를 네이티브 어플리케이션이 인스턴스화하도록 구성될 수 있다. 네이티브 어플리케이션은 사용자 디바이스 상의 네이티브 어플리케이션 내에 디스플레이하기 위한 환경 인스턴스를 생성한다. 예를 들어, 딥링크(deeplink)는 특정 네이티브 어플리케이션, 네이티브 어플리케이션이 액세스할 리소스 콘텐츠 및 딥링크의 사용에 의하여 네이티브 어플리케이션이 론칭될 때 인스턴스화되어야 하는 특정한 사용자 인터페이스를 지정하는 URI 일 수 있다.
이제, 검색 엔진은 또한 이들 네이티브 어플리케이션의 검색을 용이하게 한다. 따라서, 사용자의 정보 요구는, 네이티브 어플리케이션을 기술하는 특정 웹 페이지 리소스 및 네이티브 어플리케이션 자체에 대한 검색 결과 중 어느 하나(또는 이들 둘 다)를 식별하는 검색 결과를 제공하는 검색 엔진에 의해 충족될 수 있다.
일반적으로, 본 명세서는 자동화된 정보 검색을 위한 시스템과 방법을 서술한다. 상기 시스템 및 방법은 네이티브 어플리케이션들 내의 콘텐츠를 스코어링하는 것을 포함하며, 따라서 네이티브 어플리케이션들이 대응 웹 페이지들을 갖지 않는 경우에도, 네이티브 어플리케이션들에 관련된 하나 이상의 검색 결과들이, 쿼리에 응답하여 제공되는 검색 결과들에 포함될 수 있게 한다. 따라서, 본 시스템 및 방법은 향상된 서치 및 검색을 제공한다.
일반적으로, 본 명세서에 서술된 본 발명의 혁신적인 양태 중 하나는 방법들로 구현될 수 있으며 상기 방법은 웹 리소스들의 개별 세트에 대한 관련성 점수들(relevance scores)을 수신하는 단계, 각각의 관련성 점수는 검색 쿼리에 대응하는 웹 리소스의 관련성을 나타내며; 상기 웹 리소스들의 세트의 각각의 웹 리소스에 대하여, 복수의 유사성 점수들(similarity scores)을 획득하는 단계, 웹 리소스에 대한 각각의 유사성 점수는, 네이티브 어플리케이션에 대한 각각의 딥링크(deeplink)에 의해서 참조되는 각각의 콘텐츠와 상기 웹 리소스 사이의 유사성을 나타내며; 상기 딥링크들 각각에 대해, 상기 딥링크에 의해 참조되는 콘텐츠와 상기 웹 리소스들 사이의 상기 유사성 점수들 각각과 상기 웹 리소스들에 대한 상기 관련성 점수들 각각에 기초하여, 상기 딥링크에 의해 참조되는 콘텐츠에 대한 각각의 품질 점수를 생성하는 단계; 임계 품질 점수를 충족시키는 각각의 품질 점수를 갖는, 콘텐츠를 참조하는 딥링크들을 선택하는 단계; 및 상기 검색 쿼리에 응답하여, 대응하는 웹 리소스를 각각 참조하는 복수의 웹 검색 결과들과 함께 상기 선택된 딥링크들을 사용자 디바이스에 제공하는 단계를 포함한다.
구현예들은, 다음의 특징들 중 하나 이상을 포함할 수 있다. 복수의 유사성 점수들을 획득하기 전에: 각각의 웹 리소스에 대해, 상기 콘텐츠 및 상기 웹 리소스로부터 상기 웹 리소스에 대한 상기 복수의 유사성 점수들을 생성한다. 복수의 유사성 점수들을 생성하는 단계는, n-gram Jaccard similarity, 최소 해시(minimum hash), 또는 상기 복수의 유사성 점수들에 대한 로컬티-민감성 해시(locality-sensitive hashing) 중 하나 이상에 기초한다. 상기 딥링크들 각각에 대해, 상기 딥링크에 의해 참조되는 콘텐츠에 대한 각각의 품질 점수를 생성하는 단계는, 각각의 웹 리소스에 대해, 상기 딥링크에 의해 참조되는 콘텐츠와 상기 웹 리소스 사이의 상기 유사성 점수 각각과 상기 웹 리소스에 대한 상기 관련성 점수 각각의 곱(product)을 각각 계산하는 단계; 및 각각의 품질 점수를 생성하도록 상기 각각의 곱을 합산하는 단계를 포함한다. 각각의 네이티브 어플리케이션에 대한 각각의 딥링크는, 상기 각 네이티브 어플리케이션의 특정한 환경 인스턴스를 지정하고 그리고 사용자 디바이스에서 선택될 때, 상기 각각의 네이티브 어플리케이션으로 하여금, 딥링크에서 참조되는 콘텐츠가 디스플레이되는 각각의 네이티브 어플리케이션의 인스턴스를 인스턴스화하게 한다. 각각의 웹 리소스에 대한 각각의 관련성 점수는, 검색 엔진에 의해 순위가 매겨진(ranked) 웹 리소스들의 리스트에 있는 웹 리소스 각각의 순위(rank)에 기초한다. 임계 품질 점수를 충족시키는 각각의 품질 점수를 갖는, 콘텐츠를 참조하는 딥링크들을 선택하는 단계는, 상기 임계 품질 점수를 충족시키는 품질 점수를 갖는, 콘텐츠를 참조하는 딥링크들을 최대 개수까지 선택하는 것을 포함한다. 복수의 웹 검색 결과들과 함께 복수의 딥링크들을 사용자 디바이스에 제공하는 단계는, 웹 검색 결과들 및 딥링크들의 순위가 매겨진 하나의 리스트를 사용자 디바이스에 제공하는 단계를 포함한다. 웹 검색 결과들 및 딥링크들의 순위가 매겨진 리스트를 사용자 디바이스에 제공하는 단계는, 각각의 딥링크에 대해, 상기 딥링크에 대한 정규화된 관련성 점수를 생성하도록, 웹 검색 결과들에 대한 각각의 관련성 점수들에 대하여 상기 딥링크에 대한 상기 품질 점수 각각을 정규화하는 단계; 웹 검색 결과들 및 딥링크들의 순위가 매겨진 리스트를 생성하도록, 상기 관련성 점수들 및 상기 정규화된 관련성 점수들에 기초하여 상기 웹 검색 결과들 및 딥링크들의 순위를 매기는(ranking) 단계; 및 상기 웹 검색 결과들 및 딥링크들의 순위가 매겨진 리스트를 사용자 디바이스에 제공하는 단계를 포함한다. 각각의 딥링크에 의해 참조되는 각각의 콘텐츠는 웹 리소스가 아니다.
본 명세서에 기술된 본 발명의 주제에 대한 특정 실시예는 다음의 이점들 중 하나 이상을 실현하도록 구현될 수 있다. 일부 네이티브 어플리케이션은 상기 네이티브 어플리케이션에 대응하는 웹 페이지들을 갖고 있지 않다. 시스템은, 기본 메트릭(base metric)으로 사용할 기존의 대응 웹 페이지들의 관련성 점수들을 갖고 있지 않음에도 불구하고, 대응 웹 및/또는 콘텐츠 페이지들이 없이 이러한 네이티브 어플리케이션들의 순위를 매길 수 있다.
대응 웹 페이지들(예컨대, 모바일 앱)를 갖거나 갖지 않는, 네이티브 어플리케이션 내의 특정 위치에 대한 링크를 포함하는 검색 결과들은, 다른 검색 결과들(예컨대, 웹 페이지들에 대한 검색 결과들)과 함께 순위가 매겨질 수 있으며, 따라서 관련성이 더 많은 리소스들(앱 혹은 웹 페이지)이 더 높은 순위를 갖는다. 어플리케이션들 내의 위치들로 링크되는 검색 결과들을 이와 같이 포함시키는 것은, 추가적인 검색 결과 옵션들을 제공하며, 이는 사용자의 정보 요구를 보다 잘 충족시킬 수 있다.
본 명세서에 서술된 본 발명의 주제에 대한 하나 이상의 실시예들의 세부 사항은 첨부된 도면 및 이하의 설명에서 설명된다. 본 발명의 주제의 다른 피처들, 양상들, 및 장점들은 상세한 설명, 도면 및 청구 범위로부터 명백해질 것이다.
도 1은 네이티브 어플리케이션의 검색 및 랭킹(ranking)이 발생하는 예시적인 환경의 블록도이다.
도 2a는 네이티브 어플리케이션들 내의 콘텐츠와 웹 리소스들 사이의 유사성 점수들을 생성하기 위한 예시적인 방법의 흐름도이다.
도 2b는 네이티브 어플리케이션 내의 콘텐츠를 스코어링하는 예시적인 방법의 흐름도이다.
도 3은 네이티브 어플리케이션 내의 스코어링 콘텐츠를 도시한 도면이다.
도 4는 웹 검색 결과와 함께 제공된 네이티브 어플리케이션 검색 결과를 도시 한다.
다양한 도면들에서 유사한 참조 번호 및 명칭은 동일한 요소를 나타낸다.
시스템은 해당 웹 페이지들을 갖지 않는 네이티브 어플리케이션들 내의 콘텐츠에 점수를 부여한다. 즉, 네이티브 어플리케이션은 웹 브라우저를 통해 웹 리소스(예컨대, 웹 페이지)에서 액세스할 수 없는 콘텐츠를 디스플레이할 수 있다. 네이티브 어플리케이션 내의 콘텐츠는 그 콘텐츠와 유사한 웹 리소스들에 기초하여 스코어링될 수 있으며, 이에 대해서는 이하에서 더 설명될 것이다.
본 명세서에서, 네이티브 어플리케이션은 네이티브 어플리케이션의 환경 내에서 사용자 디바이스 상에 디스플레이하기 위한 환경 인스턴스들을 생성하고, 그리고 사용자 디바이스 상의 브라우저 어플리케이션과 독립적으로 동작한다. 네이티브 어플리케이션은 특정한 사용자 디바이스 운영 체제 및 머신 펌웨어에서 구동되도록 특별히 설계된 어플리케이션이다. 따라서, 네이티브 어플리케이션은 브라우저-기반 어플리케이션 및 브라우저-렌더링된 리소스들과 다르다. 후자는, 인스턴스화되거나 렌더링될 때마다 모든 혹은 적어도 일부의 요소들 혹은 명령들이 웹 서버로부터 다운로드될 것을 요구한다. 또한, 브라우저-기반 어플리케이션 및 브라우저-렌더링된 리소스는, 브라우저에서 모든 웹 가능 모바일 디바이스들에 의해서 프로세싱될 수 있으며 따라서 운영 체제별로 특정한 것이 아니다.
웹 검색 결과들과 함께 네이티브 어플리케이션 검색 결과들을 포함하도록 검색이 트리거링되면, 네이티브 어플리케이션 인덱스가 네이티브 어플리케이션들에 대해서 검색되고 그리고 네이티브 어플리케이션들이 스코어링된다. 다양한 스코어링 신호들이 사용될 수 있는바, 네이티브 어플리케이션의 인덱스된 콘텐츠, 네이티브 어플리케이션의 사용자 레이팅(user ratings), 어플리케이션 인덱스의 검색들을 위해 수신된 쿼리들(queries) 대한 쿼리 인기도, 기타 등등을 포함할 수 있다. 네이티브 어플리케이션들은, 쿼리에 응답하여 일단 점수가 매겨지면, 다음과 같이 순위가 정해지며, 그리고 하나 이상의 네이티브 어플리케이션 검색 결과들이 쿼리에 응답하여 사용자 디바이스에 제공될 수 있다.
네이티브 어플리케이션 검색 결과가 제공되는지의 여부와, 만일 제공된다면, 다른 검색 결과들에 대한 네이티브 어플리케이션 검색 결과의 위치는, 하나 이상의 필터링 기준 및 랭킹 기준에 기초하여 결정된다. 필터링 기준 및 랭킹 기준은 다른 리소스에 대한 네이티브 어플리케이션을 기술하는 대응 리소스의 랭킹, 네이티브 어플리케이션들의 점수들 및 다른 팩터들을 포함할 수 있다.
이들 특징 및 다른 특징은 하기에서 보다 상세하게 설명된다.
도 1은 네이티브 어플리케이션들의 검색 및 랭킹(ranking)이 발생하는 예시적인 환경(100)의 블록도이다. 인터넷과 같은 컴퓨터 네트워크(102)는 리소스 공개자 웹사이트(resource publisher websites)(104), 어플리케이션 공개자(publisher)(106), 사용자 디바이스(108) 및 검색 엔진(120)을 연결한다.
리소스 공개가 웹사이트(104)는 도메인과 관련된 하나 이상의 웹 리소스들(105)을 포함하고 하나 이상의 위치에 있는 하나 이상의 서버에 의해 호스팅된다. 일반적으로 리소스 공개자 웹사이트는 텍스트, 이미지, 멀티미디어 콘텐츠 및 프로그래밍 요소를 포함할 수 있는 HTML(Hypertext Markup Language) 형식의 웹 페이지들의 모음이다. 각각의 웹 사이트(104)는 콘텐츠 공개자에 의해 유지되는바, 콘텐츠 공개자는 웹 사이트(104)를 제어, 관리 및/또는 소유하는 엔티티이다.
웹 페이지 리소스는 네트워크(102)를 통해 공개자 웹 사이트(104)에 의해 제공될 수 있고 그리고 리소스 어드레스, 예를 들어 URL(uniform resource locator)을 갖는 임의의 데이터이다. 웹 리소스들은 HTML 페이지, 이미지 파일, 비디오 파일, 오디오 파일 및 피드 소스, 기타 등등일 수 있다. 리소스는 임베딩된 정보(예를 들어, 메타 정보 및 하이퍼 링크), 및/또는 임베디드된 명령(예컨대, 클라이언트-측 스크립트)을 포함할 수 있다. 보다 일반적으로 "리소스"은 네트워크를 통해 식별할 수 있는 임의의 것이며 그리고 네이티브 어플리케이션도 포함할 수 있다.
또한, 어플리케이션 공개자 웹 사이트(106)는 하나 이상의 웹 리소스(105)를 포함할 수 있고, 네이티브 어플리케이션(107)도 제공할 수 있다. 상술한 바와 같이, 네이티브 어플리케이션(107)은 특정한 사용자 디바이스 운영 체제 및 머신 펌웨어 상에서 구동하도록 특별히 설계된 어플리케이션이다. 네이티브 어플리케이션(107)은 상이한 플랫폼 상에서 동작하도록 설계된 다수의 버전들을 포함할 수 있다. 예를 들어, 영화 데이터베이스 웹 사이트에 대응하는 네이티브 어플리케이션은, 제 1 유형의 스마트 폰에서 구동되는 제 1 네이티브 어플리케이션, 제 2 유형의 스마트 폰에서 구동되는 제 2 네이티브 어플리케이션, 제 1 유형의 테블릿에서 구동되는 제 3 네이티브 어플리케이션, 등등을 포함할 수 있다.
본 명세서에서 사용되는 바와 같이, "환경 인스턴스(environment instance)"는 네이티브 어플리케이션 내의 디스플레이 환경이고, 그리고 환경 인스턴스에서 텍스트, 이미지 등과 같은 콘텐츠가 디스플레이된다. 환경 인스턴스는 특정 네이티브 어플리케이션에 특화된 것이며, 그리고 네이티브 어플리케이션은 사용자 디바이스(108)의 특정 운영 체제에 특화된 것이다. 환경 인스턴스는 렌더링된 웹 리소스와는 다른데, 환경 인스턴스는 네이티브 환경 내에서 생성되고 네이티브 환경에 특화된 것인 반면에, 웹 리소스는 웹 페이지 리소스와 호환가능한 임의의 브라우저에서 렌더링될 수 있으며 사용자 디바이스의 운영 시스템과 독립적이라는 점에서, 환경 인스턴스와 렌더링된 웹 리소스는 서로 다르다.
사용자 디바이스(108)는 사용자의 제어하에 있는 전자 디바이스이다. 전형적으로, 사용자 디바이스(108)는 네트워크(102)를 통해 웹 페이지 리소스(104) 및 네이티브 어플리케이션(107)을 요청하고 수신할 수 있다. 예시적인 사용자 디바이스(108)는 퍼스널 컴퓨터, 이동 통신 디바이스 및 태블릿 컴퓨터를 포함한다.
웹 리소스들(105) 및 네이티브 어플리케이션(107)을 검색하기 위하여, 검색 엔진(120)은 웹 인덱스(116) 및 어플리케이션 인덱스(114)에 액세스한다. 웹 인덱스(116)는 예를 들어, 공개자 웹사이트들(107)을 크롤링(crawling)함으로써 수립된 웹 리소스들(105)의 인덱스이다. 어플리케이션 인덱스(114)는 네이티브 어플리케이션들(107)에 대한 어플리케이션 페이지들의 인덱스이고, 그리고 어플리케이션 데이터 추출기, 프로세서(110) 및 인덱서(112)를 사용하여 구성된다. 별도의 인덱스들로 도시되어 있지만, 웹 인덱스(116) 및 어플리케이션 인덱스(114)는 하나의 인덱스로 결합될 수 있다.
사용자 디바이스(108)는 검색 쿼리들을 검색 엔진(120)에 제출한다. 각각의 쿼리에 응답하여, 검색 엔진(120)은 웹 인덱스(116) 및 선택적으로는 어플리케이션 인덱스(114)에 액세스하여, 상기 쿼리와 관련성이 있는 리소스들 및 어플리케이션들을 각각 식별한다. 일반적으로, 제 1 검색 알고리즘을 구현하는 제 1 유형의 검색 동작이 이용되어 인덱스(116)를 검색하고, 그리고 제 2의 다른 알고리즘을 구현하는 제 2 유형의 검색 동작이 이용되어 어플리케이션 인덱스(114)를 검색한다. 검색 엔진(120)은 리소스 스코어러(132) 프로세스와 유사성 스코어러(136) 프로세스를 구현하는데, 리소스 스코어러(132)는 웹 리소스들에 대한 관련성 점수들을 생성하고, 유사성 스코어러(136)는 웹 리소스들과 네이티브 어플리케이션들 내의 콘텐츠 사이의 유사성 점수들을 생성한다. 네이티브 어플리케이션들 내의 콘텐츠는 웹 리소스가 아니다. 네이티브 어플리케이션 콘텐츠 스코어러(134) 프로세스는 관련성 및 유사성 점수들에 기초하여 네이티브 어플리케이션들 내의 콘텐츠에 대한 품질 점수를 생성한다. 네이티브 어플리케이션 콘텐츠 스코어러(134)는 도 2 및 도 3을 참조하여 하기에 더 상세히 설명될 것이다. 다양한 적절한 검색 엔진 알고리즘들이 이용되어, 상기 리소스 스코어러(132), 유사성 스코어러(136), 및 네이티브 어플리케이션 콘텐츠 스코어러(134)를 구현할 수 있다.
검색 엔진(120)은 웹 서버 등과 같은 검색 엔진 프론트 엔드(138)를 이용하여, 네이티브 어플리케이션 인덱스(114)를 검색할지 그리고 네이티브 어플리케이션 검색 결과를 사용자 디바이스에 제공할지 여부를 결정한다. 검색 엔진 프론트 엔드(138)는 쿼리가 수신되었던 사용자 디바이스(108)에 검색 결과들을 정렬 및 제공한다.
웹 리소스 검색 결과는 검색 엔진(120)에 의해 생성된 데이터로서, 웹 리소스들을 식별하고 그리고 특정 검색 쿼리를 만족시키는 정보를 제공한다. 리소스에 대한 웹 리소스 검색 결과는 웹 페이지 제목, 리소스로부터 추출된 텍스트의 스니핏 및 리소스에 대한 리소스 로케이터(예를 들어, 웹 페이지의 URL)를 포함할 수 있다. 네이티브 어플리케이션 검색 결과는 네이티브 어플리케이션을 특정하고 그리고 어플리케이션 인덱스(114)에 대한 검색에 응답하여 생성된다. 네이티브 어플리케이션 검색 결과는 네이티브 어플리케이션의 특정 환경 인스턴스를 지정하는 "딥링크(deep link)"를 포함할 수 있으며, 그리고 이는 (선택된 경우) 네이티브 어플리케이션이 지정된 환경 인스턴스를 인스턴스화도록 구성될 수 있다. 예를 들어, 딥링크는 게임 환경에 대한 선택 메뉴; 또는 음악 어플리케이션에 대한 특정 노래의 선택; 또는 요리 어플리케이션에 대한 특정 조리법; 기타 등등을 특정할 수 있다. 예를 들어, 네이티브 어플리케이션 검색 결과의 선택은, 네이티브 어플리케이션을 개시하게 할 수 있으며(사용자 디바이스(108)에 설치된 경우) 그리고 스크린 샷의 형태로 어플리케이션 검색 결과에서 참조되는 환경 인스턴스를 생성할 수 있다. 대안적으로, 네이티브 어플리케이션 검색 결과는, "구매"(또는 "설치") 커맨드를 포함할 수 있는바, 이는 선택되는 경우, 네이티브 어플리케이션이 구매(혹은 무료 다운로드) 및 사용자 디바이스 상에 설치되게 할 수 있다.
네이티브 어플리케이션(107)을 제공하는 공개자(106)는 또한 딥링크(109)를 검색 엔진(120)에 제공할 수 있다. 예를 들어, 어플리케이션 공개자는 딥링크들(109)의 리스트를 URI(uniform resource identifiers) 형태로 제공할 수 있다(또는 공개자에 의해서 공개된 네이티브 어플리케이션에 특화된 다른 명령 유형들로). 이러한 딥링크들은 공개자(106)가 어플리케이션 인덱스(114)에서 크롤링 및 인덱스화되기를 원하는 딥링크이다.
많은 네이티브 어플리케이션(107)들의 경우, 네이티브 어플리케이션들(107)을 서술하는 웹 리소스들(111)이 또한 존재한다. 이러한 리소스(111)의 일례는 온라인 네이티브 어플리케이션 스토어 내의 제품 페이지이다. 제품 페이지는 웹 브라우저를 사용하여 브라우징될 수 있고 웹 인덱스(116)에서 인덱싱될 수 있다. 웹 리소스(111)는 네이티브 어플리케이션의 스크린 샷, 사용자 등급의 설명 등을 포함할 수 있다. 통상적으로, 웹 리소스(111)는 네이티브 어플리케이션에 특화된 웹 페이지이며, 네이티브 어플리케이션의 구매 및/또는 다운로드를 용이하게 하는데 사용된다.
소정의 상황에서, 검색 쿼리 및 대응하는 웹 기반 검색 결과에 따라, 검색 엔진(120)은 웹 페이지 검색 결과들의 세트 내에 네이티브 어플리케이션 검색 결과를 포함시킬 수 있다. 네이티브 어플리케이션 검색 결과는, 예를 들어 네이티브 어플리케이션에 대한 제품 웹 페이지 검색 결과에 상대적인 위치에 삽입되거나, 또는 대안적으로는 제품 웹 페이지 검색 결과를 전부 대체할 수 있다. 이는 도 4을 참조하여 아래에 더 설명된다.
도 2a는 네이티브 어플리케이션들 내의 콘텐츠와 웹 리소스들 사이의 유사성 점수들을 생성하는 예시적인 방법의 흐름도(200)이다. 편의상, 상기 방법(200)은 상기 방법(200)을 구현하기 위해 소프트웨어를 실행하는 하나 이상의 컴퓨팅 디바이스를 갖는 시스템, 예를 들어, 도 1의 검색 엔진(120)과 관련하여 설명될 것이다.
시스템은 웹 리소스들을 수집한다(단계 202). 웹 리소스들은 웹 인덱스, 예컨대도 1의 웹 인덱스(116)로부터 수집될 수 있다.
시스템은 네이티브 어플리케이션들 내의 콘텐츠를 획득한다(단계 204). 일부 구현 예에서, 상기 콘텐츠는 어플리케이션 인덱스 내에서 인덱스화된 네이티브 어플리케이션의 어플리케이션 페이지로부터의 콘텐츠, 예컨대, 도 1의 어플리케이션 인덱스(114)로부터의 콘텐츠이다.
시스템은 콘텐츠와 웹 리소스들 사이의 유사성 점수를 생성한다(단계 206). 상기 시스템은 임의의 적절한 방법을 사용하여 웹 리소스와 각각의 콘텐츠 사이의 유사성 점수들을 생성할 수 있다. 예를 들어, 시스템은 n-gram Jaccard similarity, 최소 해시(minimum hash) 또는 로컬티-민감성 해시(locality-sensitive hashing)를 기반으로 유사성 점수를 생성할 수 있다.
일부 구현예에서, 시스템은 아래와 같은 형태의 출력을 생성한다:
[wd_1, [(nac_1, s_11),(nac_2, s_12),(nac_3, s_13) ...],
wd_2, [(nac_1, s_21),(nac_2, s_22),(nac_3, s_23) ...], ...]
여기서, wd_i(예컨대, wd_1 또는 wd_2)는 웹 문서 i이고, nac_j(예를 들어, nac_1)는 네이티브 어플리케이션 콘텐츠 j이고, s_ij(예를 들어, s_11)는 웹 문서 i와 네이티브 어플리케이션 콘텐츠 j 사이의 유사도 점수이다. 또한, s_ij = similarity(wd_i, nac_j) = similarity(nac_j, wd_i); similarity 는 유사성 점수 s_ij를 계산하는 함수이다.
시스템은 상기 출력을 이용하여 네이티브 어플리케이션 내의 콘텐츠에 대한 품질 점수들을 생성하는데, 이는 도 2a를 참조하여 후술될 것이다.
도 2b는 네이티브 어플리케이션들 내의 콘텐츠를 스코어링하는 예시적인 방법의 흐름도(208)이다. 편의상, 상기 방법(208)은 상기 방법(208)을 구현하기 위해 소프트웨어를 실행하는 하나 이상의 컴퓨팅 디바이스를 갖는 시스템, 예를 들어 도 1의 검색 엔진(120)과 관련하여 설명될 것이다.
시스템은 웹 리소스들의 세트에 대한 관련성 점수들을 수신한다(단계 210). 각각의 웹 리소스는, 웹 리소스와 검색 쿼리 사이의 관련성을 나타내는 관련성 점수를 갖는다.
일부 구현예에서, 관련성 점수는 검색 엔진에 의해 순위가 매겨진 웹 리소스들의 리스트에 있는 웹 리소스의 랭킹에 기초한다. 예를 들어, 관련성 점수는 아래의 수학식 1을 사용하여 계산될 수 있다:
Figure pct00001
(1)
여기서 s는 검색 쿼리에 응답하는 검색 결과들의 리스트에 있는 검색 결과들의 개수이고, r은 검색 결과들의 리스트에 있는 웹 리소스의 랭킹이다.
시스템은 웹 리소스들의 세트 내의 각각의 웹 리소스에 대해, 웹 리소스에 대한 유사성 점수들의 세트를 획득한다(단계 212). 유사성 점수는 도 2a를 참조하여 전술한 바와 같이 출력 벡터로부터 획득될 수도 있다. 웹 리소스에 대한 각 유사성 점수는, 해당 웹 또는 콘텐츠 페이지들이 없는 네이티브 어플리케이션 내의 각 콘텐츠와 웹 리소스 사이의 유사성을 나타낼 수 있다.
각각의 콘텐츠는 네이티브 어플리케이션에 대한 각각의 딥링크(deeplink)에 의해 참조될 수 있다. 각각의 딥링크는 네이티브 어플리케이션의 특정 환경 인스턴스를 지정하고, 그리고 사용자 디바이스에서 선택될 때, 네이티브 어플리케이션으로 하여금 딥링크에서 참조되는 각각의 콘텐츠가 디스플레이되는 각각의 네이티브 어플리케이션의 인스턴스를 인스턴스화하게 한다.
시스템은 딥링크들 각각에 대해, 딥링크에 의해 참조되는 콘텐츠에 대한 각각의 품질 점수를 생성한다(단계 214). 딥링크(deeplink)에 의해 참조되는 콘텐츠에 대한 품질 점수는, 콘텐츠와 웹 리소스들 간의 유사성 점수들 및 웹 리소스의 관련성 점수들로부터 생성될 수 있다. 이에 대해서는 도 3을 참조하여 더 상세하게 설명될 것이다.
시스템은 임계 품질 점수를 충족하는 각각의 품질 점수를 갖는 콘텐츠를 참조하는 딥링크를 선택한다(단계 216). 일부 구현예에서, 시스템은 임계 품질 점수를 만족하는 품질 점수들을 갖는 최대 개수의 딥링크들을 선택한다. 최대 개수는 시스템 관리자가 결정할 수 있다.
시스템은 대응하는 웹 리소스를 각각 참조하는 웹 검색 결과들와 함께 선택된 딥링크들을 사용자 디바이스에 제공한다(단계 218). 검색 쿼리에 응답하여 시스템은 선택된 딥링크들 및 웹 검색 결과들을 사용자 디바이스에 제공할 수 있다. 일 실시예에서, 시스템은 웹 검색 결과들 및 딥링크들의 랭킹 리스트를 사용자 디바이스에 제공할 수 있다.
랭킹된 리스트를 제공하는 일부 구현예에서, 시스템은 각각의 딥링크에 대하여, 웹 검색 결과들에 대한 각각의 관련성 점수들에 대해 딥링크에 대한 각각의 품질 점수를 정규화하여, 딥링크에 대한 정규화된 관련성 점수를 생성한다. 예를 들어, 만일 특정 관련성 점수가 소정의 숫자들의 범위 내의 숫자가 될 수 있다면, 시스템은, 관련성 점수에 대한 상기 숫자들의 범위 내의 비례적인 숫자로 상기 딥링크에 대한 품질 점수를 스케일링할 수 있다(스케일링 계수를 이용하여).
각 딥링크에 대한 각각의 품질 점수를 정규화한 이후에, 시스템은 웹 검색 결과들 및 딥링크들의 통합 랭킹 리스트를 생성하기 위해, 관련성 점수들 및 정규화된 관련성 점수들에 기초하여 웹 검색 결과들과 딥링크들의 순위를 정할 수 있다. 다음으로, 시스템은 웹 검색 결과들 및 딥링크들의 랭킹된 리스트를 사용자 디바이스에 제공할 수 있으며, 이는 도 4를 참조하여 이하에서 더 설명될 것이다.
일부 구현예에서, 단계(210-218)는 사용자로부터의 검색 쿼리에 응답하여 수행된다. 일부 다른 구현예에서, 유사성 점수들을 생성하는 것은 백엔드 프로세스의 일부로서 수행된다.
도 3은 검색 쿼리가 주어진 검색 엔진의 네이티브 어플리케이션 콘텐트 스코어러를 사용하여 네이티브 어플리케이션들 내의 콘텐츠를 스코어링하는 것의 일례(300)이다. 상기 콘텐트는 웹 인덱스(예를 들어,도 1의 웹 인덱스 116)로부터 대응하는 웹 페이지들을 갖지 않는 어플리케이션 페이지 X 가 될 수 있다. 네이티브 어플리케이션 콘텐트 스코어러는 어플리케이션 페이지 X에 대한 품질 점수 X_quality(314)를 생성할 수 있다.
품질 점수 X_quality(314)을 생성하기 위해, 스코어러는 웹 리소스들의 세트에 대한 관련성 점수들의 벡터와 웹 리소스들의 세트에 대한 유사성 점수들의 벡터 사이의 내적을 계산할 수 있다. 즉, 품질 점수는 아래의 식 2를 사용하여 계산할 수 있다.
Figure pct00002
(2)
여기서, x는 대응 웹 페이지가 없는 어플리케이션 페이지이고, resourcek 는 n 개의 웹 리소스들의 세트에서 k 번째 웹 리소스이고 relevance 함수는 관련성 점수를 반환하며, 그리고 similarity 함수는 k 번째 웹 리소스와 어플리케이션 페이지 x 사이의 유사성을 나타내는 유사성 점수를 반환한다.
예시로서, A, B 및 C는 웹 리소스들, 예컨대, 도 1의 웹 인덱스(116)로부터 웹 리소스들일 수 있다. 따라서, A_relevance(302)는 검색 쿼리에 대한 A에 대한 관련성 점수이고, AX_similarity(304)는 어플리케이션 페이지 X에 대해서 웹 리소스 A가 얼마나 유사한지를 나타내는 유사성 점수이며, B_relevance(306)는 검색 쿼리에 대한 B에 대한 관련성 점수이고, BX_similarity(308)는 어플리케이션 X에 대해서 웹 리소스 B가 얼마나 유사한지를 나타내는 유사성 점수이며,C_relevance(310)는 검색 쿼리에 대한 C에 대한 관련성 점수이고, CX_similarity(312)는 어플리케이션 X에 대해서 웹 리소스 C가 얼마나 유사한지를 나타내는 유사성 점수이며, 기타 등등이다. 스코어러는 A_relevance(302)와 AX_similarity(304)의 곱(product), B_relevance(306)와 BX_similarity(308)의 곱, C_relevance(310)와 CX_similarity(312)의 곱 등을 계산할 수 있고, 그 곱들을 합산하여 X_quality 점수(314)를 생성할 수 있다.
스코어러는 대응 웹 및/또는 콘텐츠 페이지들을 갖지 않는 어플리케이션 인덱스 내의 각 어플리케이션 페이지에 대해 이러한 방식으로 내적(dot product을 계산하여, 어플리케이션 페이지를 스코어링할 수 있다.
도 4는 웹 검색 결과들과 함께 제공된 네이티브 어플리케이션 검색 결과를 도시 한 도면이다. 검색 결과는 사용자 디바이스의 브라우저 어플리케이션에서 제공될 수 있다.
브라우저 어플리케이션은 검색 쿼리(402)에 응답하여 검색 엔진에 의해 제공된 검색 결과들(404-410)의 뷰(401)를 디스플레이한다. 검색 결과들 중 하나는 네이티브 어플리케이션 검색 결과(즉, 네이티브 어플리케이션 검색 결과 408)이며, 나머지 검색 결과들은 웹 검색 결과들(즉, 웹 검색 결과(404, 406, 410))이다. 검색 결과들(404-410)은 웹 검색 결과들 404, 406, 410 네이티브 어플리케이션 검색 결과 408에 대한 관련성 점수가 낮아지는 순서대로 도시된다.
네이티브 어플리케이션 검색 결과(408)는 딥링크이며, 상기 딥링크는 선택될 때, 네이티브 어플리케이션으로 하여금 각각의 네이티브 어플리케이션의 인스턴스를 인스턴스화하게 할 수 있으며, 네이티브 어플리케이션 검색 결과(408)에서 참조된 콘텐츠는 사용자 디바이스 상에 디스플레이된다.
본 명세서에 설명된 본 발명의 주제 및 기능적 동작의 실시예들은, 디지털 전자 회로, 컴퓨터 소프트웨어 또는 펌웨어, 실체적으로 구현된 컴퓨터 소프트웨어 또는 펌웨어, 컴퓨터 하드웨어로 구현될 수 있으며, 본 명세서에 개시된 구조들 및 이들의 구조적 균등물들 또는 이들 중 하나 이상의 조합을 포함한다. 본 명세서에서 설명된 본 발명의 실시예들은 데이터 프로세싱 장치에 의한 실행, 또는 데이터 프로세싱 장치의 동작을 제어하기 위한 하나 이상의 컴퓨터 프로그램들 즉, 컴퓨터 저장 매체 상에 인코딩된 컴퓨터 프로그램 명령들의 하나 이상의 모듈들로서 구현될 수 있으며, 상기 저장 매체는 예를 들어, 유형의 비일시적인 컴퓨터 저장 매체일 수 있다. 컴퓨터 저장 매체는 머신 판독가능 저장 디바이스, 머신 판독가능 저장 기판, 랜덤 또는 시리얼 액세스 메모리 디바이스, 또는 이들 중 하나 이상의 조합일 수 있다. 컴퓨터 프로그램은 다수의 파일을 포함할 수 있고 및/또는 하나 이상의 데이터 프로세싱 장치를 실행시키기 위해 배치될 수 있다.
"데이터 프로세싱 장치" 라는 용어는 데이터를 프로세싱하기 위한 모든 종류의 장치들, 디바이스들 및 머신들을 포함하며, 일례로서 프로그램가능 프로세서, 컴퓨터, 특수 목적 회로, 또는 멀티 프로세서 또는 컴퓨터를 포함한다. 또한, 장치는 하드웨어 이외에, 컴퓨터 프로그램을 위한 실행 환경을 생성하는 코드를 포함할 수 있는바, 예컨대, 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제, 또는 이들의 조합을 구성하는 코드를 포함할 수 있다.
본 명세서에서 설명된 프로세스 및 논리 흐름은 입력 데이터를 조작하고 출력을 생성함으로써 기능을 수행하기 위한 하나 이상의 컴퓨터 프로그램을 실행하는 하나 이상의 프로그램가능 컴퓨터들 또는 하나 이상의 특수 목적 논리 회로에 의해 수행될 수 있다.
비록 본 명세서는 다수의 특정 구현 세부사항들을 포함하지만, 이들은 임의의 발명 또는 청구범위에 대한 제한으로서 해석되어서는 안되며, 오히려 특정 발명의 특정 실시예에 특정될 수 있는 피처들에 대한 설명으로 해석되어야 한다. 별도의 실시예들과 관련하여 본 명세서에서 설명되는 소정의 피처들은 또한 단일 실시예에서 조합으로 구현될 수 있다. 반대로, 하나의 실시예에 관련되어 설명된 다양한 피처들은 또한 다수의 실시예에서 개별적으로 또는 임의의 적합한 서브 조합으로 구현될 수도 있다. 더욱이, 전술한 피처들은 특정 조합으로 작용하고 심지어 초기에는 그러한 것으로서 주장되는 경우조차도 상기에서 설명될 수 있지만, 청구된 조합으로부터의 하나 이상의 피처가 어떤 경우에는 상기 조합으로부터 제거될 수 있고, 청구된 조합은 서브 조합 또는 서브 조합의 변형으로부터 유도될 수 있다.
유사하게, 도면들에서 동작들은 특정 순서로 도시되어 있지만, 이는 이러한 동작들이 도시된 특정 순서 또는 순차적 순서로 수행되거나, 바람직한 결과를 획득하기 위해서 모든 예시된 동작들이 수행될 것을 요구하는 것으로 이해되어서는 안된다. 특정 상황에서는 멀티 태스킹 및 병렬 처리가 유리할 수도 있다. 또한, 상술한 실시예들에서 다양한 시스템 모듈들 및 컴포넌트들의 분리는 모든 실시예들에서 이러한 분리를 요구하는 것으로 이해되어서는 안되며, 그리고 서술된 프로그램 컴포넌트들 및 시스템들은 일반적으로 단일 소프트웨어 제품 내에 함께 통합될 수 있거나 또는 다중 소프트웨어 제품들로 패키징될 수 있음을 이해해야 한다.
본 발명의 특정 실시예들이 서술되었다. 다른 실시예들은, 다음의 청구항들의 범위 내에 있다. 예를 들어, 청구 범위들에 서술된 동작들은 상이한 순서로 수행될 수 있으며 그리고 여전히 바람직한 결과를 달성할 수 있다. 하나의 예로서, 첨부된 도면들에 도시된 프로세스들은 바람직한 결과를 얻기 위해 도시된 특정 순서 또는 순차적 순서를 반드시 요구하지는 않는다. 특정 구현들에서, 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다.

Claims (15)

  1. 데이터 프로세싱 장치에 의해 수행되는 방법으로서,
    웹 리소스들의 개별 세트에 대한 관련성 점수들(relevance scores)을 수신하는 단계, 각각의 관련성 점수는 검색 쿼리에 대응하는 웹 리소스의 관련성을 나타내며;
    상기 웹 리소스들의 세트의 각각의 웹 리소스에 대하여, 복수의 유사성 점수들(similarity scores)을 획득하는 단계, 웹 리소스에 대한 각각의 유사성 점수는, 네이티브 어플리케이션에 대한 각각의 딥링크(deeplink)에 의해서 참조되는 각각의 콘텐츠와 상기 웹 리소스 사이의 유사성을 나타내며;
    상기 딥링크들 각각에 대해, 상기 딥링크에 의해 참조되는 콘텐츠와 상기 웹 리소스들 사이의 상기 유사성 점수들 각각과 상기 웹 리소스들에 대한 상기 관련성 점수들 각각에 기초하여, 상기 딥링크에 의해 참조되는 콘텐츠에 대한 각각의 품질 점수를 생성하는 단계;
    임계 품질 점수를 충족시키는 각각의 품질 점수를 갖는, 콘텐츠를 참조하는 딥링크들을 선택하는 단계; 및
    상기 검색 쿼리에 응답하여, 대응하는 웹 리소스를 각각 참조하는 복수의 웹 검색 결과들과 함께 상기 선택된 딥링크들을 사용자 디바이스에 제공하는 단계
    를 포함하는 것을 특징으로 하는 데이터 프로세싱 장치에 의해 수행되는 방법.
  2. 제1항에 있어서,
    상기 복수의 유사성 점수들을 획득하기 전에,
    각각의 웹 리소스에 대해, 상기 콘텐츠 및 상기 웹 리소스로부터 상기 웹 리소스에 대한 상기 복수의 유사성 점수를 생성하는 단계를 더 포함하는 것을 특징으로 하는 데이터 프로세싱 장치에 의해 수행되는 방법.
  3. 제2항에 있어서,
    상기 복수의 유사성 점수들을 생성하는 단계는, n-gram Jaccard similarity, 최소 해시(minimum hash), 또는 상기 복수의 유사성 점수들에 대한 로컬티-민감성 해시(locality-sensitive hashing) 중 하나 이상에 기초하는 것을 특징으로 하는 데이터 프로세싱 장치에 의해 수행되는 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 딥링크들 각각에 대해, 상기 딥링크에 의해 참조되는 콘텐츠에 대한 각각의 품질 점수를 생성하는 단계는,
    각각의 웹 리소스에 대해, 상기 딥링크에 의해 참조되는 콘텐츠와 상기 웹 리소스 사이의 상기 유사성 점수 각각과 상기 웹 리소스에 대한 상기 관련성 점수 각각의 곱(product)을 각각 계산하는 단계; 및
    각각의 품질 점수를 생성하도록 상기 각각의 곱을 합산하는 단계
    를 포함하는 것을 특징으로 하는 데이터 프로세싱 장치에 의해 수행되는 방법.
  5. 제1항에 있어서,
    각각의 네이티브 어플리케이션에 대한 각각의 딥링크는, 상기 사용자 디바이스에서 선택될 때, 상기 각각의 네이티브 어플리케이션으로 하여금, 상기 딥링크에서 참조되는 콘텐츠가 디스플레이되는 각각의 네이티브 어플리케이션의 인스턴스를 인스턴스화하게 하는 것을 특징으로 하는 데이터 프로세싱 장치에 의해 수행되는 방법.
  6. 선행하는 임의의 청구항에 있어서,
    각각의 웹 리소스에 대한 각각의 관련성 점수는, 검색 엔진에 의해 순위가 매겨진(ranked) 웹 리소스들의 리스트에 있는 웹 리소스 각각의 순위(rank)에 기초하는 것을 특징으로 하는 데이터 프로세싱 장치에 의해 수행되는 방법.
  7. 선행하는 임의의 청구항에 있어서,
    상기 임계 품질 점수를 충족시키는 각각의 품질 점수를 갖는, 콘텐츠를 참조하는 딥링크들을 선택하는 단계는,
    상기 임계 품질 점수를 충족시키는 품질 점수를 갖는, 콘텐츠를 참조하는 딥링크들을 최대 개수까지 선택하는 것을 특징으로 하는 데이터 프로세싱 장치에 의해 수행되는 방법.
  8. 선행하는 임의의 청구항에 있어서,
    상기 복수의 웹 검색 결과들과 함께 상기 복수의 딥링크들을 사용자 디바이스에 제공하는 단계는,
    각각의 딥링크에 대해, 상기 딥링크에 대한 정규화된 관련성 점수를 생성하도록, 웹 검색 결과들에 대한 각각의 관련성 점수들에 대하여 상기 딥링크에 대한 상기 품질 점수 각각을 정규화하는 단계;
    웹 검색 결과들 및 딥링크들의 순위가 매겨진 리스트를 생성하도록, 상기 관련성 점수들 및 상기 정규화된 관련성 점수들에 기초하여 상기 웹 검색 결과들 및 딥링크들의 순위를 매기는(ranking) 단계; 및
    상기 웹 검색 결과들 및 딥링크들의 순위가 매겨진 리스트를 사용자 디바이스에 제공하는 단계
    를 포함하는 것을 특징으로 하는 데이터 프로세싱 장치에 의해 수행되는 방법.
  9. 선행하는 임의의 청구항에 있어서,
    상기 각각의 딥링크에 의해 참조되는 각각의 콘텐츠는 웹 리소스가 아닌 것을 특징으로 하는 데이터 프로세싱 장치에 의해 수행되는 방법.
  10. 시스템으로서,
    하나 이상의 컴퓨터들; 및
    상기 하나 이상의 컴퓨터들에 접속되고 명령들이 저장되어 있는 컴퓨터-판독가능한 매체를 포함하며, 상기 명령들은 상기 하나 이상의 컴퓨터들에 의해 실행될 때, 상기 하나 이상의 컴퓨터들로 하여금, 각각의 뉴럴 네트워크 계층들에 대해, 동작들을 수행하게 하며, 상기 동작들은,
    웹 리소스들의 개별 세트에 대한 관련성 점수들(relevance scores)을 수신하고, 각각의 관련성 점수는 검색 쿼리에 대응하는 웹 리소스의 관련성을 나타내며;
    상기 웹 리소스들의 세트의 각각의 웹 리소스에 대하여, 복수의 유사성 점수들(similarity scores)을 획득하고, 웹 리소스에 대한 각각의 유사성 점수는, 네이티브 어플리케이션에 대한 각각의 딥링크(deeplink)에 의해서 참조되는 각각의 콘텐츠와 상기 웹 리소스 사이의 유사성을 나타내며;
    상기 딥링크들 각각에 대해, 상기 딥링크에 의해 참조되는 콘텐츠와 상기 웹 리소스들 사이의 상기 유사성 점수들 각각과 상기 웹 리소스들에 대한 상기 관련성 점수들 각각에 기초하여, 상기 딥링크에 의해 참조되는 콘텐츠에 대한 각각의 품질 점수를 생성하고;
    임계 품질 점수를 충족시키는 각각의 품질 점수를 갖는, 콘텐츠를 참조하는 딥링크들을 선택하고; 그리고
    상기 검색 쿼리에 응답하여, 대응하는 웹 리소스를 각각 참조하는 복수의 웹 검색 결과들과 함께 상기 선택된 딥링크들을 사용자 디바이스에 제공하는 것을 포함하는 것을 특징으로 하는 시스템.
  11. 제10항에 있어서,
    상기 명령들은 상기 하나 이상의 컴퓨터들에 의해 실행될 때, 상기 하나 이상의 컴퓨터들로 하여금, 상기 복수의 유사성 점수들을 획득하기 전에,
    각각의 웹 리소스에 대해, 상기 콘텐츠 및 상기 웹 리소스로부터 상기 웹 리소스에 대한 상기 복수의 유사성 점수를 생성하게 하는 것을 특징으로 하는 시스템.
  12. 제10항에 있어서,
    상기 명령들은, 상기 하나 이상의 컴퓨터들에 의해 실행될 때, 상기 하나 이상의 컴퓨터들로 하여금, 상기 딥링크들 각각에 대해, 상기 딥링크에 의해 참조되는 콘텐츠에 대한 각각의 품질 점수를 생성하게 하되,
    각각의 웹 리소스에 대해, 상기 딥링크에 의해 참조되는 콘텐츠와 상기 웹 리소스 사이의 상기 유사성 점수 각각과 상기 웹 리소스에 대한 상기 관련성 점수 각각의 곱(product)을 각각 계산하고; 그리고
    각각의 품질 점수를 생성하도록 상기 각각의 곱을 합산함에 의해서, 각각의 품질 점수를 생성하게 하는 것을 특징으로 하는 시스템.
  13. 제10항에 있어서,
    상기 명령들은, 상기 하나 이상의 컴퓨터들에 의해 실행될 때, 상기 하나 이상의 컴퓨터들로 하여금, 상기 복수의 웹 검색 결과들과 함께 상기 복수의 딥링크들을 사용자 디바이스에 제공하게 하되,
    각각의 딥링크에 대해, 상기 딥링크에 대한 정규화된 관련성 점수를 생성하도록, 웹 검색 결과들에 대한 각각의 관련성 점수들에 대하여 상기 딥링크에 대한 상기 품질 점수 각각을 정규화하고;
    웹 검색 결과들 및 딥링크들의 순위가 매겨진 리스트를 생성하도록, 상기 관련성 점수들 및 상기 정규화된 관련성 점수들에 기초하여 상기 웹 검색 결과들 및 딥링크들의 순위를 매기고(ranking); 그리고
    상기 웹 검색 결과들 및 딥링크들의 순위가 매겨진 리스트를 사용자 디바이스에 제공함에 의해서, 상기 복수의 딥링크들을 사용자 디바이스에 제공하게 하는 것을 특징으로 하는 시스템.
  14. 제10항에 있어서,
    상기 각각의 딥링크에 의해 참조되는 각각의 콘텐츠는 웹 리소스가 아닌 것을 특징으로 하는 시스템.
  15. 명령들이 저장되어 있는 컴퓨터-판독가능한 매체로서, 상기 명령들은 하나 이상의 컴퓨터들에 의해 실행될 때, 상기 하나 이상의 컴퓨터들로 하여금, 제1항 내지 제10항 중 어느 한 항에 따른 방법을 수행하게 하는 것을 특징으로 하는 컴퓨터-판독가능한 매체.
KR1020187001280A 2015-10-12 2016-10-04 자동화된 정보 검색 KR102091225B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/880,947 US20170103129A1 (en) 2015-10-12 2015-10-12 Scoring content within native applications
US14/880,947 2015-10-12
PCT/US2016/055311 WO2017066042A1 (en) 2015-10-12 2016-10-04 Automated information retrieval

Publications (2)

Publication Number Publication Date
KR20180017182A true KR20180017182A (ko) 2018-02-20
KR102091225B1 KR102091225B1 (ko) 2020-03-19

Family

ID=58499580

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187001280A KR102091225B1 (ko) 2015-10-12 2016-10-04 자동화된 정보 검색

Country Status (6)

Country Link
US (1) US20170103129A1 (ko)
JP (1) JP6517437B2 (ko)
KR (1) KR102091225B1 (ko)
CN (1) CN107851114B (ko)
DE (1) DE112016002946T5 (ko)
WO (1) WO2017066042A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11093512B2 (en) * 2018-04-30 2021-08-17 International Business Machines Corporation Automated selection of search ranker
FI129928B (en) 2019-01-29 2022-11-15 Upm Kymmene Corp Method and arrangement for feedback-based control in chemical wood processing
CN112714033B (zh) * 2019-10-25 2022-07-01 中国移动通信集团河北有限公司 视频集的特征信息确定方法及装置
US11301273B2 (en) * 2020-03-11 2022-04-12 Atlassian Pty Ltd. Computer user interface for a virtual workspace having multiple application portals displaying context-related content

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130019065A (ko) * 2011-08-16 2013-02-26 엘지전자 주식회사 디스플레이기기 및 디스플레이기기의 컨텐츠 제공 방법

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8386469B2 (en) * 2006-02-16 2013-02-26 Mobile Content Networks, Inc. Method and system for determining relevant sources, querying and merging results from multiple content sources
US20120166411A1 (en) * 2010-12-27 2012-06-28 Microsoft Corporation Discovery of remotely executed applications
US20130031091A1 (en) * 2011-07-26 2013-01-31 Microsoft Corporation Action-based search results and action view pivoting
US20130110815A1 (en) * 2011-10-28 2013-05-02 Microsoft Corporation Generating and presenting deep links
US20150161127A1 (en) * 2012-02-13 2015-06-11 Google Inc. Ranking entity realizations for information retrieval
US20140040226A1 (en) * 2012-07-31 2014-02-06 Microsoft Corporation Providing application result and preview
CN105074700A (zh) * 2013-03-01 2015-11-18 奎克西公司 产生含有到应用程序的状态链接的搜索结果
US8996520B2 (en) * 2013-03-15 2015-03-31 Google Inc. Ranking of native application content
US9063984B1 (en) * 2013-03-15 2015-06-23 Google Inc. Methods, systems, and media for providing a media search engine
US9251224B2 (en) * 2014-03-04 2016-02-02 Google Inc. Triggering and ranking of native applications
US10061796B2 (en) * 2014-03-11 2018-08-28 Google Llc Native application content verification
CN103838856B (zh) * 2014-03-17 2018-12-14 联想(北京)有限公司 一种信息处理方法及装置
US10268763B2 (en) * 2014-07-25 2019-04-23 Facebook, Inc. Ranking external content on online social networks
US20160055256A1 (en) * 2014-08-19 2016-02-25 Adlast, Inc. Systems and methods for directing access to products and services
US8954836B1 (en) * 2014-08-19 2015-02-10 Adlast, Inc. Systems and methods for directing access to products and services
US20160196579A1 (en) * 2015-01-05 2016-07-07 ProGrids, LLC Dynamic deep links based on user activity of a particular user
US10061856B2 (en) * 2015-01-29 2018-08-28 Facebook, Inc. Multimedia search using reshare text on online social networks
US9703541B2 (en) * 2015-04-28 2017-07-11 Google Inc. Entity action suggestion on a mobile device
US10755032B2 (en) * 2015-06-05 2020-08-25 Apple Inc. Indexing web pages with deep links
US10509834B2 (en) * 2015-06-05 2019-12-17 Apple Inc. Federated search results scoring
US10223460B2 (en) * 2015-08-25 2019-03-05 Google Llc Application partial deep link to a corresponding resource

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130019065A (ko) * 2011-08-16 2013-02-26 엘지전자 주식회사 디스플레이기기 및 디스플레이기기의 컨텐츠 제공 방법

Also Published As

Publication number Publication date
CN107851114A (zh) 2018-03-27
US20170103129A1 (en) 2017-04-13
DE112016002946T5 (de) 2018-03-15
JP2018527686A (ja) 2018-09-20
JP6517437B2 (ja) 2019-05-22
WO2017066042A1 (en) 2017-04-20
CN107851114B (zh) 2021-04-20
KR102091225B1 (ko) 2020-03-19

Similar Documents

Publication Publication Date Title
US9652550B2 (en) Indexing application pages of native applications
US20240143679A1 (en) Search result filters from resource content
US8195634B2 (en) Domain-aware snippets for search results
EP3161678B1 (en) Deep links for native applications
KR101969944B1 (ko) 다수의 네이티브 애플리케이션들로의 딥링킹
KR102056418B1 (ko) 웹 검색 결과들과 함께 네이티브 애플리케이션 검색 결과들 제공
EP3090358A1 (en) Rich content for query answers
KR102091225B1 (ko) 자동화된 정보 검색
JP6580708B2 (ja) 対応するリソースへのアプリケーション部分ディープリンク

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