Способ обучения алгоритма машинного обучения формированию прогнозируемого совместного векторного представления для цифрового элемента

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

 

Область техники, к которой относится изобретение

[001] Настоящая технология в целом относится к компьютерным рекомендательным системам и, в частности, к способам и системам для обучения алгоритма машинного обучения (MLA, Machine Learning Algorithm) формированию прогнозируемого совместного векторного представления для цифрового элемента.

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

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

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

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

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

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

[007] В качестве другого примера можно привести рекомендательную систему Yandex.Zen™. Рекомендательная система Yandex.Zen рекомендует цифровой контент (статьи, новости и видеоматериалы) в персонализированной ленте на главной странице браузера Yandex.Browser. Когда пользователь просматривает рекомендуемый контент сервера Yandex.Zen, сервер явно (запрашивая, желает ли пользователь, чтобы больше такого контента отображалось в его ленте) или неявно (учитывая действия пользователя с контентом) получает информацию обратной связи. С использованием информации обратной связи от пользователя сервер Yandex.Zen непрерывно совершенствует представление пользователю рекомендаций контента.

Раскрытие изобретения

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

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

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

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

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

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

[0014] Согласно первому аспекту настоящей технологии реализован способ обучения алгоритма MLA формированию прогнозируемого совместного векторного представления для цифрового элемента. Цифровой элемент представляет собой потенциальный рекомендуемый элемент в системе рекомендации контента. Система рекомендации контента способна рекомендовать элементы пользователям системы рекомендации контента. Система рекомендации контента размещена на сервере. Способ выполняется сервером. Способ включает в себя формирование сервером обучающего набора для обучающего элемента. Формирование включает в себя формирование сервером, использующим другой алгоритм MLA, целевого совместного векторного представления для обучающего элемента на основе предыдущих пользовательских взаимодействий между пользователями системы рекомендации контента и обучающим элементом. При этом предыдущих пользовательских взаимодействий между пользователями и обучающим элементом достаточно для формирования целевого совместного векторного представления. Обучающий набор содержит целевое совместное векторное представление и обучающий элемент. Обучающий элемент представляет собой обучающие входные данные для итерации обучения, а целевое совместное векторное представление – обучающую цель для итерации обучения. Способ включает в себя ввод сервером обучающего элемента в алгоритм MLA во время итерации обучения. Алгоритм MLA способен формировать прогнозируемое совместное векторное представление для обучающего элемента. Способ включает в себя определение сервером во время итерации обучения оценки штрафа для итерации обучения путем сравнения прогнозируемого совместного векторного представления, сформированного алгоритмом MLA, и целевого совместного векторного представления, сформированного другим алгоритмом MLA. Оценка штрафа указывает на степень сходства прогнозируемого совместного векторного представления и целевого совместного векторного представления обучающего элемента. Способ во время итерации обучения включает в себя корректировку сервером алгоритма MLA с использованием оценки штрафа для увеличения сходства прогнозируемого совместного векторного представления и целевого совместного векторного представления обучающего элемента.

[0015] В некоторых вариантах осуществления способа ввод обучающего элемента включает в себя ввод сервером первичных текстовых данных обучающего элемента.

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

[0017] В некоторых вариантах осуществления способа другой алгоритм MLA представляет собой алгоритм MLA на основе сингулярного разложения (SVD, Singular Value Decomposition).

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

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

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

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

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

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

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

[0025] Согласно второму аспекту настоящей технологии реализован сервер для обучения алгоритма MLA формированию прогнозируемого совместного векторного представления для цифрового элемента. Цифровой элемент представляет собой потенциальный рекомендуемый элемент в системе рекомендации контента. Система рекомендации контента способна рекомендовать элементы пользователям системы рекомендации контента. Система рекомендации контента размещена на сервере. Сервер способен формировать обучающий набор для обучающего элемента. Сервер дополнительно способен формировать с использованием другого алгоритма MLA целевое совместное векторное представление для обучающего элемента на основе предыдущих пользовательских взаимодействий между пользователями системы рекомендации контента и обучающим элементом. При этом предыдущих пользовательских взаимодействий между пользователями и обучающим элементом достаточно для формирования целевого совместного векторного представления. Обучающий набор содержит целевое совместное векторное представление и обучающий элемент. Обучающий элемент представляет собой обучающие входные данные для итерации обучения, а целевое совместное векторное представление – обучающую цель для итерации обучения. Сервер способен во время итерации обучения вводить обучающий элемент в алгоритм MLA, а алгоритм MLA способен формировать прогнозируемое совместное векторное представление для обучающего элемента. Сервер способен во время итерации обучения определять оценку штрафа для итерации обучения путем сравнения прогнозируемого совместного векторного представления, сформированного алгоритмом MLA, и целевого совместного векторного представления, сформированного другим алгоритмом MLA. Оценка штрафа указывает на степень сходства прогнозируемого совместного векторного представления и целевого совместного векторного представления обучающего элемента. Сервер во время итерации обучения способен корректировать алгоритм MLA с использованием оценки штрафа для увеличения сходства прогнозируемого совместного векторного представления и целевого совместного векторного представления обучающего элемента.

[0026] В некоторых вариантах осуществления сервера ввод обучающего элемента включает в себя ввод сервером первичных текстовых данных обучающего элемента.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

[0048] На фиг. 2 представлена структура данных, хранящихся в базе данных системы, представленной на фиг. 1, согласно не имеющим ограничительного характера вариантам осуществления настоящей технологии.

[0049] На фиг. 3 представлен вариант реализации алгоритма MLA на основе разложения SVD сервером в системе, представленной на фиг. 1, согласно не имеющим ограничительного характера вариантам осуществления настоящей технологии.

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

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

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

[0053] На фиг. 7 представлен этап использования алгоритма MLA на основе дерева решений для ранжирования элементов этапа использования согласно не имеющим ограничительного характера вариантам осуществления настоящей технологии.

[0054] На фиг. 8 представлен снимок экрана рекомендательного интерфейса, реализованного согласно не имеющему ограничительного характера варианту осуществления настоящей технологии.

[0055] На фиг. 9 представлена блок-схема способа обучения алгоритма MLA на основе метода TL, представленного на фиг. 4 и выполняемого сервером, представленным на фиг. 1, согласно вариантам осуществления настоящей технологии.

[0056] На фиг. 10 представлен снимок экрана другого рекомендательного интерфейса, реализованного согласно не имеющему ограничительного характера варианту осуществления настоящей технологии.

Осуществление изобретения

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

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

[0059] В некоторых случаях приводятся полезные примеры модификаций настоящей технологии. Они способствуют пониманию, но также не определяют объема или границ настоящей технологии. Представленный перечень модификаций не является исчерпывающим и специалист в данной области может разработать другие модификации в пределах объема настоящей технологии. Кроме того, если в некоторых случаях модификации не описаны, это не означает, что они невозможны и/или что описание содержит единственно возможный вариант реализации того или иного элемента настоящей технологии.

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

[0061] Функции различных элементов, показанных на чертежах, включая любой функциональный блок, обозначенный как «процессор» или «графический процессор», могут быть реализованы с использованием специализированных аппаратных средств, а также с использованием аппаратных средств, способных выполнять соответствующее программное обеспечение. Если используется процессор, эти функции могут выполняться одним выделенным процессором, одним совместно используемым процессором или множеством отдельных процессоров, некоторые из которых могут использоваться совместно. В некоторых вариантах осуществления настоящей технологии процессор может представлять собой процессор общего назначения, такой как центральный процессор (CPU), или специализированный процессор, такой как графический процессор (GPU). Кроме того, явное использование термина «процессор» или «контроллер» не должно трактоваться как указание исключительно на аппаратные средства, способные выполнять программное обеспечение, и может подразумевать, помимо прочего, аппаратные средства цифрового сигнального процессора (DSP), сетевой процессор, специализированную интегральную схему (ASIC), программируемую вентильную матрицу (FPGA), ПЗУ для хранения программного обеспечения, ОЗУ и энергонезависимое запоминающее устройство. Также могут подразумеваться другие аппаратные средства, общего назначения и/или заказные.

[0062] Программные модули или просто модули, реализация которых предполагается в виде программных средств, могут быть представлены здесь как любое сочетание элементов блок-схемы или других элементов, указывающих на выполнение шагов процесса и/или содержащих текстовое описание. Такие модули могут выполняться аппаратными средствами, показанными явно или подразумеваемыми.

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

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

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

Электронное устройство

[0066] Система 100 содержит электронное устройство 104, связанное с пользователем 102. Электронное устройство 104 может называться клиентским устройством, оконечным устройством или клиентским электронным устройством. Следует отметить, что связь электронного устройства 104 с пользователем 102 не означает необходимости предполагать или подразумевать какой-либо режим работы, например, вход в систему, регистрацию и т.п.

[0067] Следует отметить, что несмотря на то, что на фиг. 1 показан только пользователь 102, связанный с электронным устройством 104, предполагается, что пользователь 102, связанный с электронным устройством 104, представляет собой пользователя из множества пользователей (не показаны) системы 100, каждый из которых может быть связан с соответствующим электронным устройством (не показано).

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

[0069] На реализацию рекомендательного приложения 106 не накладывается каких-либо особых ограничений. Один пример рекомендательного приложения 106 может предусматривать доступ пользователя 102 к веб-сайту, связанному с рекомендательным сервисом, для доступа к рекомендательному приложению 106. Например, доступ к рекомендательному приложению 106 может осуществляться путем ввода с клавиатуры (или копирования и вставки, или выбора ссылки) универсального указателя ресурсов (URL, Uniform Resource Locator), связанного с рекомендательным сервисом. В качестве альтернативы, рекомендательное приложение 106 может представлять собой приложение, загружаемое из так называемого «магазина приложений», такого как APPSTORE™ или GOOGLEPLAY™, и устанавливаемое или выполняемое в электронном устройстве 104. Очевидно, что доступ к рекомендательному приложению 106 может осуществляться с использованием любых других подходящих средств. В других вариантах осуществления изобретения функции рекомендательного приложения 106 могут быть включены в состав другого приложения, такого как браузерное приложение (не показано) и т.п. Например, рекомендательное приложение 106 может выполняться в виде части браузерного приложения. В частности, функции рекомендательного приложения 106 могут выполняться, когда пользователь 102 запускает браузерное приложение.

[0070] В общем случае рекомендательное приложение 106 содержит рекомендательный интерфейс (не показан), отображаемый на экране электронного устройства 104.

[0071] На фиг. 8 представлен снимок 800 экрана рекомендательного интерфейса, реализованного согласно не имеющему ограничительного характера варианту осуществления настоящей технологии (показан пример рекомендательного интерфейса, отображаемого на экране электронного устройства 104, реализованного в виде смартфона).

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

[0073] Рекомендательный интерфейс содержит поисковый интерфейс 802. Поисковый интерфейс 802 включает в себя интерфейс 804 поискового запроса. Интерфейс 804 поискового запроса может быть реализован как «омнибокс», что позволяет вводить поисковый запрос для проведения поиска или сетевой адрес (такой как URL) для идентификации ресурса (такого как веб-сайт), к которому требуется получить доступ. В любом случае интерфейс 804 поискового запроса способен принимать введенный поисковый запрос для проведения поиска и/или сетевой адрес (такой как URL) для идентификации ресурса (такого как веб-сайт), к которому требуется получить доступ.

[0074] Рекомендательный интерфейс дополнительно содержит интерфейс 806 ссылок. Интерфейс 806 ссылок включает в себя множество 808 фрагментов, восемь из которых представлены на фиг. 8, но только для двух из них на фиг. 8 предусмотрены числовые обозначения: первый фрагмент 810 и второй фрагмент 812.

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

[0076] Например, первый фрагмент 810 включает в себя ссылку на веб-сайт TRAVELZOO™, а второй фрагмент 812 содержит ссылку на веб-сайт персонального «живого журнала» (Live Journal). Излишне говорить, что количество и содержимое индивидуальных фрагментов из множества 808 фрагментов никак не ограничено.

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

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

[0079] Пример, приведенный на фиг. 8, представляет собой один возможный вариант реализации рекомендательного интерфейса. Другой пример реализации рекомендательного интерфейса и описание способа взаимодействия пользователя 102 с рекомендательным интерфейсом приведены в российской патентной заявке того же заявителя «Компьютерный способ создания интерфейса рекомендации контента» (№2016118519, подана 12.05.2016), содержание которой полностью включено в настоящий документ посредством ссылки.

[0080] Показанное на фиг. 1 электронное устройство 104 способно формировать запрос 150 рекомендации относительно цифрового контента. Запрос 150 может быть сформирован в ответ на предоставление пользователем 102 явного указания на его желание получать рекомендацию относительно цифрового контента. Например, рекомендательный интерфейс может обеспечивать кнопку (или другой активируемый элемент), позволяющую пользователю 102 выражать свое желание получать новые или обновленные рекомендации относительно цифрового контента.

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

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

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

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

[0085] Таким образом, предполагается, что в некоторых вариантах осуществления настоящей технологии запрос 150 рекомендации относительно цифрового контента может быть сформирован, даже если пользователю 102 неизвестно, что он может быть заинтересован в получении рекомендации относительно цифрового контента.

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

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

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

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

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

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

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

[0088] Ниже более подробно описано, как контент для набора 814 рекомендуемого цифрового контента формируется предоставляется электронному устройству 104.

[0089] Следует отметить, что набор 814 рекомендуемого цифрового контента может непрерывно обновляться или, иными словами, электронному устройству 104 могут отправляться дополнительные цифровые элементы так, чтобы пользователю предоставлялась «бесконечная» лента рекомендуемого контента. Например, на фиг. 10 представлен снимок 1000 экрана рекомендательного интерфейса, реализованного согласно другому не имеющему ограничительного характера варианту осуществления настоящей технологии (показан пример рекомендательного интерфейса, отображаемого на экране электронного устройства 104, реализованного в виде смартфона). Можно сказать, что представленный на фиг. 10 рекомендательный интерфейс может предоставлять пользователю 102 непрерывно обновляемую ленту рекомендуемых элементов.

Сеть связи

[0090] Электронное устройство 104 соединено с сетью 110 связи для доступа к рекомендательному серверу 112 (или, сокращенно, к серверу 112).

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

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

Множество сетевых ресурсов

[0093] С сетью 110 связи также соединено множество 130 сетевых ресурсов, содержащее первый сетевой ресурс 132, второй сетевой ресурс 134 и множество 136 дополнительных сетевых ресурсов. Первый сетевой ресурс 132, второй сетевой ресурс 134 и множество 136 дополнительных сетевых ресурсов представляют собой сетевые ресурсы, доступные электронному устройству 104 (а также другим электронным устройствам, потенциально присутствующим в системе 100) через сеть 110 связи. На соответствующий цифровой контент первого сетевого ресурса 132, второго сетевого ресурса 134 и множества 136 дополнительных сетевых ресурсов 128 не накладывается каких-либо особых ограничений.

[0094] Предполагается, что любой ресурс из числа первого сетевого ресурса 132, второго сетевого ресурса 134 и множества 136 дополнительных сетевых ресурсов может содержать цифровые документы, включающие в себя цифровой контент потенциально различных видов. Как описано ниже, множество 136 сетевых ресурсов может содержать по меньшей мере некоторые из потенциально рекомендуемых элементов контента системы 100.

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

[0096] В другом примере цифровой контент цифровых документов, содержащихся на первом сетевом ресурсе 132, втором сетевом ресурсе 134 и множестве 136 дополнительных сетевых ресурсов 128 может основываться на тексте. Цифровой контент на основе текста может, среди прочего, включать в себя новости, статьи, блоги, информацию о различных государственных учреждениях, информацию о точках интереса, тематически кластеризованный контент (например, контент, релевантный для интересующихся кикбоксингом) и т.д. Предполагается, что в по меньшей мере некоторых вариантах осуществления настоящей технологии первичные текстовые данные из элементов контента на основе текста могут извлекаться сервером 112 и сохраняться в базе 120 данных для последующей обработки.

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

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

[0099] В общем случае элементы цифрового контента потенциально «поддаются обнаружению» электронным устройством 104 с использованием различных средств. Например, пользователь 102 электронного устройства 104 может использовать браузерное приложение (не показано) и ввести URL-адрес, связанный с ресурсом из числа первого сетевого ресурса 132, второго сетевого ресурса 134 и множества 136 дополнительных сетевых ресурсов. В другом примере пользователь 102 электронного устройства 104 может выполнить поиск с помощью поисковой системы (не показана), чтобы обнаружить цифровой контент одного или нескольких ресурсов из числа первого сетевого ресурса 132, второго сетевого ресурса 134 и множества 136 дополнительных сетевых ресурсов. Как было упомянуто выше, полезно, когда пользователь 102 заранее знает, в каком цифровом контенте он заинтересован.

[00100] В по меньшей мере некоторых вариантах осуществления настоящей технологии предполагается, что пользователь 102 может оценить один или несколько элементов цифрового контента, потенциально рекомендуемых рекомендательной системой 180, размещенной на сервере 112. Ниже описана возможная реализация сервера 112 и рекомендательной системы 180 в некоторых вариантах осуществления настоящей технологии.

Рекомендательный сервер

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

[00102] В общем случае сервер 112 способен (а) получать от электронного устройства 104 запрос 150 рекомендации относительно цифрового контента и (б) в ответ на запрос 150 формировать сообщение 152 рекомендуемого цифрового контента, которое должно передаваться электронному устройству 104.

[00103] Предполагается, что по меньшей мере некоторый цифровой контент в сообщении 152 рекомендуемого цифрового контента может быть специально сформирован или иным образом адаптирован для пользователя 102, связанного с электронным устройством 104. Сервер 112 может, среди прочего, предоставлять электронному устройству 104 для отображения пользователю 102 (в рекомендательном интерфейсе рекомендательного приложения 106) информацию, которая указывает на набор 814 рекомендуемого цифрового контента и входит в состав цифрового контента в сообщении 152 рекомендуемого цифрового контента.

[00104] Должно быть понятно, что набор 814 рекомендуемого цифрового контента, предоставленный пользователю 102 сервером 112, может содержать цифровой контент, доступный на одном из множества 130 сетевых ресурсов, заранее неизвестном пользователю 102. Ниже более подробно описано формирование набора 814 рекомендуемого цифрового контента сервером 112.

[00105] Как описано выше, рекомендательный сервер 112 способен выполнять множество компьютерных процедур, которые в данном документе обобщенно называются рекомендательной системой 180. В контексте настоящей технологии сервер 112, предоставляющий рекомендательные сервисы с использованием рекомендательной системы 180, может использовать один или несколько алгоритмов MLA для поддержки множества поисковых систем. Следует отметить, что для формирования набора 814 рекомендуемого цифрового контента сервером 112 могут использоваться один или несколько алгоритмов MLA рекомендательной системы 180.

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

[00107] Должно быть понятно, что для реализации алгоритма MLA в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии могут использоваться алгоритмы MLA различных видов с различными архитектурами и/или топологиями. Тем не менее, реализация алгоритма MLA сервером 112 может быть разделена на два основных этапа: этап обучения и этап использования. Сначала алгоритм MLA обучается на этапе обучения. Затем, когда алгоритму MLA известно, какие входные данные ожидаются и какие выходные данные должны выдаваться, этот алгоритм MLA выполняется на этапе использования с данными этапа использования.

[00108] В по меньшей мере некоторых вариантах осуществления настоящей технологии сервер 112 может выполнять алгоритм 140 MLA на основе дерева решений. В общем случае алгоритм MLA на основе дерева решений представляет собой модель машинного обучения, содержащую одно или несколько деревьев решений, используемых для перехода от наблюдений за объектом (представлено в ветвях) к заключениям относительно целевого значения объекта (представлено в листьях). В одном не имеющем ограничительного характера варианте осуществления настоящей технологии алгоритм MLA на основе дерева решений может быть реализован в соответствии с фреймворком CatBoost.

[00109] Обучение алгоритма 140 MLA на основе дерева решений согласно по меньшей мере некоторым вариантам осуществления настоящей технологии описано в патенте US20190164084 «Method of and system for generating prediction quality parameter for a predication model executed in a machine learning algorithm» (опубликован 30.05.2019), содержание которого полностью включено в настоящий документ посредством ссылки. Дополнительная информация о библиотеке CatBoost, ее реализации и алгоритмах градиентного бустинга доступна по ссылке https://catboost.ai.

[00110] В по меньшей мере некоторых вариантах осуществления настоящей технологии предполагается, что сервер 112 может использовать алгоритм 140 MLA на основе дерева решений для прогнозирования ранжированного списка по меньшей мере некоторых потенциально рекомендуемых элементов контента. Как описано ниже со ссылкой на фиг. 7, сервер 112 может предоставлять алгоритму 140 MLA на основе дерева решений входные данные, содержащие (а) данные, связанные с пользователем 102, и (б) данные, связанные с множеством элементов цифрового контента (включая элементы 501 и 502), а алгоритм 140 MLA может выдавать ранжированный список 780 элементов контента.

[00111] В по меньшей мере некоторых вариантах осуществления настоящей технологии сервер 112 может выполнять один или несколько алгоритмов MLA на основе разложения SVD, таких как алгоритмы 160 и 165 MLA на основе разложения SVD (см. фиг. 1). В общем случае алгоритм MLA на основе разложения SVD представляет собой модель машинного обучения, используемую для разложения данных с матричной структурой на составляющие элементы. Например, модели на основе разложения SVD используются в качестве инструментальных средств машинного обучения для сокращения объема данных, для линейной регрессии методом наименьших квадратов, при сжатии изображений и т.д. В некоторых вариантах осуществления настоящей технологии алгоритм 160 MLA на основе разложения SVD и алгоритм 165 MLA на основе разложения SVD могут быть реализованы в виде соответствующих нейронных сетей (NN, Neural Network), обученных разложению данных с матричной структурой на один или несколько векторов или векторных представлений.

[00112] Следует отметить, что способ реализации алгоритма MLA на основе разложения SVD (например, такого как алгоритмы 160 и 165 MLA на основе разложения SVD) сервером 112 в некоторых вариантах осуществления настоящей технологии в целом описан в патенте US20180075137 «Method and apparatus for training a machine learning algorithm (MLA) for generating a content recommendation in a recommendation system and method and apparatus for generating the recommended content using the MLA» (опубликован 15.05.2018), содержание которого полностью включено в настоящий документ посредством ссылки и далее подробно не обсуждается. Тем не менее, следует отметить, что несмотря на то, что оба алгоритма способны получать данные с матричной структурой в качестве входных данных, предполагается, что алгоритм 160 MLA на основе разложения SVD может в качестве входных данных получать данные о взаимодействиях пользователь-элемент первого вида, а алгоритм 165 MLA на основе разложения SVD в качестве входных данных может получать данные о взаимодействиях пользователь-элемент второго вида. В других вариантах осуществления изобретения алгоритм 165 MLA на основе разложения SVD в качестве входных данных может получать данные на основе контента и данные на основе взаимодействий пользователь-элемент.

[00113] В по меньшей мере некоторых вариантах осуществления настоящей технологии предполагается, что сервер 112 может использовать алгоритм 160 MLA на основе разложения SVD и алгоритм 165 MLA на основе разложения SVD для формирования векторных представлений различных видов. В общем случае векторное представление представляет собой относительно низкоразмерное пространство, в которое можно переносить высокоразмерные векторы. Векторные представления упрощают машинное обучение на больших входных данных, например, подобных разреженным векторам, представляющим слова. В идеальном случае в векторном представлении фиксируется некоторая семантика входных данных путем размещения семантически близких входных данных близко друг к другу в пространстве векторных представлений. Также предполагается, что векторные представления могут быть выучены и повторно использованы в различных моделях.

[00114] Как более подробно описано ниже со ссылкой на фиг. 3, сервер 112 может использовать алгоритм 160 на основе разложения SVD для формирования векторных представлений двух видов на основе матрицы 302 взаимодействий пользователь-элемент. Например, алгоритм 160 MLA на основе разложения SVD может формировать векторное представление 310 элемента совместного (коллаборативного) вида для элемента контента и пользовательское векторное представление совместного вида для пользователя, т.е. зависящее от элемента векторное представление совместного вида и зависящее от пользователя векторное представление совместного вида.

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

[00116] Следует отметить, что в по меньшей мере некоторых вариантах осуществления настоящей технологии сервер 112 может использовать алгоритм 160 MLA вида SVD для выполнения так называемой совместной (коллаборативной) фильтрации (CF, Collaborative Filtering) рекомендуемого контента. В общем случае в способах на основе фильтрации CF используются прошлые взаимодействия между пользователями и элементами цифрового контента, чтобы отфильтровывать менее желательный контент при формировании рекомендаций для пользователей. Тем не менее, способам на основе фильтрации CF обычно присуща ограниченная производительность в случае сильно разреженных взаимодействий пользователь-элемент, что характерно для таких сценариев, как интернет-покупки, или для любых других рекомендательных платформ с очень большим набором потенциально рекомендуемых элементов. Как описано ниже, разработчики настоящей технологии разработали способы и системы для повышения производительности рекомендательной системы 180 в целом и, в частности, для случаев сильно разреженных взаимодействий пользователь-элемент.

[00117] В по меньшей мере некоторых вариантах осуществления настоящей технологии сервер 112 может выполнять алгоритм 170 MLA на основе метода TL (см. фиг. 1). В общем случае, методы TL представляют собой область машинного обучения (ML, Machine Learning), где основная цель заключается в сохранении знаний, полученных при решении одной задачи, и их применение в другой, но связанной задаче. Разработчики настоящей технологии установили, что методы TL особенно полезны в случае (а) недостаточности данных для новой области, в которой требуется использовать алгоритм MLA, и (б) наличия большой базы данных, которая, в известном смысле, может быть перенесена в эту задачу.

[00118] Как описано ниже со ссылкой на фиг. 4, сервер 112 может обучать алгоритм 170 MLA на основе метода TL предсказанию прогнозируемого совместного векторного представления элемента (т.е. прогнозируемого зависящего от элемента векторного представления совместного вида) для элемента на основе информации о контенте этого элемента. В по меньшей мере некоторых вариантах осуществления настоящей технологии предполагается, что сервер 112 может использовать первичные текстовые данные, представляющие контент элемента, для формирования соответствующего прогнозируемого зависящего от элемента векторного представления совместного вида, даже если рекомендательная система 180 не имеет достаточной истории взаимодействий пользователь-элемент для формирования соответствующего зависящего от элемента векторного представления совместного вида с использованием алгоритма 160 MLA на основе разложения SVD.

База данных

[00119] Сервер 112 связан с базой 120 данных. База 120 данных изображена в виде отдельного от сервера 112 элемента. Тем не менее, предполагается, что база 120 данных может быть реализована в виде неотъемлемой части сервера 112 без выхода за границы настоящей технологии. В качестве альтернативы, функции базы 120 данных могут быть распределены между несколькими физическими устройствами, как описано ниже.

[00120] В общем случае база 120 данных способна сохранять данные, сформированные, полученные и/или обработанные сервером 112, для временного и/или постоянного хранения. Например, база 120 данных может, среди прочего, хранить данные для обучения и использования одного или нескольких алгоритмов MLA рекомендательной системы 180.

[00121] В базе 120 данных хранится информация, связанная с соответствующими элементами рекомендательной системы 180, которая далее называется данными 202 элемента. Данные 202 элемента содержат информацию о соответствующем цифровом контенте, обнаруженном и каталогизированном сервером 112. Например, данные 202 элемента могут содержать цифровой контент элементов цифрового контента, потенциально рекомендуемых рекомендательной системой 180.

[00122] На характер потенциально рекомендуемого сервером 112 цифрового контента не накладывается каких-либо особых ограничений. Некоторые примеры потенциально рекомендуемого сервером 112 цифрового контента, среди прочего, включают в себя цифровые документы, такие как:

- новостная статья;

- публикация;

- веб-страница;

- сообщение на веб-сайте социальных медиа;

- новое приложение для загрузки из магазина приложений;

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

- аудиокнига для воспроизведения или загрузки с сетевого ресурса;

- подкаст для воспроизведения или загрузки с сетевого ресурса;

- новый фильм (видеоклип) для воспроизведения или загрузки с сетевого ресурса;

- продукт для приобретения на сетевом ресурсе; и

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

[00123] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии данные 202 элемента могут содержать первичные текстовые данные из соответствующих элементов цифрового контента. Это означает, что сервер 112 может анализировать элемент цифрового контента, извлекать (первичный) текстовый контент из этого элемента и сохранять его применительно к этому элементу в качестве части данных 202 элемента.

[00124] В других не имеющих ограничительного характера вариантах осуществления изобретения данные 202 элемента могут содержать информацию об одном или нескольких признаках элемента, связанных с соответствующими элементами цифрового контента. Например, в базе 120 данных могут храниться данные, связанные с соответствующими элементами и указывающие на:

- популярность элемента;

- коэффициент «кликов» для элемента;

- время на «клик», связанное с элементом;

- другие статистические данные, связанные с элементом;

- прочее.

[00125] Как описано ниже, сервер 112 может хранить (в качестве части данных 202 элемента) в базе 120 данных одно или несколько зависящих от элемента векторных представлений одного или нескольких видов, связанных с соответствующими элементами цифрового контента. Как описано выше, сервер 112 может использовать один или несколько алгоритмов MLA рекомендательной системы 180 для формирования зависящих от элемента векторных представлений (включая прогнозируемые векторные представления) и затем может сохранять их в базе 120 данных для последующей обработки. Например, сервер 112 может формировать и сохранять зависящие от элемента векторные представления в автономном режиме работы рекомендательной системы 180, а затем может получать их для дальнейшей обработки в интерактивном режиме работы рекомендательной системы 180. Предполагается, что интерактивный режим может соответствовать моменту времени (а) после получения запроса 150 сервером 112 и/или (б) в течение периода высокой нагрузки, когда вычислительные ресурсы сервера 112 ограничены вследствие пользовательских запросов. Предполагается, что автономный режим может соответствовать моменту времени (а) до получения запроса 150 сервером 112 и/или (б) в течение периода низкой нагрузки, когда вычислительные ресурсы сервера 112 не ограничены вследствие пользовательских запросов.

[00126] В дополнительных вариантах осуществления настоящей технологии база 120 данных может наполняться дополнительной информацией о множестве пользователей рекомендательного сервиса, которая далее называется данными 206 пользователей. Например, сервер 112 может собирать и сохранять в базе 120 данных данные пользовательских профилей, связанные с соответствующими пользователями рекомендательной системы 180, такие как имя, возраст, пол, выбранные пользователем виды цифрового контента и т.п. Другая информация о множестве пользователей рекомендательного сервиса также может храниться в базе 120 данных в качестве части данных 206 пользователей без выхода за границы настоящей технологии.

[00127] Как описано ниже, сервер 112 может хранить (в качестве части данных 206 пользователей) в базе 120 данных одно или несколько зависящих от пользователя векторных представлений одного или нескольких видов, связанных с соответствующими пользователями рекомендательной системы 180. Как описано выше, сервер 112 может использовать один или несколько алгоритмов MLA рекомендательной системы 180 для формирования зависящих от пользователя векторных представлений (различных видов) и затем может сохранять их в базе 120 данных для последующей обработки. Например, сервер 112 может формировать и сохранять зависящие от пользователя векторные представления в автономном режиме работы рекомендательной системы 180, а затем может получать их для дальнейшей обработки в интерактивном режиме работы рекомендательной системы 180.

[00128] В некоторых вариантах осуществления настоящей технологии база 120 данных также может хранить информацию о взаимодействиях между элементами цифрового контента и пользователями, которая далее называется данными 204 о взаимодействиях пользователь-элемент. В частности, сервер 112 может отслеживать множество различных взаимодействий пользователь-элемент между пользователями и ранее рекомендованными элементами и собирать соответствующие данные.

[00129] Например, можно предположить, что пользователь взаимодействовал с элементом цифрового контента, представляющим собой цифровой документ, ранее рекомендованный этому пользователю рекомендательным сервисом. Сервер 112 может отслеживать и собирать данные о взаимодействиях пользователь-элемент этого пользователя с этим цифровым документом в виде пользовательских событий, происходивших между этим пользователем и этим цифровым элементом. Примеры различных видов пользовательских событий, которые может отслеживать и собирать сервер 112, среди прочего, могут включать в себя:

- пользователь выполнил прокрутку цифрового элемента;

- пользователь положительно оценил цифровой элемент;

- пользователь отрицательно оценил цифровой элемент;

- пользователь «поделился» цифровым элементом;

- пользователь «кликнул» или «выбрал» цифровой элемент;

- пользователь затратил некоторое «время взаимодействия» на просмотр цифрового элемента; и

- пользователь приобрел, заказал или скачал цифровой элемент.

[00130] Как описано выше, сервер 112 может использовать данные 204 о взаимодействиях пользователь-элемент в качестве входных данных для алгоритма 160 MLA на основе разложения SVD (и алгоритма 165 MLA на основе разложения SVD) для формирования зависящих от элемента векторных представлений совместного вида и зависящих от пользователя векторных представлений совместного вида. На фиг. 3 приведено представление 300 порядка использования алгоритма 160 MLA на основе разложения SVD сервером 112 для формирования одного или нескольких векторных представлений совместного вида. Как описано ниже, алгоритм 165 MLA на основе разложения SVD может быть использован подобным образом, но на основе других (основанных на контенте) входных данных, для формирования зависящих от пользователя векторных представлений контентного вида.

[00131] Как показано, сервер 112 может применять алгоритм 160 MLA на основе разложения SVD в отношении матрицы 302 взаимодействий пользователь-элемент для формирования совместного векторного представления 310 элемента (зависящего от элемента векторного представления совместного вида) и пользовательского совместного векторного представления 320 (зависящего от пользователя векторного представления совместного вида).

[00132] Следует отметить, что в некоторых вариантах осуществления настоящей технологии сервер 112 может формировать несколько пользовательских векторных представлений для пользователя 102. Это означает, что сервер 112 может вводить в алгоритм 165 MLA на основе разложения SVD матрицу, содержащую данные о взаимодействиях пользователь-элемент, и прогнозируемое совместное векторное представление для элемента, чтобы сформировать или реконструировать другое пользовательское векторное представление для пользователя 102.

[00133] Предполагается, что в некоторых вариантах осуществления настоящей технологии совместное векторное представление 310 элемента для элемента и одно или несколько пользовательских векторных представлений (включая пользовательское векторное представление 320) могут быть сформированы сервером 112 в автономном режиме. Например, сервер 112 может формировать и сохранять в базе 120 данных совместное векторное представление 310 элемента для элемента и одно или несколько пользовательских векторных представлений до получения сервером 112 запроса 150 от электронного устройства 104.

[00134] Следует отметить, что алгоритм 160 MLA на основе разложения SVD способен формировать соответствующие совместные векторные представления элементов для элементов, связанных с достаточным количеством данных о взаимодействиях пользователь-элемент. Предполагается, что сервер 112 может формировать множество совместных векторных представлений элементов, подобно тому, как это описано со ссылкой на фиг. 3, для элементов, связанных с достаточным количеством данных о взаимодействиях пользователь-элемент. Сервер 112 может использовать алгоритм 160 MLA на основе разложения SVD для формирования множества пользовательских совместных векторных представлений (на основе данных о взаимодействиях пользователь-элемент) и другой алгоритм 165 MLA на основе разложения SVD для формирования множества других пользовательских векторных представлений (на основе данных контента). Сервер 112 также может сохранять (например, в интерактивном режиме) в базе 120 данных множество совместных векторных представлений элемента применительно к соответствующим элементам, а также множество пользовательских совместных векторных представлений и множество других пользовательских векторных представлений применительно к соответствующим пользователям.

[00135] На фиг. 4 приведены представление 400 одной итерации обучения алгоритма 170 MLA на основе метода TL (в верхней части фиг. 4) и представление 450 одной итерации этапа использования алгоритма 170 MLA на основе метода TL (в нижней части фиг. 4). Ниже описано выполнение сервером 112 итерации обучения алгоритма 170 MLA на основе метода TL и выполнение сервером 112 итерации этапа использования алгоритма 170 MLA на основе метода TL.

[00136] Предполагается, что сервер 112 может выполнять большое количество итераций обучения на основе соответствующих обучающих наборов данных подобно одной итерации обучения, представленной на фиг. 4. Очевидно, что сервер 112 также может выполнять большое количество итераций этапа использования на основе соответствующих данных этапа использования подобно одной итерации этапа использования, представленной на фиг. 4.

[00137] Сервер 112 способен формировать обучающий набор 402 для обучающего элемента 401. Фактически сервер 112 может формировать большое количество обучающих наборов для соответствующих обучающих элементов для выполнения соответствующих итераций обучения алгоритма 170 MLA вида TL. С этой целью сервер 112 может формировать совместное векторное представление 410 (целевого элемента) для обучающего элемента 401 на основе предыдущих пользовательских взаимодействий между пользователями системы 180 рекомендации контента и обучающим элементом 401. Например, сервер 112 может использовать алгоритм 160 MLA на основе разложения SVD, представленный на фиг. 3, с целью формирования целевого совместного векторного представления 410 для обучающего элемента 401 подобно тому, как это описано выше.

[00138] Следует отметить, что как описано выше, предыдущих пользовательских взаимодействий между пользователями и обучающим элементом 401 достаточно для того, чтобы алгоритм 160 MLA на основе разложения SVD был способен сформировать целевое совместное векторное представление 410. Предполагается, что сервер 112 может формировать большое количество обучающих наборов для соответствующих обучающих элементов, для которых сохраненных в базе 120 данных предыдущих пользовательских взаимодействий достаточно для формирования соответствующих целевых совместных векторных представлений. Иными словами, сервер 112 может определять элементы, подлежащие использованию в качестве обучающих элементов для формирования большого количества обучающих наборов.

[00139] Также следует отметить, что в дополнение к целевому совместному векторному представлению 410 обучающий набор 402 содержит информацию об обучающем элементе 401. В частности, обучающий набор 402 может дополнительно содержать основанную на контенте информацию об обучающем элементе 401. Например, обучающий набор 402 также может содержать связанные с обучающим элементом 401 первичные текстовые данные 415, представляющие контент обучающего элемента 401.

[00140] Сервер 112 способен использовать информацию об обучающем элементе 401 (первичные текстовые данные 415) в качестве обучающих входных данных для алгоритма 170 MLA на основе метода TL для итерации обучения и использовать целевое совместное векторное представление 410 в качестве обучающей цели для этой итерации обучения.

[00141] Иными словами, сервер 112 может вводить первичные текстовые данные 415 в алгоритм 170 MLA на основе метода TL, способный формировать прогнозируемое совместное векторное представление 430 для обучающего элемента 410. Затем сервер 112 способен сравнивать прогнозируемое совместное векторное представление 430 с целевым совместным векторным представлением 410 (т.е. сравнивать прогноз с целью). Таким образом, сервер 112 способен определять оценку 440 штрафа на основе целевого совместного векторного представления 410 (сформированного алгоритмом 160 MLA на основе разложения SVD) и прогнозируемого совместного векторного представления 430 (для элемента) (сформированного алгоритмом 170 MLA на основе метода TL).

[00142] Следует отметить, что оценка 440 штрафа указывает на степень сходства прогнозируемого совместного векторного представления 430 и целевого совместного векторного представления 410. На вид метрики сравнения, используемой для оценки сходства прогнозируемого совместного векторного представления 430 и целевого совместного векторного представления 410, не накладывается каких либо особых ограничений. Тем не менее, независимо от конкретного вида метрики сравнения, используемой для формирования оценки 440 штрафа, сервер 112 способен использовать оценку 440 штрафа для корректировки алгоритма 170 MLA на основе метода TL во время итерации обучения. Например, сервер 112 может определять оценку 440 штрафа и использовать метод обратного распространения для корректировки алгоритма 170 MLA на основе метода TL с целью улучшения будущих прогнозов.

[00143] Таким образом, путем выполнения большого количества итераций обучения алгоритма 170 MLA на основе метода TL этот алгоритм, в известном смысле, обучается формированию прогнозируемых совместных векторных представлений для соответствующих обучающих элементов на основе их контента так, чтобы они были как можно более схожими с целевыми совместными векторными представлениями для соответствующих обучающих элементов. Иными словами, сервер 112 может корректировать алгоритм 170 MLA на основе метода TL путем использования оценок штрафа во время соответствующей итерации обучения так, чтобы увеличить сходство прогнозов и целей.

[00144] Разработчики настоящей технологии установили, что благодаря такому обучению алгоритма 170 MLA на основе метода TL формированию прогнозируемых совместных векторных представлений на основе контента из соответствующего элемента так, чтобы они были схожи с соответствующими целевыми совместными векторными представлениями, сервер 112 может прогнозировать совместное векторное представление для элемента этапа использования, когда для формирования соответствующего совместного векторного представления с использованием алгоритма 160 MLA на основе разложения SVD нет достаточного количества данных о взаимодействиях пользователь-элемент. Тем не менее, в других вариантах осуществления изобретения прогнозирование совместного векторного представления для элемента этапа использования может выполняться, даже если данных о взаимодействиях пользователь-элемент достаточно для формирования соответствующего совместного векторного представления с использованием алгоритма 160 MLA на основе разложения SVD. Таким образом, как описано ниже, в некоторых вариантах осуществления изобретения, где данных о взаимодействиях пользователь-элемент достаточно для формирования совместного векторного представления элемента с использованием алгоритма 160 MLA на основе разложения SVD, первый параметр может быть сформирован сервером 112 для элемента этапа использования на основе совместного пользовательского векторного представления и совместного векторного представления элемента (из алгоритма 160 MLA на основе разложения SVD), а второй параметр может быть сформирован для элемента этапа использования на основе пользовательского векторного представления (восстановленного) (например, из алгоритма 165 MLA на основе разложения SVD) и прогнозируемого совместного векторного представления элемента (например, из алгоритма 170 MLA на основе метода TL). При этом первый параметр и второй параметр могут быть использованы сервером 112 в качестве входных данных для модели прогнозирования релевантности (например, алгоритма 140 MLA на основе дерева решений) для ранжирования элемента этапа использования.

[00145] Для лучшей иллюстрации этого на фиг. 4 приведено представление 450 итерации этапа использования алгоритма 170 MLA на основе метода TL. Можно предположить, что в базе 120 данных хранится недостаточное количество взаимодействий пользователь-элемент для элемента 411 этапа использования. Это означает, что алгоритм 160 MLA на основе разложения SVD не может сформировать соответствующее совместное векторное представление для элемента 411 этапа использования (например, вследствие разреженности данных). Тогда сервер 112 может обращаться к базе 120 данных для определения первичных текстовых данных 465, связанных с элементом 411 этапа использования, и использовать первичные текстовые данные 465 в качестве входных данных для обученного таким образом алгоритма 170 MLA на основе метода TL.

[00146] Как описано выше, обученный таким образом алгоритм 170 MLA на основе метода TL способен выдавать прогнозируемое совместное векторное представление 480 для элемента 411 этапа использования. Таким образом, сервер 112 может использовать прогнозируемое совместное векторное представление 480 для элемента 411 этапа использования в качестве оценки совместного векторного представления, которое алгоритм 160 MLA на основе разложения SVD не способен сформировать на основе данных о пользовательских взаимодействиях, сохраненных для элемента 411 этапа использования в базе 120 данных.

[00147] Следует отметить, что сервер 112 может использовать в автономном режиме алгоритм 170 MLA на основе метода TL на этапе его использования для формирования множества прогнозируемых совместных векторных представлений элемента для элементов, связанных с ограниченным количеством данных о взаимодействиях пользователь-элемент (т.е. с данными о взаимодействиях пользователь-элемент, которых недостаточно для формирования соответствующего совместного векторного представления элемента алгоритмом 160 MLA на основе разложения SVD). Сервер 112 также может хранить множество прогнозируемых совместных векторных представлений элементов в базе 120 данных применительно к соответствующим элементам.

[00148] На фиг. 5 приведено представление 500 для порядка обращения сервера 112 к базе 120 данных в интерактивном режиме работы рекомендательной системы 180 с целью предоставления рекомендаций контента пользователю 102.

[00149] Можно предположить, что множество элементов (без числового обозначения) выбирается сервером 112 в качестве элементов, которые могут представлять интерес для пользователя 102, включая первый элемент 501 и второй элемент 502. Сервер 112 может обращаться к базе 120 данных с целью получения совместных векторных представлений элементов для соответствующих элементов из множества элементов. Таким образом, сервер 112 может обращаться к базе 120 данных для получения первого совместного векторного представления 510 элемента, сформированного алгоритмом 160 MLA на основе разложения SVD до сохранения в базе 120 данных.

[00150] Сервер 112 также может обращаться к базе 120 данных с целью получения совместного векторного представления элемента для второго элемента 502. Тем не менее, вместо совместного векторного представления элемента в базе 120 данных может храниться прогнозируемое совместное векторное представление 515 элемента для второго элемента 502. Можно предположить, что второй элемент 502 связан с данными о взаимодействиях пользователь-элемент, которых недостаточно для формирования совместного векторного представления элемента алгоритмом 160 MLA на основе разложения SVD. Тогда сервер 112 может использовать алгоритм 170 MLA на основе метода TL для формирования прогнозируемого совместного векторного представления 515 элемента, как описано выше.

[00151] Сервер 112 также способен получать одно или несколько пользовательских векторных представлений, связанных с пользователем 102. Например, сервер 112 может обращаться к базе 120 данных и получать пользовательское совместное векторное представление 520, сформированное алгоритмом 160 MLA на основе разложения SVD, и другое пользовательское векторное представление 525, сформированное другим алгоритмом 165 MLA на основе разложения SVD.

[00152] В по меньшей мере некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии сервер 112 может использовать одно или несколько векторных представлений, полученных из базы 120 данных, с целью формирования параметров для дальнейшего ранжирования первого элемента 501 и второго элемента 502. На фиг. 6 приведено представление 600 для порядка формирования сервером 112 первого параметра 610 для первого элемента 501 и второго параметра 620 для второго элемента 502.

[00153] Как показано, сервер 112 может формировать первый параметр 610 для первого элемента 501 в виде произведения пользовательского совместного векторного представления 520 и совместного векторного представления 510 элемента. Сервер 112 также может формировать второй параметр 620 для второго элемента 502 в виде произведения другого пользовательского векторного представления 525 и прогнозируемого совместного векторного представления 515 элемента. В некоторых вариантах осуществления изобретения сервер 112 может формировать второй параметр 620 для второго элемента 502 в виде произведения пользовательского совместного векторного представления 520 и прогнозируемого совместного векторного представления 515 элемента.

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

[00155] На фиг. 7 приведено представление 700 для порядка использования сервером 112 алгоритма 140 MLA на основе дерева решений для формирования ранжированного списка 780 элементов для пользователя 102. Как показано, сервер 112 может вводить в алгоритм 140 MLA на основе дерева решений пользовательские данные 702 признаков. Например, сервер 112 может обращаться к базе 120 данных и получать информацию, связанную с пользователем 102 и сохраненную в качестве части данных 206 пользователей.

[00156] Сервер 112 также может вводить данные 704 элемента и первый параметр 610 для первого элемента 501. Например, сервер 112 может обращаться к базе 120 данных и получать информацию, связанную с первым элементом 501 и сохраненную в качестве части данных 202 элемента. Сервер 112 также может вводить данные 706 элемента и второй параметр 620 для второго элемента 502. Например, сервер 112 может обращаться к базе 120 данных и получать информацию, связанную со вторым элементом 502 и сохраненную в качестве части данных 202 элемента. Алгоритм 140 MLA на основе дерева решений способен формировать в качестве выходных данных ранжированный список 780 рекомендуемых элементов, ранжированных на основе их релевантности для пользователя 102.

[00157] В некоторых вариантах осуществления настоящей технологии сервер 112 может использовать один или несколько элементов из ранжированного списка 780 рекомендуемых элементов в качестве рекомендации контента для пользователя 102. Например, сервер 112 может использовать по меньшей мере некоторые элементы из ранжированного списка 780 рекомендуемых элементов для формирования набора 814 рекомендуемого цифрового контента, представленного на фиг. 8. Очевидно, что первый рекомендуемый цифровой документ 816 и второй рекомендуемый цифровой документ 818 могут содержать контент первого элемента 501 и второго элемента 502, соответственно.

[00158] На фиг. 9 представлена блок-схема способа 900 обучения алгоритма 170 MLA на основе метода TL формированию прогнозируемого совместного векторного представления для элемента этапа использования. Далее более подробно описаны шаги способа 900. Должно быть понятно, что в некоторых вариантах осуществления способа по меньшей мере некоторые шаги способа 900 могут быть опущены или заменены, а также что в качестве части способа 900 могут выполняться шаги, дополняющие описанные ниже шаги, без выхода за границы настоящей технологии.

Шаг 902: формирование обучающего набора для обучающего элемента.

[00159] Способ 900 начинается с шага 902, на котором сервер 112 может формировать обучающий набор для обучающего элемента. Например, сервер 112 может формировать обучающий набор 402 (см. фиг. 4) для обучающего элемента 401. В некоторых вариантах осуществления изобретения сервер 112 может формировать большое количество обучающих наборов для соответствующих обучающих элементов для выполнения соответствующих итераций обучения алгоритма 170 MLA на основе метода TL.

[00160] Следует отметить, что формирование обучающего набора 402 может включать в себя формирование сервером 112 совместного векторного представления 410 (целевого элемента) для обучающего элемента 401 на основе предыдущих взаимодействий между пользователями и обучающим элементом 401. Например, сервер 112 может использовать алгоритм 160 MLA на основе разложения SVD, представленный на фиг. 3, с целью формирования целевого совместного векторного представления 410 для обучающего элемента 401 подобно тому, как это описано выше.

[00161] Следует отметить, что предыдущих пользовательских взаимодействий между пользователями и обучающим элементом 401 достаточно для того, чтобы алгоритм 160 MLA на основе разложения SVD был способен сформировать целевое совместное векторное представление 410. Предполагается, что сервер 112 может формировать большое количество обучающих наборов для соответствующих обучающих элементов, в отношении которых сохраненных в базе 120 данных предыдущих пользовательских взаимодействий достаточно для формирования соответствующих целевых совместных векторных представлений. Иными словами, сервер 112 может определять элементы, подлежащие использованию в качестве обучающих элементов для формирования большого количества обучающих наборов.

[00162] Также следует отметить, что в дополнение к целевому совместному векторному представлению 410 обучающий набор 402 содержит информацию об обучающем элементе 401. В частности, обучающий набор 402 может дополнительно содержать основанную на контенте информацию об обучающем элементе 401. Например, обучающий набор 402 может содержать обучающий элемент 401 и/или первичные текстовые данные 415 из обучающего элемента 401, представляющие контент обучающего элемента 401. В некоторых вариантах осуществления изобретения первичные текстовые данные 415 могут быть определены сервером 112 путем анализа обучающего элемента 401 и извлечения первичных текстовых данных 415 из обучающего элемента 401.

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

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

Шаг 904: ввод во время итерации обучения обучающего элемента в алгоритм MLA, способный формировать прогнозируемое совместное векторное представление.

[00165] Способ 900 продолжается на шаге 904, на котором сервер 112 может вводить во время итерации обучения обучающий элемент 401 в алгоритм 170 MLA на основе метода TL, способный формировать прогнозируемое совместное векторное представление 430 элемента для обучающего элемента 401. Например, обучающий элемент 401 может содержать первичные текстовые данные 415, которые могут быть использованы в качестве обучающих входных данных для алгоритма 170 MLA на основе метода TL.

Шаг 906: определение во время итерации обучения оценки штрафа для итерации обучения путем сравнения прогнозируемого совместного векторного представления, сформированного алгоритмом MLA, и целевого совместного векторного представления, сформированного другим алгоритмом MLA.

[00166] Способ 900 продолжается на шаге 906, на котором сервер 112 может определять оценку 440 штрафа для итерации обучения путем сравнения прогнозируемого совместного векторного представления 430 элемента, сформированного алгоритмом 170 MLA на основе метода TL, и целевого совместного векторного представления 410 элемента, сформированного алгоритмом 160 MLA на основе разложения SVD. Оценка 440 штрафа указывает на степень сходства прогнозируемого совместного векторного представления 430 элемента и целевого совместного векторного представления 410 элемента.

[00167] На вид метрики сравнения, используемой для оценки сходства прогнозируемого совместного векторного представления 430 и целевого совместного векторного представления 410, не накладывается каких-либо особых ограничений. Тем не менее, независимо от конкретного вида метрики сравнения, используемой для формирования оценки 440 штрафа, сервер 112 способен использовать оценку 440 штрафа для корректировки алгоритма 170 MLA на основе метода TL во время итерации обучения.

Шаг 908: корректировка алгоритма MLA с использованием оценки штрафа во время итерации обучения для увеличения сходства прогнозируемого совместного векторного представления и целевого совместного векторного представления обучающего элемента.

[00168] Способ 900 продолжается на шаге 908, на котором сервер 112 во время итерации обучения может корректировать алгоритм 170 MLA на основе метода TL с использованием оценки 440 штрафа для увеличения сходства прогнозируемого совместного векторного представления элемента и целевого совместного векторного представления элемента. Например, сервер 112 может определять оценку 440 штрафа и использовать метод обратного распространения для корректировки алгоритма 170 MLA на основе метода TL с целью улучшения будущих прогнозов.

[00169] Таким образом, путем выполнения большого количества итераций обучения алгоритма 170 MLA на основе метода TL этот алгоритм, в известном смысле, обучается формированию прогнозируемых совместных векторных представлений для соответствующих обучающих элементов на основе их контента так, чтобы они были как можно более схожими с целевыми совместными векторными представлениями для соответствующих обучающих элементов. Иными словами, сервер 112 может корректировать алгоритм 170 MLA на основе метода TL с использованием оценок штрафа во время соответствующей итерации обучения так, чтобы увеличить сходство прогнозов и целей.

[00170] Разработчики настоящей технологии установили, что благодаря такому обучению алгоритма 170 MLA на основе метода TL формированию прогнозируемых совместных векторных представлений на основе контента из соответствующего элемента так, чтобы они были схожи с соответствующими целевыми совместными векторными представлениями, сервер 112 может прогнозировать совместное векторное представление для элемента этапа использования, когда для формирования соответствующего совместного векторного представления с использованием алгоритма 160 MLA на основе разложения SVD нет достаточного количества данных о взаимодействиях пользователь-элемент.

[00171] В некоторых вариантах осуществления способа 900 он может дополнительно включать в себя получение сервером 112 указания на запрос рекомендации контента от пользователя 102 системы 180 рекомендации контента. Например, сервер 112 может получать запрос 150 от электронного устройства 104. Сервер 112 также может определять множество потенциальных рекомендуемых элементов для предоставления пользователю 102. В частности, сервер 112 может определять множество рекомендуемых элементов, включая первый элемент 501 и второй элемент 502 (см. фиг. 5). Например, это множество рекомендуемых элементов может содержать набор элементов, связанных с предыдущими пользовательскими взаимодействиями между пользователями и соответствующими элементами из набора элементов. В этом случае набор элементов содержит первый элемент 501. Множество рекомендуемых элементов также содержит по меньшей мере один другой элемент, связанный с ограниченными данными о взаимодействиях пользователь-элемент, например, такой как второй элемент 502.

[00172] Сервер 112 также может получать совместные векторные представления элемента для соответствующих элементов из набора элементов. Например, сервер 112 может, среди прочего, получать из базы 120 данных совместное векторное представление 510 элемента для первого элемента 501. Можно сказать, что совместное векторное представление 510 элемента определено алгоритмом 160 MLA на основе разложения SVD, основываясь на предыдущих пользовательских взаимодействиях между пользователями и первым элементом 501, которых достаточно для определения алгоритмом 160 MLA на основе разложения SVD предварительно определенных совместных векторных представлений для соответствующих элементов.

[00173] Следует отметить, что алгоритм 160 MLA на основе разложения SVD может оказаться неспособным определять совместное векторное представление элемента для второго элемента 502 вследствие ограниченного количества пользовательских взаимодействий между вторым элементом 502 и пользователями системы 180. При этом сервер 112 может получать прогнозируемое совместное векторное представление 515 элемента для второго элемента 502. Например, сервер 112 может получать из базы 120 данных прогнозируемое совместное векторное представление 515 элемента.

[00174] Сервер 112 также может получать пользовательское совместное векторное представление 520 для пользователя 102. Например, сервер 112 может получать пользовательское совместное векторное представление 520 из базы 120 данных. Пользовательское совместное векторное представление определяется (и затем сохраняется в базе 120 данных) алгоритмом 160 MLA на основе разложения SVD, основываясь на предыдущих пользовательских взаимодействиях между пользователем 102 и элементами из набора элементов.

[00175] Сервер 112 также может получать другое пользовательское векторное представление 525 для пользователя 102. Например, сервер 112 может получать другое пользовательское векторное представление 525 из базы 120 данных. Другое пользовательское векторное представление 525 определяется (а затем сохраняется в базе 120 данных) другим алгоритмом 165 MLA на основе разложения SVD, основываясь на данных о взаимодействиях пользователь-элемент и прогнозируемом совместном векторном представлении 515. В не имеющем ограничительного характера примере данные о взаимодействиях пользователь-элемент и прогнозируемое совместное векторное представление 515 могут быть использованы другим алгоритмом 165 MLA на основе разложения SVD для формирования (например, путем выполнения одной итерации алгоритма чередующихся наименьших квадратов (ALS, Alternating Least Square)) другого пользовательского векторного представления 525, которое затем сохраняется в базе 120 данных сервером 112.

[00176] Сервер 112 также может формировать второй параметр 620 для второго элемента 502 в виде произведения (а) прогнозируемого совместного векторного представления 515 и (б) другого пользовательского векторного представления 525. Второй параметр 620 может быть использован сервером 112 в качестве входных данных для алгоритма 140 MLA на основе дерева решений для ранжирования множества потенциальных рекомендуемых элементов. Сервер 112 также может формировать первый параметр 610 для первого элемента 501 из набора элементов в виде произведения (а) соответствующего совместного векторного представления 510 элемента и (б) пользовательского совместного векторного представления 520. Первый параметр 610 также может быть использован сервером 112 в качестве входных данных для алгоритма 140 MLA на основе дерева решений, способного ранжировать множество потенциальных рекомендуемых элементов.

[00177] Следует отметить, что совместное векторное представление 510 элемента, прогнозируемое совместное векторное представление 515 элемента, пользовательское совместное векторное представление 520 и другое пользовательское векторное представление 525 могут определяться и сохраняться в автономном режиме работы рекомендательной системы 180. Например, совместное векторное представление 510 элемента может определяться алгоритмом 160 MLA на основе разложения SVD до получения запроса 150, прогнозируемое совместное векторное представление 515 элемента может определяться алгоритмом 170 MLA на основе метода TL до получения запроса 150, пользовательское совместное векторное представление 520 может формироваться алгоритмом 160 MLA на основе разложения SVD и другое пользовательское векторное представление 525 может формироваться другим алгоритмом 165 MLA на основе разложения SVD.

[00178] В некоторых вариантах осуществления настоящей технологии предполагается, что даже если сервер 112 может сформировать совместное векторное представление элемента для элемента с использованием алгоритма 160 MLA на основе разложения SVD, сервер 112 по-прежнему способен формировать соответствующее прогнозируемое совместное векторное представление элемента для этого элемента. Сервер 112 может получать первичные текстовые данные (данные контента), связанные с элементом, и вводить их в (обученный) алгоритм 170 MLA на основе метода TL, способный выдавать соответствующее прогнозируемое совместное векторное представление элемента. Например, в случае первого элемента 501 сервер 112 может формировать другой параметр для первого элемента 501 в виде произведения (а) прогнозируемого совместного векторного представления элемента для первого элемента (вместо совместного векторного представления 510 элемента) и (б) другого пользовательского векторного представления 525. Сервер 112 также может использовать другой параметр в дополнение к первому параметру 610 или вместо него в качестве входных данных для алгоритма 140 MLA на основе дерева решений, как описано выше.

[00179] Следует отметить, что в некоторых вариантах осуществления изобретения алгоритм 160 MLA на основе разложения SVD может быть обучен на множестве обучающих наборов. Обучающий элемент 401 может быть использован во втором множестве обучающих наборов, меньшем множества обучающих наборов. Иными словами, алгоритм 160 MLA на основе разложения SVD может быть обучен на большем количестве обучающих наборов, чем количество обучающих наборов, используемых для обучения алгоритма 170 MLA на основе метода TL.

[00180] Очевидно, что не все упомянутые в данном описании технические эффекты должны проявляться в каждом варианте осуществления настоящей технологии. Например, возможны варианты осуществления настоящей технологии, когда пользователь не получает некоторые из этих технических эффектов, или другие варианты реализации, когда пользователь получает другие технические эффекты либо когда технический эффект отсутствует.

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

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

1. Способ обучения алгоритма машинного обучения (MLA) формированию прогнозируемого совместного векторного представления для цифрового элемента, представляющего собой потенциальный рекомендуемый элемент в системе рекомендации контента, способной рекомендовать элементы пользователям системы рекомендации контента и размещенной на сервере, при этом способ выполняется сервером и включает в себя:

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

- во время итерации обучения:

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

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

- корректировку сервером алгоритма MLA с использованием оценки штрафа для увеличения сходства прогнозируемого совместного векторного представления и целевого совместного векторного представления обучающего элемента.

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

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

4. Способ по п. 1, отличающийся тем, что другой алгоритм MLA представляет собой алгоритм MLA на основе сингулярного разложения.

5. Способ по п. 1, отличающийся тем, что он дополнительно включает в себя:

- получение сервером указания на запрос рекомендации контента от пользователя системы рекомендации контента;

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

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

- получение сервером прогнозируемого совместного векторного представления для цифрового элемента;

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

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

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

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

6. Способ по п. 5, отличающийся тем, что совместное векторное представление определено другим алгоритмом MLA в автономном режиме до получения указания на запрос рекомендации контента.

7. Способ по п. 5, отличающийся тем, что третий алгоритм MLA представляет собой алгоритм MLA на основе дерева решений.

8. Способ по п. 5, отличающийся тем, что он дополнительно включает в себя:

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

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

9. Способ по п. 1, отличающийся тем, что другой алгоритм MLA обучается на множестве обучающих наборов.

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

11. Сервер для обучения алгоритма машинного обучения (MLA) формированию прогнозируемого совместного векторного представления для цифрового элемента, представляющего собой потенциальный рекомендуемый элемент в системе рекомендации контента, выполненной с возможностью рекомендации элементов пользователям системы рекомендации контента и размещенной на сервере, при этом сервер выполнен с возможностью:

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

- во время итерации обучения:

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

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

- корректировки алгоритма MLA с использованием оценки штрафа для увеличения сходства прогнозируемого совместного векторного представления и целевого совместного векторного представления обучающего элемента.

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

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

14. Сервер по п. 11, отличающийся тем, что другой алгоритм MLA представляет собой алгоритм MLA на основе сингулярного разложения.

15. Сервер по п. 11, отличающийся тем, что он дополнительно выполнен с возможностью:

- получения указания на запрос рекомендации контента от пользователя системы рекомендации контента;

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

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

- получения прогнозируемого совместного векторного представления для цифрового элемента;

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

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

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

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

16. Сервер по п. 15, отличающийся тем, что совместное векторное представление определено другим алгоритмом MLA в автономном режиме до получения указания на запрос рекомендации контента.

17. Сервер по п. 15, отличающийся тем, что третий алгоритм MLA представляет собой алгоритм MLA на основе дерева решений.

18. Сервер по п. 15, отличающийся тем, что он дополнительно выполнен с возможностью:

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

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

19. Сервер по п. 11, отличающийся тем, что другой алгоритм MLA обучен на множестве обучающих наборов.

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



 

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

Изобретение относится к микроэлектронике, а именно к интегральным оптическим элементам, в частности к диэлектрическим метаповерхностям со сложным геометрическим профилем, которые могут быть использованы в области квантовых коммуникаций для защиты данных при передаче по каналам широкополосной связи посредством повышения размерности гильбертова пространства за счет использования скалярных пучков с орбитальным угловым моментом (ОУМ).

Группа изобретений относится к системам определения геолокации пользователя посредством применения множества источников различных типов данных, таких как Bluetooth, Wi-Fi, GPS и других аналогичных средств, и может быть использована в сфере информационных технологий, а также в промышленных отраслях техники для определения геолокации сотрудников.

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

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

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

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

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

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

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

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

Изобретение относится к области защиты информации. Техническим результатом является повышение достоверности обработки информации при ее защите от утечки по каналам ПЭМИН.
Наверх