Способ и устройство для создания рекомендуемого списка содержимого

Изобретение относится к средствам создания рекомендаций содержимого для данного пользователя системы рекомендаций. Технический результат заключается в обеспечении извлечения свойств снимков из архива снимков. Указанный результат достигается за счет применения способа создания рекомендаций содержимого для пользователя системы рекомендаций. При этом сервером рекомендаций получают запрос пользователя на рекомендации содержимого. Создают сервером рекомендаций выборку рекомендаций. Модуль предсказаний обучают с помощью обучающей выборки. При этом связанное с пользователем свойство используется как первый вводный параметр для обучения модуля предсказания. Связанное с пользователем свойство извлекают из последней версии архива снимков. При этом версия архива снимков создана до момента времени, когда происходит обучающее событие. Связанное с пользователем свойство используется как второй вводный параметр для обучения модуля предсказания. Передают подмножество из выборки рекомендаций содержимого электронному устройству пользователя. 4 н. и 23 з.п. ф-лы, 9 ил.

 

Область техники

[01] Настоящее техническое решение относится к области поисковых систем в общем смысле, и в частности - к способу и устройству для создания рекомендуемого списка содержимого.

Уровень техники

[02] Различные глобальные или локальные сети связи (Интернет, Всемирная Паутина, локальные сети и подобные им) предлагают пользователю большой объем информации. Информация включает в себя контекстуальные разделы, такие как, среди прочего, новости и текущие события, карты, информация о компаниях, финансовая информация и ресурсы, информация о трафике, игры и информация развлекательного характера. Пользователи используют множество клиентских устройств (настольный компьютер, портативный компьютер, ноутбук, смартфон, планшеты и подобные им) для получения доступа к богатому информационному контенту (например, изображениям, аудио- и видеофайлам, анимированным изображениям и прочему мультимедийному контенту подобных сетей).

[03] Объем доступной информации на различных интернет-ресурсах экспоненциально вырос за последние несколько лет. Были разработаны различные решения, которые позволяют обычному пользователю находить информацию, которую он(а) ищет. Примером такого решения является поисковая система. Примеры поисковых систем включают в себя такие поисковые системы как GOOGLE™, YANDEX™, YAHOO!™ и другие. Пользователь может получить доступ к интерфейсу поисковой системы и подтвердить поисковый запрос, связанный с информацией, которую пользователь хочет найти в Интернете. В ответ на поисковый запрос, поисковые системы предоставляют ранжированный список результатов поиска. Ранжированный список результатов поиска создается на основе различных алгоритмов ранжирования, которые реализованы в конкретной поисковой системе, и которые используются пользователем, производящим поиск. Общей целью таких алгоритмов ранжирования является представление наиболее релевантных результатов вверху ранжированного списка, а менее релевантных результатов - на менее высоких позициях ранжированного списка результатов поиска (а наименее релевантные результаты поиска будут расположены внизу ранжированного списка результатов поиска).

[04] Поисковые системы обычно являются хорошим поисковым инструментом в том случае, когда пользователю заранее известно, что именно он(а) хочет найти. Другими словами, если пользователь заинтересован в получении информации о наиболее популярных местах в Италии (т.е. поисковая тема известна), пользователь может ввести поисковый запрос: «Наиболее популярные места в Италии». Поисковая система предоставит ранжированный список интернет-ресурсов, которые потенциально являются релевантными по отношению к поисковому запросу. Пользователь далее может просматривать ранжированный список результатов поиска для того, чтобы получить информацию, в которой он заинтересован, в данном случае - о посещаемых местах в Италии. Если пользователь по какой-либо причине не удовлетворен представленными результатами, пользователь может произвести вторичный поиск, уточнив запрос, например «наиболее популярные места в Италии летом», «наиболее популярные места на юге Италии», «Наиболее популярные места в Италии для романтичного отдыха».

[05] Существует и другой подход, в котором пользователю предоставляется возможность обнаруживать содержимое и, конкретнее, позволяется отображать и/или рекомендовать содержимое, в поиске которого пользователь не был явно заинтересован. В некоторым смысле, подобные системы рекомендуют пользователю содержимое без отдельного поискового запроса, на основе явных или неявных интересов пользователя.

[06] Примерами таких систем являются система рекомендаций FLIPBOARD, которая агрегирует и рекомендует содержимое из различных социальных сетей. Система рекомендаций FLIPBOARD предоставляет содержимое в «журнальном формате», где пользователь может «пролистывать» страницы с рекомендуемым/агрегированным содержимым. Системы рекомендаций собирают содержимое из социальных медиа и других веб-сайтах, представляет его в журнальном формате, и позволяют пользователям «пролистывать» ленты социальных новостей и ленты веб-сайтов, которые имеют партнерские отношения с компанией, что позволяет эффективно «рекомендовать» содержимое пользователю, даже если пользователь явно не выражал свой интерес в конкретном содержимом.

[07] Для создания ранжированных результатов поиска в поисковой системе или списка рекомендуемых ресурсов в обычной системе рекомендаций, соответствующие системы используют алгоритмы машинного обучения для выбора результатов поиска и/или рекомендуемого содержимого. Существуют различные алгоритмы машинного обучения, известные в данной области техники, и использующиеся в поисковых системах и системах рекомендаций. Как известно, обычные алгоритмы машинного обучения сначала «обучаются» с помощью обучающей выборки (которая является помеченной или не помеченной) для создания формулы алгоритма машинного обучения, которая далее применяется для определения во время работы выходных данных на основе входных данных системы.

Раскрытие

[08] Задачей предлагаемого технического решения является улучшение качество обучения и/или предсказания, например, путем уменьшения проблем, присущих известному уровню техники, а именно снижение проблемы «искаженного чрезмерного доверия», присущего известному уровню техники и/или снижения вычислительной мощности, которая необходима для вычисления конкретных свойств в момент обучения или в момент работы путем извлечения конкретных свойств из архива снимков вместо вычисления их в реальном времени или псевдореальном времени.

[09] Варианты осуществления настоящего технического решения были разработаны на основе предположений изобретателей о том, что для решения некоторых задач в системе рекомендаций может быть полезно использование двухэтапного подхода к рекомендациям. В двухэтапном подходе к рекомендациям модуль основного предсказания (исполняющий алгоритм основного предсказания), который выводит «окончательное предсказание» для баллов релевантности пользователь-элемент - использует в качестве ввода (для обучения и/или для использования), среди прочего, предсказания, которые были сделаны модулем предварительного предсказания (использующем алгоритм предварительного предсказания).

[10] Разработчики предполагают, что существует проблема, связанная с использованием двухэтапного подхода. Конкретнее, проблема, которая возникает в данном подходе, связана с тем, что в момент обучения модуля основных предсказаний на обучающей выборке, она частично, по большей части или полностью состоит из тех же обучающих событий, которые были использованы для тренировки модуля предварительного предсказания, что может отразиться на качестве рекомендаций, которое может ухудшиться или, по меньшей мере, не улучшиться по сравнению с одноэтапным подходом к рекомендациям.

[11] Разработчики настоящего технического решения также полагают, что существует проблема, связанная с обучением системы предсказаний (система предсказаний использует двухэтапный подход к рекомендациям или одноэтапный подход к рекомендациям) на свойствах, связанных с данным событием, причем эти свойства являются последующими относительно времени самого события (или, другими словами, свойства, которые становятся доступны в более поздний момент времени по отношению к самому событию). Качество может также снижаться в тех случаях, когда обучающая выборка для модуля основного предсказания использует вводные свойства, которые не были доступны (т.е. еще не появлялись или не были предсказаны) в момент, когда фактически произошло обучающее событие. Другими словами, если выполняется обучение с помощью события, а свойства появляются позже относительно времени события, в системе может появиться «искаженное чрезмерное доверие» по отношению к подобному событию.

[12] Варианты осуществления настоящего технического решения нацелены на устранение по меньшей некоторых из указанных проблем (вместе или по отдельности) путем обучения модуля предсказаний (модуль предсказаний может представлять собой один модуль предсказаний в рамках системы предсказаний или же часть модулей предсказаний в системе предсказания) с помощью не связанных с пользователем свойств, которые вычисляются один раз в определенный период времени (например, один раз в день, один раз через день, один раз в неделю и тому подобное) и хранятся в так называемом «архиве снимков». Не связанные с пользователем свойства, хранящиеся в архиве снимков, могут быть созданы с помощью модуля предварительного предсказания, который был обучен на событиях, которые произошли до создания архива снимков (т.е. только оглядываясь назад, не «предугадывая» само обучающее событие). Альтернативно, вместо того чтобы сохранять не связанные с пользователем свойства, система может хранить данные, которые могут быть использованы для вычисления не связанных с пользователем свойств.

[13] Связанные с пользователем свойства вычисляются в режиме псевдореального времени или реального времени (например, в ответ на обучающее событие в фазе обучения и/или получение запроса на рекомендацию в фазе выполнения), таким образом, для каждого события в системе связанные с пользователем свойства создаются в момент возникновения события. Связанные с пользователем свойства также могут быть созданы, по меньшей мере частично, модулем предварительного предсказания (тем же самым или другим относительного того, который был использован для создания архива снимков).

[14] Модуль предсказания обучается после создания архива снимков. В момент обучения каждого события, связанные с пользователем свойства доступны только на момент каждого обучающего события (например, взятого из предыдущей истории каждого пользователя), а не связанные с пользователем свойства из последних снимков, которые доступы на момент обучающего события, используются для обучения.

[15] Модуль предсказания может быть обучен на обучающей выборке событий, которая включает в себя события за более долгий период времени, за время которого могли быть созданы различные архивы снимков. В этом случае для каждого обучающего события модуль предсказания берет не связанные с пользователем свойства из последнего доступного снимка на момент события, а последние связанные с пользователем свойства, созданные в момент события, используются для обучения.

[16] В широком смысле, обучающие события могут включать в себя любые существенные пользователь-элемент события в обучающей системе, из которых может быть получена релевантность пользователь-элемент, например, пользователь ранжирует элемент или ставит ему оценку «нравится». Свойства включают в себя множество параметров, доступных в системе, которая используется для создания предсказаний релевантности пользователь-элемент. Свойства могут быть разделены на две категории -связанные с пользователем свойства и не связанные с пользователем свойства.

[17] Опять же, в широком смысле, не связанные с пользователем свойства включают в себя свойства, касающиеся элементов, для таких элементов, как, например, векторы баллов релевантности пользователь-элемент или их представления в форме векторов скрытых переменных элемента, которые предсказаны с помощью алгоритма сингулярного разложения (SVD). Не связанные с пользователем свойства могут быть получены с помощью алгоритма предварительного машинного обучения (например, SVD), отличного от алгоритма основного машинного обучения, который используется для создания окончательного предсказания рекомендуемого содержимого для пользователя. Не связанные с пользователем свойства могут быть получены с помощью нескольких различных алгоритмов, каждый из которых создает соответствующую выборку не связанных с пользователя свойств. Не связанные с пользователем свойства могут включать в себя различную статистику, связанную с элементом или связанную с системой.

[18] Связанные с пользователем свойства могут включать в себя, например, статистику, связанную с пользователем, оцененные характеристики пользователя и так далее, предсказания релевантности пользователь-элемент происходят в реальном времени (эти предсказания также могут быть созданы с помощью алгоритма предварительного предсказания, например, SVD или тому подобного).

[19] Несмотря на то что сохранение связанных с пользователем свойств для каждого момента времени и, конкретнее, для времени, когда происходит обучающее событие (например, в истории пользователя), или пересчет в реальном времени на основе относящихся к пользователю данных, доступных на этот момент, возможны, для системы может быть ресурсозатратным обладание не связанными с пользователем свойствами для каждого момента времени в системе и для каждого момента, когда происходит обучающее событие, поскольку не связанные с пользователем свойства для каждого элемента или системы в целом вычисляются с помощью истории всех пользователей и/или всех элементов в системе. Разработчики настоящего технического решения предполагают, что выполнение вычислений не связанных с пользователем свойств для каждого события в системе в каждый момент времени может быть очень ресурсозатратной задачей. Вышеуказанные проблемы могут быть уменьшены с помощью некоторых вариантов осуществления настоящего технического решения, в которых некоторые не связанные с пользователем свойства высчитываются в офлайне и хранятся в так называемых архивах снимков.

[20] Таким образом, не связанные с пользователем свойства вычисляются один раз в определенный период времени (например, один раз в день или один раз в неделю) и хранятся в архиве снимков. Не связанные с пользователем свойства хранятся в архиве снимков, которые создаются с помощью алгоритма предварительного машинного обучения, который обучается на событиях, произошедших до момента создания архива. Связанные с пользователем свойства вычисляются в реальном времени или при получении запроса на рекомендацию, таким образом для каждого события в системе известны связанные с пользователем свойства на тот момент, когда происходит событие.

[21] Еще одной целью разработчиков являлось уменьшение проблемы чрезмерного сглаживания. Таким образом, некоторые варианты осуществления настоящего технического решения полагаются на два принципа: (i) использование различных обучающих выборок для обучения алгоритма основного предсказания и алгоритма предварительного предсказания и (ii) использование только тех характеристик, которые доступны в момент наступления каждого обучающего события (т.е. подход без предугадывания, который был упомянут ранее).

[22] Таким образом, одним объектом настоящего технического решения является способ создания рекомендуемого содержимого для данного пользователя системы рекомендаций. Способ выполняется на сервере рекомендаций. Способ включает в себя: получение сервером рекомендаций от электронного устройства, связанного с данным пользователем, запроса на рекомендацию содержимого; в ответ на запрос, создание сервером рекомендаций выборки рекомендаций содержимого для данного пользователя, создание выполняется модулем предсказаний сервера рекомендаций, модуль предсказаний был обучен с помощью обучающей выборки обучающих событий так, что для каждого данного обучающего события из обучающей выборки обучающих событий: по меньшей мере одно не связанное с пользователем свойство используется как первый вводный параметр для обучения модуля предсказаний, по меньшей мере одно не связанное с пользователем свойство извлекается из последней версии архива снимков, доступной в момент времени наступления данного обучающего события, последняя версия архива была создана до времени наступления данного обучающего события; по меньшей мере одно связанное с пользователем свойство используется как второй вводный параметр для обучения модуля предсказания, по меньшей мере одно связанное с пользователем свойство, доступное в момент времени, когда происходит данное обучающее событие; передачу по меньшей мере подмножества из выборки рекомендаций содержимого электронному устройству.

[23] В некоторых вариантах осуществления способа способ дополнительно включает в себя получение по меньшей мере одного не связанного с пользователем свойства.

[24] В некоторых вариантах осуществления способа получение по меньшей мере одного не связанного с пользователем свойства включает в себя создание вторым модулем предсказания по меньшей мере одного не связанного с пользователем свойства.

[25] В некоторых вариантах осуществления способа создание по меньшей мере одного не связанного с пользователем свойства выполняется офлайн.

[26] В некоторых вариантах осуществления способа способ дополнительно включает в себя создание по меньшей мере одного специфичного относительно пользователя свойства.

[27] В некоторых вариантах осуществления способа создание по меньшей мере одного связанного с пользователем свойства выполняется в реальном времени в момент обучения.

[28] В некоторых вариантах осуществления способа обучение модуля предсказаний основано на указании обучающего события и связанного по меньшей мере одного не связанного с пользователем свойства и по меньшей мере одного связанного с пользователем свойства.

[29] В некоторых вариантах осуществления способа по меньшей мере одно не связанное с пользователем свойство представляет собой множество не связанных с пользователем свойств, и по меньшей мере одно связанное с пользователем свойство представляет собой множество связанных с пользователем свойств, причем ни одно из множества не связанных с пользователем свойств не является тем же самым, что и любое из множества связанных с пользователем свойств.

[30] В некоторых вариантах осуществления способ, способ дополнительно включает в себя создание последней версии архива снимков и сохранение последней версии архива снимков в памяти, доступной серверу рекомендаций.

[31] В некоторых вариантах осуществления способа создание последней версии архива снимков выполняется в момент времени после создания предыдущей версии архива снимков, и причем после создания последней версии архива снимков его содержимое используется вместо содержимого предыдущей версии архива снимков.

[32] В некоторых вариантах осуществления способа по меньшей мере одно связанное с пользователем свойство определяется в момент времени после получения сервером рекомендаций запроса на рекомендацию содержимого.

[33] В некоторых вариантах осуществления способа по меньшей мере одно не связанное с пользователем свойство определяется в момент времени до получения сервером рекомендаций запроса на рекомендацию содержимого.

[34] В некоторых вариантах осуществления способа по меньшей мере одно связанное с пользователем свойство не было доступно в момент создания последней версии архива снимков.

[35] В некоторых вариантах осуществления способа получение выполняется (i) в ответ на то, что пользователем электронного устройства предоставляется указание на желание пользователя получить рекомендацию содержимого и (ii) без предоставления пользователем электронного устройства указания на желание пользователя получить рекомендацию содержимого.

[36] Другим объектом настоящего технического решения является способ обучения модуля предсказаний. Модуль предсказаний является частью сервера предсказаний. Способ включает в себя: создание обучающей выборки таким образом, что для каждого данного обучающего события из обучающей выборки обучающих событий: по меньшей мере одно не связанное с пользователем свойство используется как первый вводный параметр для обучения модуля предсказаний, по меньшей мере одно не связанное с пользователем свойство извлекается из последней версии архива снимков, доступной в момент времени наступления данного обучающего события, последняя версия архива была создана до времени наступления данного обучающего события; по меньшей мере одно связанное с пользователем свойство используется как второй вводный параметр для обучения модуля предсказания, по меньшей мере одно связанное с пользователем свойство, доступное в момент времени, когда происходит данное обучающее событие; использование обучающей выборки для обучения модуля предсказания для создания указания по меньшей мере на один элемент рекомендации.

[37] В некоторых вариантах осуществления способа по меньшей мере одно связанное с пользователем свойство не было недоступно в момент создания последней версией архива снимков.

[38] В некоторых вариантах осуществления способа по меньшей мере одно связанное с пользователем свойство создается в момент использования обучающей выборки.

[39] В некоторых вариантах осуществления способа по меньшей мере одно связанное с пользователем свойство создается вторым модулем предсказания сервера рекомендаций.

[40] Другим объектом настоящего технического решения является способ обучения первого модуля предсказания и второго модуля предсказания, первый модуль предсказания и второй модуль предсказания являются частью одного сервера рекомендаций. Выводные данные второго модуля предсказания используются как входные данные для первого модуля предсказания. Способ включает в себя: создание первой обучающей выборки обучающих событий для обучения первого модуля предсказаний, создание второй обучающей выборки обучающих событий для обучения второго модуля предсказания, каждая из первой выборки обучающих событий и второй выборки обучающих событий включает в себя: соответствующее по меньшей мере одно связанное с пользователем свойство; и соответствующее по меньшей мере одно не связанное с пользователем свойство; соответствующее по меньшей мере одно не связанное с пользователем свойство и по меньшей мере одно связанное с пользователем свойство первой обучающей выборки отличаются от этих же свойств во второй обучающей выборке.

[41] Еще одним объектом настоящего технического решения является сервер, который включает в себя: модуль обработки, выполненный с возможностью осуществлять: получение сервером рекомендаций от электронного устройства, связанного с данным пользователем, запроса на рекомендацию содержимого; в ответ на запрос, создание рекомендаций содержимого для данного пользователя, создание выполняется модулем предсказаний сервера рекомендаций, модуль предсказаний был обучен с помощью обучающей выборки обучающих событий так, что для каждого данного обучающего события из обучающей выборки обучающих событий: по меньшей мере одно не связанное с пользователем свойство используется как первый вводный параметр для обучения модуля предсказаний, по меньшей мере одно не связанное с пользователем свойство извлекается из последней версии архива снимков, доступной в момент времени наступления данного обучающего события, последняя версия архива была создана до времени наступления данного обучающего события; по меньшей мере одно связанное с пользователем свойство используется как второй вводный параметр для обучения модуля предсказания, по меньшей мере одно связанное с пользователем свойство, доступное в момент времени, когда происходит данное обучающее событие, по меньшей мере одно связанное с пользователем свойство не доступное в момент создания последней версии архива снимков; передачи по меньшей мере подмножества из выборки рекомендованного содержимого электронному устройству.

[42] В некоторых вариантах осуществления сервера модуль обработки дополнительно выполнен с возможностью осуществлять получение по меньшей мере одного не связанного с пользователем свойства.

[43] В некоторых вариантах осуществления сервера для получения по меньшей мере одного не связанного с пользователем свойства модуль обработки выполнен с возможностью инициировать создание вторым модулем предсказания по меньшей мере одного не связанного с пользователем свойства.

[44] В некоторых вариантах осуществления сервера для создания по меньшей мере одного не связанного с пользователем свойства модуль обработки выполнен с возможностью создания по меньшей мере одного не связанного с пользователем свойства в режиме офлайн.

[45] В некоторых вариантах осуществления сервера модуль обработки выполнен с возможностью осуществлять создание по меньшей мере одного связанного с пользователем свойства.

[46] В некоторых вариантах осуществления сервера для создания по меньшей мере одного связанного с пользователем свойства модуль обработки выполнен с возможностью выполнять создание в реальном времени в момент обучения.

[47] В некоторых вариантах осуществления сервера обучение модуля предсказаний основано на указании обучающего события и связанного по меньшей мере одного не связанного с пользователем свойства и по меньшей мере одного связанного с пользователем свойства.

[48] В некоторых вариантах осуществления сервера по меньшей мере одно не связанное с пользователем свойство представляет собой множество не связанных с пользователем свойств, и по меньшей мере одно связанное с пользователем свойство представляет собой множество связанных с пользователем свойств, причем ни одно из множества не связанных с пользователем свойств не является тем же самым, что и любое из множества связанных с пользователем свойств.

[49] В некоторых вариантах осуществления сервера модуль обработки дополнительно выполнен с возможностью осуществлять создание последней версии архива снимков и сохранение последней версии архива снимков в памяти, доступной серверу рекомендаций.

[50] В некоторых вариантах осуществления сервера для создания последней версии архива снимков модуль обработки осуществляет создание последней версии архива снимков в момент времени после создания предыдущей версии архива снимков, и причем после создания последней версии архива снимков его содержимое используется вместо содержимого предыдущей версии архива снимков.

[51] В некоторых вариантах осуществления сервера по меньшей мере одно связанное с пользователем свойство определяется в момент времени после получения сервером рекомендаций запроса на рекомендацию содержимого.

[52] В некоторых вариантах осуществления сервера по меньшей мере одно не связанное с пользователем свойство определяется в момент времени до получения сервером рекомендаций запроса на рекомендацию содержимого.

[53] В некоторых вариантах осуществления сервера по меньшей мере одно связанное с пользователем свойство не было доступно в момент создания последней версией архива снимков.

[54] В некоторых вариантах осуществления сервера получение выполняется (i) в ответ на то, что пользователем электронного устройства предоставляется указание на желание пользователя получить рекомендацию содержимого и (ii) без предоставления пользователем электронного устройства указания на желание пользователя получить рекомендацию содержимого.

[55] В контексте настоящего описания «сервер» подразумевает под собой компьютерную программу, работающую на соответствующем оборудовании, которая способна получать запросы (например, от клиентских устройств) по сети и выполнять эти запросы или инициировать выполнение этих запросов. Оборудование может представлять собой один физический компьютер или одну физическую компьютерную систему, но ни то, ни другое не является обязательным для данного технического решения. В контексте настоящего технического решения использование выражения «сервер» не означает, что каждая задача (например, полученные команды или запросы) или какая-либо конкретная задача будет получена, выполнена или инициирована к выполнению одним и тем же сервером (то есть одним и тем же программным обеспечением и/или аппаратным обеспечением); это означает, что любое количество элементов программного обеспечения или аппаратных устройств может быть вовлечено в прием/передачу, выполнение или инициирование выполнения любого запроса или последствия любого запроса, связанного с клиентским устройством, и все это программное и аппаратное обеспечение может быть одним сервером или несколькими серверами, оба варианта включены в выражение «по меньшей мере один сервер».

[56] В контексте настоящего описания «клиентское устройство» подразумевает под собой аппаратное устройство, способное работать с программным обеспечением, подходящим к решению соответствующей задачи. Таким образом, примерами клиентских устройств (среди прочего) могут служить персональные компьютеры (настольные компьютеры, ноутбуки, нетбуки и т.п.) смартфоны, планшеты, а также сетевое оборудование, такое как маршрутизаторы, коммутаторы и шлюзы. Следует иметь в виду, что устройство, ведущее себя как клиентское устройство в настоящем контексте, может вести себя как сервер по отношению к другим клиентским устройствам. Использование выражения «клиентское устройство» не исключает возможности использования множества клиентских устройств для получения/отправки, выполнения или инициирования выполнения любой задачи или запроса, или же последствий любой задачи или запроса, или же этапов любого вышеописанного способа.

[57] В контексте настоящего описания «база данных» подразумевает под собой любой структурированный набор данных, не зависящий от конкретной структуры, программного обеспечения по управлению базой данных, аппаратного обеспечения компьютера, на котором данные хранятся, используются или иным образом оказываются доступны для использования. База данных может находиться на том же оборудовании, выполняющем процесс, который сохраняет или использует информацию, хранящуюся в базе данных, или же она может находиться на отдельном оборудовании, например, выделенном сервере или множестве серверов.

[58] В контексте настоящего описания «информация» включает в себя любую информацию, которая может храниться в базе данных. Таким образом, информация включает в себя, среди прочего, аудиовизуальные произведения (изображения, видео, звукозаписи, презентации и т.д.), данные (данные о местоположении, цифровые данные и т.д.), текст (мнения, комментарии, вопросы, сообщения и т.д.), документы, таблицы, списки слов и т.д.

[59] В контексте настоящего описания «компонент» подразумевает под собой программное обеспечение (соответствующее конкретному аппаратному контексту), которое является необходимым и достаточным для выполнения конкретной(ых) указанной(ых) функции(й).

[60] В контексте настоящего описания «используемый компьютером носитель компьютерной информации» подразумевает под собой носитель абсолютно любого типа и характера, включая ОЗУ, ПЗУ, диски (компакт диски, DVD-диски, дискеты, жесткие диски и т.д.), USB флеш-накопители, твердотельные накопители, накопители на магнитной ленте и т.д.

[61] В контексте настоящего описания слова «первый», «второй», «третий» и т.д. используются в виде прилагательных исключительно для того, чтобы отличать существительные, к которым они относятся, друг от друга, а не для целей описания какой-либо конкретной связи между этими существительными. Так, например, следует иметь в виду, что использование терминов "первый сервер" и "третий сервер " не подразумевает какого-либо порядка, отнесения к определенному типу, хронологии, иерархии или ранжирования (например) серверов/между серверами, равно как и их использование (само по себе) не предполагает, что некий "второй сервер" обязательно должен существовать в той или иной ситуации. В дальнейшем, как указано здесь в других контекстах, упоминание "первого" элемента и "второго" элемента не исключает возможности того, что это один и тот же фактический реальный элемент. Так, например, в некоторых случаях, "первый" сервер и "второй" сервер могут являться одним и тем же программным и/или аппаратным обеспечением, а в других случаях они могут являться разным программным и/или аппаратным обеспечением.

[62] Каждый вариант осуществления настоящего технического решения преследует по меньшей мере одну из вышеупомянутых целей и/или объектов. Следует иметь в виду, что некоторые объекты настоящего технического решения, полученные в результате попыток достичь вышеупомянутой цели, могут удовлетворять и другим целям, отдельно не указанным здесь.

[63] Дополнительные и/или альтернативные характеристики, аспекты и преимущества вариантов осуществления настоящего технического решения станут очевидными из последующего описания, прилагаемых чертежей и прилагаемой формулы изобретения.

Краткое описание чертежей

[64] Для лучшего понимания настоящего технического решения, а также других его аспектов и характерных черт сделана ссылка на следующее описание, которое должно использоваться в сочетании с прилагаемыми чертежами, где:

[65] На Фиг. 1 представлена система, подходящая для реализации неограничивающих вариантов осуществления настоящего технического решения.

[66] На Фиг. 2 представлено схематичное изображение модуля обработки, первого модуля предсказания и второго модуля предсказания системы, показанной на Фиг. 1.

[67] На Фиг. 3 представлено схематическое изображение того, как создается архив снимков.

[68] На Фиг. 4 представлен снимок экрана интерфейса рекомендаций, реализованного в соответствии с неограничивающим вариантом осуществления настоящего технического решения, интерфейс рекомендаций создан на электронном устройстве, связанном с пользователем системы, показанной на Фиг. 1.

[69] На Фиг. 5 представлен снимок экрана интерфейса рекомендаций, реализованного в соответствии с другим неограничивающим вариантом осуществления настоящего технического решения, интерфейс рекомендаций создан на электронном устройстве, связанном с пользователем системы, показанной на Фиг. 1.

[70] На Фиг. 6 представлен снимок экрана интерфейса рекомендаций, реализованного в соответствии с еще одним неограничивающим вариантом осуществления настоящего технического решения, интерфейс рекомендаций создан на электронном устройстве, связанном с пользователем системы, показанной на Фиг. 1.

[71] На Фиг. 7 представлена блок-схема способа, выполняемого в рамках системы, изображенной на Фиг. 1, и выполненного в соответствии с вариантом осуществления настоящего технического решения, не ограничивающим его объем.

[72] На Фиг. 8 представлена блок-схема способа, реализованного в соответствии с другим вариантом осуществления настоящего технического решения, не ограничивающим его объем.

[73] На Фиг. 9 представлена блок-схема способа, реализованного в соответствии с еще одним вариантом осуществления настоящего технического решения, не ограничивающим его объем.

Осуществление

[74] На Фиг. 1 представлена принципиальная схема системы 100, выполненной в соответствии с вариантами осуществления настоящего технического решения, не ограничивающими его объем. Важно иметь в виду, что нижеследующее описание системы 100 представляет собой описание иллюстративных вариантов осуществления настоящего технического решения. Таким образом, все последующее описание представлено только как описание иллюстративного примера настоящего технического решения. Это описание не предназначено для определения объема или установления границ настоящего технического решения. Некоторые полезные примеры модификаций системы 100 также могут быть охвачены нижеследующим описанием. Целью этого является также исключительно помощь в понимании, а не определение объема и границ настоящего технического решения. Эти модификации не представляют собой исчерпывающий список, и специалистам в данной области техники будет понятно, что возможны и другие модификации. Кроме того, это не должно интерпретироваться так, что там, где не были изложены примеры модификаций, никакие модификации невозможны, и/или что то, что описано, является единственным вариантом осуществления этого элемента настоящего технического решения. Как будет понятно специалисту в данной области техники, это, скорее всего, не так. Кроме того, следует иметь в виду, что система 100 представляет собой в некоторых конкретных проявлениях достаточно простой вариант осуществления настоящего технического решения и в подобных случаях представлен здесь с целью облегчения понимания. Как будет понятно специалисту в данной области техники, многие варианты осуществления настоящего технического решения будут обладать гораздо большей сложностью.

[75] В общем случае система 100 выполнена с возможностью предоставлять рекомендации содержимого пользователю 102 системы 100. Пользователь 102 может являться подписчиком сервиса рекомендаций, который предоставляет система 100. Однако, подписка не обязана быть оплачиваемой или ускоренной. Например, пользователь 102 может стать подписчиком путем скачивания рекомендательного приложения из системы 100, путем регистрации и предоставления сочетания логина/пароля, путем регистрации и предоставления пользовательских настроек и так далее. Поэтому любой вариант системы, выполненный с возможностью создавать рекомендации содержимого для данного пользователя, может быть адаптирован специалистом для выполнения вариантов осуществления настоящего технического решения после того, как специалистом было прочитано настоящее описание. Кроме того, система 100 может быть описана с помощью примера системы 100, которая является системой рекомендаций (следовательно, система 100 может упоминаться как «система 100 рекомендаций» или «система 100 предсказаний» или «система 100 обучения»). Тем не менее, варианты осуществления настоящего технического решения могут также применяться к другим типам систем 100, как будет более подробно описано далее.

[76] Система 100 содержит электронное устройство 104, электронное устройство 104 связано с пользователем 102. Таким образом, электронное устройство 104 может иногда упоминаться как «клиентское устройство», «устройство конечного пользователя» или «клиентское электронное устройство». Следует отметить, что тот факт, что электронное устройство 104 связано с пользователем 102, не подразумевает какого-либо конкретного режима работы, равно как и необходимости входа в систему, быть зарегистрированным, или чего-либо подобного.

[77] Варианты электронного устройства 104 конкретно не ограничены, но в качестве примера электронного устройства 104 могут использоваться персональные компьютеры (настольные компьютеры, ноутбуки, нетбуки и т.п.), устройства беспроводной связи (смартфоны, мобильные телефоны, планшеты и т.п.), а также сетевое оборудование (маршрутизаторы, коммутаторы или шлюзы). Электронное устройство 104 содержит аппаратное и/или прикладное программное, и/или системное программное обеспечение (или их комбинацию), как известно в области техники, чтобы выполнять рекомендательное приложение 106. В общем случае задачей рекомендательного приложения 106 является позволить пользователю получать (или каким-либо иным способом иметь доступ) к рекомендациям содержимого, которые предоставлены системой 100, как будет более подробно описано далее.

[78] Реализация рекомендательного приложения 106 никак конкретно не ограничена. Одним из примеров выполнения рекомендательного приложения 106 является доступ пользователя на веб-сайт, соответствующий системе рекомендаций, для получения доступа к рекомендательному приложению 106. Например, рекомендательное приложение 106 может быть вызвано путем ввода (или копирования-вставки или выбора ссылки) URL, связанного с сервисом рекомендаций. Альтернативно, рекомендательное приложение 106 может являться приложением, скачанным из так называемого магазина приложений, например, APPSTORE™ или GOOGLEPLAY™, и установленным/используемым на электронном устройстве 104. Важно иметь в виду, что рекомендательное приложение 106 может быть вызвано с помощью любых других средств.

[79] В общем случае рекомендательное приложение 106 включает в себя рекомендательный интерфейс 108, причем рекомендательный интерфейс 108 отображается на экране (отдельно не пронумерован) электронного устройства 104. На Фиг. 4 представлен снимок экрана с рекомендательным интерфейсом 108, который выполняется в соответствии с одним неограничивающим вариантом осуществления настоящего технического решения. В некоторых вариантах осуществления настоящего технического решения рекомендательный интерфейс 108 активируется, когда пользователь 102 электронного устройства 104 активирует (т.е. запускает, использует, запускает в фоновом режиме и так далее) рекомендательное приложение 106. Альтернативно, рекомендательный интерфейс 108 может быть активирован, когда пользователь 102 открывает новое окно браузера и/или активирует новую вкладку в браузерном приложении.

[80] Рекомендательный интерфейс 108 включает в себя поисковый интерфейс 450. Поисковый интерфейс 450 включает в себя интерфейс 452 поискового запроса. Интерфейс 452 поискового запроса может быть реализован как «омнибокс», что позволяет вводить поисковый запрос для проведения поиска или сетевой адрес (например, Единый Указатель Ресурсов (URL)) для идентификации ресурса (например, веб-сайта), который будет вызван.

[81] Рекомендательный интерфейс 108 дополнительно включает в себя интерфейс 454 ссылок. Интерфейс 454 ссылок включает в себя активаторы 456, и каждый из множества активаторов 456 обладает ссылкой на (i) веб-сайт, отмеченный как «избранное» или как-либо иначе отмеченный пользователем 102, (ii) ранее посещенный веб-сайт и (iii) тому подобное. Множество активаторов 456 в представленном варианте осуществления визуально представлено пользователю 102 в виде квадратных кнопок с логотипом и/или названием представленного ресурса, логотип и название позволяют пользователю 102 идентифицировать, на какой ресурс ведет каждый из множества активаторов 456. Тем не менее, важно иметь в виду, что визуальное представление некоторых или всех из множества активаторов 456 может быть иным. Таким образом, некоторые или все из множества активаторов 456 могут быть реализованы как кнопки других форм, как список гиперссылок и так далее.

[82] В качестве примера множество активаторов 456 включает в себя, среди прочего, первый активатор 458 и второй активатор 460. Первый активатор может быть связан со ссылкой на поисковую систему Яндекс™, и, по этой причине, первый активатор 458 обладает логотипом поисковой системы Яндекс, и может быть связан, например, с гиперссылкой www.yandex.ru. Второй активатор 460 может быть связан со ссылкой на видео-сервис Youtube™, и, по этой причине, второй активатор 460 обладает логотипом видео-сервиса Youtube, и может быть связан, например, с гиперссылкой www.youtube.com. Излишне говорить, что число и содержимое индивидуальных активаторов из множества активаторов 456 никак конкретно не ограничено.

[83] Рекомендательный интерфейс 108 дополнительно включает в себя набор 462 рекомендованного содержимого. Набор 462 рекомендованного содержимого включает в себя один или несколько элементов рекомендованного содержимого, например, первый элемент 464 рекомендованного содержимого и второй элемент 466 рекомендованного содержимого. Естественно, набор 462 рекомендованного содержимого может обладать более (или менее), чем двумя элементами (первым элементом 464 рекомендованного содержимого и вторым элементом 466 рекомендованного содержимого). В рамках варианта осуществления, представленного на Фиг. 4, и тех вариантов осуществления настоящего технического решения, где присутствует более одного элемента рекомендованного содержимого, пользователь 102 может прокручивать через набор 462 рекомендованного содержимого. Прокрутка может осуществляться любыми подходящими способами. Например, пользователь 102 может прокручивать содержимое набора 462 рекомендованного содержимого путем активации мыши (не показано), клавиши клавиатуры (не показано) или взаимодействия с сенсорным экраном (не показано) соответствующего электронного устройства 104. В варианте осуществления настоящего технического решения, представленном на Фиг. 4, пользователь 102 может прокручивать рекомендации содержимого (т.е. первый элемент 464 рекомендованного содержимого и второй элемент 466 рекомендованного содержимого, а также другие элементы рекомендованного содержимого, которые потенциально присутствуют в наборе 462 рекомендованного содержимого) путем выполнения проведения справа налево или слева направо (или прокручивания с помощью мыши или клавиатуры). Тем не менее, следует отметить, что в альтернативных вариантах осуществления настоящего технического решения прокрутка через рекомендованное содержимого может быть выполнена в вертикальном направлении или в любом другом удобном направлении.

[84] То, как именно создается набор 462 рекомендованного содержимого, будет более подробно описано далее.

[85] Рекомендательный интерфейс 108 на Фиг. 4 может считаться «обзорным экраном рекомендаций» в том смысле, что он предоставляет обзор рекомендованных элементов, а также другое содержимое и/или другие интерфейсы. Конкретнее, в представленном варианте осуществления настоящего технического решения набор 462 рекомендаций содержимого (который позволяет пользователю просматривать содержимое, которое пользователь 102 мог ранее не видеть, или о заинтересованности в котором пользователь 102 может быть даже не осведомлен) представлен вместе со множеством активаторов 456 (которое позволяет пользователю 102 посматривать содержимое, которое пользователь ранее просматривал и/или отмечал как интересное), а также с поисковым интерфейсом 450 (который позволяет пользователю 102 искать ресурсы и/или получать доступ к ресурсам, например, ресурсам, которые доступны в Интернете и так далее).

[86] Со ссылкой на Фиг. 5, рекомендательный интерфейс 108 представлен в виде «рекомендованного содержимого». Конкретнее, рекомендательный интерфейс 108, представленный на Фиг. 5, включает в себя ранее упомянутый набор 462 рекомендованного содержимого, который содержит первый элемент 464 рекомендованного содержимого и второй элемент 466 рекомендованного содержимого (содержимое которых отличается от того, что представлено на Фиг. 4). Дополнительно к набору 462 рекомендованного содержимого, рекомендательный интерфейс 108 на Фиг. 5 дополнительно включает в себя выделенный рекомендованный элемент 570, который может быть наиболее релевантным/интересным рекомендованным элементом для пользователя 102, что было выбрано модулем 116 первого предсказания и/или модулем 118 второго предсказания (будет подробнее описано далее).

[87] Как будет понятно специалисту в области техники, рекомендательный интерфейс 108, показанный на Фиг. 5, не включает в себя элементы, которые аналогичны множеству активаторов 456 или поисковому интерфейсу 450. Таким образом, вариант рекомендованного содержимого, относящийся к рекомендательному интерфейсу 108, позволяет пользователю 102 просматривать рекомендации содержимого без «отвлечения» на другие элементы содержимого (такие как избранные ссылки, поисковые интерфейсы и так далее).

[88] Наконец, со ссылкой на Фиг. 6, рекомендательный интерфейс 108 представлен в виде «просмотр элемента рекомендованного содержимого». В рамках иллюстрации, показанной на Фиг. 6, рекомендательный интерфейс 108 отображает один рекомендованный элемент 672. Просмотр элемента рекомендованного содержимого позволяет пользователю 102 просматривать индивидуальные элементы рекомендаций содержимого (такие как содержимое одного рекомендованного элемента 672, показанное на Фиг. 6).

[89] Следует отметить, что переход между просмотрами рекомендательного интерфейса 108, которые представлены на Фиг. 4, Фиг. 5 и Фиг. 6, может быть инициирован тем, что пользователь 102 выполняет конкретное действие. Например, после демонстрации рекомендательного интерфейса 108, показанного на Фиг. 4, когда пользователь нажимает на область, в общем случае связанную в набором 462 рекомендованных элементов, электронное устройство 104 может менять представление рекомендательного интерфейса 108, показанного на Фиг. 4, на показанный на Фиг. 5. Аналогичным образом, после нажатия пользователем 102 (или иной активации) один конкретный набор 462 рекомендованных элементов отображается в пределах рекомендательного интерфейса 108 на Фиг. 5, электронное устройство 104 может менять представление рекомендательного интерфейса 108, показанного на Фиг. 4, на показанный на Фиг. 5.

[90] Возвращаясь к описанию Фиг. 1, электронное устройство 104 функционально соединено с сетью 110 передачи данных для получения доступа к серверу 112 рекомендаций. В некоторых вариантах осуществления настоящего технического решения, не ограничивающих его объем, сеть 110 передачи данных может представлять собой Интернет. В других вариантах осуществления настоящего технического решения сеть 110 передачи данных может быть реализована иначе - в виде глобальной сети передачи данных, локальной сети передачи данных, частной сети передачи данных и т.п. Линия передачи данных (отдельно не пронумерована) между электронным устройством 104 и сетью 110 передачи данных реализована таким образом, что она будет зависеть, среди прочего, от того, как реализовано электронное устройство 104. В качестве примера, но не ограничения, в данных вариантах осуществления настоящего технического решения в случаях, когда электронное устройство 104 представляет собой беспроводное устройство связи (например, смартфон), линия передачи данных представляет собой беспроводную сеть передачи данных (например, среди прочего, линия передачи данных 3G, линия передачи данных 4G, беспроводной интернет Wireless Fidelity или коротко WiFi®, Bluetooth® и т.п.). В тех примерах, где электронное устройство 104 представляет собой портативный компьютер, линия связи может быть как беспроводной (беспроводной интернет Wireless Fidelity или коротко WiFi®, Bluetooth® и т.п) так и проводной (соединение на основе сети Ethernet).

[91] Сервер 112 может представлять собой обычный компьютерный сервер. В примере варианта осуществления настоящего технического решения сервер 112 может представлять собой сервер Dell™ PowerEdge™, на котором используется операционная система Microsoft™ Windows Server™. Излишне говорить, что сервер 112 может представлять собой любое другое подходящее аппаратное, прикладное программное, и/или системное программное обеспечение или их комбинацию. В представленном варианте осуществления настоящего технического решения, не ограничивающем его объем, сервер 112 является одиночным сервером. В других вариантах осуществления настоящего технического решения, не ограничивающих его объем, функциональность сервера 112 может быть разделена и может выполняться с помощью нескольких серверов.

[92] Сервер 112 включает в себя модуль 114 обработки. Модуль 114 обработки оперативно соединен с первым модулем 116 предсказания и вторым модулем 118 предсказания. Модуль 114 обработки обладает доступом к первой базе 120 данных, второй базе 122 данных, третьей базе 124 данных и четвертой базе 127 данных. В представленном варианте осуществления настоящего технического решения модуль 114 обработки обладает доступом к первой базе 120 данных, второй базе 122 данных, третьей базе 124 данных и четвертой базе 127 данных либо через первый модуль 116 предсказания, либо через второй модуль 118 предсказания. Тем не менее, в альтернативных вариантах осуществления настоящего технического решения модуль 114 обработки может обладать прямым доступом к некоторым или всем из первой базы 120 данных, второй базы 122 данных, третьей базы 124 данных и четвертой базы 127 данных.

[93] Кроме того, в представленном варианте осуществления первая база 120 данных, вторая база 122 данных, третья база 124 данных и четвертая база 127 данных представлены в виде отдельных физических элементов. Но это не является обязательным для каждого варианта осуществления настоящего технического решения. Таким образом, некоторые или все из первой базы 120 данных, второй базы 122 данных, третьей базы 124 данных и четвертой базы 127 данных могут быть реализованы в виде одной базы данных. Кроме того, любая из первой базы 120 данных, второй базы 122 данных, третьей базы 124 данных и четвертой базы 127 данных может быть разделена на несколько отдельных баз данных.

[94] Аналогичным образом модуль 114 обработки, первый модуль 116 предсказания и второй модуль 118 предсказания представлены в виде отдельных физических элементов. Но это не является обязательным для каждого варианта осуществления настоящего технического решения. Таким образом, некоторые или все из модуля 114 обработки, первого модуля 116 предсказания и второго модуля 118 предсказания могут быть реализованы в виде одного устройства аппаратного обеспечения. Кроме того, любой из модуля 114 обработки, первого модуля 116 предсказания и второго модуля 118 предсказания может быть разделен на несколько отдельных устройств аппаратного обеспечения.

[95] Аналогичным образом все (или любая комбинация) модуля 114 обработки, первого модуля 116 предсказания и второго модуля 118 предсказания, первой базы 120 данных, второй базы 122 данных, третьей базы 124 данных и четвертой базы 127 данных могут быть реализованы как одно устройство аппаратного обеспечения.

[96] Функции различных компонентов сервера 112 будут более подробно описаны ниже.

[97] Модуль 114 обработки выполнен с возможностью (i) получать от электронного устройства 104 запрос на рекомендации 150 содержимого и (ii) в ответ на запрос, создавать набор 152 рекомендаций содержимого, специально настроенный для пользователя 102, связанного с электронным устройством 104. Модуль 114 обработки может дополнительно координировать выполнение различных процедур, описанных здесь как выполняемых модулем 116 предсказания, вторым модулем 118 предсказания, а также первой базой 120 данных, второй базой 122 данных, третьей базой 124 данных и четвертой базой 127 данных.

[98] В некоторых вариантах осуществления настоящего технического решения запрос на рекомендации 150 содержимого может быть создан в ответ на предоставление пользователем 102 явного указания на его/ее желание получать рекомендации содержимого. Например, вышеупомянутый рекомендательный интерфейс 108 может предоставлять кнопку (или другой активируемый элемент), который позволит пользователю 102 выражать свое желание получить новые или обновленные рекомендации содержимого. В качестве неограничивающего примера рекомендательный интерфейс 108 может предоставить активируемую кнопку, на которой написано «запросить рекомендации содержимого». В рамках этих вариантов осуществления настоящего технического решения запрос на рекомендации 150 содержимого может считаться «явным запросом» в том смысле, что пользователь 102 явно выражает запрос на рекомендации содержимого.

[99] В других вариантах осуществления настоящего технического решения запрос на рекомендации 150 содержимого может быть создан в ответ на явное указание от пользователя 102 на желание пользователя получить рекомендации содержимого. В некоторых вариантах осуществления настоящего технического решения запрос на рекомендации 150 содержимого может быть создан в ответ на то, что пользователь 102 запускает рекомендательное приложение 106.

[100] В некоторых других вариантах осуществления настоящего технического решения запрос на рекомендации 150 содержимого может быть создан даже без предоставления пользователем 102 явного или неявного указания на его/ее желание получать рекомендации содержимого. Например, в тех вариантах осуществления настоящего технического решения, где рекомендательное приложение 106 реализовано в виде браузера (например, браузер GOOGLE™, браузер YANDEX™, a YAHOO!™ браузер или любое другое собственное или коммерчески доступное браузерное приложение), рекомендации 150 содержимого могут быть созданы в ответ на то, что пользователь 102 открывает браузерное приложение, и может быть создано, например, без выполнения пользователем 102 каких-либо действий, кроме активации браузерного приложения. В качестве другого примера рекомендации 150 содержимого могут быть созданы в ответ на открытие пользователем 102 новой вкладки в уже открытом браузерном приложении, и могут быть созданы, например, без выполнения пользователем 102 каких-либо действий, кроме активации новой вкладки браузера. Другими словами, запрос на рекомендации 150 содержимого может быть создан даже без знания пользователя 102 о том, что он может быть заинтересован в получении рекомендации содержимого.

[101] В качестве другого примера рекомендации 150 содержимого могут быть созданы в ответ на выбор пользователем 102 конкретного элемента браузерного приложения, и могут быть созданы, например, без выполнения пользователем 102 каких-либо действий, кроме активации/выбора конкретного элемента браузерного приложения.

[102] Примеры конкретного элемента браузерного приложения включают в себя, без установления ограничений:

- Адресную строку строки браузерного приложения;

- Поисковую строку браузерного приложения и/или поисковую строку веб-сайта поисковой системы, доступного в браузерном приложении;

- Омнибокс (связанные адрес и поисковая строка браузерного приложения);

- Панель избранных или недавно посещенных сетевых ресурсов;

- Любую другую заранее определенную область интерфейса браузерного приложения или веб-ресурса, отображенного в браузерном приложении.

[103] В некоторых вариантах осуществления настоящего технического решения первый модуль 116 предсказания и второй модуль 118 предсказания оба могут выполнять соответствующие алгоритмы машинного обучения. Тем не менее, важно иметь в виду, что первый модуль 116 предсказания и второй модуль 118 предсказания не обязательно будут выполнять один и тот же алгоритм машинного обучения, хотя это может быть и так. Также важно иметь в виду, что одно из или оба первый модуль 116 предсказания и второй модуль 118 предсказания могут быть выполнены с возможностью выполнять различные процедуры, описанные здесь, без использования алгоритмов машинного обучения.

[104] В некоторых вариантах осуществления настоящего технического решения первый модуль 116 предсказания может выполнять любой подходящий алгоритм машинного обучения с учителем, такой как, например:

- Искусственная нейронная сеть;

- Байесовская статистика;

- Гауссовский процесс регрессии;

- Деревья решений;

- И так далее.

[105] Второй модуль 118 предсказания может выполнять алгоритм сингулярного разложения (SVD). Излишне упоминать, что второй модуль 118 предсказания может выполнять любой другой подходящий алгоритм.

[106] На Фиг. 2 представлено схематичное представление модуля 114 обработки, первый модуль 116 предсказания и второй модуль 118 предсказания, все выполнены в соответствии с неограничивающими вариантами осуществления настоящего технического решения. Фиг. 2 теперь будет использована для описания примера взаимодействия между модулем 114 обработки, первым модулем 116 предсказания и вторым модулем 118 предсказания.

[107] В некоторых вариантах осуществления настоящего технического решения первый модуль 116 предсказания может считаться «главным модулем предсказания» в том смысле, что первый модуль 116 предсказания может создавать список элементов, которые будут рекомендованы, а второй модуль 118 предсказания может считаться «вторичным модулем предсказания» или «предварительным модулем предсказания» в том смысле, что второй модуль 118 предсказания создает конкретные свойства, которые могут быть использованы для обучения и/или в качестве вводных данных для первого модуля 116 предсказания. Например, второй модуль 118 предсказания может создавать одну или несколько не связанных с пользователем свойств 128, которые могут быть использованы для обучения первого модуля 116 предсказания. В некоторых вариантах осуществления настоящего технического решения оба первый модуль 116 предсказания и второй модуль 118 предсказания могут быть использованы для создания конкретных свойств для использования (т.е. в момент предсказания/создания содержимого, которое будет рекомендовано пользователю 102).

[108] Следует отметить, что в тех вариантах осуществления настоящего технического решения, где первый модуль 116 предсказания и второй модуль 118 предсказания выполняют соответствующие алгоритмы машинного обучения, каждый из первого модуля 116 предсказания и второго модуля 118 предсказания необходимо обучать с помощью соответствующих им обучающих выборок данных. В некоторых вариантах осуществления настоящего технического решения модуль 114 обработки использует обучающие выборки для обучения соответствующего одного из первого модуля 116 предсказания или второго модуля 118 предсказания.

[109] Например, когда второй модуль 118 предсказания создает вводные данные для первого модуля 116 предсказания (например, вводные данные для обучения), первый модуль 116 предсказания обучается с помощью другой выборки обучающих событий по сравнению с тем, который был использован для обучения второго модуля 118 предсказания. Например, когда модуль 114 обработки создал конкретные свойства в виде части обучающей выборки для обучения второго модуля 118 предсказания, и когда второй модуль 118 предсказания используется для создания конкретных вводных данных для первого модуля 116 предсказания, свойства, которые используются как часть обучающей выборки для второго модуля 118 предсказания, не используются как часть обучающей выборки для первого модуля 116 предсказания.

[110] Первая база 120 данных выполнена с возможностью сохранять одно связанное с пользователем свойство 126, связанное по меньшей мере с одним пользователем, например, пользователем 102. Примеры связанных с пользователем свойств 126 включают в себя, без установления ограничений:

- Число известных событий в журнале, связанном с пользователем 102.

- Соотношение каждого типа событий в журнале, связанном с пользователем 102, например: 50% событий представляли собой прослушивание треков, 40% событий - пропуск треков; 5% событий - проставление лайков и 5% - проставление дислайков)

- Как долго система вела журнал, связанный с пользователем 102 или, иными словами, время, которое прошло с наиболее раннего события, связанного с пользователем 102

- Последний момент времени, когда пользователь 102 был активен или, иными словами, время, которое прошло с момента последнего события, связанного с пользователем 102

- Предсказанная функция предварительного алгоритма (функция может быть гибридной - в том смысле, что она может быть создана на основе данных, специфичных относительно пользователя, и данных, специфичных относительно элемента)

- Сколько раз пользователь 102 прослушал треки с данного альбома (также объектно-ориентировано)

- Последний раз, когда пользователь 102 слушал какой-либо трек, связанный с исполнителем (также объектно-ориентировано)

[111] Вторая база 122 данных выполнена с возможностью хранить по меньшей мере одно не связанное с пользователем свойство 128, связанное, например, по меньшей мере с одним элементом, с котором по меньшей мере один пользователь, например, пользователь 102, может взаимодействовать с помощью электронного устройства 104. Примеры таких элементов могут включать в себя, без установления ограничений: веб-сайт, песню, которая может быть прослушана или скачана с сетевого ресурса, документ, скачанный с сетевого ресурса, страницу результатов поиска (SERP) и тому подобное.

[112] Примеры не связанных с пользователем свойств 128 включают в себя, без установления ограничений:

- Общую популярность данного объекта (например, в случае если данный объект является музыкальным треком, количество раз, когда музыкальный трек был прослушан и/или скачан всеми пользователями);

- Соотношение лайков/покупок/загрузок/кликов между всеми событиями, связанными с данным объектом;

- Характеристики, присущие объекту - в случае если объект является музыкальным треком - длина трека, жанр трека, аудио-характеристики трека (например, темп трека); другие присущие объекту характеристики включают в себя: цену объекта, мерность объекта, категорию объекта, производителя/изготовителя объекта, длину документа, выраженную в количестве слов или символов; категорию/тему документа; рейтинг фильма в сервисе ранжирования фильмов, и так далее.

[113] Третья база 124 данных выполнена с возможностью хранить указание на один или несколько потенциально рекомендуемых элементов 130 содержимого. Природа выполнения одного или нескольких потенциально рекомендуемых элементов 130 содержимого никак конкретно не ограничена. Некоторые примеры одного или нескольких потенциально рекомендуемых элементов 130 содержимого могут включать в себя, без установления ограничений:

- Новостной элемент;

- Публикацию;

- Веб-ресурс;

- Пост на веб-сайте социального медиа;

- Новый элемент, который будет загружен из магазина приложений;

- Новую песню, которая будет проиграна/загружена с ресурса, размещающего содержимое;

- Новый фильмы, который будет проигран/загружен с ресурса, размещающего содержимое;

- Новый документ, загруженный для просмотра на веб-сайте социального медиа (например, новую фотографию, которая загружена в учетную запись в сетях INSTRAGRAM или FACEBOOK).

[114] Четвертая база 127 данных выполнена с возможностью хранить указание на одно или несколько пользовательских событий 132 (связанных с пользователем 102, а также другими пользователями, которые потенциально присутствуют в системе 100). Естественно, указание на одно или несколько пользовательских событий 132 может храниться в зашифрованной форме. Примеры пользовательских событий 132 включают в себя, без установления ограничений:

- Пользователь 102 прослушивает конкретный трек;

- Пользователь 102 «лайкает» конкретный трек, альбом, связанный с конкретным треком и/или артиста, исполняющего конкретный трек;

- Пользователю 102 предоставляется конкретный ресурс как часть набора рекомендованного содержимого;

- Пользователь 102 нажал на (или иным путем выбрал) конкретный ресурс, который был рекомендован как часть набора рекомендованного содержимого;

- Пользователь 102 приобрел / заказал / скачал конкретный элемент с веб-ресурса.

[115] Важно иметь в виду, что пользовательское событие 132, связанное с пользователем свойство 126 и не связанное с пользователем свойство 128 могут принимать различные формы, и никак конкретно не ограничены. Таким образом, вышепредставленные списки неограничивающих примеров того, как реализованы пользовательское событие 132, связанное с пользователем свойство 126 и не связанное с пользователем свойство 128, представлены только для примера. Таким образом, важно иметь в виду, что возможны многие другие варианты реализации пользовательского события, связанного с пользователем свойства и не связанного с пользователем свойства.

[116] То, как именно получают и сохраняют элементы в первой базе 120 данных, второй базе 122 данных, третьей базе 124 данных и четвертой базе 127 данных, никак конкретно не ограничено. Некоторые примеры вариантов осуществления будут подробно описаны далее.

[117] Например, указания одного или нескольких связанных с пользователем свойств 126 могут быть получены из поисковых журналов пользователя, журналов пользователя, которые связаны с пользовательскими взаимодействиями с конкретными сервисами, браузерных журналов пользователя и тому подобное; и могут быть сохранены в первой базе 120 данных. Информация, представляющая одно или несколько указаний на связанные с пользователем свойства 126, может храниться в зашифрованной форме.

[118] Например, указание на одно или несколько не связанных с пользователем свойств 128 может быть получено от конкретного сервиса, который располагает информацией о различных объектах, доступных на нем и тому подобное; и может быть сохранено во второй базе 122 данных. Информация, которая представляет различные объекты, может быть разделена на различные категории, представляющие различные типы объектов.

[119] Например, указание на одно или несколько пользовательских событий 132 может быть получено от конкретного сервиса, который располагает информацией о различных объектах, доступных на нем, и пользовательских взаимодействиях с различными объектами и тому подобном; и может быть сохранено в третьей базе 124 данных.

[120] Например, указание на один или несколько элементов 130, которые будут рекомендованы, может быть получено от конкретного сервиса, который располагает списком существующих и/или недавно ставших доступными элементов (например, онлайн ресурсы потоковых медиа, онлайн ресурсы скачивания медиа и так далее), от социальных сетей, на которые подписан пользователь 102 (и другие пользователи), новостные ресурсы и так далее.

[121] На Фиг. 3 представлена схематическая иллюстрация того, как может быть создан архив снимков в соответствии с одним неограничивающим вариантом осуществления настоящего технического решения. Иллюстрация на Фиг. 3 показывает, какие связанные с пользователем свойства 126 и какие не связанные с пользователем свойства 128 могут быть использованы для обучения первого модуля 116 предсказания и/или второго модуля 118 предсказания.

[122] Предполагается, что обучение 302 первого модуля 116 предсказания и/или второго модуля 118 предсказания выполняется в момент времени tT. В момент времени до момента времени tT, модуль 114 обработки создает и сохраняет первый архив 304 снимков, второй архив 306 снимков и третий архив 308 снимков. Модуль 114 обработки создает первый архив 304 снимков, второй архив 306 снимков и третий архив 308 снимков в соответствующие первый момент te1 создания архива, второй момент te2 создания архива и третий момент te3 создания архива. Хронологически, третий момент te3 создания архива возникает после второго момента te2 создания архива, который, в свою очередь, возникает после первого момента te1 создания архива.

[123] В соответствии с неограничивающими вариантами осуществления настоящего технического решения каждый из первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков содержит указание на одно или несколько не связанных с пользователем свойств 128, который доступны в соответствующий момент создания первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков.

[124] Важно отметить, что число архивов снимков было выбрано только для целей иллюстрации. Таким образом, специалисту будет понятно, что число архивов снимков, а также частота их создания, могут быть выбраны специалистами в данной области техники, которые обладают преимуществами от ознакомления с описанием настоящего технического решения. Только в качестве примера соответствующий один из первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков может быть создан в течение 24 часов после того как один из первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков был создан. Другими словами, архивы снимков могут быть созданы и сохранены один раз в день. В альтернативных вариантах осуществления настоящего технического решения соответствующий один из первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков может быть создан в течение недели после того как был создан один из первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков. Другими словами, архивы снимков могут создаваться и сохраняться один раз в неделю. Излишне упоминать, что любые другие варианты частоты регулярных или нерегулярных интервалов могут быть использованы для выбора того, когда будет создан один из первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков.

[125] Также в некоторых вариантах осуществления настоящего технического решения, когда следующий один из первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков создается, он заменяет предыдущий один из первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков. В альтернативных вариантах осуществления настоящего технического решения, когда следующий один из первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков создается, он сохраняется в дополнении к предыдущему одному из первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков был создан. В некоторых последних вариантах осуществления настоящего технического решения модуль 114 обработки содержит конкретное число предыдущих из первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков, когда создается следующий из первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков, он заменяет предыдущий из первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков на основе принципа FIFO («first in first out»).

[126] В некоторых вариантах осуществления настоящего технического решения соответствующий один из первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков создается модулем 114 обработки с помощью только не связанных с пользователем свойств 128, которые были доступны в момент создания соответствующего одного из первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков.

[127] В некоторых вариантах осуществления настоящего технического решения соответствующий один из первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков может создаваться, по меньшей мере частично, вторым модулем 118 предсказания. В некоторых вариантах осуществления настоящего технического решения второй модуль 118 предсказания может выполнять алгоритм сингулярного разложения (SVD). Естественно, вторым модулем 118 предсказания может выполняться любой другой алгоритм. Второй модуль 118 предсказания может создавать так называемые скрытые переменные, которые представляют не связанные с пользователем свойства 128, доступные на момент создания соответствующего одного из первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков, и подобные созданные переменные могут быть сохранены в соответствующем одном из первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков.

[128] С другой стороны, в соответствии с вариантами осуществления настоящего технического решения создание связанных с пользователем свойств 126 может быть осуществлено в режиме реального или псевдореального времени. Это создание может быть осуществлено при появлении конкретного инициирующего пользовательского события и/или в момент времени, когда возникает обучение и/или в момент времени, когда создается обучающая выборка. На Фиг. 3 представлено: первое пользовательское событие event1user1, второе пользовательское событие event2user1, третье пользовательское событие event3user2, которые возникли в момент времени до момента времени tT. Следует отметить, что типы, к которым могут относиться пользовательские события event1user1, event2user1 и event3user2, никак конкретно не ограничены. Таким образом, первое пользовательское событие event1user1, второе пользовательское событие event2user1, третье пользовательское событие event3user2, может представлять собой: получение пользователем 102 (или другим пользователем в системе 100) доступа к ресурсу, проставление «лайка» конкретному ресурсу, проставление «дислайка» конкретному ресурсу, пропуск или какой-либо иной отказ от использования конкретного ресурса, сохранение конкретного ресурса и так далее.

[129] Таким образом, для целей иллюстрации предполагается, что события, которые отслеживаются системой 100 представляют собой пользовательское взаимодействие с аудиотреком, который может быть проигран (т.е. прослушан), пропущен, добавлен в плейлист и которому может быть проставлен «лайк» или «дислайк».

[130] Предполагается, что первое пользовательское событие event1user1 связано с первым пользователем (т.е. пользователем 102), который получает доступ к музыкальному сервису (такому как сервис, который позволяет подписчикам скачивать и/или слушать в потоковом режиме различные песни при оплате подписки) и просматривает список песен, доступный для скачивания и/или прослушивания в потоковом режиме. Первое пользовательское событие evenfjuseo может быть тем, что пользователь 102 ставит «лайк» конкретной новой песне, доступной для скачивания и/или прослушивания в потоковом режиме.

[131] Второе пользовательское событие event2user1 может быть тем, что пользователь 102 продолжает просматривать список доступных песен и скачивает и/или прослушивает в потоковом режиме другую конкретную песню.

[132] Третье пользовательское событие event3user2 может быть тем, что пользователь 102 начинает прослушивать еще одну песню, останавливается на середине, проставляет «дислайк» конкретной песне, и перемещается к другой песне из списка.

[133] В соответствии с некоторыми вариантами осуществления настоящего технического решения в момент обучения 302 первый модуль 116 предсказания и/или второй модуль 118 предсказания обучаются с помощью обучающей выборки, обучающая выборка включает в себя обучающие элементы, каждый элемент обучения включает в себя (i) событие, (ii) по меньшей мере одно связанное с пользователем свойство 126, связанно с событием и (iii) по меньшей мере одно не связанное с пользователем свойство 128, связанное с событием.

[134] В соответствии с различными вариантами осуществления настоящего технического решения по меньшей мере одно связанное с пользователем свойство 126 создается в момент возникновения события и/или в момент времени обучения 302. С другой стороны, по меньшей мере одно не связанное с пользователем свойство 128 извлекается из последней версии архива снимков (такого как, например, один из первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков). Отдельным техническим эффектом, характерным, по меньшей мере частично, для использования архивов снимков (например, первого архива 304 снимков, второго архива 306 снимков и третьего архива 308 снимков) может являться возможность экономии вычислительной мощности, требуемой для создания по меньшей мере одного не связанного с пользователем свойства 128 в режиме реального времени (или псевдореального времени). С учетом того, что по меньшей мере не связанное с пользователем свойство 128 может быть связано с продуктами и, таким образом, может быть большее число не связанных с пользователем свойств 128, использование архивов снимков (например, первого архива 304 снимков, второго архива 306 снимков или третьего архива 308 снимков) позволяет вычислять по меньшей мере одно не связанное с пользователем свойство 128 офлайн и сохранять их в архиве снимков (например, в первом архиве 304 снимков, втором архиве 306 снимков или третьем архиве 308 снимков).

[135] Для иллюстрации вышесказанного далее будет описано, как именно создается обучающая выборка с помощью трех событий, показанных на Фиг. 3 - а именно, первое пользовательское событие event1user1, второе пользовательское событие event2user1 и третье пользовательское событие event3user2. Когда выполняется обучение 302, обучающая выборка создается следующим образом.

[136] Для первого пользовательского события event1user1 обучающая выборка включает в себя: указание на событие, связанное с первым пользовательским событием event1user1, по меньшей мере одно связанное с пользователем свойство 126, которое было доступно в момент первого пользовательского события event1user1 (т.е. связанные с пользователем свойства u1te1 в реальном времени) и одно не связанное с пользователем свойство 128, связанное с первым пользовательским событием event1user1, которое извлекается из первого архива 304 снимков.

[137] Для второго пользовательского события event2user1 обучающая выборка включает в себя: указание на событие, связанное с первым пользовательским событием event2user1, по меньшей мере одно связанное с пользователем свойство 126, которое было доступно в момент первого пользовательского события event2user1 (т.е. связанные с пользователем свойства u1te2 в реальном времени) и одно не связанное с пользователем свойство 128, связанное с первым пользовательским событием event2user1, которое извлекается из первого архива 306 снимков.

[138] Для третьего пользовательского события event3user2 обучающая выборка включает в себя: указание на событие, связанное с первым пользовательским событием event3user1, по меньшей мере одно связанное с пользователем свойство 126, которое было доступно в момент первого пользовательского события event3user1 (т.е. связанные с пользователем свойства u2te3 в реальном времени) и одно не связанные с пользователем свойство 128, связанное с первым пользовательским событием event3user1, которое извлекается из первого архива 306 снимков.

[139] С учетом архитектуры, описанной выше, возможно использовать способ создания рекомендаций содержимого для данного пользователя 102 рекомендательной системы 100. На Фиг. 7 представлена блок-схема способа 700, выполняемого модулем 114 обработки сервера 112 рекомендаций.

[140] Этап 702 - получение сервером рекомендаций от электронного устройства, связанного с данным пользователем, запроса на рекомендации содержимого

[141] Способ 700 начинается на этапе 702, где сервер 112 рекомендаций получает от электронного устройства 104, связанного с данным пользователем 102, запрос на рекомендации содержимого. Это представлено на Фиг. 1 в виде сигнала 150, передаваемого от электронного устройства 104 через сеть 110 передачи данных серверу 112 рекомендаций.

[142] Этап 704 может выполняться (i) в ответ на то, что пользователю 102 электронного устройства 104 предоставляется указание на желание пользователя получить рекомендацию содержимого и (ii) без предоставления пользователем 102 электронного устройства 104 указания на желание пользователя получить рекомендацию содержимого.

[143] Этап 704 - в ответ на запрос, создание сервером рекомендаций выборки рекомендаций содержимого для данного пользователя, создание выполняется модулем предсказаний сервера рекомендаций, модуль предсказаний был обучен с помощью обучающей выборки обучающих событий: по меньшей мере одно не связанное с пользователем свойство используется как первый вводный параметр для обучения модуля предсказаний, по меньшей мере одно не связанное с пользователем свойство извлекается из последней версии архива снимков, доступной в момент времени наступления данного обучающего события, последняя версия архива была создана до времени наступления данного обучающего события; по меньшей мере одно специфичное относительно пользователя свойство используется как второй вводный параметр для обучения модуля предсказания, по меньшей мере одно связанное с пользователем свойство, доступное в момент времени, когда происходит данное обучающее событие; по меньшей мере одно связанное с пользователем свойство не доступно в момент создания последней версии архива снимков

[144] Далее, на этапе 704, в ответ на запрос сервер 112 рекомендаций создает набор рекомендаций 152 содержимого для данного пользователя 102. Создание выполняется модулем 114 обработки сервера 112 рекомендаций, причем модуль 114 обработки был обучен с помощью обучающей выборки обучающих событий, таким образом, что для каждого обучающего события из обучающей выборки обучающих событий:

- по меньшей мере одно не связанное с пользователем свойство используется как первый вводный параметр для обучения модуля предсказания, по меньшей мере одно не связанное с пользователем свойство 128 извлекается из последней версии архива 304, 306, 308 снимков, доступной в момент, когда происходит обучающее событие, последняя версия архива 304, 306, 308 снимков была создана до момента времени, когда происходит обучающее событие;

- по меньшей мере одно связанное с пользователем свойство 126 используется как второй вводный параметр для обучения модуля предсказания, по меньшей мере одно связанное с пользователем свойство 126 доступно в момент времени, когда происходит это событие, причем по меньшей мере одно связанное с пользователем свойство 126 было недоступно в момент создания последней версии архива 304, 306, 308 снимков.

[145] Первый модуль 116 предсказания может создавать предсказания того, какие элементы содержимого доступны из одного или более потенциально рекомендуемых элементов 130 содержимого, могут быть интересными пользователю 102. Создание может основываться на алгоритме машинного обучения, обученном в соответствии с неограничивающими вариантами осуществления настоящего технического решения. Создание предсказания (т.е. использование машинно обученного алгоритма) может использовать связанные с пользователем свойства 126, которые были созданы в момент предсказания выполнения, и не связанные с пользователем свойства 128, которые были извлечены из последней версии архива 304, 306, 308 снимков (не связанные с пользователем свойства 128 связаны с элементами, которые хранятся в одном или нескольких потенциально рекомендуемых элементах 130 содержимого).

[146] Этап 706 - передача по меньшей мере подмножества из выборки рекомендаций содержимого электронному устройству

[147] Далее, на этапе 706, сервер 112 рекомендаций передает по меньшей мере подмножество из выборки рекомендаций 152 содержимого электронному устройству Это представлено на Фиг. 1 в виде сигнала 153, передаваемого от сервера 112 рекомендаций через сеть 110 передачи данных электронному устройству 104.

[148] Сервер 112 рекомендаций передает по меньшей мере подмножество (или все) из выбранных одного или нескольких элементов 130 рекомендуемого содержимого. То, как именно будут включаться в подмножество выбранные элементы из одного или нескольких элементов 130 рекомендуемого содержимого, никак конкретно не ограничено. В некоторых вариантах осуществления настоящего технического решения это значение может представлять собой заранее определенное значение, выбранное оператором системы 100. В других вариантах осуществления настоящего технического решения значение может быть выбрано пользователем 102.

[149] В некоторых вариантах осуществления способа 700, способ 700 также включает в себя получение по меньшей мере одного не связанного с пользователем свойства 128.

[150] В некоторых вариантах осуществления способа 700, получение по меньшей мере одного не связанного с пользователем свойства 128 включает в себя создание вторым модулем 118 предсказания по меньшей мере одного не связанного с пользователем свойства 128.

[151] В некоторых вариантах осуществления способа 700, создание по меньшей мере одного не связанного с пользователем свойства 128 выполняется офлайн.

[152] В некоторых вариантах осуществления способа 700, способ 700 также включает в себя создание по меньшей мере одного связанного с пользователем свойства 126.

[153] В некоторых вариантах осуществления способа 700, создание по меньшей мере одного связанного с пользователем свойства 126 выполняется в реальном времени в момент обучения.

[154] В некоторых вариантах осуществления способа 700, обучение модуля предсказаний основано на указании обучающего события и связанного по меньшей мере одного не связанного с пользователем свойства и по меньшей мере одного связанного с пользователем свойства 126.

[155] В некоторых вариантах осуществления способа 700, по меньшей мере одно не связанное с пользователем свойство 128 представляет собой множество не связанных с пользователем свойств, и по меньшей мере одно связанное с пользователем свойство 126 представляет собой множество связанных с пользователем свойств, причем ни одно из множества не связанных с пользователем свойств не является тем же самым, что и любое из множества связанных с пользователем свойств.

[156] В некоторых вариантах осуществления способа 700, способ 700 дополнительно включает в себя создание архива снимков и сохранение последней версии архива снимков в памяти, доступной серверу рекомендаций.

[157] В некоторых вариантах осуществления способа 700 создание последней версии архива 304, 306, 308 снимков выполняется в момент времени после создания предыдущей версии архива 304, 306, 308 снимков, и причем после создания последней версии архива 304, 306, 308 снимков его содержимое используется вместо содержимого предыдущей версии архива 304, 306, 308 снимков.

[158] В некоторых вариантах осуществления способа 700 по меньшей мере одно связанное с пользователем свойство 126 определяется в момент времени после получения сервером 112 рекомендаций запроса на рекомендацию содержимого.

[159] В некоторых вариантах осуществления способа 700 по меньшей мере одно не связанное с пользователем свойство 128 определяется в момент времени до получения сервером 112 рекомендаций запроса на рекомендацию содержимого.

[160] В некоторых вариантах осуществления способа 700 по меньшей мере одно связанное с пользователем свойство 126 не было доступно в момент создания последней версии последней версии архива 304, 306, 308 снимков.

[161] Затем способ 700 завершается.

[162] Со ссылкой на Фиг. 8, в соответствии с другими неограничивающими вариантами осуществления настоящего технического решения модуль 114 обработки может выполнять способ 800 обучения модуля предсказания (таким образом, что один из первого модуля 116 предсказания и второго модуля 118 предсказания). На Фиг. 8 представлена блок-схема способа 800, реализованного в соответствии с неограничивающими вариантами осуществления настоящего технического решения.

[163] Этап 802 - создание обучающей выборки таким образом, что для каждого данного обучающего события из обучающей выборки обучающих событий: по меньшей мере одно не связанное с пользователем свойство используется как первый вводный параметр для обучения модуля предсказаний, по меньшей мере одно не связанное с пользователем свойство извлекается из последней версии архива снимков, доступной в момент времени наступления данного обучающего события, последняя версия архива была создана до времени наступления данного обучающего события; по меньшей мере одно связанное с пользователем свойство используется как второй вводный параметр для обучения модуля предсказания, по меньшей мере одно связанное с пользователем свойство, доступное в момент времени, когда происходит данное обучающее событие

[164] Способ 800 начинается на этапе 800, где сервер 112 рекомендаций создает обучающую выборку таким образом, что для каждого данного обучающего события из обучающей выборки обучающих событий: по меньшей мере одно не связанное с пользователем свойство 128 используется как первый вводный параметр для обучения модуля предсказаний, по меньшей мере одно не связанное с пользователем свойство 128 извлекается из последней версии архива 304, 306, 308 снимков, доступного в момент времени наступления данного обучающего события, последняя версия архива 304, 306,308 снимков была создана до времени наступления данного обучающего события; по меньшей мере одно связанное с пользователем свойство 126 используется как второй вводный параметр для обучения модуля предсказания, по меньшей мере одно связанное с пользователем свойство 126, доступное в момент времени, когда происходит данное обучающее событие.

[165] Этап 804 - использование обучающей выборки для обучения модуля предсказания для создания указания по меньшей мере на один элемент рекомендаций

[166] Способ 800 далее переходит к этапу 804, на котором модуль 114 обработки использует обучающую выборку для обучения модуля предсказания (например, первого модуля 116 предсказания или второго модуля 118 предсказания) для создания указания по меньшей мере на один элемент рекомендаций.

[167] Затем способ 800 завершается.

[168] Со ссылкой на Фиг. 9, в соответствии с неограничивающими вариантами осуществления настоящего технического решения модуль 114 обработки может выполнять способ 900 обучения первого модуля 116 предсказания и второго модуля 118 предсказания, причем первый модуль 116 предсказания и второй модуль 118 предсказания являются частью одного сервера 112 рекомендаций, вывод второго модуля 118 предсказания используется как ввод для первого модуля 116 предсказания.

[169] На Фиг. 9 представлена блок-схема способа 900, реализованного в соответствии с неограничивающими вариантами осуществления настоящего технического решения.

[170] Этап 902 - создание первой обучающей выборки обучающих событий для обучения первого модуля предсказания

[171] Способ 900 начинается на этапе 902, где модуль 114 обработки создает первую обучающую выборку обучающих событий для обучения первого модуля 116 предсказания.

[172] Этап 904 - создание второй обучающей выборки обучающих событий для обучения второго модуля предсказания

[173] Модуль 114 обработки далее, на этапе 904, создает вторую обучающую выборку обучающих событий для обучения второго модуля 118 предсказания.

[174] В соответствии с вариантами осуществления настоящего технического решения каждая из первой выборки обучающих событий и второй выборки обучающих событий включает в себя: соответствующее по меньшей мере одно не связанное с пользователем свойство 128; по меньшей мере одно связанное с пользователем свойство 126; и соответствующее по меньшей мере одно не связанное с пользователем свойство 128 и по меньшей мере одно связанное с пользователем свойство 126 первой обучающей выборки отличаются от этих же свойств во второй обучающей выборке.

[175] Затем способ 900 завершается.

[176] Некоторые варианты осуществления настоящего технического решения могут приводить к техническому эффекту в виде модуля предсказания, который обучен на обучающей выборке, которая включает в себя свойства, которые доступны обучающему событию (т.е. не включая в себя свойства, появляющиеся после), тем самым потенциально улучшается качество обучения и/или предсказания, например, путем уменьшения проблем, присущих известному уровню техники. Некоторые варианты осуществления настоящего технического решения могут приводить к техническому эффекту в виде двухэтапной системы предсказания, которая обладает первым модулем и вторым модулем, обученными на различных обучающих выборках и, следовательно, снижая проблемы «искаженного чрезмерного доверия», присущие известному уровню техники. Другие варианты осуществления настоящего технического решения могут приводить к техническому эффекту в виде системы предсказания, которая использует архивы снимков, тем самым потенциально снижая вычислительную мощность, требуемую для вычислений конкретных свойств в реальном времени (или псевдореальном времени). Некоторые другие варианты осуществления настоящего технического решения могут приводить к техническому эффекту в виде возможности вычислять конкретные свойства офлайн и хранить их для дальнейшего использования, тем самым снижая вычислительную мощностью, которая необходима для вычисления конкретных свойств в момент обучения или в момент работы путем извлечения конкретных свойств из архива снимков вместо вычисления их в реальном времени или псевдореальном времени.

[177] Важно иметь в виду, что варианты осуществления настоящего технического решения могут быть выполнены с проявлением и других технических результатов.

[178] Модификации и улучшения вышеописанных вариантов осуществления настоящего технического решения будут ясны специалистам в данной области техники. Предшествующее описание представлено только в качестве примера и не несет никаких ограничений. Таким образом, объем настоящего технического решения ограничен только объемом прилагаемой формулы изобретения.

[179] Варианты осуществления настоящего технического решения можно изложить следующим образом, в виде пронумерованных пунктов:

[180] ПУНКТ 1. Способ (700) создания рекомендаций содержимого для данного пользователя (102) системы (100) рекомендаций, способ (700) выполняется на сервере (112) рекомендаций, способ (700) включает в себя:

[181] получение (702) сервером (112) рекомендаций от электронного устройства (104), связанного с данным пользователем (102), запроса (150) на рекомендации содержимого;

[182] в ответ на запрос, создание (704) сервером (112) рекомендаций выборки рекомендаций (152) содержимого для данного пользователя (102), создание (704) выполняется модулем (116) предсказаний сервера (112) рекомендаций, модуль (116) предсказаний был обучен с помощью обучающей выборки обучающих событий так, что для каждого данного обучающего события из обучающей выборки обучающих событий:

[183] по меньшей мере одно не связанное с пользователем свойство (128) используется как первый вводный параметр для обучения модуля предсказаний, по меньшей мере одно не связанное с пользователем свойство (128) извлекается из последней версии архива (304, 306, 308) снимков, доступного в момент времени наступления данного обучающего события, последняя версия архива (304, 306, 308) снимков была создана до времени наступления данного обучающего события;

[184] по меньшей мере одно связанное с пользователем свойство (126) используется как второй вводный параметр для обучения модуля предсказания, по меньшей мере одно связанное с пользователем свойство (126), доступное в момент времени, когда происходит данное обучающее событие;

[185] передачу (706) по меньшей мере подмножества из выборки рекомендаций (152) содержимого электронному устройству (104).

[186] ПУНКТ 2. Способ по п. 1, дополнительно включающий в себя получение по меньшей мере одного не связанного с пользователем свойства (128).

[187] ПУНКТ 3. Способ по п. 2, в котором получение по меньшей мере одного не связанного с пользователем свойства (128) включает в себя создание вторым модулем (118) предсказания по меньшей мере одного не связанного с пользователем свойства (128).

[188] ПУНКТ 4. Способ по п. 3, в котором создание по меньшей мере одного не связанного с пользователем свойства (128) выполняется офлайн.

[189] ПУНКТ 5. Способ по п. 1, дополнительно включающий в себя создание по меньшей мере одного связанного с пользователем свойства (126).

[190] ПУНКТ 6. Способ по п. 5, в котором создание по меньшей мере одного связанного с пользователем свойства (126) выполняется в реальном времени в момент обучения.

[191] ПУНКТ 7. Способ по п. 1, в котором обучение модуля (116) предсказаний основано на указании обучающего события и связанного по меньшей мере одного не связанного с пользователем свойства (128) и по меньшей мере одного связанного с пользователем свойства (126).

[192] ПУНКТ 8. Способ по п. 1, в котором по меньшей мере одно не связанное с пользователем свойство (128) представляет собой множество не связанных с пользователем свойств, и по меньшей мере одно связанное с пользователем свойство (126) представляет собой множество связанных с пользователем свойств, причем ни одно из множества не связанных с пользователем свойств не является тем же самым, что и любое из множества связанных с пользователем свойств.

[193] ПУНКТ 9. Способ по п. 1, дополнительно включающий в себя создание последней версии архива (302, 304, 306) снимков и сохранение последней версии архива (302, 304, 306) снимков в памяти, доступной серверу (112) рекомендаций.

[194] ПУНКТ 10. Способ по п. 9, в котором создание последней версии архива снимков выполняется в момент времени после создания предыдущей версии архива снимков, и причем после создания последней версии архива снимков его содержимое используется вместо содержимого предыдущей версии архива снимков.

[195] ПУНКТ 11 Способ по п. 1, в котором по меньшей мере одно связанное с пользователем свойство (126) определяется в момент времени после получения сервером (112) рекомендаций запроса на рекомендацию содержимого.

[196] ПУНКТ 12. Способ по п. 1, в котором по меньшей мере одно не связанное с пользователем свойство (128) определяется в момент времени до получения сервером (112) рекомендаций запроса на рекомендацию содержимого.

[197] ПУНКТ 13. Способ по п. 1, в котором по меньшей мере одно связанное с пользователем свойство (126) не было доступно в момент создания последней версией архива (304, 306, 308) снимков.

[198] ПУНКТ 14. Способ по п. 1, в котором указанное получение (702) выполняется (i) в ответ на то, что пользователем (102) электронного устройства (104) предоставляется указание на желание пользователя получить рекомендацию содержимого и (ii) без предоставления пользователем (102) электронного устройства (104) указания на желание пользователя получить рекомендацию содержимого.

[199] ПУНКТ 15. Способ (800) обучения модуля (116, 118) предсказания, модуль (116, 118) предсказания является частью сервера (112) рекомендаций, способ (800) включает в себя:

[200] создание (802) обучающей выборки обучающих событий таким образом, чтобы для каждого обучающего события из обучающей выборки обучающих событий:

[201] по меньшей мере одно не связанное с пользователем свойство (128) используется как первый вводный параметр для обучения модуля предсказаний, по меньшей мере одно не связанное с пользователем свойство (128) извлекается из последней версии архива (302, 304, 306) снимков, доступного в момент времени наступления данного обучающего события, последняя версия архива (302, 304, 306) снимков была создана до времени наступления данного обучающего события;

[202] по меньшей мере одно связанное с пользователем свойство (126) используется как второй вводный параметр для обучения модуля предсказания, по меньшей мере одно связанное с пользователем свойство (126), доступно в момент времени, когда происходит данное обучающее событие;

[203] использование (804) обучающей выборки для обучения модуля (116, 118) предсказания для создания указания по меньшей мере на один элемент рекомендаций

[204] ПУНКТ 16. Способ по п. 15, в котором по меньшей мере одно связанное с пользователем свойство (126) не было недоступно в момент создания последней версией архива (302, 304, 306) снимков.

[205] ПУНКТ 17. Способ по п. 15, в котором по меньшей мере одно связанное с пользователем свойство (126) создается в момент использования обучающей выборки.

[206] ПУНКТ 18. Способ по п. 15, в котором по меньшей мере одно связанное с пользователем свойство (126) создается вторым модулем (118) предсказания сервера (112) рекомендаций.

[207] ПУНКТ 19. Способ (900) обучения первого модуля (116) предсказания и второго модуля (118) предсказания, причем первый модуль (116) предсказания и второй модуль (118) предсказания являются частью одного сервера (112) рекомендаций, вывод второго модуля (118) предсказания используется как ввод для первого модуля (116) предсказания, способ (900) включает в себя:

[208] создание (902) первой обучающей выборки обучающих событий для обучения первого модуля (116) предсказания,

[209] создание (904) второй обучающей выборки обучающих событий для обучения второго модуля (118) предсказания,

[210] каждая из первой выборки обучающих событий и второй выборки обучающих событий включает в себя:

[211] соответствующее по меньшей мере одно не связанное с пользователем свойство (128);

[212] соответствующее по меньшей мере одно связанное с пользователем свойство (126);

[213] и соответствующее по меньшей мере одно не связанное с пользователем свойство (128) и по меньшей мере одно связанное с пользователем свойство (126) первой обучающей выборки отличаются от этих же свойств во второй обучающей выборке.

[214] ПУНКТ 20. Сервер (112), сервер (112) включает в себя:

[215] модуль (114) обработки, выполненный с возможностью осуществлять:

[216] получение от электронного устройства (104), связанного с данным пользователем (102), запроса (150) на рекомендации содержимого;

[217] в ответ на запрос, создание выборки рекомендаций (152) содержимого для данного пользователя (102), создание (704) выполняется модулем (116) предсказаний сервера (112) рекомендаций, модуль (116) предсказаний был обучен с помощью обучающей выборки обучающих событий так, что для каждого данного обучающего события из обучающей выборки обучающих событий:

[218] по меньшей мере одно не связанное с пользователем свойство (128) используется как первый вводный параметр для обучения модуля предсказаний, по меньшей мере одно не связанное с пользователем свойство (128) извлекается из последней версии архива (304, 306, 308) снимков, доступного в момент времени наступления данного обучающего события, последняя версия архива (304, 306, 308) снимков была создана до времени наступления данного обучающего события;

[219] по меньшей мере одно связанное с пользователем свойство (126) используется как второй вводный параметр для обучения модуля предсказания, по меньшей мере одно связанное с пользователем свойство (126) доступно в момент времени, когда происходит это событие, причем по меньшей мере одно связанное с пользователем свойство (126) было недоступно в момент создания последней версии архива (304, 306, 308) снимков.

[220] передачу (706) по меньшей мере подмножества из выборки рекомендаций (152) содержимого электронному устройству (104).

[221] ПУНКТ 21. Сервер по п. 20, модуль (114) обработки выполнен с возможностью осуществлять получение по меньшей мере одного не связанного с пользователем свойства (128).

[222] ПУНКТ 22. Сервер по п. 21, в котором для получения по меньшей мере одного связанного с пользователем свойства (128), модуль (114) обработки выполнен с возможностью инициировать создание вторым модулем (118) предсказания по меньшей мере одного не связанного с пользователем свойства (128).

[223] ПУНКТ 23. Сервер по п. 22, в котором для создания по меньшей мере одного не связанного с пользователем свойства (128), модуль (114) обработки выполнен с возможностью создания по меньшей мере одного не связанного с пользователем свойства (128) офлайн.

[224] ПУНКТ 24. Сервер по п. 20, модуль (114) обработки выполнен с возможностью осуществлять создание по меньшей мере одного связанного с пользователем свойства (126).

[225] ПУНКТ 25. Сервер по п. 24, в котором для создания по меньшей мере одного связанного с пользователем свойства (126), модуль (114) обработки выполнен с возможностью выполнять создание в реальном времени в момент обучения.

[226] ПУНКТ 26. Сервер по п. 20, в котором обучение модуля (114) предсказаний основано на указании обучающего события и связанного по меньшей мере одного не связанного с пользователем свойства (128) и по меньшей мере одного связанного с пользователем свойства (126).

[227] ПУНКТ 27. Сервер по п. 20, в котором по меньшей мере одно не связанное с пользователем свойство (128) представляет собой множество не связанных с пользователем свойств, и по меньшей мере одно связанное с пользователем свойство (126) представляет собой множество связанных с пользователем свойств, причем ни одно из множества не связанных с пользователем свойств не является тем же самым, что и любое из множества связанных с пользователем свойств.

[228] ПУНКТ 28. Сервер по п. 20, в котором модуль (114) обработки дополнительно выполнен с возможностью осуществлять создание последней версии архива (302, 304, 306) снимков и сохранение последней версии архива (302, 304, 306) снимков в памяти, доступной серверу (112) рекомендаций.

[229] ПУНКТ 29. Сервер по п. 28, в котором для создания последней версии архива снимков, модуль (114) обработки выполнен с возможностью осуществлять создание последней версии архива снимков в момент времени после создания предыдущей версии архива снимков, и причем после создания последней версии архива снимков его содержимое используется вместо содержимого предыдущей версии архива снимков.

[230] ПУНКТ 30. Сервер по п. 20, в котором по меньшей мере одно связанное с пользователем свойство (126) определяется в момент времени после получения сервером (112) рекомендаций запроса на рекомендацию содержимого.

[231] ПУНКТ 31. Сервер по п. 20, в котором по меньшей мере одно не связанное с пользователем свойство (128) определяется в момент времени до получения сервером (112) рекомендаций запроса на рекомендацию содержимого.

[232] ПУНКТ 32. Сервер по п. 20, в котором по меньшей мере одно связанное с пользователем свойство (126) не было доступно в момент создания последней версией архива (302, 304, 306) снимков.

[233] ПУНКТ 33. Сервер по п. 20, в котором получение (702) выполняется (i) в ответ на то, что пользователем (102) электронного устройства (104) предоставляется указание на желание пользователя получить рекомендацию содержимого и (ii) без предоставления пользователем (102) электронного устройства (104) указания на желание пользователя получить рекомендацию содержимого.

1. Способ создания рекомендаций содержимого для данного пользователя системы рекомендаций, способ выполняется на сервере рекомендаций, способ включает в себя:

получение сервером рекомендаций от электронного устройства, связанного с данным пользователем, запроса на рекомендации содержимого;

в ответ на запрос, создание сервером рекомендаций выборки рекомендаций содержимого для данного пользователя, создание выполняется модулем предсказаний сервера рекомендаций, модуль предсказаний был обучен с помощью обучающей выборки обучающих событий так, что для каждого данного обучающего события из обучающей выборки обучающих событий:

по меньшей мере одно не связанное с пользователем свойство используется как первый вводный параметр для обучения модуля предсказания, по меньшей мере одно не связанное с пользователем свойство извлекается из последней версии архива снимков, доступной в момент, когда происходит обучающее событие, последняя версия архива снимков была создана до момента времени, когда происходит обучающее событие;

по меньшей мере одно связанное с пользователем свойство используется как второй вводный параметр для обучения модуля предсказания, по меньшей мере одно связанное с пользователем свойство, доступное в момент времени, когда происходит данное обучающее событие;

передача по меньшей мере подмножества из выборки рекомендаций содержимого электронному устройству.

2. Способ по п. 1, в котором дополнительно выполняют получение по меньшей мере одного не связанного с пользователем свойства.

3. Способ по п. 2, в котором при получении по меньшей мере одного не связанного с пользователем свойства выполняют создание вторым модулем предсказания по меньшей мере одного не связанного с пользователем свойства.

4. Способ по п. 3, в котором создание по меньшей мере одного не связанного с пользователем свойства выполняют офлайн.

5. Способ по п. 1, в котором дополнительно выполняют создание по меньшей мере одного связанного с пользователем свойства.

6. Способ по п. 5, в котором создание по меньшей мере одного связанного с пользователем свойства выполняют в реальном времени в момент обучения.

7. Способ по п. 1, в котором обучение модуля предсказаний основано на указании обучающего события и связанного по меньшей мере одного не связанного с пользователем свойства и по меньшей мере одного связанного с пользователем свойства.

8. Способ по п. 1, в котором по меньшей мере одно не связанное с пользователем свойство представляет собой множество не связанных с пользователем свойств, и по меньшей мере одно связанное с пользователем свойство представляет собой множество связанных с пользователем свойств, причем ни одно из множества не связанных с пользователем свойств не является тем же самым, что и любое из множества связанных с пользователем свойств.

9. Способ по п. 1, в котором дополнительно выполняют создание последней версии архива снимков и сохранение последней версии архива снимков в памяти, доступной серверу рекомендаций.

10. Способ по п. 9, в котором создание последней версии архива снимков выполняют в момент времени после создания предыдущей версии архива снимков, и причем после создания последней версии архива снимков его содержимое используют вместо содержимого предыдущей версии архива снимков.

11. Способ по п. 1, в котором по меньшей мере одно связанное с пользователем свойство определяется в момент времени после получения сервером рекомендаций запроса на рекомендацию содержимого.

12. Способ по п. 1, в котором по меньшей мере одно не связанное с пользователем свойство определяют в момент времени до получения сервером рекомендаций запроса на рекомендацию содержимого.

13. Способ по п. 1, в котором по меньшей мере одно связанное с пользователем свойство не было доступно в момент создания последней версией архива снимков.

14. Способ по п. 1, в котором указанное получение выполняют в ответ на то, что пользователем электронного устройства предоставляется указание на желание пользователя получить рекомендацию содержимого и без предоставления пользователем электронного устройства указания на желание пользователя получить рекомендацию содержимого.

15. Способ обучения модуля предсказания, модуль предсказания является частью сервера рекомендаций, способ включает в себя:

создание обучающей выборки обучающих событий таким образом, что для каждого обучающего события из обучающей выборки обучающих событий:

по меньшей мере одно не связанное с пользователем свойство используется как первый вводный параметр для обучения модуля предсказания, по меньшей мере одно не связанное с пользователем свойство извлекается из последней версии архива снимков, доступной в момент, когда происходит обучающее событие, последняя версия архива снимков была создана до момента времени, когда происходит обучающее событие;

по меньшей мере одно связанное с пользователем свойство используется как второй вводный параметр для обучения модуля предсказания, по меньшей мере одно связанное с пользователем свойство, доступное в момент времени, когда происходит данное обучающее событие;

использование обучающей выборки для обучения модуля предсказания для создания указания по меньшей мере на один элемент рекомендаций.

16. Способ по п. 15, в котором по меньшей мере одно связанное с пользователем свойство не было недоступно в момент создания последней версией архива снимков.

17. Способ по п. 15, в котором по меньшей мере одно связанное с пользователем свойство создают в момент использования обучающей выборки.

18. Способ по п. 15, в котором по меньшей мере одно связанное с пользователем свойство создают вторым модулем предсказания сервера рекомендаций.

19. Способ обучения первого модуля предсказания и второго модуля предсказания, причем первый модуль предсказания и второй модуль предсказания являются частью одного сервера рекомендаций, вывод второго модуля предсказания используется как ввод для первого модуля предсказания, способ включает в себя:

создание первой обучающей выборки обучающих событий для обучения первого модуля предсказания,

создание второй обучающей выборки обучающих событий для обучения второго модуля предсказания,

каждая из первой выборки обучающих событий и второй выборки обучающих событий включает в себя:

соответствующее по меньшей мере одно не связанное с пользователем свойство;

по меньшей мере одно связанное с пользователем свойство; соответствующее по меньшей мере одно не связанное с пользователем свойство и по меньшей мере одно связанное с пользователем свойство первой обучающей выборки отличаются от этих же свойств во второй обучающей выборке.

20. Сервер, сервер включает в себя:

модуль обработки, выполненный с возможностью:

получения от электронного устройства, связанного с данным пользователем, запроса на рекомендации содержимого;

в ответ на запрос создания выборки рекомендаций содержимого для данного пользователя создание выполняется модулем предсказаний сервера рекомендаций, модуль предсказаний был обучен с помощью обучающей выборки обучающих событий так, что для каждого данного обучающего события из обучающей выборки обучающих событий:

по меньшей мере одно не связанное с пользователем свойство используется как первый вводный параметр для обучения модуля предсказания, по меньшей мере одно не связанное с пользователем свойство извлекается из последней версии архива снимков, доступной в момент, когда происходит обучающее событие, последняя версия архива снимков была создана до момента времени, когда происходит обучающее событие;

по меньшей мере одно связанное с пользователем свойство используется как второй вводный параметр для обучения модуля предсказания, по меньшей мере одно связанное с пользователем свойство доступно в момент времени, когда происходит это событие, причем по меньшей мере одно специфичное относительно пользователя свойство было недоступно в момент создания последней версии архива снимков;

передача по меньшей мере подмножества из выборки рекомендаций содержимого электронному устройству.

21. Сервер по п. 20, в котором модуль обработки выполнен с возможностью осуществлять получение по меньшей мере одного не связанного с пользователем свойства.

22. Сервер по п. 21, в котором для получения по меньшей мере одного не связанного с пользователем свойства модуль обработки выполнен с возможностью инициировать создание вторым модулем предсказания по меньшей мере одного не связанного с пользователем свойства.

23. Сервер по п. 22, в котором для создания по меньшей мере одного связанного с пользователем свойства модуль обработки выполнен с возможностью создания по меньшей мере одного не связанного с пользователем свойства офлайн.

24. Сервер по п. 20, в котором модуль обработки выполнен с дополнительной возможностью осуществлять создание по меньшей мере одного связанного с пользователем свойства.

25. Сервер по п. 24, в котором для создания по меньшей мере одного связанного с пользователем свойства модуль обработки выполнен с возможностью выполнять создание в реальном времени в момент обучения.

26. Сервер по п. 20, в котором модуль обработки дополнительно выполнен с возможностью осуществлять создание последней версии архива снимков и сохранение последней версии архива снимков в памяти, доступной серверу рекомендаций.

27. Сервер по п. 26, в котором для создания последней версии архива снимков модуль обработки выполнен с возможностью осуществлять создание последней версии архива снимков в момент времени после создания предыдущей версии архива снимков, и причем после создания последней версии архива снимков его содержимое используется вместо содержимого предыдущей версии архива снимков.



 

Похожие патенты:

Изобретение относится к средствам предоставления пользователю контента. Технический результат заключается в повышении вероятности получения всех частей запрошенного контента.

Изобретение относится к способу и устройству для выбора видеокандидата. Технический результат заключается в повышении эффективности определения видеокандидатов, близких к дублированию видео.

Изобретение относится к средствам предоставления контекстуальной информации, относящейся к документу. Технический результат заключается в расширении арсенала технических средств.

Изобретение относится к средствам создания рекомендованного подмножества элементов для пользователя электронного устройства. Технический результат заключается в повышении релевантности результатов ранжированного списка результатов поиска.

Изобретение относится к области связи, в частности к способу и устройству для управления возвратом к ранее просмотренной странице. Технический результат заключается в расширении арсенала технических средств для управления возвратом к ранее просмотренной странице.

Группа изобретений относится к технологиям обмена данными в социальных сетях с помощью технологии клиент-сервер. Техническим результатом является создание самонастраивающейся интерактивной системы обмена комментариями между пользователями на веб-страницах с использованием технологии клиент-сервер, которая позволила бы осуществлять оценку доверия комментариям пользователей посредством рейтинга пользователя и автоматическую блокировку пользователя с низким рейтингом.

Изобретение относится к области коммуникационных технологий. Техническим результатом является принудительная доставка информации в приложение.

Изобретение относится к средствам добавления подключаемого расширения в приложение списка контактов. Технический результат заключается в обеспечении возможности импорта подключаемого расширения стороннего приложения.

Изобретение относится к системе информационной поддержки разработчика программного обеспечения для микроконтроллеров. Технический результат заключается в автоматизации разработки программного обеспечения для микроконтроллеров.

Группа изобретений относится к технологиям автоматической генерации задач машиной состояний. Техническим результатом является обеспечение автоматической генерации задач для определения состояний.

Изобретение относится к области компьютерной техники и сетевым технологиям и, в частности, к системам рекомендаций содержимого сетевых ресурсов. Технический результат заключается в повышении эффективности рекомендаций содержимого, доступного на сетевых ресурсах. Технический результат достигается за счет получения от электронного устройства запроса на рекомендацию содержимого, рекомендация содержимого включает в себя рекомендуемый элемент содержимого, выполнения модуля первого алгоритма машинного обучения для определения подмножества рекомендуемых источников содержимого из множества возможных источников содержимого, определения подмножества рекомендуемых источников содержимого, включая получение указания на предыдущие взаимодействия пользователей по меньшей мере с одним из: системой рекомендаций и по меньшей мере некоторыми из множества сетевых ресурсов, на основе предыдущих взаимодействий пользователя, определения первого подмножества связанных с пользователем источников содержимого, на основе обученной формулы алгоритма машинного обучения других взаимодействий пользователя с некоторыми другими из множества сетевых ресурсов, и анализа подмножества рекомендуемых источников содержимого для выбора множества потенциально рекомендуемых элементов содержимого. 2 н. и 20 з.п. ф-лы, 5 ил.

Изобретение относится к способу и системе создания модели прогнозирования и определения параметра точности обученной модели прогнозирования в виде дерева принятия решений. Технический результат заключается в повышении точности модели прогнозирования. Способ включает в себя доступ к обученной модели прогнозирования в виде дерева принятия решений, созданной по меньшей мере частично на основе набора обучающих объектов; создание подгруппы случайных параметров интереса; связывание подгруппы случайных параметров интереса с листом дерева принятия решений; определение параметра точности листа на основе параметров интереса, связанных с данным листом и подгруппы случайных параметров интереса данного листа; определение параметра точности обученной модели прогнозирования в виде дерева принятия решений на основе определенного параметра точности листа. 7 н. и 34 з.п. ф-лы, 11 ил.

Изобретение относится к системам и способам обработки поисковых запросов, введенных в сервис поисковой системы. Техническим результатом является уменьшение вычислительных ресурсов за счет того, что разрешается проблема комбинаторного взрыва при обработке длинных поисковых запросов. В способе обработки поисковых запросов получают множество поисковых запросов, введенных в поисковую систему. Обрабатывают каждый поисковый запрос, причем обработка включает получение набора лексем и набора синонимов, вычисление набора нормализованных запросов на основе поисковых запросов и лексем, вычисление набора обобщенных запросов на основе нормализованных запросов и синонимов и компиляцию индексной структуры на основе набора логических деревьев. Каждый нормализованный запрос связан с соответствующим обобщенным запросом. Компиляция индексной структуры включает вычисление набора логических деревьев, причем каждое логическое дерево представляет собой обобщающий запрос, связанный с обобщенным запросом. 2 н. и 20 з.п. ф-лы, 9 ил.

Изобретение относится к области поисковых систем в целом и конкретно к системе и способу создания уточненной поисковой выдачи для поискового запроса. Техническим результатом является повышение релевантности результатов поиска. В способе создания уточненной страницы результатов поиска (SERP) для поискового запроса, полученного от пользователя, создается набор результатов поиска и отображается пользователю на SERP. На основе взаимодействия с элементом результата поиска на SERP создается параметр пользовательского интереса для элемента результата поиска, на основе суммирования первого и второго весов элемента результата поиска в первом и втором результатах поиска, соответственно. Создается второй поисковый запрос, который включает в себя исходный поисковый запрос, элемент результата поиска, и первый параметр пользовательского интереса в качестве переформулировки начального поискового запроса, указывающий значимость элемента результата поиска. Результаты поиска, созданные в ответ на второй поисковый запрос, отображаются пользователю в виде уточненной SERP. 2 н. и 22 з.п. ф-лы, 5 ил.

Изобретение относится к области поисковых систем в целом и конкретно к системе и устройству ранжирования поисковых результатов и создания страницы результатов поиска (SERP) для поискового запроса. Техническим результатом является расширение арсенала технических средств создания страницы результатов поиска. В способе создания страницы результатов поиска в ответ на получение поискового запроса создается ранжированное множество результатов поиска, включающее в себя результат общего поиска и результат вертикального поиска. Причем множество результатов поиска ранжировано на основе параметра полезности. Параметр полезности указывает на оптимальную позицию результата вертикального поиска в ранжированном множестве поисковых результатов на основе его полезности по отношению к запросу. Параметр полезности предварительно определяется на основе обучающей выборки пользовательских данных о прошлых взаимодействиях с результатом вертикального поиска, когда его исходный ранг был модифицирован таким образом, что результат вертикального поиска оказался ранжирован случайным образом и расположен на предыдущей SERP на случайной позиции. 3 н. и 31 з.п. ф-лы, 4 ил.

Изобретение относится к области создания списка поисковых предложений. Технический результат – обеспечение возможности создания списка поисковых предложений. Способ создания списка поисковых предложений, выполняемый на сервере и включающий в себя получение по меньшей мере части поискового запроса от пользователя; создание ранжированного множества поисковых предложений для части поискового запроса; определение по меньшей мере частично на основе параметра связи, связано ли каждое поисковое предложение с соответствующим поисковым источником, причем параметр связи определяет степень релевантности каждого поискового предложения для каждого соответствующего поискового источника; в ответ на определение того, что поисковое предложение связано с соответствующим поисковым источником, создание группы предложений для каждого соответствующего поискового источника, причем каждая группа предложений предназначена для представления соответствующей подгруппы множества поисковых предложений, и соответствующая подгруппа включает в себя только поисковые предложения, связанные с соответствующим поисковым источником; и создание списка поисковых предложений, в котором каждая соответствующая подгруппа сгруппирована в каждой соответствующей группе предложений, причем каждая группа предложений отображается отдельно. 2 н. и 24 з.п. ф-лы, 4 ил.

Изобретение относится к области компьютерных технологий. Технический результат заключается в оптимизации качества ранжирования. Технический результат достигается за счет извлечения обучающей выборки, включающей в себя множество обучающих объектов, причем каждому обучающему объекту в обучающей выборке назначен ярлык, и каждый обучающий объект связан с вектором характеристик объекта, определения весового параметра для каждого обучающего объекта, причем весовой параметр указывает на качество ярлыка, которое представляет собой уровень достоверности назначения ярлыка обучающему объекту, определения параметра релевантности, выполненное на основе переназначения сервером параметра релевантности, относительно других ярлыков в обучающей выборке, обучения средства ранжирования с использованием множества обучающих объектов из обучающей выборки, определенного параметра релевантности для каждого обучающего объекта из множества обучающих объектов обучающей выборки и определенного весового параметра для каждого объекта из множества обучающих объектов обучающей выборки, ранжировать новый документ. 2 н. и 15 з.п. ф-лы, 4 ил.

Изобретение относится к серверам и способам создания страницы результатов поиска (SERP). Технический результат заключается в повышении релевантности результатов поиска. В способе выполняют получение от электронного устройства поискового запроса, создание списка результатов поиска, включающего первый и второй результаты поиска, ранжирование списка результатов поиска так, что первый и второй результаты поиска находятся на первой и второй позициях SERP соответственно, прогнозирование первого параметра интереса для первого результата поиска на основе первого алгоритма машинного обучения, прогнозирование второго параметра интереса для второго результата поиска на основе второго алгоритма машинного обучения, отличного от первого алгоритма, прогнозирование параметра полезности для первого результата поиска на основе третьего алгоритма машинного обучения и первого и второго параметров интереса, корректировку позиции первого результата поиска в ранжированном списке результатов поиска на основе спрогнозированного параметра полезности так, что первый результат поиска оказывается на скорректированной позиции в ранжированном списке результатов поиска, создание SERP, включающей первый и второй результаты поиска, причем первый результат поиска расположен на скорректированной позиции SERP. 4 н. и 30 з.п. ф-лы, 11 ил.

Изобретение относится к технологиям создания изображения модели для виртуальной примерки. Техническим результатом является повышение точности извлечения головного портрета, улучшение синтезирования головного портрета пользователя с телом. Предложен способ создания модели. Способ содержит этап, на котором извлекают головной портрет в эталонном изображении, где указанный головной портрет представляет собой изображение пользователя в анфас. Далее, согласно способу, осуществляют синтезирование головного портрета в указанном эталонном изображении с областью тела модели в изображении модели для получения тем самым полного портрета. При этом этап извлечения головного портрета в эталонном изображении содержит обнаружение головного портрета в эталонном изображении для определения диаметра головного портрета и центрального положения головного портрета. 2 н. и 6 з.п. ф-лы, 9 ил.

Изобретение относится к технологиям сетевой связи. Технический результат заключается в повышении безопасности передачи данных. Способ содержит: прием запроса состояния подключаемого модуля от терминала; получение состояния выполнения подключаемого модуля согласно запросу состояния подключаемого модуля; отправку состояния выполнения подключаемого модуля на терминал для отображения состояния выполнения подключаемого модуля для пользователя, получение идентификатора подключаемого модуля, содержащегося в запросе состояния подключаемого модуля; получение идентификатора процесса, соответствующего идентификатору подключаемого модуля, из заданного файла конфигурации; и получение состояния выполнения подключаемого модуля согласно идентификатору процесса. 6 н. и 11 з.п. ф-лы, 18 ил.
Наверх