KR20180114236A - 콘텐츠 성능 최적화를 위한 자동화된 클릭 타입 선택 - Google Patents

콘텐츠 성능 최적화를 위한 자동화된 클릭 타입 선택 Download PDF

Info

Publication number
KR20180114236A
KR20180114236A KR1020187028973A KR20187028973A KR20180114236A KR 20180114236 A KR20180114236 A KR 20180114236A KR 1020187028973 A KR1020187028973 A KR 1020187028973A KR 20187028973 A KR20187028973 A KR 20187028973A KR 20180114236 A KR20180114236 A KR 20180114236A
Authority
KR
South Korea
Prior art keywords
content
item
creative
extension
click
Prior art date
Application number
KR1020187028973A
Other languages
English (en)
Other versions
KR102073352B1 (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 KR20180114236A publication Critical patent/KR20180114236A/ko
Application granted granted Critical
Publication of KR102073352B1 publication Critical patent/KR102073352B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements

Abstract

클릭 타입들을 사용하여 콘텐츠 성능을 최적화하기 위한 시스템들 및 방법들이 제공된다. 콘텐츠 생성 시스템은 클라이언트 디바이스 상에서 프리젠테이션하기 위한 콘텐츠 아이템에 대한 요청을 수신한다. 요청은 콘텐츠 아이템에 대한 서빙 컨텍스트의 표시를 포함한다. 콘텐츠 생성 시스템은 다수의 서로 다른 잠재적인 클릭 타입들에 대한 콘텐츠 아이템에 대한 예측된 성능 메트릭을 계산하기 위해, 클릭 타입 성능 모델 및 콘텐츠 아이템에 대한 서빙 컨텍스트를 사용한다. 잠재적인 클릭 타입들의 각각은 정의된 기준이 만족된 경우 콘텐츠 아이템과의 사용자 인터렉션에 응갑하여 발생하는 이벤트를 트리거하기 위한 서로 다른 기준을 정의한다. 콘텐츠 생성 시스템은 예측된 성능 메트릭들에 기초하여 잠재적인 클릭 타입들 중 하나를 선택하고 선택된 클릭 타입을 갖는 콘텐츠 아이템을 생성한다. 클릭 타입 성능 모델은 클라이언트 디바이스로부터의 이벤트 데이터를 사용하여 업데이트된다.

Description

콘텐츠 성능 최적화를 위한 자동화된 클릭 타입 선택{AUTOMATED CLICK TYPE SELECTION FOR CONTENT PERFORMANCE OPTIMIZATION}
컴퓨터화된 콘텐츠 전달 네트워크에서, 콘텐츠 제공자들은 일반적으로 콘텐츠 아이템들(예를 들어, 광고들)을 디자인하고, 이들을 콘텐츠 서버에 제공한다. 그 후, 콘텐츠 서버는 전자 리소스(electronic resource)의 하나 이상의 콘텐츠 슬롯들을 통해 상기 콘텐츠 아이템들을 다양한 클라이언트 디바이스들에게 분배한다. 콘텐츠 아이템들은 종종 이미지들, 비디오들, 그래픽들, 텍스트, 및/또는 다른 시각적 이미지를 포함한다. 콘텐츠 제공자들이 효과적이고 매력적인 콘텐츠 아이템들을 만드는 것은 어렵고 도전적일 수 있다.
본 발명의 일 구현예는 클릭 타입들을 사용하여 콘텐츠 성능을 최적화하기 위한 방법이다. 상기 방법은 프로세싱 회로에서, 클라이언트 디바이스 상에서 프리젠테이션(presentation)하기 위한 콘텐츠 아이템에 대한 요청을 수신하는 단계를 포함한다. 상기 요청은 상기 콘텐츠 아이템에 대한 서빙 컨텍스트(serving context)의 표시(indication)를 포함한다. 상기 방법은 상기 프로세싱 회로에 의해, 다수의 서로 다른 잠재적인 클릭 타입들(potential click types)에 대한 상기 콘텐츠 아이템에 대한 예측된 성능 메트릭(predicted performance matric)을 계산하기 위해 클릭 타입 성능 모델 및 상기 콘텐츠 아이템에 대한 상기 서빙 컨텍스트를 사용하는 단계를 더 포함한다. 잠재적인 클릭 타입들의 각각은 이벤트를 트리거(trigger)하기 위한 서로 다른 기준을 정의하며, 상기 이벤트는 상기 정의된 기준이 만족된 경우 상기 콘텐츠 아이템과의 사용자 인터렉션(user interaction)에 응답하여 발생한다. 상기 방법은 상기 프로세싱 회로에 의해, 상기 예측된 성능 메트릭들에 기초하여 상기 잠재적인 클릭 타입들 중 하나를 선택하는 단계와 상기 선택된 클릭 타입을 갖는 콘텐츠 아이템을 생성하는 단계를 더 포함한다. 상기 콘텐츠 아이템은 상기 요청에 응답하여 상기 프로세싱 회로에 의해 생성된다. 상기 방법은 상기 클라이언트 디바이스 상에서 프리젠테이션하기 위한 상기 생성된 콘텐츠 아이템을 서브(serve)하는 단계를 더 포함한다.
일부 구현예들에서, 상기 방법은 상기 잠재적인 클릭 타입들의 각각을 갖는 콘텐츠 아이템들에 관한 사용자 액션들(user actions)을 기술(describe)하는 이벤트 데이터를 수집 및 저장하는 단계와 상기 클릭 타입 성능 모델을 트레이닝(training)시키기 위한 피드백으로서 상기 이벤트 데이터를 사용하는 단계를 포함한다.
일부 구현예들에서, 상기 잠재적인 클릭 타입들에 의해 정의된 상기 서로 다른 기준은 상기 콘텐츠 아이템과의 사용자 인터렉션들의 서로 다른 타입들을 포함한다. 일부 구현예들에서, 상기 잠재적인 클릭 타입들의 각각은 상기 성능 메트릭을 계산하기 위한 서로 다른 기준을 정의한다.
일부 구현예들에서, 상기 잠재적인 클릭 타입들 중 하나를 선택하는 단계는 버튼 클릭 타입(button click type)을 선택하는 것을 포함한다. 버튼 클릭 타입이 선택된 경우, 상기 방법은 상기 콘텐츠 아이템의 제1 부분과의 사용자 인터렉션으로서 상기 이벤트를 트리거하기 위한 상기 기준을 정의하는 단계와, 상기 사용자 인터렉션은 상기 제1 부분과 별개인 상기 콘텐츠 아이템의 제2 부분과의 사용자 인터렉션을 제외하며, 상기 콘텐츠 아이템의 상기 제1 부분만을 차지하는 클릭가능한 버튼을 랜더링(redering)하는 단계를 더 포함할 수 있다.
일부 구현예들에서, 상기 잠재적인 클릭 타입들 중 하나를 선택하는 단계는 전체 콘텐츠 아이템 클릭 타입(whole content item click type)을 선택하는 것을 포함한다. 전체 콘텐츠 아이템 클릭 타입이 선택된 경우, 상기 방법은 상기 콘텐츠 아이템의 임의의 부분과의 사용자 인터렉션으로서 상기 이벤트를 트리거하기 위한 상기 기준을 정의하는 단계와 클릭가능한 엘리먼트(clickable element)로서 상기 콘텐츠 아이템의 전체 디스플레이 영역(entire display area)을 랜더링하는 단계를 더 포함할 수 있다.
일부 구현예들에서, 상기 잠재적인 클릭 타입들 중 하나를 선택하는 단계는 확인 클릭 타입(confirmation click type)을 선택하는 것을 포함한다. 확인 클릭 타입이 선택된 경우, 상기 방법은 상기 콘텐츠 아이템과의 제1 사용자 인터렉션에 응답하여 확인 프롬프트(confirmation prompt)를 디스플레이하는 단계와 상기 확인 프롬프트가 디스플레이되는 동안 상기 제1 사용자 인터렉션 이후에 발생하는 상기 콘텐츠 아이템과의 제2 사용자 인터렉션으로서 상기 이벤트를 트리거하기 위한 상기 기준을 정의하는 단계를 더 포함할 수 있다.
일부 구현예들에서, 상기 서빙 컨텍스트는 상기 클라이언트 디바이스, 상기 클라이언트 디바이스의 플랫폼(platform) 및 리소스(resource)의 타입 중 적어도 하나를 포함하며, 상기 콘텐츠 아이템은 상기 리소스와 함께 제시될 것이다.
일부 구현예들에서, 상기 잠재적인 클릭 타입들 중 하나를 선택하는 단계는 상기 잠재적인 클릭 타입들에 대한 상기 예측된 성능 메트릭들의 극값(extremum)과 관련된 상기 클릭 타입을 선택하는 것을 포함한다.
일부 구현예들에서, 상기 방법은 상기 예측된 성능 메트릭을 임계값(threshold value)과 비교하는 단계를 더 포함한다. 상기 잠재적인 클릭 타입들 중 하나를 선택하는 단계는 만일 상기 예측된 성능 메트릭이 상기 임계값보다 작은 경우, 상기 잠재적인 클릭 타입들 중 제1 타입을 선택하는 것과 만일 상기 예측된 성능 메트릭이 상기 임계값보다 작지 않은 경우, 상기 잠재적인 클릭 타입들 중 제2 타입을 선택하는 것을 포함할 수 있다.
본 발명의 다른 구현예는 클릭 타입들을 사용하여 콘텐츠 성능을 최적화하기 위한 시스템이다. 상기 시스템은 프로세서 및 메모리를 갖는 프로세싱 회로를 포함한다. 상기 프로세싱 회로는 클라이언트 디바이스 상에서 프리젠테이션하기 위한 콘텐츠 아이템에 대한 요청을 수신하도록 구성된다. 상기 요청은 상기 콘텐츠 아이템에 대한 서빙 컨텍스트의 표시를 포함한다. 상기 프로세싱 회로는 다수의 서로 다른 잠재적인 클릭 타입들에 대한 상기 콘텐츠 아이템에 대한 예측된 성능 메트릭을 계산하기 위해 클릭 타입 성능 모델 및 상기 콘텐츠 아이템에 대한 상기 서빙 컨텍스트를 사용하도록 더 구성된다. 상기 잠재적인 클릭 타입들의 각각은 이벤트를 트리거하기 위한 서로 다른 기준을 정의하며, 상기 이벤트는 상기 정의된 기준이 만족된 경우 상기 콘텐츠 아이템과의 사용자 인터렉션에 응답하여 발생한다. 상기 프로세싱 회로는 상기 예측된 성능 메트릭들에 기초하여 상기 잠재적인 클릭 타입들 중 하나를 선택하고, 상기 요청에 응답하여 상기 선택된 클릭 타입을 갖는 콘텐츠 아이템을 생성하고, 그리고 상기 클라이언트 디바이스 상에서 프리젠테이션하기 위한 상기 생성된 콘텐츠 아이템을 서브하도록 구성된다.
일부 구현예들에서, 상기 프로세싱 회로는 상기 잠재적인 클릭 타입들의 각각을 갖는 콘텐츠 아이템들에 관한 사용자 액션들을 기술하는 이벤트 데이터를 수집 및 저장하고, 상기 클릭 타입 성능 모델을 트레이닝 시키기 위한 피드백으로서 상기 이벤트 데이터를 사용하도록 더 구성된다.
일부 구현예들에서, 상기 잠재적인 클릭 타입들에 의해 정의된 상기 서로 다른 기준은 상기 콘텐츠 아이템과의 사용자 인터렉션들의 서로 다른 타입들을 포함한다. 일부 구현예들에서, 상기 잠재적인 클릭 타입들의 각각은 상기 성능 메트릭을 계산하기 위한 서로 다른 기준을 정의한다.
일부 구현예들에서, 상기 잠재적인 클릭 타입들 중 하나를 선택하도록 구성되는 것은 버튼 클릭 타입을 선택하는 것을 포함한다. 버튼 클릭 타입이 선택된 경우, 상기 프로세싱 회로는 상기 콘텐츠 아이템의 제1 부분과의 사용자 인터렉션으로서 상기 이벤트를 트리거하기 위한 상기 기준을 정의하고, 상기 사용자 인터렉션은 상기 제1 부분과 별개인 상기 콘텐츠 아이템의 제2 부분과의 사용자 인터렉션을 제외하며, 상기 콘텐츠 아이템의 상기 제1 부분만을 차지하는 클릭가능한 버튼을 랜더링하도록 더 구성될 수 있다.
일부 구현예들에서, 상기 잠재적인 클릭 타입들 중 하나를 선택하도록 구성되는 것은 전체 콘텐츠 아이템 클릭 타입을 선택하는 것을 포함한다. 전체 콘텐츠 아이템 클릭 타입이 선택된 경우, 상기 프로세싱 회로는 상기 콘텐츠 아이템의 임의의 부분과의 사용자 인터렉션으로서 상기 이벤트를 트리거하기 위한 상기 기준을 정의하고, 클릭가능한 엘리먼트로서 상기 콘텐츠 아이템의 전체 디스플레이 영역을 랜더링하도록 더 구성될 수 있다.
일부 구현예들에서, 상기 잠재적인 클릭 타입들 중 하나를 선택하도록 구성되는 것은 확인 클릭 타입을 선택하는 것을 포함한다. 확인 클릭 타입이 선택된 경우, 상기 프로세싱 회로는 확인 프롬프트로 하여금 상기 콘텐츠 아이템과의 제1 사용자 인터렉션에 응답하여 디스플레이 되게 하기 위해, 상기 콘텐츠 아이템을 구성하고, 상기 확인 프롬프트가 디스플레이되는 동안 상기 제1 사용자 인터렉션 이후에 발생하는 상기 콘텐츠 아이템과의 제2 사용자 인터렉션으로서 상기 이벤트를 트리거하기 위한 상기 기준을 정의하도록 더 구성될 수 있다.
일부 구현예들에서, 상기 서빙 컨텍스트는 상기 클라이언트 디바이스, 상기 클라이언트 디바이스의 플랫폼 및 리소스의 타입 중 적어도 하나를 포함하며, 상기 콘텐츠 아이템은 상기 리소스와 함께 제시될 것이다.
상기 잠재적인 클릭 타입들 중 하나를 선택하도록 구성되는 것은 상기 잠재적인 클릭 타입들에 대한 상기 예측된 성능 메트릭들의 극값과 관련된 상기 클릭 타입을 선택하는 것을 포함한다.
일부 구현예들에서, 상기 프로세싱 회로는 상기 예측된 성능 메트릭을 임계값과 비교하도록 더 구성된다. 상기 잠재적인 클릭 타입들 중 하나를 선택하도록 구성되는 것은 만일 상기 예측된 성능 메트릭이 상기 임계값보다 작은 경우, 상기 잠재적인 클릭 타입들 중 제1 타입을 선택하는 것과, 만일 상기 예측된 성능 메트릭이 상기 임계값보다 작지 않은 경우, 상기 잠재적인 클릭 타입들 중 제2 타입을 선택하는 것을 포함할 수 있다.
본 발명의 다른 구현예는 크리에이티브 확장들을 사용하여 콘텐츠 성능을 최적화하기 위한 방법이다. 상기 방법은 프로세싱 회로에서, 클라이언트 디바이스 상에서 프리젠테이션하기 위한 콘텐츠 아이템에 대한 요청을 수신하는 단계를 포함한다. 상기 요청은 상기 콘텐츠 아이템에 대한 서빙 컨텍스트의 표시를 포함한다. 상기 방법은 상기 프로세싱 회로에 의해, 다수의 서로 다른 잠재적인 크리에이티브 확장들(potential creative extensions)에 대한 상기 콘텐츠 아이템에 대한 예측된 성능 메트릭을 계산하기 위해 크리에이티브 확장 성능 모델 및 상기 콘텐츠 아이템에 대한 상기 서빙 컨텍스트를 사용하는 단계를 더 포함한다. 상기 잠재적인 크리에이티브 확장들의 각각은 상기 콘텐츠 아이템과의 사용자 인터렉션에 응답하여 발생하는 서로 다른 액션을 정의한다. 상기 방법은 상기 프로세싱 회로에 의해, 상기 예측된 성능 메트릭들에 기초하여 상기 잠재적인 크리에이티브 확장들 중 하나를 선택하는 단계와 상기 선택된 크리에이티브 확장을 갖는 콘텐츠 아이템을 생성하는 단계를 더 포함한다. 상기 콘텐츠 아이템은 상기 요청에 응답하여 상기 프로세싱 회로에 의해 생성된다. 상기 방법은 상기 클라이언트 디바이스 상에서 프리젠테이션하기 위한 상기 생성된 콘텐츠 아이템을 서브하는 단계를 더 포함한다.
일부 구현예들에서, 상기 방법은 상기 잠재적인 크리에이티브 확장들의 각각을 갖는 콘텐츠 아이템들에 관한 사용자 액션들을 기술하는 이벤트 데이터를 수집 및 저장하는 단계와 상기 크리에이티브 확장 성능 모델을 트레이닝시키기 위한 피드백으로서 상기 이벤트 데이터를 사용하는 단계를 포함한다.
일부 구현예들에서, 상기 방법은 상기 콘텐츠 아이템과 관련된 랜딩 리소스, 상기 랜딩 리소스와 관련된 2차 리소스, 및 커스터머 정보 데이터베이스 중 적어도 하나로부터 데이터 애셋들(data assets)을 추출하는 단계를 포함한다. 상기 방법은 상기 잠재적인 크리에이티브 확장들 중 어느 것이 선택을 위해 이용가능한이지 결정하기 위해, 상기 추출된 데이터 애셋들을 사용하는 단계를 포함할 수 있다. 일부 구현예들에서, 상기 잠재적인 크리에이티브 확장들 중 어느 것이 선택을 위해 이용가능한이지 결정하기 위해, 상기 추출된 데이터 애셋들을 사용하는 단계는 크리에이티브 확장을 생성하기 위한 요구된 데이터 애셋을 식별하는 것, 식별된 데이터 애셋이 추출되었는지 여부를 결정하는 것, 그리고 요구된 데이터 애셋이 추출되지 않았음을 결정함에 응답하여, 크리에이티브 확장이 선택에 대해 이용가능 하지 않음을 결정하는 것을 포함할 수 있다.
일부 구현예들에서, 상기 잠재적인 크리에이티브 확장들 중 하나를 선택하는 단계는 상기 잠재적인 크리에이티브 확장들 중 어느 것이 선택을 위해 이용가능한이지 결정하기 위해, 상기 콘텐츠 아이템에 대한 상기 서빙 컨텍스트를 사용하는 것을 포함한다.
일부 구현예들에서, 상기 잠재적인 크리에이티브 확장들 중 하나를 선택하는 단계는 콜 클릭(click-to-call) 확장을 선택하는 것을 포함한다. 콜 클릭 확장이 선택된 경우, 상기 방법은 상기 콘텐츠 아이템과 관련된 엔티티와의 통신을 개시하도록 구성된 크리에이티브 확장을 생성하기 위해 추출된 연락처 정보를 사용하는 것과 상기 콘텐츠 아이템의 선택가능한 엘리먼트로서 상기 생성된 크리에이티브 확장을 랜더링하는 것을 포함할 수 있다.
일부 구현예들에서, 상기 잠재적인 크리에이티브 확장들 중 하나를 선택하는 단계는 위치 확장을 선택하는 것을 포함한다. 위치 확장이 선택된 경우, 상기 방법은 맵 어플리케이션을 런치하거나 상기 콘텐츠 아이템과 관련된 지리적 위치를 디스플레이 하도록 구성된 크리에이티브 확장을 생성하기 위해 추출된 위치 정보를 사용하는 것과 상기 콘텐츠 아이템의 선택가능한 엘리먼트로서 상기 생성된 크리에이티브 확장을 랜더링하는 것을 포함할 수 있다.
일부 구현예들에서, 상기 잠재적인 크리에이티브 확장들 중 하나를 선택하는 단계는 2차 리소스 확장을 선택하는 것을 포함한다. 2차 리소스 확장이 선택된 경우, 상기 방법은 상기 클라이언트 디바이스로 하여금 상기 콘텐츠와 관련된 2차 리소스로 네비게이트(navigate)하기 위해 구성된 크리에이티브 확장을 생성하기 위해 추출된 2차 리소스 정보를 사용하는 것과 상기 콘텐츠 아이템의 선택가능한 엘리먼트로서 상기 생성된 크리에이티브 확장을 랜더링하는 것을 포함할 수 있다.
일부 구현예들에서, 상기 잠재적인 크리에이티브 확장들 중 하나를 선택하는 단계는 상기 잠재적인 크리에이티브 확장들에 대한 상기 예측된 성능 메트릭들의 극값과 관련된 상기 크리에이티브 확장을 선택하는 것을 포함한다.
일부 구현예들에서, 상기 서빙 컨텍스트는 상기 클라이언트 디바이스, 상기 클라이언트 디바이스의 플랫폼 및 리소스의 타입 중 적어도 하나를 포함하며, 상기 콘텐츠 아이템은 상기 리소스와 함께 제시될 것이다.
본 발명의 다른 구현예는 크리에이티브 확장들을 사용하여 콘텐츠 성능을 최적화하기 위한 시스템이다. 상기 시스템은 프로세서 및 메모리를 갖는 프로세싱 회로를 포함한다. 상기 프로세싱 회로는 클라이언트 디바이스 상에서 프리젠테이션하기 위한 콘텐츠 아이템에 대한 요청을 수신하도록 구성된다. 상기 요청은 상기 콘텐츠 아이템에 대한 서빙 컨텍스트의 표시를 포함한다. 상기 프로세싱 회로는 다수의 서로 다른 잠재적인 크리에이티브 확장들에 대한 상기 콘텐츠 아이템에 대한 예측된 성능 메트릭을 계산하기 위해 크리에이티브 확장 성능 모델 및 상기 콘텐츠 아이템에 대한 상기 서빙 컨텍스트를 사용하도록 더 구성된다. 상기 잠재적인 크리에이티브 확장들의 각각은 상기 콘텐츠 아이템과의 사용자 인터렉션에 응답하여 발생하는 서로 다른 액션을 정의한다. 상기 프로세싱 회로는 상기 예측된 성능 메트릭들에 기초하여 상기 잠재적인 크리에이티브 확장들 중 하나를 선택하고, 상기 요청에 응답하여 상기 선택된 크리에이티브 확장을 갖는 콘텐츠 아이템을 생성하고, 그리고 상기 클라이언트 디바이스 상에서 프리젠테이션하기 위한 상기 생성된 콘텐츠 아이템을 서브하도록 더 구성된다.
일부 구현예들에서, 상기 프로세싱 회로는 상기 잠재적인 크리에이티브 확장들의 각각을 갖는 콘텐츠 아이템들에 관한 사용자 액션들을 기술하는 이벤트 데이터를 수집 및 저장하고, 상기 크리에이티브 확장 성능 모델을 트레이닝 시키기 위한 피드백으로서 상기 이벤트 데이터를 사용하도록 구성된다.
일부 구현예들에서, 상기 프로세싱 회로는 상기 콘텐츠 아이템과 관련된 랜딩 리소스, 상기 랜딩 리소스와 관련된 2차 리소스, 및 커스터머 정보 데이터베이스 중 적어도 하나로부터 데이터 애셋들을 추출하도록 구성된다. 상기 프로세싱 회로는 상기 잠재적인 크리에이티브 확장들 중 어느 것이 선택을 위해 이용가능한이지 결정하기 위해, 상기 추출된 데이터 애셋들을 사용할 수 있다. 일부 구현예들에서, 상기 잠재적인 크리에이티브 확장들 중 어느 것이 선택을 위해 이용가능한이지 결정하기 위해, 상기 추출된 데이터 애셋들을 사용하도록 하는 것은 크리에이티브 확장을 생성하기 위한 요구된 데이터 애셋을 식별하는 것, 식별된 데이터 애셋이 추출되었는지 여부를 결정하는 것, 그리고 요구된 데이터 애셋이 추출되지 않았음을 결정함에 응답하여, 크리에이티브 확장이 선택에 대해 이용가능 하지 않음을 결정하는 것을 포함할 수 있다.
일부 구현예들에서, 상기 잠재적인 크리에이티브 확장들 중 하나를 선택하도록 구성되는 것은 상기 잠재적인 크리에이티브 확장들 중 어느 것이 선택을 위해 이용가능한이지 결정하기 위해, 상기 콘텐츠 아이템에 대한 상기 서빙 컨텍스트를 사용하는 것을 포함한다.
일부 구현예들에서, 상기 잠재적인 크리에이티브 확장들 중 하나를 선택하도록 구성되는 것은 콜 클릭 확장을 선택하는 것을 포함한다. 콜 클릭 확장이 선택된 경우, 상기 프로세싱 회로는 상기 콘텐츠 아이템과 관련된 엔티티와의 통신을 개시하도록 구성된 크리에이티브 확장을 생성하기 위해 추출된 연락처 정보를 사용하고, 상기 콘텐츠 아이템의 선택가능한 엘리먼트로서 상기 생성된 크리에이티브 확장을 랜더링하도록 구성될 수 있다.
일부 구현예들에서, 상기 잠재적인 크리에이티브 확장들 중 하나를 선택하도록 구성되는 것은 위치 확장을 선택하는 것을 포함한다. 위치 확장이 선택된 경우, 상기 프로세싱 회로는 맵 어플리케이션을 런치하거나 상기 콘텐츠 아이템과 관련된 지리적 위치를 디스플레이 하도록 구성된 크리에이티브 확장을 생성하기 위해 추출된 위치 정보를 사용하고, 상기 콘텐츠 아이템의 선택가능한 엘리먼트로서 상기 생성된 크리에이티브 확장을 랜더링 하도록 구성될 수 있다.
일부 구현예들에서, 상기 잠재적인 크리에이티브 확장들 중 하나를 선택하도록 구성되는 것은 단계는 2차 리소스 확장을 선택하는 것을 포함한다. 2차 리소스 확장이 선택된 경우, 상기 프로세싱 회로는 상기 클라이언트 디바이스로 하여금 상기 콘텐츠와 관련된 2차 리소스로 네비게이트 하기 위해 구성된 크리에이티브 확장을 생성하기 위해 추출된 2차 리소스 정보를 사용하고, 상기 콘텐츠 아이템의 선택가능한 엘리먼트로서 상기 생성된 크리에이티브 확장을 랜더링 하도록 구성될 수 있다.
일부 구현예들에서, 상기 잠재적인 크리에이티브 확장들 중 하나를 선택하도록 구성되는 것은 상기 잠재적인 크리에이티브 확장들에 대한 상기 예측된 성능 메트릭들의 극값과 관련된 상기 크리에이티브 확장을 선택하는 것을 포함한다.
일부 구현예들에서, 상기 서빙 컨텍스트는 상기 클라이언트 디바이스, 상기 클라이언트 디바이스의 플랫폼 및 리소스의 타입 중 적어도 하나를 포함하며, 상기 콘텐츠 아이템은 상기 리소스와 함께 제시될 것이다.
전술한 것은 요약인바 필요에 따라서는 상세한 설명의 단순화들, 일반화들 및 생략들을 포함한다. 결론적으로, 당해 기술분야에서 통상의 지식을 가진 자는 상기 요약은 단지 예시적인 것이며 임의의 방식으로 제한하는 것으로 의도되지 않음을 인식할 것이다. 본 명세서에 기술된 디바이스들 및/또는 프로세스들의 다른 양태들, 진보적인 구성들, 및 이점들은, 청구범위들에 의해서만 정의된 것과 같이, 첨부 도면들과 함께 본 명세서에 제시된 상세한 설명에서 명백해 질 것이다.
도 1은 기술된 구현예에 따른 클릭 타입들 및 크리에이티브 확장을 사용하여 콘텐츠 성능을 최적화하도록 구성된 콘텐츠 생성 시스템을 갖는 컴퓨터 시스템의 블록 다이어그램이다.
도 2는 기술된 구현예에 따른 콘텐츠 성능 최적화를 위한 예측 모델들을 트레이닝하기 위해 클라이언트 디바이스로부터의 피드백을 사용하는 도 1의 콘텐츠 생성 시스템을 도시하는 블록 다이어그램이다.
도 3은 기술된 구현예에 따른 도 1의 콘텐츠 생성 시스템의 몇몇의 컴포넌트들을 도시하는 블록 다이어그램이며, 콘텐츠 추출기, 크리에이티브 선택기, 클릭 타입 선택기, 및 크리에이티브 확장 선택기를 포함한다.
도 4는 기술된 구현예에 따른 도 3의 콘텐츠 추출기를 더 상세히 도시하는 블록 다이어그램이다.
도 5는 기술된 구현예에 따른 추출된 데이터 애셋들을 사용하여 크리에이티브를 자동으로 생성하기 위해, 도 3의 크리에이티브 선택기에 의해 사용될 수 있는 크리에이티브 생성기를 도시하는 블록 다이어그램이다.
도 6은 기술된 구현예에 따른 도 3의 클릭 타입 선택기를 더 상세히 도시하는 블록 다이어그램이다.
도 7은 기술된 구현예에 따른 도 3의 크리에이티브 확장 선택기를 더 상세히 도시하는 블록 다이어그램이다.
도 8은 기술된 구현예에 따른 클릭 타입들을 사용하여 콘텐츠 성능을 최적화하기 위한 프로세스의 흐름도이다.
도 9는 기술된 구현예에 따른 크리에이티브 확장들을 사용하여 콘텐츠 성능을 최적화하기 위한 프로세스의 흐름도이다.
일반적으로 도면을 참조하면, 다양한 구현예들에 따라 자동화 된 콘텐츠 생성 및 최적화를 위한 시스템들 및 방법들이 도시된다. 본 명세서에 기술된 시스템들 및 방법들은 특정 콘텐츠 제공자, 특정 리소스(예를 들어, 웹페이지), 특정 플랫폼(platform)(예를 들어, 디스플레이 콘텐츠, 비디오 콘텐츠, 모바일 디바이스 콘텐츠, 텍스트 콘텐츠 등), 특정 관심 프로필(interest profile)(예를 들어, 사용자 관심들의 세트), 특정 노출(impression), 또는 이들의 임의의 조합에 맞춰진 콘텐츠 아이템들(예를 들어, 광고들)을 자동으로 생성하기 위해 사용될 수 있다. 콘텐츠 아이템들은 자동화 된 콘텐츠 생성 시스템에 의해 생성되고, 클라이언트 디바이스들에게 제공되며, 클라이언트 디바이스들을 통해 사용자들에게 제시될 수 있다. 생성된 콘텐츠 아이템들은 사용자 상호 작용(예를 들어, 콘텐츠 아이템을 클릭하는 것, 콘텐츠 아이템을 가리키는 것 등)에 응답하여, (예를 들어, 내장된 하이퍼 링크를 통해) 클라이언트 디바이스가 랜딩 리소스(landing resource)로 향하도록 구성될 수 있다.
일부 구현예들에서, 콘텐츠 생성 시스템은 랜딩 리소스 및/또는 다른 관련 데이터 리소스들(예를 들어, 랜딩 리소스와 관련된 2차 리소스, 별도의 데이터베이스 등)로부터 데이터 애셋들을 추출한다. 데이터 애셋들이 추출된 리소스들은 랜딩 리소스의 식별에 의해 정의될 수 있다. 추출된 데이터 애셋들은 이미지들, 색상들, 폰트들(fonts), 텍스트, 그래픽들, 비디오들, 스타일들(styles), 비즈니스 관련 정보(예를 들어, 지리적 위치, 연락처 정보 등), 페이지 분류, 및/또는 랜딩 리소스와 관련된 데이터의 다른 타입들을 포함할 수 있다. 콘텐츠 생성 시스템은 콘텐츠 아이템들을 생성하기 위해 추출된 데이터 애셋들을 사용할 수 있고, 상기 생성된 콘텐츠 아이템들과의 사용자 인터렉션(interaction)에 응답하여 상기 생성된 콘텐츠 아이템들은 (예를 들어, 내장된 하이퍼링크를 통해) 랜딩 리소스 및/또는 관련된 2차 리소스로 향한다.
생성된 콘텐츠 아이템들(예를 들어, 클릭 수, 전환 수(conversions), 및 이벤트들의 다른 타입들)에 대한 사용자 액션들은 로그(log)될 수 있고, 콘텐츠 생성 시스템에 의해 생성된 후속적인 콘텐츠 아이템들의 성능을 최적화하기 위해 사용될 수 있다. 생성된 콘텐츠 아이템들의 성능은 다양한 성능 메트릭들(metrics) 및/또는 로그된 사용자 액션들로부터 도출된 통계적인 데이터를 사용하여 정량화 될 수 있다. 이러한 성능 메트릭의 한 예는 콘텐츠 아이템, 콘텐츠 아이템들의 그룹, 또는 콘텐츠 분배 캠페인과 관련된 클릭률(CTR)이다. 콘텐츠 아이템에 대한 클릭률은 전환들을 결과로 하는 콘텐츠 아이템에 대한 클릭 수의 퍼센티지로서 정의될 수 있다(즉, CTR = 전환 수/클릭 수). 전환들은 미리 결정된 전환 기준(예를 들어, 제품 구매, 사용자 계정 생성, 특정 리소스를 보는데 소비한 임계 시간 등)을 만족시키는 이벤트 또는 사용자 액션일 수 있다.
일부 구현예들에서, 클릭 당 비용(cost-per-click: CPC) 방식으로 콘텐츠 제공자들에게 콘텐츠 아이템들에 대해 요금이 청구된다. 그러나, 모든 클릭들이 전환들을 결과로 하지 않는다. CPC 청구 시스템들에서, 콘텐츠 아이템에 대한 CTR은 콘텐츠 제공자에 의해 실현된 투자수익률(return on investment: ROI)과 상관될 수 있다. 콘텐츠 제공자들은 일반적으로 그들의 콘텐츠 분배 캠페인들과 관련된 ROI를 최대화하는 것을 추구한다. ROI를 최대화하는 한 가지 방식은 다양한 성능 메트릭들(예컨데, CTR)을 최대화하는 목표를 가지고 콘텐츠 선택 및 분배 결정들을 최적화하는 것이다.
본 명세서에 기술된 콘텐츠 생성 시스템은 생성된 콘텐츠 아이템들의 다양한 엘리먼트들, 특징들, 또는 속성들(attributes)을 자동으로 조정함으로써, 콘텐츠 성능을 최적화 할 수 있다. 일부 구현예들에서, 콘텐츠 생성 시스템은 특정 구성 또는 생성된 콘텐츠 아이템들의 구성들의 조합에 대한 추정된 성능 메트릭을 계산하기 위해, 하나 이상의 예측 모델들을 사용한다. 콘텐츠 생성 시스템은 특정 서빙 컨텍스트(particular serving context)에 대한 생성된 콘텐츠 아이템들에 포함시킬 최적의 구성들을 선택하기 위해, 예측 모델들을 사용할 수 있다. 예측 모델들은 입력들(예컨데, 랜딩 리소스 ID(예를 들어, URL) 또는 타입(예를 들어, 페이지 분류), 디바이스 타입(예를 들어, 모바일, 태블릿, 데스크탑 등), 콘텐츠 플랫폼(예를 들어, 비디오, 텍스트, 이미지 등), 디바이스 위치, 사용자 관심들, 또는 서빙 컨텍스트 및/또는 이용가능한 노출을 기술하는 다른 정보)을 수신하도록 구성될 수 있다. 예측 모델들은 주어진 서빙 컨텍스트에 기초하여 다양한 콘텐츠 아이템 구성들에 대한 예측된 성능 메트릭(예를 들어, 예측된 클릭률(click-through rate: pCTR))을 계산하기 위해 사용될 수 있다.
일부 구현예들에서, 콘텐츠 생성 시스템은 예측 모델들을 트레이닝 시키기 위해, 로그된 이벤트들 및/또는 이전에-생성된 콘텐츠 아이템들과 관련된 통계적인 데이터를 사용한다. 로그된 이벤트 데이터는 예측 모델들에 대한 피드백 신호로서 사용될 수 있고, (예를 들어, 머신 러닝 기법들(machine learning techniques)을 사용하여) 예측 모델들의 다양한 파라미터들을 조정하기 위해 사용될 수 있다. 예측 모델들을 트레이닝 시키기 위해 실제 이벤트 데이터를 사용하는 것은 예측 정확도를 향상시킬 수 있고, 새로운 이벤트들이 로그되었을 때 예측 모델들로 하여금 (예를 들어, 일정한 간격으로 또는 연속적으로) 업데이트 되도록 하게 할 수 있다.
예측 모델에 의해 최적화 될 수 있는 하나의 콘텐츠 아이템 구성은 콘텐츠 아이템의 "클릭 타입"이다. 콘텐츠 아이템에 대한 클릭 타입은 콘텐츠 아이템의 레이아웃(layout), 콘텐츠 아이템의 인터액티비티(interacivity) 및/또는 클라이언트 디바이스에 의해 콘텐츠 아이템이 랜더링(rendering) 되거나 제시되는 방법에 영향을 미칠 수 있다. 일부 구현예들에서, 콘텐츠 아이템에 대한 클릭 타입은 콘텐츠 제공자에게 요금을 청구하고 pCTR을 계산하는 목적들을 위해 "클릭"으로서의 자격을 주는 사용자 액션들의 타입들을 정의한다. 콘텐츠 생성 시스템은 "버튼" 클릭 타입, "전체 콘텐츠 아이템" 클릭 타입, 및 "확인" 클릭 타입을 포함하는 복수의 서로 다른 클릭 타입들로부터 클릭 타입을 선택할 수 있다.
버튼 클릭 타입은 콘텐츠 아이템의 특정 부분(예컨데, 클릭 가능한 버튼 또는 콘텐츠 아이템의 전체 영역의 다른 서브세트)과의 사용자 인터렉션으로서 클릭을 정의할 수 있다. 버튼 클릭 타입을 갖는 콘텐츠 아이템들에 대해, 콘텐츠 아이템의 다른 부분들(예를 들어, 클릭 가능한 영역 외부의 부분들)과의 사용자 인터렉션들은 클라이언트 디바이스로 하여금 랜딩 리소스로 네비게이트하지 않게 할 수 있고, 요금 청구 및/또는 성능 메트릭 계산의 목적들을 위한 클릭 수로서 자격을 주지 않을 수 있다.
전체 콘텐츠 클릭 타입은 콘텐츠 항목의 임의의 부분과의 사용자 인터렉션으로서 클릭을 정의할 수 있다. 전체 콘텐츠 아이템 클릭 타입을 갖는 콘텐츠 아이템들에 대해, 콘텐츠 아이템의 임의의 부분과의 사용자 인터렉션들은 클라이언트 디바이스로 하여금 랜딩 리소스로 네비게이트하게 할 수 있고, 요금 청구 및/또는 성능 메트릭 계산의 목적들을 위한 클릭 수로서 자격을 줄 수 있다.
확인 클릭 타입은 콘텐츠 아이템과의 제1 사용자 인터렉션(예를 들어, 제1 클릭)에 응답하여, 콘텐츠 아이템으로 하여금 확인 프롬프트(confirmation prompt)를 디스플레이 하게 할 수 있다. 확인 프롬프트는 랜딩 리소스로 네비게이트하기 위해 사용자에게 다시 클릭할 것을 지시하는 메시지를 디스플레이 할 수 있다. 확인 클릭 타입을 갖는 콘텐츠 아이템들에 대해, 콘텐츠 아이템과의 제2 사용자 인터렉션(예를 들어, 제2 클릭)은 클라이언트 디바이스로 하여금 랜딩 리소스로 네비게이트하게 할 수 있고, 요금 청구 및/또는 성능 메트릭 계산의 목적들을 위한 클릭 수로서 자격을 줄 수 있다. 확인 클릭 타입은 전환을 결과로 할 가능성이 없는 부주의한 클릭으로부터 보호하는데 유용할 수 있다.
예측 모델에 의해 최적화 될 수 있는 다른 콘텐츠 아이템 구성은 콘텐츠 아이템의 "크리에이티브 확장(creative extension)" 구성이다. 크리에이티브 확장은 프라이머리(primary) "크리에이티브" 부분에 추가하여, 콘텐츠 아이템의 보충적인 엘리먼트일 수 있다. 크리에이티브 확장은 예컨데, "콜 클릭(click-to-call)" 버튼, "위치" 버튼, "2차 리소스" 버튼, 및/또는 콘텐츠 아이템에 포함될 수 있는 보충적인 콘텐츠의 다른 타입들과 같은 클릭 가능한 버튼들을 포함할 수 있다. 각 크리에이티브 확장은 콘텐츠 아이템의 대응하는 부분이 클릭된 경우, 서로 다른 액션이 발생하도록 할 수 있다.
콜 클릭 버튼은 콘텐츠 아이템과 관련된 엔티티(entity)에 대해 전화 번호 또는 다른 연락처 정보가 알려져 있을 때, 모바일 통신 디바이스 상에 디스플레이 된 콘텐츠 아이템들을 위해 포함될 수 있다. 이러한 연락처 정보는 랜딩 리소스로부터 자동으로 추출되거나, 별도의 데이터베이스로부터 검색될 수 있다. 콜 클릭 버튼을 선택하는 것은 콘텐츠 아이템과 관련된 엔티티(예를 들어, 소매점, 고객 서비스 라인, 판매 대리점 등)와의 전화 통화 또는 다른 통신을 개시할 수 있다. 다른 디바이스 타입들(예를 들어, 데스크탑 컴퓨터, 태블릿 등)에 대해, 연락처 정보가 알려진 경우 상기 콜 클릭 버튼 대신 "이메일 클릭(click-to-email)" 버튼 또는 좀 더 일반적인 "연락 클릭(click-to-contact)" 버튼이 포함될 수 있다.
위치 버튼은 랜딩 리소스와 관련된 비즈니스의 지리적 위치를 도시하는 지도가 디스플레이 되도록 할 수 있다. 관련된 비즈니스의 지리적 위치(예를 들어, 거리 주소, 상점 위치, 우편 주소, GPS 좌표 등)는 랜딩 리소스, 별도의 데이터베이스, 또는 랜딩 리소스와 관련된 리소스로부터 추출될 수 있다. 위치 버튼을 선택하는 것은 맵 어플리케이션으로 하여금 로드(load)되도록 하거나, 사용자의 웹 브라우저로 하여금 맵 리소스(예를 들어, Google Maps)로 네비게이트하도록 한다.
2차 리소스 버튼은 2차 리소스가 디스플레이 되도록 한다. 콘텐츠 아이템은 다수의 서로 다른 리소스들 또는 리소스의 부분들(예를 들어, 2차 리소스, 소셜 리소스(social resource), 랜딩 리소스 등)에 대한 크리에이티브 확장들(예를 들어, 선택 가능한 버튼들 또는 링크들)을 포함할 수 있다. 일부 구현예들에서, 콘텐츠 아이템은 오직 2차 리소스로 링크되며(그리고 랜딩 리소스로 링크되지 않는다), 소셜 콘텐츠 아이템으로서 지칭될 수 있다. 다른 구현예들에서, 콘텐츠 아이템은 랜딩 리소스 및 2차 리소스 모두에 링크된다.
콘텐츠 생성 시스템에 의해 생성된 콘텐츠 아이템들은 통신 네트워크(예를 들어, 인터넷)를 통해, 클라이언트 디바이스들에게 서브된다. 콘텐츠 아이템들과 관련된 이벤트들(예를 들어, 노출 수, 클릭 수, 전환 수 등)은 로그되고, 콘텐츠 생성 시스템에 액세스 가능한 데이터베이스에 저장된다. 콘텐츠 생성 시스템은 콘텐츠 아이템들과 관련된 성능 메트릭들을 계산하고 예측 모델들을 트레이닝 시키기 위해, 로그된 이벤트들을 사용한다. 콘텐츠 생성 시스템은 주어진 서빙 컨텍스트(예를 들어, CTR, pCTR, 또는 다른 성능 메트릭을 최적화하는 구성들)에 대한 최적화 콘텐츠 성능을 결과로 하는 것으로 추정되는 콘텐츠 아이템들의 구성 또는 구성들의 조합을 결정하기 위해, 예측 모델들을 사용한다. 그 후, 콘텐츠 생성 시스템은 최적화 콘텐츠 성능을 결과로 하는 것으로 추정된 구성들을 갖는 콘텐츠 아이템들을 자동으로 생성할 수 있다.
이제 도 1을 참조하면, 기술된 구현예에 따른 컴퓨터 시스템(100)의 블록 다이어그램이 도시된다. 컴퓨터 시스템(100)은 네트워크(102), 콘텐츠 요청자들(104), 리소스들(106), 클라이언트 디바이스들(108), 리소스 랜더링기(110), 데이터 저장 디바이스들(112), 및 콘텐츠 생성 시스템(114)을 포함하는 것으로 도시된다.
네트워크(102)는 컴퓨터 네트워크의 임의의 타입(예컨데, 근거리 통신망들(LAN), 광역 통신망들(WAN), 셀룰러 통신망들, 위성 통신망들, 무선 통신망들, 인터넷, 또는 데이터 통신망의 임의의 다른 타입)을 포함할 수 있다. 네트워크(102)는 데이터를 전송, 수신, 또는 중계(relay)하도록 구성된 임의의 수의 컴퓨팅 디바이스들(예를 들어, 컴퓨터들, 서버들, 라우터들, 네트워크 스위치들 등)을 포함할 수 있다. 네트워크(102)는 임의의 수의 하드웨어 내장(hardwired) 및/또는 무선 연결들을 더 포함할 수 있다. 예를 들면, 콘텐츠 요청기(104)는 (예를 들어, 광섬유 케이블, CAT5 케이블 등을 통해) 네트워크(102)의 컴퓨팅 디바이스에 하드웨어 내장된 전송기와 (예를 들어, WiFi, 셀룰러, 무선 등을 통해) 무선으로 통신할 수 있다.
네트워크(102)는 콘텐츠 생성 시스템(114)과 콘텐츠 요청자들(104)과의 통신을 지원(facilitate)할 수 있다. 콘텐츠 생성 시스템(114)은 네트워크(102)를 통해 콘텐츠 요청자들(104)로부터 콘텐츠 생성 요청을 수신할 수 있다. 콘텐츠 생성 시스템(114)은 상기 요청에 응답하여 콘텐츠 아이템들을 생성하고, 검토 또는 승인을 위해 생성된 콘텐츠 아이템들을 콘텐츠 요청자들(104)에게 제공할 수 있다.
또한, 네트워크(102)는 콘텐츠 생성 시스템(114), 리소스들(106)과 리소스 랜더링기(110) 사이의 통신을 지원할 수 있다. 콘텐츠 생성 시스템(114)은 리소스들(106) 및/또는 리소스 랜더링기(110)로부터 데이터 애셋들을 수신할 수 있다. 콘텐츠 생성에 대한 요청을 수신함에 따라, 콘텐츠 생성 시스템(114)은 리소스들(106)로부터 데이터(예를 들어, HTML 데이터, 웹페이지 데이터 등)를 획득(예를 들어, 다운로드)하고 랜더링하기 위해, 리소스 랜더링기(110)를 인보크(invoke)할 수 있다. 리소스 랜더링기(110)는 네트워크(102)를 통해 리소스들(106)로부터 데이터를 수신하고, 이러한 데이터를 스냅샷 이미지(예를 들어, 리소스들(106)의 시각적인 표현) 및/또는 문서 객체 모델(document object model: DOM) 트리로서 랜더링 할 수 있다. 랜더링된 데이터는 네트워크(102)를 통해, 리소스 랜더링기(110)에서 콘텐츠 생성 시스템(114)으로 전송될 수 있다.
여전히 도 1을 참조하면, 컴퓨터 시스템(100)은 콘텐츠 요청자들(104)을 포함하는 것으로 도시된다. 콘텐츠 요청자들(104)은 콘텐츠 아이템을 생성하기 위한 요청이 수신되는 하나 이상의 엔티티들을 포함할 수 있다. 예를 들면, 콘텐츠 요청자들(104)은 광고주, 광고 에이전시, 서드-파티 콘텐츠 제공자(third-party content provider), 발행자, 웹사이트 제공자, 또는 콘텐츠 아이템을 생성하기 위한 요청이 수신될 수 있는 임의의 다른 엔티티를 포함할 수 있다.
일부 구현예들에서, 콘텐츠 요청자들(104)은 콘텐츠 생성에 대한 요청을 제출할 수 있는 하나 이상의 전자 디바이스들(예를 들어, 컴퓨터, 컴퓨터 시스템, 서버 등)을 포함한다. 콘텐츠 요청자들(104)은 사용자 입력 디바이스(예를 들어, 키보드, 마우스, 마이크로폰, 터치-스크린, 태블릿, 스마트폰 등)를 포함할 수 있고, 이를 통해 사용자는 콘텐츠 생성 요청을 입력할 수 있다. 콘텐츠 요청자들(104)은 네트워크(102)를 통해 콘텐츠 생성 요청을 콘텐츠 생성 시스템(114)에 제출할 수 있다. 일부 구현예들에서, 콘텐츠 생성 요청은 URL(uniform resource locator)을 포함한다. URL은 특정 랜딩 리소스(예를 들어, 리소스들(106) 중 하나)의 위치를 특정할 수 있다.
일부 구현예들에서, 콘텐츠 요청자들(104)은 캠페인 파라미터들(campaign parameters)을 콘텐츠 생성 시스템(114)에 제출한다. 캠페인 파라미터들은 콘텐츠 생성 시스템(114)에 의해 생성된 콘텐츠 아이템들의 분배를 제어하기 위해 사용될 수 있다. 캠페인 파라미터들은 콘텐츠 아이템들과 관련된 키워드들, 상기 키워드들에 대응하는 입찰들, 콘텐츠 분배 버짓(content distribution budget), 지리적 리미터들(geographic limiters), 또는 콘텐츠 아이템이 클라이언트 디바이스들(108)에 제시될 수 있는 때를 결정하기 위해 콘텐츠 생성 시스템(114) 또는 별도의 콘텐츠 서버에 의해 사용되는 다른 기준을 포함할 수 있다.
콘텐츠 요청자들(104)은 설정된 캠페인 파라미터들에 따라 분배된 콘텐츠 아이템들의 성능을 모니터(monitor) 하기 위해, 콘텐츠 생성 시스템(114)에 액세스(access)할 수 있다. 예를 들면, 콘텐츠 요청자들(104)은 콘텐츠 아이템 또는 콘텐츠 아이템들의 세트와 관련된 하나 이상의 성능 메트릭들을 검토하기 위해, 콘텐츠 생성 시스템(114)에 액세스할 수 있다. 성능 메트릭들은 분배된 콘텐츠 아이템 또는 콘텐츠 아이템들의 세트(예를 들어, 노출들의 수, 클릭들의 수, 전환들의 수, 소비된 총계 등)에 대한 클라이언트 디바이스들(108) 사이의 인터렉션들을 기술할 수 있다. 성능 메트릭들은 계정 시스템 또는 로그 파일 프로세싱 시스템(log file processing system)에 의해 로그되고 프로세스 된 사용자 액션들에 기초할 수 있다.
여전히 도 1을 참조하면, 컴퓨터 시스템(100)은 리소스들(106)을 포함하는 것으로 도시된다. 리소스들(106)은 네트워크(102)를 통해 제공될 수 있는 정보 또는 데이터 구조의 임의의 타입을 포함할 수 있다. 일부 구현예들에서, 리소스들(106)은 리소스 주소(예컨데, URL)에 의해 식별될 수 있다. 리소스들(106)은 웹 페이지들(예를 들어, HTML 웹 페이지들, PHP 웹 페이지들 등), 단어 프로세싱 문서들, PDF(portable document format) 문서들, 이미지들, 비디오, 프로그래밍 엘리먼트들, 인터렉티브 콘텐츠, 스트리밍 비디오/오디오 소스들, 또는 전자 정보의 다른 타입들을 포함할 수 있다.
리소스들(106)은 로컬 리소스들, 인트라넷 리소스들, 인터넷 리소스들, 또는 다른 네트워크 리소스들을 포함할 수 있다. 일부 구현예들에서, 리소스들(106)은 클라이언트 디바이스들(108)이 콘텐츠 생성 시스템(114)에 의해 생성된 콘텐츠 아이템과 인터렉트 할 때, (예를 들어, 내장된 하이퍼링크를 통해) 클라이언트 디바이스들(108)이 향해지는 하나 이상의 웹페이지들을 포함한다. 일부 구현예들에서, 리소스들(106)은 생성된 콘텐츠 아이템들에 포함된 제품, 서비스, 또는 비즈니스에 대한 추가적인 정보를 제공한다. 예를 들면, 리소스들(106)은 웹페이지 또는 웹사이트일 수 있고, 이를 통해 생성된 콘텐츠 아이템에 포함된 제품 또는 서비스가 구매될 수 있다.
리소스들(106)은 랜딩 리소스들 및/또는 2차 리소스들을 포함할 수 있다. 일부 구현예들에서, 랜딩 리소스는 콘텐츠 아이템들을 생성하기 위한 요청의 일부로서 콘텐츠 요청자들(104)에 의해 특정된다. 랜딩 리소스는 URL로서 특정될 수 있고, 상기 URL은 리소스들(106) 중 하나로 향하거나 랜딩 리소스의 위치를 특정한다. 랜딩 리소스의 URL은 콘텐츠 생성 요청의 일부로서 포함될 수 있다. 2차 리소스들은 특정된 랜딩 리소스와 관련될 수 있다. 2차 리소스들은 리소스들(106)(예를 들어, 웹페이지들, 웹사이트들, 단어 프로세싱 문서들, 비디오들, PDF 문서들 등)의 임의의 타입을 포함할 수 있고, 프라이머리 랜딩 리소스(primary landing resource)와 관련될 수 있다. 다양한 구현예들에서, 랜딩 리소스와 2차 리소스 사이의 관련은 랜딩 리소스(예를 들어, 랜딩 리소스에서 2차 리소스를 링크하는 하이퍼링크)에서 추출된 데이터 애셋들 및/또는 랜딩 리소스와 2차 리소스 사이의 이전에-저장된 관련(예를 들어, 데이터 저장 디바이스들(112)에 저장된 관련)을 사용하여 식별 및/또는 생성될 수 있다. 일부 구현예들에서, 콘텐츠 생성 시스템(114)은 특정된 랜딩 리소스와 관련된 2차 리소스를 식별하기 위해 데이터 저장 디바이스들(112)에 액세스한다.
일부 구현예들에서, 리소스들(106)은 콘텐츠 요청자들(104)과 결합될 수 있다. 예를 들면, 리소스들(06)은 콘텐츠 요청자들(104)에 의해 유지되는 하나 이상의 전자 디바이스들(예를 들어, 컴퓨터들, 서버들 등) 상에 저장된 데이터를 포함할 수 있다. 다른 구현예들에서, 리소스들(106)은 콘텐츠 요청자들(104)로부터 분리될 수 있다. 예를 들면, 리소스들(106)은 원격 서버(예를 들어, FTP 서버들, 파일 공유 서버들, 웹 서버들 등), 서버들의 조합들(예를 들어, 데이터 센터들, 클라우드 컴퓨팅 플랫폼 등), 또는 콘텐츠 요청자들(104)로부터 분리된 저장 디바이스들 상에 저장된 데이터를 포함할 수 있다.
여전히 도 1을 참조하면, 컴퓨터 시스템(108)은 클라이언트 디바이스들(108)을 포함하는 것으로 도시된다. 클라이언트 디바이스들(108)은 사용자-동작가능한 전자 디바이스들의 임의의 수 및/또는 타입을 포함할 수 있다. 예를 들면, 클라이언트 디바이스들(108)은 데스크탑 컴퓨터들, 랩탑 컴퓨터들, 스마트폰들, 태블릿들, 모바일 통신 디바이스들, 원격 워크 스테이션들, 클라이언트 단말기들, 엔터테인먼트 콘솔들, 또는 (통신 인터페이스를 통해) 컴퓨터 시스템(100)의 다른 컴포넌트들과 인터렉트 할 수 있는 임의의 다른 디바이스들을 포함할 수 있다. 클라이언트 디바이스들(108)은 리소스들(106) 및/또는 콘텐츠 생성 시스템(114)에 의해 생성된 서드-파티 콘텐츠 아이템들로부터 리소스 콘텐츠를 수신할 수 있다. 클라이언트 디바이스들(108)은 모바일 디바이스들 또는 비-모바일 디바이스들을 포함할 수 있다.
일부 구현예들에서, 클라이언트 디바이스들(108)은 전자 콘텐츠를 사용자-이해가능한 포맷(예를 들어, 시각적, 청각적, 그래픽적 포맷 등)으로 변환하기 위한 어플리케이션(예를 들어, 웹 브라우저, 리소스 랜더링기 등)을 포함한다. 클라이언트 디바이스들(108)은 콘텐츠를 사용자에게 제시하거나, 사용자 입력을 수신하거나, 전자 콘텐츠와의 사용자 인터렉션(예를 들어, 콘텐츠 아이템을 클릭하는 것, 콘텐츠 아이템을 가리키는 것 등)을 위한 사용자 인터페이스 엘리먼트(예를 들어, 전자 디스플레이, 스피커, 키보드, 마우스, 마이크로폰, 프린터 등)를 포함할 수 있다. 클라이언트 디바이스들(108)은 사용자로 하여금 HTML 인코딩 된 콘텐츠를 볼 수 있도록 하기 위한 사용자 에이전트로서 기능할 수 있다.
클라이언트 디바이스들(108)은 내장된 정보(예를 들어, 하이퍼링크들에 내장된 메타 정보 등)를 프로세싱 하고 내장된 명령어들을 실행할 수 있는 프로세서를 포함할 수 있다. 내장된 명령어들은 서드-파티 콘텐츠 아이템이 제시된 콘텐츠 슬롯과 관련된 컴퓨터-판독가능한 명령어들(예를 들어, 소프트웨어 코드, JavaScript®, ECMAScript® 등)을 포함할 수 있다.
일부 구현예들에서, 클라이언트 디바이스들(108)은 분배된 콘텐츠 아이템과의 인터렉션을 검출할 수 있다. 콘텐츠 아이템과의 인터렉션은 콘텐츠 아이템을 디스플레이 하는 것, 콘텐츠 아이템을 가리키는 것, 콘텐츠 아이템을 클릭하는 것, 콘텐츠 아이템에 대한 리소스 정보를 보는 것, 또는 클라이언트 디바이스들(108)과 콘텐츠 아이템 사이의 인터렉션의 임의의 다른 타입을 포함할 수 있다. 콘텐츠 아이템과의 인터렉션은 특정 콘텐츠 아이템에 대한 사용자에 의한 명시적인 액션을 요구하지 않는다. 일부 구현예들에서, 노출(예를 들어, 콘텐츠 아이템을 디스플레이 하거나 제시하는 것)은 인터렉션으로서 자격이 될 수 있다. 어떠한 사용자 액션들(예를 들어, 능동적 또는 수동적인 사용자 액션들)이 인터렉션으로서 자격이 있는지를 정의하기 위한 기준은 콘텐츠 요청자들(104) 또는 콘텐츠 생성 시스템(114)에 의해 개별적 기준으로(예를 들어, 각 콘텐츠 아이템에 대해) 결정될 수 있다.
클라이언트 디바이스들(108)은 콘텐츠 아이템들에 관한 사용자 액션들을 기술하는 이벤트 데이터를 생성할 수 있다. 예를 들면, 클라이언트 디바이스들(108)은 콘텐츠 아이템과의 검출된 인터렉션에 응답하여 이벤트 데이터를 생성할 수 있다. 이벤트 데이터는 콘텐츠 식별자(예를 들어, 콘텐츠 ID 또는 서명(signature) 엘리먼트), 디바이스 식별자, 참조 URL 식별자, 타임스탬프(timestamp)를 포함하는 복수의 속성들, 또는 인터렉션을 기술하는 임의의 다른 속성들을 포함할 수 있다. 일부 구현예들에서, 이벤트 데이터는 서빙 컨텍스트(예를 들어, 디바이스 타입, 플랫폼 등)의 표시 및 서브된 콘텐츠 아이템(예를 들어, 클릭 타입, 크리에이티브 확장 등)의 하나 이상의 속성들의 표시를 포함한다. 클라이언트 디바이스들(108)은 특정 액션들이 클라이언트 디바이스에 의해 수행된 경우(예를 들어, 리소스 뷰들(resource views), 온라인 구매들, 제출된 검색 쿼리들 등), 이벤트 데이터를 생성할 수 있다. 클라이언트 디바이스들(108)에 의해 생성된 이벤트 데이터는 콘텐츠 생성 시스템(114) 또는 별도의 계정 시스템으로 전달될 수 있다. 콘텐츠 생성 시스템(114)은 콘텐츠 성능을 최적화하기 위한 예측 모델을 트레이닝 시키기 위해, 이벤트 데이터를 사용할 수 있다.
본 명세서에서 논의된 시스템들이 사용자들에 대한 개인 정보를 수집하거나 개인 정보를 사용할 수 있는 상황들에 대해, 사용자들은 프로그램들 또는 구성들이 사용자 정보(예를 들어, 사용자의 소셜 네트워크, 소셜 액션들 또는 활동들, 직업, 사용자의 선호도, 또는 사용자의 현재 위치에 대한 정보)를 수집할지 여부를 제어하거나, 사용자에게 더 관련이 있는 콘텐츠 서버로부터 콘텐츠를 수신할지 여부 및/또는 그 방법을 제어할 수 있는 기회를 제공받을 수 있다. 추가적으로, 특정 데이터는 그것이 저장되거나 사용되기 이전에 (예를 들어, 콘텐츠 생성 시스템(114)에 의해) 하나 이상의 방식들로 처리(treat)될 수 있어, 개인적으로 식별가능한 정보가 제거된다. 예를 들면, 사용자의 신원이 처리되어 사용자에 대한 개인적으로 식별가능한 정보가 결정될 수 없거나, 위치 정보가 획득된 사용자의 지리적 위치(예컨데, 도시, 우편 번호, 또는 주 레벨(state level))가 일반화 되어 사용자의 특정 위치가 결정될 수 없도록 할 수 있다. 그러므로, 사용자는 (예를 들어, 어플리케이션, 클라이언트 디바이스들(108) 등에 의해) 정보가 수집되고 콘텐츠 생성 시스템(114)에 의해 사용되는 방법에 대한 제어를 가질 수 있다.
여전히 도 1을 참조하면, 시스템(100)은 리소스 랜더링기(110)를 포함하는 것으로 도시된다. 리소스 랜더링기(110)는 리소스들(106)을 해석하고 이들의 랜더링된 표현(예를 들어, 이미지, 디스플레이 등)를 생성할 수 있는 하드웨어 또는 소프트웨어 컴포넌트일 수 있다. 예를 들면, 리소스들(106)은 마크업 된 콘텐츠(marked up content)(예를 들면, HTML, XML, 이미지 URL들 등)뿐만 아니라 포맷팅 정보(예를 들어, CSS, XSL 등)를 포함할 수 있다. 리소스 랜더링기(110)는 마크업 된 콘텐츠 및 포맷팅 정보를 다운로드 할 수 있고, 월드 와이드 웹 컨소시엄(World Wide Web Consortium: W3C) 표준들에 따라 리소스들(106)을 랜더링 할 수 있다. 리소스 랜더링기(110)는 리소스들(106)의 "스냅샷 이미지"를 생성 및/또는 리소스들(106)을 표현하는 문서 객체 모델(DOM) 트리를 구성할 수 있다.
스냅샷 이미지는 특정 랜딩 리소스의 시각적인 표현일 수 있다. 스냅샷 이미지는 랜딩 리소스를 랜더링 한 이후에 사용자 인터페이스 디바이스(예를 들어, 전자 디스플레이 스크린, 컴퓨터 모니터, 터치-감지 디스플레이 등) 상에 제시되는 것으로서 랜딩 리소스의 시각적인 외관(visual appearance)을 도시할 수 있다. 스냅샷 이미지는 랜딩 리소스에 대한 색상 정보(예를 들어, 픽셀 색상, 밝기, 채도 등)와 스타일 정보(예를 들어, 사각형 모서리, 둥근 가장자리들, 모던식(modern), 러스틱(rustic) 등)를 포함할 수 있다. 일부 구현예들에서, 스냅샷 이미지는 임의의 실행가능한 파일 확장자(예를 들어, .jpg, .png, .bmp 등)를 갖는 그림 파일일 수 있다.
DOM 트리는 특정 랜딩 리소스의 계층 모델(hierarchical model)일 수 있다. DOM 트리는 랜딩 리소스의 복수의 데이터 애셋들을 식별할 수 있다. DOM 트리는 랜딩 리소스에 대한 이미지 정보(예를 들어, 이미지 URL들, 디스플레이 위치들, 디스플레이 크기들, 대체 텍스트 등), 폰트 정보(예를 들어, 폰트 이름들, 크기들, 효과들 등), 색상 정보(예를 들어, RGB 색상 값들, 16진수 색상 코드들 등) 및 텍스트 정보를 포함할 수 있다. DOM 트리는 스냅샷 이미지에서 직접적으로 시각화 할 수 없는 데이터 애셋들(예를 들어, 메타데이터, 하이퍼링크 URL들, 객체 속성들 등)을 포함할 수 있다. 리소스 랜더링기(110)는 랜딩 리소스의 모든 데이터 애셋들을 포함하는 랜딩 리소스의 랜더링된 표현을 생성할 수 있다. 데이터 애셋들은 DOM 트리의 노드들(nodes) 및/또는 스냅샷 이미지의 구성들로서 콘텐츠 생성 시스템(114)으로 제공될 수 있다.
다양한 구현예들에서, 리소스 랜더링기(110)는 콘텐츠 생성 시스템(114), 클라이언트 디바이스들(1080, 또는 별도의 컴포넌트의 일부 일 수 있다. 리소스 랜더링기(110)는 콘텐츠 생성 시스템(114)으로부터의 랜더링 요청에 응답하여, 스냅샷 이미지 및/또는 DOM 트리를 준비할 수 있다. 리소스 랜더링기(110)는 랜더링 요청에 응답하여, 스냅샷 이미지 및/또는 DOM 트리를 콘텐츠 생성 시스템(114)으로 전송할 수 있다.
여전히 도 1을 참조하면, 컴퓨터 시스템(100)은 데이터 저장 디바이스들(112)을 포함하는 것으로 도시된다. 데이터 저장 디바이스들(112)은 프로필 데이터, 콘텐츠 아이템 데이터, 계정 데이터, 또는 콘텐츠 생성 시스템(114) 또는 컴퓨터 시스템(100)의 다른 컴포넌트에 의해 사용되는 데이터의 임의의 다른 데이터를 저장할 수 있는 메모리 디바이스의 임의의 타입일 수 있다. 데이터 저장 디바이스들(112)은 비-휘발성 메모리, 미디어, 또는 메모리 디바이스들의 임의의 타입을 포함할 수 있다. 예를 들면, 데이터 저장 디바이스들(112)은 반도체 메모리 디바이스들(예를 들어, EPROM, EEPROM, 플래쉬 메모리 디바이스들 등), 자기 디스크(예를 들어, 내장 하드 디스크들, 탈착식 디스크들 등), 자기-광학 디스크들, 및/또는 CD-ROM 및 DVD-ROM 디스크들을 포함할 수 있다.
일부 구현예들에서, 데이터 저장 디바이스들(112)은 콘텐츠 생성 시스템(114), 리소스들(106), 또는 콘텐츠 요청자들(104)과 로컬(local)이다. 다른 구현예들에서, 데이터 저장 디바이스들(112)은 네트워크(102)를 통해 콘텐츠 생성 시스템(114) 및/또는 콘텐츠 요청자들(104)과 연결된 원격 데이터 저장 디바이스들이다. 일부 구현예들에서, 데이터 저장 디바이스들(112)은 콘텐츠 생성 시스템(114) 및/또는 콘텐츠 요청자들(104)로부터 쿼리들을 수신하고 이들에 응답할 수 있는 데이터 저장 서버 또는 시스템의 일부이다.
일부 구현예들에서, 데이터 저장 디바이스들(112)은 리소스들(106)로부터 추출된 데이터 애셋들을 저장한다. 예를 들면, 데이터 저장 디바이스들(112)은 리소스들(106) 상에 디스플레이 된 다양한 이미지들에 대한 이미지 데이터를 저장할 수 있다. 이미지 데이터는 실제 이미지들(예를 들어, 이미지 파일들), 이미지들의 URL 위치들, 이미지 속성들, 이미지 메타데이터, 또는 리소스들(106) 상에 디스플레이 되는 이미지들의 다른 속성들을 포함할 수 있다. 데이터 저장 디바이스들(112)은 텍스트 데이터, 색상 데이터, 스타일 데이터, 비디오 데이터, 레이아웃 데이터, 분류 데이터, 및/또는 리소스들(106)로부터 추출되거나 다른 데이터 소스들로부터 획득된 데이터의 다른 타입들을 저장할 수 있다. 데이터 애셋들은 리소스 식별자와 함께 데이터 저장 디바이스들(112)에 저장될 수 있다. 리소스 식별자는 데이터 애셋들이 추출된 리소스 또는 데이터 애셋과 관련이 있는 리소스를 표시할 수 있다.
일부 구현예들에서, 데이터 저장 디바이스들(112)은 랜딩 리소스들과 (예를 들어, 데이터베이스, 데이터 테이블 등의) 2차 리소스들 사이의 관련들을 저장한다. 콘텐츠 생성 시스템(114)은 특정된 랜딩 리소스와 관련된 2차 리소스를 식별하기 위해, 데이터 저장 디바이스들(112)에 액세스 할 수 있다. 데이터 저장 디바이스들(112)은 특정된 랜딩 리소스와 관련된 특정 소셜 네트워킹 리소스(예를 들어, Google+ 페이지)의 URL을 저장할 수 있다. 데이터 저장 디바이스들(112)은 리소스들(106)과 관련된 브랜딩 정보(branding information)를 저장한다. 데이터 저장 디바이스들(112)은 매우 다양한 소스들(예를 들어, Google Knowledge Graph)로부터 수집된 의미론적인 정보(semantic information)을 포함하는 지식 베이스(knowledge base)를 저장할 수 있다. 지식 베이스는 랜딩 리소스들과 관련된 다른 리소스들로의 링크들의 리스트에 추가하여, 다양한 랜딩 리소스들에 대한 체계적이고 상세한 정보를 제공할 수 있다.
데이터 저장 디바이스들(112)은 콘텐츠 요청자들(104)과 함께 사용된 이전의 콘텐츠 아이템들을 저장할 수 있다. 이전의 콘텐츠 아이템들은 콘텐츠 요청자들(104)에 의해 제공된 콘텐츠 아이템들, 콘텐츠 요청자들(104)을 위해 콘텐츠 생성 시스템(114)에 의해 생성된 콘텐츠 아이템들, 콘텐츠 요청자들(104)에 의해 이전에 사용되었거나 승인된 이미지들, 및/또는 이전에 생성된 콘텐츠 아이템들의 다른 컴포넌트들을 포함할 수 있다. 데이터 저장 디바이스들(112)은 리소스들(106)로부터 추출된 페이지 상의 이미지들, 콘텐츠 요청자들(104)에 의해 이전에 사용되었거나 승인된 이미지들, 및/또는 리소스들(106)로부터 추출되지 않았거나 콘텐츠 요청자들(104)에 의해 승인되지 않았던 다른 이미지들을 위한 이미지 저장소일 수 있다.
일부 구현예들에서, 데이저 저장 디바이스들(112)은 이벤트 데이터, 통계적 데이터, 또는 클라이언트 디바이스들(108)에 서브되는 콘텐츠 아이템들과 관련된 성능 데이터를 저장한다. 이벤트 데이터는 서빙 컨텍스트의 표시(예를 들어, 디바이스 타입, 플랫폼 등) 및 서브된 콘텐츠 아이템들의 하나 이상의 속성들의 표시(예를 들어, 클릭 타입, 크리에이티브 확장 등), 및/또는 서브된 콘텐츠 아이템들에 대한 사용자 행동들(예를 들어, 클릭 수, 전환 수 등)을 포함할 수 있다. 통계적인 데이터는 다양한 콘텐츠 아이템들 또는 콘텐츠 아이템들의 그룹들에 대한 이벤트 데이터(예를 들어, 클릭들의 전체 수, 전환들의 전체 수)에 기초한 통계들을 포함할 수 있다. 통계적인 데이터는 주어진 서빙 컨텍스트의 특정 구성 또는 구성들의 세트를 갖는 콘텐츠 아이템들의 성능을 기술할 수 있다. 성능 데이터는 콘텐츠 아이템들 또는 콘텐츠 아이템들의 그룹들에 대한 이벤트 데이터 및/또는 통계적인 데이터에 기초하여 계산된 성능 메트릭들(예를 들어, CTR)을 포함할 수 있다.
여전히 도 1을 참조하면, 컴퓨터 시스템(100)은 콘텐츠 생성 시스템(114)을 포함하는 것으로 도시된다. 콘텐츠 생성 시스템(114)은 리소스들(106)로부터 데이터 애셋들(예를 들어, 이미지들, 색상들, 텍스트들, 포트들, 스타일들 등)을 추출하도록 구성될 수 있다. 콘텐츠 생성 시스템(114)은 추가적인 데이터 애셋들을 생성(예를 들어, 웹페이지 분류에 기초하여 액션 콜 텍스트를 생성) 및/또는 추가적인 데이터 애셋들이 획득된 2차 리소스들을 식별하기 위해, 추출된 데이터 애셋들을 프로세스 할 수 있다. 콘텐츠 생성 시스템(114)은 추출된 데이터 애셋들을 프로세스 하고(예를 들어, 이미지들을 잘라내는 것 높은 콘트라스트 색상 스킴들(contrast color schemes)을 식별하는 것, 추출된 텍스트로부터 텍스트 스니펫들(snippets)을 생성하는 것 등), 생성된 콘텐츠 아이템에서 사용하기 위한 다양한 데이터 애셋들을 선택할 수 있다.
콘텐츠 생성 시스템(114)은 선택된 데이터 애셋들을 포함하는 콘텐츠 아이템을 생성할 수 있다. 일부 구현예들에서, 콘텐츠 생성 시스템(114)은 다양한 서로 다른 포맷(예를 들어, 비디오, 디스플레이, 텍스트 등)으로 콘텐츠 아이템들을 생성하고, 각 포맷으로 콘텐츠 아이템들을 스코어(score)한다. 콘텐츠 생성 시스템(114)은 승인을 위해 가장 높은 스코어링 콘텐츠 아이템들을 콘텐츠 요청자들(104)에게 제공하고, 클라이언트 디바이스들(108)로의 후속적인 전달을 위해 콘텐츠 아이템들을 저장할 수 있다. 콘텐츠 생성 시스템(114)은 도 2 내지 7을 참조하여 더 상세히 기술된다.
이제 도 2를 참조하면, 기수된 구현예들에 따른 콘텐츠 성능을 최적화하기 위한 폐루프 시스템(closed loop system)(200)이 도시된다. 시스템(200)은 콘텐츠 생성 시스템(114) 및 클라이언트 디바이스(108)를 포함하는 것으로 도시된다. 콘텐츠 생성 시스템(114)은 원격 시스템 또는 디바이스로부터 콘텐츠 요청(202)을 수신할 수 있다. 다양한 구현예들에서, 콘텐츠 요청(202)은 콘텐츠 요청자들(104)로부터, 콘텐츠 서버, 실-시간 입찰 시스템으로부터, 또는 클라이언트 디바이스(108)로부터 수신될 수 있다. 콘텐츠 요청(202)은 온라인 콘텐츠 서빙 프로세스의 일부로서 클라이언트 디바이스(108)로부터 수신될 수 있다(예를 들어, 웹페이지 상에 디스플레이 하기 위한 광고에 대한 요청). 콘텐츠 요청(202)은 특정 서빙 컨텍스트의 표시(예컨데, 디바이스 타입, 플랫폼, 콘텐츠가 제시될 디바이스의 위치, 현재 시간, 클라이언트 디바이스와 관련된 관심 카테고리, 콘텐츠와 함께 제시될 리소스의 ID 또는 카테고리, 또는 특정 노출 및/또는 서빙 컨텍스트의 다른 속성들)를 포함할 수 있다.
콘텐츠 생성 시스템(114)은 이벤트 로그 데이터베이스(208)로부터 이벤트 데이터(204)를 수신하는 것으로 도시된다. 다양한 구현예들에서, 이벤트 데이터(204)는 이벤트 로그 데이터베이스(208)로부터, 로그 파일 프로세싱 시스템으로부터, 또는 클라이언트 디바이스(108)로부터 직접 수신될 수 있다. 이벤트 데이터(204)는 클라이언트 디바이스(108)로 이전에 서브되었던 콘텐츠 아이템들과 관련하여 클라이언트 디바이스(108)의 행동을 기술할 수 있다. 콘텐츠 생성 시스템(114)은 하나 이상의 콘텐츠 성능 예측 모델들(206)을 트레이닝 시키기 위해, 이벤트 데이터(204)를 사용할 수 있다. 콘텐츠 성능 예측 모델들(206)은 주어진 서빙 컨텍스트에 대해 생성된 콘텐츠 아이템에 잠재적으로 포함될 수 있는 구성 또는 구성들의 결합의 성능을 예측하도록 구성될 수 있다.
콘텐츠 생성 시스템(114)은 최적의 콘텐츠 성능을 결과로 하는 것으로 추정된 특정 구성 또는 구성들의 결합(예를 들어, 성능 메트릭(예컨데, pCTR)을 최대화 시키는 구성들)을 선택하기 위해, 예측 모델들(206)을 사용할 수 있다. 일부 구현예들에서, 콘텐츠 생성 시스템(114)은 크리에이티브(212), 클릭 타입(214), 및/또는 크리에이티브 확장(206)을 생성하거나 선택하기 위해 예측 모델들(206)을 사용한다. 크리에이티브(212)를 생성하는 것은 랜딩 리소스로부터 데이터 애셋들을 추출하는 것과 랜딩 리소스에 맞춰진 크리에이티브를 생성하기 위해 데이터 애셋들의 선택을 사용하는 것을 포함할 수 있다. 크리에이티브 생성은 도 4 - 5를 참조하여 더 상세히 기술된다.
클릭 타입(214)을 선택하는 것은 다양한 클릭 타입 속성들(예를 들어, 버튼 클릭 타입, 전체 콘텐츠 아이템 클릭 타입, 확인 클릭 타입 등)을 갖는 콘텐츠 아이템들에 대한 추정된 성능 메트릭(예를 들어, pCTR)을 계산하기 위해 예측 모델들(206)을 사용하는 것을 포함할 수 있다. 콘텐츠 생성 시스템(114)은 추정된 성능 메트릭들에 기초하여 다수의 잠재적인 클릭 타입들로부터 클릭 타입(214)을 선택할 수 있다. 일부 구현예들에서, 콘텐츠 생성 시스템(114)은 특정 서빙 컨텍스트에 대해 계산된 성능 메트릭을 최적화하는 클릭 타입(214)을 선택한다.
크리에이티브 확장(216)을 선택하는 것은 복수의 크리에이티브 확장들(예를 들어, 콜 클릭 버튼, 위치 버튼, 2차 리소스 버튼) 중 콘텐츠 요청(202)을 위해 이용가능한 것을 결정하는 것을 포함할 수 있다. 크리에이티브 확장들(216)의 이용가능성은 콘텐츠 요청(202) 및 특정 서빙 컨텍스트에 기초하여 다양할 수 있다. 예를 들면, 콜 클릭 버튼은 만일 클라이언트 디바이스(108)가 모바일 디바이스(예를 들어, 스마트폰)이면 이용가능할 수 있으나, 만일 클라이언트 디바이스(108)가 데스크탑 클라이언트라면 이용가능하지 않을 수 있다. 콘텐츠 생성 시스템(114)은 콘텐츠 아이템에 대한 랜딩 리소스 및/또는 다른 데이터베이스들로부터 추출된 정보(예를 들어, 비즈니스 연락처 정보, 비즈니스 위치 등)를 사용하여 크리에이티브 확장들을 생성할 수 있다.
콘텐츠 생성 시스템(114)은 콘텐츠 성능 최적화를 위해 선택된 구성들을 갖는 콘텐츠 아이템(210)을 생성할 수 있다. 콘텐츠 아이템(210)은 선택된 크리에이티브(212), 선택된 클릭 타입(214), 및 선택된 크리에이티브 확장(216)을 포함하는 것으로 도시된다. 콘텐츠 생성 시스템(114)은 사용자에게 프리젠테이션하기 위해, 콘텐츠 아이템(210)을 클라이언트 디바이스(108)에게 전달할 수 있다. 콘텐츠 아이템(210)에 과한 사용자 액션들은 이벤트 데이터(204)를 생성할 수 있고, 상기 이벤트 데이터(204)는 예측 모델들(206)을 추가적으로 트레이닝 시키는데 사용하기 위해 이벤트 로그 데이터베이스(208)에 저장된다.
폐루프 시스템(200)은 이벤트 데이터(204)로 하여금 예측 모델들(206)을 트레이닝 및/또는 업데이트 시키기 위한 피드백으로서 사용되도록 한다. 예측 모델들(206)을 트레이닝 시키기 위해 이벤트 데이터(204)를 사용하는 것은 예측 정확도를 향상시킬 수 있고, 새로운 이벤트들이 로그되었을 때 예측 모델들로 하여금 (예를 들어, 일정한 간격으로 또는 연속적으로) 업데이트 되도록 하게 할 수 있다.
이제 도 3을 참조하면, 기술된 구현예에 따른 콘텐츠 생성 시스템(114)이 더 상세히 도시된다. 콘텐츠 생성 시스템(114)은 프로세서(304) 및 메모리(306)을 갖는 프로세싱 회로(302)를 포함하는 것으로 도시된다. 프로세서(304)는 범용 프로세서, 주문형 집적 회로(application specific integrated circuit: ASIC), 하나 이상의 필드 프로그래머블 게이트 어레이(field programmable gate arrays: FPGAs), CPU, GPU, 프로세싱 컴포넌트들의 그룹, 또는 적절한 전자 프로세싱 컴포넌트들로서 구현될 수 있다.
메모리(306)는 본 명세서에 기술된 다양한 프로세스들, 레이어들(layers), 및 모듈들을 완료 및/또는 지원하기 위한 데이터 및/또는 컴퓨터 코드를 저장하기 위한 하나 이상의 디바이스들(예를 들어, RAM, ROM, 플래쉬 메모리, 하드 디스크 저장 등)을 포함할 수 있다. 메모리(306)는 휘발성 메모리 또는 비-휘발성 메모리를 포함할 수 있다. 메모리(306)는 데이터베이스 컴포넌트들, 객체 코드 컴포넌트들, 스크립트 컴포넌트들, 또는 본 명세서에 기술된 다양한 활동들 및 정보 구조들을 지원(support)하기 위한 정보 구조의 임의의 다른 타입을 포함할 수 있다. 일부 구현예들에서, 메모리(306)는 프로세싱 회로(302)를 통해 프로세서(304)와 통신 가능하게 연결되고, 본 명세서에 기술된 하나 이상의 프로세스들을 실행하기 위한 컴퓨터 코드(예를 들어, 메모리(306)에 저장된 데이터 모듈들)을 포함한다.
여전히 도 3을 참조하면, 메모리(306)는 콘텐츠 추출기(308), 크리에이티브 선택기(310), 클릭 타입 선택기(312), 및 크리에이티브 확장 선택기(314)를 포함하는 것으로 도시된다. 콘텐츠 추출기(308) 및 선택기들(310 내지 314)은 (예를 들어, 메모리(306) 내의) 콘텐츠 생성 시스템(114)의 모듈들일 수 있다. 다양한 구현예들에서, 콘텐츠 생성 시스템(114)은 (도 3에 도시된 바와 같이) 단일 시스템 또는 장치이거나, 다수의 시스템들 또는 디바이스들에 걸쳐 분산될 수 있다. 분산된 구현예에서, 콘텐츠 추출기(308), 크리에이티브 선택기(310), 클릭 타입 선택기(312), 및 크리에이티브 확장 선택기(314)의 기능들은 네트워크를 통해 통신하도록 구성된 다수의 서로 다른 시스템들 또는 디바이스들에 의해 수행될 수 있다.
일부 구현예들에서, 콘텐츠 추출기(308)는 크리에이티브 마다 한번씩 실행되도록 구성된다. 콘텐츠 추출기(308)는 (예를 들어, 크리에이티브 선택기(310)에 의해) 크리에이티브를 선택 또는 생성하거나 (예를 들어, 크리에이티브 확장 선택기(314)에 의해) 크리에이티브 확장을 선택 또는 생성하기 위해 사용될 수 있는 정보를 식별하고 추출할 수 있다. 콘텐츠 추출기(308)는 콘텐츠 아이템(210)에 포함을 위한 나중에 선택될 수 있는 데이터 애셋들 및/또는 정보의 라이브러리(library)를 빌드(build)하기 위해, 서빙 시간 이전에 실행될 수 있다. 콘텐츠 추출기(308)에 의해 추출된 콘텐츠는 선택을 위해 이용가능한 크리에이티브 장들의 타입을 결정할 수 있다. 클릭 타입 선택기(312) 및 크리에이티브 확장 선택기(314)는 생성된 콘텐츠 아이템(210)에 포함시키기 위한 최적의 클릭 타입 및/또는 크리에이티브 확장을 선택하기 위해, 서빙 시간에서 (즉, 콘텐츠 요청(202)에 응답하여) 실행될 수 있다. 클릭 타입 선택기(312) 및 크리에이티브 확장 선택기(314)는 서빙 컨텍스트에 주로 기초하여 클릭 타입 및 크리에이티브 확장을 선택할 수 있다.
콘텐츠 추출기(308)는 콘텐츠 아이템(210)을 생성하는데 사용을 위해 다양한 데이터 소스들로부터 데이터 애셋들을 추출하도록 구성될 수 있다. 데이터 애셋들이 추출된 리소스들은 랜딩 리소스의 식별에 의해 정의될 수 있다. 추출된 데이터 애셋들은 이미지들, 색상들, 폰트들, 텍스트, 그래픽들, 비디오들, 스타일들, 비즈니스-관련 정보(예를 들어, 지리적 위치, 연락처 정보 등), 페이지 분류, 및/또는 랜딩 리소스(318)와 관련된 데이터의 다른 타입들을 포함할 수 있다.
콘텐츠 추출기(308)는 랜딩 리소스(318), 랜딩 리소스(318)와 관련된 2차 리소스(320), 및/또는 커스터머 정보 데이터베이스(322)로부터 데이터 애셋들을 추출할 수 있다. 일부 구현예들에서, 랜딩 리소스(318)는 리소스들(106) 중 하나이다. 랜딩 리소스(318)는 콘텐츠 아이템(210)에 의해 클라이언트 디바이스(108)가 향해진 리소스로서 정의될 수 있다. 2차 리소스(320)는 리소스의 임의의 타입(예를 들어, 웹페이지들, 웹사이트들, 단어 프로세싱 문서들, 비디오들, PDF 문서들 등)일 수 있고, 랜딩 리소스(318)와 관련될 수 있다. 일부 구현예들에서, 2차 리소스(320)는 랜딩 리소스(318)와 관련된 소셜 네트워킹 리소스(예컨데, Google+ 페이지)이다.
커스터머 정보 데이터베이스(322)는 랜딩 리소스(318) 및/또는 콘텐츠 요청자들(104)에 관한 정보의 다양한 타입들을 저장할 수 있다. 예를 들면, 커스터머 정보 데이터베이스(322)는 콘텐츠 아이템(210)에 포함을 위한 크리에이티브 확장들을 생성하기 위해 사용될 수 있는 정보를 제공할 수 있다. 일부 구현예들에서, 커스터머 정보 데이터베이스(322)는 비즈니스-관련 정보(예컨데, 비즈니스 연락처 정보(예를 들어, 전화 번호, 이메일 주소 등), 비즈니스의 지리적 위치, 비즈니스에 의해 제공된 상품 또는 서비스의 타입, 비즈니스 분류, 콘텐츠 아이템(210)에 포함될 수 있는 정보의 다른 타입들)를 저장한다.
일부 구현예들에서, 콘텐츠 추출기(308)는 랜딩 리소스(318) 및/또는 2차 리소스(320)의 렌더링 된 표현을 생성하도록 구성된 랜더링된 리소스를 포함한다. 랜더링된 표현은 콘텐츠 추출기(308)에 의해 추출된 다양한 데이터 애셋들을 식별하는 문서 객체 모델(DOM) 트리 또는 스냅샷 이미지일 수 있다. 콘텐츠 추출기(308)는 도 4를 참조하여 더 상세히 기술된다.
여전히 도 3을 참조하면, 콘텐츠 추출기(308)에 의해 추출된 데이터 애셋들은 크리에이티브 선택기(310), 클릭 타입 선택기(312), 및 크리에이티브 확장 선택기(314)로 제공될 수 있다. 크리에이티브 선택기(310)는 콘텐츠 아이템(210)에서 사용을 위한 크리에이티브(212)를 선택하거나 생성하도록 구성될 수 있다. 다양한 구현예들에서, 크리에이티브 선택기(310)는 크리에이티브 데이터베이스(316)로부터 이전에-생성된 크리에이티브를 선택하거나, 크리에이티브 생성기(324)를 이용하여 새로운 크리에이티브를 생성한다. 크리에이티브 생성기(324)는 클라이언트 디바이스(108) 상에서 프리젠테이션하기 위한 랜딩 리소스(318)로 커스터마이즈(customize) 되는 크리에이티브를 생성하기 위해, 콘텐츠 추출기(308)에 의해 추출된 데이터 애셋들 및/또는 콘텐츠 요청(202)에 의해 제공된 서빙 컨텍스트를 사용할 수 있다. 크리에이티브 생성기(324)는 도 5를 참조하여 더 상세히 기술된다.
여전히 도 3을 참조하면, 메모리(306)는 클릭 타입 선택기(312)를 포함하는 것으로 도시된다. 클릭 타입 선택기(312)는 콘텐츠 아이템(210)에서 사용을 위한 클릭 타입(214)을 선택하도록 구성될 수 있다. 클릭 타입(214)은 콘텐츠 아이템(210)의 속성 또는 콘텐츠 아이템(210)에 내장된 코드의 스니펫일 수 있다. 클릭 타입(214)은 콘텐츠 아이템(210)의 레이아웃, 콘텐츠 아이템(210)의 인터액티비티, 및/또는 콘텐츠 아이템(210)이 클라이언트 디바이스(108)에 의해 랜더링 되거나 제시되는 방식에 영향을 미칠 수 있다. 일부 구현예들에서, 클릭 타입(214)은 콘텐츠 제공자들에게 요금을 청구하고 성능 메트릭들(예컨데, CTR)을 계산하는 목적들을 위해 "클릭"으로서 자격을 주는 사용자 액션들의 타입들을 정의한다. 클릭 타입 선택기(312)는 "버튼" 클릭 타입, "전체 콘텐츠 아이템" 클릭 타입, 및 "확인" 클릭 타입을 포함하는 다수의 잠재적인 클릭 타입들로부터 클릭 타입(214)을 선택할 수 있다.
버튼 클릭 타입은 콘텐츠 아이템의 특정 부분(예컨데, 클릭 가능한 버튼 또는 콘텐츠 아이템(210)의 전체 영역의 다른 서브세트)과의 사용자 인터렉션으로서 클릭을 정의할 수 있다. 만일 콘텐츠 아이템(210)이 버튼 클릭 타입을 갖는다면, 콘텐츠 아이템(210)의 다른 부분들(예를 들어, 클릭 가능한 영역 외부의 부분들)과의 사용자 인터렉션들은 클라이언트 디바이스(108)로 하여금 랜딩 리소스(318)로 네비게이트하지 않게 할 수 있고, 요금 청구 및/또는 성능 메트릭 계산의 목적들을 위한 클릭 수로서 자격을 주지 않을 수 있다.
전체 콘텐츠 클릭 타입은 콘텐츠 항목의 임의의 부분과의 사용자 인터렉션으로서 클릭을 정의할 수 있다. 만일 콘텐츠 아이템(210)이 전체 콘텐츠 아이템 클릭 타입을 갖는다면, 콘텐츠 아이템(210)의 임의의 부분과의 사용자 인터렉션들은 클라이언트 디바이스(108)로 하여금 랜딩 리소스(318)로 네비게이트하게 할 수 있고, 요금 청구 및/또는 성능 메트릭 계산의 목적들을 위한 클릭 수로서 자격을 줄 수 있다.
확인 클릭 타입은 콘텐츠 아이템(210)과의 제1 사용자 인터렉션(예를 들어, 제1 클릭)에 응답하여, 콘텐츠 아이템(210)으로 하여금 확인 프롬프트를 디스플레이 하게 할 수 있다. 확인 프롬프트는 랜딩 리소스(318)로 네비게이트하기 위해 사용자에게 다시 클릭할 것을 지시하는 메시지를 디스플레이 할 수 있다. 만일 콘텐츠 아이템(210)이 확인 클릭 타입을 갖는다면, 콘텐츠 아이템(210)과의 제2 사용자 인터렉션(예를 들어, 제2 클릭)은 클라이언트 디바이스(108)로 하여금 랜딩 리소스(318)로 네비게이트하게 할 수 있고, 요금 청구 및/또는 성능 메트릭 계산의 목적들을 위한 클릭 수로서 자격을 줄 수 있다. 확인 클릭 타입은 전환을 결과로 할 가능성이 없는 부주의한 클릭으로부터 보호하는데 유용할 수 있다.
여전히 도 3을 참조하면, 클릭 타입 선택기(312)는 클릭 타입 성능 모델(326) 및 클릭 타입 모델 트레이닝기(328)을 포함하는 것으로 도시된다. 클릭 타입 성능 모델(326)은 콘텐츠 아이템(210)의 서빙 컨텍스트에 기초하여, 클릭 타입 선택기(312)에 의해 선택될 수 있는 잠재적인 클릭 타입들의 각각에 대한 콘텐츠 아이템(210)의 성능을 예측하도록 구성될 수 있다.
클릭 타입 성능 모델(326)은 입력들(예컨데, 랜딩 리소스 ID(예를 들어, URL) 또는 타입(예를 들어, 페이지 분류), 디바이스 타입(예를 들어, 모바일, 태블릿, 데스크탑 등), 콘텐츠 플랫폼(예를 들어, 비디오, 텍스트, 이미지 등), 디바이스 위치, 사용자 관심들, 또는 서빙 컨텍스트 및/또는 이용가능한 노출을 기술하는 다른 정보)을 수신하도록 구성될 수 있다. 클릭 타입 선택기(312)는 콘텐츠 아이템(210)의 서빙 컨텍스트에 기초하여 다양한 클릭 타입들에 대한 예측된 성능 메트릭(예를 들어, pCTR)을 계산하기 위해 클릭 타입 성능 모델(326)을 사용할 수 있다. 클릭 타입 선택기(312)는 다양한 클릭 타입들에 대한 예측된 성능 메트릭들에 기초하여 클릭 타입(214)을 선택할 수 있다.
클릭 타입 모델 트레이닝기(328)는 이벤트 데이터(204) 및/또는 성능 메트릭들(334)를 검색하기 위해, 이벤트 로그 데이터베이스(208)에 액세스하도록 구성될 수 있다. 이벤트 데이터(204) 및 성능 메트릭들(334)은 클라이언트 디바이스(108) (또는 다른 클라이언트 디바이스들)로 이전에 서브되었던 콘텐츠 아이템들의 성능을 기술할 수 있다. 클릭 타입 모델 트레이닝기(328)는 클릭 타입 성능 모델(326)이 클릭 타입 선택기(312)에게 다양한 클릭 타입들에 대한 콘텐츠 성능의 정확한 예측을 제공함을 보장하기 위해 클릭 타입 성능 모델(326)을 트레이닝 및/또는 업데이트 하고자, 이벤트 로그 데이터베이스(208)로부터의 데이터를 사용할 수 있다. 클릭 타입 선택기(312)는 도 6과 관련하여 더 상세히 기술된다.
여전히 도 3을 참조하면, 메모리(306)는 크리에이티브 확장 선택기(314)를 포함하는 것으로 도시된다. 크리에이티브 확장 선택기(314)는 콘텐츠 아이템(210)에서 사용을 위한 크리에이티브 확장(216)을 선택하도록 구성될 수 있다. 크리에이티브 확장(216)은 프라이머리 크리에이티브(212)에 추가하여, 콘텐츠 아이템의 보충적인 엘리먼트일 수 있다. 크리에이티브 확장 선택기(314)는 콘텐츠 아이템(210)에 대한 서빙 컨텍스트 및/또는 콘텐츠 추출기(308)에 의해 추출된 데이터 애셋들에 기초하여, 다수의 잠재적인 크리에이티브 확장들로부터 크리에이티브 확장(314)을 선택할 수 있다. 일부 구현예들에서, 잠재적인 크리에이티브 확장들은 클릭 가능한 버튼들(예컨데, "콜 클릭" 버튼, "위치" 버튼, "2차 리소스" 버튼, 및/또는 콘텐츠 아이템에 포함될 수 있는 보충적인 콘텐츠의 다른 타입들)을 포함한다.
만일 콘텐츠 아이템(210)에 대한 서빙 컨텍스트가 콘텐츠 아이템(210)이 모바일 통신 디바이스 상에 제시될 것임을 표시하면, 콜 클릭 버튼이 선택을 위해 이용가능 할 수 있다. 일부 구현예들에서, 만일 전화 번호 또는 다른 연락처 정보가 콘텐츠 추출기(308)에 의해 추출되었다면, 콜 클릭 버튼이 선택을 위해 이용가능 할 수 있다. 연락처 정보는 랜딩 리소스(318)로부터 또는 커스터머 정보 데이터베이스(322)로부터 콘텐츠 추출기(308)에 의해 자동으로 추출될 수 있다. 콜 클릭 버튼을 선택하는 것은 콘텐츠 아이템과 관련된 엔티티(예를 들어, 소매점, 고객 서비스 라인, 판매 대리점 등)와의 전화 통화 또는 다른 통신을 개시할 수 있다. 다른 디바이스 타입들(예를 들어, 데스크탑 컴퓨터, 태블릿 등)에 대해, 연락처 정보가 알려진 경우 상기 콜 클릭 버튼 대신 "이메일 클릭" 버튼 또는 좀 더 일반적인 "연락 클릭" 버튼이 포함될 수 있다.
지리적 위치(예를 들어, 거리 주소, 상점 위치, 우편 주소, GPS 좌표들 등)가 콘텐츠 추출기(308)에 의해 추출되거나 크라이언트 디바이스(108)의 위치가 알려진 경우, 위치 버튼이 선택을 위해 이용가능 할 수 있다. 위치 버튼을 선택하는 것은 랜딩 리소스와 관련된 비즈니스의 지리적 위치를 도시하는 지도가 디스플레이 되도록 할 수 있다. 만일 서빙 컨텍스트가 콘텐츠 아이템(210)이 모바일 디바이스 상에 제시될 것임을 표시한다면, 위치 버튼을 선택하는 것은 맵 어플리케이션 또는 네비게이션 어플리케이션이 로드 되도록 할 수 있다. 일부 구현예들에서, 위치 버튼을 선택하는 것은 클라이언트 디바이스(108)로 하여금 맵 리소스(예를 들어, Google Maps)로 네비게이트하게 한다.
2차 리소스(320)의 신원이 알려진 경우, 2차 리소스 버튼이 선택을 위해 이용가능 할 수 있다. 2차 리소스 버튼을 선택하는 것은 클라이언트 디바이스(108)로 하여금 2차 리소스(320)로 네비게이트하게 한다. 콘텐츠 아이템(210)은 다수의 서로 다른 리소스들 또는 리소스의 부분들(예를 들어, 2차 리소스, 소셜 리소스, 랜딩 리소스(318) 등)에 대한 크리에이티브 확장들(예를 들어, 선택 가능한 버튼들 또는 링크들)을 포함할 수 있다. 일부 구현예들에서, 콘텐츠 아이템(210)은 오직 2차 리소스(320)로 링크되며(그리고 랜딩 리소스(318)로 링크되지 않는다), 소셜 콘텐츠 아이템으로서 지칭될 수 있다. 다른 구현예들에서, 콘텐츠 아이템은 랜딩 리소스(318) 및 2차 리소스(320) 모두에 링크된다.
여전히 도 3을 참조하면, 크리에이티브 확장 선택기(314)는 크리에이티브 확장 성능 모델(330) 및 크리에이티브 확장 모델 트레이닝기(332)를 포함하는 것으로 도시된다. 크리에이티브 확장 성능 모델(330)은 콘텐츠 아이템(210)의 서빙 컨텍스트에 기초하여, 크리에이티브 확장 선택기(314)에 의해 선택될 수 있는 이용가능한 크리에이티브 확장들 또는 크리에이티브 확장들의 조합들의 각각에 대한 콘텐츠 아이템(210)의 성능을 예측하도록 구성될 수 있다.
크리에이티브 확장 성능 모델(330)은 입력들(예컨데, 랜딩 리소스 ID(예를 들어, URL) 또는 타입(예를 들어, 페이지 분류), 디바이스 타입(예를 들어, 모바일, 태블릿, 데스크탑 등), 콘텐츠 플랫폼(예를 들어, 비디오, 텍스트, 이미지 등), 디바이스 위치, 사용자 관심들, 또는 서빙 컨텍스트 및/또는 이용가능한 노출을 기술하는 다른 정보)을 수신하도록 구성될 수 있다. 크리에이티브 확장 선택기(314)는 콘텐츠 아이템(210)의 서빙 컨텍스트에 기초하여 크리에이티브 확장들의 다양한 타입들에 대한 예측된 성능 메트릭(예를 들어, pCTR)을 계산하기 위해 크리에이티브 확장 성능 모델(330)을 사용할 수 있다. 크리에이티브 확장 선택기(314)는 예측된 성능 메트릭들에 기초하여 콘텐츠 아이템(210)에 대한 크리에이티브 확장 또는 크리에이티브 확장들의 조합을 선택할 수 있다.
크리에이티브 확장 모델 트레이닝기(332)는 이벤트 데이터(204) 및/또는 성능 메트릭들(334)을 검색하기 위해, 이벤트 로그 데이터베이스(208)에 액세스하도록 구성될 수 있다. 이벤트 데이터(204) 및 성능 메트릭들(334)은 클라이언트 디바이스(108) (또는 다른 클라이언트 디바이스들)로 이전에 서브되었던 콘텐츠 아이템들의 성능을 기술할 수 있다. 크리에이티브 확장 모델 트레이닝기(332)는 크리에이티브 확장 성능 모델(330)이 크리에이티브 확장 선택기(314)에게 크리에이티브 확장들의 다양한 타입들에 대한 콘텐츠 성능의 정확한 예측을 제공함을 보장하기 위해 크리에이티브 확장 성능 모델(330)을 트레이닝 및/또는 업데이트 하고자, 이벤트 로그 데이터베이스(208)로부터의 데이터를 사용할 수 있다. 크리에이티브 확장 선택기(314)는 도 7과 관련하여 더 상세히 기술된다.
이제 도 4를 참조하면, 기술된 구현예에 따른 콘텐츠 추출기(308)가 더 상세히 도시된다. 콘텐츠 추출기(308)는 리소스 랜더링기 모듈(402)을 포함하는 것으로 도시된다. 일부 구현예들에서, 리소스 랜더링은 외부 리소스 랜더링 서비스(예를 들어, 리소스 랜더링기(110))보다는 리소스 랜더링기 모듈(402)에 의해 수행된다. 리소스 랜더링기 모듈(402)은 도 1과 관련하여 기술된 바와 같이 리소스 랜더링기(110)의 기능을 포함할 수 있다. 예를 들면, 리소스 랜더링기 모듈(402)은 리소스들(106)을 해석하고 이들의 표현(예를 들어, 이미지, 디스플레이 등)을 생성할 수 있다.
리소스 랜더링기 모듈(402)은 콘텐츠 아이템들을 생성하기 위한 요청의 일부로서, 콘텐츠 요청(202)에 의해 제공된 URL 또는 다른 표시자를 사용하여 특정 랜딩 리소스를 식별할 수 있다. 리소스 랜더링기 모듈(402)은 랜딩 리소스(318) 및 2차 리소스(320)로부터 마크업 된 콘텐츠(예를 들면, HTML, XML, 이미지 URL들 등)와 포맷팅 정보(예를 들어, CSS, XSL 등)를 판독하고 해석할 수 있고, (예를 들어, W3C 표준들에 따라) 리소스들(318 내지 320)을 랜더링 할 수 있다. 리소스 랜더링기 모듈(402)은 리소스들(318 내지 320)의 스냅샷 이미지를 생성 및/또는 리소스들(318 내지 320)을 표현하는 DOM 트리를 구성할 수 있다.
스냅샷 이미지는 리소스의 시각적인 표현일 수 있다. 예를 들면, 랜딩 리소스(318)에 대한 스냅샷 이미지는 랜딩 리소스(318)를 랜더링 한 이후에 사용자 인터페이스 디바이스(예를 들어, 전자 디스플레이 스크린, 컴퓨터 모니터, 터치-감지 디스플레이 등) 상에 제시되는 것으로서 랜딩 리소스(318)의 시각적인 외관을 도시할 수 있다. 스냅샷 이미지는 랜딩 리소스(318)에 대한 색상 정보(예를 들어, 픽셀 색상, 밝기, 채도 등)와 스타일 정보(예를 들어, 사각형 모서리, 둥근 가장자리들, 모던식, 러스틱 등)를 포함할 수 있다. 일부 구현예들에서, 스냅샷 이미지는 임의의 적절한 파일 확장자(예를 들어, .jpg, .png, .bmp 등)를 갖는 이미지 파일일 수 있다.
DOM 트리는 리소스의 계층 모델일 수 있다. 예를 들면, 랜딩 리소스(318)에 대한 DOM 트리는 랜딩 리소스(318)에 대한 이미지 정보(예를 들어, 이미지 URL들, 디스플레이 위치들, 디스플레이 크기들, 대체 텍스트 등), 폰트 정보(예를 들어, 폰트 이름들, 크기들, 효과들 등), 색상 정보(예를 들어, RGB 색상 값들, 16진수 색상 코드들 등) 및 텍스트 정보를 포함할 수 있다. 리소스 랜더링기 모듈(402)은 다른 모듈들 콘텐츠 생성 시스템(114)에 의한 후속적인 사용을 위해 (예를 들어, 메모리(306) 또는 외부 데이터베이스에) 스냅샷 이미지 및/또는 DOM 트리를 저장할 수 있다. 일부 구현예들에서, 리소스 랜더링기 모듈(402)은 랜더링된 리소스 데이터(410)로서 스냅샷 이미지 및/또는 DOM 트리를 저장한다.
여전히 도 4를 참조하면, 콘텐츠 추출기(308)는 2차 리소스 모듈(404)을 포함하는 것으로 도시된다. 2차 리소스 모듈(204)은 랜딩 리소스(318)와 관련된 2차 리소스(320)를 식별하도록 구성될 수 있다. 일부 구현예들에서, 2차 리소스 모듈(404)은 랜딩 리소스(318)와 관련된 하나 이상의 2차 리소스들(320)을 식별하기 위해, 리소스 관련 데이터베이스(408)에 액세스한다. 리소스 관련 데이터베이스(408)는 (예를 들어, 데이터 테이블, 표로 나타낸 데이터베이스(tabular database), 관련 데이터베이스 등의 형태로) 맵핑들, 링크들, 관련들, 및/또는 서로 다른 리소스들 사이의 다른 연결들을 저장할 수 있다. 일부 구현예들에서, 리소스 관련 데이터베이스(408)는 리소스들(318 내지 320)과 관련된 브랜딩 정보를 저장한다. 리소스 관련 데이터베이스(408)는 다양한 랜딩 리소스들에 대한 의미론적인 정보 및/또는 상세한 정보를 저장할 수 있고, 랜딩 리소스들과 관련된 다른 리소스들로의 링크들의 리스트를 포함할 수 있다. 일부 구현예들에서, 리소스 관련 데이터베이스(408)는 매우 다양한 소스들(예를 들어, Google Knowledge Graph)로부터 수집된 의미론적인 정보(semantic information)을 포함하는 지식 베이스(knowledge base)를 저장할 수 있다. 지식 베이스는 랜딩 리소스들과 관련된 다른 리소스들로의 링크들의 리스트에 추가하여, 다양한 랜딩 리소스들에 대한 체계적이고 상세한 정보를 제공할 수 있다. 일부 구현예들에서, 리소스 관련 데이터베이스(408)는 그것과 관련된 랜딩 리소스(318)와 소셜 네트워킹 리소스(예를 들어, Google+ 페이지) 사이의 관련을 저장한다.
일부 구현예들에서, 2차 리소스 모듈(404)은 랜딩 리소스(318)로부터 추출된 정보를 사용하여 2차 리소스(320)를 식별한다. 예를 들면, 랜딩 리소스(318)는 링크, 텍스트적인 기술(textual description), 메타데이터, 및/또는 특정 2차 리소스(320)의 다른 표시를 포함할 수 있다. 2차 리소스 모듈(404)은 2차 리소스(320)가 랜딩 리소스(318)와 동일한 엔티티(예를 들어, 랜딩 리소스(318)와 동일한 엔티티에 의해 소유되거나, 작동되거나, 유지되는 엔티티)와 관련되는지 여부 또는 2차 리소스(320)가 랜딩 리소스(318)와 다른 엔티티(예를 들어, 팬 페이지(fan page), 이미테이션(imitation) 등)와 관련되는지 여부를 결정하기 위해, 2차 리소스(320)를 인증할 수 있다.
2차 리소스 모듈(404)은 2차 리소스(320)의 품질을 결정하도록 구성될 수 있다. 만일 2차 리소스(320)가 소셜 네트워킹 리소스라면, 2차 리소스 모듈(404)은 다른 소셜 네트워킹 리소스들과의 연결들의 수(예를 들어, 팔로워들(followers)의 수, 링크들의 수, 구독자들의 수 등)에 기초하여 품질을 결정할 수 있다. 일부 구현예들에서, 2차 리소스 모듈(404)은 이들의 인기도(예를 들어, 방문자들의 수, 시청자들의 수 등)에 의해 2차 리소스(320)의 품질을 결정한다. 2차 리소스 모듈(404)은 랜딩 리소스(318)와 관련된 다수의 2차 리소스들을 랭크(rank)하거나 스코어하고, 하나 이상의 최고 스코어 2차 리소스들의 표시를 리소스 랜더링기 모듈(402)에 제공한다.
리소스 랜더링 모듈(402)은 2차 리소스(320)의 랜더링된 표현을 생성하고, 랜더링된 리소스 데이터(410)에 랜더링된 데이터를 저장할 수 있다. 일부 구현예들에서, 리소스 랜더링기 모듈(402)은 2차 리소스(320)로부터 2차 리소스 데이터를 추출하고 이를 저장한다. 2차 리소스 데이터는 2차 리소스(320)로부터 획득된 임의의 타입 정보를 포함할 수 있다. 2차 리소스 데이터는 비즈니스 분류, 비즈니스 연락처 정보(예를 들어, 비즈니스 전화 번호, 비즈니스 이메일 등), 비즈니스의 지리적 위치, 비즈니스에 의해 제공된 상품 또는 서비스의 타입, 이미지들, 텍스트, 색상들, 스타일들, 및/또는 2차 리소스(320)로부터 추출될 수 있는 정보의 다른 타입들을 포함할 수 있다.
여전히 도 4를 참조하면, 랜더링된 리소스 데이터(410)를 다양한 추출기 모듈들(412 내지 424)로 제공하는 콘텐츠 추출기(308)가 도시된다. 추출기 모듈들(412 내지 424)의 각각은 랜더링된 리소스 데이터(410)로부터 데이터의 서로 다른 타입을 추출하도록 구성될 수 있다. 예를 들면, 이미지 추출기(412)는 이미지 데이터 애셋들(426)을 추출하도록 구성될 수 있고, 비디오 추출기(414)는 비디오 데이터 애셋들(428)을 추출하도록 구성될 수 있고, 색상 추출기(416)는 색상 데이터 애셋들(430)을 추출하도록 구성될 수 있고, 폰트 추출기(418)는 폰트 데이터 애셋들(432)을 추출하도록 구성될 수 있고, 텍스트 추출기(420)는 텍스트 데이터 애셋들(434)을 추출하도록 구성될 수 있고, 위치 추출기(422)는 위치 데이터 애셋들(436)(예를 들어, 주소들, GPS 좌표들 등)을 추출하도록 구성될 수 있으며, 연락처 추출기(424)는 연락처 데이터 애셋들(438)(예를 들어, 전화 번호들, 이메일 주소들 등)을 추출하도록 구성될 수 있다. 데이터 애셋들(426 내지 438)은 크리에이티브(212) 및/또는 크리에이티브 확장(216)을 생성하는데 사용하기 위해, 메모리(306) 또는 별도의 데이터베이스에 저장될 수 있다.
이제 도 5를 참조하면, 예시적인 구현예에 따른 크리에이티브 생성기(324)가 더 상세히 도시된다. 크리에이티브 생성기(324)는 랜딩 리소스(318)로 커스터마이즈 되는 크리에이티브를 생성하기 위해, 콘텐츠 추출기(308)에 의해 추출된 데이터 애셋들(426 내지 438)을 사용할 수 있다. 크리에이티브 선택기(310)는 크리에이티브 생성기(324)에 의해 생성된 다수의 잠재적인 크리에이티브로부터 크리에이티브(212)를 선택할 수 있다. 다른 구현예들에서, 크리에이티브 선택기(310)는 콘텐츠 제공자에 의해 이전에 생성되었거나 제공되었던 크리에이티브들의 데이터베이스(즉, 크리에이티브 데이터베이스(316))로부터 크리에이티브(212)를 선택할 수 있다.
크리에이티브 생성기(324)는 이미지/비디오 모듈(502)을 포함하는 것으로 도시된다. 이미지/비디오 모듈(502)은 이미지들의 시각적인 콘텐츠를 검출하기 위해, 추출된 이미지 데이터 애셋들(426)을 분석할 수 있다. 시각적인 콘텐츠를 검출하는 것은 이미지에 표현된 현저한 객체(salient object)의 위치를 결정하는 것, 이미지 내 텍스트의 위치를 결정하는 것, 그리고/또는 이미지의 시각적인 영향을 향상시키기 위해 이미지가 잘라지거나(cropped) 프로세스(process)될 수 있는지 여부를 결정하는 것을 포함할 수 있다. 일부 구현예들에서, 이미지/비디오 모듈(502)은 이미지들의 의미론적인 콘텐츠를 검출하기 위해, 추출된 이미지들을 분석한다. 의미론적인 콘텐츠를 검출하는 것은 이미지 내 도시된 객체 또는 이미지에 의해 전달된 의미를 식별하는 것을 포함할 수 있다. 이미지/비디오 모듈(502)은 하나 이상의 라벨들(labels) 또는 키워드들을 이들의 의미론적인 콘텐츠를 도시하는 이미지에 할당할 수 있다. 라벨들 및/또는 키워드들은 특정 서드-파티 콘텐츠 아이템에 대한 이미지의 관련성을 결정하기 위해 사용될 수 있다.
이미지/비디오 모듈(502)은 서드-파티 콘텐츠 아이템에서 사용하기 위한 이미지들을 준비하기 위해, 이미지들을 프로세스 할 수 있다. 이미지 프로세싱은 현저한 객체들을 강조하거나 텍스트를 제거하기 위해 이미지들을 잘라내는 것, 이미지들의 크기를 조정(resizing)하는 것, 이미지들을 포맷(format)하는 것, 또는 이미지들을 조정하는 것을 포함할 수 있다. 일부 구현예들에서, 이미지/비디오 모듈(502)은 로고 이미지들을 식별하고 향상시킨다.
이미지/비디오 모듈(502)은 이미지들의 다양한 속성들에 기초하여, 이미지들을 필터링(filtering)하고 랭크할 수 있다. 이미지/비디오 모듈(502)은 이미지들의 각각에 대해 품질 스코어 및/또는 페이지 상의 현저성 스코어(salience score)를 결정할 수 있다. 이미지에 대한 품질 스코어는 다양한 이미지 속성들에 기초하여 이미지의 미적 외관(aesthetic appearance)을 나타낼 수 있다. 현저성 스코어는 랜딩 리소스 상에서 추출된 이미지가 디스플레이 되는 프로미넌스(prominence)를 나타낼 수 있다. 이미지/비디오 모듈(502)은 임계치 디스플레이 크기 보다 작은 디스플레이 크기를 가지거나 임계치 품질 스코어 보다 적은 품질 스코어를 가진 이미지들을 폐기 또는 필터링 할 수 있다. 일부 구현예들에서, 이미지/비디오 모듈(502)은 이미지들과 관련된 현저성 스코어들에 기초하여 이미지들을 랭크 할 수 있다. 이미지/비디오 모듈(502)은 디스플레이 콘텐츠 아이템에 포함시키기 위해, 최상위 이미지 또는 이미지들을 선택할 수 있다.
이미지/비디오 모듈(502)은 이미지 데이터 애셋들(426)에 적용되는 것과 유사한 프로세싱 단계들을 사용하여, 추출된 비디오 데이터 애셋들(428)을 분석하고 프로세스 할 수 있다. 일부 구현예들에서, 이미지/비디오 모듈(502)은 비디오 파일 또는 비디오 슬라이드쇼로 복수의 추출된 이미지를 결합시킨다.
여전히 도 5를 참조하면, 크리에이티브 생성기(324)는 색상/폰트 모듈(504)을 포함하는 것으로 도시된다. 색상/폰트 모듈(504)은 색상 데이터 애셋들(430)(예를 들어, 배경 색상들, 이미지 색상들, 폰트 색상들, 텍스트 색상들 등), 폰트 데이터 애셋들(432)(예를 들어, 폰트 페이스들(font faces), 폰트 크기들 등), 및 콘텐츠 추출기(308)에 의해 추출된 문체 정보(stylistic information)의 다른 타입들을 수신할 수 있다. 일부 구현예들에서, 색상/폰트 모듈(504)은 배경, 헤드라인, 기술(description), 버튼 배경, 및/또는 생성된 콘텐츠 아이템의 버튼 텍스트에 대한 색상들을 선택한다. 색상/폰트 모듈(504)은 콘텐츠 아이템에 대한 색상들을 선택하기 위해, 랜딩 리소스의 스냅샷 이미지 및/또는 DOM 트리를 사용할 수 있다. 일부 구현예들에서, 색상/폰트 모듈(504)은 클러스터링 기법(clustering technique)(예를 들어, K-평균 클러스터링)을 사용하여 스냅샷 이미지로부터의 색상 클러스터들을 식별한다.
색상/폰트 모듈(504)은 생성된 콘텐츠 아이템에서 사용하기 위해 폰트 또는 폰트 집합(font family)을 선택할 수 있다. 일부 구현예들에서, 폰트 데이터 애셋들(432)은 HTML, CSS 또는 XML 폰트 태크들로서 폰트 정보를 포함할 수 있다. 색상/폰트 모듈(504)은 하나 이상의 폰트들(예를 들어, 폰트 페이스들, 폰트 집합들 등)을 식별하고 선택하기 위해, 폰트 데이터 애셋들(432)을 사용할 수 있다.
일부 구현예들에서, 색상/폰트 모듈(504)은 폰트 크기에 기초하여, 추출된 폰트들을 다수의 카테고리들로 분리한다. 예를 들면, 색상/폰트 모듈(504)은 큰 폰트들(예를 들어, 20pt 보다 큰 폰트, 16pt 보다 큰 폰트 등)에 대한 제1 카테고리 및 상대적으로 작은 폰트들에 대한 제2 카테고리를 생성할 수 있다. 일부 구현예들에서, 색상/폰트 모듈(504)은 생성된 콘텐츠 아이템에서 사용하기 위해, 다수의 폰트들 또는 폰트 집합들을 식별한다. 예를 들면, 색상/폰트 모듈(504)은 생상된 콘텐츠 아이템에 대한 헤드라인 폰트로서 사용하기 위해 제1 폰트를 식별하고, 콘텐츠 아이템의 기술하는 부분 또는 버튼 텍스트에 대한 폰트로서 사용하기 위해 제2 폰트를 식별할 수 있다. 색상/폰트 모듈(504)은 생성된 콘텐츠 아이템(210)에 대한 스타일(예를 들어, 색상 스킴, 폰트 스킴 등)을 생성하는데 사용하기 위해, 추출된 색상들 및 폰트들을 스타일 생성기 모듈(510)에 제공할 수 있다.
여전히 도 5를 참조하면, 크리에이티브 생성기(324)는 텍스트 모듈(506)을 포함하는 것으로 도시된다. 텍스트 모듈(506)은 텍스트 데이터 애셋들(434)을 수신하고, 헤드라인 텍스트, 기술하는 텍스트 페이지 상의 메타데이터, 페이지 상의 타이틀들, 이미지 캡션들(image captions), 및 생성된 콘텐츠 아이템에서 사용하기 위한 텍스트의 다른 타입들을 선택하기 위해 텍스트 데이터 애셋들(434)을 사용할 수 있다. 일부 구현예들에서, 텍스트 모듈(506)은 랜딩 리소스(318) 상에 디스플레이 되는 텍스트의 요약(summary)을 생성하기 위해, 텍스트 데이터 애셋들(434)을 사용한다.
일부 구현예들에서, 텍스트 모듈(506)은 랜딩 리소스(318)에 추가하여 또는 그 대신에 다른 데이터 리소스들에서 텍스트적인 데이터를 검색한다. 예를 들면, 텍스트 모듈(506)은 비즈니스, 제품, 또는 서비스의 사용자-생성 리뷰들(reviews)로부터 텍스트적인 데이터를 검색할 수 있다. 상기 리뷰들은 사용자들이 의견들, 리뷰들, 또는 특정 비즈니스, 제품, 또는 서비스와 관련된 다른 텍스트를 게시(post)하거나 제출하는 것이 허용된 인터넷 리소스(예를 들어, 웹사이트)로부터 검색될 수 있다. 랜딩 리소스(318)의 URL은 이러한 리뷰들의 위치를 특정 및/또는 텍스트 모듈(506)을 특정 리소스로 향하게 하기 위해 사용될 수 있다.
텍스트 모듈(506)은 수치적으로 표현된 레이팅(rating)(예를 들어, "5점 중 1점", "별 4개" 등)이 있든 없든, 리뷰가 긍정적인지 또는 부정적인지 여부를 결정할 수 있는 감정 검출 시스템(sentiment detection system)을 포함할 수 있다. 감정 검출 시스템은 리뷰의 언어를 파싱(parsing)할 수 있고, 긍정적인-형용사들(예를 들어, 우수함, 좋음, 대단함, 환상적임 등)을 찾는다. 그 후, 감정 검출 시스템은 콘텐츠 아이템(210)에 포함시키기 위해 이러한 긍정적인 어구들을 포함하는 리뷰의 상대적으로 짧은 스니펫을 선택하거나 추출할 수 있다.
여전히 도 5를 참조하면, 크리에이티브 생성기(324)는 분류 모듈(508)을 포함하는 것으로 도시된다. 일부 구현예들에서, 분류 모듈(508)은 랜딩 리소스(318)를 분류하거나 카테고리화 하기 위해 리소스 데이터(410)를 사용한다. 다른 구현예들에서, 분류 모듈(508)은 랜딩 리소스(318)에 대한 카테고리를 획득하기 위해 (예를 들어, 랜딩 리소스(318)의 URL에 기초하여) 카테고리들 데이터베이스(예를 들어, 커스터머 정보 데이터베이스(322) 또는 리소스 관련 데이터베이스(408))에 액세스 할 수 있다. 카테고리들 데이터베이스는 랜딩 리소스(318)와 관련된 비즈니스의 카테고리(예를 들어, 패스트푸드, 자동차 부품 등)뿐만 아니라 관련된 비즈니스의 다른 속성들을 특정할 수 있다. 랜딩 리소스(318)의 카테고리는 생성된 콘텐츠 아이템(210)에 대한 액션 콜 텍스트(call-to-action text)를 생성하기 위해, 텍스트 생성기 모듈(512)에 의해 사용될 수 있다.
분류 모듈(508)은 랜딩 리소스(318)의 분류를 결정하기 위해, 2차 리소스(320)로부터의 데이터를 사용할 수 있다. 예를 들면, 만일 2차 리소스(320)가 소셜 네트워킹 리소스(예컨데, Google+ 프로필)라면, 2차 리소스(320)는 랜딩 리소스(318)와 관련된 동일한 엔티티에 의해 제공된 분류 정보를 포함할 수 있다. 분류 모듈(508)은 브랜딩 또는 로컬 비즈니스를 위해 랜딩 리소스(318)가 생성되었는지 여부를 결정하기 위해, 2차 리소스(320)로부터의 분류 정보를 사용할 수 있다. 사용자-제공 분류 정보는 분류 정보의 다른 소스들 보다 더 상세한 정확한 카테고리들을 제공할 수 있고, 랜딩 리소스(318)의 분류를 수정(refine)하기 위해 분류 모듈(508)에 의해 유리하게 사용될 수 있다.
여전히 도 2를 참조하면, 크리에이티브 생성기(324)는 스타일 생성기 모듈(510)을 포함하는 것으로 도시된다. 스타일 생성기 모듈(510)은 생성된 콘텐츠 아이템(210)에 대한 색상 스킴 및/또는 폰트 스킴을 생성하도록 구성될 수 있다. 스타일 생성기 모듈(510)은 자동으로-생성된 콘텐츠 아이템에 대한 색상 스킴을 생성하기 위해, 색상/폰트 모듈(504)에 의해 추출된 색상들을 사용할 수 있다. 스타일 생성기 모듈(510)은 배경 색상, 버튼 색상, 헤드라인 색상, 기술 색상, 버튼 텍스트 색상, 또는 생성된 콘텐츠 아이템의 다른 부분들에 대한 색상을 선택할 수 있다. 스타일 생성기 모듈(510)은 각 추출된 색상의 채도, 밝기, 두드러짐(noticeability), 및/또는 다른 속성들뿐만 아니라 각 추출된 색상들 사이의 콘트라스트를 결정할 수 있다.
일부 구현예들에서, 스타일 생성기 모듈(510)은 색상/폰트 모듈(504)에 의해 추출된 가장 지배적인 색상(dominant color)(예를 들어, 가장 무거운 가중치, 가장 높은 지배 랭킹 등)을 콘텐츠 아이템에 대한 배경 색상으로서 선택한다. 스타일 생성기 모듈(510)은 가장 높은 증대된 채도(multiplied saturation) 및 가중치를 가진 추출된 색상을 콘텐츠 아이템에 대한 버튼 색상으로서 선택할 수 있다. 스타일 생성기 모듈(510)은 선택된 배경 색상과 가장 높은 콘트라시트 및/또는 밝기 차이들을 갖는 색상들을 헤드라인 및 기술 텍스트에 대한 색상들로서 선택할 수 있다. 만일 2개 이상의 색상들이 이용가능하다면, 스타일 생성기 모듈(510)은 더 뚜렷한 색상(noticeable color)을 헤드라인 색상으로서 선택할 수 있다.
다른 구현예들에서, 스타일 생성기 모듈(510)은 콘텐츠 아이템(210)에 대한 미리 정의된 색상 스킴을 선택한다. 상기 미리 정의된 색상 스킴은 색상/폰트 모듈(504)에 의해 추출된 색상들을 직접적으로 적용하기 보다는, 배경 색상, 버튼 색상, 헤드라인 색상, 기술 색상, 버튼 텍스트 색상, 또는 생성된 콘텐츠 아이템의 다른 부분들을 선택하기 위해 사용될 수 있다. 미리 정의된 색상 스킴은 색상 탬플릿(color template) 또는 색상 그룹으로 이전에 어셈블(assemble)된 색상들의 조합일 수 있다. 일부 구현예들에서, 미리 정의된 색상 스킴은 색상/폰트 모듈(504)에 의해 추출된 색상들에 기초하여, 미리 정의된 색상 스킴들의 세트로부터 선택될 수 있다. 예를 들면, 스타일 생성기 모듈(510)은 색상/폰트 모듈(504)에 의해 추출된 색상들을 복수의 미리 정의된 색상 스킴들에 포함된 색상들과 비교할 수 있다. 스타일 생성기 모듈(510)은 색상/폰트 모듈(504)에 의해 추출된 하나 이상의 색상들과 미리 정의된 색상 스킴에 포함된 하나 이상의 색상들 사이의 차이점들(예를 들어, RGB 값들, 채도, 밝기, 콘트라스트 등)에 기초하여, 미리 정의된 색상 스킴들을 랭크 할 수 있다. 미리 정의된 색상 스킴으로부터의 색상들은 자동으로-생성된 콘텐츠 아이템에서 색상/폰트 모듈(504)에 의해 식별된 색상들을 보충하거나 대체할 수 있다.
일부 구현예들에서, 스타일 생성기 모듈(510)은 이미지들 및/또는 텍스트의 가독성(readability)을 향상시키는 색상 스킴을 선택한다. 만일 이미지가 생성된 콘텐츠 아이템(210)에서 디스플레이 되었다면, 스타일 생성기 모듈(510)은 가장 높은 콘트라스트(예를 들어, RGB 콘트라스트>200)를 이미지의 색상들에 제공하는 이미지에 대한 배경 색상을 선택할 수 있다. 일부 구현예들에서, 스타일 생성기 모듈(510)은 추출된 이미지의 본래 배경 색상을 식별한다. 본래 배경 색상은 이미지가 추출된 리소스상에서 디스플레이 된 것으로서 이미지의 배경 색상일 수 있다. 스타일 생성기 모듈(510)은 생성된 콘텐츠 아이템(210)에서 이미지의 본래 배경 색상을 사용할 수 있다.
일부 구현예들에서, 스타일 생성기 모듈(510)은 배경 색상으로부터 경계(border) 내의 영역을 분리하는 이미지 내의 경계를 식별한다. 스타일 생성기 모듈(510)은 경계 내의 영역과 배경 색상 사이의 콘트라스트(예를 들어, 평균 RGB 콘트라스트)가 임계치 콘트라스트 값(예를 들어, RGB 콘트라스트>200)을 초과하도록 최대 길이 경계를 결정할 수 있다. 만일 경계 내의 영역이 임계치 영역(예를 들어, 이미지 영역의 80%)을 초과한다면, 스타일 생성기 모듈(510)은 색상 스킴이 이미지의 가독성을 향상시킴을 결정할 수 있다.
스타일 생성기 모듈(510)은 생성된 콘텐츠 아이템(210)에서 사용하기 위해 폰트들의 조합을 선택할 수 있다. 일부 구현예들에서, 스타일 생성기 모듈(510)은 헤드라인 텍스트에 대해 제2 폰트를 선택하고, 기술 및/또는 버튼 텍스트에 대해 제2 폰트를 선택한다. 스타일 생성기 모듈(510)은 랜딩 리소스(318)에서 사용되는 폰트들에 가깝게 매치(match)하는 폰트 조합을 선택하기 위해, 랜딩 리소스(318)로부터 추출된 폰트들을 사용할 수 있다. 상기 방식으로, 스타일 생성기 모듈(510)은 랜딩 리소스(318)와 유사한 외관 및 느낌을 갖는 콘텐츠 아이템들의 생성을 지원할 수 있다.
여전히 도 2를 참조하면, 크리에이티브 생성기(324)는 텍스트 생성기 모듈(512)을 포함하는 것으로 도시된다. 텍스트 생성기 모듈(512)는 콘텐츠 아이템(210)의 텍스트적인 부분을 생성하도록 구성된다. 텍스트 생성기 모듈(512)은 헤드라인 텍스트, 기술 텍스트, 버튼 텍스트, 액션 콜 텍스트, 마우스-오버 텍스트(mouse-over text), 메타데이터 텍스트, 및/또는 콘텐츠 아이템(210)에 포함시키기 위한 텍스트의 다른 타입들을 생성할 수 있다.
분류 모듈(508)과 텍스트 모듈(506)로부터 입력들을 수신하는 텍스트 생성기 모듈(512)이 도시된다. 텍스트 생성기 모듈(512)은 랜딩 리소스(318)의 특정 카테고리를 위해 맞춰진 액션 콜 텍스트를 생성하기 위해, 분류 모듈(508)에 의해 결정된 랜딩 리소스(318)의 카테고리를 사용할 수 있다. 예를 들면, 만일 랜딩 리소스(318)가 게임들의 카테고리와 관련되었다면, 텍스트 생성기 모듈(512)은 액션 콜 텍스트(예컨데, "지금 플레이" 또는 "지금 시도")를 생성할 수 있다. 만일 랜딩 리소스(318)가 구독 서비스와 관련되었다면, 텍스트 생성기 모듈(512)은 액션 콜 텍스트(예컨데, "지금 가입" 또는 "지금 등록")를 생성할 수 있다.
일부 구현예들에서, 텍스트 생성기 모듈(512)은 생성된 콘텐츠 아이템(210)에서 사용하기 위해 텍스트 스니펫(예를 들어, 어구, 텍스트 스트링(text string), 부분 등)을 식별한다. 상기 텍스트 스니펫은 랜딩 리소스(318), 2차 리소스(320) 또는 리소스들(106) 상에 디스플레이 되지 않는 다른 텍스트(예를 들어, 메타데이터 텍스트)의 부분일 수 있다. 텍스트 생성기 모듈(512)은 생성된 콘텐츠 아이템(210)에서 기술 텍스트 또는 헤드라인 텍스트로서 사용될 수 있는 짧은 부분(예를 들어, 단어들, 문자들 또는 문장들의 임계치 수보다 적은 부분)을 식별하기 위해 추출된 텍스트의 다양한 타입들을 프로세스 할 수 있다. 텍스트 생성기 모듈(512)은 텍스트의 중요한 구성들(예컨데, 가격 또는 날짜)을 하이라이트(highlight) 또는 강조(예를 들어, 볼드(bold), 언더라인(underline), 이탤릭체화(italicize), 폰트 크기 증가 등)할 수 있다.
일부 구현예들에서, 텍스트 생성기 모듈(512)은 랜딩 리소스(318)와 관련된 비즈니스, 제품, 또는 서비스의 사용자 리뷰들로부터 추출된 텍스트를 사용한다. 텍스트 생성기 모듈(512)은, 따로 읽는 경우, 리뷰를 제출했던 사용자가 리뷰된 비즈니스, 제품 또는 서비스에 긍정적인 경험을 갖는 이유를 효과적으로 전달하는 사용자 리뷰의 부분을 선택할 수 있다. 스니펫은 리뷰와 관련된 감정을 식별하는데 텍스트 모듈(216)에 의해 사용된 하나 이상의 긍정적인 형용사들을 포함할 수 있다. 예를 들면, 텍스트 생성기 모듈(512)은 이탈리안 레스토랑의 상대적으로 긴 리뷰로부터 스니펫 "우수한 파스타와 신속한 서비스"를 선택할 수 있다. 일부 구현예들에서, 텍스트 생성기 모듈(512)에 의해 식별된 텍스트 스니펫들은 순수하게-텍스트적인 콘텐츠 아이템들에서 사용하기 위한 잠재적인 "크리에이티브들"(예를 들어, 기술 텍스트)로서 콘텐츠 요청자들(104)에게 제시될 수 있다. 다른 구현예들에서, 상기 텍스트 스니펫들은 콘텐츠 생성 시스템(114)에 의해 생성된 하나 이상의 디스플레이 콘텐츠 아이템의 텍스트적인 부분으로서 사용될 수 있다.
여전히 도 2를 참조하면, 크리에이티브 생성기(324)는 레이아웃 모듈(514)을 포함하는 것으로 도시된다. 레이아웃 모듈(514)은 콘텐츠 아이템(210)에 대한 레이아웃을 생성하기 위해, 추출된 그리고/또는 프로세스된 데이터를 사용하도록 구성될 수 있다. 일부 구현예들에서, 레이아웃 모듈(514)은 콘텐츠 아이템(210)에 대한 크리에이티브(212)를 생성하고, 크리에이티브 빌드기(creative builder)로서 지칭될 수 있다. 레이아웃 모듈(514)은 미리 정의된 레이아웃 옵션들의 세트(예를 들어, 탬플릿 레이아웃들)로부터 레이아웃을 선택하거나, (예를 들어, 탬플릿에 기초하지 않고) 새로운 레이아웃을 생성할 수 있다.
일부 구현예들에서, 레이아웃 모듈(514)은 콘텐츠 아이템(210)에 대한 스타일 비즈니스 카테고리, 또는 외관을 결정하기 위해, 랜딩 리소스(318)로부터 추출된 데이터 애셋들을 사용한다. 예를 들면, 레이아웃 모듈(514)은 랜딩 리소스(318)의 비즈니스 카테고리(예를 들어, 패스트푸트, 자동차 부품 등), 랜딩 리소스(318)의 스타일(예를 들어, 모던식, 러스틱), 및 랜딩 리소스(318) 상에 디스플레이된 외관들(예를 들어, 90도 코너, 둥근 코너 등)의 사용을 결정할 수 있다. 레이아웃 모듈(514)은 랜딩 리소스(318)의 URL에 기초하여, 비즈니스 카테고리 정보를 검색하기 위해 외부 데이터베이스를 인보크 할 수 있다.
레이아웃 모듈(514)은 크리에이티브(212)를 생성하기 위해 다양한 데이터 애셋들을 어셈블하고, 크리에이티브(212)를 랜더링 서비스(216)에 제공할 수 있다. 랜더링 서비스(336)는 콘텐츠 아이템(210)을 생성하고 랜더링 하기 위해, 크리에이티브(212)를 클릭 타입(214) 및 크리에이티브 확장(216)과 결합시킬 수 있다.
이제 도 6을 참조하면, 기술된 구현예에 따른 클릭 타입 선택기(312)가 더 상세히 도시된다. 클릭 타입 선택기(312)는 콘텐츠 아이템(210)에서 사용하기 위한 클릭 타입(214)을 선택하도록 구성될 수 있다. 클릭 타입(214)은 콘텐츠 아이템(210)의 속성 또는 콘텐츠 아이템(210)에 내장된 코드의 스니펫일 수 있다. 클릭 타입(214)은 콘텐츠 아이템(210)의 레이아웃(예를 들어, 클릭가능한 콘텐츠 아이템(210)의 부분들을 정의하는 것), 콘텐츠 아이템(210)의 인터액티비티(예를 들어, 랜딩 리소스(318)로 네비게이션을 트리거(trigger)하는 클릭들의 타입들), 및/또는 클라이언트 디바이스에 의해 콘텐츠 아이템(210)이 랜더링 되거나 제시되는 방식에 영향을 미칠 수 있다. 일부 구현예들에서, 클릭 타입(214)은 콘텐츠 제공자들에게 요금을 청구하고 성능 메트릭들(예컨데, CTR)을 계산하는 목적들을 위한 "클릭"으로서 자격을 주는 사용자 액션들의 타입들을 정의한다. 클릭 타입(214)은 클라이언트 디바이스(108)로 하여금 랜딩 리소스(318)로 네비게이트하기 위한 하나 이상의 조건들 또는 트리거들을 정의할 수 있다.
클릭 타입 선택기(312)는 클릭 타입 모델 트레이닝기(328)를 포함하는 것으로 도시된다. 클릭 타입 모델 트레이닝기(328)는 이벤트 데이터(204)를 검색하기 위해, 이벤트 로그 데이터베이스(208)에 액세스하도록 구성될 수 있다. 이벤트 데이터(204)는 다양한 서빙 컨텍스트에서 클라이언트 디바이스(108)로 이전에 서브되었던 콘텐츠 아이템들의 성능을 기술할 수 있다. 이벤트 데이터(204)는 로그된 사용자 액션들(예컨데, 클릭 수, 전환 수, 및/또는 이전에-서크된 콘텐츠 아이템들과 관련된 다른 사용자 행동들)을 포함할 수 있다. 이벤트 데이터(204)는 이전에-서브된 콘텐츠 아이템들의 속성들(예를 들어, 클릭 타입, 크리에이티브 ID, 크리에이티브 확장들, 콘텐츠 타입 등) 및 서빙 컨텍스트의 세부사항들(예를 들어, 디바이스 타입, 디바이스 위치, 콘텐츠 플랫폼, 발행자 페이지 분류, 랜딩 리소스 ID 등)을 포함할 수 있다. 클릭 타입 모델 트레이닝기(328)는 클릭 타입 성능 모델(326)을 트레이닝하고 업데이트 하기 위해, 이벤트 로그 데이터베이스(208)로부터의 데이터를 사용할 수 있다.
여전히 도 6을 참조하면, 클릭 타입 선택기(312)는 성능 메트릭 예측기(604) 및 클릭 타입 성능 모델(326)을 포함하는 것으로 도시된다. 성능 메트릭 예측기(604)는 클릭 타입 성능 모델(326)에게 서빙 컨텍스트 데이터(602)를 제공할 수 있다. 서빙 컨텍스트 데이터(602)는 콘텐츠 요청(202)의 일부로서 수신될 수 있고, 콘텐츠 아이템(210)이 제시될 콘텍스트를 기술할 수 있다. 서빙 콘텍스트 데이터(602)는 랜딩 리소스 ID(예를 들어, URL), 랜딩 리소스 타입(예를 들어, 페이지 분류), 디바이스 타입(예를 들어, 모바일, 태블릿, 데스크탑 등), 콘텐츠 플랫폼(예를 들어, 비디오, 텍스트, 이미지 등), 디바이스 위치, 콘텐츠 요청(202), 크리에이티브 ID 또는 특정 서빙 컨텍스트를 기술하는 다른 정보와 관련된 사용자 프로필 ID를 포함할 수 있다.
성능 메트릭 예측기(604)는 서빙 콘텍스트 데이터(602)에 의해 표시된 서빙 컨텍스트에 대한 다양한 클릭 타입들을 갖는 콘텐츠 아이템들의 예측된 성능(예를 들어, pCTR)을 계산하기 위해, 클릭 타입 성능 모델(326)을 사용할 수 있다. 성능 메트릭 예측기(604)는 클릭 타입의 예측된 성능에 기초하여, 각 클릭 타입에 대한 스코어 또는 랭킹을 생성할 수 있다. 일부 구현예들에서, 성능 메트릭 예측기(604)는 "버튼" 클릭 타입, "전체 콘텐츠 아이템" 클릭 타입, 및 "확인" 클릭 타입을 갖는 콘텐츠 아이템들의 성능을 예측한다.
버튼 클릭 타입은 콘텐츠 아이템(210)의 특정 부분(예컨데, 클릭 가능한 버튼 또는 콘텐츠 아이템의 전체 영역의 다른 서브세트)과의 사용자 인터렉션으로서 클릭을 정의할 수 있다. 만일 콘텐츠 아이템(210)이 버튼 클릭 타입을 갖는다면, 콘텐츠 아이템(210)의 다른 부분들(예를 들어, 클릭 가능한 영역 외부의 부분들)과의 사용자 인터렉션들은 클라이언트 디바이스(108)로 하여금 랜딩 리소스(318)로 향하지 않게 할 수 있고, 요금 청구 및/또는 성능 메트릭 계산의 목적들을 위한 클릭 수로서 자격을 주지 않을 수 있다.
전체 콘텐츠 아이템 클릭 타입은 콘텐츠 항목의 임의의 부분과의 사용자 인터렉션으로서 클릭을 정의할 수 있다. 만일 콘텐츠 아이템(210)이 전체 콘텐츠 아이템 클릭 타입을 갖는다면, 콘텐츠 아이템(210)의 임의의 부분과의 사용자 인터렉션들은 클라이언트 디바이스(108)로 하여금 랜딩 리소스(318)로 향하게 할 수 있고, 요금 청구 및/또는 성능 메트릭 계산의 목적들을 위한 클릭 수로서 자격을 줄 수 있다.
확인 클릭 타입은 콘텐츠 아이템(210)과의 제1 사용자 인터렉션(예를 들어, 제1 클릭)에 응답하여, 콘텐츠 아이템(210)으로 하여금 확인 프롬프트를 디스플레이 하게 할 수 있다. 확인 프롬프트는 랜딩 리소스(318)로 향하게 하기 위해 사용자에게 다시 클릭할 것을 지시하는 메시지를 디스플레이 할 수 있다. 만일 콘텐츠 아이템(210)이 확인 클릭 타입을 갖는다면, 콘텐츠 아이템(210)과의 제2 사용자 인터렉션(예를 들어, 제2 클릭)은 클라이언트 디바이스(108)로 하여금 랜딩 리소스(318)로 향하게 할 수 있고, 요금 청구 및/또는 성능 메트릭 계산의 목적들을 위한 클릭 수로서 자격을 줄 수 있다. 확인 클릭 타입은 전환을 결과로 할 가능성이 없는 부주의한 클릭으로부터 보호하는데 유용할 수 있다.
여전히 도 6을 참조하면, 클릭 타입 선택기(312)는 클릭 타입 선택기 모듈(606)을 포함하는 것으로 도시된다. 클릭 타입 선택기 모듈(606)은 성능 메트릭 예측기(604)에 의해 콘텐츠 성능이 예측된 다수의 서로 다른 클릭 타입들로부터 클릭 타입(214)을 선택하도록 구성될 수 있다. 클릭 타입 선택기 모듈(606)은 하나 이상의 성능 메트릭들을 고려하고, 이러한 성능 메트릭들을 최적화하는 클릭 타입을 선택할 수 있다. 클릭 타입 선택기 모듈(606)은 특정 클릭 타입(214)의 표시를 랜더링 서비스(336)에 출력할 수 있다. 랜더링 서비스(336)는 콘텐츠 아이템(210)을 생성하고 랜더링하기 위해, 클릭 타입(214)을 크리에이티브(212) 및 크리에이티브 확장(216)과 결합시킬 수 있다.
이제 도 7을 참조하면, 기술된 구현예에 따른 크리에이티브 확장 선택기(314)가 더 상세히 도시된다. 크리에이티브 확장 선택기(314)는 콘텐츠 아이템(210)에서 사용하기 위한 크리에이티브 확장(216)을 선택하도록 구성될 수 있다. 크리에이티브 확장(216)은 프라이머리 크리에이티브(212)에 추가하여 콘텐츠 아이템의 보충적인 엘리먼트일 수 있다. 크리에이티브 확장들(216)은 선택된 경우 서로 다른 액션들(예를 들어, 맵을 디스플레이하는 것, 전화 통화를 개시하는 것, 랜딩 리소스(318)로 네비게이팅하는 것 등)을 초래하는 다양한 버튼들 또는 클릭 가능한 엘리먼트들을 포함할 수 있다. 크리에이티브 확장 선택기(314)는 콘텐츠 아이템(210) 및/또는 콘텐츠 추출기(308)에 의해 추출된 데이터 애셋들에 대한 서빙 컨텍스트에 기초하여, 다수의 잠재적인 크리에이티브 확장들로부터 크리에이티브 확장(314)을 선택할 수 있다.
크리에이티브 확장 선택기(314)는 크리에이티브 확장 모델 트레이닝기(332)를 포함하는 것으로 도시된다. 크리에이티브 확장 모델 트레이닝기(332)는 이벤트 데이터(204)를 검색하기 위해, 이벤트 로그 데이터베이스(208)에 액세스하도록 구성될 수 있다. 이벤트 데이터(204)는 다양한 서빙 컨텍스트들에서 이전에 클라이언트 디바이스(108)로 서브되었던 콘텐츠 아이템들의 성능을 기술할 수 있다. 이벤트 데이터(204)는 로그된 사용자 액션들(예컨데, 클릭 수, 전환 수, 및/또는 이전에-서브된 콘텐츠 아이템들과 관련된 사용자 행동들)을 포함할 수 있다. 이벤트 데이터(204)는 이전에-서브된 콘텐츠 아이템들의 속성들(예를 들어, 클릭 타입, 크리에이티브 ID, 크리에이티브 확장들, 콘텐츠 타입 등) 및 서빙 컨텍스트의 세부사항들(예를 들어, 디바이스 타입, 디바이스 위치, 콘텐츠 플랫폼, 발행자 페이지 분류, 랜딩 리소스 ID 등)을 포함할 수 있다. 크리에이티브 확장 모델 트레이닝기(332)는 크리에이티브 확장 성능 모델(330)을 트레이닝하고 업데이트하기 위해, 이벤트 로그 데이터베이스(208)로부터의 데이터를 사용할 수 있다.
여전히 도 7을 참조하면, 크리에이티브 확장 선택기(314)는 성능 메트릭 예측기(704) 및 크리에이티브 확장 성능 모델(330)을 포함하는 것으로 도시된다. 성능 메트릭 예측기(704)는 크리에이티브 확장 성능 모델(330)에 서빙 컨텍스트 데이터(602)를 제공할 수 있다. 서빙 컨텍스트 데이터(602)는 콘텐츠 요청(202)의 일부로서 수신될 수 있고, 콘텐츠 아이템(210)에 제시될 컨텍스트를 기술할 수 있다. 서빙 컨텍스트 데이터(602)는 랜딩 리소스 ID(예를 들어, URL), 랜딩 리소스 타입(예를 들어, 페이지 분류), 디바이스 타입(예를 들어, 모바일, 태블릿, 데스크탑 등), 콘텐츠 플랫폼(예를 들어, 비디오, 텍스트, 이미지 등), 디바이스 위치, 콘텐츠 요청(202)과 관련된 사용자 프로필 ID, 크리에이티브 ID, 또는 특정 서빙 컨텍스트를 기술하는 다른 정보를 포함할 수 있다.
성능 메트릭 예측기(704)는 서빙 컨텍스트 데이터(602)에 의해 표시되는 서빙 컨텍스트에 대한 크리에이티브 확장들의 다양한 타입들을 갖는 콘텐츠 아이템들의 예측된 성능(예를 들어, pCTR)을 계산하기 위해, 크리에이티브 확장 성능 모델(330)을 사용할 수 있다. 성능 메트릭 예측기(704)는 크리에이티브 확장의 예측된 성능에 기초하여, 크리에이티브 확장의 각 타입에 대한 스코어 또는 랭킹을 생성할 수 있다. 일부 구현예들에서, 성능 메트릭 예측기(704)는 "콜 클릭" 버튼, "위치" 버튼, "2차 리소스" 버튼 및/또는 콘텐츠 아이템(210)에 포함될 수 있는 크리에이티브 확장들의 다른 타입들을 갖는 콘텐츠 아이템들의 성능을 예측한다.
콜 클릭 버튼은 (예를 들어, 소매점, 고객 서비스 라인, 판매 대리점 등)와의 전화 통화 또는 다른 통신을 개시할 수 있다. 다른 디바이스 타입들(예를 들어, 데스크탑 컴퓨터, 태블릿 등)에 대해, 연락처 정보가 알려진 경우 상기 콜 클릭 버튼 대신 "이메일 클릭" 버튼 또는 좀 더 일반적인 "연락 클릭" 버튼이 포함될 수 있다.
위치 버튼은 랜딩 리소스와 관련된 비즈니스의 지리적 위치를 도시하는 지도가 디스플레이 되도록 할 수 있다. 만일 서빙 컨텍스트가 모바일 디바이스 상에 콘텐츠 아이템(210)이 제시될 것임을 표시하는 경우, 위치 버튼을 선택하는 것은 맵 어플리케이션 또는 네비게이션 어플리게이션으로 하여금 로드되도록 할 수 있다. 일부 구현예들에서, 위치 버튼을 선택하는 것은 클라이언트 디바이스(108)로 하여금 맵 리소스(예를 들어, Google Maps)로 네비게이트하게 한다.
2차 리소스 버튼은 클라이언트 디바이스(108)로 하여금 2차 리소스(320)로 네비게이트 하도록 할 수 있다. 콘텐츠 아이템(210)은 다수의 서로 다른 리소스들 또는 리소스들의 부분들(예를 들어, 2차 리소스(320), 소셜 리소스, 랜딩 리소스(318) 등)에 대한 크리에이티브 확장들(예를 들어, 선택 가능한 버튼들 또는 링크들)을 포함할 수 있다. 일부 구현예들에서, 콘텐츠 아이템(210)은 오직 2차 리소스(320)로 링크되며(그리고 랜딩 리소스로 랭크되지 않는다), 소셜 콘텐츠 아이템으로서 지칭될 수 있다. 다른 구현예들에서, 콘텐츠 아이템(210)은 랜딩 리소스(318) 및 2차 리소스(320) 모두에 링크된다. 성능 메트릭 예측기(704)는 콘텐츠 아이템이 제시될 콘텍스트에 기초하여, 크리에이티브 확장들의 다양한 타입들을 갖는 콘텐츠 아이템들에 대한 예측된 성능을 계산할 수 있다.
여전히 도 7을 참조하면, 크리에이티브 확장 선택기(314)는 확장 선택기 모듈(706)을 포함하는 것으로 도시된다. 일부 구현예들에서, 확장 선택기 모듈(706)은 위치 데이터(436)를 수신한다. 위치 데이터(436)는 다양한 데이터 리소스들(예컨데, 랜딩 리소스(318), 2차 리소스(320), 커스터머 정보 데이터베이스(322))에서 추출되거나 클라이언트 디바이스(108)로부터 수신될 수 있다. 위치 데이터(436)는 콘텐츠 아이템(210)과 관련된 비즈니스 또는 엔티티의 물리적 또는 지리적 위치를 포함할 수 있다. 예를 들면, 만일 콘텐츠 아이템(210)이 레스토랑 체인(restaurant)과 관련되는 경우, 위치 데이터(436)는 하나 이상의 레스토랑들의 위치를 포함할 수 있다. 일부 구현예들에서, 위치 데이터(436)는 클라이언트 디바이스(108)의 위치(예를 들어, GPS 좌표들, WiFi-기반 위치 등)를 포함한다.
일부 구현예들에서, 확장 선택기 모듈(706)은 연락처 데이터(438)를 수신한다. 연락처 데이터(438)는 다양한 데이터 소스들(예컨데, 랜딩 리소스(318), 2차 리소스(320), 커스터머 정보 데이터베이스(322))로부터 추출될 수 있다. 연락처 데이터(438)는 콘텐츠 아이템(210)과 관련된 비즈니스 또는 다른 엔티티에 대한 연락처 정보를 포함할 수 있다. 연락처 데이터(438)는 전화 번호, 이메일 주소, 웹페이지 URL(예를 들어, 랜딩 리소스(318) 또는 2차 리소스(320)에 대한 URL) 또는 콘텐츠 아이템(210)과 관련된 비즈니스 또는 엔티티와 연락하거나 통신할 수 있는 정보의 다른 타입들을 포함할 수 있다.
확장 선택기 모듈(706)은 복수의 크리에이티브 확장들 중 선택을 위해 이용가능한 것을 결정하기 위해, 서빙 컨텍스트 데이터(502), 위치 데이터(436), 및/또는 연락처 데이터(438)를 사용할 수 있다. 크리에이티브 확장들의 서로 다른 타입들은 서로 다른 상황들 하에서 이용가능 할 수 있다. 예를 들면, 만일 콘텐츠 아이템(210)에 대한 서빙 컨텍스트가 콘텐츠 아이템(210)이 모바일 통신 디바이스 상에서 제시됨을 표시한다면, 콜 클릭 버튼이 이용가능 할 수 있다. 일부 구현예들에서, 만일 연락처 데이터(438)가 전화 번호 또는 다른 연락처 정보를 포함한다면, 콜 클릭 버튼이 이용가능 할 수 있다. 지리적 위치(예를 들어, 거리 주소, 상점 위치, 우편 주소, GPS 좌표들 등)이 콘텐츠 추출기(308)로부터 추출된 경우 또는 클라이언트 디바이스(108)의 위치가 알려진 경우, 위치 버튼이 선택에 대해 이용가능 할 수 있다. 2차 리소스(320)의 신원이 알려진 경우, 2차 리소스 버튼이 선택에 대해 이용가능 할 수 있다.
확장 선택기 모듈(706)은 성능 메트릭 예측기(704)에 의해 콘텐츠 성능이 예측된 크리에이티브 확장들의 세트로부터 크리에이티브 확장 또는 크리에이티브 확장들의 조합을 선택하도록 구성될 수 있다. 일부 구현예들에서, 성능 메트릭 예측기(704)는 선택을 위해 이용가능한 크리에이티브 확장들의 다양한 타입들에 대한 콘텐츠 아이템들의 성능을 예측한다. 확장 선택기 모듈(706)은 하나 이상의 성능 메트릭들을 고려하고, 이러한 성능 메트릭들을 최적화하는 하나 이상의 크리에이티브 확장들을 선택할 수 있다. 크리에이티브 확장 선택기 모듈(706)은 특정 크리에이티브 확장(216)의 표시 또는 크리에이티브 확장들(216)의 조합을 랜더링 서비스(336)로 출력할 수 있다.
여전히 도 7을 참조하면, 랜더링 서비스(336)는 콘텐츠 아이템(210)을 생성하고 랜더링 하기 위해, 크리에이티브 확장(216)을 크리에이티브(212) 및 클릭 타입(214)과 결합시킨다. 일부 구현예들에서, 랜더링 서비스(336)는 클라이언트 디바이스(108)의 컴포넌트(예를 들어, 클라이언트 디바이스(108) 상에서 동작하는 웹 브라우저)이다. 다른 구현예들에서, 랜더링 서비스(336)는 콘텐츠 생성 시스템(114)의 컴포넌트일 수 있다. 크리에이티브(212), 클릭 타입(214), 및 크리에이티브 확장(216)의 각각은 선택된 크리에이티브, 클릭 타입, 또는 크리에이티브 확장에 특정한 랜더링 명령들을 포함할 수 있다. 예를 들면, 클릭 타입(214)은 콘텐츠 아이템(210)의 서브세트를 랜더링하기 위한 명령들을 버튼 클릭 타입에 대한 클릭가능한 엘리먼트로서 포함하거나, 콘텐츠 아이템(210)의 전체 영역을 전체 콘텐츠 아이템 클릭 타입에 대한 클릭가능한 엘리먼트로서 포함할 수 있다. 랜더링 서비스(336)는 크리에이티브(212), 클릭 타입(214), 및 크리에이티브 확장(216)에 의해 제공된 명령들에 따라 콘텐츠 아이템(210)을 랜더링 하기 위해 구성될 수 있다.
콘텐츠 아이템(210)은 클라이언트 디바이스(108)로 서브될 수 있다. 콘텐츠 아이템(210)과의 사용자 인터렉션들(예를 들어, 노출 수, 클릭 수, 전환 수 등)은 이벤트 로그 데이터베이스(208)에 로그되고 저장될 수 있다. 콘텐츠 생성 시스템(114)은 콘텐츠 아이템(210)과 관련된 성능 메트릭들을 계산하고 예측 모델들(326 및 330)을 트레이닝 시키기 위해, 로그된 이벤트들을 사용할 수 있다. 콘텐츠 생성 시스템(114)은 주어진 서빙 컨텍스트(예를 들어, CTR, pCTR, 또는 다른 성능 메트릭을 최적화하는 구성들)에 대한 최적화 콘텐츠 성능을 결과로 하는 것으로 추정되는 콘텐츠 아이템들의 구성 또는 구성들의 조합(예를 들어, 클릭 타입, 크리에이티브 확장 등)을 결정하기 위해, 예측 모델들을 사용한다. 콘텐츠 생성 시스템(114)은 최적화 콘텐츠 성능을 결과로 하는 것으로 추정된 구성들을 갖는 새로운 콘텐츠 아이템들을 자동으로 생성할 수 있다.
이제 도 8을 참조하면, 기술된 구현예에 따른 클릭 타입들을 사용하여 콘텐츠 성능을 최적화하기 위한 프로세스(800)의 흐름도가 도시된다. 프로세스(800)는 도 1 내지 7을 참조하여 기술된 바와 같이 콘텐츠 생성 시스템(114)에 의해 수행될 수 있다. 일부 구현예들에서, 프로세스(800)는 프로세서(304) 및 메모리(306)에 저장된 하나 이상의 모듈들을 사용하여 프로세싱 회로(302)에 의해 수행된다. 다양한 구현예들에서, 프로세스(800)의 단계들은 재배열되거나(즉, 다른 순서로 수행되거나) 동시에 수행될 수 있다.
프로세스(800)는 클라이언트 디바이스 상에서 프리젠테이션하기 위한 콘텐츠 아이템에 대한 요청을 수신하는 단계(단계(802))를 포함하는 것으로 도시된다. 콘텐츠 아이템에 대한 요청은 콘텐츠 아이템에 대한 서빙 컨텍스트의 표시를 포함할 수 있다. 서빙 컨텍스트의 표시는 서빙 컨텍스트 데이터(예컨데, 랜딩 리소스 ID(예를 들어, URL), 랜딩 리소스 타입(예를 들어, 페이지 분류), 디바이스 타입(예를 들어, 모바일, 태블릿, 데스크탑 등), 콘텐츠 플랫폼(예를 들어, 비디오, 텍스트, 이미지 등), 디바이스 위치, 사용자 관심들, 또는 특정 서빙 컨텍스트를 기술하는 다른 정보)를 포함할 수 있다. 콘텐츠 아이템에 대한 요청은 콘텐츠 요청자들(104)로부터, 콘텐츠 서버, 실-시간 입찰 시스템으로부터, 또는 클라이언트 디바이스(108)로부터 수신될 수 있다. 일부 구현예들에서, 콘텐츠 아이템에 대한 요청은 온라인 콘텐츠 서빙 프로세스의 일부로서 클라이언트 디바이스(108)로부터 수신될 수 있다(예를 들어, 웹페이지 상에 디스플레이 하기 위한 광고에 대한 요청).
여전히 도 8을 참조하면, 프로세스(800)는 다수의 서로 다른 잠재적인 클릭 타입들에 대한 콘텐츠 아이템에 대한 예측된 성능 메트릭을 계산하기 위해, 클릭 타입 성능 모델 및 콘텐츠 아이템에 대한 서빙 컨텍스트를 사용하는 단계(단계(804))를 포함하는 것으로 도시된다. 일부 구현예들에서, 성능 메트릭은 클릭률이다. 잠재적인 클릭 타입들의 각각은 클릭률을 계산하는 목적들을 위해 클릭을 정의하기 위한 서로 다른 기준을 정의할 수 있다. 예를 들면, 잠재적인 클릭 타입들은 콘텐츠 아이템의 제1 부분과의 사용자 인터렉션으로서 클릭을 정의하는 버튼 클릭 타입을 포함할 수 있으며, 상기 사용자 인터렉션은 제1 부분과 별개인 콘텐츠 아이템의 제2 부분과의 사용자 인터렉션들을 제외한다. 잠재적인 클릭 타입들은 콘텐츠 아이템의 임의의 부분과의 사용자 인터렉션으로서 클릭을 정의하는 전체 콘텐츠 아이템 클릭 타입을 포함할 수 있다. 잠재적인 클릭 타입들은 확인 프롬프트가 디스플레이 되는 동안 발생한 콘텐츠 아이템과의 사용자 인터렉션으로서 클릭을 정의하는 확인 클릭 타입을 포함할 수 있다. 확인 프롬프트는 콘텐츠 아이템과의 이전의 사용자 인터렉션에 응답하여 디스플레이 될 수 있다.
잠재적인 클릭 타입들의 각각은 정의된 기준이 만족된 경우 콘텐츠 아이템과의 사용자 인터렉션에 응답하여 발생한 이벤트를 트리거하기 위한 서로 다른 기준을 정의할 수 있다. 예를 들면, 잠재적인 클릭 타입들의 각각은 콘텐츠 아이템과 관련하여 서로 다른 사용자 액션들(예를 들어, 버튼을 클릭하는 것, 콘텐츠 아이템의 디스플레이 영역 내의 아무 곳이나 클릭하는 것, 확인 프롬프트에 응답하여 콘텐츠 아이템을 클릭하는 것 등)을 정의할 수 있다. 트리거된 이벤트는 랜딩 리소스, 2차 리소스로 네비게이트하는 것, 통신을 개시하는 것, 맵을 디스플레이하는 것, 어플리케이션을 런치(launch)하는 것, 또는 자동으로 트리거 될 수 있는 임의의 다른 이벤트를 포함할 수 있다. 서로 다른 클릭 타입들은 이벤트를 트리거하기 위해, 사용자 인터렉션들의 서로 다른 타입들을 요구할 수 있다.
여전히 도 8을 참조하면, 프로세스(800)는 예측된 성능 메트릭들에 기초하여 잠재적인 클릭 타입들 중 하나를 선택하는 단계(단계(806))를 포함하는 것으로 도시된다. 단계(806)는 예측된 성능 메트릭들의 극값(extremum)과 관련된 클릭 타입을 선택하는 것을 포함할 수 있다. 일부 구현예들에서, 단계(806)는 버튼 클릭 타입을 선택하는 것을 포함한다. 만일 버튼 클릭 타입이 선택되었다면, 프로세스(800)는 콘텐츠 아이템의 제1 부분과의 사용자 인터렉션(제1 부분과 별개인 콘텐츠 아이템의 제2 부분과의 사용자 인터렉션은 제외)으로서 이벤트를 트리거하기 위한 기준을 정의하는 것과 콘텐츠 아이템의 오직 제1 부분만을 차지하는 클릭가능한 버튼을 랜더링하는 것을 포함할 수 있다.
일부 구현예들에서, 단계(806)는 전체 콘텐츠 아이템 클릭 타입을 선택하는 것을 포함한다. 만일 전체 콘텐츠 아이템 클릭 타입이 선택되었다면, 프로세스(800)는 콘텐츠 아이템의 임의의 부분과의 사용자 인터렉션으로서 이벤트를 트리거하기 위한 기준을 정의하는 것과 콘텐츠 아이템의 전체 디스플레이 영역을 클릭가능한 엘리먼트로서 랜더링하는 것을 포함할 수 있다.
일부 구현예들에서, 단계(806)는 확인 클릭 타입을 선택하는 것을 포함한다. 만일 확인 클릭 타입이 선택되었다면, 프로세스(800)는 콘텐츠 아이템과의 제1 사용자 인터렉션에 응답하여 확인 프롬프트를 디스플레이 하는 것과 확인 프롬프트가 디스플레이 되는 동안 제1 사용자 인터렉션 이후에 발생하는 콘텐츠 아이템과의 제2 사용자 인터렉션으로서 이벤트를 트리거하기 위한 기준을 정의하는 것을 포함할 수 있다.
여전히 도 8을 참조하면, 프로세스(800)는 선택된 클릭 타입을 갖는 콘텐츠 아이템을 생성하는 단계(단계(808))와 클라이언트 디바이스 상에서 프리젠테이션하기 위한 생성된 콘텐츠 아이템을 서브하는 단계(단계(810))를 포함하는 것으로 도시된다. 콘텐츠 아이템은 실-시간 서빙 프로세스의 일부로서, 단계(802)에서 수신된 요청에 응답하여 생성될 수 있다. 단계(808)는 선택된 클릭 타입을 선택된 크리에이티브 및/또는 선택된 크리에이티브 확장과 결합시키는 것을 포함할 수 있다. 일부 구현예들에서, 단계(808)는 선택된 클릭 타입에 의해 제공된 명령들에 따라 콘텐츠 아이템을 랜더링하는 것을 포함한다. 콘텐츠 아이템을 랜더링 하는 것은 원격 랜더링 서비스 또는 클라이언트 디바이스에 의해 수행될 수 있다. 일부 구현예들에서, 단계(810)는 단계(808) 이전에 발생한다. 예를 들면, 선택된 클릭 타입은 클라이언트 디바이스로 제공될 수 있고, 클라이언트 디바이스는 선택된 클릭 타입을 사용하여 콘텐츠 아이템을 랜더링 할 수 있다.
여전히 도 8을 참조하면, 프로세스(800)는 잠재적인 클릭 타입들의 각각을 갖는 콘텐츠 아이템들에 관한 사용자 액션들을 기술하는 이벤트 데이터를 수집 및 저장하는 단계(단계(812))를 포함하는 것으로 도시된다. 이벤트 데이터는 다양한 서빙 컨텍스트에서 클라이언트 디바이스 또는 다른 클라이언트 디바이스들로 이전에 서브되었던 콘텐츠 아이템들의 성능을 기술할 수 있다. 이벤트 데이터는 로그된 사용자 액션들(예컨데, 클릭 수, 전환 수, 및/또는 이전에-서브된 콘텐츠 아이템들에 관한 다른 사용자 행동들)을 포함할 수 있다. 이벤트 데이터는 이전에-서브된 콘텐츠 아이템들의 속성들(예를 들어, 클릭 타입, 크리에이티브 ID, 크리에이티브 확장들, 콘텐츠 타입 등) 및 서빙 컨텍스트의 세부사항들(예를 들어, 디바이스 타입, 디바이스 위치, 콘텐츠 플랫폼, 발행자 페이지 분류, 랜딩 리소스 ID 등)을 포함할 수 있다.
여전히 도 8을 참조하면, 프로세스(800)는 클릭 타입 성능 모델을 트레이닝 시키기 위한 피드백으로서 이벤트 데이터를 사용하는 단계(단계(814))를 포함하는 것으로 도시된다. 단계(814)는 도 3 및 6을 참조하여 기술된 바와 같이 클릭 타입 모델 트레이닝기(328)에 의해 수행될 수 있다. 일부 구현예들에서, 단계(814)는 이벤트 데이터 및/또는 성능 메트릭들을 검색하기 위해 이벤트 로그 데이터베이스(예를 들어, 데이터베이스(208))에 액세스하는 것을 포함한다. 단계(814)는 클릭 타입 성능 모델이 다양한 클릭 타입들에 대한 콘텐츠 성능을 정확하게 예측함을 보장하기 위해 클릭 타입 성능 모델을 트레이닝 및/또는 업데이트 하고자, 이벤트 로그 데이터베이스로부터의 데이터를 사용하는 것을 포함할 수 있다.
이제 도 9를 참조하면, 기술된 구현예에 따른 크리에이티브 확장들을 사용하는 콘텐츠 성능을 최적화하기 위한 프로세스(900)의 흐름도가 도시된다. 프로세스(900)는 도 1 내지 7을 참조하여 기술된 바와 같이 콘텐츠 생성 시스템(114)에 의해 수행될 수 있다. 일부 구현예들에서, 프로세스(900)는 프로세서(304) 및 메모리(306)에 저장된 하나 이상의 모듈들을 사용하여 프로세싱 회로(302)에 의해 수행된다. 다양한 구현예들에서, 프로세스(900)의 단계들은 재배열되거나(즉, 다른 순서로 수행되거나) 동시에 수행될 수 있다.
프로세스(900)는 클라이언트 디바이스 상에서 프리젠테이션하기 위한 콘텐츠 아이템에 대한 요청을 수신하는 단계(단계(902))를 포함하는 것으로 도시된다. 콘텐츠 아이템에 대한 요청은 콘텐츠 아이템에 대한 서빙 컨텍스트의 표시를 포함한다. 서빙 컨텍스트의 표시는 서빙 컨텍스트 데이터(예컨데, 랜딩 리소스 ID(예를 들어, URL), 랜딩 리소스 타입(예를 들어, 페이지 분류), 디바이스 타입(예를 들어, 모바일, 태블릿, 데스크탑 등), 콘텐츠 플랫폼(예를 들어, 비디오, 텍스트, 이미지 등), 디바이스 위치, 사용자 관심들, 또는 특정 서빙 컨텍스트를 기술하는 다른 정보)를 포함할 수 있다. 콘텐츠 아이템에 대한 요청은 콘텐츠 요청자들(104)로부터, 콘텐츠 서버, 실-시간 입찰 시스템으로부터, 또는 클라이언트 디바이스(108)로부터 수신될 수 있다. 일부 구현예들에서, 콘텐츠 아이템에 대한 요청은 온라인 콘텐츠 서빙 프로세스의 일부로서 클라이언트 디바이스(108)로부터 수신될 수 있다(예를 들어, 웹페이지 상에 디스플레이 하기 위한 광고에 대한 요청).
여전히 도 9를 참조하면, 프로세스(900)는 다수의 서로 다른 잠재적인 크리에이티브 확장들에 대한 콘텐츠 아이템에 대한 예측된 성능 메트릭을 계산하기 위해, 크리에이티브 확장 성능 모델 및 콘텐츠 아이템에 대한 서빙 컨텍스트를 사용하는 단계(단계(904))를 포함하는 것으로 도시된다. 일부 구현예들에서, 성능 메트릭은 클릭률이다. 잠재적인 크리에이티브 확장들의 각각은 콘텐츠 아이템과의 사용자 인터렉션에 응답하여 발생하는 서로 다른 액션들을 정의할 수 있다. 예를 들면, 잠재적인 크리에이티브 확장들은 클라이언트 디바이스로 하여금 콘텐츠 아이템과 관련된 엔티티와의 통신을 개시하도록 하는 콜 클릭 확장을 포함할 수 있다. 잠재적인 크리에이티브 확장들은 맵 어플리케이션을 런치하거나 콘텐츠 아이템과 관련된 지리적 위치를 디스플레이 하는 위치 확장을 포함할 수 있다. 잠재적인 크리에이티브 확장들은 클라이언트 디바이스로 하여금 콘텐츠 아이템과 관련된 2차 리소스로 네비게이트 하도록 하는 2차 리소스 확장을 포함할 수 있다.
여전히 도 9를 참조하면, 프로세스(900)는 예측된 성능 메트릭들에 기초하여 잠재적인 크리에이티브 확장들 중 하나를 선택하는 단계(단계(906))를 포함하는 것으로 도시된다. 단계(906)는 예측된 성능 메트릭들의 극값과 관련된 크리에이티브 확장을 선택하는 것을 포함할 수 있다. 일부 구현예들에서, 단계(906)는 잠재적인 크리에이티브 확장들 중 어느 것이 선택을 위해 이용가능한이지 결정하기 위해, 콘텐츠 아이템에 대한 서빙 컨텍스트를 사용하는 것을 포함한다. 예를 들면, 만일 클라이언트 디바이스가 모바일 폰으로서 식별되었으나, 만일 클라이언트 디바이스가 데스크탑 컴퓨터로서 식별되지 않았다면, 콜 클릭 확장이 선택에 대해 이용가능 할 수 있다.
일부 구현예들에서, 단계(906)는 잠재적인 크리에이티브 확장들 중 어느 것이 선택을 위해 이용가능한이지 결정하기 위해, 콘텐츠 아이템의 크리에이티브 부분의 신원을 사용하는 것을 포함한다. 예를 들면, "위치" 크리에이티브 확장은 레스토랑 체인을 특징으로 하는 콘텐츠 아이템들에 대한 선택에 대해 이용가능 할 수 있고, 상기 체인에서 가장 가까운 레스토랑의 위치를 제공할 수 있다. 그러나, 위치 크리에이티브 확장은 오직 온라인에서만 판매하고 사용자가 잠재적으로 방문할 가능성이 있는 물리적 위치들이 없는 제품 또는 서비스를 특징으로 하는 콘텐츠 아이템에 대한 선택에 대해 이용가능 하지 않다.
일부 구현예들에서, 단계(906)는 랜딩 리소스, 랜딩 리소스와 관련된 2차 리소스, 및/또는 커스터머 정보 데이터베이스로부터 데이터 애셋들을 추출하는 것을 포함한다. 단계(906)는 잠재적인 크리에이티브 확장들 중 어느 것이 선택을 위해 이용가능한이지 결정하기 위해, 추출된 데이터 애셋들을 사용하는 것을 포함할 수 있다. 잠재적인 크리에이티브 확장들 중 어느 것이 선택을 위해 이용가능한이지 결정하는 것은 크리에이티브 확장에 대한 요구된 데이터 애셋을 식별하는 것, 식별된 데이터 애셋이 추출되었는지 여부를 결정하는 것, 그리고 요구된 데이터 애셋이 추출되지 않음을 결정함에 응답하여, 크리에이티브 확장이 선택에 대해 이용가능 하지 않음을 결정하는 것을 포함할 수 있다.
여전히 도 9를 참조하면, 프로세스(900)는 선택된 크리에이티브 확장을 갖는 콘텐츠 아이템을 생성하는 단계(단계(908))와 클라이언트 디바이스 상에서 프리젠테이션하기 위한 생성된 콘텐츠 아이템을 서브하는 단계(단계(910))를 포함하는 것으로 도시된다. 콘텐츠 아이템은 실-시간 서빙 프로세스의 일부로서, 단계(902)에서 수신된 요청에 응답하여 생성될 수 있다. 단계(908)는 선택된 크리에이티브 확장과 선택된 크리에이티브 및/또는 선택된 클릭 타입을 결합시키는 것을 포함할 수 있다. 일부 구현예들에서, 단계(908)는 선택된 크리에이티브 확장에 의해 제공된 명령들에 따라 콘텐츠 아이템을 랜더링하는 것(예를 들어, 크리에이티브 확장을 선택가능한 버튼으로 랜더링하는 것)을 포함한다. 콘텐츠 아이템을 랜더링 하는 것은 원격 랜더링 서비스 또는 클라이언트 디바이스에 의해 수행될 수 있다. 일부 구현예들에서, 단계(910)는 단계(908) 이전에 발생한다. 예를 들면, 선택된 크리에이티브 확장은 클라이언트 디바이스로 제공될 수 있고, 클라이언트 디바이스는 선택된 크리에이티브 확장을 사용하여 콘텐츠 아이템을 랜더링 할 수 있다.
여전히 도 9를 참조하면, 프로세스(900)는 잠재적인 크리에이티브 확장들의 각각을 갖는 콘텐츠 아이템들에 관한 사용자 액션들을 기술하는 이벤트 데이터를 수집 및 저장하는 단계(단계(912))를 포함하는 것으로 도시된다. 이벤트 데이터는 다양한 서빙 컨텍스트들에서 클라이언트 디바이스 또는 다른 클라이언트 디바이스들로 이전에 서브되었던 콘텐츠 아이템들의 성능을 기술할 수 있다. 이벤트 데이터는 로그된 사용자 액션들(예컨데, 클릭 수, 전환 수, 및/또는 이전에-서브된 콘텐츠 아이템들에 관한 다른 사용자 행동들)을 포함할 수 있다. 이벤트 데이터는 이전에-서브된 콘텐츠 아이템들의 속성들(예를 들어, 클릭 타입, 크리에이티브 ID, 크리에이티브 확장들, 콘텐츠 타입 등) 및 서빙 컨텍스트의 세부사항들(예를 들어, 디바이스 타입, 디바이스 위치, 콘텐츠 플랫폼, 발행자 페이지 분류, 랜딩 리소스 ID 등)을 포함할 수 있다.
여전히 도 9를 참조하면, 프로세스(900)는 크리에이티브 확장 성능 모델을 트레이닝 시키기 위한 피드백으로서 이벤트 데이터를 사용하는 단계(단계(914))를 포함하는 것으로 도시된다. 단계(914)는 도 3 및 7을 참조하여 기술된 바와 같이 크리에이티브 확장 모델 트레이닝기(332)에 의해 수행될 수 있다. 일부 구현예들에서, 단계(914)는 이벤트 데이터 및/또는 성능 메트릭들을 검색하기 위해 이벤트 로그 데이터베이스(예를 들어, 데이터베이스(208))에 액세스하는 것을 포함한다. 단계(914)는 크리에이티브 확장 성능 모델이 크리에이티브 확장들의 다양한 타입들에 대한 콘텐츠 성능을 정확하게 예측함을 보장하기 위해 크리에이티브 확장 성능 모델을 트레이닝 및/또는 업데이트 하고자, 이벤트 로그 데이터베이스로부터의 데이터를 사용하는 것을 포함할 수 있다.
본 명세서에서 기술된 본 발명 및 동작들의 구현은 디지털 전자 회로, 컴퓨터 소프트웨어, 펌웨어, 또는 하드웨어, 또는 이 들 중 하나 이상의 조합으로 구현될 수 있고, 본 명세서에서 개시된 구조들 및 그들의 구조적 균등물들을 포함한다. 본 명세서에서 기술된 본 발명의 구현은 하나 이상의 컴퓨터 프로그램, 즉, 데이터 프로세싱 장치에 의한 실행을 위한, 또는 데이터 프로세싱 장치의 동작을 제어하기 위해 하나 이상의 컴퓨터 저장 매체 상에 인코딩된 컴퓨터 프로그램 명령어들의 하나 이상의 모듈들로서 구현될 수 있다. 대안적으로는 또는 추가하여, 프로그램 명령어들은 데이터 프로세싱 장치에 의한 실행을 위한 적절한 수신기 장치로 전송을 위한 정보를 인코딩 하기 위해 생성된 인위적으로-생성된 전파된 신호(예를 들어, 머신-생성 전자, 광학 또는 전자기 신호) 상에서 인코딩 될 수 있다. 컴퓨터 저장 매체는 컴퓨터-판독가능한 저장 디바이스, 컴퓨터-판독가능한 저장 기판, 랜덤 또는 직렬 액세스 메모리 어레이 또는 디바이스, 또는 이들 중 하나 이상의 조합일 수 있거나, 이들에 포함될 수 있다. 게다가, 컴퓨터 저장 매체는 전파된 신호가 아니지만, 컴퓨터 저장 매체는 인위적으로-생성된 전파된 신호에 인코딩된 컴퓨터 프로그램 명령어들의 소스 또는 목적지일 수 있다. 또한, 컴퓨터 저장 매체는 하나 이상의 분류된 컴포넌트들 또는 미디어(예를 들어, 다수의 CD들, 디스크들, 또는 다른 저장 디바이스들)일 수 있거나 이들에 포함될 수 있다. 따라서, 컴퓨터 저장 매체는 유형적이고 비-일시적이다.
본 명세서에 기술된 동작들은 하나 이상의 컴퓨터-판독가능한 저장 디바이스들 상에 저장된 데이터 또는 다른 소스들로부터 수신된 데이터 상에서 데이터 프로세싱 장치에 의해 수행되는 동작들로서 구현될 수 있다.
용어 "클라이언트" 또는 "서버"는 예시적인 프로그램 가능한 프로세서, 컴퓨터, 칩 상의 시스템, 또는 다수의 것들, 또는 이들의 조합을 포함하여 데이터를 프로세싱 하기 위한 장치, 디바이스들, 및 머신들의 모든 종류를 포함한다. 장치는 특수 목적 논리 회로(예를 들어, 필드 프로그래머블 게이트 어레이(FGPA), 또는 주문형 집적 회로(ASIC))를 포함할 수 있다. 또한, 장치는, 하드웨어에 추가하여, 문제되는 컴퓨터 프로그램에 대한 실행 환경을 생성하는 코드(예를 들어, 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제, 크로스-플랫폼 런타임 환경, 가상 머신, 또는 이들의 하나 이상의 조합을 구성하는 코드)를 포함할 수 있다. 장치 및 실행 환경은 다양한 서로 다른 컴퓨팅 모델 인프라구조들(예컨데, 웹 서비스들, 분산된 컴퓨팅 및 그리드 컴퓨팅 인프라구조들)을 실현할 수 있다.
본 명세서의 시스템들 및 방법들은 임의의 컴퓨터 프로그램으로 완료될 수 있다. 컴퓨터 프로그램(또한 프로그램, 소프트웨어, 소프트웨어 어플리케이션, 모듈, 소프트웨어 모듈, 스크립트 또는 코드로서 언급 또는 기술될 수 있는)은 컴파일(compile)되거나 해석된 언어들 또는 서술문의 또는 절차상의 언어들을 포함하여, 프로그래밍 언어의 임의의 형태로 쓰여질 수 있고, 상기 컴퓨터 프로그램은, 독립형 프로그램 또는 모듈, 컴포넌트, 서브루틴(subroutine) 또는 컴퓨팅 환경에서 사용하기에 적합한 다른 유닛을 포함하여, 임의의 형태로 전개될 수 있다. 컴퓨터 프로그램은, 필요하지는 않지만, 파일 시스템 내의 파일에 대응할 수 있다. 프로그램은 다른 프로그램들 또는 데이터를 유지하는 파일의 부분(예를 들어, 마크업 언어 문서 내에 저장된 하나 이상의 스크립트들)내, 문제되는 프로그램에 전용되는 단일 파일 내 또는 다수의 조직화된 파일들(예를 들어, 하나 이상의 모듈들, 서브 프로그램들 또는 코드의 부분들을 저장하는 파일들) 내에 저장될 수 있다. 컴퓨터 프로그램은 하나의 컴퓨터 또는 다수의 컴퓨터들 상에서 실행될 수 있도록 전개될 수 있고, 상기 하나의 컴퓨터 또는 다수의 컴퓨터들은 하나의 사이트에 위치해 있거나 또는 다수의 사이트에 걸쳐 분산되어 있고 통신 네트워크에 의해 상호 접속되어 있다.
본 명세서에 기술된 프로세스들 및 논리 흐름들은 입력 데이터를 작동하고 출력을 생성함으로써, 하나 이상의 프로그램 가능한 컴퓨터들에 의해 수행될 수 있고, 상기 프로그램 가능한 컴퓨터들은 기능들을 수행하기 위해 하나 이상의 컴퓨터 프로그램들을 실행한다. 상기 프로세스들 및 논리 흐름들 및 구현될 수 있는 장치는 또한 예를 들면, FPGA(field programmable gate way array) 또는 ASIC(application specific integrated circuit)과 같은, 특수 목적 논리 회로에 의해 수행될 수 있다.
컴퓨터 프로그램의 실행을 위해 적절한 프로세서들은, 예시로서, 일반적 또는 특수 목적 마이크로프로세서들 또는 둘다 또는 디지털 컴퓨터의 임의의 종류의 임의의 하나 이상의 프로세서들을 포함한다. 일반적으로, 프로세서는 읽기-전용 메모리 또는 랜덤 액세스 메모리 또는 모두로부터 명령어들 및 데이터를 수신할 것이다. 컴퓨터의 필수 요소들은 명령어들에 따라 액션들을 수행하기 위한 프로세서 및 명령어들 및 데이터를 저장하기 위한 하나 이상의 메모리 디바이스들이다. 또한, 일반적으로, 컴퓨터는 하나 이상의 대량 저장 디바이스들(예를 들어, 자기, 자기-광학 디스크들 또는 광학 디스크들)을 포함하거나, 그로부터 데이터를 수신하거나 그에 데이터를 전송하거나 또는 둘다를 위해 하나 이상의 대량 저장 디바이스들에 동작적으로 연결될 수 있다. 그러나, 컴퓨터는 이러한 디바이스들을 포함할 필요가 없다. 게다가, 컴퓨터는 다른 디바이스(예를 들어, 모바일 텔레폰, PDA, 모바일 오디오 또는 비디오 플레이어, 게임 콘솔, Global Positioning System(GPS) 수신기 또는 휴대용 저장 장치(예를 들어, universal serial bus(USB) 플래시 드라이브) 등) 내에 포함될 수 있다. 컴퓨터 프로그램 명령어들 및 데이터를 저장하기 위해 적절한 디바이스들은 반도체 메모리 디바이스들(예를 들어, EPROM, EEPROM 및 플래시 메모리 디바이스들, 자기 디스크들, 예를 들면, 내장 하드 디스크 또는 탈착 가능한 디스크들, 자기 광학 디스크들 및 CD-ROM 및 DVD-ROM 디스크들)의 예시적인 방법에 의한 것을 포함하여 비-휘발성 메모리, 미디어 및 메모리 디바이스들의 모든 형태들을 포함한다. 상기 프로세서 및 메모리는 특수 목적 논리 회로에 의해 보충되거나, 특수 목적 논리 회로에 통합될 수 있다.
사용자와의 상호작용을 제공하기 위해, 본 명세서에 기술된 본 발명의 실시 예들은 사용자에게 정보를 디스플레이 하기 위한 디스플레이 디바이스(예를 들어, CRT(cathode ray tube), LCD(liquid crystal display), OLED(organic light emitting diode), TFT(thin-film transistor), 또는 다른 유연한 구성, 또는 사용자에게 정보를 디스플레이 하기 위한 임의의 다른 모니터) 및 키보드 포인팅 디바이스(예를 들어, 마우스, 트랙볼, 또는 터치 스크린, 터치 패드 등)를 갖는 컴퓨터 상에서 구현될 수 있다. 디바이스들의 다른 종류들은 또한 사용자와의 상호작용을 제공하기 위해 사용될 수 있다. 예를 들면, 사용자에게 제공된 피드백은 예를 들면, 시각 피드백, 청각 피드백 또는 촉각 피드백과 같은, 감각 피드백의 임의의 종류일 수 있고, 사용자로부터의 입력은 음향, 음성 또는 촉각 입력을 포함하여, 임의의 형태로 수신될 수 있다. 부가적으로, 예를 들면, 웹 브라우저로부터 수신된 요청들에 대응하여 사용자의 클라이언트 디바이스 상의 웹 브라우저에 웹 페이지들을 보내는 것과 같이, 컴퓨터는 서류들을 보내고 사용자에 의해 사용되는 디바이스로부터 서류들을 수신함으로써, 사용자와 상호작용을 할 수 있다.
본 명세서에 기술된 본 발명의 실시 예들은 예를 들면, 데이터 서버로서, 컴퓨팅 시스템 내에서 구현될 수 있고, 상기 컴퓨팅 시스템은 백 엔드(back end) 컴포넌트를 포함하거나 또는 예를 들면, 어플리케이션 서버와 같은, 미들웨어(middleware) 컴포넌트를 포함하거나 또는 예를 들면, 그래픽 사용자 인터페이스 또는 사용자가 본 명세서에 기술된 주제의 구현들과 상호작용하는 것을 통한 웹 브라우저를 가지는 클라이언트 컴퓨터와 같은, 프론트 엔드(front end) 컴포넌트를 포함하거나 또는 이러한 하나 이상의 벡 엔트, 미들웨어, 또는 프론트 엔드 컴포넌트들의 임의의 조합을 포함한다. 상기 시스템의 컴포넌트들은 예를 들면, 통신 네트워크와 같은, 임의의 형태 또는 디지털 데이터 통신의 매체에 의해 상호연결 될 수 있다. 통신 네트워크들의 예는 로컬 영역 네트워크("LAN") 및 광역 네트워크("WAN"), 인터-네트워크(예를 들어, 인터넷), 및 피어-투-피어 네트워크들(예를 들어, ad hoc peer-to-peer networks)을 포함한다.
본 명세서는 많은 특정한 구현의 세부사항들을 포함하고 있지만, 이들이 임의의 발명들의 범위 또는 청구될 수 있는 범위에 대한 제한으로서 해석되어서는 안되고, 오히려 특정한 발명들의 특정한 구현들에 대한 구체적인 구성들의 설명으로서 해석되어야 한다. 본 명세서에서 개별 구현들의 내용에 기술된 특정 구성들은 또한 단일 구현에서 조합하여 구현될 수 있다. 역으로, 단일 구현의 내용에 기술된 다양한 구성들이 또한 복수의 구현들에서 개별적으로 또는 임의의 적합한 하위 조합(subcombination)으로 구현될 수 있다. 더욱이, 구성들은 위에서 특정 조합들에서 동작하는 것으로 기술되고 심지어 애초에 그렇게 청구될 수 있으나, 청구되는 조합으로부터의 하나 이상의 구성들이 일부 경우에 그 조합으로부터 제거될 수 있고, 청구되는 조합이 하위 조합에 관한 것이거나 하위 조합의 변형에 관한 것일 수 있다.
마찬가지로, 동작들은 도면들에서 특정한 순서로 표시되었으나, 이것이 요구되는 결과들을 달성하기 위하여 그러한 동작들이 도시된 특정한 순서 또는 순차적 순서로 수행되거나 모든 도시된 동작들이 수행될 것을 요구하는 것으로서 이해되어서는 안된다. 특정한 상황들에서, 멀티태스킹 및 병렬 프로세싱이 유익할 수 있다. 더욱이, 상기 기술된 구현들에서의 다양한 시스템 컴포넌트들의 분리가 모든 구현들에서 그러한 분를 요구하는 것으로 이해되어서는 안되며, 기술된 프로그램 컴포넌트들 및 시스템들이 일반적으로 단일 소프트웨어 제품으로 함께 집적되거나 복수의 소프트웨어 제품들로 패키지될 수 있다는 것이 이해되어야 한다.
본 명세서에서 개시된 구성들은 스마트 텔레비전 모듈(또는 접속된 텔레비전 모듈, 하이브리드 텔리비전 모듈 등)상에서 구현될 수 있고, 이 스마트 텔레비전 모듈은 (예를 들어, 케이블, 위성, 공중파 또는 다른 신호들을 통해 수신된) 종래의 텔레비전 프로그래밍 소스들과 인터넷 접속을 통합시키도록 구성되는 프로세싱 회로를 포함할 수 있다. 상기 스마트 텔레비전 모듈은 텔레비전 세트에 물리적으로 포함될 수 있거나 셋-톱 박스, 블루-레이 또는 다른 디지털 미디어 플레이어, 게임 콘솔, 호텔 텔레비전 시스템 및 다른 컴패니언 디바이스와 같은 개별 디바이스를 포함할 수 있다. 스마트 텔레비전 모듈은 시청자들이 상기 웹상의, 로컬 케이블 TV 채널 상의, 위성 TV 채널 상의, 또는 로컬 하드 드라이브 상에 저장된 비디오들, 사진들 및 다른 콘텐츠를 탐색하고 찾도록 구성될 수 있다. 셋-톱 박스(STB) 또는 셋-톱 유닛(STU)은, 튜너를 포함할 수 있고 텔레비전 세트와 신호의 외부 소스에 접속할 수 있으며, 이후 상기 신호를 상기 디스플레이 스크린 또는 다른 디스플레이 디바이스 상에서 디스플레이되는 콘텐츠로 변환하는 정보 기기 디바이스를 포함할 수 있다. 스마트 텔레비전 모듈은, 웹 브라우저 및 복수의 스트리밍 미디어 서비스들(예를 들어, Netflix, Vudu, Hulu 등), 접속된 케이블 또는 위성 미디어 소스, 다른 웹 "채널들(channels)" 등과 같은 복수의 서로 다른 애플리케이션들에 대한 아이콘들을 포함하는 홈 스크린 또는 상위 레벨 스크린을 제공하도록 구성될 수 있다. 상기 스마트 텔레비전 모듈은 또한 전자 프로그래밍 가이드를 사용자에게 제공하도록 구성될 수 있다. 상기 텔레비전 모듈에 대한 컴패니언 애플리케이션은 이용가능한 프로그램들에 관한 추가 정보를 사용자에게 제공하고, 상기 사용자가 상기 스마트 텔레비전 모듈 등을 제어하도록 모바일 컴퓨팅 디바이스 상에서 동작가능할 수 있다. 대안의 구현들에서, 상기 구성들은 랩탑 컴퓨터 또는 다른 개인용 컴퓨터, 스마트폰, 다른 모바일 폰, 핸드헬드 컴퓨터, 태블릿 PC 또는 다른 컴퓨팅 디바이스 상에서 구현될 수 있다.
따라서, 본 내용의 특정한 구현들이 기술되었다. 다른 구현들은 하기의 청구항들의 범위 내에 존재한다. 일부 경우들에서, 청구항들에 기술된 동작들이 상이한 순서로 수행될 수 있으나 여전히 요구되는 결과들을 달성할 수 있다. 추가적으로, 첨부의 도면들에 표시된 프로세스들이 원하는 결과들을 달성하기 위하여 반드시 도시된 특정 순서, 또는 순차적 순서를 요구하는 것은 아니다. 특정한 구현들에서, 멀티태스킹 및 병렬 프로세싱이 유익할 수 있다.

Claims (20)

  1. 콘텐츠 성능을 최적화하기 위한 방법으로서, 상기 방법은,
    프로세싱 회로에서, 클라이언트 디바이스 상에서 프리젠테이션하기 위한 제3자 콘텐츠에 대한 요청을 수신하는 단계와, 상기 요청은 상기 제3자 콘텐츠에 대한 서빙 컨텍스트(serving context)의 표시(indication)를 포함하고;
    상기 프로세싱 회로에 의해, 상기 요청에 응답하여, 콘텐츠 아이템내에서 상기 클라이언트 디바이스에게 제시하기 위한 크리에이티브(creative)를 선택하는 단계와;
    상기 프로세싱 회로에 의해, 상기 서빙 컨텍스트에 기초하여, 상기 콘텐츠 아이템에 포함시키기 위한 선택에 이용 가능한 잠재적인 크리에이티브 확장들의 다수의 유형을 식별하는 단계와, 상기 잠재적인 크리에이티브 확장들의 각 식별된 유형은 상기 콘텐츠 아이템과의 사용자 인터렉션에 응답하여 발생하는 다른 액션 (action)을 정의하고;
    상기 프로세싱 회로에 의해, 상기 식별된 잠재적인 크리에이티브 확장들의 다수의 유형 각각에 대한 상기 콘텐츠 아이템의 예측된 성능 메트릭(performance matric)을 계산하기 위해 크리에이티브 확장 성능 모델 및 상기 콘텐츠 아이템에 대한 서빙 컨텍스트를 사용하는 단계와, 상기 크리에이티브 확장 성능 모델은 다양한 유형의 크리에이티브 확장에 대한 콘텐츠 성능의 예측을 제공하도록 구성되고;
    상기 프로세싱 회로에 의해, 상기 예측된 성능 메트릭들에 기초하여 상기 콘텐츠 아이템에 이용 가능한 상기 잠재적인 크리에이티브 확장들 중에서 크리에이티브 확장을 선택하는 단계와;
    상기 선택된 크리에이티브 및 상기 선택된 크리에이티브 확장을 갖는 상기 콘텐츠 아이템을 생성하는 단계와, 상기 콘텐츠 아이템은 상기 요청에 응답하여 상기 프로세싱 회로에 의해 생성되고; 그리고
    상기 클라이언트 디바이스상에 프리젠테이션하기 위해 상기 생성된 콘텐츠 아이템을 서빙(serving)하는 단계를 포함하는 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 방법.
  2. 제1항에 있어서,
    상기 잠재적인 크리에이티브 확장들 각각을 갖는 콘텐츠 아이템들에 관한 사용자 액션들을 기술하는 이벤트 데이터를 수집 및 저장하는 단계와; 그리고
    상기 크리에이티브 확장 성능 모델을 트레이닝시키기 위한 피드백으로서 상기 이벤트 데이터를 사용하는 단계를 더 포함하는 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 방법.
  3. 제1항에 있어서,
    상기 콘텐츠 아이템과 관련된 랜딩 리소스, 상기 랜딩 리소스와 관련된 2차 리소스(secondary resource) 및 고객 정보 데이터베이스 중 적어도 하나로부터 데이터 자산(data assets)을 추출하는 단계와; 그리고
    상기 잠재적 크리에이티브 확장들 중 어느 것이 선택에 이용 가능한지 결정하기 위해 상기 추출된 데이터 자산을 사용하는 단계를 더 포함하는 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 방법.
  4. 제3항에 있어서,
    상기 잠재적 크리에이티브 확장들 중 어느 것이 선택에 이용 가능한지 결정하기 위해 상기 추출된 데이터 자산을 사용하는 단계는,
    제1 크리에이티브 확장을 생성하는데 필요한(reguired) 데이터 자산을 식별하는 단계와;
    상기 식별된 데이터 자산이 추출되었는지 여부를 결정하는 단계와; 그리고
    상기 필요한 데이터 자산이 추출되지 않았다는 결정에 응답하여 상기 제1 크리에이티브 확장이 선택을 위해 이용 가능하지 않은 것으로 결정하는 단계를 포함하는 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 방법.
  5. 제1항에 있어서,
    상기 크리에이티브 확장을 선택하는 단계는
    상기 잠재적 크리에이티브 확장들 중 어느 것이 선택에 이용 가능한지 결정하기 위해 상기 제3자 콘텐츠에 대한 서빙 컨텍스트를 사용하는 단계를 포함하는 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 방법.
  6. 제1항에 있어서,
    상기 크리에이티브 확장을 선택하는 단계는,
    콜 클릭(click-to-call)확장을 선택하는 단계를 포함하고,
    상기 방법은,
    상기 콘텐츠 아이템과 관련된 엔티티와의 통신을 개시하도록 구성된 제1 크리에이티브 확장을 생성하기 위해 추출된 연락처 정보를 사용하는 단계; 그리고
    상기 콘텐츠 아이템의 선택 가능한 요소로서 상기 생성된 제1 크리에이티브 확장을 랜더링하는 단계를 더 포함하는 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 방법.
  7. 제1항에 있어서,
    상기 크리에이티브 확장을 선택하는 단계는,
    위치 확장을 선택하는 단계를 포함하고,
    상기 방법은,
    지도 애플리케이션을 개시하거나 상기 콘텐츠 아이템과 관련된 지리적 위치를 디스플레이하도록 구성된 제1 크리에이티브 확장을 생성하기 위해 추출된 위치 정보를 사용하는 단계와; 그리고
    상기 콘텐츠 아이템의 선택 가능한 요소로서 상기 생성된 제1 크리에이티브 확장을 랜더링하는 단계를 더 포함하는 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 방법.
  8. 제1항에 있어서,
    상기 크리에이티브 확장을 선택하는 단계는,
    2차 리소스secondary resource) 확장을 선택하는 단계를 포함하고,
    상기 방법은,
    상기 클라이언트 디바이스로 하여금 상기 콘텐츠 아이템과 관련된 2차 리소스로 이동(navigate)하게 하도록 구성된 제1 크리에이티브 확장을 생성하기 위해 추출된 2차 리소스 정보를 이용하는 단계와; 그리고
    상기 콘텐츠 아이템의 선택 가능한 요소로서 상기 생성된 제1 크리에이티브 확장을 랜더링하는 단계를 더 포함하는 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 방법.
  9. 제1항에 있어서,
    상기 크리에이티브 확장을 선택하는 단계는,
    상기 잠재적인 크리에이티브 확장에 대한 상기 예측된 성능 메트릭의 극값 (extremum)과 관련된 크리에이티브 확장을 선택하는 단계를 포함하는 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 방법.
  10. 제1항에 있어서,
    상기 서빙 컨텍스트는
    상기 클라이언트 디바이스의 타입, 상기 클라이언트 디바이스의 플랫폼 및 상기 콘텐츠 아이템과 함께 제시될 리소스 중 적어도 하나를 포함하는 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 방법.
  11. 콘텐츠 성능을 최적화하기 위한 시스템으로서, 상기 시스템은 프로세서 및 메모리를 갖는 프로세싱 회로를 포함하며,
    상기 프로세싱 회로는:
    클라이언트 디바이스 상에 프리젠테이션하기 위한 제3자 콘텐츠에 대한 요청을 수신하고, 상기 요청은 상기 제3자 콘텐츠에 대한 서빙 컨텍스트의 표시를 포함하고;
    상기 요청에 응답하여, 콘텐츠 아이템내에서 상기 클라이언트 디바이스에게 제시하기 위한 크리에이티브(creative)를 선택하고;
    상기 서빙 컨텍스트에 기초하여, 상기 콘텐츠 아이템에 포함시키기 위한 선택에 이용 가능한 잠재적인 크리에이티브 확장들의 다수의 유형을 식별하고, 상기 잠재적인 크리에이티브 확장들의 각 식별된 유형은 상기 콘텐츠 아이템과의 사용자 인터렉션에 응답하여 발생하는 다른 액션(action)을 정의하고;
    상기 식별된 잠재적인 크리에이티브 확장들의 다수의 유형 각각에 대한 상기 콘텐츠 아이템의 예측된 성능 메트릭(performance matric)을 계산하기 위해 크리에이티브 확장 성능 모델 및 상기 콘텐츠 아이템에 대한 서빙 컨텍스트를 사용하고, 상기 크리에이티브 확장 성능 모델은 다양한 유형의 크리에이티브 확장에 대한 콘텐츠 성능의 예측을 제공하도록 구성되고;
    상기 예측된 성능 메트릭들에 기초하여 상기 콘텐츠 아이템에 이용 가능한 상기 잠재적인 크리에이티브 확장들 중에서 크리에이티브 확장을 선택하고;
    상기 요청에 응답하여 상기 선택된 크리에이티브 및 상기 선택된 크리에이티브 확장을 갖는 상기 콘텐츠 아이템을 생성하고; 그리고
    상기 클라이언트 디바이스상에 프리젠테이션하기 위해 상기 생성된 콘텐츠 아이템을 서빙(serving)하도록 구성된 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 시스템.
  12. 제11항에 있어서,
    상기 프로세싱 회로는,
    상기 잠재적인 크리에이티브 확장들 각각을 갖는 콘텐츠 아이템들에 관한 사용자 액션들을 기술하는 이벤트 데이터를 수집 및 저장하고; 그리고
    상기 크리에이티브 확장 성능 모델을 트레이닝시키기 위한 피드백으로서 상기 이벤트 데이터를 사용하도록 구성된 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 시스템.
  13. 제11항에 있어서,
    상기 프로세싱 회로는,
    상기 콘텐츠 아이템과 관련된 랜딩 리소스, 상기 랜딩 리소스와 관련된 2차 리소스(secondary resource) 및 고객 정보 데이터베이스 중 적어도 하나로부터 데이터 자산(data assets)을 추출하고; 그리고
    상기 잠재적 크리에이티브 확장들 중 어느 것이 선택에 이용 가능한지 결정하기 위해 상기 추출된 데이터 자산을 사용하도록 구성된 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 시스템.
  14. 제13항에 있어서,
    상기 잠재적 크리에이티브 확장들 중 어느 것이 선택에 이용 가능한지 결정하기 위해 상기 추출된 데이터 자산을 사용하는 것은,
    제1 크리에이티브 확장을 생성하는데 필요한 데이터 자산을 식별하는 동작;
    상기 식별된 데이터 자산이 추출되었는지 여부를 결정하는 동작; 및
    상기 필요한 데이터 자산이 추출되지 않았다는 결정에 응답하여 상기 제1 크리에이티브 확장이 선택을 위해 이용 가능하지 않은 것으로 결정하는 동작을 포함하는 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 시스템.
  15. 제11항에 있어서,
    상기 크리에이티브 확장을 선택하는 것은,
    상기 잠재적 크리에이티브 확장들 중 어느 것이 선택에 이용 가능한지 결정하기 위해 상기 제3자 콘텐츠에 대한 서빙 컨텍스트를 사용하는 동작을 포함하는 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 시스템.
  16. 제11항에 있어서,
    상기 크리에이티브 확장을 선택하는 것은,
    콜 클릭(click-to-call)확장을 선택하는 동작을 포함하고,
    상기 상기 프로세싱 회로는,
    상기 콘텐츠 아이템과 관련된 엔티티와의 통신을 개시하도록 구성된 제1 크리에이티브 확장을 생성하기 위해 추출된 연락처 정보를 사용하고; 그리고
    상기 콘텐츠 아이템의 선택 가능한 요소로서 상기 생성된 제1 크리에이티브 확장을 랜더링하도록 구성된 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 시스템.
  17. 제11항에 있어서,
    상기 크리에이티브 확장을 선택하는 것은,
    위치 확장을 선택하는 동작을 포함하고,
    상기 상기 프로세싱 회로는,
    지도 애플리케이션을 개시하거나 상기 콘텐츠 아이템과 관련된 지리적 위치를 디스플레이하도록 구성된 제1 크리에이티브 확장을 생성하기 위해 추출된 위치 정보를 사용하고; 그리고
    상기 콘텐츠 아이템의 선택 가능한 요소로서 상기 생성된 제1 크리에이티브 확장을 랜더링하도록 구성된 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 시스템.
  18. 제11항에 있어서,
    상기 크리에이티브 확장을 선택하는 것은,
    2차 리소스secondary resource) 확장을 선택하는 동작을 포함하고,
    상기 상기 프로세싱 회로는,
    상기 클라이언트 디바이스로 하여금 상기 콘텐츠 아이템과 관련된 2차 리소스로 이동(navigate)하게 하도록 구성된 제1 크리에이티브 확장을 생성하기 위해 추출된 2차 리소스 정보를 이용하고; 그리고
    상기 콘텐츠 아이템의 선택 가능한 요소로서 상기 생성된 제1 크리에이티브 확장을 랜더링하도록 구성된 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 시스템.
  19. 제11항에 있어서,
    상기 크리에이티브 확장을 선택하는 것은,
    상기 잠재적인 크리에이티브 확장에 대한 상기 예측된 성능 메트릭의 극값 (extremum)과 관련된 크리에이티브 확장을 선택하는 동작을 포함하는 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 시스템.
  20. 제11항에 있어서,
    상기 서빙 컨텍스트는
    상기 클라이언트 디바이스의 타입, 상기 클라이언트 디바이스의 플랫폼 및 상기 콘텐츠 아이템과 함께 제시될 리소스 중 적어도 하나를 포함하는 것을 특징으로 하는 콘텐츠 성능을 최적화하기 위한 시스템.
KR1020187028973A 2014-06-27 2014-06-27 콘텐츠 성능 최적화를 위한 자동화된 클릭 타입 선택 KR102073352B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2014/080989 WO2015196467A1 (en) 2014-06-27 2014-06-27 Automated click type selection for content performance optimization

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020167036536A Division KR101908099B1 (ko) 2014-06-27 2014-06-27 콘텐츠 성능 최적화를 위한 자동화된 클릭 타입 선택

Publications (2)

Publication Number Publication Date
KR20180114236A true KR20180114236A (ko) 2018-10-17
KR102073352B1 KR102073352B1 (ko) 2020-02-04

Family

ID=54930472

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020187028973A KR102073352B1 (ko) 2014-06-27 2014-06-27 콘텐츠 성능 최적화를 위한 자동화된 클릭 타입 선택
KR1020167036536A KR101908099B1 (ko) 2014-06-27 2014-06-27 콘텐츠 성능 최적화를 위한 자동화된 클릭 타입 선택

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020167036536A KR101908099B1 (ko) 2014-06-27 2014-06-27 콘텐츠 성능 최적화를 위한 자동화된 클릭 타입 선택

Country Status (7)

Country Link
US (1) US9830062B2 (ko)
EP (1) EP3162016A4 (ko)
JP (1) JP6262886B2 (ko)
KR (2) KR102073352B1 (ko)
CN (1) CN106688215B8 (ko)
AU (2) AU2014399168B2 (ko)
WO (1) WO2015196467A1 (ko)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10028116B2 (en) * 2015-02-10 2018-07-17 Microsoft Technology Licensing, Llc De-siloing applications for personalization and task completion services
US20160259850A1 (en) * 2015-03-02 2016-09-08 David A. McInnis Datastructure generation and application
JP7167409B2 (ja) 2015-05-08 2022-11-09 大日本印刷株式会社 印刷物及び容器
US10162607B2 (en) * 2016-05-21 2018-12-25 Apple Inc. Source code rewriting during recording to provide both direct feedback and optimal code
US10685378B2 (en) * 2017-05-26 2020-06-16 Facebook, Inc. Generating product catalogs using tracking pixels
US10755030B2 (en) * 2017-06-29 2020-08-25 Salesforce.Com, Inc. Color theme maintenance for presentations
US20190034978A1 (en) * 2017-07-26 2019-01-31 Inmobi Pte Ltd Computer-implemented method and system for bidding
US10621262B2 (en) * 2017-10-30 2020-04-14 RevContent, LLC Configurable feed for display with a web page
US11036358B2 (en) 2017-10-30 2021-06-15 Eternal Strategies, LLC Configurable feed for display with a web page
US20190205901A1 (en) * 2017-12-29 2019-07-04 Facebook, Inc. Dynamic creation of content items for distribution in an online system by combining content components
US11030634B2 (en) 2018-01-30 2021-06-08 Walmart Apollo, Llc Personalized mechanisms to resolve explore-exploit dilemma with dynamically shared learnings
US11055742B2 (en) 2018-01-30 2021-07-06 Walmart Apollo, Llc Automated mechanisms to resolve explore-exploit dilemma with adaptive revival opportunities
US11042895B2 (en) 2018-01-30 2021-06-22 Walmart Apollo, Llc Automatic resolution of the explore-exploit decision in omnichannel settings
WO2019166862A1 (en) * 2018-03-02 2019-09-06 Pratik Sharma Clique service in cloud
EP3679536A1 (en) * 2018-11-13 2020-07-15 Google LLC. Systems and methods of selecting visual elements based on sentiment analysis
CN109474732A (zh) * 2019-01-10 2019-03-15 南京点明软件科技有限公司 一种适用于盲人操作手机的自动点击方法
US11436655B2 (en) * 2019-10-01 2022-09-06 Ebay Inc. Different action user-interface components in a comparison view
WO2021076807A1 (en) * 2019-10-17 2021-04-22 Pivot Industries Limited Self-organizing data capture, analysis, and collaberation system
CN111831854A (zh) * 2020-06-03 2020-10-27 北京百度网讯科技有限公司 视频标签的生成方法、装置、电子设备和存储介质
US11210596B1 (en) 2020-11-06 2021-12-28 issuerPixel Inc. a Nevada C. Corp Self-building hierarchically indexed multimedia database

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060149624A1 (en) * 2004-12-30 2006-07-06 Shumeet Baluja Generating and/or serving local area advertisements, such as advertisements for devices with call functionality
KR20070056047A (ko) * 2004-06-30 2007-05-31 구글 잉크. 호출 기능을 갖는 디바이스에 광고와 같은 로컬 에어리어광고를 생성 및/또는 서비스하는 방법

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7844491B1 (en) * 1999-10-19 2010-11-30 Netzero, Inc. Sponsorship/advertising for an internet client
US20060004627A1 (en) * 2004-06-30 2006-01-05 Shumeet Baluja Advertisements for devices with call functionality, such as mobile phones
US20060293950A1 (en) * 2005-06-28 2006-12-28 Microsoft Corporation Automatic ad placement
US8521832B1 (en) * 2006-10-04 2013-08-27 Yahoo! Inc. Mobile monetization
CN101000676A (zh) * 2006-12-31 2007-07-18 金惠军 一种抽奖型广告发布系统
US20090030784A1 (en) * 2007-07-26 2009-01-29 Yahoo Inc Business applications and monetization models of rich media brand index measurements
US9235850B1 (en) * 2007-08-13 2016-01-12 Google Inc. Adaptation of web-based text ads to mobile devices
JP4322301B1 (ja) * 2008-02-15 2009-08-26 太一 古川 共同広告システム
US8244517B2 (en) * 2008-11-07 2012-08-14 Yahoo! Inc. Enhanced matching through explore/exploit schemes
US20100121801A1 (en) * 2008-11-07 2010-05-13 Roy H Scott Enhanced matching through explore/exploit schemes
US9191615B1 (en) * 2011-05-02 2015-11-17 Needle, Inc. Chat window
US8788339B2 (en) * 2011-05-27 2014-07-22 Google Inc. Multiple attribution models with return on ad spend
CN102346899A (zh) * 2011-10-08 2012-02-08 亿赞普(北京)科技有限公司 一种基于用户行为的广告点击率预测方法和装置
CN102917074B (zh) * 2012-11-09 2016-08-03 北京奇虎科技有限公司 一种实现服务器端浏览器的方法和服务器
WO2014107626A1 (en) * 2013-01-03 2014-07-10 Brian Moore Systems and methods for advertising
US9213749B1 (en) * 2013-03-15 2015-12-15 Google Inc. Content item selection based on presentation context
CN103345512A (zh) * 2013-07-06 2013-10-09 北京品友互动信息技术有限公司 一种基于用户属性的网络广告点击率预测方法和装置
CN103761266A (zh) * 2014-01-02 2014-04-30 北京集奥聚合网络技术有限公司 基于多级逻辑回归的点击率预测方法和系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070056047A (ko) * 2004-06-30 2007-05-31 구글 잉크. 호출 기능을 갖는 디바이스에 광고와 같은 로컬 에어리어광고를 생성 및/또는 서비스하는 방법
US20060149624A1 (en) * 2004-12-30 2006-07-06 Shumeet Baluja Generating and/or serving local area advertisements, such as advertisements for devices with call functionality

Also Published As

Publication number Publication date
US9830062B2 (en) 2017-11-28
JP6262886B2 (ja) 2018-01-17
WO2015196467A1 (en) 2015-12-30
AU2019201386A1 (en) 2019-03-21
AU2014399168B2 (en) 2018-11-29
US20150378578A1 (en) 2015-12-31
EP3162016A1 (en) 2017-05-03
AU2014399168A1 (en) 2016-12-08
KR20170010004A (ko) 2017-01-25
KR102073352B1 (ko) 2020-02-04
CN106688215B8 (zh) 2020-08-18
KR101908099B1 (ko) 2018-12-18
CN106688215A (zh) 2017-05-17
JP2017522662A (ja) 2017-08-10
EP3162016A4 (en) 2018-01-24
CN106688215B (zh) 2020-07-14

Similar Documents

Publication Publication Date Title
US11182823B2 (en) Automated creative extension selection for content performance optimization
KR101908099B1 (ko) 콘텐츠 성능 최적화를 위한 자동화된 클릭 타입 선택
US20220198129A1 (en) Selectively replacing displayed content items based on user interaction
US10997265B1 (en) Selecting a template for a content item
US10146743B2 (en) Systems and methods for optimizing content layout using behavior metrics
US11086892B1 (en) Search result content item enhancement
US20150206169A1 (en) Systems and methods for extracting and generating images for display content
US11899732B2 (en) Systems and methods for automatically creating content modification scheme
JP4809403B2 (ja) 広告配信装置、広告配信方法、及び広告配信制御プログラム
US20150356627A1 (en) Social media enabled advertising
KR20190045372A (ko) 온라인 소셜 네트워크에서의 비디오 키프레임 디스플레이
WO2015066891A1 (en) Systems and methods for extracting and generating images for display content
US10152521B2 (en) Resource recommendations for a displayed resource
US8626585B1 (en) Selection of images to display next to textual content
US20130297413A1 (en) Using actions to select advertisements
US20210365962A1 (en) Systems and methods of selecting visual elements based on sentiment analysis
JP6505200B2 (ja) コンテンツの性能の最適化のための自動化されたクリックタイプの選択
WO2013033445A2 (en) Systems and methods for contextualizing a toolbar, an image and inline mobile banner advertising
US20160034945A1 (en) Slice competitor impression penetration by user type and ad format
US20210232659A1 (en) Query recommendations for a displayed resource

Legal Events

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