RU2795202C2 - Methods and servers for determining metric-dependent thresholds used with multiple nested metrics for binary classification of a digital object - Google Patents
Methods and servers for determining metric-dependent thresholds used with multiple nested metrics for binary classification of a digital object Download PDFInfo
- Publication number
- RU2795202C2 RU2795202C2 RU2020133324A RU2020133324A RU2795202C2 RU 2795202 C2 RU2795202 C2 RU 2795202C2 RU 2020133324 A RU2020133324 A RU 2020133324A RU 2020133324 A RU2020133324 A RU 2020133324A RU 2795202 C2 RU2795202 C2 RU 2795202C2
- Authority
- RU
- Russia
- Prior art keywords
- metric
- server
- class
- nested
- iteration
- Prior art date
Links
- 230000001419 dependent effect Effects 0.000 title claims abstract description 197
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000012360 testing method Methods 0.000 claims abstract description 83
- 238000012795 verification Methods 0.000 claims description 24
- 230000015572 biosynthetic process Effects 0.000 claims 4
- 238000012545 processing Methods 0.000 abstract description 10
- 230000000694 effects Effects 0.000 abstract description 5
- 239000000126 substance Substances 0.000 abstract 1
- 238000005516 engineering process Methods 0.000 description 74
- 238000010200 validation analysis Methods 0.000 description 46
- 238000012549 training Methods 0.000 description 40
- 238000004422 calculation algorithm Methods 0.000 description 39
- 230000002452 interceptive effect Effects 0.000 description 21
- 238000004891 communication Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 13
- 230000004044 response Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 230000003993 interaction Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Abstract
Description
Область техники, к которой относится изобретениеThe field of technology to which the invention belongs
[01] Настоящая технология относится к системам и способам для бинарной классификации цифровых объектов. В частности, настоящая технология относится к способам и серверам для определения сочетания зависящих от метрики порогов, используемых со множеством вложенных метрик при выполнении бинарной классификации цифрового объекта.[01] The present technology relates to systems and methods for binary classification of digital objects. In particular, the present technology relates to methods and servers for determining a combination of metric-dependent thresholds used with a plurality of nested metrics when performing a binary classification of a digital object.
Уровень техникиState of the art
[02] Алгоритмы машинного обучения (MLA, Machine Learning Algorithm) используются для удовлетворения разнообразных потребностей в компьютерных технологиях. Обычно алгоритмы MLA используются для формирования прогноза на основе предоставленных им данных. Некоторые алгоритмы MLA называются классификаторами и в целом способны относить объекты к одному или нескольким классам. Иными словами, некоторые алгоритмы MLA, обученные на основе обучающего набора данных, содержащего наблюдения (или экземпляры) известной категории, способны решать задачу определения того, к какой категории из набора категорий (или подмножеств) относится новое наблюдение.[02] Machine learning algorithms (MLA, Machine Learning Algorithm) are used to meet a variety of needs in computer technology. Typically, MLA algorithms are used to generate a prediction based on the data provided to them. Some MLA algorithms are called classifiers and are generally capable of assigning objects to one or more classes. In other words, some MLA algorithms trained on a training dataset containing observations (or instances) of a known category are able to solve the problem of determining which category of a set of categories (or subsets) a new observation belongs to.
[03] Полученный в результате прогнозируемый класс может быть использован в качестве дополнительной информации об объекте для предоставления пользователям улучшенных интерактивных электронных сервисов. Например, информация, полученная в результате классификации объекта, может быть использована поисковыми системами (например, классификация документа), сервисами рекомендации контента (например, классификация контента), сервисами электронной почты (например, классификация сообщения электронной почты), сервисами электронной торговли (например, классификация пользователя) и т.п.[03] The resulting predictive class can be used as additional information about the object to provide users with improved interactive electronic services. For example, the information resulting from the classification of an object can be used by search engines (for example, document classification), content recommendation services (for example, content classification), email services (for example, email message classification), e-commerce services (for example, user classification), etc.
[04] В частности, классификатор может быть обучен на обучающем наборе данных, связанном с объектом и содержащем связанную с объектом информацию и контрольный класс объекта. Классификатор выучивает, какая информация об объекте с большей вероятностью указывает на контрольный класс обучающих объектов. Затем этот классификатор используется для определения прогнозируемого класса объекта этапа использования на основе информации, доступной для этого объекта этапа использования.[04] In particular, the classifier can be trained on a training dataset associated with an object and containing information associated with the object and a control class of the object. The classifier learns which information about the object is more likely to point to the control class of training objects. This classifier is then used to determine the predicted class of the use-phase object based on the information available for that use-phase object.
[05] Неверная классификация объектов может приводить к ошибкам при дальнейшей обработке объекта и обычно негативно влияет на качество интерактивных сервисов, требующих такой классификации.[05] Incorrect classification of objects can lead to errors in further processing of the object and usually negatively affects the quality of interactive services that require such classification.
Раскрытие изобретенияDisclosure of invention
[06] Разработанные варианты осуществления настоящей технологии основаны на понимании разработчиками по меньшей мере одной технической проблемы, связанной с известными подходами к классификации объектов.[06] The developed embodiments of the present technology are based on the developers' understanding of at least one technical problem associated with known approaches to object classification.
[07] Согласно одному аспекту настоящей технологии реализован сервер, способный выполнять множество компьютерных алгоритмов, которые называются механизмом классификации и в целом способны выполнять бинарную классификацию цифровых объектов. В контексте настоящей технологии цифровые объекты могут соответствовать элементам, связанным с одним или несколькими интерактивными сервисами, такими как поисковые системы, сервисы рекомендации контента, сервисы электронной торговли, сервисы электронной почты и т.д. Характер цифрового объекта, среди прочего, зависит от конкретных вариантов реализации настоящей технологии.[07] According to one aspect of the present technology, a server capable of executing a plurality of computer algorithms, referred to as a classification engine, is implemented and is generally capable of performing binary classification of digital objects. In the context of the present technology, digital objects may correspond to elements associated with one or more interactive services such as search engines, content recommendation services, e-commerce services, e-mail services, and so on. The nature of the digital object, among other things, depends on the specific implementations of the present technology.
[08] Механизм классификации содержит множество алгоритмов MLA, способных прогнозировать класс цифрового объекта на основе связанных с ним прошлых событий объекта. Можно сказать, что множество алгоритмов MLA представляет собой прогнозирующие модели, которые моделируют множество метрик и применяются в отношении данных, представляющих прошлые события объекта для цифрового объекта, с целью определения вероятности принадлежности этого объекта к некоторому классу.[08] The classification engine comprises a plurality of MLA algorithms capable of predicting the class of a digital object based on the object's associated past events. It can be said that a set of MLA algorithms are predictive models that model a set of metrics and are applied to data representing the past events of an object for a digital object in order to determine the probability that this object belongs to a certain class.
[09] Согласно по меньшей мере одному аспекту настоящей технологии, множество метрик, используемых механизмом классификации, способно использовать конкретные подмножества прошлых событий объекта. Следует отметить, что события объекта некоторых видов могут быть связаны особым образом.[09] According to at least one aspect of the present technology, the set of metrics used by the classification engine is able to use specific subsets of past events of an object. It should be noted that some kinds of object events can be linked in a special way.
[010] В частности, события объекта некоторых видов могут иметь взаимосвязь вида «вложенность». Можно сказать, что события объекта второго вида вложены в события объекта первого вида, если события объекта второго вида могут происходить, только если произошли события объекта первого вида. Например, события объекта (события второго вида), указывающие на «клики» пользователя на результатах поисковой системы, могут происходить только после отправки пользователем запросов (события первого вида). Также можно сказать, что события объекта второго вида вложены в события объекта первого вида, когда события объекта второго вида представляют собой подмножество событий объекта первого вида. Например, события объекта (второго вида), указывающие на «длинные клики», представляют собой подмножество событий объекта (первого вида), указывающих на «клики».[010] In particular, some kinds of object events may have a nested relationship. We can say that the events of an object of the second kind are nested in the events of an object of the first kind if the events of an object of the second kind can only occur if the events of the first kind of object have occurred. For example, object events (second type events) indicating user "clicks" on search engine results can only occur after the user submits queries (first type events). It can also be said that the events of the second kind object are nested in the events of the first kind object when the events of the second kind object are a subset of the events of the first kind object. For example, object (second kind) events indicating "long clicks" are a subset of object (first kind) events indicating "clicks".
[011] В по меньшей мере некоторых вариантах осуществления настоящей технологии можно сказать, что множество метрик, используемых механизмом классификации, является «вложенным» в том смысле, что события объекта, используемые первой метрикой из множества метрик для формирования прогнозов, вложены в события объекта, используемые второй метрикой из множества метрик для формирования ее собственных прогнозов.[011] In at least some embodiments of the present technology, the set of metrics used by the classification engine can be said to be "nested" in the sense that the object events used by the first metric of the set of metrics to generate predictions are nested in the object events, used by the second metric from the set of metrics to form its own predictions.
[012] Механизм классификации содержит компьютерный алгоритм, способный применять «целевое сочетание зависящих от метрики порогов» в отношении прогнозов, сформированных множеством вложенных метрик, для выполнения бинарной классификации цифрового объекта. В не имеющем ограничительного характера примере настоящей технологии, где три вложенные метрики используются для формирования трех прогнозов на основе соответствующих подмножеств прошлых событий объекта, указывающих на вероятность принадлежности цифрового объекта к первому классу, механизм классификации может применять целевое сочетание трех зависящих от метрики порогов, каждый из которых соответствует одной вложенной метрике из числа трех вложенных метрик. В некоторых вариантах осуществления изобретения, если по меньшей мере один прогноз из множества прогнозов превышает соответствующий порог из целевого сочетания зависящих от метрики порогов, то механизм классификации может определять, что цифровой объект принадлежит к первому классу. В некоторых вариантах осуществления изобретения, если отсутствуют прогнозы из множества прогнозов, превышающие соответствующий порог из целевого сочетания зависящих от метрики порогов, то механизм классификации может определять, что цифровой объект принадлежит к другому классу.[012] The classification engine comprises a computer algorithm capable of applying a "target combination of metric dependent thresholds" on predictions generated by a plurality of nested metrics to perform a binary classification of a digital object. In a non-limiting example of the present technology, where three nested metrics are used to form three predictions based on respective subsets of an entity's past events indicative of the likelihood that a digital entity belongs to the first class, the classification engine may apply a target combination of three metric-dependent thresholds, each of which corresponds to one nested metric out of three nested metrics. In some embodiments of the invention, if at least one prediction from a plurality of predictions exceeds a corresponding threshold from a target combination of metric-dependent thresholds, then the classification engine may determine that the digital object belongs to the first class. In some embodiments of the invention, if there are no predictions from the set of predictions that exceed the corresponding threshold from the target combination of metric-dependent thresholds, then the classification engine may determine that the digital object belongs to a different class.
[013] Согласно по меньшей мере одному аспекту настоящей технологии реализован сервер, способный выбирать целевое сочетание зависящих от метрики порогов для множества вложенных метрик из числа множества сочетаний-кандидатов зависящих от метрики порогов. Сервер может выполнять итеративный процесс проверки для выбора целевого сочетания зависящих от метрики порогов из множества сочетаний-кандидатов зависящих от метрики порогов. В некоторых вариантах осуществления изобретения сервер может использовать зависящий от объекта проверочный набор данных для получения проверочных данных об эффективности классификации множества вложенных метрик с различными сочетаниями зависящих от метрики порогов. Например, эффективность классификации множества вложенных метрик с различными сочетаниями зависящих от метрики порогов может быть измерена с точки зрения точности, полноты, погрешности и т.п. В некоторых вариантах осуществления изобретения сервер может формировать текущее сочетание-кандидат зависящих от метрики порогов (подлежащее использованию во время текущей итерации итеративного процесса проверки) на основе предыдущего сочетания-кандидата зависящих от метрики порогов (которое использовалось во время предыдущей итерации итеративного процесса проверки).[013] According to at least one aspect of the present technology, a server is implemented that is capable of selecting a target combination of metric-dependent thresholds for a plurality of nested metrics from among a plurality of candidate combinations of metric-dependent thresholds. The server may perform an iterative checking process to select a target combination of metric-dependent thresholds from a plurality of candidate combinations of metric-dependent thresholds. In some embodiments of the invention, the server may use an object-specific test data to obtain test data on the classification performance of a plurality of nested metrics with various combinations of metric-dependent thresholds. For example, the classification performance of multiple nested metrics with various combinations of metric-dependent thresholds can be measured in terms of accuracy, recall, error, and the like. In some embodiments, the server may generate a current metric dependent threshold candidate combination (to be used during the current iteration of the iterative validation process) based on a previous metric dependent threshold candidate combination (which was used during a previous iteration of the iterative validation process).
[014] Согласно первому аспекту настоящей технологии реализован способ определения целевого сочетания зависящих от метрики порогов для использования со множеством вложенных метрик при выполнении бинарной классификации цифрового объекта на первый класс или второй класс. Объект связан с прошлыми событиями объекта, указание на которые хранится в хранилище данных. Способ выполняется сервером, имеющим доступ к хранилищу данных. Способ включает в себя получение сервером множества зависящих от объекта проверочных наборов данных. Набор из множества зависящих от объекта проверочных наборов данных содержит указание на множество прошлых событий объекта, связанных с соответствующим проверочным объектом, и контрольный класс проверочного объекта, представляющий собой первый класс или второй класс. Способ включает в себя применение сервером множества вложенных метрик в отношении множества зависящих от объекта проверочных наборов данных и формирование таким образом множества прогнозов. Прогноз указывает на вероятность принадлежности проверочного объекта к первому классу или ко второму классу. Способ во время первой итерации включает в себя сравнение сервером множества прогнозов с соответствующими порогами из первого сочетания зависящих от метрики порогов для определения прогнозируемых классов проверочных объектов для первой итерации. Способ во время первой итерации включает в себя формирование сервером первых параметров точности и первых параметров полноты для множества вложенных метрик для первой итерации путем сравнения контрольных классов с соответствующими прогнозируемыми классами проверочных объектов для первой итерации. Способ во время второй итерации включает в себя корректировку сервером порога из первого сочетания зависящих от метрики порогов и формирование таким образом второго сочетания зависящих от метрики порогов. Способ во время второй итерации включает в себя сравнение сервером множества прогнозов с соответствующими порогами из второго сочетания зависящих от метрики порогов для определения прогнозируемых классов проверочных объектов для второй итерации. Способ во время второй итерации включает в себя формирование сервером вторых параметров точности и вторых параметров полноты для множества вложенных метрик для второй итерации путем сравнения контрольных классов с соответствующими прогнозируемыми классами проверочных объектов для второй итерации. Способ включает в себя выбор сервером первого сочетания зависящих от метрики порогов или второго сочетания зависящих от метрики порогов в качестве целевого сочетания зависящих от метрики порогов путем сравнения (а) первых параметров точности и вторых параметров точности с порогом точности и/или (б) первых параметров полноты и вторых параметров полноты с порогом полноты. Целевое сочетание зависящих от метрики порогов подлежит использованию со множеством вложенных метрик в режиме использования для выполнения такой бинарной классификации цифрового объекта, что если прогноз этапа использования по меньшей мере одной метрики из множества вложенных метрик для цифрового объекта превышает соответствующий порог из целевого сочетания зависящих от метрики порогов, то определяется принадлежность цифрового объекта к первому классу.[014] According to a first aspect of the present technology, a method is implemented for determining a target combination of metric-dependent thresholds for use with a plurality of nested metrics when performing a binary classification of a digital object into a first class or a second class. The object is associated with past events of the object, an indication of which is stored in the data store. The method is performed by a server that has access to the data store. The method includes receiving by the server a plurality of object-specific validation datasets. The set of the plurality of object-specific validation datasets contains an indication of a plurality of past object events associated with the corresponding validation object, and a validation object control class representing the first class or the second class. The method includes applying a plurality of nested metrics to a plurality of object-specific test sets by a server and thereby generating a plurality of predictions. The prediction indicates the probability that the test object belongs to the first class or to the second class. The method during the first iteration includes comparing by the server a plurality of predictions with corresponding thresholds from the first combination of metric dependent thresholds to determine the predicted test object classes for the first iteration. The method during the first iteration includes generating by the server first precision parameters and first recall parameters for the plurality of nested metrics for the first iteration by comparing the control classes with the corresponding predicted test object classes for the first iteration. The method during the second iteration includes adjusting the threshold from the first combination of metric dependent thresholds by the server and thereby generating a second combination of metric dependent thresholds. The method during the second iteration includes the server comparing the plurality of predictions with corresponding thresholds from the second combination of metric dependent thresholds to determine the predicted test object classes for the second iteration. The method during the second iteration includes generating by the server second precision parameters and second recall parameters for the plurality of nested metrics for the second iteration by comparing the control classes with the corresponding predicted test object classes for the second iteration. The method includes selecting by the server the first combination of metric-dependent thresholds or the second combination of metric-dependent thresholds as the target combination of metric-dependent thresholds by comparing (a) the first accuracy parameters and the second accuracy parameters with the accuracy threshold and/or (b) the first parameters completeness and second parameters of completeness with the threshold of completeness. A target combination of metric-dependent thresholds is to be used with a set of nested metrics in a use mode to perform a binary classification of a digital object such that if the prediction of the use step of at least one metric from the set of nested metrics for the digital object exceeds the corresponding threshold from the target combination of metric-dependent thresholds , then the belonging of the digital object to the first class is determined.
[015] В некоторых вариантах осуществления способ дополнительно включает в себя выполнение сервером множества итераций до тех пор, пока (а) параметры точности для итерации не окажутся больше порога точности и/или (б) параметры полноты для итерации не окажутся больше порога полноты, и выбор сервером сочетания зависящих от метрики порогов из этой итерации в качестве целевого сочетания зависящих от метрики порогов.[015] In some embodiments, the method further includes performing a plurality of iterations by the server until (a) the precision parameters for the iteration are greater than a precision threshold and/or (b) the recall parameters for the iteration are greater than the recall threshold, and selecting by the server a combination of metric-dependent thresholds from this iteration as the target combination of metric-dependent thresholds.
[016] В некоторых вариантах осуществления способ дополнительно включает в себя получение сервером в режиме использования зависящего от объекта набора данных, содержащего указание на множество прошлых событий объекта, связанных с объектом. Способ включает в себя применение сервером в режиме использования множества вложенных метрик в отношении зависящего от объекта набора данных и формирование таким образом одного или нескольких прогнозов, указывающих на вероятность принадлежности объекта к первому классу или ко второму классу. Способ включает в себя сравнение сервером в режиме использования одного или нескольких прогнозов с соответствующими порогами из целевого сочетания зависящих от метрики порогов. Способ включает в себя определение сервером в режиме использования принадлежности объекта к первому классу, если по меньшей мере один прогноз превышает соответствующий порог из целевого сочетания зависящих от метрики порогов. Способ включает в себя определение сервером в режиме использования принадлежности объекта ко второму классу, если отсутствует прогноз, превышающий соответствующий порог из целевого сочетания зависящих от метрики порогов.[016] In some embodiments, the method further includes receiving by the server in use mode an object-specific data set containing an indication of a plurality of past object events associated with the object. The method includes applying, in use mode, a plurality of nested metrics to an object-specific set of data, and thereby generating one or more predictions indicating whether the object is likely to belong to the first class or the second class. The method includes a server in use mode comparing one or more predictions with appropriate thresholds from a target combination of metric-dependent thresholds. The method includes determining by the server in use mode whether the object belongs to the first class if at least one prediction exceeds a corresponding threshold from a target combination of metric-dependent thresholds. The method includes determining by the server in use mode whether the object belongs to the second class if there is no prediction that exceeds the corresponding threshold from the target combination of metric-dependent thresholds.
[017] В некоторых вариантах осуществления способа первая метрика из множества вложенных метрик основывается на событиях объекта первого вида, а вторая метрика из множества вложенных метрик основывается на событиях объекта второго вида. События объекта второго вида происходят, только если произошли события объекта первого вида.[017] In some embodiments of the method, the first metric of the plurality of nested metrics is based on the events of the first kind of object, and the second metric of the plurality of nested metrics is based on the events of the second kind of object. Events of an object of the second kind occur only if events of an object of the first kind have occurred.
[018] В некоторых вариантах осуществления способа события объекта второго вида представляют собой подмножество событий объекта первого вида.[018] In some embodiments of the method, the second kind object events are a subset of the first kind object events.
[019] В некоторых вариантах осуществления способа целевое сочетание зависящих от метрики порогов выбирается одновременно для множества вложенных метрик во время одной итерации.[019] In some embodiments of the method, the target combination of metric-dependent thresholds is selected simultaneously for multiple nested metrics during one iteration.
[020] В некоторых вариантах осуществления способа объект представляет собой сообщение электронной почты, при этом первый класс соответствует спаму, а второй класс соответствует отсутствию спама.[020] In some embodiments of the method, the object is an email message, with the first class corresponding to spam and the second class corresponding to no spam.
[021] В некоторых вариантах осуществления способа объект представляет собой пользователя платформы электронной торговли, при этом первый класс соответствует мошенничеству, а второй класс соответствует отсутствию мошенничества.[021] In some embodiments of the method, the object is an e-commerce platform user, with the first class corresponding to fraud and the second class corresponding to no fraud.
[022] В некоторых вариантах осуществления способа объект представляет собой документ, при этом первый класс соответствует релевантности, а второй класс соответствует нерелевантности.[022] In some embodiments of the method, the object is a document, with the first class corresponding to relevance and the second class corresponding to irrelevance.
[023] Согласно второму аспекту настоящей технологии реализован сервер для определения целевого сочетания зависящих от метрики порогов для использования со множеством вложенных метрик при выполнении бинарной классификации цифрового объекта на первый класс или второй класс. Объект связан с прошлыми событиями объекта, указание на которые хранится в хранилище данных. Хранилище данных доступно серверу. Сервер способен получать множество зависящих от объекта проверочных наборов данных. Набор из множества зависящих от объекта проверочных наборов данных содержит указание на множество прошлых событий объекта, связанных с соответствующим проверочным объектом, и контрольный класс проверочного объекта, представляющий собой первый класс или второй класс. Сервер способен применять множество вложенных метрик в отношении множества зависящих от объекта проверочных наборов данных и формировать таким образом множество прогнозов. Прогноз указывает на вероятность принадлежности проверочного объекта к первому классу или ко второму классу. Сервер во время первой итерации способен сравнивать множество прогнозов с соответствующими порогами из первого сочетания зависящих от метрики порогов для определения прогнозируемых классов проверочных объектов для первой итерации. Сервер во время первой итерации способен формировать первые параметры точности и первые параметры полноты для множества вложенных метрик для первой итерации путем сравнения контрольных классов с соответствующими прогнозируемыми классами проверочных объектов для первой итерации. Сервер во время второй итерации способен корректировать порог из первого сочетания зависящих от метрики порогов и формировать таким образом второе сочетание зависящих от метрики порогов. Сервер во время второй итерации способен сравнивать множество прогнозов с соответствующими порогами из второго сочетания зависящих от метрики порогов для определения прогнозируемых классов проверочных объектов для второй итерации. Сервер во время второй итерации способен формировать вторые параметры точности и вторые параметры полноты для множества вложенных метрик для второй итерации путем сравнения контрольных классов с соответствующими прогнозируемыми классами проверочных объектов для второй итерации. Сервер способен выбирать первое сочетание зависящих от метрики порогов или второе сочетание зависящих от метрики порогов в качестве целевого сочетания зависящих от метрики порогов путем сравнения (а) первых параметров точности и вторых параметров точности с порогом точности и/или (б) первых параметров полноты и вторых параметров полноты с порогом полноты. Целевое сочетание зависящих от метрики порогов подлежит использованию со множеством вложенных метрик в режиме использования для выполнения такой бинарной классификации цифрового объекта, что если прогноз этапа использования по меньшей мере одной метрики из множества вложенных метрик для цифрового объекта превышает соответствующий порог из целевого сочетания зависящих от метрики порогов, то определяется принадлежность цифрового объекта к первому классу.[023] According to a second aspect of the present technology, a server is implemented for determining a target combination of metric-dependent thresholds to use with a plurality of nested metrics when performing a binary classification of a digital object into a first class or a second class. The object is associated with past events of the object, an indication of which is stored in the data store. The data store is available to the server. The server is capable of receiving a plurality of entity-specific test sets. The set of the plurality of object-specific validation datasets contains an indication of a plurality of past object events associated with the corresponding validation object, and a validation object control class representing the first class or the second class. The server is able to apply multiple nested metrics to multiple object-specific test sets and thus generate multiple predictions. The prediction indicates the probability that the test object belongs to the first class or to the second class. The server during the first iteration is able to compare the plurality of predictions with the corresponding thresholds from the first combination of metric dependent thresholds to determine the predicted test object classes for the first iteration. The server during the first iteration is able to generate the first accuracy parameters and the first recall parameters for the set of nested metrics for the first iteration by comparing the control classes with the corresponding predicted test object classes for the first iteration. The server during the second iteration is able to adjust the threshold from the first combination of metric-dependent thresholds and thus generate a second combination of metric-dependent thresholds. The server during the second iteration is able to compare the plurality of predictions with the corresponding thresholds from the second combination of metric dependent thresholds to determine the predicted test object classes for the second iteration. The server during the second iteration is able to generate second precision parameters and second recall parameters for the plurality of nested metrics for the second iteration by comparing the control classes with the corresponding predicted test object classes for the second iteration. The server is able to select the first combination of metric dependent thresholds or the second combination of metric dependent thresholds as the target combination of metric dependent thresholds by comparing (a) the first precision parameters and the second precision parameters with the precision threshold and/or (b) the first recall parameters and the second fullness parameters with a fullness threshold. A target combination of metric-dependent thresholds is to be used with a set of nested metrics in a use mode to perform a binary classification of a digital object such that if the prediction of the use step of at least one metric from the set of nested metrics for the digital object exceeds the corresponding threshold from the target combination of metric-dependent thresholds , then the belonging of the digital object to the first class is determined.
[024] В некоторых вариантах осуществления сервер дополнительно способен выполнять множество итераций до тех пор, пока (а) параметры точности для итерации не окажутся больше порога точности и/или (б) параметры полноты для итерации не окажутся больше порога полноты, и выбирать сочетание зависящих от метрики порогов из этой итерации в качестве целевого сочетания зависящих от метрики порогов.[024] In some embodiments, the server is further capable of performing multiple iterations until (a) the precision parameters for the iteration are greater than the precision threshold and/or (b) the recall parameters for the iteration are greater than the recall threshold, and select a combination of dependent from the threshold metric from this iteration as the target combination of metric-dependent thresholds.
[025] В некоторых вариантах осуществления сервер дополнительно способен получать в режиме использования зависящий от объекта набор данных, содержащий указание на множество прошлых событий объекта, связанных с объектом. Сервер дополнительно способен применять в режиме использования множество вложенных метрик в отношении зависящего от объекта набора данных и формировать таким образом один или несколько прогнозов, указывающих на вероятность принадлежности объекта к первому классу или ко второму классу. Сервер дополнительно способен сравнивать в режиме использования один или несколько прогнозов с соответствующими порогами из целевого сочетания зависящих от метрики порогов. Сервер дополнительно способен определять в режиме использования принадлежность объекта к первому классу, если по меньшей мере один прогноз превышает соответствующий порог из целевого сочетания зависящих от метрики порогов. Сервер дополнительно способен определять в режиме использования принадлежность объекта ко второму классу, если отсутствует прогноз, превышающий соответствующий порог из целевого сочетания зависящих от метрики порогов.[025] In some embodiments, the server is further capable of receiving in use mode an object-specific data set containing an indication of a plurality of past object events associated with the object. The server is further capable of applying, in usage mode, a plurality of nested metrics to the object-specific dataset and thereby generating one or more predictions indicating the likelihood of the object being in the first class or the second class. The server is further operable to compare in use one or more predictions with corresponding thresholds from the target combination of metric dependent thresholds. The server is further capable of determining in use whether an object belongs to the first class if at least one prediction exceeds an appropriate threshold from the target combination of metric dependent thresholds. The server is further capable of determining in use whether an object belongs to the second class if there is no prediction that exceeds an appropriate threshold from the target combination of metric-dependent thresholds.
[026] В некоторых вариантах осуществления сервера первая метрика из множества вложенных метрик основывается на событиях объекта первого вида, а вторая метрика из множества вложенных метрик основывается на событиях объекта второго вида. События объекта второго вида происходят, только если произошли события объекта первого вида.[026] In some embodiments of the server, the first metric of the plurality of nested metrics is based on the events of the first kind of object, and the second metric of the plurality of nested metrics is based on the events of the second kind of object. Events of an object of the second kind occur only if events of an object of the first kind have occurred.
[027] В некоторых вариантах осуществления сервера события объекта второго вида представляют собой подмножество событий объекта первого вида.[027] In some embodiments of the server, the second kind object events are a subset of the first kind object events.
[028] В некоторых вариантах осуществления сервера целевое сочетание зависящих от метрики порогов выбирается одновременно для множества вложенных метрик во время одной итерации.[028] In some server embodiments, a target combination of metric-dependent thresholds is selected simultaneously for multiple nested metrics during a single iteration.
[029] В некоторых вариантах осуществления сервера объект представляет собой сообщение электронной почты, при этом первый класс соответствует спаму, а второй класс соответствует отсутствию спама.[029] In some server embodiments, the object is an email message, with the first class corresponding to spam and the second class corresponding to no spam.
[030] В некоторых вариантах осуществления сервера объект представляет собой пользователя платформы электронной торговли, при этом первый класс соответствует мошенничеству, а второй класс соответствует отсутствию мошенничества.[030] In some embodiments of the server, the object is an e-commerce platform user, with the first class corresponding to fraud and the second class corresponding to no fraud.
[031] В некоторых вариантах осуществления сервера объект представляет собой документ, при этом первый класс соответствует релевантности, а второй класс соответствует нерелевантности.[031] In some embodiments of the server, the object is a document, with the first class corresponding to relevance and the second class corresponding to irrelevance.
[032] В контексте настоящего описания, если явно не указано другое, под электронным устройством, сервером, удаленным сервером и компьютерной системой понимаются любые аппаратные и/или программные средства, подходящие для решения поставленной задачи. Таким образом, некоторые не имеющие ограничительного характера примеры аппаратных и/или программных средств включают в себя компьютеры (серверы, настольные, ноутбуки, нетбуки и т.п.), смартфоны, планшеты, сетевое оборудование (маршрутизаторы, коммутаторы, шлюзы и т.п.) и/или их сочетания.[032] In the context of the present description, unless expressly indicated otherwise, under the electronic device, server, remote server and computer system refers to any hardware and/or software suitable for solving the task. Thus, some non-limiting examples of hardware and/or software include computers (servers, desktops, laptops, netbooks, etc.), smartphones, tablets, network equipment (routers, switches, gateways, etc.). .) and/or combinations thereof.
[033] В контексте настоящего описания, если явно не указано другое, понятия «пригодная для чтения компьютером среда» и «память» включают в себя носители любого типа, в качестве не имеющих ограничительного характера примеров которых можно привести оперативное запоминающее устройство (ОЗУ), постоянное запоминающее устройство (ПЗУ), диски (CD-ROM, DVD, гибкие диски, жесткие диски и т.д.), USB-накопители, карты флэш-памяти, твердотельные накопители и накопители на магнитных лентах.[033] As used herein, unless expressly indicated otherwise, "computer-readable media" and "memory" include any type of media, non-limiting examples of which include random access memory (RAM), read only memory (ROM), disks (CD-ROMs, DVDs, floppy disks, hard drives, etc.), USB drives, flash memory cards, solid state drives and tape drives.
[034] В контексте настоящего описания, если явно не указано другое, в качестве указания на информационный элемент может выступать сам информационный элемент, а также указатель, ссылка, гиперссылка или другое косвенное средство, с помощью которого получатель данных может найти место в сети, памяти, базе данных или на другом машиночитаемом носителе информации, откуда можно извлечь этот информационный элемент. Например, указание на документ может включать в себя сам документ (т.е. его содержимое) или это указание может представлять собой уникальный дескриптор документа, указывающий на файл в определенной файловой системе, или какие-либо другие средства для указания получателю данных места в сети, адреса памяти, таблицы в базе данных или другого места, где можно получить доступ к файлу. Специалисту в данной области должно быть ясно, что степень точности, требуемая для такого указания, зависит от объема предварительных знаний относительно интерпретации информации, которой обмениваются отправитель и получатель данных. Например, если перед началом обмена данными между отправителем и получателем известно, что указание на информационный элемент представляет собой ключ базы данных для элемента в определенной таблице заранее заданной базы данных, содержащей этот информационный элемент, то для эффективной передачи этого информационного элемента получателю достаточно оправить ключ базы данных, даже если сам информационный элемент не передается между отправителем и получателем данных.[034] In the context of the present description, unless explicitly stated otherwise, the information element itself can be an indication of an information element, as well as a pointer, link, hyperlink, or other indirect means by which the recipient of data can find a place in the network, memory , database, or other machine-readable storage medium from which the information element can be retrieved. For example, a reference to a document may include the document itself (i.e., its contents), or the reference may be a unique document descriptor pointing to a file on a specific file system, or some other means to indicate a location on a network to the recipient of the data. , a memory address, a table in a database, or another location where the file can be accessed. One skilled in the art would appreciate that the degree of precision required for such an indication depends on the amount of prior knowledge regarding the interpretation of the information exchanged between the sender and recipient of the data. For example, if it is known before the communication between the sender and the recipient that the reference to the information element is the database key for the element in a certain table of the predefined database containing this information element, then in order to efficiently transmit this information element to the recipient, it is enough to send the database key data, even if the information element itself is not transmitted between the sender and receiver of the data.
[035] В контексте настоящего описания, если явно не указано другое, числительные «первый», «второй», «третий» и т.д. используются лишь для указания различия между существительными, к которым они относятся, но не для описания каких-либо определенных взаимосвязей между этими существительными. Например, должно быть понятно, что использование терминов «первый сервер» и «третий сервер» не подразумевает какого-либо определенного порядка, типа, хронологии, иерархии или классификации, в данном случае, серверов, а также что их использование (само по себе) не подразумевает наличие «второго сервера» в любой ситуации. Кроме того, как встречается в настоящем описании в другом контексте, ссылка на «первый» элемент и «второй» элемент не исключает того, что эти два элемента в действительности могут быть одним и тем же элементом. Таким образом, например, в некоторых случаях «первый» сервер и «второй» сервер могут представлять собой одно и то же программное и/или аппаратное средство, а в других случаях - различные программные и/или аппаратные средства.[035] In the context of the present description, unless explicitly stated otherwise, the numerals "first", "second", "third", etc. are used only to indicate the difference between the nouns they refer to, but not to describe any specific relationship between these nouns. For example, it should be clear that the use of the terms "first server" and "third server" does not imply any particular order, type, chronology, hierarchy, or classification of, in this case, servers, and that their use (by itself) does not imply a "second server" in every situation. In addition, as occurs herein in another context, reference to a "first" element and a "second" element does not exclude that the two elements may in fact be the same element. Thus, for example, in some cases the "first" server and the "second" server may be the same software and/or hardware, and in other cases they may be different software and/or hardware.
[036] Каждый вариант осуществления настоящей технологии относится к по меньшей мере одной из вышеупомянутых целей и/или аспектов, но не обязательно ко всем ним. Должно быть понятно, что некоторые аспекты настоящей технологии, связанные с попыткой достижения вышеупомянутой цели, могут не соответствовать этой цели и/или могут соответствовать другим целям, явным образом здесь не упомянутым. Дополнительные и/или альтернативные признаки, аспекты и преимущества вариантов осуществления настоящей технологии содержатся в дальнейшем описании, в приложенных чертежах и в формуле изобретения.[036] Each embodiment of the present technology relates to at least one of the above goals and/or aspects, but not necessarily all of them. It should be understood that some aspects of the present technology, associated with an attempt to achieve the above goal, may not meet this goal and/or may meet other goals not explicitly mentioned here. Additional and/or alternative features, aspects and advantages of embodiments of the present technology are contained in the following description, in the accompanying drawings and in the claims.
Краткое описание чертежейBrief description of the drawings
[037] Дальнейшее описание приведено для лучшего понимания настоящей технологии, а также других аспектов и их признаков, и должно использоваться совместно с приложенными чертежами.[037] The following description is provided for a better understanding of the present technology, as well as other aspects and their features, and should be used in conjunction with the attached drawings.
[038] На фиг. 1 представлена схема системы согласно по меньшей мере некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии.[038] In FIG. 1 is a diagram of a system in accordance with at least some non-limiting embodiments of the present technology.
[039] На фиг. 2 представлена структура данных, хранящихся в базе данных системы, представленной на фиг. 1, согласно не имеющим ограничительного характера вариантам осуществления настоящей технологии.[039] In FIG. 2 shows the structure of the data stored in the database of the system shown in FIG. 1 according to non-limiting embodiments of the present technology.
[040] На фиг. 3 дано представление зависящего от объекта набора данных, получаемого сервером системы, представленной на фиг. 1, согласно не имеющим ограничительного характера вариантам осуществления настоящей технологии.[040] In FIG. 3 is a representation of the object-specific data set received by the server of the system shown in FIG. 1 according to non-limiting embodiments of the present technology.
[041] На фиг. 4 дано представление этапа использования механизма классификации, размещенной на сервере системы, представленной на фиг. 1, согласно не имеющим ограничительного характера вариантам осуществления настоящей технологии.[041] In FIG. 4 is a representation of the stage of using the classification mechanism hosted on the server of the system shown in FIG. 1 according to non-limiting embodiments of the present technology.
[042] На фиг. 5 представлена схема обучения первой вложенной метрики и второй вложенной метрики сервером системы, представленной на фиг. 1, согласно не имеющим ограничительного характера вариантам осуществления настоящей технологии.[042] In FIG. 5 shows the scheme of learning the first nested metric and the second nested metric by the server of the system shown in FIG. 1 according to non-limiting embodiments of the present technology.
[043] На фиг. 6 дано представление итеративного процесса проверки, выполняемого сервером системы, представленной на фиг. 1, для выбора целевого сочетания зависящих от метрики порогов согласно не имеющим ограничительного характера вариантам осуществления настоящей технологии.[043] In FIG. 6 is a representation of an iterative verification process performed by the server of the system shown in FIG. 1 to select a target combination of metric dependent thresholds according to non-limiting embodiments of the present technology.
[044] На фиг. 7 представлена блок-схема способа определения целевого сочетания зависящих от метрики порогов, выполняемого сервером системы, представленной на фиг. 1, согласно вариантам осуществления настоящей технологии.[044] In FIG. 7 is a flow diagram of a method for determining a target combination of metric-dependent thresholds performed by a server of the system shown in FIG. 1 according to embodiments of the present technology.
Осуществление изобретенияImplementation of the invention
[045] Представленные здесь примеры и условный язык предназначены для обеспечения лучшего понимания принципов настоящей технологии, а не для ограничения ее объема до таких специально приведенных примеров и условий. Очевидно, что специалисты в данной области техники способны разработать различные способы и устройства, которые явно не описаны и не показаны, но реализуют принципы настоящей технологии в пределах ее существа и объема.[045] The examples and conventions presented herein are intended to provide a better understanding of the principles of the present technology, and not to limit its scope to such specifically given examples and terms. It is obvious that specialists in the art are able to develop various methods and devices that are not explicitly described or shown, but implement the principles of the present technology within its essence and scope.
[046] Кроме того, чтобы способствовать лучшему пониманию, последующее описание может содержать упрощенные варианты реализации настоящей технологии. Специалисту в данной области должно быть понятно, что другие варианты осуществления данной технологии могут быть значительно сложнее.[046] In addition, to facilitate a better understanding, the following description may contain simplified implementations of the present technology. A person skilled in the art should be clear that other embodiments of this technology can be significantly more complex.
[047] В некоторых случаях приводятся полезные примеры модификаций настоящей технологии. Они способствуют пониманию, но также не определяют объема или границ настоящей технологии. Представленный перечень модификаций не является исчерпывающим и специалист в данной области может разработать другие модификации в пределах объема настоящей технологии. Кроме того, если в некоторых случаях модификации не описаны, это не означает, что они невозможны и/или что описание содержит единственно возможный вариант реализации того или иного элемента настоящей технологии.[047] In some cases, useful examples of modifications to the present technology are provided. They contribute to understanding, but also do not define the scope or boundaries of the present technology. The presented list of modifications is not exhaustive and the person skilled in the art can develop other modifications within the scope of this technology. In addition, if modifications are not described in some cases, this does not mean that they are impossible and / or that the description contains the only possible implementation of one or another element of the present technology.
[048] Описание принципов, аспектов и вариантов реализации настоящей технологии, а также их конкретные примеры предназначены для охвата их структурных и функциональных эквивалентов, независимо от того, известны они в настоящее время или будут разработаны в будущем. Например, специалистам в данной области техники должно быть понятно, что любые описанные здесь структурные схемы соответствуют концептуальным представлениям иллюстративных принципиальных схем, реализующих основы настоящей технологии. Также должно быть очевидно, что любые блок-схемы, схемы процессов, диаграммы изменения состояния, псевдокоды и т.п. соответствуют различным процессам, которые могут быть представлены на машиночитаемом физическом носителе информации и могут выполняться компьютером или процессором, независимо от того, показан такой компьютер или процессор явно или нет.[048] The description of principles, aspects, and embodiments of the present technology, as well as their specific examples, are intended to cover their structural and functional equivalents, whether they are currently known or will be developed in the future. For example, those skilled in the art will appreciate that any block diagrams described herein correspond to conceptual representations of illustrative circuit diagrams embodying the fundamentals of the present technology. It should also be obvious that any flowcharts, process diagrams, state transition diagrams, pseudocodes, etc. correspond to various processes that may be represented on a computer-readable physical storage medium and may be executed by a computer or processor, whether such computer or processor is explicitly shown or not.
[049] Функции различных элементов, показанных на чертежах, включая любой функциональный блок, обозначенный как «процессор» или «графический процессор», могут быть реализованы с использованием специализированных аппаратных средств, а также с использованием аппаратных средств, способных выполнять соответствующее программное обеспечение. Если используется процессор, эти функции могут выполняться одним выделенным процессором, одним совместно используемым процессором или множеством отдельных процессоров, некоторые из которых могут использоваться совместно. В некоторых вариантах осуществления настоящей технологии процессор может представлять собой процессор общего назначения, такой как центральный процессор (CPU), или специализированный процессор, такой как графический процессор (GPU). Кроме того, явное использование термина «процессор» или «контроллер» не должно трактоваться как указание исключительно на аппаратные средства, способные выполнять программное обеспечение, и может подразумевать, помимо прочего, аппаратные средства цифрового сигнального процессора (DSP), сетевой процессор, специализированную интегральную схему (ASIC), программируемую вентильную матрицу (FPGA), ПЗУ для хранения программного обеспечения, ОЗУ и энергонезависимое запоминающее устройство. Также могут подразумеваться другие аппаратные средства, общего назначения и/или заказные.[049] The functions of the various elements shown in the drawings, including any functional unit labeled "processor" or "graphics processing unit", may be implemented using specialized hardware, as well as using hardware capable of executing the corresponding software. If a processor is used, these functions may be performed by a single dedicated processor, a single shared processor, or multiple individual processors, some of which may be shared. In some embodiments of the present technology, the processor may be a general purpose processor such as a central processing unit (CPU) or a specialized processor such as a graphics processing unit (GPU). In addition, explicit use of the term "processor" or "controller" should not be construed as referring solely to the hardware capable of executing the software and may refer to, but is not limited to, digital signal processor (DSP) hardware, network processor, ASIC (ASIC), Field Programmable Gate Array (FPGA), Software ROM, RAM, and Non-Volatile Memory. Other general purpose and/or custom hardware may also be contemplated.
[050] Программные модули или просто модули, реализация которых предполагается в виде программных средств, могут быть представлены здесь как любое сочетание элементов блок-схемы или других элементов, указывающих на выполнение шагов процесса и/или содержащих текстовое описание. Такие модули могут выполняться аппаратными средствами, показанными явно или подразумеваемыми.[050] Software modules, or simply modules that are intended to be implemented in software, may be represented here as any combination of flowchart elements or other elements indicating the steps of a process and/or containing a textual description. Such modules may be implemented in hardware, as shown or implied.
[051] Далее с учетом вышеизложенных принципов рассмотрены некоторые не имеющие ограничительного характера примеры, иллюстрирующие различные варианты реализации аспектов настоящей технологии.[051] In the following, in light of the foregoing principles, some non-limiting examples are provided illustrating various embodiments of aspects of the present technology.
[052] На фиг. 1 представлена схема системы 100 (не показано на чертежах), пригодной для реализации вариантов осуществления настоящей технологии, не имеющих ограничительного характера. Очевидно, что система 100 приведена лишь для демонстрации варианта реализации настоящей технологии. Таким образом, дальнейшее описание системы представляет собой описание примеров, иллюстрирующих настоящую технологию.[052] In FIG. 1 is a diagram of a system 100 (not shown in the drawings) suitable for non-limiting embodiments of the present technology. Obviously, the system 100 is shown only to demonstrate an implementation of the present technology. Thus, the following description of the system is a description of examples illustrating the present technology.
[053] В представленном примере система 100 может применяться для предоставления пользователю интерактивных сервисов. С этой целью система 100 содержит, среди прочего, электронное устройство 102, связанное с пользователем 101, сервер 106, множество серверов 108 ресурсов и систему 150 базы данных.[053] In the illustrated example, system 100 may be used to provide interactive services to a user. To this end, the system 100 includes, among other things, an
[054] В не имеющем ограничительного характера примере система 100 может использоваться для предоставления сервисов поисковой системы. В этом примере пользователь 101 может с помощью электронного устройства 102 отправлять запрос серверу 106, который в ответ способен предоставлять результаты поиска пользователю 101. Сервер 106 формирует эти результаты поиска на основе информации, полученной, например, от множества серверов 108 ресурсов и сохраненной в системе 150 базы данных. Результаты поиска, предоставленные системой 100, могут быть релевантными отправленному запросу. Можно сказать, что сервер 106 может содержать поисковую систему 120.[054] In a non-limiting example, system 100 may be used to provide search engine services. In this example, the
[055] Как описано ниже, в дополнение к предоставлению сервисов поисковой системы (или вместо этого), пользователю 101 могут предоставляться другие интерактивные сервисы, такие как сервисы рекомендации контента, сервисы электронной почты, сервисы электронной торговли и т.п. Например, сервер 106 может содержать один или несколько сервисов из множества 160 интерактивных сервисов, включая поисковую систему 120, платформу 130 для электронной торговли и платформу 140 электронной почты.[055] As described below, in addition to (or instead of) providing search engine services, other interactive services, such as content recommendation services, email services, e-commerce services, and the like, may be provided to the
[056] В контексте настоящей технологии система 100, предоставляющая один или несколько интерактивных сервисов, способна выполнять бинарную классификацию цифровых объектов, связанных с одним или несколькими интерактивными сервисами. Ниже более подробно описаны характер цифровых объектов и цель их классификации для различных интерактивных сервисов.[056] In the context of the present technology, a system 100 providing one or more interactive services is capable of performing binary classification of digital objects associated with one or more interactive services. The nature of digital objects and the purpose of their classification for various interactive services are described in more detail below.
Электронное устройствоElectronic device
[057] Как упомянуто выше, система 100 содержит электронное устройство 102, связанное с пользователем 101. Электронное устройство 102 или просто устройство 102 иногда может называться клиентским устройством, оконечным устройством или клиентским электронным устройством. Следует отметить, что связь электронного устройства 102 с пользователем 101 не означает необходимости предлагать или подразумевать какой-либо режим работы, например, вход в систему, регистрацию и т.п.[057] As mentioned above, system 100 includes an
[058] В контексте настоящего описания, если явно не указано другое, термин «электронное устройство» или «устройство» означает любое компьютерное аппаратное средство, способное выполнять программы, подходящие для решения поставленной задачи. Таким образом, некоторые не имеющие ограничительного характера примеры устройства 102 включают в себя персональные компьютеры (настольные, ноутбуки, нетбуки и т.д.), смартфоны, планшеты и т.п. Устройство 102 содержит известные в данной области техники аппаратные средства и/или прикладное программное обеспечение и/или встроенное программное обеспечение (либо их сочетание) для выполнения браузерного приложения (не показано).[058] In the context of the present description, unless expressly indicated otherwise, the term "electronic device" or "device" means any computer hardware capable of executing programs suitable for solving the task. Thus, some non-limiting examples of
[059] В общем случае браузерное приложение обеспечивает пользователю 101 доступ к одному или нескольким веб-ресурсам. На реализацию браузерного приложения не накладывается каких-либо особых ограничений. Например, браузерное приложение, выполняемое устройством 102, может быть реализовано в виде браузера Yandex™. Например, пользователь 101 может использовать браузерное приложение для (а) перехода на веб-сайт поисковой системы и (б) отправки запроса, в ответ на который ему должны быть предоставлены релевантные результаты поиска. В другом примере пользователь 101 может использовать браузерное приложение для (а) перехода на веб-сайт для электронной торговли и (б) покупки и/или продажи изделия или услуги. В еще одном примере пользователь 101 может использовать браузерное приложение для (а) перехода на веб-сайт электронной почты и (б) доступа к своей учетной записи абонента электронной почты для рассмотрения сообщений электронной почты, связанных с его учетной записью.[059] In general, a browser application provides the
[060] Устройство 102 способно формировать запрос 180 для связи с сервером 106. Запрос 180 может представлять собой один или несколько пакетов данных, содержащих информацию, например, указывающую на запрос, отправленный пользователем 101. Устройство 102 также способно получать ответ 190 от сервера 106. Ответ 190 может представлять собой один или несколько пакетов данных, содержащих информацию, например, указывающую на результаты поиска, релевантные отправленному запросу, и машиночитаемые команды для отображения браузерным приложением этих результатов поиска пользователю 101.[060] The
Сеть связиCommunication network
[061] Система 100 содержит сеть 110 связи. В не имеющем ограничительного характера примере в качестве сети 110 связи может использоваться сеть Интернет. В других не имеющих ограничительного характера примерах сеть 110 связи может быть реализована иначе, например, в виде любой глобальной сети связи, локальной сети связи, частной сети связи и т.п. На практике реализация сети 110 связи, на которую не накладывается каких-либо ограничений, может, среди прочего, зависеть от реализации других элементов системы 100.[061] System 100 includes
[062] Сеть 110 связи предназначена для обеспечения связи между по меньшей мере некоторыми элементами системы 100, такими как устройство 102, множество серверов 108 ресурсов и сервер 106. Например, это означает, что множество серверов 108 ресурсов доступно через сеть 110 связи устройству 102. В другом примере это означает, что множество серверов 108 ресурсов доступно через сеть 110 связи серверу 106. В еще одном примере это означает, что сервер 106 доступен через сеть 110 связи устройству 102.[062] The
[063] Сеть 110 связи может быть использована для передачи пакетов данных между устройством 102, множеством серверов 108 ресурсов и сервером 106. Например, сеть 110 связи может быть использована для отправки запроса 180 от устройства 102 к серверу 106. В другом примере сеть 110 связи может быть использована для отправки ответа 190 от сервера 106 к устройству 102.[063]
Множество серверов ресурсовMany resource servers
[064] Как описано выше, множество серверов 108 ресурсов может быть доступно через сеть 110 связи. Множество серверов 108 ресурсов может быть реализовано в виде традиционных компьютерных серверов. В не имеющем ограничительного характера примере осуществления настоящей технологии сервер из множества серверов 108 ресурсов может быть реализован в виде сервера Dell™ PowerEdge™, работающего под управлением операционной системы Microsoft™ Windows Server™. Сервер из множества серверов 108 ресурсов также может быть реализован с использованием любых других подходящих аппаратных средств и/или прикладного программного обеспечения и/или встроенного программного обеспечения либо их сочетания.[064] As described above, a plurality of
[065] Множество серверов 108 ресурсов содержит ресурсы (или веб-ресурсы), доступные устройству 102 и/или серверу 106. На вид ресурсов, содержащихся во множестве серверов 108 ресурсов, не накладывается каких-либо ограничений. В некоторых вариантах осуществления настоящей технологии ресурсы могут содержать цифровые документы или просто документы, представляющие собой веб-страницы.[065] The plurality of
[066] Например, множество серверов 108 ресурсов может содержать веб-страницы, т.е. множество серверов 108 ресурсов может хранить документы, которые представляют собой веб-страницы и доступны устройству 102 и/или серверу 106. Документ может быть составлен на языке разметки и может, среди прочего, содержать (а) контент соответствующей веб-страницы и (б) машиночитаемые команды для отображения соответствующей веб-страницы (содержащегося на ней контента).[066] For example, a plurality of
[067] Устройство 102 может обратиться к серверу из множества серверов 108 ресурсов для получения документа, хранящегося на этом сервере. Например, пользователь 101 может ввести веб-адрес, связанный с веб-страницей, в браузерном приложении устройства 102. В ответ устройство 102 может обратиться к серверу ресурсов, содержащему эту веб-страницу, для получения документа, представляющего эту веб-страницу, с целью отображения контента этой веб-страницы с использованием браузерного приложения.[067] The
[068] Сервер 106 может обратиться к серверу из множества серверов 108 ресурсов для получения документа, хранящегося на этом сервере ресурсов. Назначение сервера 106, осуществляющего доступ ко множеству серверов 108 ресурсов и получение от них документов, более подробно описано ниже.[068]
Система базы данныхDatabase system
[069] Сервер 106 связан с системой 150 базы данных. В общем случае система 150 базы данных способна получать данные от сервера 106, хранить эти данные и/или предоставлять их серверу 106 для последующего использования.[069] The
[070] В некоторых вариантах осуществления изобретения система 150 базы данных может хранить информацию, связанную с одним или несколькими интерактивными сервисами, размещенными на сервере 106. Например, если на сервере 106 размещена поисковая система 120, то система 150 базы данных может хранить информацию о ранее выполненных поисковой системой 120 поисках, а также информацию о ранее отправленных серверу 106 запросах и о документах, предоставленных поисковой системой сервера 106 в качестве результатов поиска.[070] In some embodiments,
[071] В этом примере предполагается, что система 150 базы данных может хранить данные запроса, связанные с соответствующими запросами, отправленными поисковой системе 120. Данные запроса, связанные с запросом, могут быть различных видов и на них не накладывается каких-либо ограничений. Например, система 150 базы данных может хранить для соответствующих запросов такие данные запроса (не ограничиваясь ими):[071] In this example, it is assumed that the
- популярность запроса;- query popularity;
- частота отправки запроса;- frequency of sending a request;
- количество «кликов», связанных с запросом;- the number of "clicks" associated with the request;
- указания на другие отправленные запросы, связанные с запросом;- indications of other sent requests related to the request;
- указания на документы, связанные с запросом;- indications of documents related to the request;
- другие статистические данные, связанные с запросом;- other statistics related to the request;
- поисковые термины, связанные с запросом;- search terms associated with the query;
- количество символов в запросе;- the number of characters in the request;
- другие присущие запросу характеристики.- other characteristics inherent in the request.
[072] В этом примере система 150 базы данных также может хранить данные документа, связанные с соответствующими документами. Данные документа, связанные с документом, могут быть различных видов и на них не накладывается каких-либо ограничений. Например, система 150 базы данных может хранить для соответствующих документов такие данные документа (не ограничиваясь ими):[072] In this example, the
- популярность документа;- the popularity of the document;
- коэффициент «кликов» для документа;- coefficient of "clicks" for the document;
- время на «клик», связанное с документом;- time per "click" associated with the document;
- указания на запросы, связанные с документом;- indications of requests related to the document;
- другие статистические данные, связанные с документом;- other statistical data related to the document;
- текст, связанный с документом;- text associated with the document;
- размер файла документа;- document file size;
- другие присущие документу характеристики.- other characteristics inherent in the document.
[073] В этом примере система 150 базы данных также может хранить данные пользователя, связанные с соответствующими пользователями. Данные пользователя, связанные с пользователем, могут быть различных видов и на них не накладывается каких-либо ограничений. Например, система 150 базы данных может хранить для соответствующих пользователей такие данные пользователя (не ограничиваясь ими):[073] In this example, the
- данные веб-сеанса;- web session data;
- данные отправленного запроса;- data of the sent request;
- история «кликов»;- history of "clicks";
- данные взаимодействий;- interaction data;
- предпочтения пользователя.- user preferences.
[074] В по меньшей мере некоторых вариантах осуществления настоящей технологии предполагается, что система 150 базы данных может хранить данные, связанные с элементом или объектом интерактивного сервиса. Можно сказать, что система 150 базы данных может хранить зависящие от объекта данные. Предполагается, что сервер 106 может хранить данные о различных объектах интерактивного сервиса для каждого объекта отдельно без выхода за границы настоящей технологии.[074] In at least some embodiments of the present technology, it is contemplated that the
[075] Например, если на сервере 106 размещена поисковая система 120, то система 150 базы данных может хранить данные, связанные с ее пользователями (первый вид цифровых объектов или элементов, связанных с сервисами поисковой системы). Таким образом, в этом примере система 150 базы данных может хранить зависящие от пользователя данные для каждого пользователя отдельно. В другом примере, если на сервере 106 размещена поисковая система 120, то система 150 базы данных может хранить данные, связанные с цифровыми документами, которые использовались в качестве результатов поиска (второй вид цифровых объектов или элементов, связанных с сервисами поисковой системы). Таким образом, в этом примере система 150 базы данных может хранить зависящие от документа данные для каждого документа отдельно.[075] For example, if the
[076] В еще одном примере, если на сервере 106 размещена платформа 140 электронной почты, то система 150 базы данных может хранить данные, связанные с ее пользователями (первый вид цифровых объектов или элементов, связанных с сервисом электронной почты). Таким образом, в этом примере система 150 базы данных может хранить зависящие от пользователя данные для каждого пользователя отдельно. В другом примере, если на сервере 106 размещена платформа 140 электронной почты, то система 150 базы данных может хранить данные, связанные с сообщениями электронной почты (второй вид цифровых объектов или элементов, связанных с сервисом электронной почты). Таким образом, в этом примере система 150 базы данных может хранить зависящие от сообщения электронной почты данные для каждого сообщения электронной почты отдельно.[076] In yet another example, if the
[077] Следовательно, можно сказать, что система 150 базы данных может хранить различные зависящие от объекта данные в зависимости, среди прочего, от вида интерактивного сервиса (или сервисов), размещенного на сервере 106, и от видов объектов, связанных с этим интерактивным сервисом (или сервисами).[077] Therefore, it can be said that the
[078] Как описано ниже, сервер 106 способен выполнять множество компьютерных алгоритмов, называемых механизмом 170 классификации, который в целом способен выполнять бинарную классификацию цифровых объектов из одного или нескольких интерактивных сервисов, предоставляемых сервером 106.[078] As described below,
[079] В по меньшей мере некоторых вариантах осуществления настоящей технологии система 150 базы данных может хранить размеченные зависящие от объекта данные для проверки эффективности одного или нескольких описанных здесь алгоритмов классификации. Например, размеченные зависящие от объекта данные для проверочного объекта могут содержать данные разметки, указывающие на контрольный класс проверочного объекта. На сбор и/или формирование данных разметки и их последующее хранение в системе 150 базы данных не накладывается каких-либо особых ограничений. В некоторых случаях данные разметки могут быть собраны от оценщиков-людей, которым была поставлена задача «разметки» проверочных объектов.[079] In at least some embodiments of the present technology, the
[080] Ниже со ссылкой на фиг. 2 более подробно описана информация, которая может быть включена в состав зависящих от объекта данных и размеченных зависящих от объекта данных, хранящихся в системе 150 базы данных.[080] Referring to FIG. 2 describes in more detail the information that may be included in the object-specific data and the marked-up object-specific data stored in the
СерверServer
[081] Система 100 содержит сервер 106, который может быть реализован в виде традиционного компьютерного сервера. В примере осуществления настоящей технологии сервер 106 может быть реализован в виде сервера Dell™ PowerEdge™, работающего под управлением операционной системы Microsoft™ Windows Server™. Очевидно, что сервер 106 может быть реализован с использованием любых других подходящих аппаратных средств и/или прикладного программного обеспечения и/или встроенного программного обеспечения либо их сочетания. В представленном не имеющем ограничительного характера варианте осуществления настоящей технологии сервер 106 представляет собой один сервер. В других не имеющих ограничительного характера вариантах осуществления настоящей технологии функции сервера 106 могут быть распределены между несколькими серверами.[081] System 100 includes a
[082] Как показано на фиг. 1, сервер 106 может содержать множество 160 интерактивных сервисов. Например, сервер 106 может содержать поисковую систему 120 для предоставления сервисов поисковой системы, платформу 130 для электронной торговли для предоставления сервисов электронной торговли и платформу 140 электронной почты для предоставления сервисов электронной почты. Ниже описана возможная реализация поисковой системы 120, платформы 130 для электронной торговли и платформы 140 электронной почты в по меньшей мере некоторых вариантах осуществления настоящей технологии.[082] As shown in FIG. 1,
[083] В некоторых вариантах осуществления изобретения сервер 106 может управляться и/или администрироваться поставщиком услуг поисковой системы (не показан), таким как оператор поисковой системы Yandex™. Сервер 106 может содержать поисковую систему 120 для выполнения одного или нескольких поисков в ответ на запросы, отправленные пользователями поисковой системы 120.[083] In some embodiments, the
[084] Например, сервер 106 может получать от устройства 102 запрос 180, указывающий на запрос, отправленный пользователем 101. Сервер 106 в ответ на отправленный запрос может выполнять поиск с целью формирования результатов поиска, релевантных отправленному запросу. В результате сервер 106 может формировать ответ 190, указывающий на результаты поиска, и может отправлять ответ 190 устройству 102 для отображения результатов поиска пользователю 101, например, с использованием браузерного приложения.[084] For example,
[085] Сформированные для отправленного запроса результаты поиска могут быть представлены в любом виде. Тем не менее, в не имеющем ограничительного характера примере настоящей технологии результаты поиска, сформированные сервером 106, могут указывать на документы, релевантные отправленному запросу. Ниже описано определение и получение сервером 106 документов, релевантных отправленному запросу.[085] The search results generated for the submitted request can be presented in any form. However, in a non-limiting example of the present technology, the search results generated by the
[086] Сервер 106 также может выполнять приложение обходчика (не показано). В общем случае приложение обходчика может использоваться сервером 106 для «посещения» ресурсов, доступных через сеть 110 связи, и их получения или загрузки с целью дальнейшего использования. Например, приложение обходчика может быть использовано сервером 106 для доступа к множеству серверов 108 ресурсов и для получения или загрузки документов, представляющих собой веб-страницы, содержащиеся на множестве серверов 108 ресурсов.[086]
[087] Предполагается, что приложение обходчика может периодически выполняться сервером 106 с целью получения или загрузки документов, которые были обновлены и/или стали доступными через сеть 110 связи после предыдущего выполнения приложения обходчика.[087] It is contemplated that the crawler application may be periodically executed by the
[088] В других вариантах осуществления изобретения сервер 106 может управляться и/или администрироваться поставщиком услуг электронной торговли (не показан), например, таким как оператор платформы для электронной торговли Yandex.Market™. Таким образом, сервер 106 может содержать платформу 130 для электронной торговли, предназначенную для предложения одного или нескольких товаров и/или услуг к покупке или продаже пользователями платформы 130 для электронной торговли.[088] In other embodiments, the
[089] В общем случае платформа для электронной торговли соответствует одному или нескольким компьютерным алгоритмам, благодаря которым сервер 106 способен предоставлять услуги электронной торговли пользователю 101 электронного устройства 102. Например, пользователь 101 может представлять собой клиента платформы 130 для электронной торговли. Пользователь 101 может ввести универсальный указатель ресурсов (URL, Universal Resource Locator), связанный с платформой 130 для электронной торговли, в командном интерфейсе браузерного приложения и получить доступ к своей учетной записи на платформе 130 для электронной торговли.[089] In general, the e-commerce platform corresponds to one or more computer algorithms by which the
[090] Следует отметить, что сервер 106 может собирать информацию о клиентах и продуктах, доступных на платформе 130 для электронной торговли. Например, сервер 106 может собирать зависящую от клиента информацию относительно взаимодействий клиента с различными продуктами. В этом примере сервер 106 может собирать в отношении клиента информацию о просмотренных продуктах, выбранных продуктах, приобретенных продуктах, рекомендованных продуктах и т.п. В другом примере сервер 106 может собирать зависящую от продукта информацию в отношении различных продуктов. В этом примере сервер 106 может собирать в отношении продукта информацию о просмотрах, «кликах», покупках и т.п.[090] It should be noted that the
[091] В других вариантах осуществления изобретения сервер 106 может управляться и/или администрироваться поставщиком услуг электронной почты (не показан), таким как оператор сервиса электронной почты Yandex.Mail™. Соответственно, сервер 106 может содержать платформу 140 электронной почты для предоставления услуг электронной почты пользователям платформы 140 электронной почты.[091] In other embodiments of the invention, the
[092] В общем случае платформа 140 электронной почты соответствует одному или нескольким компьютерным алгоритмам, благодаря которым сервер 106 способен предоставлять услуги электронной почты пользователю 101 электронного устройства 102. Например, пользователь 101 может иметь учетную запись абонента электронной почты, связанную с платформой 140 электронной почты. Пользователь 101 может ввести URL-адрес, связанный с платформой 140 электронной почты, в командном интерфейсе браузерного приложения и получить доступ к своей учетной записи абонента электронной почты на платформе 140 электронной почты.[092] In general, the
[093] В некоторых вариантах осуществления настоящей технологии в дополнение или вместо вышесказанного электронное устройство 102 может выполнять клиентское приложение электронной почты (не показано), связанное с (серверной) платформой 140. В общем случае клиентское приложение электронной почты предназначено для того, чтобы обеспечивать пользователю 101 возможность просматривать список сообщений электронной почты (прочтенных и непрочтенных), читать сообщения электронной почты, открывать вложения, составлять новые сообщения электронной почты, отвечать на сообщения электронной почты, пересылать сообщения электронной почты, удалять сообщения электронной почты, управлять нежелательными сообщениями электронной почты, назначать категории сообщениям электронной почты, размещать сообщения электронной почты в папках, создавать адресную книгу и обращаться к ней и т.п.[093] In some embodiments of the present technology, in addition to or instead of the foregoing,
[094] Независимо от использования пользователем 101 браузерного приложения и/или клиентского приложения электронной почты для доступа к своей учетной записи абонента электронной почты, предполагается, что пользователю 101 может быть предоставлен интерфейс электронной почты (не показан) для выполнения одного или нескольких действий в отношении сообщений электронной почты в своей учетной записи абонента электронной почты. Ниже более подробно описаны функции платформы 140 электронной почты.[094] Regardless of whether the
[095] В общем случае интерфейс электронной почты предназначен для обеспечения пользовательских взаимодействий между пользователем платформы 140 электронной почты (например, таким как пользователь 101) и сообщениями электронной почты в его учетной записи абонента электронной почты. В не имеющем ограничительного характера примере интерфейс электронной почты может содержать одну или несколько панелей, одно или несколько меню, одну или несколько кнопок, а также может обеспечивать другие функции для взаимодействия пользователя с сообщениями электронной почты. Следует отметить, что в контексте настоящей технологии возможны различные интерфейсы электронной почты.[095] In general, the email interface is designed to provide user interactions between a user of email platform 140 (such as
[096] Например, интерфейс электронной почты может содержать боковую панель, указывающую на одну или несколько папок электронной почты (заранее заданных и/или персонализированных), связанных с учетной записью электронной почты, таких как папка «входящие», папка «исходящие», папка «черновики», папка «спам», папка «удаленные» и т.п. В другом примере интерфейс электронной почты может содержать одну или несколько кнопок для выполнения различных действий в отношении сообщений электронной почты, в числе прочего, таких как кнопка «составить» для составления нового сообщения электронной почты, кнопка «отправить» для отправки сообщения электронной почты, кнопка «сохранить» для сохранения текущей версии сообщения электронной почты, кнопка «прочтено» для указания того, что сообщение электронной почты прочтено или просмотрено пользователем, кнопка «не прочтено» для указания того, что сообщение электронной почты не прочтено или не просмотрено пользователем, кнопка «спам» для указания того, что сообщению электронной почты должна быть присвоена категория «спам», и/или для указания того, что сообщение электронной почты должно быть перемещено в папку «спам», кнопка «удалено» для указания того, что сообщение электронной почты должно быть удалено и/или что сообщение электронной почты должно быть перемещено в папку «удаленные» и т.п. В еще одном примере интерфейс электронной почты может поддерживать взаимодействие пользователя с сообщениями электронной почты других видов, в числе прочего, такие как функция перетаскивания, обеспечивающая пользователю возможность эффективного выбора сообщения электронной почты в первой папке и перемещения этого сообщения электронной почты во вторую папку.[096] For example, the email interface may include a sidebar pointing to one or more email folders (predefined and/or personalized) associated with an email account, such as an inbox, an outbox, a folder drafts, spam folder, deleted items folder, etc. In another example, the email interface may include one or more buttons for performing various actions on email messages, such as a "compose" button for composing a new email message, a "send" button for sending an email message, a button "save" to save the current version of the email message, "read" button to indicate that the email message has been read or viewed by the user, "unread" button to indicate that the email message has not been read or viewed by the user, " spam" button to indicate that the email message should be categorized as "spam" and/or to indicate that the email message should be moved to the spam folder, a "deleted" button to indicate that the email message should be deleted and/or that the e-mail should be moved to the "deleted" folder, etc. In yet another example, the email interface may support user interaction with other types of email messages, such as a drag and drop functionality that allows the user to efficiently select an email message in a first folder and move that email message to a second folder.
[097] В контексте настоящей технологии сервер 106 может содержать механизм 170 классификации. В общем случае механизм 170 классификации способен использовать данные, хранящиеся в сочетании с цифровым объектом интерактивного сервиса, и выполнять бинарную классификацию этого цифрового объекта. Например, сервер 106 может получать зависящие от объекта данные для цифрового объекта из системы 150 базы данных и использовать механизм 170 классификации для определения принадлежности этого цифрового объекта к первому классу или ко второму классу.[097] In the context of the present technology, the
[098] Как более подробно описано ниже, механизм 170 классификации содержит (а) множество вложенных метрик, предназначенных для формирования прогнозов вероятности принадлежности цифрового объекта к первому классу, и (б) сочетание зависящих от метрики порогов, с которыми соответствующие прогнозы сравниваются для определения принадлежности цифрового объекта к первому классу. Сервер 106 также способен определять подлежащее использованию вместе со множеством вложенных метрик целевое сочетание зависящих от метрики порогов из множества сочетаний-кандидатов зависящих от метрики порогов.[098] As described in more detail below, the
[099] На фиг. 2 дано представление 200 для по меньшей мере некоторых данных, хранящихся в системе 150 базы данных. Как показано, система 150 базы данных способна хранить зависящие от объекта данные 210 и зависящие от объекта проверочные данные 220.[099] FIG. 2 is a
[0100] Для иллюстрации можно предположить, что объекты в данном примере представляют собой пользователей поисковой системы 120. Тем не менее, виды объектов могут, среди прочего, зависеть от различных вариантов реализации настоящей технологии.[0100] For illustration purposes, the objects in this example may be assumed to represent users of the
[0101] Зависящие от объекта данные 210 хранятся в системе 150 базы данных отдельно для каждого объекта или, как показано в не имеющем ограничительного характера примере, отдельно для каждого пользователя. Например, зависящие от объекта данные 210 содержат множество зависящих от объекта наборов данных (без числового обозначения). Множество зависящих от объекта наборов данных содержит зависящий от объекта набор 215 данных, который в представленном не имеющем ограничительного характера примере, где объекты соответствуют пользователям поисковой системы 120, также называется зависящим от пользователя набором данных.[0101] Object-
[0102] Следует отметить, что зависящий от объекта набор 215 данных содержит информацию для однозначной идентификации соответствующего объекта. Например, зависящий от объекта набор 215 данных может быть связан с идентификатором объекта (в этом примере - с идентификатором пользователя), который однозначно идентифицирует конкретный объект зависящего от объекта набора 215 данных. Зависящий от объекта набор 215 данных также содержит информацию об объекте, собранную соответствующим интерактивным сервисом. В представленном примере зависящий от объекта набор 215 данных может содержать данные пользовательских взаимодействий о конкретном пользователе, собранные поисковой системой 120. Ниже со ссылкой на фиг. 3 более подробно описана информация, которая может храниться в качестве части зависящего от объекта набора 215 данных.[0102] It should be noted that the object-
[0103] Как описано выше, в дополнение к зависящим от объекта данным 210 система 150 базы данных также способна хранить зависящие от объекта проверочные данные 220. Для иллюстрации можно предположить, что проверочные объекты в данном примере представляют собой пользователей поисковой системы 120. Очевидно, что подобно виду объектов в зависящих от объекта данных 210, вид проверочных объектов может, среди прочего, зависеть от различных вариантов реализации настоящей технологии. Тем не менее, предполагается, что вид объектов в зависящих от объекта данных 210 может совпадать с видом объектов в зависящих от объекта данных 220.[0103] As described above, in addition to the object-
[0104] Зависящие от объекта данные 210 хранятся в системе 150 базы данных отдельно для каждого объекта или, как показано в не имеющем ограничительного характера примере, отдельно для каждого пользователя. Например, зависящие от объекта проверочные данные 220 содержат множество зависящих от объекта проверочных наборов данных (без числового обозначения). Множество зависящих от объекта проверочных наборов данных содержит зависящий от объекта проверочный набор 225 данных, который в представленном не имеющем ограничительного характера примере, где проверочные объекты соответствуют пользователям поисковой системы 120, также называется зависящим от пользователя проверочным набором данных.[0104] Object-
[0105] Следует отметить, что зависящий от объекта проверочный набор 225 данных содержит информацию для однозначной идентификации соответствующего объекта. Например, зависящий от объекта проверочный набор 225 данных может быть связан с идентификатором объекта (в этом примере - с идентификатором пользователя), который однозначно идентифицирует конкретный проверочный объект зависящего от объекта проверочного набора 225 данных. Зависящий от объекта проверочный набор 225 данных также содержит информацию о проверочном объекте, собранную соответствующим интерактивным сервисом. В представленном примере зависящий от объекта проверочный набор 225 данных может содержать данные пользовательских взаимодействий о конкретном пользователе, собранные поисковой системой 120.[0105] It should be noted that the object-specific
[0106] Тем не менее, в отличие от зависящего от объекта набора данных из зависящих от объекта данных 210, зависящий от объекта проверочный набор 225 данных дополнительно содержит указание на контрольный класс проверочного объекта. Как описано выше, система 150 базы данных может хранить данные разметки, указывающие на контрольные классы проверочных объектов. В представленном не имеющем ограничительного характера примере зависящий от объекта проверочный набор 225 данных (зависящий от пользователя проверочный набор данных) может содержать информацию о контрольном классе проверочного объекта (проверочного пользователя), например, о том, является или не является мошенником соответствующий проверочный пользователь поисковой системы 120.[0106] However, unlike the object-specific dataset of the object-
[0107] Очевидно, что не только вид объектов и проверочных объектов зависит, среди прочего, от различных вариантов реализации настоящей технологии, но и виды бинарных классов также зависят, среди прочего, от различных вариантов реализации настоящей технологии. Например, если проверочный объект представляет собой цифровой документ поисковой системы 120, то контрольный класс может указывать на то, является этот цифровой документ релевантным или нет. В другом примере, если проверочный объект представляет собой продукт платформы 130 для электронной торговли, то контрольный класс может указывать на то, является этот продукт контрафактным или нет. В еще одном примере, если проверочный объект представляет собой сообщение электронной почты платформы 140 электронной почты, то контрольный класс может указывать на то, является это сообщение электронной посты спамом или нет.[0107] Obviously, not only the kind of objects and check objects depends, among other things, on various implementations of the present technology, but the kinds of binary classes also depend, among other things, on various implementations of the present technology. For example, if the check object is a digital document of the
[0108] Как описано ниже, сервер 106 способен использовать зависящие от объекта данные 210 на этапе использования механизма 170 классификации, а зависящие от объекта проверочные данные 220 используются на этапе проверки обучения механизма 170 классификации для определения сочетания-кандидата зависящих от метрики порогов, подлежащего выбору в качестве целевого сочетания зависящих от метрики порогов. Можно сказать, что в некоторых вариантах осуществления настоящей технологии сервер 106 может (а) выполнять этап обучения множества алгоритмов MLA (множества вложенных метрик) путем использования зависящих от объекта проверочных данных 220, (б) выполнять этап проверки для выбора целевого сочетания зависящих от метрики порогов путем применения зависящих от объекта проверочных данных 220 и (в) выполнять этап использования механизма 170 классификации, содержащего обученное таким образом множество алгоритмов MLA и выбранное таким образом целевое сочетание зависящих от метрики порогов, для классификации одного или нескольких объектов из зависящих от объекта данных 210.[0108] As described below, the
[0109] Ниже более подробно описано выполнение сервером 106 одной итерации бинарной классификации (одной итерации этапа использования механизма 170 классификации) объекта из зависящих от объекта данных 210.[0109] The following describes in more detail the performance by the
[0110] На фиг. 3 (слева) дано представление 300 информационно-поисковой операции, выполняемой сервером 106 для объекта, подлежащего классификации как относящегося к первому классу или ко второму классу. Сервер 106 способен обращаться к системе 150 базы данных и получать информацию, связанную с цифровым объектом, подлежащим классификации. Например, сервер 106 может отправлять системе 150 базы данных запрос 302, содержащий указание на идентификатор объекта. В ответ сервер 106 может получать зависящий от объекта набор 310 данных.[0110] In FIG. 3 (left) is a
[0111] Зависящий от объекта набор 310 данных содержит информацию о соответствующем объекте, подлежащем классификации. В частности, зависящий от объекта набор 310 данных содержит указание на множество прошлых событий 312 объекта, связанных с соответствующим объектом, подлежащим классификации. Как описано выше, зависящие от объекта данные, такие как события объекта, могут собираться сервером 106 и сохраняться в системе 150 базы данных. Например, в не имеющем ограничительного характера примере, в котором объект представляет собой пользователя поисковой системы 120 (например, пользователя 101), прошлые события 312 объекта могут содержать события отправки запроса, события просмотра, события «кликов», события «длинных кликов» и т.д. Таким образом, можно сказать, что прошлые события объекта, связанные с объектом, могут включать в себя зависящие от объекта события различных видов.[0111] Dependent on the
[0112] Очевидно, что виды прошлых событий объекта, которые могут храниться в сочетании с объектом, среди прочего, зависят от вида интерактивного сервиса, к которому относится объект, от вида объекта и от конкретных вариантов реализации настоящей технологии. Тем не менее, следует отметить, что события объекта некоторых видов из числа прошлых событий 312 объекта могут быть взаимосвязаны особым образом. В частности, в по меньшей мере некоторых вариантах осуществления настоящей технологии предполагается, что события объекта некоторых видов могут иметь взаимосвязь друг с другом вида «вложенность».[0112] Obviously, the types of past events of an object that can be stored in combination with the object, among other things, depend on the type of interactive service to which the object belongs, on the type of object, and on specific implementations of the present technology. However, it should be noted that certain kinds of object events from
[0113] Для лучшей иллюстрации этого можно предположить, что прошлые события 312 объекта для пользователя поисковой системы 120 содержат события объекта первого вида и второго вида и что события объекта первого вида представляют собой отправки запроса, а события объекта второго вида соответствуют событиям выбора результатов поисковой системы («кликам»). Иными словами, некоторые события объекта из числа прошлых событий 312 объекта указывают на то, что пользователь (которым является объект в этом примере) отправил один или несколько запросов, а другие события объекта из числа прошлых событий 312 объекта указывают на то, что пользователь выбрал результаты поисковой системы, предоставленные в ответ на эти отправки запросов. В этом примере можно сказать, что события объекта второго вида, в известном смысле, вложены в события объекта первого вида, поскольку события объекта второго вида могут происходить, только если произошли события объекта первого вида, т.е. события объекта, указывающие на выбор результатов поисковой системы, могут происходить только после отправки пользователем соответствующих запросов.[0113] To better illustrate this, it can be assumed that
[0114] Также можно сказать, что события объекта второго вида вложены в события объекта первого вида, когда события объекта второго вида представляют собой подмножество событий объекта первого вида. Для лучшей иллюстрации этого дальнейшее описание приведено со ссылкой на представление 350 набора 360 событий объекта из числа прошлых событий 312 объекта. Можно предположить, что набор 360 событий объекта содержит «клики» на результатах поисковой системы. При этом также можно предположить, что некоторые из «кликов» пользователя на результатах поисковой системы представляют собой «длинные клики» на результатах поисковой системы. Например, некоторые выбранные пользователем результаты поисковой системы могли рассматриваться в течение значительного периода времени («длинные клики»).[0114] You can also say that the events of the second kind of object are nested in the events of the first kind of object, when the events of the second kind of object are a subset of the events of the first kind of object. To better illustrate this, the following description is given with reference to a
[0115] Например, набор 360 событий объекта содержит события 351, 352, 353, 354, 355, 356, 357, 358 объекта, указывающие на пользователя, выполняющего «клики» на результатах поисковой системы. В этом же примере можно предположить, что события 356, 357, 358 объекта указывают на пользователя, выполняющего «длинные клики» на результатах поисковой системы. В этом примере можно сказать, что набор 360 событий объекта (содержащий «клики» на результатах поисковой системы) содержит подмножество 370 событий объекта, содержащее «длинные клики» на результатах поисковой системы. В этом примере можно сказать, что события объекта второго вида («длинные клики»), в известном смысле, вложены в события объекта первого вида («клики»), поскольку события объекта второго вида представляют собой подмножество событий объекта первого вида.[0115] For example, object event set 360 contains
[0116] Таким образом, сервер 106 может выполнить информационно-поисковую операцию для получения зависящего от объекта набора 310 данных для объекта, содержащего прошлые события 312 объекта. Прошлые события 312 объекта содержат события объекта различных видов, при этом некоторые события объекта, известном смысле, имеют взаимосвязь друг с другом вида «вложенность», которая зависит от соответствующих видов событий объекта.[0116] Thus, the
[0117] Сервер 106 способен использовать зависящий от объекта набор 310 данных для объекта с целью выполнения его бинарной классификации. На фиг. 4 дано представление 400 процедуры бинарной классификации, выполняемой механизмом 170 классификации сервера 106. Как показано, сервер 106 способен вводить зависящий от объекта набор 310 данных в механизм 170 классификации.[0117] The
[0118] В общем случае механизм 170 классификации содержит множество 410 вложенных метрик, способных (а) получать в качестве входных данных по меньшей мере некоторые данные из зависящего от объекта набора 310 данных и (б) выдавать множество 440 прогнозов для цифрового объекта зависящего от объекта набора 310 данных.[0118] In general, the
[0119] Как более подробно описано ниже со ссылкой на фиг. 5, соответствующая метрика из множества 410 вложенных метрик может быть реализована сервером 106 в виде алгоритма MLA, способного получать подмножество данных из зависящего от объекта набора 310 данных, на основе которого эта метрика из множества 410 вложенных метрик способна формировать прогноз, указывающий на вероятность принадлежности к первому классу (или ко второму классу) цифрового объекта зависящего от объекта набора 310 данных.[0119] As described in more detail below with reference to FIG. 5, a corresponding metric of nested metrics set 410 may be implemented by
[0120] Например, первая вложенная метрика 412 может использовать подмножество 422 зависящего от объекта набора 310 данных с целью формирования для цифрового объекта первого прогноза 432, указывающего на вероятность принадлежности этого цифрового объекта к первому классу. В том же примере вторая вложенная метрика 414 может использовать подмножество 424 зависящего от объекта набора 310 данных с целью формирования для цифрового объекта второго прогноза 434, указывающего на вероятность принадлежности этого цифрового объекта к первому классу. Ниже со ссылкой на фиг. 5 более подробно описаны обучение множества 410 вложенных метрик формированию прогнозов и данные из зависящего от объекта набора 310 данных, включаемые в состав подмножества 422 и подмножества 424.[0120] For example, the first
[0121] Как описано выше, механизм 170 классификации способен сравнивать множество 440 прогнозов с целевым сочетанием 450 зависящих от метрики порогов с целью определения прогнозируемого класса 460 (представляющего собой первый класс или второй класс) для соответствующего цифрового объекта. Например, целевое сочетание 450 зависящих от метрики порогов содержит первый целевой зависящий от метрики порог 452 (зависящий от первой вложенной метрики 412) и второй целевой зависящий от метрики порог 454 (зависящий от второй вложенной метрики 414).[0121] As described above, the
[0122] Следует отметить, что если по меньшей мере один прогноз из множества 440 прогнозов превышает соответствующий порог из целевого сочетания 450 зависящих от метрики порогов, то сервер 106 может определять, что соответствующий объект относится к первому классу. Иными словами, в этом случае сервер 106 определяет, что прогнозируемый класс 460 для цифрового объекта соответствует первому классу. Если прогноз из множества 440 прогнозов, превышающий соответствующий порог из целевого сочетания 450 зависящих от метрики порогов, отсутствует, то сервер 106 может определять, что соответствующий объект относится ко второму классу. Иными словами, в этом случае сервер 106 определяет, что прогнозируемый класс 460 для цифрового объекта соответствует второму классу.[0122] It should be noted that if at least one prediction from the prediction set 440 exceeds the corresponding threshold from the target metric-
[0123] В по меньшей мере некоторых вариантах осуществления настоящей технологии можно сказать, что механизм 170 классификации может содержать один или несколько компьютерных алгоритмов, которые далее называются пороговой логикой и способны выполнять одну или несколько логических операций на основе целевого сочетания 450 зависящих от метрики порогов и множества 440 прогнозов с целью определения прогнозируемого класса 460 цифрового объекта.[0123] In at least some embodiments of the present technology, it can be said that the
[0124] Разработчики настоящей технологии установили, что использование одного сочетания зависящих от метрики порогов вместо другого сочетания зависящих от метрики порогов в качестве части пороговой логики механизма 170 классификации может влиять на эффективность классификации механизмом 170 классификации. Например, эффективность классификации механизмом 170 классификации может быть измерена с использованием множества параметров, включая погрешность, точность, полноту и т.д. В по меньшей мере некоторых вариантах осуществления настоящей технологии разработчики настоящей технологии разработали способы и серверы для выбора из множества сочетаний-кандидатов зависящих от метрики порогов такого целевого сочетания 450 зависящих от метрики порогов, чтобы каждая метрика из множества 410 вложенных метрик имела (а) значение точности, превышающее минимальное заранее заданное значение точности, и/или (б) значение полноты, превышающее минимальное заранее заданное значение полноты.[0124] The developers of the present technology have found that the use of one combination of metric-dependent thresholds instead of another combination of metric-dependent thresholds as part of the threshold logic of the
[0125] Ниже со ссылкой на фиг. 6 более подробно описано определение сервером 106 целевого сочетания 450 зависящих от метрики порогов. При этом сначала описано обучение множества 410 вложенных метрик прогнозированию на основе зависящего от объекта набора 310 данных.[0125] Referring to FIG. 6 describes in more detail the determination by the
[0126] Как описано выше, сервер 106 способен реализовывать множество 410 вложенных метрик в виде множества алгоритмов MLA. В общем случае алгоритм MLA сначала «строится» (или обучается) с использованием обучающих данных и обучающих целей. Во время итерации обучения алгоритм MLA получает на вход обучающие входные данные и формирует соответствующий прогноз. Затем сервер 106, в известном смысле, способен корректировать алгоритм MLA на основе сравнения прогноза с соответствующей обучающей целью для обучающих входных данных. Например, корректировка может выполняться сервером 106, использующим один или несколько способов машинного обучения, таких как метод обратного распространения и т.п. После большого количества итераций обучения алгоритм MLA изменяется так, чтобы формировать прогнозы на основе введенных данных, близкие к соответствующим обучающим целям.[0126] As described above, the
[0127] Вкратце, реализация сервером 106 метрики из множества 410 вложенных метрик может быть разделена на два основных этапа: этап обучения и этап использования. Сначала алгоритм MLA обучается на этапе обучения. Затем построенный на основе обучающих данных алгоритм MLA применяется механизмом 170 классификации с использованием данных этапа использования на этапе использования (в этом примере этап использования алгоритма MLA выполняется во время этапа использования механизма 170 классификации).[0127] Briefly, the implementation by the
[0128] На фиг. 5 приведены представление 500 одной итерации обучения первого алгоритма MLA (первой вложенной метрики 412) и представление 550 одной итерации обучения второго алгоритма MLA (второй вложенной метрики 414). Ниже описана одна итерация обучения первого алгоритма MLA и второго алгоритма MLA.[0128] In FIG. 5 shows a
[0129] Сервер 106 способен формировать обучающий набор 502 для одной итерации обучения первой вложенной метрики 412. Сервер 106 способен формировать обучающий набор 502 на основе зависящего от объекта проверочного набора данных, хранящегося в системе 150 базы данных. В представленном не имеющем ограничительного характера примере можно предположить, что сервер 106 формирует обучающий набор 502 на основе зависящего от объекта проверочного набора 225 данных.[0129] The
[0130] Обучающий набор 502 содержит цель 504, указывающую на контрольный класс проверочного объекта. Обучающий набор 502 также содержит зависящие от объекта входные данные 506, представляющие по меньшей мере некоторые события объекта, связанные с зависящим от объекта проверочным набором 225 данных.[0130] The training set 502 contains a
[0131] Следует отметить, что вид связанных с зависящим от объекта проверочным набором 225 данных событий объекта, которые подлежат использованию в качестве зависящих от объекта входных данных 506, может быть заранее задан оператором сервера 106. Например, оператор может задать, что первая вложенная метрика 412 должна прогнозировать вероятность принадлежности объекта к первому классу на основе событий объекта некоторого вида. В результате сервер 106 может определять подмножество событий объекта этого вида из зависящего от объекта проверочного набора 225 данных.[0131] It should be noted that the type of object events associated with the object-
[0132] Можно предположить, что события объекта некоторого вида, подлежащие использованию в качестве зависящих от объекта входных данных 506, представляют собой «клики». Таким образом, сервер 106 может определять из зависящего от объекта проверочного набора 225 данных подмножество событий объекта, представляющих собой «клики», и использовать это подмножество в качестве зависящих от объекта входных данных 506. После получения зависящих от объекта входных данных 506 первый алгоритм MLA (обучаемая первая вложенная метрика 412) способен формировать прогноз 508. Прогноз 508 указывает на вероятность принадлежности проверочного объекта к первому классу и основывается на событиях объекта некоторого вида, связанных с первым алгоритмом MLA (например, на событиях объекта, представляющих собой «клики»). Затем сервер 106 способен формировать результат 510 сравнения, указывающий на различие между целью 504 и прогнозом 508.[0132] It can be assumed that object events of some kind to be used as object-
[0133] Например, если контрольный класс проверочного объекта представляет собой первый класс, то цель 504 может соответствовать «1». В том же примере, если контрольный класс проверочного объекта представляет собой второй класс, то цель 504 может соответствовать «0». В этом примере прогноз 508 может быть равен значению между 0 до 1. Таким образом, можно сказать, что результат 510 сравнения может указывать на сходство или несходство прогноза 508 и цели 504. Сервер 106 использует результат 510 сравнения для обучения или корректировки первого алгоритма MLA так, чтобы первый алгоритм MLA формировал прогнозы, максимально близкие к соответствующим целям.[0133] For example, if the check object's control class is the first class, then target 504 may correspond to "1". In the same example, if the check object's control class is the second class, then target 504 may correspond to "0". In this example,
[0134] После большого количества итераций обучения, выполненных подобно одной итерации обучения первого алгоритма MLA, представленной на фиг. 5, первая вложенная метрика 412 способна использовать события объекта соответствующего вида, связанные с первой вложенной метрикой 412, (например, «клики») для формирования прогнозов, указывающих на вероятность принадлежности соответствующих объектов к первому классу.[0134] After a large number of training iterations performed like one training iteration of the first MLA algorithm shown in FIG. 5, the first
[0135] В по меньшей мере некоторых вариантах осуществления настоящей технологии вложенная метрика может использовать входные данные, содержащие события объекта нескольких соответствующих видов, без выхода за границы настоящей технологии.[0135] In at least some embodiments of the present technology, a nested metric can use input data containing object events of several appropriate kinds without departing from the boundaries of the present technology.
[0136] Сервер 106 способен формировать обучающий набор 552 для одной итерации обучения второй вложенной метрики 414. Сервер 106 способен формировать обучающий набор 552 на основе зависящего от объекта проверочного набора данных, хранящегося в системе 150 базы данных. В представленном не имеющем ограничительного характера примере можно предположить, что сервер 106 формирует обучающий набор 552 на основе зависящего от объекта проверочного набора 225 данных. Тем не менее, как описано ниже, обучающие наборы для обучения первой вложенной метрики 412 и второй вложенной метрики 414 могут быть определены или не определены на основе одних и тех же зависящих от объекта проверочных наборов данных.[0136] The
[0137] Обучающий набор 552 содержит цель 554, указывающую на контрольный класс проверочного объекта. Обучающий набор 552 также содержит зависящие от объекта входные данные 556, представляющие по меньшей мере некоторые события объекта, связанные с зависящим от объекта проверочным набором 225 данных.[0137] Training set 552 contains a
[0138] Следует отметить, что вид связанных с зависящим от объекта проверочным набором 225 данных событий объекта, которые подлежат использованию в качестве зависящих от объекта входных данных 556, может быть заранее задан оператором сервера 106. Например, оператор может задать, что вторая вложенная метрика 414 должна прогнозировать вероятность принадлежности объекта к первому классу на основе событий объекта другого вида. В результате сервер 106 может определять подмножество событий объекта другого вида из зависящего от объекта проверочного набора 225 данных.[0138] It should be noted that the type of object events associated with the object-specific
[0139] Тем не менее, важно отметить, что события объекта некоторого вида, подлежащие использованию для обучения первой вложенной метрики 412, особым образом взаимосвязаны с событиями объекта другого вида, подлежащими использованию для обучения второй вложенной метрики 414, т.е. множество 410 вложенных метрик использует вложенные события объекта. Например, если события объекта некоторого вида, используемые первой вложенной метрикой 412, представляют собой «клики», то события объекта другого вида, подлежащие использованию второй вложенной метрикой 414, вложены в события объекта вида «клики». Таким образом, метрики из множества вложенных метрик можно назвать вложенными, поскольку они основываются на видах событий объекта, между которыми существуют взаимосвязи вида «вложенность».[0139] However, it is important to note that some kind of object events to be used to train the first
[0140] Таким образом, можно предположить, что события объекта другого вида, используемые в качестве зависящих от объекта входных данных 556, представляют собой «длинные клики». Следовательно, сервер 106 может определять из зависящего от объекта проверочного набора 225 данных другое подмножество событий объекта, представляющих собой «длинные клики», и использовать это другое подмножество в качестве зависящих от объекта входных данных 556. После получения зависящих от объекта входных данных 556 второй алгоритм MLA (обучаемая вторая вложенная метрика 414) способен формировать прогноз 558. Прогноз 558 указывает на вероятность принадлежности проверочного объекта к первому классу и основывается на событиях объекта другого вида, связанных со вторым алгоритмом MLA (например, на событиях объекта, представляющих собой «длинные клики»). Затем сервер 106 способен формировать результат 560 сравнения, указывающий на различие между целью 554 и прогнозом 558.[0140] Thus, it can be assumed that other kind of object events used as object
[0141] Можно сказать, что результат 560 сравнения может указывать на сходство или несходство прогноза 558 и цели 554. Сервер 106 использует результат 560 сравнения для обучения или корректировки второго алгоритма MLA так, чтобы второй алгоритм MLA формировал прогнозы, максимально близкие к соответствующим целям.[0141] We can say that the
[0142] После большого количества итераций обучения, выполненных подобно одной итерации обучения второго алгоритма MLA, представленной на фиг. 5, вторая вложенная метрика 414 способна использовать события объекта соответствующего вида, связанные со второй вложенной метрикой 414, например, «длинные клики», для формирования прогнозов, указывающих на вероятность принадлежности соответствующих объектов к первому классу.[0142] After a large number of training iterations performed like one training iteration of the second MLA algorithm shown in FIG. 5, the second
[0143] Как описано выше, обучающие наборы для обучения первой вложенной метрики 412 и второй вложенной метрики 414 могут быть определены или не определены на основе одних и тех же зависящих от объекта проверочных наборов данных. В представленном на фиг. 5 не имеющем ограничительного характера примере можно предположить, что зависящий от объекта проверочный набор 224 данных для проверочного объекта содержит события «кликов» и что среди этих событий «кликов» присутствуют события «длинных кликов». Тем не менее, не каждый проверочный объект может иметь события, соответствующие вложенным событиям множества 410 вложенных метрик.[0143] As described above, the training sets for training the first
[0144] В некоторых вариантах осуществления настоящей технологии первая метрика и вторая метрика из множества вложенных метрик могут быть обучены независимо друг от друга. В некоторых вариантах осуществления изобретения первая метрика и вторая метрика из множества вложенных метрик могут быть обучены по отдельности сервером 106.[0144] In some embodiments of the present technology, the first metric and the second metric of a plurality of nested metrics can be trained independently of each other. In some embodiments, the first metric and the second metric of a plurality of nested metrics may be trained separately by
[0145] В одном примере зависящий от объекта проверочный набор 225 данных может содержать события «кликов», но не содержать событий «длинных кликов». В этом примере зависящий от объекта проверочный набор 225 данных может быть использован сервером 106 для обучения первой вложенной метрики 412, поскольку он содержит события объекта соответствующего вида, связанные с первой вложенной метрикой 412 (например, вида «клик»). Тем не менее, сервер 106 не может использовать зависящий от объекта проверочный набор 225 данных для обучения второй вложенной метрики 414, поскольку он не содержит событий объекта соответствующего вида, связанных со второй вложенной метрикой 414 (например, вида «длинный клик»). В таком примере сервер 106 может использовать для обучения второй вложенной метрики 414 другой зависящий от объекта проверочный набор данных.[0145] In one example, the object-specific
[0146] Тем не менее, следует отметить, что если сервер 106 определил, что зависящий от объекта проверочный набор данных содержит события объекта, связанные со второй вложенной метрикой 414, то сервер 106 также может определить, что этот зависящий от объекта проверочный набор данных содержит события объекта, связанные с первой вложенной метрикой 412, поскольку между событиями объекта видов, используемых соответствующими метриками из множества 410 вложенных метрик, существует взаимосвязь вида «вложенность».[0146] However, it should be noted that if the
[0147] Как описано выше, сервер 106 способен выбирать целевое сочетание 450 зависящих от метрики порогов из множества сочетаний-кандидатов зависящих от метрики порогов. На фиг. 6 дано представление 600 итеративного процесса проверки, выполняемого сервером 106 для выбора целевого сочетания 450 зависящих от метрики порогов.[0147] As described above, the
[0148] Предполагается, что сервер 106 может получать зависящие от объекта проверочные данные 220, содержащие множество зависящих от объекта проверочных наборов данных для выполнения итеративного процесса проверки.[0148] It is contemplated that the
[0149] Сервер 106 может формировать первые прогнозируемые данные 610 и вторые прогнозируемые данные 620 на основе зависящих от объекта проверочных данных 220 и множества 410 вложенных метрик. Например, как описано выше, сервер 106 может вводить по меньшей мере подмножество из зависящего от объекта проверочного набора 225 данных в первую вложенную метрику 412 и по меньшей мере другое подмножество из зависящего от объекта проверочного набора 225 данных во вторую вложенную метрику 414 с целью формирования первого прогноза 612 и второго прогноза 614, соответственно, для проверочного объекта (и для связанных с ним событий), связанного с зависящим от объекта проверочным набором данных 225.[0149] The
[0150] Сервер 106 может подобным образом использовать (а) первую вложенную метрику 412 для формирования множества 622 первых прогнозов на основе множества зависящих от объекта проверочных наборов данных и (б) вторую вложенную метрику 414 для формирования множества 624 вторых прогнозов на основе множества зависящих от объекта проверочных наборов данных. Предполагается, что лишь некоторые метрики из множества 410 вложенных метрик могут быть использованы для проверочного объекта. Например, сервер 106 может использовать те метрики из множества 410 вложенных метрик, для которых соответствующий зависящий от объекта проверочный набор данных содержит ненулевое подмножество объектов соответствующих видов.[0150] The
[0151] Можно сказать, что сервер 106 может применять множество 410 вложенных метрик в отношении множества зависящих от объекта проверочных наборов данных и формировать таким образом множество 625 прогнозов (содержащее первые прогнозы 622 и вторые прогнозы 624), указывающих на вероятность принадлежности проверочного объекта (и связанных с ним событий ) к первому классу или ко второму классу.[0151] We can say that the
[0152] На фиг. 6 также приведены представление 602 первой итерации итеративного процесса проверки и представление 604 второй итерации итеративного процесса проверки.[0152] In FIG. 6 also shows a
[0153] Во время первой итерации сервер 106 может использовать первое сочетание-кандидат 650 зависящих от метрики порогов для сравнения со множеством 625 прогнозов. В частности, во время первой итерации сервер 106 может использовать первый зависящий от метрики порог 630 из первого сочетания-кандидата 650 зависящих от метрики порогов для сравнения с первыми прогнозами 622 и второй зависящий от метрики порог 640 из первого сочетания-кандидата 650 зависящих от метрики порогов для сравнения со вторыми прогнозами 624.[0153] During the first iteration, the
[0154] В некоторых вариантах осуществления изобретения предполагается, что первое сочетание-кандидат 650 зависящих от метрики порогов может быть инициализировано сервером 106. Например, сервер 106 может использовать заранее заданное первоначальное сочетание-кандидат зависящих от метрики порогов для выполнения первой итерации. Как описано ниже, заранее заданное первоначальное сочетание-кандидат зависящих от метрики порогов может быть использовано сервером для определения множества сочетаний-кандидатов зависящих от метрики порогов путем корректировки одного или нескольких зависящих от метрики порогов в этом сочетании-кандидате для формирования нового сочетания-кандидата.[0154] In some embodiments, it is contemplated that the first candidate metric
[0155] Например, сервер 106 может сравнивать первый прогноз 612 для проверочного объекта, связанного с зависящим от объекта проверочным набором 225 данных, с первым зависящим от метрики порогом 630 и в результате определять прогнозируемый класс 672. Например, если первый прогноз 612 больше первого зависящего от метрики порога 630, то сервер 106 может определять, что прогнозируемый класс 672 указывает на первый класс. В противном случае, если первый прогноз 612 меньше первого зависящего от метрики порога 630, то сервер 106 может определять, что прогнозируемый класс 672 указывает на второй класс. Сервер 106 может подобным образом сравнивать каждый прогноз из множества 622 первых прогнозов для формирования первого множества 674 прогнозируемых классов. Можно сказать, что первые данные 670 прогнозируемых классов формируются на основе сравнения первых прогнозируемых данных 610 с первым зависящим от метрики порогом 630.[0155] For example, the
[0156] В том же примере сервер 106 может сравнивать второй прогноз 614 для проверочного объекта, связанного с зависящим от объекта проверочным набором 225 данных, со вторым зависящим от метрики порогом 640 и в результате определять прогнозируемый класс 682. Сервер 106 может подобным образом сравнивать каждый прогноз из множества 624 вторых прогнозов для формирования второго множества 684 прогнозируемых классов. Можно сказать, что вторые данные 680 прогнозируемых классов формируются на основе сравнения вторых прогнозируемых данных 620 со вторым зависящим от метрики порогом 640.[0156] In the same example,
[0157] Сервер 106 может сравнивать первые данные 670 прогнозируемых классов и вторые данные 680 прогнозируемых классов с данными 690 разметки из зависящих от объекта проверочных данных 220.[0157] The
[0158] С одной стороны, данные 690 разметки содержат указания на контрольные классы проверочных объектов. С другой стороны, прогнозируемые классы из первого множества 674 прогнозируемых классов (предсказанные с использованием первой вложенной метрики 412) и из второго множества 684 прогнозируемых классов связаны с соответствующим проверочным объектом.[0158] On the one hand,
[0159] Таким образом, сервер 106 может сравнивать первые данные 670 прогнозируемых классов и вторые данные 680 прогнозируемых классов с данными 690 разметки для оценки эффективности классификации первой вложенной метрики 412 и второй вложенной метрики 414, используемых совместно в сочетании с первым зависящим от метрики порогом 630 и вторым зависящим от метрики порогом 640 (первое сочетание-кандидат 650 зависящих от метрики порогов). Например, для первой итерации сервер 106 может определять первый параметр 692 точности и первый параметр 694 полноты для первой вложенной метрики 412, а также другой первый параметр 696 точности и другой первый параметр 698 полноты для второй вложенной метрики 414.[0159] Thus, the
[0160] В общем случае параметр точности (также называемый прогностической ценностью положительного результата) представляет собой долю релевантных экземпляров среди полученных экземпляров, а параметр полноты (также называемый чувствительностью) представляет собой долю фактически полученных экземпляров из общего количества релевантных экземпляров. Иными словами, параметр полноты указывает на то, сколько релевантных экземпляров было получено метрикой, а параметр точности указывает, сколько полученных экземпляров было фактически правильно классифицировано.[0160] In general, the accuracy parameter (also called positive predictive value) is the proportion of relevant instances among the received instances, and the recall parameter (also called sensitivity) is the proportion of actually received instances out of the total number of relevant instances. In other words, the completeness parameter indicates how many relevant instances were received by the metric, and the accuracy parameter indicates how many received instances were actually correctly classified.
[0161] Таким образом, можно сказать, что сервер 106 во время первой итерации может формировать первые параметры точности (первый параметр 692 точности и другой первый параметр 696 точности) и первые параметры полноты (первый параметр 694 полноты и другой первый параметр 698 полноты) для множества 410 вложенных метрик, используемых вместе с первым сочетанием 650 зависящих от метрики порогов, путем сравнения контрольных классов из зависящих от объекта проверочных данных 220 с соответствующими прогнозируемыми классами проверочных объектов.[0161] Thus, it can be said that the
[0162] Следует отметить, что сервер 106 может сохранять указание на первое сочетание-кандидат 650 зависящих от метрики порогов в сочетании с первым параметром 692 точности и первым параметром 694 полноты для первой вложенной метрики 412, а также в сочетании с другим первым параметром 696 точности и другим первым параметром 698 полноты для второй вложенной метрики 414.[0162] It should be noted that the
[0163] Во время второй итерации сервер 106 может использовать второе сочетание-кандидат 660 зависящих от метрики порогов для сравнения со множеством 625 прогнозов.[0163] During the second iteration, the
[0164] Как описано выше, предполагается, что сервер 106 может определять второе сочетание-кандидат 660 зависящих от метрики порогов на основе первого сочетания-кандидата 650 зависящих от метрики порогов. В одном варианте осуществления изобретения сервер 106 может корректировать один порог из первого сочетания-кандидата 650, сохраняя оставшуюся часть первого сочетания-кандидата 650 без изменений.[0164] As described above, it is contemplated that the
[0165] Таким образом, сервер 106 может определять второе сочетание-кандидат 660 путем корректировки второго зависящего от метрики порога 640 из первого сочетания-кандидата 650. В этом примере второе сочетание-кандидат 660 содержит первый зависящий от метрики порог 630 и скорректированный второй зависящий от метрики порог 642 (на основе второго зависящего от метрики порога 640).[0165] Thus, the
[0166] В по меньшей мере некоторых вариантах осуществления настоящей технологии сервер 106 может применять алгоритм корректировки, способный управлять направлением (например, увеличением или уменьшением) и абсолютным значением для корректировки зависящего от метрики порога при переходе от одной итерации к другой. Как описано ниже, в одном варианте осуществления изобретения текущее значение корректировки, на которое зависящий от метрики порог может быть скорректирован для следующей итерации, может зависеть от предыдущего значения корректировки, на которое этот зависящий от метрики порог был скорректирован для предыдущей итерации.[0166] In at least some embodiments of the present technology,
[0167] Во время второй итерации сервер 106 может использовать первый зависящий от метрики порог 630 из второго сочетания-кандидата 660 для сравнения с первыми прогнозами 622 и скорректированный второй зависящий от метрики порог 642 из второго сочетания-кандидата 660 для сравнения со вторыми прогнозами 624.[0167] During the second iteration, the
[0168] Например, сервер 106 может сравнивать первый прогноз 612 для проверочного объекта, связанного с зависящим от объекта проверочным набором 225 данных, с первым зависящим от метрики порогом 630 и в результате определять прогнозируемый класс 872. Например, если первый прогноз 612 больше первого зависящего от метрики порога 630, то сервер 106 может определять, что прогнозируемый класс 872 указывает на первый класс. В противном случае, если первый прогноз 612 меньше первого зависящего от метрики порога 630, то сервер 106 может определять, что прогнозируемый класс 872 указывает на второй класс. Сервер 106 может подобным образом сравнивать каждый прогноз из множества 622 первых прогнозов для формирования третьего множества 874 прогнозируемых классов. Можно сказать, что третьи данные 870 прогнозируемых классов формируются на основе сравнения первых прогнозируемых данных 610 с первым зависящим от метрики порогом 630.[0168] For example, the
[0169] В том же примере сервер 106 может сравнивать второй прогноз 614 для проверочного объекта, связанного с зависящим от объекта проверочным набором 225 данных, со скорректированным вторым зависящим от метрики порогом 642 и в результате определять прогнозируемый класс 882. Сервер 106 может подобным образом сравнивать каждый прогноз из множества 624 вторых прогнозов для формирования четвертого множества 884 прогнозируемых классов. Можно сказать, что четвертые данные 880 прогнозируемых классов формируются на основе сравнения вторых прогнозируемых данных 620 со скорректированным вторым зависящим от метрики порогом 642.[0169] In the same example, the
[0170] Сервер 106 может сравнивать третьи данные 870 прогнозируемых классов и четвертые данные 880 прогнозируемых классов с данными 690 разметки из зависящих от объекта проверочных данных 220. Таким образом, сервер 106 может сравнивать третьи данные 870 прогнозируемых классов и четвертые данные 880 прогнозируемых классов с данными 690 разметки для оценки эффективности классификации первой вложенной метрики 412 и второй вложенной метрики 414, используемых в сочетании с первым зависящим от метрики порогом 630 и скорректированным вторым зависящим от метрики порогом 642, соответственно. Например, сервер 106 может определять второй параметр 892 точности и второй параметр 894 полноты для первой вложенной метрики 412, а также другой второй параметр 896 точности и другой второй параметр 898 полноты для второй вложенной метрики 414 в случае использования со вторым сочетанием-кандидатом 660.[0170] The
[0171] Таким образом, можно сказать, что сервер 106 во время второй итерации может формировать вторые параметры точности (второй параметр 892 точности и другой второй параметр 896 точности) и вторые параметры полноты (второй параметр 894 полноты и другой второй параметр 898 полноты) для множества 410 вложенных метрик путем сравнения контрольных классов из зависящих от объекта проверочных данных 220 с прогнозируемыми классами проверочных объектов.[0171] Thus, it can be said that the
[0172] Следует отметить, что сервер 106 может сохранять указание на второе сочетание-кандидат 660 зависящих от метрики порогов в сочетании со вторым параметром 892 точности и вторым параметром 894 полноты для первой вложенной метрики 412, а также в сочетании с другим вторым параметром 896 точности и другим вторым параметром 898 полноты для второй вложенной метрики 414.[0172] It should be noted that the
[0173] Сервер 106 может выполнять большое количество итераций подобно тому, как сервер 106 выполняет первую и вторую итерации. В некоторых вариантах осуществления изобретения сервер 106 может выполнять итерации итеративного процесса проверки до достижения критерия останова. Например, сервер 106 может продолжать итеративный процесс проверки до тех пор, пока один или несколько параметров точности и/или один или несколько параметров полноты для обучающей итерации не превысят один или несколько заранее заданных порогов, как описано ниже.[0173] The
[0174] Как описано выше, предполагается, что сервер 106 может выбирать направление корректировки зависящего от метрики порога из сочетания-кандидата для формирования нового (скорректированного) сочетания-кандидата в зависимости от предыдущего направления корректировки этого зависящего от метрики порога.[0174] As described above, it is contemplated that the
[0175] Например, можно предположить, что во время третьей итерации сервер 106 использует второе сочетание-кандидат 660 для формирования нового (третьего) сочетания-кандидата. Сервер 106 может сохранить без изменений скорректированный второй зависящий от метрики порог 642 в третьем сочетании-кандидате и использовать скорректированный первый зависящий от метрики порог вместо первого зависящего от метрики порога 630. Иными словами, третье сочетание-кандидат может содержать скорректированный (новый) первый зависящий от метрики порог и скорректированный второй зависящий от метрики порог 642. Сервер 106 может выполнять третью итерацию итеративного процесса проверки с использованием этого третьего сочетания-кандидата подобно описанной выше первой и/или второй итерации.[0175] For example, it can be assumed that during the third iteration, the
[0176] В том же примере, когда сервер 106 формирует новое (четвертое) сочетание-кандидат для четвертой итерации, сервер 106 может определить, что следует сохранить без изменений скорректированный первый зависящий от метрики порог из третьего сочетания-кандидата и скорректировать скорректированный второй зависящий от метрики порог 642. С этой целью в некоторых вариантах осуществления изобретения сервер 106 может осуществлять доступ к информации, указывающей на предыдущую корректировку зависящего от метрики порога для второй вложенной метрики 414. Например, сервер 106 может получать предыдущее значение, на которое сервер 106 ранее скорректировал второй зависящий от метрики порог 640, для формирования скорректированного второго зависящего от метрики порога 642. Предыдущее значение может иметь знак (направление корректировки) и модуль (абсолютное значение корректировки).[0176] In the same example, when
[0177] Предполагается, что сервер 106 может определять новое значение, на которое сервер 106 должен скорректировать ранее скорректированный второй зависящий от метрики порог 642 для формирования повторно скорректированного второго зависящего от метрики порога в четвертом сочетании-кандидате, путем определения значения, которое имеет (а) знак, отличающийся от знака предыдущего значения (другое направление корректировки), и (б) меньший модуль (меньше абсолютное значение корректировки). Затем сервер 106 может выполнять четвертую итерацию итеративного процесса проверки с использованием этого четвертого сочетания-кандидата, содержащего скорректированный первый зависящий от метрики порог и повторно скорректированный второй зависящий от метрики порог.[0177] It is contemplated that
[0178] Также предполагается, что сервер 106 может выбирать сочетание-кандидат из множества сочетаний-кандидатов зависящих от метрики порогов (связанных с соответствующими итерациями итеративного процесса проверки) путем сравнения параметров точности и полноты с соответствующими порогами параметров. Предполагается, что пороги параметров могут содержать заранее заданный порог точности и/или заранее заданный порог полноты (например, заданные оператором интерактивного сервиса).[0178] It is also contemplated that
[0179] В одном варианте осуществления изобретения сервер 106 может использовать заранее заданный порог точности, указывающий на минимальный параметр точности, который оператор считает подходящим для выполнения бинарной классификации объектов. В этом варианте осуществления изобретения для первой итерации сервер 106 может сравнивать первый параметр 692 точности и другой первый параметр 696 точности с заранее заданным порогом точности. Если первый параметр 692 точности и другой первый параметр 696 точности больше заранее заданного порога точности, то первое сочетание-кандидат 650 зависящих от метрики порогов сохраняется для последующей обработки. Если первый параметр 692 точности и/или другой первый параметр 696 точности меньше заранее заданного порога точности, то первое сочетание-кандидат 650 зависящих от метрики порогов исключается из последующей обработки. В этом варианте осуществления изобретения для второй итерации сервер 106 может сравнивать второй параметр 892 точности и другой второй параметр 896 точности с заранее заданным порогом точности. Если второй параметр 892 точности и другой второй параметр 896 точности больше заранее заданного порога точности, то второе сочетание-кандидат 660 зависящих от метрики порогов сохраняется для последующей обработки. Если второй параметр 892 точности и/или другой второй параметр 896 точности меньше заранее заданного порога точности, то второе сочетание-кандидат 660 зависящих от метрики порогов исключается из последующей обработки. В этом варианте осуществления изобретения сервер 106 может выбирать сочетание-кандидат из числа сохраненных сочетаний-кандидатов, связанное с наибольшими параметрами полноты из числа параметров полноты других сохраненных сочетаний-кандидатов, в качестве целевого сочетания зависящих от метрики порогов.[0179] In one embodiment,
[0180] Дополнительно или в качестве альтернативы сервер 106 может определять сочетание-кандидат из множества сочетаний-кандидатов, которое должно быть сохранено, на основе заранее заданного порога полноты (минимальный параметр полноты, который оператор считает подходящим). Затем сервер 106 может выбрать сочетание-кандидат из числа сохраненных сочетаний-кандидатов, связанное с наибольшими параметрами точности из числа параметров точности других сохраненных сочетаний-кандидатов, в качестве целевого сочетания.[0180] Additionally or alternatively,
[0181] На фиг. 7 представлена блок-схема способа 700 согласно по меньшей мере некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии. Ниже более подробно описаны различные шаги способа 700 определения целевого сочетания зависящих от метрики порогов, подлежащих использованию со множеством вложенных метрик для выполнения бинарной классификации цифрового объекта.[0181] In FIG. 7 is a flow diagram of a
Шаг 702: получение множества зависящих от объекта проверочных наборов данных.Step 702: Obtaining a plurality of object-specific test sets.
[0182] Способ 700 начинается с шага 702, на котором сервер 106 может получать множество зависящих от объекта проверочных наборов данных. Например, сервер 106 может получать зависящие от объекта проверочные данные 220, содержащие множество зависящих от объекта проверочных наборов данных. Набор из множества зависящих от объекта проверочных наборов данных содержит указание на множество прошлых событий объекта, связанных с проверочным объектом, и контрольный класс проверочного объекта, представляющий собой первый класс или второй класс.[0182] The
[0183] В некоторых вариантах осуществления изобретения объект может представлять собой сообщение электронной почты, при этом первый класс соответствует спаму, а второй класс соответствует отсутствию спама. В качестве альтернативы, объект может представлять собой пользователя платформы электронной торговли, при этом первый класс соответствует мошенничеству, а второй класс соответствует отсутствию мошенничества. В некоторых случаях объект может представлять собой документ, при этом первый класс соответствует релевантности, а второй класс соответствует нерелевантности.[0183] In some embodiments, the object may be an email message, with the first class corresponding to spam and the second class corresponding to no spam. Alternatively, the entity may represent an e-commerce platform user, with the first class corresponding to fraud and the second class corresponding to no fraud. In some cases, the object may be a document, with the first class corresponding to relevance and the second class corresponding to irrelevance.
Шаг 704: применение множества вложенных метрик в отношении множества зависящих от объекта проверочных наборов данных.Step 704: Applying a plurality of nested metrics to a plurality of object-specific test sets.
[0184] Способ 700 продолжается на шаге 704, на котором сервер 106 может применять множество 410 вложенных метрик в отношении множества зависящих от объекта проверочных наборов данных и формировать таким образом множество 625 прогнозов. Прогноз указывает на вероятность принадлежности проверочного объекта к первому классу или ко второму классу.[0184] The
[0185] В некоторых вариантах осуществления изобретения первая метрика из множества вложенных метрик может основываться на событиях объекта первого вида, а вторая метрика из множества вложенных метрик может основываться на событиях объекта второго вида, при этом события объекта второго вида происходят, только если произошли события объекта первого вида. В некоторых вариантах осуществления изобретения события объекта второго вида могут представлять собой подмножество событий объекта первого вида.[0185] In some embodiments of the invention, the first metric of the set of nested metrics may be based on the events of the first type of object, and the second metric of the set of nested metrics may be based on the events of the second type of object, while the events of the second type object occur only if the object events occurred first kind. In some embodiments of the invention, the events of the second kind of object may be a subset of the events of the first kind of object.
Шаг 706: сравнение во время первой итерации множества прогнозов с соответствующими порогами из первого сочетания зависящих от метрики порогов для определения прогнозируемых классов проверочных объектов для первой итерации.Step 706: comparing, during the first iteration, the set of predictions with the corresponding thresholds from the first combination of metric dependent thresholds to determine the predicted test object classes for the first iteration.
[0186] Способ 700 продолжается на шаге 706, на котором сервер 106 во время первой итерации может сравнивать множество 625 прогнозов с соответствующими порогами из первого сочетания 650 зависящих от метрики порогов для определения прогнозируемых классов проверочных объектов для первой итерации. Например, сервер 106 может определять первые данные 670 прогнозируемых классов и вторые данные 680 прогнозируемых классов.[0186] The
Шаг 708: формирование во время первой итерации первых параметров точности и первых параметров полноты для множества вложенных метрик для первой итерации путем сравнения контрольных классов с прогнозируемыми классами проверочных объектов для первой итерации.Step 708: generating during the first iteration the first precision parameters and the first recall parameters for the set of nested metrics for the first iteration by comparing the control classes with the predicted test object classes for the first iteration.
[0187] Способ 700 продолжается на шаге 708, на котором сервер 106 может формировать первые параметры точности и первые параметры полноты для множества 410 вложенных метрик для первой итерации путем сравнения контрольных классов с прогнозируемыми классами проверочных объектов для первой итерации.[0187] The
[0188] Например, сервер 106 может формировать первый параметр 692 точности и первый параметр 694 полноты для первой вложенной метрики 412, а также другой первый параметр 696 точности и другой первый параметр 698 полноты для второй вложенной метрики 414 (см. фиг. 6).[0188] For example,
Шаг 710: корректировка во время второй итерации порога из первого сочетания зависящих от метрики порогов и формирование таким образом второго сочетания зависящих от метрики порогов.Step 710: Adjusting during the second iteration of the threshold from the first combination of metric dependent thresholds and thus generating a second combination of metric dependent thresholds.
[0189] Способ 700 продолжается на шаге 710, на котором сервер 106 во время второй итерации может корректировать порог из первого сочетания 650 зависящих от метрики порогов и формировать таким образом второе сочетание 660 зависящих от метрики порогов.[0189] The
[0190] Например, сервер 106 может корректировать зависящий от метрики порог 640 и определять таким образом скорректированный зависящий от метрики порог 642. В результате второе сочетание 660 зависящих от метрики порогов содержит скорректированный зависящий от метрики порог 642 вместо зависящего от метрики порога 640.[0190] For example,
Шаг 712: сравнение во время второй итерации множества прогнозов с соответствующими порогами из второго сочетания зависящих от метрики порогов для определения прогнозируемых классов проверочных объектов для второй итерации.Step 712: comparing, during the second iteration, the plurality of predictions with the corresponding thresholds from the second combination of metric dependent thresholds to determine the predicted test object classes for the second iteration.
[0191] Способ 700 продолжается на шаге 712, на котором сервер 106 во время второй итерации может сравнивать множество 625 прогнозов с соответствующими порогами из второго сочетания 660 зависящих от метрики порогов для определения прогнозируемых классов проверочных объектов для второй итерации. Например, сервер 106 может определять третьи данные 870 прогнозируемых классов и четвертые данные 880 прогнозируемых классов.[0191] The
Шаг 714: формирование во время второй итерации вторых параметров точности и вторых параметров полноты для множества вложенных метрик для второй итерации путем сравнения контрольных классов с соответствующими прогнозируемыми классами проверочных объектов для второй итерации.Step 714: generating, during the second iteration, second precision parameters and second recall parameters for the set of nested metrics for the second iteration by comparing the control classes with the corresponding predicted test object classes for the second iteration.
[0192] Способ 700 продолжается на шаге 714, на котором сервер 106 во время второй итерации может формировать вторые параметры точности и вторые параметры полноты для множества 410 вложенных метрик для второй итерации путем сравнения контрольных классов с соответствующими прогнозируемыми классами проверочных объектов для второй итерации.[0192] The
[0193] Как показано на фиг. 6, сервер 106 может формировать второй параметр 892 точности и второй параметр 894 полноты для первой вложенной метрики 412. Сервер 106 может формировать другой второй параметр 896 точности и другой второй параметр 898 полноты для второй вложенной метрики 414.[0193] As shown in FIG. 6, the
Шаг 716: выбор сервером первого сочетания зависящих от метрики порогов или второго сочетания зависящих от метрики порогов в качестве целевого сочетания зависящих от метрики порогов.Step 716: Server selection of the first metric dependent threshold combination or the second metric dependent threshold combination as the target metric dependent threshold combination.
[0194] Способ 700 продолжается на шаге 716, на котором сервер 106 может выбирать первое сочетание 650 или второе сочетание 660 в качестве целевого сочетания зависящих от метрики порогов путем сравнения (а) первых параметров точности и вторых параметров точности с порогом точности и/или (б) первых параметров полноты и вторых параметров полноты с порогом полноты. Целевое сочетание 450 зависящих от метрики порогов подлежит использованию со множеством 410 вложенных метрик в режиме использования для выполнения такой бинарной классификации цифрового объекта, что если прогноз этапа использования по меньшей мере одной метрики из множества 410 вложенных метрик для цифрового объекта превышает соответствующий порог из целевого сочетания 450 зависящих от метрики порогов, то определяется принадлежность цифрового объекта к первому классу.[0194] The
[0195] Следует отметить, что в некоторых вариантах осуществления изобретения целевое сочетание зависящих от метрики порогов выбирается одновременно для множества вложенных метрик во время одной итерации.[0195] It should be noted that in some embodiments of the invention, the target combination of metric-dependent thresholds is selected simultaneously for multiple nested metrics during one iteration.
[0196] Очевидно, что не все упомянутые в данном описании технические эффекты должны присутствовать в каждом варианте осуществления настоящей технологии. Например, возможны варианты осуществления настоящей технологии, когда пользователь не получает некоторые из этих технических эффектов, или другие варианты реализации, когда пользователь получает другие технические эффекты либо когда технический эффект отсутствует.[0196] It is obvious that not all of the technical effects mentioned in this description should be present in every embodiment of the present technology. For example, there may be embodiments of the present technology where the user does not receive some of these technical effects, or other implementations where the user receives other technical effects, or when there is no technical effect.
[0197] Некоторые из этих шагов и передаваемых или принимаемых сигналов хорошо известны в данной области техники и по этой причине опущены в некоторых частях описания для упрощения. Сигналы могут передаваться или приниматься с использованием оптических средств (таких как волоконно-оптическое соединение), электронных средств (таких как проводное или беспроводное соединение) и механических средств (например, основанных на давлении, температуре или любом другом подходящем физическом параметре).[0197] Some of these steps and transmitted or received signals are well known in the art and are therefore omitted in some parts of the description for simplicity. Signals may be transmitted or received using optical means (such as a fiber optic connection), electronic means (such as a wired or wireless connection), and mechanical means (such as based on pressure, temperature, or any other suitable physical parameter).
[0198] Для специалиста в данной области могут быть очевидными возможные изменения и усовершенствования описанных выше вариантов осуществления настоящей технологии. Предшествующее описание приведено лишь в иллюстративных целях, а не для ограничения объема изобретения. Объем охраны настоящей технологии определяется исключительно объемом приложенной формулы изобретения.[0198] For a person skilled in the art, possible changes and improvements to the above-described embodiments of the present technology may be obvious. The foregoing description is for illustrative purposes only and is not intended to limit the scope of the invention. The scope of protection of this technology is determined solely by the scope of the appended claims.
Claims (52)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2020133324A RU2795202C2 (en) | 2020-10-09 | Methods and servers for determining metric-dependent thresholds used with multiple nested metrics for binary classification of a digital object | |
US17/494,405 US12271447B2 (en) | 2020-10-09 | 2021-10-05 | Methods and servers for determining metric-specific thresholds to be used with a plurality of nested metrics for binary classification of a digital object |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2020133324A RU2795202C2 (en) | 2020-10-09 | Methods and servers for determining metric-dependent thresholds used with multiple nested metrics for binary classification of a digital object |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2020133324A RU2020133324A (en) | 2022-04-12 |
RU2795202C2 true RU2795202C2 (en) | 2023-05-02 |
Family
ID=
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8271408B2 (en) * | 2009-10-22 | 2012-09-18 | Yahoo! Inc. | Pairwise ranking-based classifier |
US20130013603A1 (en) * | 2011-05-24 | 2013-01-10 | Namesforlife, Llc | Semiotic indexing of digital resources |
US8355997B2 (en) * | 2009-11-13 | 2013-01-15 | Hewlett-Packard Development Company, L.P. | Method and system for developing a classification tool |
US20140236874A1 (en) * | 2011-10-26 | 2014-08-21 | GM Global Technology Operations LLC | Binary classification of items of interest in a repeatable process |
US9888030B2 (en) * | 2009-03-13 | 2018-02-06 | Virginia Tech Intellectual Properties, Inc. | Detection of stealthy malware activities with traffic causality and scalable triggering relation discovery |
RU2674326C2 (en) * | 2017-02-20 | 2018-12-06 | Автономная некоммерческая образовательная организация высшего образования "Сколковский институт науки и технологий" | Method of formation of neural network architecture for classification of object taken in cloud of points, method of its application for teaching neural network and searching semantically alike clouds of points |
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9888030B2 (en) * | 2009-03-13 | 2018-02-06 | Virginia Tech Intellectual Properties, Inc. | Detection of stealthy malware activities with traffic causality and scalable triggering relation discovery |
US8271408B2 (en) * | 2009-10-22 | 2012-09-18 | Yahoo! Inc. | Pairwise ranking-based classifier |
US8355997B2 (en) * | 2009-11-13 | 2013-01-15 | Hewlett-Packard Development Company, L.P. | Method and system for developing a classification tool |
US20130013603A1 (en) * | 2011-05-24 | 2013-01-10 | Namesforlife, Llc | Semiotic indexing of digital resources |
US20140236874A1 (en) * | 2011-10-26 | 2014-08-21 | GM Global Technology Operations LLC | Binary classification of items of interest in a repeatable process |
RU2674326C2 (en) * | 2017-02-20 | 2018-12-06 | Автономная некоммерческая образовательная организация высшего образования "Сколковский институт науки и технологий" | Method of formation of neural network architecture for classification of object taken in cloud of points, method of its application for teaching neural network and searching semantically alike clouds of points |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11288333B2 (en) | Method and system for estimating user-item interaction data based on stored interaction data by using multiple models | |
US9064212B2 (en) | Automatic event categorization for event ticket network systems | |
KR101255406B1 (en) | Dynamic search with implicit user intention mining | |
RU2720952C2 (en) | Method and system for generating digital content recommendation | |
US7853485B2 (en) | Methods and systems for utilizing content, dynamic patterns, and/or relational information for data analysis | |
US12141212B2 (en) | Intelligent interface accelerating | |
US9524321B2 (en) | Content resonance | |
US12159301B2 (en) | Text processing based interface accelerating | |
RU2714594C1 (en) | Method and system for determining parameter relevance for content items | |
US20160012124A1 (en) | Methods for automatic query translation | |
RU2743932C2 (en) | Method and server for repeated training of machine learning algorithm | |
US20210004693A1 (en) | Real-Time On the Fly Generation of Feature-Based Label Embeddings Via Machine Learning | |
CN112699309A (en) | Resource recommendation method, device, readable medium and equipment | |
US11822447B2 (en) | Methods and servers for storing data associated with users and digital items of a recommendation system | |
US12271826B2 (en) | Methods and systems for training a decision-tree based Machine Learning Algorithm (MLA) | |
US20200349582A1 (en) | Method and system for addressing user discontent observed on client devices | |
US20190080290A1 (en) | Updating messaging data structures to include predicted attribute values associated with recipient entities | |
US20250045281A1 (en) | Server and method for generating digital content for users of a recommendation system | |
US20240169003A1 (en) | Server and method for generating digital content for users of a recommendation system | |
US20220083614A1 (en) | Method for training a machine learning algorithm (mla) to generate a predicted collaborative embedding for a digital item | |
US12271447B2 (en) | Methods and servers for determining metric-specific thresholds to be used with a plurality of nested metrics for binary classification of a digital object | |
RU2795202C2 (en) | Methods and servers for determining metric-dependent thresholds used with multiple nested metrics for binary classification of a digital object | |
US20210110456A1 (en) | Email Content Selection System And Method | |
US20190236646A1 (en) | Email-Based User Tracking And Content Selection | |
US20250131474A1 (en) | Optimize and generate a personalized content item for display during web page load time |