RU2763530C1 - Клиент, сервер и система клиент-сервер, адаптированные для генерации персонализированных рекомендаций - Google Patents
Клиент, сервер и система клиент-сервер, адаптированные для генерации персонализированных рекомендаций Download PDFInfo
- Publication number
- RU2763530C1 RU2763530C1 RU2020122720A RU2020122720A RU2763530C1 RU 2763530 C1 RU2763530 C1 RU 2763530C1 RU 2020122720 A RU2020122720 A RU 2020122720A RU 2020122720 A RU2020122720 A RU 2020122720A RU 2763530 C1 RU2763530 C1 RU 2763530C1
- Authority
- RU
- Russia
- Prior art keywords
- client
- model
- server
- updated
- client device
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Development Economics (AREA)
- Accounting & Taxation (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- Game Theory and Decision Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Computational Linguistics (AREA)
- Information Transfer Between Computers (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Изобретение относится к клиентскому устройству, серверу и системе для генерации персонализированных рекомендаций. Технический результат заключается в обеспечении конфиденциальности пользовательских данных и повышении эффективности генерации рекомендаций. Клиентское устройство соединено с серверным устройством, использующим глобальное множество объектов (j1,…,jM) и по меньшей мере одну модель (A1,…,AK), указанное клиентское устройство (i) конфигурировано для использования по меньшей мере одной модели (A1,…,AK), скачиваемой с указанного серверного устройства, и генерации набора рекомендаций (Rij), содержащего по меньшей мере один объект (jp) из указанных объектов (j1,…,jM), посредством по меньшей мере одной полученной путем скачивания модели(ей) (A1,…,AK) и локального множества данных клиента (ui), сохраняемого в аппаратуре указанного клиентского устройства (i), в котором указанное локальное множество данных клиента (ui) содержит неявную обратную связь от пользователя и/или явную обратную связь от пользователя, и указанное клиентское устройство (i) не отправляет множество данных клиента (ui) на сервер, и генерации обновленной модели (A12i,…,AK2i) или по меньшей мере одного обновления (dA1i,…,dAKi) для каждой загруженной модели. 3 н. и 11 з.п. ф-лы, 2 ил.
Description
Область техники, к которой относится изобретение
Настоящее изобретение относится к усовершенствованным клиенту, серверу и системе клиент-сервер, позволяющим генерировать персонализированные рекомендации.
Уровень техники
Система клиент-сервер представляет собой структуру, в которой задачи системы разделены между провайдером сервиса, т.е. сервером, и заказчиками сервиса, т.е. клиентами. Сервер может выполнять одну или несколько программ, распределяющих свои ресурсы и совместно использующих эти ресурсы с клиентами. Клиент, с другой стороны, не распределяет какие-либо свои ресурсы для совместного использования, а запрашивает контент сервера или функцию сервиса. Клиенты, т.е. устройства пользователя, такие как мобильные телефоны или планшеты, являются важной частью процедуры компьютерного обучения, используемой в такой системе клиент-сервер, поскольку каждый клиент является источником данных, где эти данные используются для построения моделей, применяемых в процессе компьютерного обучения и для генерации результатов на основе этих моделей.
Эти результаты могут представлять собой, например, рекомендации по одному или нескольким конкретным предметам, выбранным из большего множества объектов, где эти конкретные объекты прогнозируются посредством одной или нескольких моделей, а результаты прогнозирования представляют интерес для пользователя клиента. Таким объектом может быть, например, видео, доступное для просмотра, приложение, доступное для скачивания, или физический объект, такой как предмет одежды, доступный для приобретения. Клиенты и предметы могут быть собраны в так называемой матрице клиент-объект.
Процедура машинного обучения содержит создание комплексных моделей и алгоритмов, которые могут быть использованы для того, чтобы делать предсказания, например, путем использования структур, найденных в данных предысторий и данных транзакций. Существует ряд способов для того, чтобы делать предсказания, однако одно общее свойство этих способов состоит в применении прогностической оценки, такой как рейтинг, к индивидуальным элементам из состава большего множества элементов, таких как видеоклипы или предметы одежды. Эти прогностические оценки указывают вероятность того, что пользователь посмотрит соответствующее видео, скачает соответствующее приложение или приобретет соответствующий предмет одежды, и могут быть в последующем использованы для генерации рекомендаций для пользователя.
Реализовать эффективную процедуру компьютерного обучения затруднительно, поскольку трудно найти структуры, и часто нет достаточных данных для тренировки; в результате, процедуры компьютерного обучения часто не удается применять. Следовательно, важно предоставить настолько много данных, насколько это возможно для осуществления процедуры компьютерного обучения. Для системы клиент-сервер это превращается в необходимость для сервера иметь доступ к такому большому числу клиентов и их данным, насколько это возможно. Каждый клиент представляет собой устройство пользователя, такое как мобильный телефон или планшет, и при этом клиент является не только источником данных, используемых для построения моделей, применяемых в процедуре компьютерного обучения, но также и средством для предоставления пользователю или клиенту результатов работы моделей, например, рекомендаций в отношении видеоклипов или предметов одежды, которые получили наивысшие оценки.
Подход известной техники к такому построению моделей содержит передачу данных пользователя центральному серверу, где для обработки данных, построения моделей и генерации результатов в форме рекомендаций используются различные алгоритмы. Эти рекомендации должны быть индивидуальными и персональными, вследствие чего, чем в большей степени персональными являются данные, тем лучше рекомендации.
Клиенты, такие как мобильные телефоны и планшеты, содержат разного персональные данные пользователя, например, информацию о местонахождении клиента, что может считаться очень чувствительными персональными данными, и скачиваемые приложения, что может считаться не слишком чувствительными персональными данными. Независимо от уровней чувствительностей эти данные все равно считаются персональными данными пользователя.
Нормативные документы, такие как, например, Генеральный регламент о защите персональных данных (GDPR (General Data Protection Regulation)), который должен быть введен в действие в Европейском союзе (EU) в 2018 г., равно как общая необходимость тщательного изучения того, как компании собирают, хранят и используют данные пользователей, представляют собой проблемы, делающие генерацию персонализированных рекомендаций более сложной, и возможно даже совсем невозможной, когда требуется явно выраженное согласие пользователя на сбор, хранение и обработку данных пользователя. Поскольку исследования показывают, что количество подписчиков не превышает 20%, попытки генерировать такие персонализированные рекомендации могут оказаться бесполезными.
Кроме того, ежедневный сбор гигабайтов данных пользователей для большого числа клиентов, равно как и хранение и безопасное использование этих данных требует создания весьма дорогостоящей инфраструктуры и административных решений.
Предоставление результатов, таких как персонализированные рекомендации для пользователя клиента, является важным средством привлечения и удержания пользователей сервиса, например, путем помощи пользователям в поиске видеоклипов, которые они хотели бы посмотреть, и отфильтровывания в то же время контента, который пользователям неинтересен, например, из-за того, что они уже видели какой-либо видеоклип.
Сущность изобретения
Целью настоящего изобретения является создание усовершенствованных клиента, сервера и системы клиент-сервер.
Указанная выше и другие цели достигаются с использованием признаков, описываемых в независимых пунктах Формулы изобретения. Другие формы реализации станут очевидны из зависимых пунктов Формулы изобретения, настоящего описания и чертежей.
Согласно первому аспекту предложен клиент, адаптированный для генерации персонализированных рекомендаций относительно объектов для пользователя клиента, этот клиент соединен с сервером, использующим глобальное множество объектов и по меньшей мере одну модель, клиент конфигурирован для использования по меньшей мере одной модели, скачиваемой с сервера, и генерации набора рекомендаций, содержащего по меньшей мере один из объектов, по меньшей мере одной из загруженных при скачивании моделей и локального множества данных клиента, сохраняемых в аппаратуре клиента.
Клиент, имеющий эти признаки, создает возможность эффективной и безопасной генерации персонализированных рекомендаций относительно объектов, поскольку некоторые вычисления, необходимые для генерации персонализированных рекомендаций относительно объектов, выполняются в аппаратуре клиента и некоторые данные, используемые в этих вычислениях, сохраняются в аппаратуре клиента.
В одной из возможных форм реализации первого аспекта применяются такие модели, как Совместная фильтрация (Collaborative Filtering), Прогностическое моделирование (Predictive Modeling) и/или Модели глубокого обучения (Deep Learning Model), представляющие собой модели, надежно отработанные для различных типов использования.
В следующей возможной форме реализации первого аспекта, множество данных клиента содержит неявную обратную связь от пользователя и/или явную обратную связь от пользователя, позволяющую вычислять оценки, используемые для генерации персонализированных рекомендаций относительно объектов, на основе действий пользователя, равно как позволяет учитывать отзывы пользователя в ходе таких вычислений.
В еще одной возможной форме реализации первого аспекта, набор рекомендаций генерирует посредством сочетания двух моделей и множества данных клиента, где одна из моделей является моделью Совместной фильтрации и другая модель представляет собой Прогностическое моделирование, т.е. моделей, которые в сочетании одна с другой позволяют осуществлять высокоэффективную генерацию персонализированных рекомендаций относительно объектов.
В другой возможной форме реализации первого аспекта, указанный набор рекомендаций содержит первый набор рекомендаций, генерируемый посредством одной модели и множества данных клиентов, и второй набор рекомендаций, генерируемый с использованием другой модели, первого набора рекомендаций и множества, данных клиента, что позволяет улучшить первый набор рекомендаций.
В еще одной возможной форме реализации первого аспекта, процедура генерации второго набора рекомендаций содержит выбор и количественную оценку индивидуальных объектов из состава первого набора рекомендаций, что позволяет генерировать меньший по объему и/или более точный и правильный набор рекомендаций.
В еще одной возможной форме реализации первого аспекта, клиент конфигурирован для обновления каждой загруженной им путем скачивания модели посредством: вычисления обновленной модели с использованием загруженной при скачивании модели и локального множества данных клиента, загрузки обновленной модели на сервер, где эта обновленная модель используется для вычислений сервером новой обновленной модели, скачивания этой новой обновленной модели с сервера и вычисления по меньшей мере одной дальнейшей обновленной модели посредством указанной новой обновленной модели и с использованием локального множества данных клиента.
Клиент, имеющий эти признаки, позволяет реализовать процедуру компьютерного обучения, являющуюся эффективной, поскольку она имеет доступ к данным всех клиентов, соединенных с сервером, равно как безопасной, поскольку данные клиентов, относящиеся к индивидуальному клиенту остаются исключительно у самого этого клиента. Поскольку сервер, соединенный с клиентом, не должен собирать и хранить большие объемы данных клиентов, соответствующая процедура является эффективной с точки зрения затрат времени и стоимости.
В еще одной возможной форме реализации первого аспекта, клиент конфигурирован, по меньшей мере для одного обновления для каждой модели посредством: вычисления обновления для каждой загруженной при скачивании модели с использованием локального множества данных клиента, загрузки обновления на сервер, где это обновление используется для вычисления обновленной модели сервером, скачивания обновленной модели с сервера, вычисления нового обновления для обновленной модели с использованием локального множества данных клиента, вычисления по меньшей мере одной следующей обновленной модели посредством рассматриваемой обновленной модели, нового обновления и локального множества данных клиента.
Как отмечено выше, клиент, имеющий эти признаки, позволяет осуществлять процедуру компьютерного обучения, являющуюся как эффективной, так и безопасной. Поскольку клиенту не нужно скачивать с сервера или загружать на сервер полные модели, процедура является особенно эффективной.
В еще одной возможной форме реализации первого аспекта, процедура вычисления обновления содержит вычисление некой величины для каждой функции f(i,j), позволяющей вычислить величину, не привязанную к каким-либо персональным данным клиента.
В еще одной возможной форме реализации первого аспекта, клиент далее конфигурирован для генерации набора рекомендаций посредством дополнительно обновленной модели и локального множества данных клиента, что позволяет использовать настолько большое количество данных клиента, насколько это возможно.
Согласно второму аспекту, предложен сервер, адаптированный для помощи в генерации персонализированных рекомендаций относительно объектов для пользователя клиента в аппаратуре клиента, этот сервер конфигурирован для использования глобального множества объектов и по меньшей мере одной модели, этот сервер соединен с несколькими клиентами, где каждый клиент конфигурирован для скачивания модели (ей) и генерации обновленной модели (ей), сервер далее конфигурирован для: генерации новой обновленной модели (ей) с использование обновленных моделей или обновлений, загруженных на сервер по меньшей мере одним клиентом, и передачи новой обновленной модели (ей) нескольким клиентам, где новая обновленная модель (и) и локальное множество данных клиента, сохраняемое у клиента, и используются каждым клиентом (i), генерирующим персонализированные рекомендации относительно объектов.
Сервер, имеющий эти признаки, позволяет реализовать эффективную и безопасную генерацию персонализированных рекомендаций относительно объектов, поскольку некоторые вычисления, необходимые для генерации персонализированных рекомендаций относительно объектов, выполняют в аппаратуре клиента и некоторые данные, используемые для этих вычислений, хранятся в аппаратуре клиента.
В одной из возможных форм реализации второго аспекта, серверу назначают по меньшей мере одну модель прежде использования этой модели (ей), здесь операция назначения содержит выбор модели случайным образом или выбор заранее известной модели, что позволяет пользователю использовать новую модель или ранее уже использованную модель в качестве стартовой точки вычислений.
В еще одной возможной форме реализации второго аспекта, сервер конфигурирован для генерации новой обновленной модели (ей) посредством: определения нескольких клиентов, так что каждый найденный в результате такого определения клиент конфигурирован для вычисления обновленной модели (ей) с применением полученной в результате скачивания модели (ей) и локального множества данных клиента, и для загрузки этой обновленной модели (ей) на сервер, приема обновленной модели (ей), загружаемой по меньшей мере одним из указанных найденных клиентов, и вычисления новой обновленной модели путем усреднения принятой обновленной модели (ей).
Сервер, имеющий эти признаки, позволяет реализовать процедуру компьютерного обучения, которая является эффективной, поскольку она имеет доступ к данным всех клиентов, соединенных с этим сервером, равно как безопасной, поскольку данные клиентов, относящиеся к индивидуальному клиенту остаются исключительно у самого этого клиента. Поскольку сервер, соединенный с клиентом, не должен собирать и хранить большие объемы данных клиентов, соответствующая процедура является эффективной с точки зрения затрат времени и стоимости.
В следующей возможной форме реализации второго аспекта, сервер конфигурирован для генерации новой обновленной модели (ей) посредством: определения нескольких клиентов, так что каждый найденный в результате такого определения клиент конфигурирован для вычисления обновления для каждой модели (ей) с применением локального множества данных клиента, и для загрузки этого обновления (ий) на сервер, приема обновления (ий), загружаемого по меньшей мере одним из указанных найденных клиентов, и вычисления новой обновленной модели на основе рассматриваемой модели и агрегирования принятых обновлений.
Как отмечено выше, сервер, имеющий эти признаки, позволяет осуществлять процедуру компьютерного обучения, являющуюся как эффективной, так и безопасной. Поскольку клиенту не нужно скачивать с сервера или загружать на сервер полные модели, процедура является особенно эффективной.
Согласно третьему аспекту, предложена система компьютерного обучения типа клиент-сервер, адаптированная для генерации персонализированных рекомендаций относительно объектов для пользователя клиента, эта система клиент-сервер содержит несколько клиентов, описанных выше, и сервер, описанный выше. Система клиент-сервер, имеющая эти признаки, позволяет реализовать эффективную и безопасную генерацию персонализированных рекомендаций относительно объектов, поскольку некоторые вычисления, необходимые для генерации персонализированных рекомендаций относительно объектов, выполняют в аппаратуре клиента и некоторые данные, используемые для этих вычислений, хранятся в аппаратуре клиента.
Эти и другие аспекты станут очевидными из описываемых ниже вариантов.
Краткое описание чертежей
В последующей подробной части настоящего описания аспекты, варианты и реализации будут рассмотрены более подробно со ссылками на примеры вариантов, показанные на чертежах, на которых:
Фиг. 1 представляет упрощенный чертеж системы клиент-сервер согласно одному из вариантов настоящего изобретения.
Фиг. 2 представляет упрощенный чертеж системы клиент-сервер согласно другому варианту настоящего изобретения.
Подробное описание
Как отмечено в разделе предпосылок к созданию изобретения, система клиент-сервер представляет собой структуру, в которой задачи, выполняемые системой, распределяются между провайдером сервиса, т.е. сервером, и потребителями сервиса, т.е. клиентами, такими как мобильные телефоны или планшеты. Сервис, который должен быть предоставлен, может представлять собой видеосервис, где все данные пользователей, ассоциированные с указанным видеосервисом, хранятся на сервере.
Известный в технике способ построения модели содержит передачу персональных данных пользователя от клиента центральному серверу, где обрабатывают данные, строят модели, генерируют результаты и передают их назад клиенту. Эти результаты могут представлять собой, например, оценку, которая может быть использована для генерации рекомендаций относительно одного или нескольких конкретных объектов, выбранных из большего множества объектов, где эти конкретные объекты прогнозируют с использованием одной или нескольких моделей так, чтобы эти объекты представляли интерес для пользователя клиента. Один из объектов представляет собой, например, видео, доступное для просмотра, приложение, доступное для скачивания, или физический объект, такой как предмет одежды, доступный для приобретения.
Число клиентов, равно как и число доступных объектов, обычно является очень большим, так что эти клиенты и объекты предпочтительно собраны в матрице клиент-объект, имеющей вид , где N – максимальное число клиентов i, соединенных с сервером, и M – максимальное число объектов j, доступных на сервере.
Если число N клиентов может составлять несколько миллионов, а число M объектов может составлять несколько тысяч, матрица R клиент-объект может быть разреженной матрицей, в которой множество элементов rij не определено. Одной из целей настоящего изобретения является замена таких неопределенных элементов их оценками .
В отличие от известной техники и благодаря технологическим усовершенствованиям, таким как общее увеличение вычислительных мощностей клиентов, настоящее изобретение генерирует такие оценки, по-прежнему сохраняя все персональные данные пользователей в аппаратуре клиента, т.е. персональные данные пользователей не используются и не сохраняются на центральном сервере. Следовательно, объем данных, которые нужно передать серверу и хранить в его аппаратуре, уменьшается, так что можно избежать проблем, связанных со сбором данных и охраной персональных данных пользователей. Указанные элементы rij, равно как и оценки используются для генерации персонализированных рекомендаций относительно объектов.
Указанное выше достигается, частично, с использованием Совместной фильтрации. Вкратце, в соответствии с принципом Совместной фильтрации модель строится на основе поведения пользователя в прошлом, такого как объекты, ранее приобретенные или выбранные пользователем, и/или на основе числовых рейтингов, присвоенных этим объектам пользователем, равно как аналогичных решений других пользователей. Эта модель затем используется для прогнозирования, какие другие объекты могут представлять интерес для рассматриваемого пользователя. Модель Совместной фильтрации представляет собой одну из наиболее широко используемых моделей для генерации рекомендаций для пользователя, либо независимо, либо в сочетании с моделями других типов, такими как, например, Прогностическое моделирование. Модель Прогностического моделирования используется, предпочтительно, для применения прогностической числовой оценки, такой как рейтинг, к указанным выше оценкам .
В известной технике эти модели требуют сбора всех данных в централизованном сервере для использования при построении модели.
Как отмечено ранее, число клиентов, равно как и число объектов, обычно очень велико, вследствие чего сочетание моделей может быть использовано для формирования релевантных персонализированных рекомендаций относительно объектов только для пользователя конкретного клиента i. В качестве одного из примеров, показанного также на Фиг. 2, модель A1 Совместной фильтрации может быть использована для генерации первого набора рекомендаций R1ij относительно объектов, так называемого набора-кандидата, содержащего некоторые, если не все, указанные выше элементы rij и оценки , после чего модель A2 Прогностического моделирования может быть использована для создания окончательных, полезных рекомендаций R2ij путем числовой оценки первоначально рекомендованных объектов R1ij и сортировки их по весам.
Оценки могут быть основаны на явной и/или неявной обратной связи не только от конкретного клиента, но и от нескольких клиентов, в одном из вариантов от всех возможных клиентов. Процедура неявной обратной связи содержит действия, предпринимаемые пользователем, например, скачивание приложения. Явная обратная связь содержит отзывы пользователя об объектах. Совместная фильтрация использует только эти два типа данных, тогда как отмеченное выше Прогностическое моделирование может использовать дополнительные типы явной обратной связи, такие как демографические данные, данные о поведении, данные относительно другой активности пользователя, такие как то, где и когда происходило взаимодействие с объектом и какого типа устройство использовалось, а также персональные данные пользователя, такие как имя и данные логина.
Основой всех систем генерации рекомендаций с использованием Совместной фильтрации является указанные выше матрица клиент-сервер. Для простоты следующее ниже описание будет иногда приравнивать клиента i к его пользователю и объект j к приложению, доступному для скачивания.
В модели Совместной фильтрации величину rij выводят из явной обратной связи, такой как отзывы пользователей, например, .
В случае неявной обратной связи, такой как, например, скачивание пользователем какого-либо приложения, элемент rij=1, когда пользователь/клиент i скачивает приложение/объект j, где 1≤i≤N и 1≤j≤M, тогда как в других случаях элемент rij не определен.
Совместная фильтрация используется для замены неопределенных элементов rij их оценками , например, посредством Факторизации матрицы.
Процедура Факторизации матрицы содержит создание вектора множителей клиента , для каждого клиента i, и вектора множителей объекта , , для каждого объекта j. Здесь k – число множителей, которое обычно намного ниже, чем и M, и N. Тогда оценка неопределенного элемента rij определяется формулой .
Первая модель A1 представляет собой матрицу множителей, содержащую несколько векторов (xi) множителей клиентов, а вторая модель A2 представляет собой матрицу множителей, содержащую несколько векторов (yj) множителей объектов.
Векторы множителей клиентов собраны в матрицу , где X=(x1,x2,…,xi,…,xM), и векторы множителей объектов собраны в матрицу , где Y=(y1, y2,…,yj,..,yN). Другими словами, матрица R клиент-сервер также определена формулой .
В случае явной обратной связи вводят набор двоичных переменных pij для индикации, имеет ли пользователь/клиент i приложение/объект j с присвоенным рейтингом, где . Величина pij>0 означает, что приложение/объект j имеет присвоенный рейтинг, тогда как величина pij=0 означает, что пользователь не имеет приложения/клиента j с присвоенным рейтингом или просто не знает, что приложение/объект j существует.
В случае неявной обратной связи вводят набор двоичных переменных pij для индикации предпочтений пользователя/клиента i относительно приложения/объекта j, где . Величина pij=0 может иметь множество интерпретаций, включая то, что пользователь/клиент i не заинтересован в приложении/объекте j или не осведомлен о существовании этого приложения/объекта j. Для учета этого, введено доверительное значение cij, определяемое как , где α>0. Проблема неявной обратной связи, другими словами, состоит, в отличие от стандартной проблемы явной обратной связи, в том, что здесь нужно учитывать доверительное значение cij.
Любые обновления должны быть сделаны для всех клиентов i и для всех объектов j, вместо того, что делать это только для тех клиентов i, для которых скачивают объекты j.
В известных в технике моделях Совместной фильтрации вектор xi обновляют посредством уравнения , где Y, , представляет собой описанную выше матрицу векторов множителей объектов, Ci представляет собой диагональную матрицу , I представляет собой единичную матрицу и представляет собой вектор двоичных переменных предпочтений для клиента i.
Аналогично, величину yj обновляют посредством уравнения где X, , представляет собой указанную выше матрицу векторов множителей клиентов, Cj обозначает диагональную матрицу с , и представляет собой вектор двоичных переменных предпочтений для клиента i.
Резюмируя, описанный выше известный в технике способ использует матрицу Y для вычисления матрицы X, и матрицу X для вычисления матрицы Y, повторяя и чередуясь между указанными двумя уравнениями, по меньшей мере до тех пор, пока не будет удовлетворен подходящий критерий сходимости. Критерий сходимости представляет собой заданную предельную величину, например, 1 %. Параметры C и p, основанные на данных пользователя/клиента, используются для вычисления обеих матриц X и Y, для чего все данные пользователей должны находиться в том же месте, как и матрицы X и Y, т.е. на сервере. Это называется методом чередующихся наименьших квадратов (ALS (Alternating Least Squares)) для Совместной фильтрации и часто используется в известной технике.
Вариант настоящего изобретения, показанный упрощенно на Фиг. 1, содержит адаптацию способа ALS, так что другой подход используется для вычисления матрицы Y, каковая адаптация позволяет распределять вычисления клиенту, избегая тем самым необходимости передавать данные клиента назад серверу. Все векторы множителей объектов располагаются на сервере, обновляются на сервере и затем распределяются каждому клиенту i. Все векторы множителей клиентов остаются в аппаратуре клиента i, обновляются в аппаратуре клиента с использованием локальных данных ui клиента и векторов множителей объектов, полученных от сервера. Эти обновления вычисляют на основе объекта j в аппаратуре каждого клиента i и передают серверу, где их агрегируют и обновляют векторы yj.
Все величины, необходимые для вычисления векторов , доступны в аппаратуре клиента i, до тех пор, пока текущий набор векторов множителей объектов , был скачан в аппаратуру клиента i, Y представляет собой матрицу векторов множителей, Ci представляет собой диагональную матрицу с , λ обозначает показатель регулярности, I представляет собой единичную матрицу и представляет собой вектор двоичных переменных предпочтений для клиента i. Кроме того, все эти величины независимы от соответствующих величин для какого-либо другого клиента i. Поэтому, результат, соответствующий первому этапу алгоритма ALS, может быть вычислен в аппаратуре каждого индивидуального клиента i без ссылок на какого-либо другого клиента.
Однако при использовании способа ALS для вычисления векторов yj, , требуется матрица X векторов множителей клиентов, вследствие чего это обновление необходимо производить на сервере, где доступны все данные клиентов. Вместо прямого вычисления обновления векторов yj, как это делается согласно способу ALS, настоящее изобретение применяет способ градиентного спуска для вычисления обновленных векторов yj на сервере. Более конкретно, настоящее изобретение вычисляет обновленные векторы yj, т.е. обновленную матрицу Y, посредством уравнения , где γ представляет собой функцию усиления и производную ∂J/∂yj вычисляют посредством уравнения .
Приведенное выше уравнение для происходит из целевой функции J, , где λ представляет собой показатель регулярности. Целевую функцию J минимизируют путем чередования вычисления матрицы X векторов множителей клиентов и матрицы Y векторов множителей объектов. Первый этап минимизации целевой функции J состоит в дифференцировании J по вектору xi для всех клиентов i и по вектору yj для всех объектов j, по формулам ∂J/∂xi и ∂J/∂yj.
Первоначальную стартовую величину вектора xi вычисляют прямо посредством , , как в способе ALS, что возможно, поскольку, как отмечено выше, необходимые для этого величины доступны в аппаратуре клиента i.
Производная ∂J/∂yj, с другой стороны, содержит компонент, представляющий собой сумму по всем клиентам i, такое суммирование определено как f(i,j). Функцию f(i,j) вычисляют в аппаратуре клиента на основе только данных клиента по формуле , т.е. функцию f(i,j) вычисляют для каждого клиента i, независимо от всех других клиентов.
Каждый клиент i сообщает назад, серверу, оценку величины функции f(i,j), вычисленную для каждого объекта j, после чего в аппаратуре сервера суммируют все оценки клиентов по формуле и затем применяют к формуле .
Настоящее изобретение относится, другими словами, к настройке по меньшей мере одной модели, например, модели A1 Совместной фильтрации без необходимости передать данные пользователя от клиента к серверу и, в то же время, к использованию модели A1 для вычисления оценок для неопределенных элементов матрицы R клиент-сервер, эти оценки должны быть использованы для генерации персонализированных рекомендаций. Как показано на Фиг. 1, модель A1 компьютерного обучения первоначально расположена на централизованном сервере и распределена для каждого устройства пользователя/клиента i. Первоначальную модель A1 обновляют, в аппаратуре каждого клиента i, с использованием модели A1 и данных ui клиента, расположенных в аппаратуре клиента. Обновления dA1i, или полные обновленные модели A12i, генерируемые в каждом устройстве пользователя/клиенте, передают назад серверу, где эти модели агрегируют по всем найденным клиентам для генерации составляющей A12 новой модели, которую в свою очередь скачивают в аппаратуру клиентов i и обновляют для создания модели A13i.
Под моделью здесь понимают либо полную модель, либо часть модели. В последнем случае, модель содержит по меньшей мере две части A1, A2. Одну индивидуальную часть A1 назначают клиенту, и одну часть A2 скачивают в аппаратуру клиента i от сервера. Индивидуальную часть A1i обновляют посредством полученной путем скачивания с сервера части и элемента локальных данных ui клиента, результатом чего является обновленная индивидуальная часть A12i. Индивидуальную величину для каждого объекта j вычисляют в аппаратуре клиента с использованием скачиваемой от сервера части A2, обновленной индивидуальной части A12i и элемента локальных данных ui клиента. Результат вычисления этой величины загружают в аппаратуру сервера от каждого клиента, так что серверная часть может быть обновлена посредством агрегирования этих вычисленных величин, образуя обновленную серверную часть A22. Обновленную серверную часть A22 скачивают клиентам, после чего еще одну следующую обновленную часть A13i вычисляют в аппаратуре клиента посредством полученной в результате скачивания серверной части A22 и элемента локальных данных ui клиента. После этого по меньшей мере один неопределенный элемент матрицы R клиент-объект может быть обновлен путем замены этого неопределенного элемента его оценкой посредством следующей обновленной индивидуальной части A13i и обновленной серверной части A22.
Модель A13i, сохраненная локально в аппаратуре клиента i, и данные ui клиента используются для вычисления оценок, замещающих неопределенные элементы матрицы R клиент-объект. Следовательно, данные ui клиента никогда не покидают этого клиента i. Обновленная матрица R клиент-объект, другими словами, используется для генерации первого набора рекомендаций R1ij.
Следующая модель, такая как Прогностическое моделирование, используется для выбора, повторной количественной оценки, сортировки и последующего сужения первого набора рекомендаций R1ij до второго набора рекомендаций R2ij.
Один аспект настоящего изобретения относится к клиенту, адаптированному для генерации персонализированных рекомендаций относительно объектов для пользователя клиента i. Клиент соединен с сервером с использованием глобального множества объектов j1,…,jM и по меньшей мере одной из моделей A1,…,AK. Клиент i конфигурирован для использования по меньшей мере одной из моделей A1,…,AK, скачиваемой с сервера и для генерации набора рекомендаций Rij, содержащего по меньшей мере один объект jp из совокупности объектов j1,…,jM, по меньшей мере одной из скачиваемых моделей A1,…,AK и локального множества данных ui клиента, сохраненных у клиента i, как показано на Фиг. 1.
Совокупность моделей A1,…,AK содержит Совместную фильтрацию, Прогностическое моделирование и/или Модели глубокого обучения. Множество данных ui клиента содержит неявную обратную связь от пользователя и/или явную обратную связь от пользователя.
Набор рекомендаций Rij генерируют посредством сочетания двух моделей A1, A2 и множества данных ui клиента, где одна модель A1 представляет собой модель Совместной фильтрации, а другая модель A2 представляет Прогностическое моделирование.
Набор рекомендаций Rij содержит первый набор рекомендаций R1ij, генерируемый посредством одной модели A1, A12, A13 и множества данных ui клиента, и второй набор рекомендаций R2ij, генерируемый посредством другой модели A2, A22, первого набора рекомендаций R1ij и множества данных ui клиента. Это упрощенно показано на Фиг. 2.
Процедура генерации второго набора рекомендаций R2ij содержит выбор и количественную оценку индивидуальных объектов jp из первого набора рекомендаций R1ij.
Клиент i может быть конфигурирован для обновления каждой полученной посредством скачивания модели путем выполнения следующих этапов, показанных упрощенно на Фиг. 1 и 2:
- вычисление обновленной модели A12i,…,AK2i посредством полученной путем скачивания модели A1,…,AK и локального множества данных ui клиента,
- загрузка обновленной модели A12i,…,AK2i на сервер, где обновленная модель A12i,…,AK2i используется для сервера, вычисляющего новую обновленную модель A12,…,AK2,
- скачивание новой обновленной модели A12,…,AK2 с сервера,
- вычисление по меньшей мере одной следующей обновленной модели A13i,…,AK3i посредством новой обновленной модели A12,…,AK2 и локального множества данных ui клиента.
Модель A может быть обновлена, в аппаратуре клиента, как указано на этапах A и D выше. Обновление осуществляется, когда модель представляет собой модель Совместной фильтрации, посредством уравнения , где p(i) представляет собой вектор двоичных переменных предпочтений для клиента i, Ri представляет собой вектор известных входных данных для клиента i, I обозначает единичную матрицу и λ обозначает показатель регулярности.
Модель A может быть обновлена на сервере, как отмечено на этапе B выше. Это обновление выполняют путем усреднения обновленных моделей, которые были загружены на сервер, также на этапе B.
Клиент (i) может быть далее конфигурирован для вычисления по меньшей мере одного обновления для каждой модели посредством следующих этапов:
- вычисляет обновление dA1i,…,dAKi для каждой полученной путем скачивания модели A1,…,AK посредством локального множества данных ui клиента,
- загружает обновления dA1i,…,dAKi на сервер, где это обновление dA1i,…,dAKi используется для вычисления сервером обновленной модели A12,…,AK2,
- скачивание обновленной модели A12,…,AK2 с сервера,
- вычисление нового обновления dA12i,…,dAK2i для обновленной модели A12,…,AK2 посредством локального множества данных ui клиента,
- вычисление по меньшей мере одной следующей обновленной модели A13i,…,AK3i посредством обновленной модели A12,…,AK2, нового обновления dA12i,…,dAK2i и локального множества данных ui клиента.
Процедура вычисления обновлений dA1i1,…,dAKi, dA12i1,…,dAK2i содержит вычисление величины для каждого объекта j1,…,jM посредством функции f(i,j).
Модель A может быть обновлена в аппаратуре клиента, как отмечено на этапах A, D и E выше. Это обновление, когда модель представляет собой модель Совместной фильтрации, осуществляют посредством уравнения , где p(i) представляет собой вектор двоичных переменных предпочтений для клиента i, Ri представляет собой вектор известных входных данных для клиента i, I обозначает единичную матрицу и λ обозначает показатель регулярности.
Модель A может быть обновлена на сервере, как отмечено на этапе B выше. Обновление выполняется посредством уравнения , где γ представляет собой функцию усиления. Каждая модель A, например, A1, имеет целевую функцию J1, которую необходимо минимизировать по параметру y модели. Производную получают в виде суммы dA1i, т.е. величин dA1, предоставляемых клиентами i1-iN.
Клиент i далее конфигурирован для генерации набора рекомендаций Rij посредством следующей обновленной модели A13i,…,AK3i и локального множества клиента ui данных.
Следующий аспект настоящего изобретения относится к серверу, адаптированного для помощи в генерации персонализированных рекомендаций относительно объектов для пользователя клиента i, в аппаратуре клиента i, сервер конфигурирован для использования глобального множества объектов j1,…,jM и по меньшей мере одной модели A1,…,AK. Сервер соединен с несколькими клиентами i1,…,iN, каждый клиент i конфигурирован для скачивания модели (ей) A1,…,AK, и генерации обновленной модели (ей) A12i,…,AK2i или обновлений dA1i,…,dAKi для модели (ей) A1,…,AK. Сервер далее конфигурирован для: генерации новой обновленной модели (ей) A12,…,AK2 посредством обновленных моделей A12i,…,AK2i или обновлений dA1i,…,dAKi, загруженных по меньшей мере одним из клиентов i1,…,iN, и передачи новой обновленной модели (ей) A12,…,AK2 нескольким клиентам i1,…,iN. Эта новая обновленная модель (и) A12,…,AK2 и локальное множество клиента ui данных, сохраненное в аппаратуре клиента i, используют для каждого клиента i, генерирующего персонализированные рекомендации относительно объектов. Это упрощенно показано на Фиг. 1 и 2.
Серверу назначают по меньшей мере одну из моделей A1,…,AK прежде использования модели (ей), процедура назначения содержит случайный выбор модели или выбор ранее известной модели.
Сервер может быть конфигурирован для генерации новой обновленной модели (ей) посредством следующих этапов:
- определение нескольких клиентов i1,…,iN, где каждый найденный клиент i конфигурирован для вычисления обновленной модели (ей) A12i,…,AK2i посредством полученной путем скачивания модели (ей) A1,…,AK и локального множества данных ui клиента, и для загрузки обновленной модели (ей) A12i,…,AK2i на сервер,
- прием обновленной модели (ей) A12i,…,AK2i, загруженной по меньшей мере одним из найденных клиентов i1,…,iN,
- вычисление новой обновленной модели A12,…,AK2 путем усреднения принятых обновленных моделей A12i,…,AK2i.
Сервер может быть далее конфигурирован для генерации новой обновленной модели (ей) посредством выполнения следующих этапов:
- определение нескольких клиентов i1,…,iN, где каждый найденный клиент i конфигурирован для вычисления обновления dA1i,…,dAKi для каждой модели A1,…,AK посредством локального множества данных ui клиента и для загрузки обновления (ий) dA1i,…,dAKi на сервер,
- прием обновления (ий) dA1i,…,dAKi, загруженного по меньшей мере одним из найденных клиентов i1,…,iN,
- вычисление новой обновленной модели A12,…,AK2 посредством модели A1,…,AK и результата агрегирования принятых обновлений dA1i,…,dAKi.
Модель A может быть обновлена на сервере, как указано на этапе C выше. Обновление выполняют посредством уравнения , где γ представляет собой функцию усиления.
Еще один аспект настоящего изобретения относится к системе компьютерного обучения клиент-сервер, адаптированной для генерации персонализированных рекомендаций относительно объектов, где эти рекомендации направлены прямо на пользователя клиента i. Эта система содержит указанный выше сервер и несколько указанных выше клиентов.
На Фиг. 1 представлена упрощенная схема потоков информации в системе клиент-сервер, адаптированной для обновления матрицы R клиент-объект. Величину функции f(i,j) для объекта j вычисляют в аппаратуре клиента i с использованием локальных данных ui пользователя. Величины функции f(i,j) для нескольких объектов j, учитываемых в обновленной модели A12i, передают назад серверу S от нескольких клиентов и агрегируют, после чего первоначальную модель A1 обновляют до модели A12. Следовательно, не нужно никакие локальные данные ui клиента передавать от клиента i для обновленной модели A1. Затем эту же процедуру выполняют по меньшей мере для модели A12, получая в результате модель A13i в аппаратуре каждого клиента i, так что эта модель используется для генерации персонализированных рекомендаций относительно объектов, направленную на пользователя клиента i.
Эта система содержит один сервер S и N клиентов i. Для простоты на Фиг. 1 показаны только два клиента, а именно i1 и iN, т.е. iN соответствует i2. Клиент i1 использует локальные данные ui клиента, т.е. u1, равно как полученную в результате скачивания модель A1. Аналогично, клиент i2 использует локальные данные u2 пользователя, равно как A1.
Фиг. 2 аналогично показывает потоки информации в системе клиент-сервер, содержащей один сервер S и одного клиента i1 и использующей две модели A1, A2 для генерации персонализированных рекомендаций относительно объектов.
Разнообразные аспекты и реализации были здесь описаны в сочетании с различными вариантами. Однако специалисты в рассматриваемой области в ходе практического осуществления предмета изобретения могут понять и применить и другие вариации описываемых вариантов на основе изучения чертежей, настоящего описания и прилагаемой Формулы изобретения. В Формуле изобретения слово «содержащий» не исключает другие элементы и этапы, а неопределенный артикль “a” или “an” не исключает множественного числа. Простой факт, что ссылки на некоторые меры содержатся во взаимно разных зависимых пунктах Формулы изобретения, не означает, что сочетания этих мер не могут быть использованы с успехом.
Используемые в Формуле изобретения позиционные обозначения не следует толковать в качестве ограничений объема изобретения.
Claims (40)
1. Клиентское устройство, адаптированное для генерации персонализированных рекомендаций относительно объектов для пользователя этого клиентского устройства (i),
указанное клиентское устройство (i) соединено с серверным устройством, использующим глобальное множество объектов (j1,…,jM) и по меньшей мере одну модель (A1,…,AK),
указанное клиентское устройство (i) конфигурировано для:
использования по меньшей мере одной модели (A1,…,AK), скачиваемой с указанного серверного устройства, и
генерации набора рекомендаций (Rij), содержащего по меньшей мере один объект (jp) из указанных объектов (j1,…,jM), посредством по меньшей мере одной полученной путем скачивания модели(ей) (A1,…,AK) и локального множества данных клиента (ui), сохраняемого в аппаратуре указанного клиентского устройства (i), в котором указанное локальное множество данных клиента (ui) содержит неявную обратную связь от пользователя и/или явную обратную связь от пользователя, и указанное клиентское устройство (i) не отправляет множество данных клиента (ui) на сервер, и
генерации обновленной модели (A12i,…,AK2i) или по меньшей мере одного обновления (dA1i,…,dAKi) для каждой загруженной модели.
2. Клиентское устройство по п. 1, в котором указанная модель(и) (A1,…,AK) представляет собой модель Совместной фильтрации, модель Прогностического моделирования и/или модели Глубокого обучения.
3. Клиентское устройство по какому-либо одному из предшествующих пунктов, в котором указанный набор рекомендаций (Rij) генерируют посредством сочетания двух моделей (A1, A2) и указанного множества данных клиента (ui), где одна из моделей (A1) представляет собой модель Совместной фильтрации, а другая модель (A2) представляет собой модель Прогностического моделирования.
4. Клиентское устройство по какому-либо одному из предшествующих пунктов, в котором указанный набор рекомендаций (Rij) содержит первый набор рекомендаций (R1ij), генерируемый посредством одной из моделей (A1, A12, A13) и указанного множества данных клиента (ui), и второй набор рекомендаций (R2ij), генерируемый посредством следующей модели (A2, A22), указанного первого набора рекомендаций (R1ij), и указанного множества данных клиента (ui).
5. Клиентское устройство по п. 4, в котором процедура генерации второго набора рекомендаций (R2ij) содержит выбор и количественную оценку индивидуальных объектов (jp) из состава первого набора рекомендаций (R1ij).
6. Клиентское устройство по какому-либо одному из предшествующих пунктов, в котором клиентское устройство (i) конфигурировано для обновления каждой полученной путем скачивания модели посредством следующих этапов:
- вычисление указанной обновленной модели (A12i,…,AK2i) посредством указанной полученной путем скачивания модели (A1,…,AK) и локального множества данных клиента (ui),
- загрузка обновленной модели (A12i,…,AK2i) на серверное устройство, где обновленная модель (A12i,…,AK2i) используется для вычисления серверным устройством новой обновленной модели (A12,…,AK2),
- скачивание новой обновленной модели (A12,…,AK2) с серверного устройства,
- вычисление по меньшей мере одной следующей обновленной модели (A13i,…,AK3i) посредством указанной новой обновленной модели (A12,…,AK2) и указанного локального множества данных клиента (ui).
7. Клиентское устройство по какому-либо одному из пп. 1–5, в котором клиентское устройство (i) конфигурировано для генерации указанного обновления (dA1i,…,dAKi) для каждой загруженной модели посредством следующих этапов:
- вычисление указанного обновления (dA1i,…,dAKi) для каждой получаемой путем скачивания модели (A1,…,AK) посредством локального множества данных клиента (ui),
- загрузка этого обновления (dA1i,…,dAKi) на серверное устройство, где указанное обновление (dA1i,…,dAKi) используется для вычисления серверным устройством обновленной модели (A12,…,AK2),
- скачивание обновления модели (A12,…,AK2) с серверного устройства,
- вычисление нового обновления (dA12i,…,dAK2i) для указанной обновленной модели (A12,…,AK2) посредством локального множества данных клиента (ui),
- вычисление по меньшей мере одной следующей обновленной модели (A13i,…,AK3i) посредством указанной обновленной модели (A12,…,AK2), указанной новой обновленной модели (dA12i,…,dAK2i) и указанного локального множества данных клиента (ui).
8. Клиентское устройство по п. 7, в котором процедура вычисления обновления (dA1i1,…,dAKi, dA12i1,…,dAK2i) содержит вычисление некой величины для каждого объекта (j1,…,jM) посредством функции f(i,j).
9. Клиентское устройство по какому-либо одному из пп. 6–8, в котором это клиентское устройство (i) дополнительно конфигурировано для генерации набора рекомендаций (Rij) посредством указанной следующей обновленной модели (A13i,…,AK3i) и указанного локального множества данных клиента (ui).
10. Серверное устройство, адаптированное для помощи в генерации персонализированных рекомендаций относительно объектов для пользователя клиентского устройства (i), в клиентском устройстве (i),
указанное серверное устройство конфигурировано для использования глобального множества объектов (j1,…,jM) и по меньшей мере одной модели (A1,…,AK),
это серверное устройство соединено с несколькими клиентскими устройствами (i1,…,iN), каждое клиентское устройство (i) конфигурировано для скачивания указанной модели(ей) (A1,…,AK) и генерации обновленной модели(ей) (A12i,…,AK2i) или обновлений (dA1i,…,dAKi) для модели(ей) (A1,…,AK),
указанное серверное устройство дополнительно конфигурировано для:
генерации новой обновленной модели(ей) (A12,…,AK2) посредством обновленных моделей (A12i,…,AK2i) или обновлений (dA1i,…,dAKi), загруженных по меньшей мере одним из клиентских устройств (i1,…,iN), и
передачи этой новой обновленной модели(ей) (A12,…,AK2) указанным нескольким клиентским устройствам (i1,…,iN),
в которых эту новую обновленную модель(и) (A12,…,AK2) и локальное множество данных клиента (ui), сохраненное в клиентском устройстве (i), используют для каждого клиентского устройства (i), генерирующего персонализированные рекомендации относительно объектов, указанное локальное множество данных клиента (ui) содержит неявную обратную связь от пользователя и/или явную обратную связь от пользователя, и указанное клиентское устройство (i) не отправляет множество данных клиента (ui) на сервер.
11. Серверное устройство по п. 10, в котором этому серверному устройству назначают по меньшей мере одну модель (A1,…,AK) перед использованием этой модели(ей), где операция такого назначения содержит выбор модели случайным образом или выбор ранее известной модели.
12. Серверное устройство по п. 10 или 11, в котором это серверное устройство конфигурировано для генерации указанной новой обновленной модели(ей) посредством следующих этапов:
- определение нескольких клиентских устройств (i1,…,iN), где каждое определенное клиентское устройство (i) конфигурировано для вычисления обновленной модели(ей) (A12i,…,AK2i) посредством полученной в результате скачивания модели(ей) (A1,…,AK) и локального множества данных клиента (ui), и для загрузки обновленной модели(ей) (A12i,…,AK2i) на серверное устройство,
- прием обновленной модели(ей) (A12i,…,AK2i), загруженной по меньшей мере одним из определенных клиентских устройств (i1,…,iN),
- вычисление указанной новой обновленной модели (A12,…,AK2) посредством усреднения принятой обновленной модели(ей) (A12i,…,AK2i).
13. Серверное устройство по п. 10 или 11, в котором это серверное устройство конфигурировано для генерации указанной новой обновленной модели(ей) посредством следующих этапов:
- определение нескольких клиентских устройств (i1,…,iN), где каждое определенное клиентское устройство (i) конфигурировано для вычисления обновления (dA1i,…,dAKi) для каждой модели (A1,…,AK) посредством локального множества данных клиента (ui), и для загрузки этого обновления(ий) (dA1i,…,dAKi) на серверное устройство,
- прием указанного обновления(ий) (dA1i,…,dAKi) загруженного по меньшей мере одним из определенных клиентских устройств (i1,…,iN),
- вычисление новой обновленной модели (A12,…,AK2) посредством указанной модели (A1,…,AK) и результата агрегирования принятых обновлений (dA1i,…,dAKi).
14. Система клиент-сервер, адаптированная для генерации персонализированных рекомендаций относительно объектов для пользователя клиентского устройства (i), эта система клиент-сервер содержит несколько клиентских устройств по какому-либо одному из пп. 1–9 и серверное устройство по какому-либо одному из пп. 10–13.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2017/084491 WO2019120578A1 (en) | 2017-12-22 | 2017-12-22 | Client, server, and client-server system adapted for generating personalized recommendations |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2763530C1 true RU2763530C1 (ru) | 2021-12-30 |
Family
ID=60935863
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2020122720A RU2763530C1 (ru) | 2017-12-22 | 2017-12-22 | Клиент, сервер и система клиент-сервер, адаптированные для генерации персонализированных рекомендаций |
Country Status (6)
Country | Link |
---|---|
US (1) | US20200342358A1 (ru) |
EP (1) | EP3698308A1 (ru) |
JP (1) | JP6985518B2 (ru) |
CN (1) | CN111492391A (ru) |
RU (1) | RU2763530C1 (ru) |
WO (1) | WO2019120578A1 (ru) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6699764B1 (ja) * | 2019-01-16 | 2020-05-27 | 株式会社富士通ゼネラル | 空気調和システム |
US11086754B2 (en) * | 2019-07-02 | 2021-08-10 | International Business Machines Corporation | Automated feedback-based application optimization |
KR20210086008A (ko) | 2019-12-31 | 2021-07-08 | 삼성전자주식회사 | 컨텐츠 추천 모델을 개인화하는 방법 및 장치 |
WO2021185428A1 (en) * | 2020-03-16 | 2021-09-23 | Huawei Technologies Co., Ltd. | Enabling generation of personalized recommendations |
WO2021185427A1 (en) * | 2020-03-16 | 2021-09-23 | Huawei Technologies Co., Ltd. | Generation of personalized recommendations |
CN113536097B (zh) * | 2020-04-14 | 2024-03-29 | 华为技术有限公司 | 基于自动特征分组的推荐方法及装置 |
JP7545297B2 (ja) | 2020-11-09 | 2024-09-04 | 株式会社Jsol | モデルのデータ提供方法、モデルのデータ提供システム、及びコンピュータプログラム |
CN112733181B (zh) * | 2020-12-18 | 2023-09-15 | 平安科技(深圳)有限公司 | 一种产品推荐方法、系统、计算机设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090307296A1 (en) * | 2008-06-04 | 2009-12-10 | Samsung Electronics Co., Ltd. | Method for anonymous collaborative filtering using matrix factorization |
US20120030159A1 (en) * | 2010-07-30 | 2012-02-02 | Gravity Research & Development Kft. | Recommender Systems and Methods |
US20140129500A1 (en) * | 2012-11-07 | 2014-05-08 | Microsoft Corporation | Efficient Modeling System |
US20170017649A1 (en) * | 2015-07-14 | 2017-01-19 | Verizon Patent And Licensing Inc. | Techniques for providing a user with content recommendations |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7475027B2 (en) * | 2003-02-06 | 2009-01-06 | Mitsubishi Electric Research Laboratories, Inc. | On-line recommender system |
JP4240096B2 (ja) * | 2006-09-21 | 2009-03-18 | ソニー株式会社 | 情報処理装置および方法、プログラム並びに記録媒体 |
US20110060738A1 (en) * | 2009-09-08 | 2011-03-10 | Apple Inc. | Media item clustering based on similarity data |
HUP1000408A2 (en) * | 2010-07-30 | 2012-03-28 | Gravity Res & Dev Kft | Recommender systems and methods |
JP2013228947A (ja) * | 2012-04-26 | 2013-11-07 | Sony Corp | 端末装置、情報処理装置、推薦システム、情報処理方法、及びプログラム |
US10261938B1 (en) * | 2012-08-31 | 2019-04-16 | Amazon Technologies, Inc. | Content preloading using predictive models |
US9691035B1 (en) * | 2014-04-14 | 2017-06-27 | Amazon Technologies, Inc. | Real-time updates to item recommendation models based on matrix factorization |
CN107113466A (zh) * | 2014-06-12 | 2017-08-29 | 慧与发展有限责任合伙企业 | 向用户推荐项目 |
US10223727B2 (en) * | 2014-10-20 | 2019-03-05 | Oath Inc. | E-commerce recommendation system and method |
US20170061286A1 (en) * | 2015-08-27 | 2017-03-02 | Skytree, Inc. | Supervised Learning Based Recommendation System |
US10795900B1 (en) * | 2015-11-11 | 2020-10-06 | Twitter, Inc. | Real time analyses using common features |
JP6679415B2 (ja) * | 2016-05-30 | 2020-04-15 | ヤフー株式会社 | 選択装置、選択方法および選択プログラム |
US20170372232A1 (en) * | 2016-06-27 | 2017-12-28 | Purepredictive, Inc. | Data quality detection and compensation for machine learning |
-
2017
- 2017-12-22 JP JP2020534387A patent/JP6985518B2/ja active Active
- 2017-12-22 EP EP17825542.8A patent/EP3698308A1/en active Pending
- 2017-12-22 CN CN201780097874.5A patent/CN111492391A/zh active Pending
- 2017-12-22 WO PCT/EP2017/084491 patent/WO2019120578A1/en unknown
- 2017-12-22 US US16/956,258 patent/US20200342358A1/en not_active Abandoned
- 2017-12-22 RU RU2020122720A patent/RU2763530C1/ru active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090307296A1 (en) * | 2008-06-04 | 2009-12-10 | Samsung Electronics Co., Ltd. | Method for anonymous collaborative filtering using matrix factorization |
US20120030159A1 (en) * | 2010-07-30 | 2012-02-02 | Gravity Research & Development Kft. | Recommender Systems and Methods |
US20140129500A1 (en) * | 2012-11-07 | 2014-05-08 | Microsoft Corporation | Efficient Modeling System |
US20170017649A1 (en) * | 2015-07-14 | 2017-01-19 | Verizon Patent And Licensing Inc. | Techniques for providing a user with content recommendations |
Also Published As
Publication number | Publication date |
---|---|
US20200342358A1 (en) | 2020-10-29 |
CN111492391A (zh) | 2020-08-04 |
WO2019120578A1 (en) | 2019-06-27 |
JP2021508395A (ja) | 2021-03-04 |
EP3698308A1 (en) | 2020-08-26 |
JP6985518B2 (ja) | 2021-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2763530C1 (ru) | Клиент, сервер и система клиент-сервер, адаптированные для генерации персонализированных рекомендаций | |
KR101785219B1 (ko) | 사물 인터넷 환경에서의 그룹 사용자를 위한 그룹 구성 정보 기반 서비스 추천 방법 | |
Tang et al. | Bayesian model-based prediction of service level agreement violations for cloud services | |
KR20180137351A (ko) | 사용자 행위 기반의 아이템 추천 방법 및 장치 | |
Karim et al. | End-to-end QoS prediction of vertical service composition in the cloud | |
Unuvar et al. | Selecting optimum cloud availability zones by learning user satisfaction levels | |
Smithamol et al. | TMM: trust management middleware for cloud service selection by prioritization | |
Latif et al. | A novel cloud management framework for trust establishment and evaluation in a federated cloud environment | |
US10366088B2 (en) | Method and system for mining frequent and in-frequent items from a large transaction database | |
WO2020120391A1 (en) | A cloud platform and method for efficient processing of pooled data | |
CN104462093B (zh) | 个人推荐方案 | |
CN112926090A (zh) | 基于差分隐私的业务分析方法及装置 | |
Varalakshmi et al. | Trust management model based on malicious filtered feedback in cloud | |
Karim et al. | End-to-end performance prediction for selecting cloud services solutions | |
CN111492392B (zh) | 用于更新客户端-项目矩阵的客户端、服务器和客户端-服务器系统 | |
Chen et al. | Dynamically predicting the quality of service: batch, online, and hybrid algorithms | |
CN114510627A (zh) | 对象推送方法、装置、电子设备及存储介质 | |
CN113221016A (zh) | 资源推荐方法、装置、计算机设备及介质 | |
JP5632506B1 (ja) | 情報推薦装置、情報推薦方法及び情報推薦プログラム | |
El Alami et al. | Toward an effective hybrid collaborative filtering: a new approach based on matrix factorization and heuristic-based neighborhood | |
Zhang et al. | A QoS&SLA-driven multifaceted trust model for cloud computing | |
Al Moaiad et al. | Prioritization tool of Cloud Computing service provider based on user requirement | |
El Kassabi et al. | De-centralized reputation-based trust model to discriminate between cloud providers capable of processing big data | |
JP6558860B2 (ja) | 推定装置、予測装置、方法、及びプログラム | |
Patil et al. | Bayesian personalized ranking for optimized personalized qos ranking |