02.08.2020
220.018.3b53

СОВМЕСТНОЕ ИСПОЛЬЗОВАНИЕ СЕКРЕТОВ БЕЗ ДОВЕРЕННОГО ИНИЦИАЛИЗАТОРА

Вид РИД

Изобретение

Юридическая информация Свернуть Развернуть
№ охранного документа
0002728522
Дата охранного документа
30.07.2020
Краткое описание РИД Свернуть Развернуть
Аннотация: Изобретение относится к средствам обновления данных пользовательских признаков. Технический результат заключается в улучшении прогнозирования потребности пользователей и обеспечении предоставления адресных рекомендаций для пользователей. Идентифицируют, посредством платформы рейтинга и рекомендаций по изделиям, данные рейтингов, содержащие соответствующие рейтинги множества изделий от множества пользователей. Идентифицируют, посредством платформы рейтинга и рекомендаций по изделиям, данные пользовательских признаков, содержащие множество пользовательских признаков, оказывающих влияние на соответствующие рейтинги множества изделий от множества пользователей. Принимают, из социальной сетевой платформы посредством платформы рейтинга и рекомендаций по изделиям через схему совместного использования секретов без доверенного инициализатора, множество манипулированных данных социальных сетей, вычисленных на основе данных социальных сетей и первого числа случайных переменных. При этом данные социальных сетей указывают социальные отношения между любыми двумя из множества пользователей, при этом в схеме совместного использования секретов без доверенного инициализатора социальная сетевая платформа совместно использует с платформой рейтинга и рекомендаций по изделиям множество манипулированных данных социальных сетей без раскрытия данных социальных сетей. Обновляют, посредством платформы рейтинга и рекомендаций по изделиям, данные пользовательских признаков на основе данных рейтингов и множества манипулированных данных социальных сетей. 3 н. и 17 з.п. ф-лы, 5 ил.
Реферат Свернуть Развернуть

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

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

Сущность изобретения

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

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

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

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

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

Описание чертежей

[0007] Фиг. 1 является блок-схемой, иллюстрирующей примерную систему для совместного использования секретов между платформой A и платформой B без доверенного инициализатора, согласно реализации настоящего раскрытия.

[0008] Фиг. 2 является блок-схемой последовательности операций, иллюстрирующей примерный способ совместного использования секретов между платформой A и платформой B без доверенного инициализатора для формирования рекомендаций посредством платформы A, согласно реализации настоящего раскрытия.

[0009] Фиг. 3 является блок-схемой последовательности операций, иллюстрирующей примерный способ совместного использования секретов между платформой A и платформой B для вычисления элемента матричного произведения матрицы A и матрицы B с использованием схемы совместного использования секретов без доверенного инициализатора, согласно реализации настоящего раскрытия.

[0010] Фиг. 4 является блок-схемой последовательности операций, иллюстрирующей примерный способ для формирования рекомендации посредством платформы рейтинга и рекомендаций по изделиям с использованием схемы совместного использования секретов без доверенного инициализатора, согласно реализации настоящего раскрытия.

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

[0012] Аналогичные ссылки с номерами и обозначения в различных чертежах указывают аналогичные элементы.

Подробное описание изобретения

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

[0014] Из множества онлайновых платформ, различные платформы могут собирать различные типы данных. Например, платформа рейтинга и рекомендаций по изделиям, такая как Netflix или IMDB, собирает данные рейтингов от пользователей относительно фильмов и телесериалов. Платформа для средств социального общения или социальная сетевая платформа, такая как Facebook или Twitter, собирают данные социальных сетей от пользователей и их друзей. Социальная информация может повышать производительность системы выдачи рекомендаций, поскольку близкие друзья имеют тенденцию иметь аналогичные предпочтения. Существующие способы выдачи рекомендаций на основе социальных сетей предполагают, что данные пользовательских рейтингов изделия и данные социальных сетей между пользователями совместно используются. Тем не менее, вследствие конфиденциальности данных или других проблем, онлайновые платформы типично не используют совместно свои исходные данные с другими сторонами.

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

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

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

[0018] Фиг. 1 является блок-схемой, иллюстрирующей примерную систему 100 для совместного использования секретов между платформой A 102 и платформой B 104, согласно реализации настоящего раскрытия. Платформа A 102 может включать в себя, но не только, платформу рейтинга и рекомендаций по изделиям в сфере развлечений, розничной торговли, обслуживания и в другой отрасли или секторах, в которых пользователи могут присваивать рейтинги продуктам, услугам или другим изделиям. Примеры платформы рейтинга и рекомендаций по изделиям включают в себя, например, Amazon, Netflix или IMDB. Платформа A 102 может собирать данные R рейтингов от своих пользователей. Данные R рейтингов могут включать в себя один или более фактических рейтингов одного или более изделий (например, продуктов или услуг), представляемых пользователями, либо один или более увязанных рейтингов на основе щелчков пользователя, покупок, поиска или других статистических действий относительно изделий. Рейтинги могут отражать потребности, пристрастия или предпочтения пользователя изделий. Рейтинги могут иметь конкретный диапазон (например, [0, 1] или [1, 5]). В некоторых реализациях, данные R рейтингов могут представляться в матрице, имеющей размерность M* N, где M представляет число пользователей, и N представляет число изделий, при этом записи Rij представляют рейтинг изделия j пользователем i.

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

[0020] В некоторых реализациях, собранные данные R рейтингов могут представлять собой разреженную матрицу, поскольку только небольшое число (по сравнению с M*N) записей Rij имеют рейтинг или увязанный рейтинг на основе существующих пользовательских действий относительно изделий. В некоторых реализациях, платформа A 102 может прогнозировать известные рейтинги изделий таким образом, чтобы предоставлять адресные рекомендации по изделиям пользователям. В некоторых реализациях, платформа A 102 может прогнозировать известные рейтинги изделий, например, на основе пользовательских данных и данных изделий согласно алгоритмам машинного обучения или статистической обработки. В качестве примера, платформа A 102 может предоставлять рекомендации по изделиям на основе данных U пользовательских признаков (также называемых "пользовательскими факторными данными") и данных V признаков изделий (также называемых "факторными данными изделий") согласно способам матричной факторизации или другим технологиям. В частности, каждый пользователь (например, пользователь i) может характеризоваться посредством вектора (например, Ui) пользовательских признаков, таких как возраст, пол, геолокация, шаблон посещений и т.д. Каждое изделие (например, изделие j) может характеризоваться посредством вектора (например, Vj) признаков изделий, таких как категория, ключевые слова, темы, цены и т.д. Пользовательские признаки и признаки изделий могут представлять собой факторы, которые оказывают влияние на рейтинг, выбор или покупку данным пользователем данного изделия. В некоторых реализациях, рейтинг изделия, предоставленный пользователем, может аппроксимироваться посредством произведения с точкой вектора пользовательских признаков и вектора признаков изделий. Например:

, (1)

где Ui представляет вектор данных пользовательских признаков, соответствующих пользователю i; Vj представляет вектор данных признаков изделий, соответствующих изделию j; и Rij представляет рейтинг изделия j пользователем i.

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

[0022] Платформа B 104 может включать в себя, но не только, платформу для средств социального общения (к примеру, Facebook, Twitter или Instragram). Платформа B 104 может собирать данные S социальных сетей от своих пользователей. Данные социальных сетей могут включать в себя, например, имена, возрасты, пол, адреса, должности, родственные отношения, хобби, статусы, комментарии, блоги, предысторию просмотров или другие демографические данные, информацию занятости, информацию по предпочтениям в развлечениях пользователя на платформе B, а также соответствующую информацию друзей, семьи, коллег пользователя и т.д. Такие данные S социальных сетей могут быть информативными для платформы A для прогнозирования рейтинга пользователя изделия и предоставления рекомендаций.

[0023] Например, платформа A может прогнозировать рейтинги пользователя посредством решения проблемы оптимизации, как показано в формуле (2):

(2)

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

[0024] В этом примере, целевая функция в правой стороне формулы (2) включает в себя 3 члена. Первый член представляет ошибку или расстояние между известными данными рейтингов и аппроксимированным рейтингом, вычисленным на основе данных пользовательских признаков (например, U=[U1, U2,..., UM]) и данных признаков изделий (например, V=[V1, V2,..., VN]). Второй член представляет влияние данных S социальных сетей на векторы пользовательских признаков. Например, чем более близкими или более тесными являются социальные отношения двух пользователей, тем более похожими являются два вектора признаков пользователей. В некоторых реализациях, чем больше , тем более близкими или более тесными являются социальные отношения двух пользователей. Третий член используется для того, чтобы предотвращать переобучение. Значения весовых коэффициентов и могут быть предварительно определены. Чем больше весовой коэффициент, тем больше влияние соответствующего члена на целевую функцию.

[0025] Вышеуказанная проблема оптимизации для того, чтобы минимизировать целевую функцию, может разрешаться, например, посредством градиентного спуска или другого алгоритма. Например, взятие производной собственных векторов U и V могут давать в результате нижеуказанные два уравнения (2):

(3)

(4)

[0026] Чтобы разрешать относительно U и V в вышеуказанных уравнениях (3) и (4), результаты матричных произведений и являются достаточными, без необходимости знать значения U и S отдельно. В связи с этим, схема совместного использования секретов может использоваться посредством платформ A и B для того, чтобы получать результаты матричных произведений и . Согласно схеме совместного использования секретов, платформа A может раскрывать манипулируемый U для платформы B без раскрытия исходного U для платформы B; и платформа B может раскрывать манипулируемый S для платформы A без раскрытия исходного S для платформы A.

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

[0028] Фиг. 2 является блок-схемой последовательности операций, иллюстрирующей примерный способ 200 совместного использования секретов между платформой A и платформой B без доверенного инициализатора для формирования рекомендаций посредством платформы A, согласно реализации настоящего раскрытия. Платформа A может представлять собой платформу A, описанную на фиг. 1, и платформа B может представлять собой платформу B, описанную на фиг. 1. В некоторых реализациях, примерный способ совместного использования секретов может реализовываться в итеративном алгоритме. Число T итераций, например, может быть предварительно определенным значением или определяться на основе определенных критериев (например, того, сходится либо нет алгоритм, либо того, находится или нет обновления или разности U или V после различных итераций ниже порогового значения). На 202, платформа A идентифицирует данные R пользовательских рейтингов и начальные данные U пользовательских признаков и данные V признаков изделий и число T итераций. На 204, платформа B идентифицирует данные S социальных сетей. Для t-той итерации (t<T), на 208, платформа A и платформа B могут выполнять схему совместного использования секретов без доверенного инициализатора, чтобы получать матричные произведения и . На 206, платформа A обновляет U или V на основе матричных произведений и , например, согласно уравнениям (3) и (4). После T итераций, на 210, признак изделия для платформы A формирует рекомендации на основе обновленных данных U пользовательских признаков и данных V признаков изделий.

[0029] В некоторых реализациях, пусть матрица Z представляет собой произведение матрицы A и матрицы B. Таким образом, Z=B. представляет запись/элемент Z в i-ой строке и j-ом столбце. может вычисляться, например, согласно уравнению (5). Матричные произведения и . Например,

, (5)

где представляет i-ую строку матрицы A, и представляет j-ый столбец матрицы B.

[0030] Фиг. 3 является блок-схемой последовательности операций, иллюстрирующей примерный способ 300 совместного использования секретов между платформой A и платформой B для вычисления элемента произведения матрицы A и матрицы B с использованием схемы совместного использования секретов без доверенного инициализатора, согласно реализации настоящего раскрытия. В схеме совместного использования секретов без доверенного инициализатора, обе платформы формируют случайные числа в последовательности этапов и вычислений, которые должны заменять потребность в доверенном инициализаторе.

[0031] На 304, платформа A 302 получает начальный вектор x=(x1, x2,..., x_2k), который может представлять собой i-ю строку матрицы A. На 324, платформа B 322 получает начальный вектор y=(y1, y2,..., y_2k), который может представлять собой j-ый столбец матрицы B. Векторы x и y могут иметь идентичную размерность в 2k. Векторы x и y могут включать в себя, например, случайные переменные, все нули, предварительно определенные значения или другие начальные значения.

[0032] В некоторых реализациях, обе платформы A и B вычисляют для вывода посредством прохождения цикла k раз 350. В k-ой итерации, на 306, платформа A 302 формирует случайные значения aj и cj таким образом, что сумма (aj+cj) не равна 0. Например, случайные сформированные значения aj и cj могут многократно формироваться до тех пор, пока aj+cj не будет равно 0, как показано на 308. Когда находится, что aj+cj не равно 0, платформа A 302 вычисляет для значений, которые манипулируются и впоследствии отправляются в платформу B 322. Вычисленные значения для платформы A 302 могут включать в себя, но не только, pj=aj+cj, x'[2j]=x[2j]+cj, как показано на 310. На 311, значения, {pj, x'[2-1], x'[2j]}, отправляются в платформу B 322 для вычисления. Аналогично, на 326, платформа B 322 формирует случайные значения bj и dj таким образом, что сумма (bj+dj) не равна 0. Например, случайные сформированные значения bj и dj могут многократно формироваться до тех пор, пока bj+dj не будет равно 0, как показано на 328. Вычисленные значения для платформы B 322 могут включать в себя, но не только, qj=bj+dj, y'[2j-1]=y[2j-1]+bj and y'[2j]=y[2j]+dj, как показано на 330. На 331, значения, {qj, y'[2-1], y'[2j]}, отправляются в платформу A 302 для вычисления.

[0033] После того, как платформы отправляют манипулируемые данные друг другу, при нахождении в k цикле, обе платформы вычисляют значения, которые в конечном счете суммируются вплоть до выходных значений. Платформа A 302 вычисляет hj=y'[2j-1](x[2j-1]+2aj)+y'[2j](x[2j]+2cj)+qj (aj+2cj), как показано на 312. Платформа B 322 вычисляет gj=x'[2j-1] (2y'[2j-1]-bj)+x'[2j](2y[2j]-dj)+pj dj-2bj), как показано на 332. На 314, платформа A 302 получает значение h посредством суммирования всех hj, то есть , как показано на 314. На 332, платформа B 322 получает значение g посредством суммирования всех gj, то есть , как показано на 334.

[0034] На 315, платформа A может принимать значение g из платформы B. Сумма h и g равна произведению векторов x и y. Таким образом, xy=h+g. В связи с этим, на 315, платформа A принимает значение g из платформы B. На 335, платформа A отправляет значение h в платформу B. На 316, платформа A может вычислять произведение векторов x и y посредством вычисления суммы h и g, которые представляют собой манипулируемые данные векторов x и y. Аналогично, на 336, платформа B также может вычислять произведение векторов x и y посредством вычисления суммы h и g.

[0035] При условии, что x может быть i-ой строкой матрицы A, , и y может быть j-ым столбцом матрицы B, , элемент произведения матрицы A и матрицы B может получаться в качестве =. Соответственно, может получаться матричное произведение Z матрицы A и матрицы B.

[0036] Посредством замены матрицы U на A и замены d на B, может получаться матричное произведение . Аналогично, посредством замены U на A и замены S на B, может получаться матричное произведение . С матричными произведениями и , платформа A может обновлять U или V, например, согласно уравнениям (3) и (4), как описано относительно 206 на фиг. 2.

[0037] Таким образом, платформа A 302 может формировать прогнозированные данные рейтингов на основе обновленных данных пользовательских признаков и данных признаков изделий. В некоторых реализациях, платформа A 302 может, в числе прочего, формировать рекомендации для конкретного изделия для конкретного клиента на основе прогнозированных данных рейтингов. Вышеописанные технологии и вычисление могут достигаться без необходимости доверенного центра в качестве дополнительных расходов.

[0038] Фиг. 4 является блок-схемой последовательности операций примерного способа 400 для формирования рекомендации пользователю посредством платформы рейтинга и рекомендаций по изделиям с использованием схемы совместного использования секретов без доверенного инициализатора, согласно реализации. Для ясности представления, нижеприведенное описание, в общем, описывает способ 400 в контексте других чертежей в этом описании. Например, платформа рейтинга и рекомендаций по изделиям может представлять собой платформу A, как описано относительно фиг 1-3. Тем не менее, следует понимать, что способ 400 может осуществляться, например, посредством любой подходящей системы, окружения, программного обеспечения и аппаратных средств либо комбинации систем, окружений, программного обеспечения и аппаратных средств, надлежащим образом. В некоторых реализациях, различные этапы способа 400 могут выполняться параллельно, в комбинации, циклически или в любом порядке.

[0039] На 402, данные рейтингов, включающие в себя, но не только, соответствующие рейтинги числа изделий относительно числа пользователей, идентифицируются посредством платформы рейтинга и рекомендаций по изделиям. Идентификация данных рейтингов включает в себя прием (например, из другого устройства), извлечение или загрузку из запоминающего устройства либо определение данных рейтингов на основе одного или более вводов в способ 400. Данные рейтингов могут включать в себя данные R рейтингов, описанные относительно фиг. 1-3. Например, данные рейтингов могут включать в себя фактический рейтинг или увязанный рейтинг на основе существующих пользовательских действий относительно изделий. От 402, способ 400 переходит к 404.

[0040] На 404, данные пользовательских признаков, включающие в себя число пользовательских признаков, способствующих соответствующим рейтингам числа изделий относительно числа пользователей, идентифицируются посредством платформы рейтинга и рекомендаций по изделиям. Идентификация данных пользовательских признаков включает в себя прием (например, из другого устройства), извлечение или загрузку из запоминающего устройства либо определение данных пользовательских признаков на основе одного или более вводов в способ 400. В некоторых реализациях, данные пользовательских признаков могут быть представлены матрицей U. Данные пользовательских признаков могут включать в себя данные U пользовательских признаков, описанные относительно фиг. 1-3. От 404, способ 400 переходит к 406.

[0041] На 406, данные признаков изделий, включающие в себя число признаков изделий, способствующих соответствующим рейтингам числа изделий относительно числа пользователей, идентифицируются посредством платформы рейтинга и рекомендаций по изделиям. В некоторых реализациях, идентификация данных признаков изделий включает в себя прием (например, из другого устройства), извлечение или загрузку из запоминающего устройства или определение данных признаков изделий на основе одного или более вводов в способ 400. Данные признаков изделий могут включать в себя данные V признаков изделий, описанные относительно фиг. 1-3. От 406, способ 400 переходит к 408.

[0042] На 408, платформа рейтинга и рекомендаций по изделиям принимает число манипулируемых данных социальных сетей (например, g, описанных относительно фиг. 3), вычисленное на основе данных социальных сетей (например, y, вектора матрицы S данных социальных сетей) из социальной сетевой платформы через схему совместного использования секретов без доверенного инициализатора из социальной сетевой платформы. Дополнительно, данные социальных сетей указывают социальные отношения между любыми двумя из числа пользователей. В схеме совместного использования секретов без доверенного инициализатора, социальная сетевая платформа совместно использует с платформой рейтинга и рекомендаций по изделиям число манипулируемых данных социальных сетей (например, g) без раскрытия данных социальных сетей (например, y), причем манипулируемые данные социальных сетей вычисляются на основе данных социальных сетей и первого числа случайных переменных (например, bj, dj). В некоторых реализациях, в схеме совместного использования секретов без доверенного инициализатора, платформа рейтинга и рекомендаций по изделиям совместно использует с социальной сетевой платформой число манипулируемых данных пользовательских признаков (например, h) без раскрытия данных пользовательских признаков (например, x, вектора матрицы U данных пользовательских признаков), причем число манипулируемых данных пользовательских признаков вычисляется на основе данных пользовательских признаков и второго числа случайных переменных (например, aj, cj). В некоторых реализациях, манипулируемые данные социальных сетей манипулируются таким образом, что нельзя восстанавливать исходные данные социальных сетей из манипулируемых данных социальных сетей.

[0043] В некоторых реализациях, схема совместного использования секретов без доверенного инициализатора используется для решения проблемы оптимизации, как описано относительно формулы (2), например, как описано относительно фиг. 3. Например, в схеме совместного использования секретов без доверенного инициализатора, платформа рейтинга и рекомендаций по изделиям получает вектор данных пользовательских признаков (например, x) и формирует первые манипулируемые данные пользовательских признаков (например, x') на основе вектора данных пользовательских признаков (например, x) и второго числа случайных переменных (например, aj, cj). Платформа рейтинга и рекомендаций по изделиям передает в социальную сетевую платформу первые манипулируемые данные пользовательских признаков (например, x') и принимает из социальной сетевой платформы первые манипулируемые данные социальных сетей (например, y'), вычисленные на основе данных социальных сетей (например, y) и первого числа случайных переменных (например, bj, dj).

[0044] Платформа рейтинга и рекомендаций по изделиям может формировать одни из манипулируемых данных пользовательских признаков (например, h) на основе двух или более из первых манипулируемых данных пользовательских признаков (например, x'), первых манипулируемых данных социальных сетей (например, y') или второго числа случайных переменных (например, aj, cj). Аналогично, социальная сетевая платформа может формировать одни из манипулируемых данных социальных сетей (например, g), вычисленные на основе двух или более из первых манипулируемых данных пользовательских признаков (например, x'), первых манипулируемых данных социальных сетей (например, y') или первого числа случайных переменных (например, bj, dj). От 408, способ 400 переходит к 410.

[0045] На 410, платформа рейтинга и рекомендаций по изделиям отправляет число манипулируемых данных пользовательских признаков (например, число h) в социальную сетевую платформу без раскрытия данных пользовательских признаков (например, x или любого вектора U), например, как описано относительно фиг. 3. От 410, способ 400 переходит к 412.

[0046] На 412, платформа рейтинга и рекомендаций по изделиям обновляет данные пользовательских признаков на основе данных рейтингов и числа манипулируемых данных социальных сетей. В некоторых реализациях, обновление данных пользовательских признаков включает в себя вычисление произведения данных пользовательских признаков и данных социальных сетей посредством вычисления суммы одних из числа манипулируемых данных пользовательских признаков (например, h) и одних из числа манипулируемых данных социальных сетей (например, g). Дополнительно, упомянутое вычисление может включать в себя вычисление для каждой записи в произведении данных пользовательских признаков и данных социальных сетей и вычисление одних из числа манипулируемых данных пользовательских признаков и одних из числа манипулируемых данных социальных сетей без данных социальных сетей. В некоторых реализациях, данные пользовательских признаков включают в себя решение проблемы оптимизации, чтобы минимизировать взвешенную сумму разницы между прогнозированными данными рейтингов и данными рейтингов, данных пользовательских признаков, взвешенных посредством данных социальных сетей, и члена для предотвращения переобучения, например, как показано в формуле (2). В некоторых реализациях, обновление данных пользовательских признаков включает в себя обновление данных пользовательских признаков согласно примерным технологиям, описанным относительно фиг. 3. От 412, способ 400 переходит к 414.

[0047] На 414, платформа рейтинга и рекомендаций по изделиям обновляет данные признаков изделий на основе данных рейтингов и данных пользовательских признаков, например, согласно примерным технологиям, описанным относительно фиг. 3. От 414, способ 400 переходит к 416.

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

[0049] На 418, формируется рекомендация по конкретному изделию для конкретного пользователя на основе прогнозированных данных рейтингов. В некоторых реализациях, одно или более изделий с лучшими прогнозными рейтингами относительно конкретного пользователя могут рекомендоваться конкретному пользователю. Рекомендация по конкретному изделию может представлять собой рекомендацию по фильму или покупаемому товару. Например, Netflix может лучше рекомендовать фильм, или Amazon может лучше рекомендовать изделие на основе данных социальных сетей. В некоторых реализациях, рекомендация по конкретному изделию для конкретного изделия может выводиться, например, через пользовательский интерфейс (UI). В некоторых реализациях, выбранные темы могут отображаться в окне чата, всплывающем окне и т.д. в графическом пользовательском интерфейсе (GUI) или в других UI для анализа и рассмотрения пользователем. После 418, способ 400 прекращается.

[0050] Фиг. 5 является блок-схемой примерной компьютерной системы 500, используемой для того, чтобы предоставлять вычислительные функциональности, ассоциированные с описанными алгоритмами, способами, функциями, процессами, последовательностями операций и процедурами, как описано в настоящем раскрытии, согласно реализации. Проиллюстрированный компьютер 502 имеет намерение охватывать любое вычислительное устройство, такое как сервер, настольный компьютер, переносной компьютер/ноутбук, порт беспроводной передачи данных, смартфон, персональное цифровое устройство (PDA), планшетное вычислительное устройство, один или более процессоров в этих устройствах либо любое другое подходящее обрабатывающее устройство, включающее в себя физические или виртуальные экземпляры (либо и то, и другое) вычислительного устройства. Дополнительно, компьютер 502 может включать в себя компьютер, который включает в себя устройство ввода, такое как клавишная панель, клавиатура, сенсорный экран или другое устройство, которое может подтверждать пользовательскую информацию, и устройство вывода, которое передает информацию, ассоциированную с работой компьютера 502, включающую в себя цифровые данные, визуальную или аудиоинформацию (либо комбинацию информации) или графический пользовательский интерфейс (UI) (или GUI).

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

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

[0053] Компьютер 502 может принимать запросы по сети 530 из клиентского приложения (например, выполняющегося на другом компьютере 502) и отвечать на принимаемые запросы посредством обработки принимаемых запросов с использованием соответствующего приложения(й). Помимо этого, запросы также могут отправляться в компьютер 502 от внутренних пользователей (например, из командной консоли или посредством другого соответствующего способа доступа), внешних или третьих сторон, других автоматизированных приложений, а также любых других соответствующих объектов, людей, систем или компьютеров.

[0054] Каждый из компонентов компьютера 502 может обмениваться данными с использованием системной шины 503. В некоторых реализациях, любые из компонентов компьютера 502, аппаратных средств или программного обеспечения (либо комбинации аппаратных средств и программных обеспечений), могут взаимодействовать между собой или с интерфейсом 504 (либо с комбинацией означенного) по системной шине 503 с использованием интерфейса 512 прикладного программирования (API) или уровня 513 предоставления услуг (либо комбинации API 512 и уровня 513 предоставления услуг). API 512 может включать в себя технические требования для процедур, структур данных и классов объектов. API 512 может быть независимым или зависимым от машинного языка и означать полный интерфейс, одну функцию или даже набор API. Уровень 513 предоставления услуг предоставляет программные услуги в компьютер 502 или другие компоненты (независимо от того, проиллюстрированы они или нет), которые соединяются с возможностью связи с компьютером 502. Функциональность компьютера 502 может быть доступной для всех потребителей услуги с использованием этого уровня предоставления услуг. Программные услуги, к примеру, услуги, предоставленные посредством уровня 513 предоставления услуг, предоставляют многократно используемые, заданные функциональности посредством заданного интерфейса. Например, интерфейс может представлять собой программное обеспечение, написанное на JAVA, C++ либо на других подходящих языках, предоставляющих данные в формате расширяемого языка разметки (XML) или в других подходящих форматах. Хотя проиллюстрированы в качестве интегрального компонента компьютера 502, альтернативные реализации могут иллюстрировать API 512 или уровень 513 предоставления услуг в качестве автономных компонентов относительно других компонентов компьютера 502 или других компонентов (независимо от того, проиллюстрированы они или нет), которые соединяются с возможностью связи с компьютером 502. Кроме того, любые части API 512 или уровня 513 предоставления услуг могут реализовываться как дочерний элемент или субмодули другого программного модуля, корпоративного приложения или аппаратного модуля без отступления от объема данного раскрытия.

[0055] Компьютер 502 включает в себя интерфейс 504. Хотя иллюстрируется в качестве одного интерфейса 504 на фиг. 5, два или более интерфейса 504 могут использоваться согласно конкретным потребностям, желаниям либо конкретным реализациям компьютера 502. Интерфейс 504 используется посредством компьютера 502 для обмена данными с другими системами, которые соединяются с сетью 530 (независимо от того, проиллюстрирована она или нет) в распределенном окружении. Обычно, интерфейс 504 включает в себя логику, кодированную в программном обеспечении или в аппаратных средствах (либо в комбинации программного обеспечения и аппаратных средств), и выполнен с возможностью обмениваться данными с сетью 530. Более конкретно, интерфейс 504 может включать в себя программное обеспечение, поддерживающее один или более протоколов связи, ассоциированных со связью таким образом, что сеть 530 или аппаратные средства интерфейса выполнены с возможностью обмениваться физическими сигналами в пределах/за пределами проиллюстрированного компьютера 502.

[0056] Компьютер 502 включает в себя процессор 505. Хотя иллюстрируется в качестве одного процессора 505 на фиг. 5, два или более процессоров могут использоваться согласно конкретным потребностям, желаниям либо конкретным реализациям компьютера 502. Обычно, процессор 505 выполняет инструкции и манипулирует данными, чтобы выполнять операции компьютера 502 и любые алгоритмы, способы, функции, процессы, последовательности операций и процедуры, как описано в настоящем раскрытии.

[0057] Компьютер 502 также включает в себя базу 506 данных, которая может хранить данные для компьютера 502 или других компонентов (либо для комбинации означенного), которые могут соединяться с сетью 530 (независимо от того, проиллюстрирована она или нет). Например, база 506 данных может представлять собой базу данных в запоминающем устройстве, традиционную базу данных либо другой тип базы данных, сохраняющей данных в соответствии с этим раскрытием. В некоторых реализациях, база 506 данных может представлять собой комбинацию двух или более различных типов баз данных (например, гибридной базы данных в оперативном запоминающем устройстве и традиционной базы данных в оперативном запоминающем устройстве) согласно конкретным потребностям, желаниям либо конкретным реализациям компьютера 502 и описанной функциональности. Хотя иллюстрируется в качестве одной базы 506 данных на фиг. 5, две или более баз данных (идентичного либо комбинации типов) могут использоваться согласно конкретным потребностям, желаниям либо конкретным реализациям компьютера 502 и описанной функциональности. Хотя база 506 данных проиллюстрирована в качестве неотъемлемого компонента компьютера 502, в альтернативных реализациях, база 506 данных может быть внешней для компьютера 502. Как проиллюстрировано, база 506 данных хранит вышеописанные данные 516 рейтингов, данные 518 пользовательских признаков, данные 526 признаков изделий и данные 528 социальных сетей.

[0058] Компьютер 502 также включает в себя запоминающее устройство 507, которое может хранить данные для компьютера 502 или других компонентов (либо для комбинации означенного) которые могут соединяться с сетью 530 (независимо от того, проиллюстрирована она или нет). Запоминающее устройство 507 может сохранять любые данные в соответствии с этим раскрытием. В некоторых реализациях, запоминающее устройство 507 может представлять собой комбинацию двух или более различных типов запоминающего устройства (например, комбинацией полупроводникового и магнитного устройства хранения данных) согласно конкретным потребностям, желаниям либо конкретным реализациям компьютера 502 и описанной функциональности. Хотя иллюстрируется в качестве одного запоминающего устройства 507 на фиг. 5, два или более запоминающих устройств 507 (идентичного либо комбинации типов) могут использоваться согласно конкретным потребностям, желаниям либо конкретным реализациям компьютера 502 и описанной функциональности. Хотя запоминающее устройство 507 проиллюстрировано в качестве неотъемлемого компонента компьютера 502, в альтернативных реализациях, запоминающее устройство 507 может быть внешним для компьютера 502.

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

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

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

[0062] Описанные реализации предмета изобретения могут включать в себя один или более признаков, отдельно или в комбинации.

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

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

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

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

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

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

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

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

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

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

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

,

- при этом: Ui представляет вектор данных пользовательских признаков, соответствующих пользователю i; Vj представляет вектор данных признаков изделий, соответствующих изделию j; Rij представляет рейтинг изделия j пользователем i; Sik представляет социальное отношение между пользователем i и пользователем k; представляет предварительно заданный весовой коэффициент, ассоциированный с данными социальных сетей; и представляет предварительно заданный весовой коэффициент для того, чтобы предотвращать переобучение.

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

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

[0076] Термин "реальное время (real-time)", "реальное время (real time)", "реальное время (realtime)", "реальное (быстрое) время (RFT)", "практически реальное время (NRT)", "квазиреальное время" или подобные термины (как должны понимать специалисты в данной области техники) означает то, что действие и ответ являются близкими по времени таким образом, что человек воспринимает действие и ответ как возникающие практически одновременно. Например, разность времен для ответа на отображение (или для инициирования отображения) данных после действия человека, чтобы осуществлять доступ к данным, может составлять менее 1 мс, менее 1 с или менее 5 с. В то время, когда запрашиваемые данные не должны отображаться (или инициироваться для отображения) мгновенно, оно отображаются (или инициируются для отображения) без намеренной задержки, с учетом ограничений обработки описанной вычислительной системы и времени, требуемого, например, для того, чтобы собирать, точно измерять, анализировать, обрабатывать, сохранять или передавать данные.

[0077] Термины "оборудование обработки данных", "компьютер", или "устройство электронного компьютера" (либо эквиваленты, как должны понимать специалисты в данной области техники) означают аппаратные средства обработки данных и охватывают все виды оборудования, устройств и машин для обработки данных, включающие в себя, в качестве примера, программируемый процессор, компьютер либо несколько процессоров или компьютеров. Оборудование также может представлять собой или дополнительно включать в себя логическую схему специального назначения, например, центральный процессор (CPU), FPGA (программируемую пользователем вентильную матрицу) или ASIC (специализированную интегральную схему). В некоторых реализациях, оборудование обработки данных или логическая схема специального назначения (либо комбинация оборудования обработки данных или логической схемы специального назначения) могут быть на основе аппаратных средств или программного обеспечения (либо представлять собой комбинацию на основе аппаратных средств или программного обеспечения). Оборудование необязательно может включать в себя код, который создает окружение выполнения для компьютерных программ, например, код, который составляет микропрограммное обеспечение процессора, стек протоколов, систему управления базами данных, операционную систему либо комбинацию окружений выполнения. Настоящее раскрытие предполагает использование оборудования обработки данных с/без традиционных операционных систем, например, Linux, Unix, Windows, Android Mac OS, iOS или любой другой подходящей традиционной операционной системы.

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

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

[0080] Способы, процессы или логические последовательности операций, описанные в этом подробном описании, могут выполняться посредством одного или более программируемых компьютеров, выполняющих одну или более компьютерных программ, чтобы выполнять функции посредством обработки входных данных и формирования вывода. Способы, процессы или логические последовательности операций также могут выполняться посредством, а оборудование также может реализовываться как логическая схема специального назначения, например, CPU, FPGA или ASIC.

[0081] Компьютеры, подходящие для выполнения компьютерной программы, могут быть основаны на микропроцессорах общего или специального назначения, на том и на другом либо на любом другом виде CPU. Обычно, CPU должен принимать инструкции и данные и записывать из/в запоминающее устройство. Существенные элементы компьютера представляют собой CPU для выполнения или исполнения инструкций и одно или более запоминающих устройств для сохранения инструкций и данных. Обычно, компьютер также должен включать в себя или функционально соединяться с возможностью принимать данные или передавать данные либо выполнять и то, и другое из/в одно или более устройств хранения данных большой емкости для сохранения данных, например, магнитных, магнитооптических дисков или оптических дисков. Тем не менее, компьютер не должен обязательно иметь таких устройств. Кроме того, компьютер может встраиваться в другое устройство, например, в мобильный телефон, персональное цифровое устройство (PDA), мобильный аудио- или видеопроигрыватель, игровую приставку, приемное устройство на основе глобальной системы позиционирования (GPS) или портативное устройство хранения данных, например, флэш-накопитель по стандарту универсальной последовательной шины (USB), помимо прочего.

[0082] Считываемые компьютером носители (энергозависимые или энергонезависимые, надлежащим образом), подходящие для сохранения компьютерных программных инструкций и данных, включают в себя все формы долговременных/недолговременных либо энергозависимых/энергонезависимых запоминающих устройств, носителей и запоминающих накопительных устройств, включающих в себя, в качестве примера, полупроводниковые запоминающие устройства, например, оперативное запоминающее устройство (RAM), постоянное запоминающее устройство (ROM), запоминающее устройство на фазовых переходах (PRAM), статическое оперативное запоминающее устройство (SRAM), динамическое оперативное запоминающее устройство (DRAM), стираемое программируемое постоянное запоминающее устройство (EPROM), электрически стираемое программируемое постоянное запоминающее устройство (EEPROM) и устройства флэш-памяти; магнитные устройства, например, ленту, картриджи, кассеты, внутренние/съемные диски; магнитооптические диски; и оптические запоминающие устройства, например, цифровой видеодиск (DVD), CD-ROM, DVD+/-R, DVD-RAM, DVD-ROM, HD-DVD и Blu-ray и другие технологии на базе оптических запоминающих устройств. Запоминающее устройство может сохранять различные объекты или данные, включающие в себя кэши, классы, инфраструктуры, приложения, модули, резервные данные, задания, веб-страницы, шаблоны веб-страниц, структуры данных, таблицы базы данных, репозитории, сохраняющие динамическую информацию и любую другую соответствующую информацию, включающую в себя любые параметры, переменные, алгоритмы, инструкции, правила, ограничения либо ссылки на них. Дополнительно, запоминающее устройство может включать любые другие соответствующие данные, такие как журналы регистрации, политики, данные по безопасности или по доступу, файлы с отчетами, а также другие данные. Процессор и запоминающее устройство могут дополняться посредством или включаться в логическую схему специального назначения.

[0083] Чтобы предоставлять взаимодействие с пользователем, реализации предмета изобретения, описанного в этом подробном описании, могут реализовываться на компьютере, имеющем устройство отображения, например, монитор на CRT (электронно-лучевой трубке), ЖК-дисплей (жидкокристаллический дисплей), монитор на светодиодах (светоизлучающих диодах) или плазменный монитор, для отображения информации пользователю, а также клавиатуру и указательное устройство, например, мышь, шаровой манипулятор или сенсорную панель, посредством которых пользователь может предоставлять ввод в компьютер. Ввод также может предоставляться в компьютер с использованием сенсорного экрана, к примеру, поверхности планшетного компьютера с чувствительностью к давлению, мультисенсорного экрана с использованием емкостного или электрического опознавания либо другого типа сенсорного экрана. Другие виды устройств также могут использоваться для того, чтобы предоставлять взаимодействие с пользователем; например, обратная связь, предоставленная пользователю, может представлять собой любую форму сенсорной обратной связи, например, визуальную обратную связь, акустическую обратную связь или тактильную обратную связь; и ввод от пользователя может приниматься в любой форме, включающей в себя акустический, речевой или тактильный ввод. Помимо этого, компьютер может взаимодействовать с пользователем посредством отправки документов и приема документов из устройства, которое используется пользователем; например, посредством отправки веб-страниц в веб-браузер на клиентском устройстве пользователя в ответ на запросы, принимаемые из веб-браузера.

[0084] Термин "графический пользовательский интерфейс", или "GUI", может использоваться в единственном или множественном числе для того, чтобы описывать один или более графических пользовательских интерфейсов и каждый из экранов конкретного графического пользовательского интерфейса. Следовательно, GUI может представлять любой графический пользовательский интерфейс, в том числе, но не только, веб-браузер, сенсорный экран или интерфейс командной строки (CLI), который обрабатывает информацию и эффективно представляет информационные результаты пользователю. В общем, GUI может включать в себя определенное число элементов пользовательского интерфейса (UI), часть или все из которых ассоциированы с веб-браузером, к примеру, интерактивные поля, раскрывающиеся списки и кнопки. Эти и другие UI-элементы могут быть связаны или представлять функции веб-браузера.

[0085] Реализации предмета изобретения, описанного в этом подробном описании, могут реализовываться в вычислительной системе, которая включает в себя внутренний интерфейсный компонент, например, в качестве сервера данных, либо которая включает в себя промежуточный программный компонент, например, сервер приложений, либо которая включает в себя внешний интерфейсный компонент, например, клиентский компьютер, имеющий графический пользовательский интерфейс или веб-браузер, через который пользователь может взаимодействовать с реализацией предмета изобретения, описанного в этом подробном описании, либо любую комбинацию одного или более таких внутренних интерфейсных, промежуточных программных или внешних интерфейсных компонентов. Компоненты системы могут взаимно соединяться посредством любой формы или среды проводной или беспроводной цифровой передачи данных (либо комбинации передачи данных), например, посредством сети связи. Примеры сетей связи включают в себя локальную вычислительную сеть (LAN), сеть радиодоступа (RAN), общегородскую вычислительную сеть (MAN), глобальную вычислительную сеть (WAN), сеть по стандарту общемировой совместимости широкополосного беспроводного доступа (WiMax), беспроводную локальную вычислительную сеть (WLAN) с использованием, например, 802.11 a/b/g/n или 802.20 (либо комбинации 802.11x и 802.20 или других протоколов в соответствии с этим раскрытием), весь или часть Интернета или любой другой системы или систем связи в одном или более местоположений (либо комбинацию сетей связи). Сеть может передавать, например, с помощью пакетов по Интернет-протоколу (IP), кадров по протоколу ретрансляции кадров, ячеек по протоколу на основе режима асинхронной передачи (ATM), голос, видео, данные или другую подходящую информацию (либо комбинацию типов связи) между сетевыми адресами.

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

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

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

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

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

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


СОВМЕСТНОЕ ИСПОЛЬЗОВАНИЕ СЕКРЕТОВ БЕЗ ДОВЕРЕННОГО ИНИЦИАЛИЗАТОРА
СОВМЕСТНОЕ ИСПОЛЬЗОВАНИЕ СЕКРЕТОВ БЕЗ ДОВЕРЕННОГО ИНИЦИАЛИЗАТОРА
СОВМЕСТНОЕ ИСПОЛЬЗОВАНИЕ СЕКРЕТОВ БЕЗ ДОВЕРЕННОГО ИНИЦИАЛИЗАТОРА
СОВМЕСТНОЕ ИСПОЛЬЗОВАНИЕ СЕКРЕТОВ БЕЗ ДОВЕРЕННОГО ИНИЦИАЛИЗАТОРА
СОВМЕСТНОЕ ИСПОЛЬЗОВАНИЕ СЕКРЕТОВ БЕЗ ДОВЕРЕННОГО ИНИЦИАЛИЗАТОРА
СОВМЕСТНОЕ ИСПОЛЬЗОВАНИЕ СЕКРЕТОВ БЕЗ ДОВЕРЕННОГО ИНИЦИАЛИЗАТОРА
СОВМЕСТНОЕ ИСПОЛЬЗОВАНИЕ СЕКРЕТОВ БЕЗ ДОВЕРЕННОГО ИНИЦИАЛИЗАТОРА
СОВМЕСТНОЕ ИСПОЛЬЗОВАНИЕ СЕКРЕТОВ БЕЗ ДОВЕРЕННОГО ИНИЦИАЛИЗАТОРА
СОВМЕСТНОЕ ИСПОЛЬЗОВАНИЕ СЕКРЕТОВ БЕЗ ДОВЕРЕННОГО ИНИЦИАЛИЗАТОРА
СОВМЕСТНОЕ ИСПОЛЬЗОВАНИЕ СЕКРЕТОВ БЕЗ ДОВЕРЕННОГО ИНИЦИАЛИЗАТОРА
СОВМЕСТНОЕ ИСПОЛЬЗОВАНИЕ СЕКРЕТОВ БЕЗ ДОВЕРЕННОГО ИНИЦИАЛИЗАТОРА
СОВМЕСТНОЕ ИСПОЛЬЗОВАНИЕ СЕКРЕТОВ БЕЗ ДОВЕРЕННОГО ИНИЦИАЛИЗАТОРА
Источник поступления информации: Роспатент

Всего документов: 65

Похожие РИД в системе



Похожие не найдены