ОБЛАСТЬ ТЕХНИКИ
[001] Настоящая технология относится к тестированию контроль/эксперимент и конкретнее к способам и системам создания значений для общего критерия оценки (ОЕС).
УРОВЕНЬ ТЕХНИКИ
[002] За последние годы тестирование типа контроль/эксперимент на современном уровне техники стало инструментом улучшения веб-сервисов на основе ориентированных на данные решений. Тестирование типа контроль/эксперимент сравнивает два варианта сервиса одновременно, обычно его текущую версию (контрольную версию) и новую (контрольную версию, к которой применяется эксперимент), предлагая их двум группам пользователей. Оно используется многими поставщиками веб-сервисов, включая, например, поисковые системы, сайты электронной коммерции и социальные сети, например, Amazon™, eBay™, Facebook™, Google™, LinkedIn™, Microsoft™, Netflix™, Yahoo™ и Яндекс™. Самые большие веб-сервисы разрабатывают специальные экспериментальные платформы, которые позволяют им проводить тестирование контроль/эксперимент на огромных выборках.
[003] Одной из целей тестирования типа контроль/эксперимент является обнаружение влияния "эффекта от эксперимента" на пользователя, который использует участвующий в эксперименте веб-сервис. Известной проблемой является выбор подходящего критерия, применимого на практике, поскольку этот критерий должен соответствовать двум определяющим условиям, которые часто конфликтуют друг с другом.
[004] Во-первых, критерий должен предоставлять количественное значение, которое позволит сделать заключение об изменении качества системы, в частности, о знаке этого изменения. Другими словами, значение критерия должно обладать четкой интерпретацией и быть постоянным в отношении свойств пользователя. Это качество называется направленностью. В данной области техники известно, что многие критерии могут привести к противоречивым интерпретациям, и их использование на практике может вводить в заблуждение. Следовательно, верный выбор подходящего критерия является сложной задачей.
[005] Во-вторых, когда существует эффект эксперимента (например, эффект модификаций на поведении пользователя), критерий должен определять различие двух версий системы на высоком уровне статистической значимости для различения эффекта эксперимента в шуме, наблюдаемом, когда эффект не проявляется. Это качество называется чувствительностью. Распространенной проблемой является низкая чувствительность показателей в тех случаях, когда тестируется лишь незначительная модификация, или когда изменение в системе влияет лишь на небольшой объем пользовательского трафика.
РАСКРЫТИЕ ТЕХНОЛОГИИ
[006] Варианты осуществления настоящего технического решения были разработаны с учетом определения разработчиками по меньшей мере одного технического недостатка, связанного с известным уровнем техники.
[007] Варианты осуществления настоящей технологии были разработаны на основе предположения разработчиков о том, что несмотря на то, что решения, присущие текущему уровню техники, могут быть сфокусированы на реализации общего критерия оценки (ОЕС), которые основаны на часто используемых метриках пользовательского поведения, в большинстве случаев по причине чувствительности таких метрик пользовательского поведения, большому числу пользователей необходимо предоставить версии данного исполняемого на компьютере сервиса для того, чтобы оператор мог быть уверен в интерпретации ОЕС. Кроме того, способы, которые используются в настоящее время для улучшения чувствительности подобных метрик пользовательского поведения, требуют больших вычислительных ресурсов.
[008] Поэтому, разработчики предлагают способ и системы для создания значений ОЕС, предназначенных для использования во время тестирования исполняемого на компьютере сервиса, причем ОЕС основан на линеаризованной пользовательской метрике, которая может быть более чувствительной, чем используемые в настоящий момент метрики пользовательского поведения, и может быть совместима с методиками улучшения чувствительности, которые требуют меньше вычислительных ресурсов для своего выполнения.
[009] Первым объектом настоящей технологии является способ создания значений общего критерия оценки (ОЕС) для использования во время тестирования контроль/эксперимент исполняемого на компьютере сервиса для выбора текущей версии исполняемого на компьютере сервиса между контрольной версией и экспериментальной версией. Способ выполняется сервером. Способ включает в себя для каждой из контрольной и экспериментальной версии: получение сервером соответствующего набора данных, указывающих на пользовательские взаимодействия с соответствующей одной из контрольной и экспериментальной версий; определение сервером соответствующего первого набора значений на основе соответствующего набора данных, которые являются значениями первой пользовательской метрики; и определение сервером соответствующего второго набора значений на основе соответствующего набора данных, которые являются значениями второй пользовательской метрики. Способ включает в себя выбор сервером значений линеаризации для линеаризованной пользовательской метрики, которая является линейной комбинацией первой и второй пользовательских метрик, и ОЕС основан на линеаризованной пользовательской метрике. Значение линеаризации находится между коэффициентом контроля и коэффициентом эксперимента. Контрольный коэффициент является отношением (i) среднего значения из значений первого набора контрольной версии к (ii) среднему значению из значений второго набора контрольной версии. Экспериментальный коэффициент является отношением (i) среднего значения из значений первого набора экспериментальной версии к (ii) среднему значению из значений второго набора экспериментальной версии. Способ включает в себя, для каждой из контрольной и экспериментальной версий, определение сервером соответствующего линеаризованного набора значений. Значения в данном линеаризованном наборе представляют собой разницу между (i) значениями соответствующего первого набора и (ii) значениями соответствующего второго набора, которые взвешены значением линеаризации. Значения линеаризованных наборов представляют собой значения линеаризованной пользовательской метрики. Способ включает в себя, для каждой из контрольной и экспериментальной версий, создание сервером соответствующего значения ОЕС на основе соответствующих линеаризованных наборов. Разница между значениями ОЕС указывает на (i) степень изменения в пользовательских взаимодействиях между контрольной версией и экспериментальной версией и (ii) направлением изменения в пользовательских взаимодействиях между контрольной версией и экспериментальной версией. Направление может быть положительным или отрицательным.
[0010] В некоторых вариантах осуществления способа, выбор значения линеаризации для линеаризованной пользовательской метрики представляет собой: определение сервером одного из контрольного коэффициента и экспериментального коэффициента; выбор сервером одного из контрольного коэффициента и экспериментального коэффициента в качестве значения линеаризации.
[0011] В некоторых вариантах осуществления способа, выбор значения линеаризации для линеаризованной пользовательской метрики может включать в себя: определение сервером интервала значения линеаризации, который включает в себя все значения между контрольным коэффициентом и экспериментальным коэффициентом включительно; и выбор сервером любого значения из интервала значений линеаризации в качестве значения линеаризации.
[0012] В некоторых вариантах осуществления способа, он далее включает в себя применение сервером проверки на статистическую значимость для определения уровня значимости разницы между значениями ОЕС.
[0013] В некоторых вариантах осуществления способа, проверка статистической значимости может представлять собой одно из: бутстрэп-тест; дельта-тест; и т-тест.
[0014] В некоторых вариантах осуществления способа, проверка на статистическую значимость может представлять собой т-тест, и способ может дополнительно включать в себя определение сервером, для каждой из контрольной версии и экспериментальной версии, соответствующего набора значений с повышенной чувствительностью путем применения повышающего чувствительность алгоритма к соответствующему линеаризованному набору значений. Создание соответствующих значений ОЕС может включать в себя создание соответствующих средних значений для значений соответствующих наборов с повышенной чувствительностью.
[0015] В некоторых вариантах осуществления способа, способ может далее включать в себя выбор одной из контрольной версии и экспериментальной версии в качестве текущей версии исполняемого на компьютере сервиса на основе направления изменения во взаимодействиях пользователя с контрольной и экспериментальной версиях.
[0016] В некоторых вариантах осуществления способа, одна из первой и второй пользовательской метрики может представлять собой одно из: число кликов пользователя; число запросов пользователя; и число сессий пользователя.
[0017] В некоторых вариантах осуществления способа, линеаризованная пользовательская метрика может являться линейной комбинацией первой и второй пользовательских метрик в соответствии с:
L(ui) = Х(ui) - к * Y(ut)
где: L - линеаризованная пользовательская метрика, X - первая пользовательская метрика, Y - вторая пользовательская метрика, и к - значение линеаризации.
[0018] Вторым объектом настоящей технологии является сервер для создания значений общего критерия оценки (ОЕС) для использования во время тестирования контроль/эксперимент исполняемого на компьютере сервиса для выбора текущей версии исполняемого на компьютере сервиса между контрольной версией и экспериментальной версией. Сервер выполнен с возможностью осуществлять, для каждой из контрольной и экспериментальной версии: получение соответствующего набора данных, указывающих на пользовательские взаимодействия с соответствующей одной из контрольной и экспериментальной версий; определение соответствующего первого набора значений на основе соответствующего набора данных, которые являются значениями первой пользовательской метрики; и определение соответствующего второго набора значений на основе соответствующего набора данных, которые являются значениями второй пользовательской метрики. Сервер выполнен с возможностью выбирать значение линеаризации для линеаризованной пользовательской метрики. Линеаризованная пользовательская метрика является линейной комбинацией первой и второй пользовательских метрик. ОЕС основан на линеаризованной пользовательской метрике. Значение линеаризации находится между коэффициентом контроля и коэффициентом эксперимента. Контрольный коэффициент является отношением (i) среднего значения из значений первого набора контрольной версии к (ii) среднему значению из значений второго набора контрольной версии. Экспериментальный коэффициент является отношением (i) среднего значения из значений первого набора экспериментальной версии к (ii) среднему значению из значений второго набора экспериментальной версии. Сервер выполнен с возможностью осуществлять, для каждой из контрольной и экспериментальных версий, определение соответствующего линеаризованного набора значений, причем значения в данном линеаризованном наборе представляют собой разницу между (i) значениями соответствующего первого набора и (ii) значениями соответствующего второго набора, которые взвешены с помощью значения линеаризации; и создание значений ОЕС на основе линеаризованных наборов. Значения линеаризованных наборов представляют собой значения линеаризованной пользовательской метрики. Сервер выполнен с возможностью выполнять, для каждой из контрольной и экспериментальной версий, создание соответствующего значения ОЕС на основе соответствующих линеаризованных наборов. Разница между значениями ОЕС указывает на (i) степень изменения в пользовательских взаимодействиях между контрольной версией и экспериментальной версией и (ii) направлением изменения в пользовательских взаимодействиях между контрольной версией и экспериментальной версией. Направление может быть положительным или отрицательным.
[0019] В некоторых вариантах осуществления сервера, сервер, который выполнен с возможностью осуществлять выбор значения линеаризации для линеаризованной пользовательской метрики, далее представляет собой: сервер, который выполнен с возможностью осуществлять определение одного из контрольного коэффициента и экспериментального коэффициента; выбор одного из контрольного коэффициента и экспериментального коэффициента в качестве значения линеаризации.
[0020] В некоторых вариантах осуществления сервера, сервер, который выполнен с возможностью осуществлять выбор значения линеаризации для линеаризованной пользовательской метрики, может представлять собой сервер, который выполнен с возможностью осуществлять определение интервала значения линеаризации, который включает в себя все значения между контрольным коэффициентом и экспериментальным коэффициентом включительно; и выбор любого значения из интервала значений линеаризации в качестве значения линеаризации.
[0021] В некоторых вариантах осуществления сервера, сервер может быть далее выполнен с возможностью осуществлять применение проверки на статистическую значимость для определения уровня значимости разницы между значениями ОЕС.
[0022] В некоторых вариантах осуществления сервера, проверка статистической значимости может представлять собой одно из: бутстрэп-тест; дельта-тест; и т-тест.
[0023] В некоторых вариантах осуществления сервера, проверка на статистическую значимость может представлять собой т-тест, и сервер может быть дополнительно выполнен с возможностью осуществлять определение, для каждой из контрольной версии и экспериментальной версии, соответствующего набора значений с повышенной чувствительностью путем применения повышающего чувствительность алгоритма к соответствующему линеаризованному набору значений. Сервер, который выполнен с возможностью осуществлять создание соответствующих значений ОЕС, может представлять собой сервер, который выполнен с возможностью осуществлять создание соответствующих средних значений для значений соответствующих наборов с повышенной чувствительностью.
[0024] В некоторых вариантах осуществления сервера, сервер может далее быть выполнен с возможностью осуществлять выбор одной из контрольной версии и экспериментальной версии в качестве текущей версии исполняемого на компьютере сервиса на основе направления изменения во взаимодействиях пользователя из контрольной и экспериментальной версии.
[0025] В некоторых вариантах осуществления сервера, одна из первой и второй пользовательской метрики может представлять собой одно из: число кликов пользователя; число запросов пользователя; и число сессий пользователя.
[0026] В некоторых вариантах осуществления сервера, линеаризованная пользовательская метрика может являться линейной комбинацией первой и второй пользовательских метрик в соответствии с:
L(ui) = Х(ui) - к * Y(ui)
где: L - линеаризованная пользовательская метрика, X - первая пользовательская метрика, Y - вторая пользовательская метрика, и к - значение линеаризации.
[0027] В контексте настоящего описания, если четко не указано иное, «электронное устройство», «пользовательское устройство», «сервер» и «компьютерная система» подразумевают под собой аппаратное и/или системное обеспечение, подходящее к решению соответствующей задачи. Таким образом, некоторые неограничивающие примеры аппаратного и/или программного обеспечения включают в себя компьютеры (серверы, настольные компьютеры, ноутбуки, нетбуки и так далее), смартфоны, планшеты, сетевое оборудование (маршрутизаторы, коммутаторы, шлюзы и так далее) и/или их комбинацию.
[0028] В контексте настоящего описания, если четко не указано иное, "машиночитаемый носитель" и "память" подразумевает под собой носитель абсолютно любого типа и характера, не ограничивающие примеры включают в себя ОЗУ, ПЗУ, диски (компакт диски, DVD-диски, дискеты, жесткие диски и т.д.), USB-ключи, флеш-карты, твердотельные накопители и накопители на магнитной ленте.
[0029] В контексте настоящего описания, если конкретно не указано иное, слова «первый», «второй», «третий» и и т.д. используются в виде прилагательных исключительно для того, чтобы отличать существительные, к которым они относятся, друг от друга, а не для целей описания какой-либо конкретной взаимосвязи между этими существительными. Так, например, следует иметь в виду, что использование терминов «первый сервер» и «третий сервер» не подразумевает какого-либо порядка, отнесения к определенному типу, хронологии, иерархии или ранжирования (например) серверов/между серверами, равно как и их использование (само по себе) не предполагает, что некий "второй сервер" обязательно должен существовать в той или иной ситуации. В дальнейшем, как указано здесь в других контекстах, упоминание «первого» элемента и «второго» элемента не исключает возможности того, что это один и тот же фактический реальный элемент. Так, например, в некоторых случаях, «первый» сервер и «второй» сервер могут являться одним и тем же программным и/или аппаратным обеспечением, а в других случаях они могут являться разным программным и/или аппаратным обеспечением.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0030] Для лучшего понимания настоящей технологии, а также других ее аспектов и характерных черт, сделана ссылка на следующее описание, которое должно использоваться в сочетании с прилагаемыми чертежами, где:
[0031] На Фиг. 1 представлено неограничивающее схематическое изображение системы, соответствующей неограничивающим вариантам осуществления настоящей технологии.
[0032] На Фиг. 2 представлена схема процедуры определения общего критерия оценки (ОЕС), выполняемой сервером, показанным на Фиг. 1, в соответствии с неограничивающими вариантами осуществления настоящей технологии; и
[0033] На Фиг. 3 представлена блок-схема, демонстрирующая неограничивающий вариант осуществления способа определения общего критерия оценки (ОЕС), выполняемого в тестировании контроль/эксперимент исполняемого на компьютере сервиса в соответствии с неограничивающими вариантами осуществления настоящей технологии.
ОСУЩЕСТВЛЕНИЕ
[0034] На Фиг. 1 представлена принципиальная схема системы 100, выполненной в соответствии с вариантами осуществления настоящей технологии, не ограничивающими ее объем. Важно иметь в виду, что нижеследующее описание системы 100 представляет собой описание показательных вариантов осуществления настоящей технологии. Таким образом, все последующее описание представлено только как описание иллюстративного примера настоящей технологии. Это описание не предназначено для определения объема или установления границ настоящей технологии. Некоторые полезные примеры модификаций системы 100 также могут быть охвачены нижеследующим описанием. Целью этого является также исключительно помощь в понимании, а не определение объема и границ настоящей технологии. Эти модификации не представляют собой исчерпывающий список, и специалистам в данной области техники будет понятно, что возможны и другие модификации. Кроме того, это не должно интерпретироваться так, что там, где это еще не было сделано, т.е. там, где не были изложены примеры модификаций, никакие модификации невозможны, и/или что то, что описано, является единственным вариантом осуществления этого элемента настоящего технического решения. Как будет понятно специалисту в данной области техники, это, скорее всего, не так. Кроме того, следует иметь в виду, что система 100 представляет собой в некоторых конкретных проявлениях достаточно простой вариант осуществления настоящей технологии, и в подобных случаях этот вариант представлен здесь с целью облегчения понимания. Как будет понятно специалисту в данной области техники, многие варианты осуществления настоящей технологии будут обладать гораздо большей сложностью.
[0035] Системы 100 включают в себя первое множество электронных устройств 140 и второе множество электронных устройств 160. Первое множество электронных устройств 140 включает в себя первое, второе и третье электронное устройство 142, 144 и 146. Второе множество электронных устройств 160 включает в себя четвертое, пятое и шестое электронное устройство 162, 164 и 166.
[0036] Каждое из первого множества электронных устройств 140 связано с соответствующим пользователем из первого множества пользователей 150, и каждое из второго множества электронных устройств 160 связано с соответствующим пользователем из второго множества пользователей 170. Другими словами, первое электронное устройство 142 связано с первым пользователем 152 из первого множества пользователей 150, второе электронное устройство 144 связано со вторым пользователем 154 из первого множества пользователей 150, третье электронное устройство 146 связано с третьим пользователем 156 из первого множества пользователей 150, четвертое электронное устройство 162 связано с четвертым пользователем 172 из второго множества пользователей 170, пятое электронное устройство 164 связано с пятым пользователем 172 из второго множества пользователей 170 и шестое электронное устройство 166 связано с шестым пользователем 176 из второго множества пользователей 170. Таким образом, любое из первого множества электронных устройств 140 или любое из второго множества электронных устройств 160 может иногда упоминаться как "клиентское устройство", "устройство конечного пользователя" или "клиентское электронное устройство". Следует отметить, что тот факт, что каждое из первого множества электронных устройств 140 и каждое из второго множества электронных устройств 160 связано с соответствующим пользователем, не подразумевает какого-либо конкретного режима работы, равно как и необходимости входа в систему, необходимости быть зарегистрированным, или чего-либо подобного.
[0037] Варианты осуществления данного электронного устройства из первого множества электронных устройств 140 или из второго множества электронных устройств 160 никак конкретно не ограничены, но в качестве примера данное электронное устройство может быть реализовано как персональный компьютер (настольный компьютер, ноутбук, нетбук и т.п.), устройство беспроводной связи (смартфон, мобильный телефон, планшет и т.п.), а также сетевое оборудование (маршрутизаторы, коммутаторы или шлюзы). Данное электронное устройство включает в себя аппаратное обеспечение и/или системное программное обеспечение и/или прикладное программное обеспечение, как известно в данной области техники, для (i) предоставления доступа к исполняемому на компьютере сервису 115 соответствующему пользователю и (ii) передачи указаний на пользовательские взаимодействия соответствующего пользователя с исполняемым на компьютере сервисе 115.
[0038] В общем случае, исполняемый на компьютере сервис 115 является приложением, выполняемым сервером 106, которое предназначено для решения одной или нескольких пользовательских потребностей или проблем. Например, картографический сервис, который является примером исполняемого на компьютере сервисом 115, предназначен для решения пользовательской проблемы определения конкретного маршрута от Точки А к Точке В. В общем случае, пользователи получают доступ к исполняемому на компьютере сервису 115 с помощью соответствующих электронных устройств путем получения доступа или авторизации в заранее определенном веб-ресурсе, находящемся на сервере 106.
[0039] В некоторых вариантах осуществления настоящей технологии, исключительно в качестве иллюстрации, а не ограничения, исполняемый на компьютере сервис 115 может представлять собой картографический сервис, сервис погоды, сервис поисковой системы общего назначения, сервис вертикальной поисковой системы, сервис электронной почты, сервис облачного хранения, сервис доставки и тому подобное, который реализован сервером 106. То, как именно исполняемый на компьютере сервис 115 реализован сервером 106, будет описано ниже.
[0040] Каждое из первого множества электронных устройств 104 и каждое из второго множества электронных устройств 160 коммуникативно соединено с сетью 110 передачи данных для доступа к серверу 106. В некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, сеть 110 передачи данных может представлять собой Интернет. В других неограничивающих вариантах осуществления настоящей технологии, сеть 110 передачи данных может быть реализована иначе - в виде глобальной сети связи, локальной сети связи, частной сети связи и т.п. То, как именно реализованы линия передачи данных (не пронумеровано отдельно) между данным одним из первого или второго множества электронных устройств 140 и 160 и сеть 110 передачи данных будет зависеть, среди прочего, от того, как реализовано данное одно из первого или второго множества электронных устройств 140 и 160.
[0041] В качестве примера, но не ограничения, в данных вариантах осуществления настоящей технологии в случаях, когда данное электронное устройство представляет собой беспроводное устройство связи (например, смартфон), линия передачи данных представляет собой беспроводную сеть передачи данных (например, среди прочего, линия передачи данных 3G, линия передачи данных 4G, беспроводной интернет Wireless Fidelity или коротко WiFi®, Bluetooth® и т.п.). В тех примерах, где данное электронное устройство представляет собой портативный компьютер, линия связи может быть как беспроводной (беспроводной интернет Wireless Fidelity или коротко WiFi®, Bluetooth® и т.п) так и проводной (соединение на основе сети Ethernet).
[0042] Следует отметить, что первое множество электронных устройств 140 и второе множество электронных устройств 160 представлено на Фиг. 1 как включающее в себя три (3) электронных устройства исключительно в качестве примера. Следует иметь в виду, что первое множество электронных устройств 140 и второе множество электронных устройств 160 может включать в себя большое число электронных устройств, например, 500, 1000, 10000, 100000 электронных устройств. Аналогичным образом, что первое множество пользователей 150 и второе множество пользователей 170 может включать в себя большое число электронных устройств, например, 500, 1000, 10000, 100000 пользователей.
[0043] Система 100 также включает в себя сервер 106, который может быть реализован как обычный сервер. В примере варианта осуществления настоящей технологии сервер 106 может представлять собой сервер Dell™ PowerEdge™, на котором используется операционная система Microsoft™ Windows Server™. Излишне говорить, что сервер 106 может представлять собой любое другое подходящее аппаратное, прикладное программное, и/или системное программное обеспечение или их комбинацию. В представленных неограничивающих вариантах осуществления настоящей технологии сервер 106 является одиночным сервером. В других неограничивающих вариантах осуществления настоящей технологии, функциональность сервера 106 может быть разделена, и может выполняться с помощью нескольких серверов.
[0044] Сервер 106 коммуникативно связан с сетью 110 передачи данных с возможностью предоставлять доступ каждому из первого множества электронных устройств 140 и каждому из второго множества электронных устройств 160.
[0045] Сервер 106 также коммуникативно соединен с базой 108 данных, которая выполнена с возможностью сохранять информацию, извлеченную, созданную или иным образом определенную сервером 106 во время обработки. В общем случае, база данных 108 может получать данные с сервера 106, которые были извлечены, созданы или иным образом определены сервером 106 во время обработки для временного и/или постоянного хранения, и могут предоставлять сохраненные данные серверу 106 для использования. В представленном варианте осуществления настоящей технологии, не ограничивающем ее объем, база данных 108 является одиночной базой данных. В других неограничивающих вариантах осуществления настоящей технологии, функциональность базы 108 данных может быть разделена, и может выполняться с помощью нескольких баз данных.
[0046] Как уже ранее упоминалось, сервер 106 реализует исполняемый на компьютере сервис 115, нацеленный на решение одной или нескольких пользовательских потребностей или проблем. В общем случае, оператор данного исполняемого на компьютере сервиса модифицирует или уточняет время от время данный исполняемый на компьютере сервис для улучшения того, как именно данный исполняемый на компьютере сервис решает одну или несколько пользовательских потребностей или проблем. С этой целью, различные версии данного исполняемого на компьютере сервиса могут быть созданы таким образом, что каждая версия, в некотором смысле, является "обновлением" предыдущей версии.
[0047] Обновленная версия данного исполняемого на компьютере сервиса может быть создана путем применения "эксперимента" к предыдущей версии. Эта предыдущая версия известна как "контрольная версия" или "А версия" данного исполняемого на компьютере сервиса, а обновленная версия, которая создается путем применения "эксперимента" к данной контрольной версии, известна как "экспериментальная версия" или "В версия" данного исполняемого на компьютере сервиса.
[0048] Как показано на Фиг. 1, контрольная версия 120 и экспериментальная версия 130 исполняемого на компьютере сервиса 115 доступны на сервере 106. Эксперимент, который был применен к контрольной версии 120 для создания экспериментальной версии 130, может зависеть, среди прочего, от типа исполняемого на компьютере сервиса 115. Например, если исполняемый на компьютере сервис 115 является сервисом поисковой системы, контрольная версия 120 может подвергаться эксперименту путем модификации или уточнения: эстетического вида сервиса поисковой системы при просмотре данным пользователем, алгоритма представления сервиса поисковой системы, изменения способа ранжирования или поиска сервиса поисковой системы или любой их комбинации. Подразумевается, что другие эксперименты, отличные от не являющегося исчерпывающим списка, представленного выше, могут применяться к контрольной версии 120 для создания экспериментальной версии 130, не выходя за границы настоящей технологии.
[0049] Следует иметь в виду, что, поскольку контрольная версия 120 отличается от экспериментальной версии 130 (т.е. эксперимент был применен к контрольной версии 120 для создания экспериментальной версии 130), одна из (i) контрольной версии 120 и (ii) экспериментальной версии 130 может лучше решать одну или несколько пользовательских потребностей или проблем, чем другая из (i) контрольной версии 120 и (ii) экспериментальной версии 130. Следовательно, качество исполняемого на компьютере сервиса 115 может восприниматься по-разному в зависимости от того, предоставляется ли пользователям контрольная версия 120 или экспериментальная версия 130.
[0050] В общем случае, качество данной версии данного исполняемого на компьютере сервиса может оцениваться в терминах общего критерия оценки (ОЕС), который основан на метрике поведения пользователя, которая коррелирует с качеством данной версии. Например, метрики пользовательского поведения, на которых основываются часто используемые ОЕС, без установки ограничений, могут представлять собой: кликабельность, время простоя, уровень отказа и т.д.
[0051] Следует иметь в виду, что разница между (i) значением данного ОЕС для контрольной версии 120 и (ii) значением данного ОЕС для экспериментальной версии 130 (т.е. ΔОЕС) может указывать на качество изменения между контрольной версией 120 и экспериментальной версией 130. Изменение в качестве могут относиться к "экспериментальному эффекту", вызванному применением эксперимента к контрольной версии 120 для создания экспериментальной версии 130.
[0052] Оператор исполняемого на компьютере сервиса 115 может желать определения данного ΔОЕС, чтобы (i) определить, какая из версий - контрольная версия 120 или экспериментальная версия 130 - обладает более высоким качеством и (ii) выбрать эту версию в качестве текущей версии исполняемого на компьютере сервиса 115, которая предназначена для предоставления пользователям исполняемого на компьютере сервиса 115.
[0053] Тем не менее, данный ΔОЕС должен удовлетворять двум (2) требованиям, чтобы оператор был уверен в определения того, какая из версий - контрольная версия 120 или экспериментальная версия 130 - обладает лучшим качеством.
[0054] Во-первых, ΔОЕС должен предоставлять количественное значение, которое позволит сделать заключение изменении в качестве, в частности, о знаке и степени изменения в качестве. Это качество называется "направленностью". Тем не менее, различие в ОЕС (которые основаны на различных метриках пользовательского поведения) обычно коррелирует с качеством данной версии. Следовательно, в зависимости от того, на какой метрике пользовательского поведения основан ОЕС, могут определяться различные ΔОЕС. Это может привести к противоречивому пониманию и к тому, что использование этих метрик пользовательского поведения на практике будет усложнено. Следовательно, выбор подходящей метрики пользовательского поведения, на которой будет основан ОСЕ, может быть затруднительным.
[0055] Следовательно, ΔОЕС должна определять изменение в качестве между контрольной версией 120 и экспериментальной версией 130 на высоком уровне статистической значимости для того, чтобы отличать "экспериментальный эффект" от шума, полученного в случае, когда "экспериментальный эффект" отсутствует. Это качество называется "чувствительностью". Некоторые метрики пользовательского поведения, на которых основываются некоторые ОЕС, могут обладать низкой чувствительностью в случаях, когда были сделаны едва заметные модификации или изменения или только небольшое число пользователей было подвергнуто "эффекту эксперимента" (т.е. число пользователей, которым показана экспериментальная версия 130). Следовательно, выбор подходящей метрики пользовательского поведения, на которой будет основан данный ОЕС, может быть сложной задачей, поскольку определенное изменение качества между контрольной версией 120 и экспериментальной версией 130, может не быть статистически значимо, если данный ОЕС основан на неподходящей метрике пользовательского поведения.
[0056] Следует отметить, что для определения уровня статистической значимости изменения в качестве, могут быть использованы различные проверки статистической значимости, например, без установки ограничений: бутстрэп-тест, дельта-тест, т-тест и так далее. Тем не менее, вариант осуществления конкретной проверки статистической значимости зависит, среди прочего, от метрики пользовательского поведения, на которой основан данный ОЕС. Например, существуют некоторые метрики пользовательского поведения, которые могут быть использованы в сочетании с бутстрэп-тестом и дельта-тестом, но не с т-тестом. Использование тех метрик пользовательского поведения, на которых часто основаны ОЕС, может быть нежелательным, поскольку выполнение бутстрэп-теста для определения уровня статистической значимости изменения в качестве требует большей вычислительной мощности по сравнению с т-тестом.
[0057] Дополнительно, многие повышающие чувствительность алгоритмы, которые могут использоваться в комбинации с метриками пользовательского поведения, для которых применимы т-тесты, были разработаны для повышения чувствительности этих метрик пользовательского поведения. Например, эти повышающие чувствительность алгоритмы включают в себя, без установки ограничения: корректировку регрессии, прогноз будущего значения, изученная линейная комбинация и так далее. Следовательно, выбор метрики пользовательского поведения, к которой применима проверка т-тестом, может быть полезен, поскольку чувствительность этой метрики пользовательского поведения может быть увеличена.
[0058] Следовательно, подразумевается, что в некоторых вариантах осуществления настоящей технологии сервер 106 выполнен с возможностью использовать данный ОЕС, который основан на линеаризованной пользовательской метрике, которая является конкретной метрикой пользовательского поведения, и может решить по меньшей мере некоторые из заявленных выше проблем. Далее будет описана линеаризованная пользовательская метрика и то, как сервер 106 использует ОЕС, который основан на этой линеаризованной пользовательской метрике для определения изменения в качестве между контрольной версией 120 и экспериментальной версией 130.
[0059] Предположим, когда данное одно из первого множества электронных устройств 140 запрашивает доступ к исполняемому компьютером сервису 115, сервер 106 предоставляет доступ к контрольной версии 120 исполняемого на компьютере сервиса 115. Следовательно, предположим, что первое множество пользователей 150, которые взаимодействовали с контрольной версией 120 исполняемого на компьютере сервиса 115.
[0060] Таким образом, сервер 106 выполнен с возможностью получать указания на пользовательские взаимодействия каждого из первого множества пользователей 150 с контрольной версией 120 исполняемого на компьютере сервиса 115. Типы пользовательских взаимодействий не ограничены, но, например, могут включать в себя: клики пользователей, сессии пользователей, запросы пользователей и так далее.
[0061] Например, первое электронное устройство 142 может создавать первый пакет 143 данных, который включает в себя указания на пользовательские взаимодействия первого пользователя 152 с контрольной версией 120. Первый пакет данный 143 может передаваться первым электронным устройством 142 через сеть 110 передачи данных и могут быть получены сервером 106. Аналогично, второе электронное устройство 144 может создавать второй пакет 145 данных, который включает в себя указания на пользовательские взаимодействия второго пользователя 154 с контрольной версией 120. Первый пакет 143 данных может передаваться вторым электронным устройством 144 через сеть 110 передачи данных и может быть получен сервером 106. Третье электронное устройство 146 может создавать третий пакет 147 данных, который содержит указания на пользовательские взаимодействия третьего пользователя 156 с контрольной версией 120. Третий пакет данный 145 может передаваться третьим электронным устройством 146 через сеть 110 передачи данных и могут быть получены сервером 106.
[0062] Также, предположим, когда данное одно из второго множества электронных устройств 160 запрашивает доступ к исполняемому компьютером сервису 115, сервер 106 предоставляет доступ к экспериментальной версии 130 исполняемого на компьютере сервиса 115. Следовательно, предположим, что второе множество пользователей 170, которые взаимодействовали с экспериментальной версией 130 исполняемого на компьютере сервиса 115.
[0063] Таким образом, сервер 106 выполнен с возможностью получать указания на пользовательские взаимодействия каждого из второго множества пользователей 170 с экспериментальной версией 130 исполняемого на компьютере сервиса 115.
[0064] Сервер 106 может получать указания на пользовательские взаимодействия каждого из второго множества пользователей 170 с экспериментальной версией 130 аналогично тому как сервер 106 получает указания на пользовательские взаимодействия каждого из первого множества пользователей 150 с контрольной версией 120 исполняемого на компьютере сервиса 115. Например, четвертое, пятое и шестое электронное устройство 162, 164 и 166 могут создавать соответствующие четвертый, пятый и шестой пакет 163, 165 и 167 данных, которые включают указания на пользовательские взаимодействия четвертого, пятого и шестого пользователя 172, 174 и 176 соответственно с экспериментальной версией 130. Четвертый, пятый и шестой пакет 163, 165 и 167 данных могут передаваться через сеть 110 передачи данных и могут быть получены сервером 106.
[0065] Некоторые варианты осуществления настоящей технологии, сервер 112 может быть выполнен с возможностью сохранять информацию, полученные через первый, второй, третий, четвертый, пятый и шестой пакет 143, 145, 147, 163, 165 и 167 данных в базе 108 данных.
[0066] Со ссылкой на Фиг. 2, указания на пользовательские указания, полученные сервером 106 в первом, втором и третьем пакете 143, 145 и 147 данных, представляют контрольный набор 202 данных, который указывает на пользовательские взаимодействия первого множества пользователей 150 с контрольной версией 120 исполняемого на компьютере сервиса 115. Указания на пользовательские указания, полученные сервером 106 в четвертом, пятом и шестом пакете 163, 165 и 167 данных, представляют экспериментальный набор 204 данных, который указывает на пользовательские взаимодействия второго множества пользователей 170 с экспериментальной версией 130 исполняемого на компьютере сервиса 115.
[0067] В общем случае, сервер 106 выполнен с возможностью определения значений первой пользовательской метрики и второй пользовательской метрики из контрольного набора 202 данных и из экспериментального набора 204 данных. Данная пользовательская метрика является метрикой пользовательского поведения, значение которой может определяться для каждого индивидуального пользователя. Другими словами, значения данной пользовательской метрики определяются для каждого пользователя. Примеры пользовательских метрик включают в себя, без установки ограничений: число кликов пользователя, число запросов пользователя, число сессий пользователя и так далее. Следовательно, исключительно в качестве примера, в случае, когда данная пользовательская метрика представляет собой число сессий пользователя, значение данной пользовательской метрики может быть пять (5) сессий для первого данного пользователя и три (3) сессий для второго данного пользователя.
[0068] Таким образом, сервер 106 выполнен с возможностью определять первый контрольный набор значений 206 на основе контрольного набора 202 данных таким образом, что значения 208, 210 и 212 первого контрольного набора значений 206 являются значениями первой пользовательской метрики для соответствующего одного из первого множества пользователей 150.
[0069] В качестве иллюстрации, предположим, что первая пользовательская метрика является числом кликов пользователя. Это означает, что сервер 106 выполнен с возможностью определять, на основе контрольного набора 202 данных, число кликов, которые каждый пользователь из первого множества пользователей 150, выполнил на контрольной версии 120 исполняемого на компьютере сервиса 115. В этом примере, сервер 106 может определять, что значение 208 представляет собой число кликов, которые выполнил первый пользователь 152 на контрольной версии 120. Также, в этом примере, сервер 106 может определять, что значение 210 представляет собой число кликов, которые выполнил второй пользователь 154 на контрольной версии 120. Далее в этом примере, сервер 106 может определять, что значение 212 представляет собой число кликов, которые выполнил третий пользователь 156 на контрольной версии 120.
[0070] Аналогично, сервер 106 выполнен с возможностью определять первый экспериментальный набор значений 214 на основе экспериментального набора 204 данных таким образом, что значения 216, 218 и 220 первого экспериментального набора значений 214 являются значениями первой пользовательской метрики для соответствующего одного из второго множества пользователей 170.
[0071] Другими словами, сервер 106 выполнен с возможностью определять, на основе экспериментального набора 204 данных, число кликов, которые каждый пользователь из второго множества пользователей 170, выполнил на экспериментальной версии 130 исполняемого на компьютере сервиса 115. В этом примере, сервер 106 может определять, что значение 216 представляет собой число кликов, которые выполнил четвертый пользователь 172 на экспериментальной версии 130. Также, в этом примере, сервер 106 может определять, что значение 218 представляет собой число кликов, которые выполнил пятый пользователь 174 на экспериментальной версии 130. Далее в этом примере, сервер 106 может определять, что значение 220 представляет собой число кликов, которые выполнил шестой пользователь 176 на экспериментальной версии 130.
[0072] Следовательно, можно сказать, что сервер 106 выполнен с возможностью определять первый контрольный набор значений 206 и первый экспериментальный набор значений 214 для контрольной версии 120 и экспериментальной версии 130 соответственно, причем значения 208, 210 и 212 являются значениями первой пользовательской метрики для контрольной версии 120, а значения 216, 218 и 220 являются значениями первой пользовательской метрики для экспериментальной версии 130.
[0073] Сервер 106 выполнен с возможностью определять второй контрольный набор значений 222 и второй экспериментальный набор значений 230 для второй пользовательской метрики.
[0074] Сервер 106 выполнен с возможностью определять второй контрольный набор значений 206 на основе контрольного набора 202 данных таким образом, что значения 208, 210 и 212 второго контрольного набора значений 206 являются значениями второй пользовательской метрики.
[0075] В качестве иллюстрации, предположим, что вторая пользовательская метрика является числом запросов пользователя. Это означает, что сервер 106 выполнен с возможностью определять, на основе контрольного набора 202 данных, число запросов, которые каждый пользователь из первого множества пользователей 150, выполнил на контрольной версии 120 исполняемого на компьютере сервиса 115. В этом примере, сервер 106 может определять, что значение 224 представляет собой число запросов, которые выполнил первый пользователь 152 на контрольной версии 120. Также, в этом примере, сервер 106 может определять, что значение 226 представляет собой число запросов, которые выполнил второй пользователь 154 на контрольной версии 120. Далее в этом примере, сервер 106 может определять, что значение 228 представляет собой число запросов, которые выполнил третий пользователь 156 на контрольной версии 120.
[0076] Аналогично, сервер 106 выполнен с возможностью определять второй экспериментальный набор значений 230 на основе экспериментального набора 204 данных таким образом, что значения 232, 234 и 236 второго экспериментального набора значений 230 являются значениями второй пользовательской метрики.
[0077] Другими словами, сервер 106 выполнен с возможностью определять, на основе экспериментального набора 204 данных, число запросов, которые каждый пользователь из второго множества пользователей 170, выполнил на экспериментальной версии 130 исполняемого на компьютере сервиса 115. В этом примере, сервер 106 может определять, что значение 232 представляет собой число запросов, которые выполнил четвертый пользователь 172 на экспериментальной версии 130. Также, в этом примере, сервер 106 может определять, что значение 234 представляет собой число запросов, которые выполнил пятый пользователь 174 на экспериментальной версии 130. Далее в этом примере, сервер 106 может определять, что значение 236 представляет собой число запросов, которые выполнил шестой пользователь 176 на экспериментальной версии 130.
[0078] Следовательно, можно сказать, что сервер 106 выполнен с возможностью определять второй контрольный и второй экспериментальный набор значений 222 и 230 для контрольной версии и экспериментальной версии 120 и 130 соответственно, причем значения 224, 226 и 228 являются значениями второй пользовательской метрики для контрольной версии 120, а значения 232, 234 и 236 являются значениями второй пользовательской метрики для экспериментальной версии 130.
[0079] В целом, можно сказать, что сервер 106 выполнен с возможностью определять пару значений для (i) каждого из первого множества пользователей 150, которые взаимодействовали с контрольной версией 120 и (ii) каждого из второго множества пользователей 170, которые взаимодействовали с экспериментальной версией 130. Также, одно из каждой пары значений является значением первой пользовательской метрики и другие из каждой пары значений является значением второй пользовательской метрики. Это означает, что сервер 106 выполнен с возможностью определять:
- для первого пользователя 152 значение 208 (значение первой пользовательской метрики для первого пользователя 152) и значение 224 (значение второй пользовательской метрики для первого пользователя 152);
- для второго пользователя 154 значение 210 (значение первой пользовательской метрики для второго пользователя 154) и значение 226 (значение второй пользовательской метрики для второго пользователя 154);
- для третьего пользователя значение 212 (значение первой пользовательской метрики для третьего пользователя 156) и значение 228 (значение второй пользовательской метрики для третьего пользователя 156);
- для четвертого пользователя 172 значение 216 (значение первой пользовательской метрики для четвертого пользователя 172) и значение 232 (значение второй пользовательской метрики для четвертого пользователя 172);
- для пятого пользователя 174 значение 218 (значение первой пользовательской метрики для пятого пользователя 174) и значение 234 (значение второй пользовательской метрики для пятого пользователя 174); и
- для шестого пользователя 176 значение 220 (значение первой пользовательской метрики для шестого пользователя 176) и значение 236 (значение второй пользовательской метрики для шестого пользователя 176).
[0080] Как уже ранее упоминалось, сервер 106 выполнен с возможностью использовать данный ОЕС для оценки и сравнения качества контрольной версии 102 и экспериментальной версии 130, которые основаны на линеаризованной пользовательской метрике. Подразумевается, что линеаризованная пользовательская метрика является линейной комбинацией первой и второй пользовательских метрик.
[0081] Линеаризованная пользовательская метрика (например, линейная комбинация первой и второй пользовательских метрик) может быть определена в соответствии с уравнением (1):
где X - первая пользовательская метрика, Y - вторая пользовательская метрика и к значение линеаризации. Таким образом, L(ui), представляющее собой данное значение линеаризованную пользовательскую метрика для данного пользователя i основано на (i)X(ui), которое является данным значением первой пользовательской метрики для данного пользователя i, (ii) Y(ui), которое является данным значением второй пользовательской метрики для данного пользователя i и (iii) значением линеаризации к. Другими словами, L(ui) - разница между Х(ui) и взвешенным Y(ui) (т.е. взвешенным с помощью к).
[0082] В некоторых вариантах осуществления технологии, сервер 106 выполнен с возможностью определять данное значение линеаризованной пользовательской метрики (т.е. L(ui)) для каждого из первого множества пользователей 150 и для каждого из второго множества пользователей 170. Тем не менее, для того чтобы сервер 106 определил значения линеаризованной пользовательской метрики, необходимо выбрать значение линеаризации к. То как будет выполняться выбор линеаризованного значения к сервером 106, будет описано далее.
[0083] В некоторых вариантах осуществления технологии, сервер 106 выполнен с возможностью определять одно из (i) контрольный коэффициент Rc и (ii) экспериментальный коэффициент Rt и выбирать значение линеаризации к. Сервер 106 может быть выполнен с возможностью определять контрольный коэффициент Rc и экспериментальный коэффициент Rt по уравнениям (2) (3) соответственно:
где Uc - первое множество пользователей 150 и Ut - второе множество пользователей 170.
[0084] Контрольный коэффициент Rc представляет собой отношение (i) среднего значения из значений 208, 210 и 212 из первого контрольного набора значений 206 к (ii) среднее значение из значений 224, 226 и 228 из второго контрольного набора значений 222. Экспериментальный коэффициент Rt представляет собой отношение (i) среднего значения из значений 216, 218 и 220 из первого экспериментального набора значений 214 к (ii) среднее значение из значений 232, 234 и 236 из второго экспериментального набора значений 230.
[0085] Следует отметить, что сервер 106 может выполнять различные способы усреднения для определения данного среднего значения соответствующего набора значений. Например, в одном варианте осуществления технологии, данное среднее значение может представлять собой усредненное значение соответствующего набора значений. Тем не менее, в других вариантах осуществления технологии, данное среднее значение может представлять собой одной из (i) данное медианное значение и (ii) данное значение моды из значений соответствующего набора значений, не выходя за границы настоящей технологии.
[0086] В других вариантах осуществления технологии, значение линеаризации к может быть выбрано из интервала значений линеаризации, которое определяется уравнением (4):
Таким образом, значение линеаризации к является элементов интервала значений линеаризации, который включает в себя все значения между контрольным коэффициентом Rc и экспериментальным коэффициентом Rt, а также значением контрольного коэффициента Rc и значением экспериментального коэффициента Rt. Другими словами, к может быть равно (i) Rc, (ii) Rt или (iii) любому значению между Rc и Rt.
[0087]
[0088] Подразумевается, что сервер 106 может быть выполнен с возможностью определять как контрольный коэффициент Rc, так и экспериментальный коэффициент Rt для определения интервала значений линеаризации в соответствии с уравнением (4). Таким образом, сервер 106 может далее быть выполнен с возможностью выбирать любое данное значение в интервале значений линеаризации (т.е. любое данное значение между контрольным коэффициентом и Rc экспериментальным коэффициентом Rt включительно) в качестве значения линеаризации к.
[0089] Также подразумевается, что после того как сервер 106 определил интервал значений линеаризации, сервер 106 может предоставлять интервал значений линеаризации оператору исполняемого на компьютере сервиса 115 для выбора любого данного значения в интервале значений линеаризации в качестве значения линеаризации к.
[0090] Как уже упоминалось ранее, сервер 106 выполнен с возможностью определять данное значение линеаризованной пользовательской метрики (т.е. L(ui)) для каждого из первого множества пользователей 150 и для каждого из второго множества пользователей 170. Таким образом, сервер 106 выполнен с возможностью определять контрольный линеаризованный набор значений 244 для первого множества пользователей 150 (т.е. пользователей, которые взаимодействовали с контрольной версией 120) и экспериментальный линеаризованный набор значений 252 для второго множества пользователей 170 (т.е.е пользователей, которые взаимодействовали с экспериментальной версией 130).
[0091] Сервер 106 выполнен с возможностью определять контрольный линеаризованный набор значений 244 на основе (i) первого контрольного набора значений 206, (ii) второго контрольного набора значений 222 и (iii) значения линеаризации к. Каждое значение в контрольном линеаризованном наборе значений 244 определяется с помощью уравнения (1) для соответствующего пользователя из первого множества пользователей 150. Другими словами, каждое значение в контрольном линеаризованном наборе значений 244 является значением линеаризованной пользовательской метрики для соответствующего пользователя из первого множества пользователей 150.
[0092] Следует отметить, что значение 238 контрольного линеаризованного набора значений 244 для первого пользователя 152 является разницей между значением 208 первого контрольного набора значений 206 и значением 224 из второго контрольного набора значений 222, причем значение 224 взвешено с помощью значения линеаризации к. Также значение 240 контрольного линеаризованного набора значений 244 для второго пользователя 154 является разницей между значением 210 первого контрольного набора значений 206 и значением 226 из второго контрольного набора значений 222, причем значение 226 взвешено с помощью значения линеаризации к. Кроме того, значение 242 контрольного линеаризованного набора значений 244 для третьего пользователя 156 является разницей между значением 212 первого контрольного набора значений 206 и значением 228 из второго контрольного набора значений 222, причем значение 228 взвешено с помощью значения линеаризации к.
[0093] Сервер 106 также выполнен с возможностью определять экспериментальный линеаризованный набор значений 252 на основе (i) первого экспериментального набора значений 214, (ii) второго экспериментального набора значений 230 и (iii) значения линеаризации к. Каждое значение в экспериментальном линеаризованном наборе значений 240 определяется с помощью уравнения (1) для соответствующего пользователя из второго множества пользователей 170. Другими словами, каждое значение в экспериментальном линеаризованном наборе значений 252 является значением линеаризованной пользовательской метрики для соответствующего пользователя из второго множества пользователей 170.
[0094] Следует отметить, что значение 246 экспериментального линеаризованного набора значений 252 для четвертого пользователя 172 является разницей между значением 216 первого экспериментального набора значений 214 и значением 232 из второго экспериментального набора значений 230, причем значение 232 взвешено с помощью значения линеаризации к. Также значение 248 экспериментального линеаризованного набора значений 252 для пятого пользователя 174 является разницей между значением 218 первого экспериментального набора значений 214 и значением 234 из второго экспериментального набора значений 230, причем значение 234 взвешено с помощью значения линеаризации к. Кроме того, значение 250 экспериментального линеаризованного набора значений 252 для шестого пользователя 176 является разницей между значением 220 первого экспериментального набора значений 214 и значением 236 из второго экспериментального набора значений 230, причем значение 236 взвешено с помощью значения линеаризации к.
[0095] В общем, можно сказать, что сервер 106 выполнен с возможностью определять контрольный и экспериментальный линеаризованные наборы значений 244 и 252, которые включают в себя соответствующее значение линеаризованной пользовательской метрики для каждого из первого множества пользователей 150 и для каждого из второго множества пользователей 170.
[0096] Как уже ранее упоминалось, сервер 106 выполнен с возможностью использовать данный ОЕС для оценки и сравнения качества контрольной версии 102 и экспериментальной версии 130, которые основаны на линеаризованной пользовательской метрике. С этой целью, сервер 106 выполнен с возможностью создавать соответствующее значение данного ОЕС для каждой из контрольной версии 120 и экспериментальной версии 130 на основе контрольного и экспериментального наборов значений 244 и 252.
[0097] В некоторых вариантах осуществления настоящей технологии, сервер 106 выполнен с возможностью создавать (i) контрольное значение 254 данного ОЕС для контрольной версии 120 на основе контрольного линеаризованного набора значений 244 и (ii) экспериментальное значение 256 для данного ОЕС для экспериментальной версии 130 на основе экспериментального линеаризованного набора значений 252. Например, сервер 106 может определять среднее значение значений 238, 240 и 242 контрольного линеаризованного набора значений 244 и использовать его как контрольное значение 254 данного ОЕС для контрольной версии 120. Сервер 106 может определять среднее значение значений 246, 248 и 250 экспериментального линеаризованного набора значений 252 и использовать его как экспериментальное значение 256 данного ОЕС для экспериментальной версии 130.
[0098] В других вариантах осуществления настоящей технологии, сервер 106 может быть выполнен с возможностью применять алгоритм повышения чувствительности к каждому из контрольного и экспериментального линеаризованного набора значений 244 и 256 для определения контрольного набора значений 244' с повышенной чувствительностью и экспериментального набора значений 252' с повышенной чувствительностью. Как уже ранее упоминалось, данный повышающий чувствительность алгоритм может представлять собой одно из следующего: корректировку регрессии, прогноз будущего значения, изученная линейная комбинация и так далее. Можно утверждать, что применение данного повышающего чувствительность алгоритма может повысить чувствительность линеаризованной пользовательской метрики. Другими словами, путем применения данного повышающего чувствительность алгоритма к линеаризованной пользовательской метрике можно создать линеаризованную пользовательскую с повышенной чувствительностью, чувствительность которой может быть повышена в сравнении с линеаризованной пользовательской метрикой.
[0099] В тех вариантах осуществления настоящей технологии, где сервер 106 выполнен с возможностью применять данный алгоритм повышения чувствительности к каждому из контрольного и экспериментального линеаризованного набора значений 244 и 256, сервер 106 может быть выполнен с возможностью создавать контрольное значение 254' данного ОЕС с повышенной чувствительностью и экспериментальное значение 256' данного ОЕС с повышенной чувствительностью на основе контрольного и экспериментального линеаризованных наборов значений 244' и 256' с повышенной чувствительностью соответственно. Например, сервер 106 может определять среднее значение значений 238', 240' и 242' с повышенной чувствительностью из контрольного линеаризованного набора значений 244' с повышенной чувствительностью и использовать его как контрольное значение 254' данного ОЕС для контрольной версии 120. Сервер 106 может определять среднее значение значений 246', 248' и 250' с повышенной чувствительностью из экспериментального линеаризованного набора значений 252' с повышенной чувствительностью и использовать его как экспериментальное значение 256' данного ОЕС для экспериментальной версии 130.
[00100] Следует иметь в виду, что контрольное значение 254 и контрольное значение 254' с повышенной чувствительностью данного ОЕС для контрольной версии 120 указывает на пользовательские взаимодействия первого множества пользователей 150 с контрольной версией 120 и может коррелировать с качеством контрольной версии 120, воспринимаемым первым множеством пользователей 150. Также, экспериментальное значение 256 и экспериментальное значение 256' с повышенной чувствительностью данного ОЕС для экспериментальной версии 130 указывает на пользовательские взаимодействия второго множества пользователей 170 с экспериментальной версией 130 и может коррелировать с качеством экспериментальной версии 130, воспринимаемым вторым множеством пользователей 170.
[00101] В некоторых вариантах осуществления настоящей технологии, сервер 106 может быть выполнен с возможностью определять разницу 258 между (i) контрольным значением 254 данного ОЕС и (ii) экспериментальным значением 256 данного ОЕС, причем разница 258 указывает на (i) уровень изменения в пользовательских взаимодействиях между контрольной версией 120 и экспериментальной версией 130 и (ii) направление изменения в пользовательских взаимодействиях между контрольной версией 120 и экспериментальной версией 130.
[00102] Уровень изменения в пользовательских взаимодействиях между контрольной версией 120 и экспериментальной версией 130 является абсолютным значением разницы 258. Направление изменения в пользовательских взаимодействия между контрольной версией 120 и экспериментальной версией 130 является знаком разницы 258. Следовательно, можно сказать, что направление изменения может быть положительным или отрицательным.
[00103] В других вариантах осуществления настоящей технологии, сервер 106 может быть выполнен с возможностью определять разницу 258' с повышенной чувствительностью между (i) контрольным значением 254' с повышенной чувствительностью данного ОЕС и (ii) экспериментальным значением 256' с повышенной чувствительностью данного ОЕС, причем разница 258' с повышенной чувствительностью также указывает на (i) уровень изменения в пользовательских взаимодействиях между контрольной версией 120 и экспериментальной версией 130 и (ii) направление изменения в пользовательских взаимодействиях между контрольной версией 120 и экспериментальной версией 130.
[00104] В некоторых вариантах осуществления настоящей технологии, сервер 106 может далее применять данную проверку на статистическую значимость для определения уровни значимости разницы 258. Например, сервер 106 может применять бутстрэп-тест, дельта-тест или т-тест для определения уровня значимости разницы 258. Тем не менее, подразумевается, что другие способы проверки статистической значимости, известные в данной области техники могут применяться сервером 106 для определения уровня значимости разницы 258, не выходя за пределы настоящей технологии.
[00105] В других вариантах осуществления настоящей технологии, подразумевается, что сервер 106 может далее выполнять т-тест для определения уровня значимости разницы 258'.
[00106] Подразумевается, что разница 258' с повышенной чувствительностью более вероятно будет статистически значимой, чем разница 258, когда чувствительность линеаризованной пользовательской метрики повышена благодаря применению данного алгоритма повышения чувствительности. Также подразумевается, что применение т-теста для определения уровня значимости разницы 258 может потребовать меньше вычислительных ресурсов, чем применение любого из бутстрэп-теста или дельта-теста для определения уровня статистической значимости разницы 258.
[00107] В некоторых вариантах осуществления настоящей технологии, если сервер определяет, что разница 258 или разница 258' статистически значима, сервер 106 может быть выполнен с возможностью осуществлять выбор одной из контрольной версии 120 и экспериментальной версии 130 в качестве текущей версии исполняемого на компьютере сервиса на основе направления изменения во взаимодействиях пользователя из контрольной и экспериментальной версии 120 и 130.
[00108] В одном варианте осуществления технологии, если сервер определяет, что разница 258 статистически значима, сервер 106 может быть выполнен с возможностью осуществлять выбор одной из контрольной версии 120 и экспериментальной версии 130 в качестве текущей версии исполняемого на компьютере сервиса на основе знака разницы 258.
[00109] В одном варианте осуществления технологии, если сервер определяет, что разница 258' статистически значима, сервер 106 может быть выполнен с возможностью осуществлять выбор одной из контрольной версии 120 и экспериментальной версии 130 в качестве текущей версии исполняемого на компьютере сервиса на основе знака разницы 258'.
[00110] В некоторых вариантах осуществления настоящей технологии, сервер 106 может быть выполнен с возможностью выполнять способ 300 создания значений данного ОЕС, предназначенного для использования во время тестирования контроль/эксперимент исполняемого на компьютере сервиса 115 для выбора текущей версии исполняемого на компьютере сервиса 115 среди контрольной и экспериментальной версий 120 и 130 исполняемого на компьютере сервиса 115. Способ 300 будет подробно описан ниже.
ЭТАП 302: для каждой из контрольной и экспериментальной версий, получение соответствующего набора данных, указывающих на пользовательские взаимодействия с соответствующей одной из контрольной и экспериментальной версий
[00111] Способ 300 начинается на этапе 302, где сервер 106 выполнен с возможностью получать контрольный набор данных 202 для контрольной версии 120 и экспериментальный набор данных 204 для экспериментальной версии 130 (см. Фиг. 1 и 2).
[00112] Например, сервер 106 может получать первый, второй и третий пакеты 143, 145 и 147 данных из первого, второго и третьего электронного устройства 142, 144 и 146 соответственно, которые включают в себя указания на пользовательские взаимодействия первого, второго и третьего пользователя 152, 154 и 156 соответственно с контрольной версией 120. Указания на пользовательские взаимодействия первого, второго и третьего пользователя 152, 154 и 156 представляют собой контрольный набор 202 данных.
[00113] В качестве другого примера, сервер 106 может получать четвертый, пятый и шестой пакет 163, 165 и 167 данных от четвертого, пятого и шестого электронных устройств 162, 164 и 166 соответственно, которые включают в себя указания на пользовательские взаимодействия четвертого, пятого и шестого пользователя 172, 174 и 176 соответственно с экспериментальной версией 130. Указания на пользовательские взаимодействия четвертого, пятого и шестого пользователя 172, 174 и 176 представляют собой экспериментальный набор 204 данных.
[00114] В некоторых вариантах осуществления настоящей технологии, пользовательские взаимодействия первого, второго и третьего пользователей 152, 154 и 156 с контрольной версией 120 могут храниться в базе 108 данных и могут быть получены из нее в виде контрольного набора 202 данных для контрольной версии 120. В других вариантах осуществления настоящей технологии, пользовательские взаимодействия четвертого, пятого и шестого пользователей 172, 174 и 176 с экспериментальной версией 130 могут храниться в базе 108 данных и могут быть получены из нее в виде экспериментального набора 204 данных для экспериментальной версии 130.
ЭТАП 304: для каждой из контрольной и экспериментальной версий, определение соответствующего первого набора значений на основе соответствующего набора данных
[00115] Способ 300 продолжается на этапе 304, где сервер 106 выполнен с возможностью определять первый контрольный набор значений 206 и первый экспериментальный набор значений 214 для контрольной версии 120 и для экспериментальной версии 130 соответственно (см. Фиг. 1 и 2). Первые контрольный и экспериментальный наборы значений 204 и 214 включают в себя значения первой пользовательской метрики.
[00116] Данная пользовательская метрика относится к типу метрик пользовательского поведения, значение которой может определяться для каждого индивидуального пользователя. Другими словами, значения данной пользовательской метрики определяются для каждого пользователя. Примеры пользовательских метрик включают в себя, без установки ограничений: число кликов пользователя, число запросов пользователя, число сессий пользователя и так далее.
[00117] Сервер 106 выполнен с возможностью определять первый контрольный набор значений 206 на основе контрольного набора 202 данных таким образом, что значения 208, 210 и 212 первого контрольного набора значений 206 являются значениями первой пользовательской метрики для соответствующего одного из первого множества пользователей 150. Аналогично, сервер 106 выполнен с возможностью определять первый экспериментальный набор значений 214 на основе экспериментального набора 204 данных таким образом, что значения 216, 218 и 220 первого экспериментального набора значений 214 являются значениями первой пользовательской метрики для соответствующего одного из второго множества пользователей 170.
[00118] Следовательно, можно сказать, что сервер 106 выполнен с возможностью определять первый контрольный и первый экспериментальный набор значений 206 и 214 для контрольной версии и экспериментальной версии 120 и 130 соответственно, причем значения 208, 210 и 212 являются значениями первой пользовательской метрики для контрольной версии 120, а значения 216, 218 и 220 являются значениями первой пользовательской метрики для экспериментальной версии 130.
ЭТАП 306: для каждой из контрольной и экспериментальной версий, определение соответствующего второго набора значений на основе соответствующего набора данных
[00119] Способ 300 продолжается на этапе 306, где сервер 106 выполнен с возможностью определять второй контрольный набор значений 222 и второй экспериментальный набор значений 230 для контрольной версии 120 и для экспериментальной версии 130 соответственно (см. Фиг. 1 и 2). Вторые контрольный и экспериментальный наборы значений 222 и 230 включают в себя значения второй пользовательской метрики.
[00120] Таким образом, сервер 106 выполнен с возможностью определять второй контрольный набор значений 222 на основе контрольного набора 202 данных таким образом, что значения 224, 226 и 228 второго контрольного набора значений 222 являются значениями второй пользовательской метрики для соответствующего одного из первого множества пользователей 150. Аналогично, сервер 106 выполнен с возможностью определять второй экспериментальный набор значений 230 на основе экспериментального набора 204 данных таким образом, что значения 232, 234 и 236 второго экспериментального набора значений 230 являются значениями второй пользовательской метрики для соответствующего одного из второго множества пользователей 170.
[00121] Следовательно, можно сказать, что сервер 106 выполнен с возможностью определять второй контрольный и второй экспериментальный набор значений 222 и 230 для контрольной версии и экспериментальной версии 120 и 130 соответственно, причем значения 224, 226 и 228 являются значениями второй пользовательской метрики для контрольной версии 120, а значения 232, 234 и 236 являются значениями второй пользовательской метрики для экспериментальной версии 130.
[00122] Подразумевается, что при выполнении этапов 304 и 306 способа 300, сервер 106 может определять:
- для первого пользователя 152 значение 208 (значение первой пользовательской метрики для первого пользователя 152) и значение 224 (значение второй пользовательской метрики для первого пользователя 152);
- для второго пользователя 154 значение 210 (значение первой пользовательской метрики для второго пользователя 154) и значение 226 (значение второй пользовательской метрики для второго пользователя 154);
- для третьего пользователя значение 212 (значение первой пользовательской метрики для третьего пользователя 156) и значение 228 (значение второй пользовательской метрики для третьего пользователя 156);
- для четвертого пользователя 172 значение 216 (значение первой пользовательской метрики для четвертого пользователя 172) и значение 232 (значение второй пользовательской метрики для четвертого пользователя 172);
- для пятого пользователя 174 значение 218 (значение первой пользовательской метрики для пятого пользователя 174) и значение 234 (значение второй пользовательской метрики для пятого пользователя 174); и
- для шестого пользователя 176 значение 220 (значение первой пользовательской метрики для шестого пользователя 176) и значение 236 (значение второй пользовательской метрики для шестого пользователя 176).
[00123] Подразумевается, что сервер 106 может быть выполнен с возможностью сохранять (i) первый контрольный набор значений 206 и (ii) второй контрольный набор значений 222, связанный с контрольной версией 120 исполняемого на компьютере сервиса 115 в базе 108 данных. Сервер 106 может также быть выполнен с возможностью сохранять (i) первый экспериментальный набор значений 214 и (ii) второй экспериментальный набор значений 230, связанный с экспериментальной версией 130 исполняемого на компьютере сервиса 115 в базе 108 данных.
ЭТАП 308: выбор значения линеаризации для линеаризованной пользовательской метрики
[00124] Способ 300 продолжается на этапе 308, где сервер 106 выполнен с возможностью выбирать значение линеаризации к для линеаризованной пользовательской метрики Как уже ранее упоминалось, сервер 106 выполнен с возможностью использовать данный ОЕС для оценки и сравнения качества контрольной версии 102 и экспериментальной версии 130, которые основаны на линеаризованной пользовательской метрике.
[00125] Подразумевается, что линеаризованная пользовательская метрика является линейной комбинацией первой и второй пользовательских метрик.
Линеаризованная пользовательская метрика может определяться уравнением (1), где данное значение линеаризованной пользовательской метрики L(ui) для данного пользователя i является разницей между данным значением первой пользовательской метрики X(ui) и данным значением второй пользовательской метрики Y(ui), причем данное значение второй пользовательской метрики Y(ui) является взвешенным значением с помощью значения линеаризации к.
[00126] В некоторых вариантах осуществления технологии, сервер 106 выполнен с возможностью определять одно из (i) контрольный коэффициент Rc и (ii) экспериментальный коэффициент Rt и выбирать его значением в качестве значения линеаризации к. Сервер 106 может быть выполнен с возможностью определять контрольный коэффициент Rc на основе первого и второго контрольных наборов значений 206 и 222 в соответствии с уравнением (2). Сервер 106 может быть выполнен с возможностью определять экспериментальный коэффициент Rt на основе первого и второго экспериментальных наборов значений 214 и 230 в соответствии с уравнением (3).
[00127] Контрольный коэффициент Rc представляет собой отношение (i) среднего значения из значений 208, 210 и 212 из первого контрольного набора значений 206 к (ii) среднее значение из значений 224, 226 и 228 из второго контрольного набора значений 222. Экспериментальный коэффициент Rt представляет собой отношение (i) среднего значения из значений 216, 218 и 220 из первого экспериментального набора значений 214 к (ii) среднее значение из значений 232, 234 и 236 из второго экспериментального набора значений 230.
[00128] Следует отметить, что сервер 106 может выполнять различные способы усреднения для определения данного среднего значения соответствующего набора значений. Например, в одном варианте осуществления технологии, данное среднее значение может представлять собой усредненное значение соответствующего набора значений. Тем не менее, в других вариантах осуществления технологии, данное среднее значение может представлять собой одной из (i) данное медианное значение и (ii) данное значение моды из значений соответствующего набора значений, не выходя за границы настоящей технологии.
[00129] Подразумевается, что сервер 106 может быть выполнен с возможностью определять как (i) контрольный коэффициент Rc, так и (ii) экспериментальный коэффициент Rt для определения интервала значений линеаризации в соответствии с уравнением (4). Таким образом, сервер 106 может далее быть выполнен с возможностью выбирать любое данное значение в интервале значений линеаризации (т.е. любое данное значение между контрольным коэффициентом и Rc экспериментальным коэффициентом Rt включительно) в качестве значения линеаризации к.
[00130] Также подразумевается, что сервер 106 может предоставлять интервал значений линеаризации оператору исполняемого на компьютере сервиса 115 для выбора любого данного значения в интервале значений линеаризации в качестве значения линеаризации к.
[00131] Также подразумевается, что сервер 106 может быть выполнен с возможностью сохранять любой из (i) контрольного коэффициента Rc, (ii) экспериментального коэффициента Rt и (iii) интервала значений линеаризации в базе 108 данных. Сервер 106 также может быть выполнен с возможностью сохранять выбранное значение линеаризации к в базе 108 данных.
ЭТАП 310: для каждой из контрольной и экспериментальной версий, определение соответствующего линеаризованного набора значений
[00132] Способ 300 продолжается на этапе 310, где сервер 106 выполнен с возможностью определять контрольный и экспериментальный линеаризованные наборы значений 244 и 252 для контрольной и экспериментальной версий 120 и 130 соответственно. Значения контрольного и экспериментального наборов значений 244 и 252 являются значениями линеаризованных пользовательских метрик и они определяются в соответствии с уравнением (1).
[00133] Сервер 106 выполнен с возможностью определять контрольный линеаризованный набор значений 244 на основе (i) первого контрольного набора значений 206, (ii) второго контрольного набора значений 222 и (iii) значения линеаризации к. Каждое значение в контрольном линеаризованном наборе значений 244 определяется для соответствующего пользователя из первого множества пользователей 150. Другими словами, каждое значение в контрольном линеаризованном наборе значений 244 является значением линеаризованной пользовательской метрики для соответствующего пользователя из первого множества пользователей 150.
[00134] Сервер 106 также выполнен с возможностью определять экспериментальный линеаризованный набор значений 252 на основе (i) первого экспериментального набора значений 214, (ii) второго экспериментального набора значений 230 и (iii) значения линеаризации к. Каждое значение в экспериментальном линеаризованном наборе значений 240 определяется для соответствующего пользователя из второго множества пользователей 170. Другими словами, каждое значение в экспериментальном линеаризованном наборе значений 252 является значением линеаризованной пользовательской метрики для соответствующего пользователя из второго множества пользователей 170.
[00135] Подразумевается, что сервер 106 может быть выполнен с возможностью сохранять контрольный и экспериментальный линеаризованные наборы значений 244 и 252 в связи с контрольной и экспериментальной версиями 120 и 130 соответственно в базе 108 данных.
ЭТАП 312: для каждой из контрольной и экспериментальной версий, создание соответствующего значения ОЕС на основе соответствующих линеаризованных наборов
[00136] Способ 300 продолжается на этапе 312, где сервер 106 выполнен с возможностью создавать соответствуюещее значение данного ОЕС для каждой из контрольной версии 120 и экспериментальной версии 130. Как уже ранее упоминалось, сервер 106 выполнен с возможностью использовать данный ОЕС для оценки и сравнения качества контрольной версии 102 и экспериментальной версии 130, которые основаны на линеаризованной пользовательской метрике.
[00137] В некоторых вариантах осуществления настоящей технологии, сервер 106 выполнен с возможностью создавать (i) контрольное значение 254 данного ОЕС для контрольной версии 120 на основе контрольного линеаризованного набора значений 244 и (ii) экспериментальное значение 256 для данного ОЕС для экспериментальной версии 130 на основе экспериментального линеаризованного набора значений 252.
[00138] Например, сервер 106 может определять среднее значение значений 238, 240 и 242 контрольного линеаризованного набора значений 244 и использовать его как контрольное значение 254 данного ОЕС для контрольной версии 120. Сервер 106 может определять среднее значение значений 246, 248 и 250 экспериментального линеаризованного набора значений 252 и использовать его как экспериментальное значение 256 данного ОЕС для экспериментальной версии 130.
[00139] В других вариантах осуществления настоящей технологии, сервер 106 может быть выполнен с возможностью применять алгоритм повышения чувствительности к каждому из контрольного и экспериментального линеаризованного набора значений 244 и 256 для определения контрольного набора значений 244' с повышенной чувствительностью и экспериментального набора значений 252' с повышенной чувствительностью.
[00140] Данный повышающий чувствительность алгоритм может представлять собой одно из следующего: корректировку регрессии, прогноз будущего значения, изученная линейная комбинация и так далее. Можно утверждать, что применение данного повышающего чувствительность алгоритма может повысить чувствительность линеаризованной пользовательской метрики.
[00141] В тех вариантах осуществления настоящей технологии, где сервер 106 выполнен с возможностью применять данный алгоритм повышения чувствительно к каждому из контрольного и экспериментального линеаризованного набора значений 244 и 256, сервер 106 может быть выполнен с возможностью создавать контрольное значение 254' данного ОЕС с повышенной чувствительностью и экспериментальное значение 256' данного ОЕС с повышенной чувствительностью на основе контрольного и экспериментального линеаризованных наборов значений 244' и 256' с повышенной чувствительностью соответственно.
[00142] Следовательно, можно сказать, что север 106 может использовать данный ОЕС с повышенной чувствительностью для оценки и сравнения качества контрольной версии 102 и экспериментальной версии 130, которые основаны на линеаризованной пользовательской метрике с повышенной чувствительностью.
[00143] Например, сервер 106 может определять среднее значение значений 238', 240' и 242' с повышенной чувствительностью из контрольного линеаризованного набора значений 244' с повышенной чувствительностью и использовать его как контрольное значение 254' данного ОЕС для контрольной версии 120. Сервер 106 может определять среднее значение значений 246', 248' и 250' с повышенной чувствительностью из экспериментального линеаризованного набора значений 252' с повышенной чувствительностью и использовать его как экспериментальное значение 256' данного ОЕС для экспериментальной версии 130.
[00144] Следует иметь в виду, что контрольное значение 254 и контрольное значение 254' с повышенной чувствительностью данного ОЕС для контрольной версии 120 указывает на пользовательские взаимодействия первого множества пользователей 150 с контрольной версией 120 и может коррелировать с качеством контрольной версии 120, воспринимаемым первым множеством пользователей 150. Также, экспериментальное значение 256 и экспериментальное значение 256' с повышенной чувствительностью данного ОЕС для экспериментальной версии 130 указывает на пользовательские взаимодействия второго множества пользователей 170 с экспериментальной версией 130 и может коррелировать с качеством экспериментальной версии 130, воспринимаемым вторым множеством пользователей 170.
[00145] В некоторых вариантах осуществления настоящей технологии, сервер 106 может быть выполнен с возможностью определять разницу 258 между (i) контрольным значением 254 данного ОЕС и (ii) экспериментальным значением 256 данного ОЕС, причем разница 258 указывает на (i) уровень изменения в пользовательских взаимодействиях между контрольной версией 120 и экспериментальной версией 130 и (ii) направление изменения в пользовательских взаимодействиях между контрольной версией 120 и экспериментальной версией 130.
[00146] Уровень изменения в пользовательских взаимодействия между контрольной версией 120 и экспериментальной версией 130 является абсолютным значением разницы 258. Направление изменения в пользовательских взаимодействия между контрольной версией 120 и экспериментальной версией 130 является знаком разницы 258 и, следовательно, может быть положительным или отрицательным.
[00147] В других вариантах осуществления настоящей технологии, сервер 106 может быть выполнен с возможностью определять разницу 258' с повышенной чувствительностью между (i) контрольным значением 254' с повышенной чувствительностью данного ОЕС и (ii) экспериментальным значением 256' с повышенной чувствительностью данного ОЕС, причем разница 258' с повышенной чувствительностью также указывает на (i) уровень изменения в пользовательских взаимодействиях между контрольной версией 120 и экспериментальной версией 130 и (ii) направление изменения в пользовательских взаимодействиях между контрольной версией 120 и экспериментальной версией 130.
[00148] В некоторых вариантах осуществления настоящей технологии, сервер 106 может далее применять данную проверку на статистическую значимость для определения уровни значимости разницы 258. Например, сервер 106 может применять бутстрэп-тест, дельта-тест или т-тест для определения уровня значимости разницы 258. Тем не менее, подразумевается, что другие способы проверки статистической значимости, известные в данной области техники могут применяться сервером 106 для определения уровня значимости разницы 258, не выходя за пределы настоящей технологии.
[00149] В других вариантах осуществления настоящей технологии, подразумевается, что сервер 106 может далее выполнять т-тест для определения уровня значимости разницы 258' с повышенной чувствительностью.
[00150] Подразумевается, что разница 258' с повышенной чувствительностью с большей вероятностью будет статистически значима, чем разница 258. Также подразумевается, что применение т-теста для определения уровня значимости разницы 258 может потребовать меньше вычислительных ресурсов, чем применение любого из бутстрэп-теста или дельта-теста для определения уровня статистической значимости разницы 258.
[00151] В некоторых вариантах осуществления настоящей технологии, если разница 258 или разница 258' определена как статистически значимая сервером 106, сервер 106 может быть выполнен с возможностью осуществлять выбор одной из контрольной версии 120 и экспериментальной версии 130 в качестве текущей версии исполняемого на компьютере сервиса на основе направления изменения во взаимодействиях пользователя из контрольной и экспериментальной версии 120 и 130.
[00152] В одном варианте осуществления технологии, если сервер определил, что разница 258 статистически значима, сервер 106 может быть выполнен с возможностью осуществлять выбор одной из контрольной версии 120 и экспериментальной версии 130 в качестве текущей версии исполняемого на компьютере сервиса 115 на основе знака разницы 258.
[00153] В одном варианте осуществления технологии, если сервер определил, что разница 258' статистически значима, сервер 106 может быть выполнен с возможностью осуществлять выбор одной из контрольной версии 120 и экспериментальной версии 130 в качестве текущей версии исполняемого на компьютере сервиса на основе знака разницы 258'.
[00154] С учетом вышеописанных вариантов осуществления технологии, которые были описаны и показаны со ссылкой на конкретные этапы, выполненные в определенном порядке, следует иметь в виду, что эти этапы могут быть совмещены, разделены, обладать другим порядком выполнения - все это не выходит за границы настоящей технологии. Соответственно, порядок и группировка этапов не является ограничением для настоящей технологии.
[00155] Важно иметь в виду, что не все упомянутые здесь технические результаты могут проявляться в каждом из вариантов осуществления настоящей технологии. Например, варианты осуществления настоящей технологии, могут быть выполнены без проявления некоторых технических результатов, другие могут быть выполнены с проявлением других технических результатов или вовсе без них.
[00156] Некоторые из этих этапов, а также процессы передачи-получения сигнала являются хорошо известными в данной области техники и поэтому для упрощения были опущены в некоторых частях данного описания. Сигналы могут быть переданы-получены с помощью оптических средств (например, опто-волоконного соединения), электронных средств (например, проводного или беспроводного соединения) и механических средств (например, на основе давления, температуры или другого подходящего параметра).
[00157] Модификации и улучшения вышеописанных вариантов осуществления настоящей технологии будут ясны специалистам в данной области техники. Предшествующее описание представлено только в качестве примера и не устанавливает никаких ограничений. Таким образом, объем настоящей технологии ограничен только объемом прилагаемой формулы изобретения.
название | год | авторы | номер документа |
---|---|---|---|
Способы и системы для формирования обобщенного параметра метрики для А/В тестирования | 2017 |
|
RU2665244C1 |
СПОСОБ ОПРЕДЕЛЕНИЯ ТРЕНДА ПОКАЗАТЕЛЯ СТЕПЕНИ ВОВЛЕЧЕННОСТИ ПОЛЬЗОВАТЕЛЯ | 2016 |
|
RU2642411C2 |
СПОСОБ И СЕРВЕР ГЕНЕРИРОВАНИЯ МЕТА-ПРИЗНАКА ДЛЯ РАНЖИРОВАНИЯ ДОКУМЕНТОВ | 2018 |
|
RU2721159C1 |
СПОСОБ И СЕРВЕР ПРОВЕДЕНИЯ КОНТРОЛИРУЕМОГО ЭКСПЕРИМЕНТА С ИСПОЛЬЗОВАНИЕМ ПРОГНОЗИРОВАНИЯ БУДУЩЕГО ПОЛЬЗОВАТЕЛЬСКОГО ПОВЕДЕНИЯ | 2015 |
|
RU2640637C2 |
СПОСОБЫ И СЕРВЕРЫ ДЛЯ ОПРЕДЕЛЕНИЯ ЗАВИСЯЩИХ ОТ МЕТРИКИ ПОРОГОВ, ИСПОЛЬЗУЕМЫХ СО МНОЖЕСТВОМ ВЛОЖЕННЫХ МЕТРИК ДЛЯ БИНАРНОЙ КЛАССИФИКАЦИИ ЦИФРОВОГО ОБЪЕКТА | 2020 |
|
RU2795202C2 |
Система и способ категоризации приложения на вычислительном устройстве | 2019 |
|
RU2747514C2 |
СПОСОБ И СЕРВЕР ДЛЯ ОПРЕДЕЛЕНИЯ ПОРЯДКА ОТРИСОВКИ КАРТЫ | 2016 |
|
RU2658875C1 |
СПОСОБ И СЕРВЕР ОПРЕДЕЛЕНИЯ ИЗМЕНЕНИЙ В ПОЛЬЗОВАТЕЛЬСКОМ ИНТЕРАКТИВНОМ ВЗАИМОДЕЙСТВИИ СО СТРАНИЦЕЙ РЕЗУЛЬТАТОВ ПОИСКА | 2015 |
|
RU2637899C2 |
Способ и система предотвращения вредоносных автоматизированных атак | 2021 |
|
RU2768567C1 |
Система и способ снижения нагрузки на сервис обнаружения вредоносных приложений | 2019 |
|
RU2739833C1 |
Предлагаются способ и сервер для создания значений общего критерия оценки (ОЕС), предназначенного для использования во время тестирования контроль/эксперимент. Способ включает в себя, для каждой из контрольной и экспериментальной версий: получение наборов данных, указывающих на пользовательские взаимодействия; определение первых наборов значений первой пользовательской метрики; и определение вторых наборов значений пользовательской метрики. Способ включает в себя выбор значения линеаризации. Способ включает в себя, для каждой из контрольной и экспериментальных версий, определение линеаризованных наборов значений, причем значения в данном линеаризованном наборе представляют собой разницу между (i) значениями первого набора и (ii) значениями второго набора, которые взвешены с помощью значения линеаризации; и создание значений ОЕС на основе линеаризованных наборов. Разница между значениями ОЕС указывает на степень и направление изменений во взаимодействиях между версиями. 2 н. и 16 з.п. ф-лы, 3 ил.
1. Способ создания значений общего критерия оценки (ОЕС) для использования во время тестирования контроль/эксперимент, исполняемого на компьютере сервиса, для выбора текущей версии исполняемого на компьютере сервиса между контрольной версией и экспериментальной версией, причем способ включает в себя:
для каждой из контрольной и экспериментальной версии:
получение сервером соответствующего набора данных, указывающих на пользовательские взаимодействия с соответствующей одной из контрольной и экспериментальной версий;
определение сервером соответствующего первого набора значений на основе соответствующего набора данных, которые являются значениями первой пользовательской метрики; и
определение сервером соответствующего второго набора значений на основе соответствующего набора данных, которые являются значениями второй пользовательской метрики;
выбор сервером значений линеаризации для линеаризованной пользовательской метрики, которая является линейной комбинацией первой и второй пользовательских метрик, причем ОЕС основан на линеаризованной пользовательской метрике, и причем значение линеаризации находится между контрольным коэффициентом и экспериментальным коэффициентом,
причем контрольный коэффициент является отношением (i) среднего значения из значений первого набора контрольной версии к (ii) среднему значению из значений второго набора контрольной версии,
а экспериментальный коэффициент является отношением (i) среднего значения из значений первого набора экспериментальной версии к (ii) среднему значению из значений второго набора экспериментальной версии;
для каждой из контрольной и экспериментальной версии:
определение сервером соответствующего линеаризованного набора значений, причем значения в данном линеаризованном наборе представляют собой разницу между (i) значениями соответствующего первого набора и (ii) значениями соответствующего второго набора, которые взвешены значением линеаризации, причем значения линеаризованных наборов представляют собой значения линеаризованной пользовательской метрики; и
создание сервером соответствующего значения ОЕС на основе соответствующих линеаризованных наборов, причем разница между значениями ОЕС указывает на (i) степень изменения в пользовательских взаимодействиях между контрольной версией и экспериментальной версией и (ii) направлением изменения в пользовательских взаимодействиях между контрольной версией и экспериментальной версией, причем направление может быть положительным или отрицательным.
2. Способ по п. 1, в котором выбор значения линеаризации для линеаризованной пользовательской метрики представляет собой:
определение сервером одного из контрольного коэффициента и экспериментального коэффициента;
выбор сервером одного из контрольного коэффициента и экспериментального коэффициента в качестве значения линеаризации.
3. Способ по п. 1, в котором выбор значения линеаризации для линеаризованной пользовательской метрики представляет собой:
определение сервером интервала значения линеаризации, который содержит все значения между контрольным коэффициентом и экспериментальным коэффициентом включительно; и
выбор сервером любого значения и интервале значений линеаризации в качестве значения линеаризации.
4. Способ по п. 1, который далее включает в себя применение сервером проверки на статистическую значимость для определения уровня значимости разницы между значениями ОЕС.
5. Способ по п. 4, в котором проверка на статистическую значимость представляет собой одно из следующего:
бутстрэп-тест;
дельта-тест; и
т-тест.
6. Способ по п. 5, в котором проверка на статистическую значимость представляет собой т-тест, и причем способ дополнительно включает в себя:
определение сервером, для каждой из контрольной версии и экспериментальной версии, соответствующего набора значений с повышенной чувствительностью путем применения повышающего чувствительность алгоритма к соответствующему линеаризованному набору значений, и причем создание соответствующих значений ОЕС включает в себя
создание соответствующих средних значений для значений соответствующих наборов с повышенной чувствительностью.
7. Способ по п. 1, который далее включает в себя выбор одной из контрольной версии и экспериментальной версии в качестве текущей версии исполняемого на компьютере сервиса на основе направления изменения во взаимодействиях пользователя из контрольной и экспериментальной версии.
8. Способ по п. 1, в котором одна из первой и второй пользовательской метрики представляет собой одно из:
число кликов пользователя;
число запросов пользователя; и
число сессий пользователя.
9. Способ по п. 1, в котором линеаризованная пользовательская метрика является комбинацией первой и второй пользовательских метрик в соответствии с
L(ui)=Х(ui)-к*Y(ui),
где L - линеаризованная пользовательская метрика, X - первая пользовательская метрика, Y - вторая пользовательская метрика, и к - значение линеаризации.
10. Сервер для создания значений общего критерия оценки (ОЕС) для использования во время тестирования контроль/эксперимент исполняемого на компьютере сервиса для выбора текущей версии исполняемого на компьютере сервиса между контрольной версией и экспериментальной версией:
для каждой из контрольной и экспериментальной версии:
получение соответствующего набора данных, указывающих на пользовательские взаимодействия с соответствующей одной из контрольной и экспериментальной версий;
определение соответствующего первого набора значений на основе соответствующего набора данных, которые являются значениями первой пользовательской метрики; и
определение соответствующего второго набора значений на основе соответствующего набора данных, которые являются значениями второй пользовательской метрики;
выбор значений линеаризации для линеаризованной пользовательской метрики, которая является линейной комбинацией первой и второй пользовательских метрик, и ОЕС основан на линеаризованной пользовательской метрике, значение линеаризации находится между коэффициентом контроля и коэффициентом эксперимента,
контрольный коэффициент является отношением (i) среднего значения из значений первого набора контрольной версии к (ii) среднему значению из значений второго набора контрольной версии,
экспериментальный коэффициент является отношением (i) среднего значения из значений первого набора экспериментальной версии к (ii) среднему значению из значений второго набора экспериментальной версии.
для каждой из контрольной и экспериментальной версии:
определение соответствующего линеаризованного набора значений, причем значения в данном линеаризованном наборе представляют собой разницу между (i) значениями соответствующего первого набора и (ii) значениями соответствующего второго набора, которые взвешены значением линеаризации, причем значения линеаризованных наборов представляют собой значения линеаризованной пользовательской метрики; и
создание соответствующего значения ОЕС на основе соответствующих линеаризованных наборов, причем разница между значениями ОЕС указывает на (i) степень изменения в пользовательских взаимодействиях между контрольной версией и экспериментальной версией и (ii) направлением изменения в пользовательских взаимодействиях между контрольной версией и экспериментальной версией, причем направление может быть положительным или отрицательным.
11. Сервер по п. 10, который выполнен с возможностью осуществлять выбор значения линеаризации для линеаризованной пользовательской метрики, причем сервер далее выполнен с возможностью осуществлять:
определение одного из контрольного коэффициента и экспериментального коэффициента;
выбор одного из контрольного коэффициента и экспериментального коэффициента в качестве значения линеаризации.
12. Сервер по п. 10, который выполнен с возможностью осуществлять выбор значения линеаризации для линеаризованной пользовательской метрики, причем сервер выполнен с возможностью осуществлять:
определение интервала значения линеаризации, который содержит все значения между контрольным коэффициентом и экспериментальным коэффициентом включительно; и
выбор любого значения и интервале значений линеаризации в качестве значения линеаризации.
13. Сервер по п. 10, который далее выполнен с возможностью осуществлять применение проверки на статистическую значимость для определения уровня значимости разницы между значениями ОЕС.
14. Сервер по п. 13, в котором проверка на статистическую значимость представляет собой одно из следующего:
бутстрэп-тест;
дельта-тест; и
т-тест.
15. Сервер по п. 14, в котором проверка на статистическую значимость представляет собой т-тест, и причем сервер дополнительно выполнен с возможностью осуществлять:
определение, для каждой из контрольной версии и экспериментальной версии, соответствующего набора значений с повышенной чувствительностью путем применения повышающего чувствительность алгоритма к соответствующему линеаризованному набору значений, и причем сервер выполнен с возможностью осуществлять создание соответствующих значений ОЕС и сервер выполнен с возможностью осуществлять
создание соответствующих средних значений для значений соответствующих наборов с повышенной чувствительностью.
16. Сервер по п. 10, который далее выполнен с возможностью осуществлять выбор одной из контрольной версии и экспериментальной версии в качестве текущей версии исполняемого на компьютере сервиса на основе направления изменения во взаимодействиях пользователя из контрольной и экспериментальной версии.
17. Сервер по п. 10, в котором одна из первой и второй пользовательской метрики представляет собой одно из:
число кликов пользователя;
число запросов пользователя; и
число сессий пользователя.
18. Сервер по п. 10, в котором линеаризованная пользовательская метрика является комбинацией первой и второй пользовательских метрик в соответствии с
L(ui)=Х(ui)-к*Y(ui),
где L - линеаризованная пользовательская метрика, X - первая пользовательская метрика, Y - вторая пользовательская метрика, и к - значение линеаризации.
US2016253311 01.09.2016 | |||
US2015227962 13.08.2015 | |||
US2014282049 18.09.2014 | |||
RU2014145739 10.06.2016. |
Авторы
Даты
2019-09-06—Публикация
2017-12-15—Подача