Efficient multi-scale multi-granularity orientation for game users

By obtaining game exposure information based on the sequential chart and combining feature engineering pipelines, the problem of difficulty in performing multi-scale and multi-grained orientation of game users in the prior art is solved, and precise capture and orientation of game users' behaviors and preferences is achieved, and the accuracy of advertising and recommendations is improved.

CN120202482APending Publication Date: 2025-06-24SAMSUNG ELECTRONICS CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380076598.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-11-29
Filing Date
2023-07-05
Publication Date
2025-06-24

AI Technical Summary

Technical Problem

The prior art is difficult to effectively carry out multi-scale and multi-grained orientation for game users, especially in capturing the user's time information and historical preferences.

Method used

Gaming exposure information over time, including device-level preferences and home-level preferences, is obtained through a sequential graph-based model, and combines the original user behavior session into the game session, providing rating metrics to check multiple match levels and remove untrusted exposures. Use feature engineering pipelines to generate game clips and identify auxiliary content based on machine learning models.

Benefits of technology

It realizes accurate multi-scale and multi-grained orientation for game users, improves the accuracy and effectiveness of advertising and recommendations, and enhances the capture and analysis of user behavior and preferences.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120202482A_ABST
    Figure CN120202482A_ABST
Patent Text Reader

Abstract

A method includes obtaining game exposure information over time based on a sequence diagram-based model, wherein the game exposure information includes device-level preferences and home-level preferences. The method further includes combining one or more original user behavior sessions into the game session based on the obtained game exposure information. The method further includes providing a scoring metric to (i) check a degree of multi-match in the obtained game exposure information, and (ii) remove untrusted game exposures from the obtained game exposure information. Further, the method includes generating one or more game segments running in the production environment based on the feature engineering pipeline, where the one or more game segments are identified for the auxiliary content based on reasoning of a machine learning model trained using the game exposure information.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure generally relates to machine learning systems. More specifically, the present disclosure relates to effective multi-scale multi-granular targeting for game users. Background Art

[0002] Simple rule-based advertising or recommendation systems have limitations for users with very specific preferences regarding interactions with devices and / or content. For example, some users may have specific time preferences for specific activities such as gaming, device preferences for those activities, and / or usage of secondary devices for a primary device or a specific activity. Summary of the Invention

[0003] Solution to the Problem

[0004] The present disclosure relates to effective multi-scale multi-granular targeting for game users.

[0005] According to one aspect of the present disclosure, a method includes obtaining game exposure information over time based on a sequential graph-based model, wherein the game exposure information includes device-level preferences and household-level preferences. The method further includes combining one or more raw user behavior sessions into game sessions based on the obtained game exposure information. The method further includes providing a scoring metric to (i) check the degree of multi-match in the obtained game exposure information, and (ii) remove untrusted game exposures from the obtained game exposure information. Additionally, the method includes generating one or more game segments for operation in a production environment based on a feature engineering pipeline, wherein one or more game segments are identified for ancillary content based on the inference of a machine learning model trained using the game exposure information.

[0006] According to one aspect of the present disclosure, an apparatus includes at least one processing device configured to obtain game exposure information over time based on a model based on a sequence diagram, wherein the game exposure information includes device-level preferences and household-level preferences. The at least one processing device is further configured to combine one or more raw user behavior sessions into game sessions based on the obtained game exposure information. The at least one processing device is further configured to provide a scoring metric to (i) check a degree of multi-matching in the obtained game exposure information, and (ii) remove untrusted game exposures from the obtained game exposure information. Additionally, the at least one processing device is configured to generate one or more game segments operating in a production environment based on a feature engineering pipeline, wherein the one or more game segments are identified for auxiliary content based on inferences of a machine learning model trained using the game exposure information.

[0007] According to one aspect of the present disclosure, a machine-readable medium stores instructions to be executed by at least one processor to perform the methods of the present disclosure.

[0008] According to one aspect of the present disclosure, a method includes generating device-level and household-level advertisement targeting inferences for one or more game segments operating in a production environment using a machine learning model, the machine learning model being trained using a feature engineering pipeline including device-level features and household-level features. The method further includes determining genre advertisement targeting inferences related to the one or more game segments from the device-level and household-level advertisement targeting inferences.

[0009] Other technical features may be apparent to those skilled in the art based on the following figures, description, and claims. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] To more fully understand the present disclosure and its advantages, reference is now made to the following description taken in conjunction with the accompanying drawings, in which like reference numerals represent like parts:

[0011] Figure 1A An example network configuration including an electronic device is shown in accordance with an embodiment of the present disclosure;

[0012] Figure 1B An example electronic device is shown in accordance with an embodiment of the present disclosure;

[0013] Figures 2A to 2C An example process flow for multi-scale multi-granularity targeting for game users is shown in accordance with an embodiment of the present disclosure;

[0014] Figure 3 An example data source is shown in accordance with an embodiment of the present disclosure;

[0015] Figure 4A and Figure 4BIllustrates an example system and related details that support a sequence-based method for device-level targeting as part of multi-scale multi-granularity targeting for gaming users;

[0016] Figure 5 Illustrates an example of creating a subgraph for each session using a graph neural network (GNN) layer according to an embodiment of the present disclosure;

[0017] Figure 6 Illustrates an example system that supports a sequence-based method for home-level targeting as part of multi-scale multi-granularity targeting for gaming users according to an embodiment of the present disclosure;

[0018] Figure 7 and Figure 8 Illustrates an example of how feature aggregation can work on categorical features according to an embodiment of the present disclosure;

[0019] Figure 9A and Figure 9B Illustrates an example operation of a pipeline for feature engineering according to an embodiment of the present disclosure;

[0020] Figure 10 Illustrates an example operation of a multi-match check algorithm for feature engineering according to an embodiment of the present disclosure;

[0021] Figure 11 Illustrates an example of using an overlap score according to an embodiment of the present disclosure;

[0022] Figure 12 Illustrates an example alternative embodiment of machine learning components for a process flow for multi-scale multi-granularity targeting for gaming users according to an embodiment of the present disclosure;

[0023] Figure 13 Illustrates an example alternative system that supports a sequence-based method for device-level targeting for a process flow implementation according to an embodiment of the present disclosure;

[0024] Figure 14 Illustrates an example for use in a system according to an embodiment of the present disclosure Figure 13 of an example transformer layer;

[0025] Figure 15 Illustrates an example method for multi-scale multi-granularity targeting for gaming users according to an embodiment of the present disclosure; and

[0026] Figure 16 Illustrates an example method for using a trained machine learning model for multi-scale multi-granularity targeting for gaming users according to an embodiment of the present disclosure. Detailed Description

[0027] Before proceeding with the following detailed description, it may be advantageous to set forth definitions of certain words and phrases used throughout this patent document. The terms "send," "receive," and "communicate" and derivatives thereof cover both direct and indirect communication. The terms "include" and "including" and derivatives thereof mean including but not limited to. The term "or" is inclusive and means and / or. The phrase "associated with" and derivatives thereof mean including, being included within, interconnecting with, containing, being contained within, connected to or coupling with, capable of communicating with, cooperating with, interlacing, juxtaposing, adjacent to, bound to or binding with, having, having the property of, having a relationship to or with, etc.

[0028] In addition, the various functions described below may be implemented or supported by one or more computer programs, each of which is formed of computer-readable program code and embodied in a computer-readable medium. The terms "application" and "program" refer to one or more computer programs, software components, instruction sets, procedures, functions, objects, classes, instances, related data, or portions thereof that are adapted to be implemented in suitable computer-readable program code. The phrase "computer-readable program code" includes any type of computer code, including source code, object code, and executable code. The phrase "computer-readable medium" includes any type of medium that can be accessed by a computer, such as read-only memory (ROM), random access memory (RAM), hard disk drive, compact disk (CD), digital video disk (DVD), or any other type of memory. A "non-transitory" computer-readable medium excludes wired, wireless, optical, or other communication links that transmit transitory electrical or other signals. A non-transitory computer-readable medium includes media in which data can be stored permanently and media in which data can be stored and later rewritten, such as a rewritable optical disk or an erasable memory device.

[0029] As used herein, terms and phrases such as "having", "may have", "including", or "may include" a feature (such as a number, a function, an operation, or a component such as a part) indicate the presence of the feature without precluding the presence of other features. In addition, as used herein, the phrase "A or B", "at least one of A and / or B", or "one or more of A and / or B" may include all possible combinations of A and B. For example, "A or B", "at least one of A and B", and "at least one of A or B" may each indicate any of the following: (1) including at least one A, (2) including at least one B, or (3) including at least one A and at least one B. In addition, as used herein, the terms "first" and "second" may modify various components regardless of importance and do not limit the components. These terms are only used to distinguish one component from another. For example, a first user device and a second user device may indicate different user devices from each other, regardless of the order or importance of the devices. Without departing from the scope of the present disclosure, the first component may be denoted as the second component, and vice versa.

[0030] It should be understood that when an element (such as a first element) is considered to be "coupled" / "coupled to" or "connected to" another element (such as a second element) (operatively or communicatively), it may be coupled or connected to the other element directly or via a third element. In contrast, it will be understood that when an element (such as a first element) is considered to be "directly coupled" or "directly connected" to another element (such as a second element), no other element (such as a third element) intervenes between the element and the other element.

[0031] As used herein, the phrase "configured (or set) to" may be used interchangeably with the phrases "suitable for", "capable of", "designed to", "adapted to", "manufactured to", or "able to" as the context requires. The phrase "configured (or set) to" does not essentially mean "specially designed in hardware for...". Instead, the phrase "configured to" may mean that a device can perform an operation together with another device or part. For example, the phrase "a processor configured (or set) to perform A, B, and C" may mean a general-purpose processor (such as a CPU or an application processor) that can perform the operation by executing one or more software programs stored in a memory device or a dedicated processor (such as an embedded processor) for performing the operation.

[0032] The terms and phrases used herein are for describing only some embodiments of the present disclosure and are not intended to limit the scope of other embodiments of the present disclosure. It should be understood that, unless the context clearly indicates otherwise, the singular forms "a", "an", and "the" include plural referents. All terms and phrases used herein (including technical and scientific terms and phrases) have the same meaning as commonly understood by one of ordinary skill in the art to which the embodiments of the present disclosure belong. It will be further understood that terms and phrases (such as those defined in common dictionaries) should be interpreted as having a meaning consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein. In some cases, the terms and phrases defined herein may be interpreted as excluding embodiments of the present disclosure.

[0033] Examples of an "electronic device" according to an embodiment of the present disclosure may include at least one of a smart phone, a tablet personal computer (PC), a mobile phone, a video phone, an e-book reader, a desktop PC, a laptop computer, a netbook computer, a workstation, a personal digital assistant (PDA), a portable multimedia player (PMP), an MP3 player, a mobile medical device, a camera, and a wearable device (such as smart glasses, a head-mounted device (HMD), electronic clothing, an electronic bracelet, an electronic necklace, an electronic accessory, an electronic tattoo, a smart mirror, or a smart watch). Other examples of the electronic device include smart home appliances. Examples of the smart home appliances may include at least one of a television, a digital video disc (DVD) player, an audio player, a refrigerator, an air conditioner, a cleaner, an oven, a microwave oven, a washing machine, a dryer, an air purifier, a set-top box, a home automation control panel, a security control panel, a TV box (such as SAMSUNG HOMESYNC, APPLE TV, or GOOGLE TV), a smart speaker or a speaker with an integrated digital assistant (such as SAMSUNG GALAXY HOME, APPLE HOMEPOD, or AMAZON ECHO), a game console (such as XBOX, PLAYSTATION, or NINTENDO), an electronic dictionary, an electronic key, a camera, and an electronic photo frame. Other examples of the electronic device include various medical devices (such as various portable medical measurement devices (such as a blood glucose measurement device, a heart rate measurement device, or a body temperature measurement device), a magnetic source angiography (MRA) device, a magnetic source imaging (MRI) device, a computed tomography (CT) device, an imaging device, or an ultrasonic device), a navigation device, a global positioning system (GPS) receiver, an event data recorder (EDR), a flight data recorder (FDR), an in-vehicle infotainment device, marine electronic devices (such as marine navigation devices or gyrocompasses), avionics, security devices, an in-vehicle head unit, industrial or home robots, an automated teller machine (ATM), a point of sale (POS) device, and Internet of Things (IoT) devices (such as light bulbs, various sensors, electric meters, or gas meters, sprinklers, fire alarms, thermostats, street lights, ovens, fitness equipment, hot water tanks, heaters, or boilers). Other examples of the electronic device include at least a part of a piece of furniture or a building / structure, an electronic board, an electronic signature receiving device, a projector, and various measurement devices (such as devices for measuring water, electricity, gas, or electromagnetic waves). Note that, according to various embodiments of the present disclosure, the electronic device may be one or a combination of the devices listed above. According to some embodiments of the present disclosure, the electronic device may be a flexible electronic device. The electronic device disclosed herein is not limited to the devices listed above and may include new electronic devices depending on technological development.

[0034] In the following description, according to various embodiments of the present disclosure, an electronic device is described with reference to the accompanying drawings. As used herein, the term "user" may refer to a person using the electronic device or another device (such as an artificial intelligence electronic device).

[0035] Throughout this patent document, definitions of certain other words and phrases may be provided. Those of ordinary skill in the art should understand that in many, if not most, instances, such definitions apply to the prior as well as future use of the words and phrases so defined.

[0036] None of the descriptions in this application should be construed as implying that any particular element, step, or function is an essential element that must be included within the scope of the claims. The scope of the patent subject matter is defined only by the claims. The applicant understands the use of any other terms within the claims (including, but not limited to, "means", "module", "device", "unit", "component", "element", "member", "apparatus", "machine", "system", "processor", or "controller") to refer to structures known to those skilled in the relevant art.

[0037] The following discussion of FIGS. 1 through Figure 16 and various embodiments of the present disclosure is described with reference to the accompanying drawings. However, it should be understood that the present disclosure is not limited to these embodiments, and all changes and / or equivalents or substitutions thereof also fall within the scope of the present disclosure. Throughout the specification and the drawings, the same or similar reference numerals may be used to refer to the same or similar elements.

[0038] As described above, simple rule-based advertising or recommendation systems have limitations for users with very specific preferences regarding interactions with devices and / or content. For example, some users may have specific time preferences for specific activities (such as games), device preferences for those activities, and / or use of a primary device or secondary devices for a specific activity.

[0039] In 2021, the global video game market was valued at $195.65 billion and is expected to expand at a compound annual growth rate (CAGR) of 12.9% from 2022 to 2030. Television and mobile phone manufacturers embed content recognition technology within such devices, thus providing a unique opportunity to gather rich user behavior data that highlights an individual user's likes and dislikes. These data points around user behavior open the door to leveraging the capabilities of deep learning and artificial intelligence (AI) to build models that can learn the underlying complexity of user interactions by considering multiple inputs simultaneously. As an example, if a user prefers to play games at night while connected to a gaming headset and with the "game mode" feature enabled on the television, these are three very distinct user preferences that may be desirable to capture. This is especially true in the gaming domain as each user has his or her own unique way of interacting with a game title and because there is no predefined start or end time or duration for which someone plays a game. Therefore, applying AI-based solutions to advertising targeting has substantial advantages over simple rule-based methods.

[0040] Observing a user's gameplay behavior can also be beneficial in other domains. For example, assume a gamer has a game console. If a user spends a lot of time playing games on a smart TV, the user may be receptive to marketing related to gaming headsets. If a user plays many games from a certain publisher, other games from the same publisher that align with the user's taste can be recommended. Additionally, a recommendation system can be built that can dynamically learn a user's preferences over time and recommend game ads / game titles that the user should consider exploring.

[0041] Current systems for game name recognition on smart TVs can utilize pre - defined video fingerprints sourced from third - party providers and are limited to a few clips per name, where the clips used to create the fingerprints are only shown at certain points during the game session. There are multiple problems when collecting data in this way. For example, since game sessions are not static and can have variable lengths, users may or may not reach the stage in the game where these clips are played, and sessionizing the game session in an accurate way is a major challenge. Additionally, in some scenarios, game name content is recognized as another content type (such as a TV show or a linear advertisement), so the accuracy of the exposures recorded as game exposures is problematic for these instances. Moreover, the clips used may be too specific, such as if a third - party provider delivers fingerprint clips with very unique actions, in which case the detection algorithm will not be applicable to most users. Also, the length of the clips is typically too short (such as when the average length of a clip is about 45 seconds), which may be too short compared to the length of the game session (which can be many hours). Finally, there is no accurate way to determine the start or end points of a game session, such as when a user starts or quits the game, in which case the automatic content recognition (ACR) data does not mark these as the end of a session exposure.

[0042] In the present disclosure, various solutions to the above - mentioned problems are provided. For example, the present disclosure provides a flexible architecture where game segments can be created at different granularities, such as individual device - level granularity and home - level granularity. Machine - learning models can be used to capture the player's time information and the player's historical preferences, including hardware attributes and information about the gaming device. In some cases, the machine - learning model can include one or more artificial neural networks (ANNs), one or more transformers, and / or one or more graph neural networks (GNNs). Features from multiple data sources can be utilized to accurately capture user behavior. A custom scoring metric (referred to as the "overlap score") can be provided to examine the degree of multi - matching observed in the collected game exposure data and can be used as a filter to remove untrustworthy exposures. Real game sessions can be approximated, such as by stitching together exposures within a certain time window. Additionally, the machine - learning pipeline can improve the existing framework and enhance the game segment creation process for ad targeting.

[0043] Figure 1A An example network configuration 100 including an electronic device is shown in accordance with an embodiment of the present disclosure. Figure 1A The embodiment of the network configuration 100 shown is for illustrative purposes only. Other embodiments of the network configuration 100 can be used without departing from the scope of the present disclosure.

[0044] According to an embodiment of the present disclosure, the electronic device 101 is included in the network configuration 100. The electronic device 101 may include at least one of a bus 110, a processor 120, a memory 130, an input / output (I / O) interface 150, a display 160, a communication interface 170, or a sensor 180. In some embodiments, the electronic device 101 may exclude at least one of these components, or may add at least one other component. The bus 110 includes circuitry for connecting the components 120-180 to each other and for transmitting communications (such as control messages and / or data) between the components.

[0045] The processor 120 includes one or more processing devices, such as one or more microprocessors, microcontrollers, digital signal processors (DSPs), application specific integrated circuits (ASICs), or field programmable gate arrays (FPGAs). In some embodiments, the processor 120 includes one or more of a central processing unit (CPU), an application processor (AP), a communication processor (CP), or a graphics processing unit (GPU). The processor 120 is capable of performing control and / or executing operations or data processing related to communication or other functions on at least one of the other components of the electronic device 101. As described below, the processor 120 may be used to provide multi-scale multi-granularity orientation for game users.

[0046] The memory 130 may include volatile and / or non-volatile memory. For example, the memory 130 may store commands or data related to at least one of the other components of the electronic device 101. According to an embodiment of the present disclosure, the memory 130 may store software and / or a program 140. The program 140 includes, for example, a kernel 141, middleware 143, an application programming interface (API) 145, and / or an application program (or “app”) 147. At least a portion of the kernel 141, middleware 143, or API 145 may be represented as an operating system (OS).

[0047] The kernel 141 may control or manage system resources (such as the bus 110, the processor 120, or the memory 130) for performing operations or functions implemented in other programs (such as middleware 143, API 145, or application 147). The kernel 141 provides an interface that allows the middleware 143, API 145, or application 147 to access various components of the electronic device 101 to control or manage system resources. The application 147 includes one or more applications for multi-scale multi-granularity orientation for game users. These functions may be performed by a single application or multiple applications, with each application performing one or more of these functions. For example, the middleware 143 may act as a relay to allow the API 145 or application 147 to communicate data with the kernel 141. Multiple applications 147 may be provided. The middleware 143 is capable of controlling work requests received from the application 147, such as by assigning priorities for using system resources of the electronic device 101 (such as the bus 110, the processor 120, or the memory 130) to at least one of the multiple applications 147. The API 145 is an interface that allows the application 147 to control functions provided by the kernel 141 or the middleware 143. For example, the API 145 includes at least one interface and function (such as a command) for archive control, window control, image processing, or text control.

[0048] The I / O interface 150 serves as an interface that can transfer, for example, commands or data input from a user or other external device to other components of the electronic device 101. The I / O interface 150 can also output commands or data received from other components of the electronic device 101 to the user or other external device.

[0049] The display 160 includes, for example, a liquid crystal display (LCD), a light-emitting diode (LED) display, an organic light-emitting diode (OLED) display, a quantum dot light-emitting diode (QLED) display, a microelectromechanical systems (MEMS) display, or an electronic paper display. The display 160 can also be a depth perception display, such as a multi-focus display. The display 160 is capable of displaying various contents (such as text, images, videos, icons, or symbols) to the user. The display 160 may include a touch screen and may receive, for example, touch, gesture, proximity, or hover inputs using an electronic pen or a user's body part.

[0050] For example, the communication interface 170 is capable of establishing communication between the electronic device 101 and an external electronic device (such as the first electronic device 102, the second electronic device 104, or the server 106). For example, the communication interface 170 may be connected to the network 162 or 164 through wireless or wired communication to communicate with the external electronic device. The communication interface 170 may be a wired or wireless transceiver or any other component for transmitting and receiving signals (such as images).

[0051] The electronic device 101 also includes one or more sensors 180, which can measure physical quantities or detect the activation state of the electronic device 101, and convert the measured or detected information into an electrical signal. For example, one or more sensors 180 may include one or more cameras or other imaging sensors, which can be used to capture images of a scene. The sensor 180 may also include one or more buttons for touch input, one or more microphones, a gesture sensor, a gyroscope or gyroscope sensor, a barometric pressure sensor, a magnetic sensor or magnetometer, an acceleration sensor or accelerometer, a grip sensor, a proximity sensor, a color sensor (such as an RGB sensor), a biophysical sensor, a temperature sensor, a humidity sensor, an illuminance sensor, an ultraviolet (UV) sensor, an electromyogram (EMG) sensor, an electroencephalogram (EEG) sensor, an electrocardiogram (ECG) sensor, an infrared (IR) sensor, an ultrasonic sensor, an iris sensor or a fingerprint sensor. The sensor 180 may also include an inertial measurement unit, which may include one or more accelerometers, gyroscopes and other components. Additionally, the sensor 180 may include a control circuit for controlling at least one of the sensors included herein. Any one of these sensors 180 may be located within the electronic device 101.

[0052] The first external electronic device 102 or the second external electronic device 104 may be a wearable device or a wearable device (such as an HMD) that can be installed on the electronic device. When the electronic device 101 is installed in the electronic device 102 (such as an HMD), the electronic device 101 can communicate with the electronic device 102 through the communication interface 170. The electronic device 101 can be directly connected to the electronic device 102 to communicate with the electronic device 102 without involving a separate network. The electronic device 101 may also be an augmented reality wearable device including one or more cameras, such as glasses.

[0053] Wireless communication can use, for example, at least one of Long Term Evolution (LTE), Long Term Evolution-Advanced (LTE-A), Fifth Generation (5G) wireless systems, millimeter wave or 60 GHz wireless communication, Wireless USB, Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Universal Mobile Telecommunications System (UMTS), Wireless Broadband (WiBro) or Global System for Mobile Communications (GSM) as a cellular communication protocol. The wired connection may include, for example, at least one of Universal Serial Bus (USB), High-Definition Multimedia Interface (HDMI), Recommended Standard 232 (RS-232) or Plain Old Telephone Service (POTS). The network 162 includes at least one communication network, such as a computer network (such as a Local Area Network (LAN) or a Wide Area Network (WAN)), the Internet or a telephone network.

[0054] The first external electronic device 102, the second external electronic device 104, and the server 106 can each be a device of the same or different type as the electronic device 101. According to some embodiments of the present disclosure, the server 106 includes a group of one or more servers. In addition, according to certain embodiments of the present disclosure, all or some of the operations performed on the electronic device 101 can be performed on another or more other electronic devices (such as the electronic devices 102 and 104 or the server 106). In addition, according to certain embodiments of the present disclosure, when the electronic device 101 should automatically or upon request perform some functions or services, the electronic device 101 can request another device (such as the electronic devices 102 and 104 or the server 106) to perform at least some functions associated therewith, rather than performing the function or service itself, or additionally performing the function or service. Other electronic devices (such as the electronic devices 102 and 104 or the server 106) are capable of performing the requested function or additional functions and transmitting the results of the execution to the electronic device 101. The electronic device 101 can provide the requested function or service by processing the received results as is or additionally. For this purpose, for example, cloud computing, distributed computing, or client-server computing technologies can be used. Although Figure 1A it is shown that the electronic device 101 includes a communication interface 170 that communicates with the external electronic device 104 or the server 106 via the network 162, but according to some embodiments of the present disclosure, the electronic device 101 can operate independently without a separate communication function.

[0055] The server 106 can include components (or a suitable subset thereof) that are the same as or similar to those of the electronic device 101. The server 106 can support driving the electronic device 101 by performing at least one of the operations (or functions) implemented on the electronic device 101. For example, the server 106 can include a processing module or a processor that can support the processor 120 implemented in the electronic device 101. As described below, the server 106 can be used to provide multi-scale multi-granularity orientation for game users.

[0056] Although Figure 1A it is shown an example of a network configuration 100 including the electronic device 101, various changes can be made to Figure 1A it. For example, the network configuration 100 can include any number of each component in any suitable arrangement. Generally, computing and communication systems have a wide variety of configurations, and Figure 1A the scope of the present disclosure is not limited to any specific configuration. In addition, although Figure 1A it is shown an operating environment in which various features disclosed in this patent document can be used, these features can be used in any other suitable system.

[0057] Figure 1BFIG. 0 shows an example electronic device 101 according to an embodiment of the present disclosure. Figure 1B The embodiment of the electronic device 101 shown in FIG. 1 is for illustrative purposes only. Other embodiments of the electronic device 101 may be used without departing from the scope of the present disclosure.

[0058] According to an embodiment of the present disclosure, the electronic device 101 may include at least one of a processor 120 and a memory 130. In some embodiments, the electronic device 101 may exclude at least one of these components or may add at least one other component.

[0059] The processor 120 includes one or more processing devices, such as one or more microprocessors, microcontrollers, digital signal processors (DSPs), application specific integrated circuits (ASICs), or field programmable gate arrays (FPGAs). In some embodiments, the processor 120 includes one or more of a central processing unit (CPU), an application processor (AP), a communication processor (CP), or a graphics processing unit (GPU). The processor 120 is capable of performing control on at least one of the other components of the electronic device 101 and / or performing operations or data processing related to communication or other functions. As described below, the processor 120 may be used to provide multi-scale multi-granularity orientation for game users.

[0060] The memory 130 may include volatile and / or non-volatile memory. For example, the memory 130 may store commands or data related to at least one of the other components of the electronic device 101. According to an embodiment of the present disclosure, the memory 130 may store software and / or programs. The programs include, for example, a kernel, middleware, an application programming interface (API), and / or an application (or “app”).

[0061] Figures 2A to 2C FIG. 15 shows an example process flow 200 for multi-scale multi-granularity orientation for game users according to an embodiment of the present disclosure. For ease of explanation, Figures 2A to 2C the process flow 200 shown in FIG. 15 is described as being implemented on or supported by one or more components (such as the electronic device 101, the server 106, or both) in the Figure 1A network configuration 100 of FIG. 1. However, Figures 2A to 2C the process flow 200 shown in FIG. 15 may be used with any other suitable device and may be used in any other suitable system.

[0062] The process flow 200 generally includes feature engineering 201 as shown in Figure 2A FIG. 26, processing of a machine learning component 202 as shown in Figure 2B FIG. 27, and processing of an application 203 as shown in Figure 2C FIG. 30. Generally, Figure 2AThe feature engineering 201 shown in operates on the automatically collected and reported automatic content recognition (ACR) data. Within the feature engineering 201, the start date, end date, and aggregation level are received as input data 204 for feature generation. The input data 204 is used to select the data set on which feature generation will be performed. In addition to the start date, end date, and aggregation level, other inputs may also be employed. For example, for a specific purpose, the geographical location of the user or the user's age may be specified.

[0063] Within the data set corresponding to the input data 204, all devices used between the start date and end date of the game can be identified (block 205), and the device identifier (ID) mapping database 206 can be populated. Devices can be identified, for example, from the collected and reported ACR data within the data set corresponding to the input data 204. The game logs for each device can be retrieved (block 207), and the multi-match ratio of game exposures on the corresponding device can be determined (block 208). The multi-match ratio is used to filter only "clean" game exposures, and those clean exposures can be session-stitched together (block 209). An example method for determining the multi-match ratio for clean game exposures is described in further detail below in conjunction with Figure 10 and Figure 11 An example method for determining the multi-match ratio for clean game exposures is described in further detail below in conjunction with

[0064] In some cases, session stitching together to approximate real game sessions from content recognition logs can be performed as follows. Consider user U and game_title_id T. The content recognition database may include fingerprints of all clips associated with the name T. All instances of users playing the game name can be logged in the system, where each exposure has an associated start_time (Si) and an associated end_time (Ei). Assume that a given (U,T) has seven instances, where the start times and end times are collected in a list (start_end_list) for that (U,T) combination and are represented as follows.

[0065] start_end_list[(U,T)] = [[S1,E1],[S2,E2],[S3,E3],[S4,E4],[S5,E5],[S6,E6],[S7,E7]]

[0066] The difference between consecutive game exposures can be calculated as the difference between the current start time and the previous end time. This can be represented as follows.

[0067] diff_list[(U,T)] = [(S2-E1),(S3-E2),(S4-E3),(S5-E4),(S6-E5),(S7-E6)] = [D1,D2,…D6]

[0068] For each Di in the diff_list variable, if the value is less than a threshold X (e.g., 30 minutes), the start_end_list[i] and start_end_list[i+1] entries can reasonably be assumed to be part of the same gaming session and can be merged into a representation of the start time of the start_end_list[i] entry and the end time of the start_end_list[i+1] entry. If the interactions between multiple fingerprints from other video content are considered, the process can be much more complex.

[0069] Return reference Figure 2A , data from other sources (such as hardware or viewer information) can be read (block 210), and feature generation 211 can be performed, as described in more detail below. The device-level feature database 212 can be populated with the output of feature generation 211.

[0070] The aggregation level within the input data 204 can indicate whether only user-level (or only device-level) processing is needed or desired, or whether home-level processing is also needed or desired. Thus, there is a determination 213 as to whether to process home segments. If so, all devices in the home can be identified for each home represented within the dataset corresponding to the input data 204 (block 214). The identification of devices in a particular home can be based on device location and other data. Features can be aggregated at the home level (block 215), and the home-level feature database 216 can be populated. The device-level feature database 212 and the home-level feature database 216 can represent the output of the feature engineering 201. Information from the device-level feature database 212 and the home-level feature database 216 can be used to perform feature extraction and session generation (block 217).

[0071] As Figure 2B shown, the processing using the machine learning component 202 involves receiving output from Figure 2A feature extraction and session generation (block 217). The machine learning component 202 utilizes home-level machine learning 218 and device-level machine learning 219. The home-level machine learning 218 and the device-level machine learning 219 each include graph neural network (GNN) layers 220, 221 to extract attention vectors. The home-level machine learning 218 also includes a home embedding 222, and the device-level machine learning 219 also includes a device embedding 223. Each of the home-level machine learning 218 and the device-level machine learning 219 also includes other features 224, 225 from the feature creation database. The home-level machine learning 218 provides input to a deep neural network (DNN) model 226 to create home segments, and the device-level machine learning 219 provides input to a DNN model 227 to create home segments.

[0072] As Figure 2C shown, application 203 receives the output of DNN model 226 and populates the final home segment 228. Application 203 also receives the output of DNN model 227 and creates the final device segment 229. A determination 230 is made as to whether genre-level segments are needed or desired based on the aggregation level specified in the input data 204. If genre-level segments are needed or desired, at least one final genre-level segment 231 is created.

[0073] While Figures 2A to 2C an example of a process flow 200 for multi-scale multi-granularity targeting for gaming users is shown, various changes can be made Figures 2A to 2C to it. For example, Figures 2A to 2C the various components or functions in can be combined, further segmented, copied, rearranged, or omitted according to specific needs. Additionally, if needed or desired, one or more additional components or functions can be included. Further, while shown as a series of steps, Figures 2A to 2C the individual steps in can overlap, occur in parallel, occur in a different order, or occur any number of times.

[0074] Before describing in more detail the specific processes implemented by the feature engineering 201, the machine learning components 202, and the application 203, consider the data sources for creating user features and the weighting of this data.

[0075] Figure 3 An example data source 300 that can be used for Figures 2A to 2C the process flow 200 according to an embodiment of the present disclosure is shown. In Figure 3 it, an example data source 300 and example data items from those data sources 300 are depicted. As Figure 3 shown, the data source 300 can include ACR data 301, game metadata 302, hardware data 303, application usage data 304, key performance indicator (KPI) data 305, demographics data 306, mobile usage data 307, video stream data 308, and high-definition multimedia interface (HDMI) data 309.

[0076] The data from the ACR data 301 used may include the start time 301a, end time 301b, and content type 301c of each identified content. The data from the game metadata 302 used may include the game name 302a, game type 302b, game rating 302c, game publisher 302d, and game series 302e of each game played. The data from the hardware data 303 used may include information about the type of smart TV in use, such as screen size 303a, screen resolution 303b, panel type 303c, and model year 303d. The data from the application usage data 304 used may include the application identifier (ID) 304a, start time 304b, end time 304c, and application category 304d of each application used. The data from the KPI log data 305 can be used to understand the TV settings (such as game mode) preferred by the user when playing games, and may include the start time 305a, end time 305b, whether the game mode is enabled 305c, whether the game center is utilized 305d, and the refresh rate 305e of each game played.

[0077] The data from the demographic data 306 used may include the age 306a, gender 306b, and location information 306c of each user. The data from the mobile usage data 307 can be used to determine, for example, the games played and applications used on a mobile device, and may include the start time 307a, end time 307b, application name 307c, application category 307d, and games played 307e of each game / application used. The data from the video stream data 308 can allow the determination of TV audience data (such as the type of program watched, any linear advertisements with which the user interacts, etc.), and may include the start time 308a, end time 308b, and the identification of the streamed video 308c of each streamed video watched. The data from the HDMI data 309 can provide connected device data for devices used with a smart TV (such as a game console, gaming headset, streaming device, etc.), and may include the start time 309a, end time 309b, connected device 309c, HDMI port 309d, and whether the device is a game console 309e of each device. Other data, such as data related to linear / cross-device advertisement data (such as clicks, flashes, etc.), can also be collected and used.

[0078] The data from the data source 300 can be weighted and used during feature engineering 201. In some cases, the data from the data source 300 can be weighted in the following manner.

[0079] -game_usage_based_weight ∈ [0..1] (Based on game exposure count or session duration such that users with a large number of exposures will have a higher weight)

[0080] -mobile_app_game_usage_weight ∈ [0..1] (Based on mobile game app usage where users who frequently use mobile game apps have a higher weight)

[0081] -game_mode_usage weight ∈ [0..1] (For those users who use the game mode feature on their smart TVs, the weight indicates whether the user regularly uses this feature when playing games on the TV)

[0082] -screen_size (One-hot encoded vector of bucketized screen sizes)

[0083] -screen_resolution (One-hot encoded vector of bucketized screen resolutions)

[0084] -video_streaming_weight ∈ [0..1] (If the user is a heavy streamer, this feature will have a higher weight)

[0085] -Average time between b / w exposures (If two exposures are far apart, the average time will be higher and can indicate that the user is stuck at a certain stage in the game)

[0086] -TV usage weight ∈ [0..1] (Based on the number of viewers such that users who watch a large amount of TV will have a higher weight)

[0087] -TV app usage weight ∈ [0..1] (Based on the number of TV app viewers such that users who frequently watch TV apps will have a higher weight)

[0088] -Click weight ∈ [0..1] (Based on ad clicks such that users who frequently click on ads will have a higher weight)

[0089] -Impression weight [∈0..1] (Based on ad impressions such that users who frequently receive ad impressions will have a higher weight).

[0090] In some embodiments, the feature engineering pipeline in Feature Engineering 201 uses a combination of one-hot encoding and the word2vec algorithm to create features. The variational autoencoder algorithm can also be used to identify outliers in the data. Various models can be pre-trained, which saves a significant amount of time in running the pipeline.

[0091] Although Figure 3 illustrates an example data source 300 of the process flow 200 that can be used for Figures 2A to 2C , various changes can be made to Figure 3 . For example, the process flow 200 can use any suitable data from any suitable data source and is not limited to Figure 3 the specific data and data source shown in

[0092] Figure 4A and Figure 4B illustrate an example system 400 and related details that support a sequence-based method for device-level targeting as part of multi-scale multi-granularity targeting for game users according to embodiments of the present disclosure. For ease of explanation, Figure 4A and Figure 4B the system 400 shown in Figure 1A is described as being implemented on or supported by one or more components (such as the electronic device 101, the server 106, or both) in the network configuration 100 of Figure 4A and Figure 4B . However, the system 400 can be used with any other suitable device and can be used in any other suitable system. In addition, Figure 4A and Figure 4B the system 400 shown in Figures 2A to 2C is described as being implemented for the process flow 200 of

[0093] As Figure 4A shown, the embedding layer 403 receives the game exposure data 401 of each user and device's historical game sessions and the game exposure data 402 of the current game session. A user's historical sessions can have a significant impact on the user's current preferences. In Figure 4A the model formulation of the embodiments, each historical session is a fixed time window (which can be defined as, for example, two hours or other time periods), and the user interactions that occur within that time window are part of the session. The embedding layer 403 embeds the item embeddings 404 into the data 401 and 402. For example, at least the game name can be embedded, although a richer session representation can be obtained if other actions performed by the user during the same session are also embedded along with the game name. Examples of other actions can include whether the game mode feature was turned on during the session, whether the gaming headset was also connected to the TV, etc. The created embeddings can consider multiple factors, which is different from traditional methods where only the game name is considered for embedding.

[0094] Data from one or more "stitched" sessions (where stitching has been described above) and all names that occur within a predefined time window can be used to define a graph structure. For example, the output of the item embedding layer 403 can be received by the GNN layer 405, which can continue to maintain the current session data separate from the historical data. The GNN layer 405 uses the output of the item embedding layer 403 as well as the user embedding 406 to create a graph that captures how the user interacts with the game names in the session. In some cases, the GNN layer 405 is a state-of-the-art model for extracting session-level embeddings, and the session-level graph data is fed into the GNN layer 405 to extract session embeddings. Notably, a copy of the user embedding 406 can be passed to the GNN layer 405, which is different from traditional GNNs that do not inherently consider user embeddings when updating the graph during training time. Thus, Figure 4A The implementation can be referred to as a "session-aware" recommendation system and is an improvement over strictly session-based recommendation systems.

[0095] In some embodiments, the GNN layer 405 constructs a graph from user game exposures in the Figure 5 manner shown. Figure 5 Shows an example of creating a subgraph for each session using the Figure 4A GNN layer 405 within the present disclosure. In this example, 510 depicts the game session data of a user, and 520 depicts the corresponding subgraph. In the example shown in 510, for five game names ("A", "B", "C", "D", and "E"), the game exposure data 401 of the historical game session 501 includes (i) a first session where the user starts with the name "D" and transitions to the name "B", then to the name "C", and finally to the name "D"; (ii) a second session where the user starts with the name "B" and transitions to the name "C", then to the name "E"; and (iii) a third session where the user starts with the name "A" and transitions to the name "C", then to the name "A", and finally to the name "B". The game exposure data 402 of the current game session 502 includes the user starting with the name "A" and transitioning to the name "C", then to the name "D".

[0096] The corresponding sub - figure shown in 520 consists of the session data of the historical game session 501 and the current game session 502, and includes five names and the number of transitions (directional designations) between them. The user transitions from name "A" to name "C" twice, and from name "C" to name "A" once. From name "C", the user transitions to name "D" twice and to name "E" twice. The user transitions from name "D" to name "B" twice, and from name "B" to name "C" twice. The user never transitions from name "A" to any of name "D" or name "E". The user also never transitions from name "B" to any of name "A", "D", or "E", never from name "C" to any of name "B" or name "E", never from name "D" to any name other than name "B", and never from name "E" to any other name.

[0097] Return reference Figure 4A , the output of the GNN layer 405 includes the historical item transition relationship 407 and the current session item relationship 408. Once the historical item transition relationship 407 and the current session item relationship 408 are determined, the historical item transition relationship 407 passes through the pooling layer 409 to obtain a single representation of all historical sessions in a single vector 410. For example, the historical item transition relationship 407 can be received by the pooling layer 409, and the pooling layer 409 can combine those historical item transition relationships 407 for session - level embedding to form a session - level transition relationship of the embedding in the form of the historical session vector 410.

[0098] The dot - product between the historical session vector 410 and the vector representing the current session item relationship 408 gives a representation of the dependency between the two vectors. In some cases, the historical session vector 410 for the session - level transition relationship (with embedding) and the vector representing the current session item relationship 408 for the current session item relationship are received by the attention layer 411. The attention layer 411 can determine the relationship between the past and current game sessions. For example, the attention layer 411 can implement the following softmax function.

[0099]

[0100] Here, Q is the query, K is the key, and V is the value. The attention layer 411 produces a session - level representation of the user's game behavior, such as a rich representation 412 of session - level information. Once obtained, the feature space can be further enhanced by augmenting the vector with the user embedding 406 and some other features 414 (such as hardware features, TV viewing behavior, etc.). In some cases, the rich representation 412 of session - level information is concatenated with the user embedding 406 and optionally with other features 414 to form a concatenated session data 413 with user information.

[0101] The cascaded session data 413 is received by a DNN model, which is a fully connected network (FCN) 415 in the Figure 4A example, to predict the likelihood that the user will play a specific game name next. The FCN 415 is a feed-forward neural network that takes the cascaded session data 413 as input and predicts the probability that the user will play a game name next, such as by using a sigmoid function. Figure 4B An example embodiment of the FCN 415 is depicted in more detail. In this example, the FCN 415 implements a series of hidden layers 420-422. Each hidden layer 420-422 uses a function that applies weights to its inputs (such as the cascaded session data 413 for hidden layer 420 and the outputs of the previous hidden layer within the sequence for each of hidden layers 421 and 422) and passes these inputs through an activation function (such as a sigmoid function) to produce its output. The output 416 of the FCN 415 is the probability that each user will play the target game name. Collectively, the hidden layers 420-422 can implement a decision layer that identifies whether the user will play the name "X" next. In some cases, if the probability is greater than 0.5, the output 416 generated for that game name is 1; otherwise, the output 416 generated for that game name is 0. Those skilled in the art will recognize that while this example embodiment utilizes the FCN 415, the FCN 415 can be replaced with any other suitable architecture, such as a convolutional neural network (CNN), a deep reinforcement learning layer, etc.

[0102] Although Figure 4A and Figure 4B illustrate an example of a system 400 and related details that support a sequence-based method for device-level targeting as part of a multi-scale multi-granularity targeting for game users, various changes can be made to Figure 4A and Figure 4B . For example, Figure 4A and Figure 4B the various components or functions within can be combined, further fragmented, replicated, rearranged, or omitted according to specific needs. Additionally, one or more additional components or functions can be included if desired or necessary. Although Figure 5 illustrates an example of creating a subgraph for each session using the GNN layer 405 within Figure 4A , various changes can be made to Figure 5 . For example, any other suitable technique can be used to create a subgraph for each session.

[0103] Figure 6 illustrates an example system 600 according to the present disclosure that supports a sequence-based method for home-level targeting as part of a multi-scale multi-granularity targeting for game users. For ease of explanation, Figure 6The system 600 shown in is described as being implemented on or supported by one or more components (such as electronic device 101, server 106, or both) in the network configuration 100 of Figure 1A However, system 600 can be used with any other suitable device and can be used in any other suitable system. Additionally, Figure 6 The system 600 shown in is described as being implemented for the Figures 2A to 2C process flow 200, but system 600 can be used with any other suitable process. Since Figure 6 is largely similar to Figure 4A , the functions that are the same or similar will not be repeated hereinafter.

[0104] Figure 6 The system 600 shown in is used to accumulate data from multiple devices of a single household, where the data can be processed according to the device type. In the Figure 6 example shown, the set of devices 620 of a single household includes four devices, namely two smart TVs 620a - 620b and two mobile phones 620c - 620d. As described above, the devices of a household can be identified in any suitable manner, such as based on device location (either alone or in combination with other information related to the device and / or user). Those skilled in the art will understand that system 600 can be easily extended to a larger number of devices and also to a larger number of device categories. For example, computers used for gaming (such as desktop computers and / or laptop computers) can be processed separately from smart TVs and mobile phones (even if games are played using applications on the computer), and the category can also be extended to specifically include gaming consoles as a separate category. Additionally, those skilled in the art will recognize that multiple users can be associated with a particular device (such as smart TV 620b), and the discussion of user - specific data in conjunction with Figure 4A is applicable even if not explicitly stated below.

[0105] Since feature engineering 201 creates features at the device level, the device - level features can be aggregated to the household level. This can be achieved using the computational layer household device feature creation layer 621, which can use in combination with Figure 9A and 9BThe autoencoder method discussed in detail. For each household, a household embedding matrix (formed by household embedding 606) can be created to represent the characteristics of that household. That is, the game exposure data of the historical and current game sessions of each device (and each user) can be received by the household device feature creation layer 621, and the household device feature creation layer 621 aggregates the game exposure data by category. Thus, the historical game session game exposure data 601 can include separate data sets for different device categories and can be embedded with item embeddings 404 (although not explicitly depicted for simplicity, one or more instances of the embedding layer 403 can perform the embedding). Similarly, the current game session game exposure data 602 can include separate data sets for different device categories. These can be processed separately (such as sequentially or in parallel) by at least one GNN layer 605, which can operate in the same or similar manner as described above in conjunction with Figure 4A The same or similar way as described above. A copy of the household embedding 606 is also provided to the output of the GNN layer 605. The household embedding 606 can at least include the user embedding 406.

[0106] The GNN layer 605 can operate to construct separate graphs for user game exposure (such as by device category) to produce a set of historical item transition relationships 607 and a set of current session item relationships 608 (each of which can also be by device category). At least one pooling layer 609 operates on the set of historical item transition relationships 607, such as in the same or similar manner as discussed above for the pooling layer 409, to produce a separate representation 610 of the historical session as a single vector (such as for each device category). The attention layer 411 operates on the separate representation 610 output by the pooling layer 609 and the vector representing the current session item relationships 608 for the current game session (such as by device category). The output of the attention layer 411 can be cascaded (at block 612) for various device categories. The concatenation of session data and user information (to form concatenated session data 413) can be performed using the household embedding 606 and other features 614 (which may or may not be different from other features 414).

[0107] As is obvious here, Figure 6 The model building in Figure 4AThe device model employed in [description]. However, in this case, there can be multiple individual GNN layers 605 that are simultaneously trained for (i) extracting information from smart TV sessions and (ii) extracting information from mobile phone sessions. The attention layer 411 is applied to the outputs of both the GNN layer 605 for each device type and the current session vector 608. The attention outputs can be concatenated (at box 612) to create the final session feature representation of the household. The concatenated household session vector output by the concatenation layer (block 612) can be enhanced with some more features (to form the rich representation 412) to further enrich the vector space, and the rich representation can be passed through the classifier model (FCN 415) for the final prediction 616. Again, in some cases, a DNN architecture with a sigmoid function applied can be used to perform this operation and calculate the probability for each name.

[0108] In some embodiments, the pipeline for Figure 4A and Figure 6 feature engineering 201 of the model can be fully offline because the start and end times are user inputs. Note that the terms "offline" and "online" merely mean referring to different levels of data interaction with one or more user devices (such as electronic devices or devices 101, 102, 104) where the game exposure occurs. In one example, the electronic device 101 can be a smart TV, and the electronic device 102 can be a smart phone (both can be used by the same user for the game). Additionally, there is a significant overlap because the same features may need to be created again and again. In some cases, the pipeline can be designed in a way that features can be reused, thus reducing the running time during training and inference.

[0109] Although Figure 6 shows an example of a sequence-based method for household-level targeting that supports multi-scale multi-granularity targeting for game users, various changes can be made to Figure 6 it. For example, Figure 6 various components or functions in [description] can be combined, further fragmented, copied, rearranged, or omitted according to specific needs. Additionally, one or more additional components or functions can be included if needed or desired.

[0110] Figure 7 and Figure 8 show examples of how feature aggregation according to the present disclosure can work on categorical features in the process flow 200 of Figures 2A to 2C [description]. More specifically, Figure 7 shows an example of metadata features, and Figure 8 shows an example of time-based features.

[0111] As Figure 7As shown, the feature aggregation of metadata classification features is illustrated. Since the user is likely to interact with the smart TV multiple times while playing a game (as well as before and after), metadata features corresponding to user behavior can be aggregated. For example, each game name can correspond to multiple types, and a multi-hot encoding can be used to represent the type features of each exposure, such as Figure 7 shown. In the depicted example, for all game names of interest, there are three types, such as corresponding to Figure 7 "Action", "Role-Playing", and "First Person" in the three columns on the left. There are also four game name rating values "E10+", "A", "M", and "T" corresponding to the Figure 7 columns on the right. The user has two exposures corresponding to the Figure 7 top row in. The first exposure is a game name with two types, "Action" and "Role-Playing", and both are rated "T". The second exposure is a game name with two types, "Role-Playing" and "First Person", and is rated "A". The aggregation (maximum, average, etc.) of the two exposures can correspond to the user's final type vector. In this scenario, using the average as the aggregation technique, the final vector can be calculated as shown in the Figure 7 bottom row, where [0.5, 1, 0.5] is the average of the metadata category types, and [0, 0.5, 0, 0.5] is the average of the metadata category ratings.

[0112] As Figure 8 shown, the feature aggregation of time-based classification features is illustrated. Game behavior tends to be significantly correlated with the time of playing the game. For example, users are usually more active during weekends and later in the day. For each exposure, one-hot encoding can be used based on hours and days of the week, and the resulting vectors can be averaged to obtain a final representation of the user's time preference. In the Figure 8 example, which only involves one day of the week, the user has three exposures on Saturday, two exposures on Monday, five exposures on Friday, and no exposures on any other day (a total of 10 exposures during the week). The vector calculation represents the number of exposures as a fraction of the total number of exposures in decimal, which results in 0.3 for Saturday, 0.2 for Monday, and 0.5 for Friday in this example.

[0113] Although Figure 7 and Figure 8 illustrate how feature aggregation can work for an example of classification features in the Figures 2A to 2C process flow 200, various changes can be made to Figure 7 and Figure 8 . For example, Figure 7 and Figure 8The specific content shown is for illustration and explanation only. Additionally, any other suitable techniques can be used for feature aggregation.

[0114] Figure 9A and Figure 9B illustrates an example operation 900 of a pipeline for feature engineering 201 according to the present disclosure. In this example, features are created at the device level, such as in connection with Figure 2A above, Figure 4, Figure 3 and Figure 7 and Figure 8 as explained. Once the features of each device in the home are aggregated as discussed in connection with Figure 6 , features are also created at the home level. As shown in Figure 9A , operation 900 illustrates this process, where the example shown involves a feature vector length of three in device-level feature 901 and involves two homes 902, namely Home 1 903 (which has two smart TVs 905 to 906 and two mobile devices 907 to 908) and Home 2 904 (which has one smart TV 909 and three mobile devices).

[0115] As can be seen in Figure 9A , an aggregation layer 913 is introduced. Although two aggregations (max aggregation 914 and average aggregation 915) are shown, the number of aggregations can be changed to any desired number. Aggregation layer 913 generates a feature vector for each device type (in this embodiment, smart TVs and mobile devices) per home. In this case, this results in the generation of Home 1 TV max feature 917, Home 1 mobile max feature 918, Home 1 TV average feature 919, Home 1 mobile max feature 920, Home 2 TV max feature 921, Home 2 mobile max feature 922, Home 2 TV average feature 923, and Home 2 mobile max feature 924.

[0116] The outputs of aggregation layer 913 are concatenated to generate a single vector for each home, which in this example creates Home 1 concatenated feature vector 926 and Home 2 concatenated feature vector 927. Those vectors are passed through an autoencoder network 928 to extract a low-dimensional representation of the same size as the input features. This provides the flexibility to perform personal and home-level predictions using the same model structure. Figure 9B illustrates an example operation of autoencoder network 928. The size of the latent dimension of the output features is the same as the input feature vector size.

[0117] Although Figure 9A and Figure 9B illustrates an example of operation 900 of a pipeline for feature engineering 201 for Figure 2A , it is possible to Figure 9A and Figure 9BMake various changes. For example, Figure 9A and Figure 9B the various components or functions in can be combined, further fragmented, copied, rearranged, or omitted according to specific needs. Additionally, one or more additional components or functions can be included if needed or desired.

[0118] Figure 10 Shows an example operation of a multi - match check algorithm (block 208) for Figure 2A feature engineering 201 according to the present disclosure. In many cases, the time period of game exposure is recognized by the content recognition system as including different content types, such as linear advertisements (in the example shown here). To quantify this occurrence, a custom metric called "overlap score" can be used. In some embodiments, the overlap score can be defined as the sum of the overlap scores of the individual (non - game) content having game exposure. For Figure 10 the example shown, the overlap score of the game exposure overlapping with the linear advertisement can be expressed as follows.

[0119]

[0120] Here:

[0121]

[0122] In other words, for n overlapping contents:

[0123]

[0124] Figure 11 Shows an example using the overlap score determined as shown in Figure 10 In some embodiments, the multi - match metric can be employed in different ways, which is shown in Figure 11 First, to eliminate any exposures with overlap and only consider the exposures with the highest confidence, a reasonable threshold on the overlap score can be identified as a predefined overlap score threshold. Any game exposure having an overlap score exceeding the predefined overlap score threshold can be eliminated from use. Although threshold 1 might seem reasonable, since this value represents game exposures that completely overlap with other content, it is not very reliable, and this value (although very precise) might lead to unnecessary information loss. A slightly higher or lower predefined overlap score threshold can be used to ensure the accuracy of determining the game exposure duration.

[0125] Second, the average overlap score of the users themselves can be used as a feature and fed into a machine learning model. The weights determined by training a machine learning model (such as in a supervised setting) can indicate the importance of the overlap score in influencing the predictive ability of the model. In some cases, feature importance can be extracted from the weight vector W of the activation function (WX + b), where X represents the value of the feature and b is the bias term. In this case, even if there are some overlapping exposures used to create the features, the machine learning model can learn interesting patterns in the data.

[0126] The two methods described above for using the overlap score determined as shown Figure 10 are shown in Figure 11 and form a process for creating the "clean" game exposures as described above. In process 1100, the game logs are read (block 1101), and it is determined whether the overlap score will be used as a machine learning feature (block 1102). If not, a suitable threshold is identified (block 1103), and any high-overlap exposures are eliminated (block 1104). The remaining "clean" game exposures (after removing the high-overlap exposures) are provided to feature generation 211 and the machine language model 1107 (such as the DNN model 227). If the overlap score will be used as a machine learning feature, the average overlap score for each device is calculated (block 1105) and used as a feature for the machine learning model. The average overlap score for each device can be provided to feature generation 211 and used by the machine language model 1107. The machine language model 1107 can provide an indication of the importance of the overlap score in predicting the name of the next game the user might play back to the machine language model used in block 1105. The machine language model 1107 outputs final segment data 1108 for each device, which can be used to populate the device-level feature database 212.

[0127] Although Figure 10 shows an example of the operation of the multi-match check algorithm for feature engineering 201 in Figure 2A and Figure 11 shows an example of using the overlap score determined as shown Figure 10 , various changes can be made to Figure 10 and Figure 11 . For example, Figure 10 and Figure 11 the various components or functions in can be combined, further segmented, copied, rearranged, or omitted according to specific needs. Additionally, one or more additional components or functions can be included if desired or needed. Further, although shown as a series of steps, Figure 11 the various steps in can overlap, occur in parallel, occur in a different order, or occur any number of times.

[0128] Figure 12An example alternative embodiment of the machine learning components for the multi-scale multi-granularity targeting process flow 1200 for gaming users according to the present disclosure is shown. Figure 13 An example replacement system 1300 for a sequence-based method for device-level targeting implemented in support of the process flow 1200 according to the present disclosure is shown. The process flow 1200 uses the same feature engineering 201 and application 203 as the process flow 200 described above. For simplicity and clarity, the description of those parts of the process flow 1200 is not repeated. Additionally, many of the machine learning components 1202 for the process flow 1200 are the same as or similar to the Figure 12 machine learning components 202 depicted in Figure 2B above. However, the home-level machine learning 1218 and the device-level machine learning 1219 differ from the home-level machine learning 218 and the device-level machine learning 219 in that the GNN layers 220-221 are replaced by transformer layers 1220-1221, respectively.

[0129] Similarly, Figure 13 most of the system 1300 in Figure 4A is the same as or similar to the system 400 in

[0130] Figure 14 However, the GNN layer 405 is replaced by a transformer layer 1305. A positional encoding 1301 is introduced to format the game exposure data 401 of each user's and device's historical game sessions received by the embedding layer 403. Additionally, the pooling layer 409 and the attention layer 411 are replaced by a concatenation layer 1309, which receives and concatenates the historical item transition relationships 407 and the current session item relationships 408 to form a rich representation 412. Figure 13 An example transformer layer 1305 for use in the system 1300 according to the present disclosure is shown. As Figure 14 shown, the transformer layer 1305 receives the input to the transformer at the multi-head self-attention layer 1401, which integrates the self-attention mechanism and a multi-layer perceptron. The input to the transformer layer 1305 is also received at the addition and normalization layer 1402, which adds the vector from the input and the vector from the output of the multi-head self-attention layer 1401 and normalizes the result. The output of the addition and normalization layer 1402 is received by the feed-forward neural network 1403 and the addition and normalization layer 1404. The feed-forward neural network 1403 can represent a single-layer perceptron network. The addition and normalization layer 1404 adds the vectors from the addition and normalization layer 1402 and from the feed-forward neural network 1403 and normalizes the result as the output of the transformer layer 1305.

[0131] Although Figures 12 to 14Shows an example of an alternative embodiment of the machine learning components for the multi-scale multi-granularity targeting process flow 1200 for gaming users, and an example of an alternative system 1300 and related details that support a sequence-based method for device-level targeting implemented for the process flow 1200, but various changes can be made to Figures 12 to 14 For example, Figures 12 to 14 Various components or functions in can be combined, further fragmented, copied, rearranged, or omitted according to specific needs. Additionally, if needed or desired, one or more additional components or functions can be included.

[0132] It should be noted that Figures 2A to 14 The functions shown in or regarding Figures 2A to 14 can be implemented in the electronic device 101, the server 106, or other devices in any suitable manner. For example, in some embodiments, one or more software applications or other software instructions executed by the processor 120 of the electronic device 101, the server 106, or other devices can be used to implement or support the functions regarding Figures 2A to 14 shown in or Figures 2A to 14 described in at least some of. In other embodiments, dedicated hardware components can be used to implement or support Figures 2A to 14 the functions shown in or regarding Figures 2A to 14 described in at least some of. Generally, any suitable hardware or any suitable combination of hardware and software / firmware instructions can be used to execute the functions regarding Figures 2A to 14 shown in or Figures 2A to 14 described in.

[0133] Figure 15 Shows an example method 1500 for multi-scale multi-granularity targeting for gaming users according to the present disclosure. For ease of explanation, method 1500 is described with reference to process flow 200 and system 600. However, method 1500 can be used with any suitable process flow and system, and can be easily modified to accommodate changes in the underlying process flow and / or system.

[0134] As Figure 15 shown, based on a sequence diagram-based model, game exposure information on a predefined time window is obtained, including device-level preferences and household-level preferences (step 1502). For example, the game exposure information can be obtained through Figure 2A feature extraction and session generation (box 217) in. One or more original user behavior sessions are combined (or "stitched") into a game session based on the obtained game exposure information (step 1504). For example, as can be used as Figure 2APerform a stitching session with the clean exposure shown in frame 209. Provide a scoring metric to (i) check the degree of multi-matching in the obtained game exposure information and (ii) remove untrusted game exposures from the obtained game exposure information (step 1506). This can include, for example, identifying the multi-matching ratio of all exposures, as shown in Figure 2A frame 208 and in combination with Figure 10 and Figure 11 more specifically depicted and described. Based on the inference of a machine learning model trained using the game exposure information in the feature engineering pipeline, identify one or more game segments running in a production environment for the auxiliary content (step 1508).

[0135] Although Figure 15 shows an example of method 1500 for multi-scale multi-granularity targeting for game users, various changes can be made to Figure 15 it. For example, although shown as a series of steps, Figure 15 the various steps in it can overlap, occur in parallel, occur in a different order, or occur any number of times.

[0136] Figure 16 Figure 1600 shows an example method for using a trained machine learning model for multi-scale multi-granularity targeting for game users according to the present disclosure. For ease of explanation, method 1600 is described with reference to process flow 200 and system 600. However, method 1600 can be used with any suitable process flow and system and can be easily modified to accommodate changes in the underlying process flow and / or system.

[0137] As Figure 16 shown, obtain a machine learning model (trained using a feature engineering pipeline including device-level features and home-level features) (step 1602). The machine learning model can have any suitable structure, such as the DNN models 226 to 227 in Figure 2B . Using the machine learning model, generate device-level and home-level advertisement targeting inferences for one or more game segments running in a production environment (step 1604). This can be based on, for example, the final home segment 228 and the final device segment 229 in Figure 2C . According to the device-level and home-level advertisement targeting inferences, determine the type advertisement targeting inferences related to one or more game segments (step 1606). This can be based on, for example, the final type segment 231 in Figure 2C .

[0138] Although Figure 16 shows an example of method 1600 for using a trained machine learning model, various changes can be made to Figure 16 it. For example, although shown as a series of steps, Figure 16The various steps in can overlap, occur in parallel, occur in a different order, or occur any number of times.

[0139] The above-described techniques for multi-scale multi-granularity targeting for game users can be used for various purposes in various applications. Examples of usage where these techniques can be used are provided below. Note that these use cases are merely examples, and the techniques for multi-scale multi-granularity targeting for game users can be used in any other suitable manner.

[0140] In terms of advertising targeting, specific advertising campaigns can be created to target individual users because a good understanding of the user's gaming behavior has been obtained. For cross-device advertising targeting, since the user's behavior at the device level can be determined, advertisements can be created that are displayed to the user on other devices the user owns. For example. If a user only plays games on a smart TV using a game console, game advertisements can be created for the same user on his or her mobile phone.

[0141] In terms of similarity modeling, once a seed user group (seed segment) is created from a machine learning model, this seed user group can be used to expand to many other users using a distance metric to calculate similarity scores between all users, and those users closest to the seed user group can be selected.

[0142] In terms of marketing analysis, feature vectors at the device and household levels can be used to create player profiles. These feature vectors can have applications across many domains, especially in the field of marketing analysis, because the feature vectors are a rich representation of how users interact with different game names and hardware. This information can help market certain products or advertisements to customers.

[0143] In terms of recommendation systems, using a sequence-based deep learning-based method, the recommendation system can be designed to recommend game names to each user based on the user's long-term or short-term preferences for preferred game genres or (if available) preferred specific publishers.

[0144] In terms of user clustering, the generated feature vectors can be used to perform clustering of users to identify behavioral patterns between users. For example, if (after performing clustering) a user cluster that prefers night-time games can be found as opposed to another user cluster that prefers day-time games, game activities customized for each cluster can be designed differently.

[0145] Although the present disclosure has been described with reference to various example embodiments, various changes and modifications can be suggested to those skilled in the art. The present disclosure is intended to cover such changes and modifications that fall within the scope of the appended claims.

[0146] According to one aspect of the present disclosure, a method includes obtaining game exposure information over time based on a model based on a sequence diagram, where the game exposure information includes device-level preferences and household-level preferences. The method further includes combining one or more original user behavior sessions into game sessions based on the obtained game exposure information. The method also includes providing a scoring metric to (i) check the degree of multi-matching in the obtained game exposure information, and (ii) remove untrustworthy game exposures from the obtained game exposure information. Additionally, the method includes generating one or more game segments for operation in a production environment based on a feature engineering pipeline, where the one or more game segments are identified for auxiliary content based on the inference of a machine learning model trained using the game exposure information.

[0147] According to an embodiment of the present disclosure, the method further includes stitching together one or more game exposures within a specified time window to approximate a game session.

[0148] According to an embodiment of the present disclosure, obtaining game exposure information over time includes creating a graph based on the name of the game played and the user's interaction with the device on which the game name was played, where the graph represents the sequence of the user's interaction with the game name during a session.

[0149] According to an embodiment of the present disclosure, household-level preferences are derived based on the aggregation of device-level preferences for all devices in a household, and the device-level preferences for one or more smart TVs within the household are aggregated separately from the device-level preferences for one or more mobile devices within the household.

[0150] According to an embodiment of the present disclosure, generating one or more game segments for operation in a production environment includes aggregating game metadata and time information corresponding to user behavior.

[0151] According to an embodiment of the present disclosure, providing a scoring metric includes removing exposures with an overlap score greater than a predefined overlap score as untrustworthy, and determining the importance of the user's overlap score to the prediction accuracy.

[0152] According to an embodiment of the present disclosure, combining one or more original user behavior sessions into game sessions includes: creating a list of start times and end times of the user's interaction with the game name by user and game name, and for each start time within the list that is less than a specified amount different from the previous end time in the list, treating the corresponding list item as a single game session.

[0153] According to an embodiment of the present disclosure, the method further includes generating device-level and home-level advertisement targeting inferences for one or more game segments running in a production environment using a machine learning model trained using a feature engineering pipeline including device-level features and home-level features, and determining genre advertisement targeting inferences related to the one or more game segments from the device-level and home-level advertisement targeting inferences.

[0154] According to an embodiment of the present disclosure, the machine learning model is trained based on a model based on sequential graphs for information over time, the information over time including device-level preferences and home-level preferences.

[0155] According to one aspect of the present disclosure, an apparatus includes at least one processing device configured to obtain game exposure information over time based on a model based on sequential graphs, where the game exposure information includes device-level preferences and home-level preferences. The at least one processing device is further configured to combine one or more raw user behavior sessions into game sessions based on the obtained game exposure information. The at least one processing device is further configured to provide a scoring metric to (i) check a degree of multi-matching in the obtained game exposure information, and (ii) remove untrustworthy game exposure from the obtained game exposure information. Additionally, the at least one processing device is configured to generate one or more game segments running in a production environment based on a feature engineering pipeline, where the one or more game segments are identified for auxiliary content based on inferences of a machine learning model trained using game exposure information.

[0156] According to one aspect of the present disclosure, a machine-readable medium stores instructions to be executed by at least one processor to perform the method of the present disclosure.

[0157] According to one aspect of the present disclosure, a method includes generating device-level and home-level advertisement targeting inferences for one or more game segments running in a production environment using a machine learning model, the machine learning model being trained using a feature engineering pipeline including device-level features and home-level features. The method further includes determining genre advertisement targeting inferences related to the one or more game segments from the device-level and home-level advertisement targeting inferences.

[0158] Other technical features may be apparent to those skilled in the art based on the following drawings, description, and claims.

Claims

1. A method, comprising: Obtaining game exposure information over time based on a model based on a sequence diagram, the game exposure information including device-level preferences and household-level preferences; Combining one or more original user behavior sessions into game sessions based on the obtained game exposure information; Providing a scoring metric to check the degree of multi-matching in the obtained game exposure information and removing untrustworthy game exposures from the obtained game exposure information; And Generating one or more game segments operating in a production environment based on a feature engineering pipeline, the one or more game segments being for auxiliary content recognition based on the inference of a machine learning model trained using game exposure information.

2. The method according to claim 1, further comprising: Stitching together one or more game exposures within a specified time window to approximate a game session.

3. The method according to any one of claims 1 to 2, wherein Obtaining the game exposure information over time includes creating a graph based on the name of the game played and the interaction of the user with the device on which the game name was played, the graph representing the sequence of interactions of the user with the game name during a session.

4. The method according to any one of claims 1 to 3, wherein: The household-level preference is derived based on the aggregation of device-level preferences for all devices in the household; And The device-level preferences for one or more smart TVs within the household and the device-level preferences for one or more mobile devices within the household are separately aggregated.

5. The method according to any one of claims 1 to 4, wherein, Generating the one or more game segments operating in a production environment includes aggregating game metadata corresponding to user behavior and time information.

6. The method according to any one of claims 1 to 5, wherein, Providing a scoring metric includes: Removing exposures with an overlap score greater than a predefined overlap score as untrustworthy; and Determining the importance of the overlap score of the user to the prediction accuracy.

7. The method according to any one of claims 1 to 6, wherein, Combining the one or more original user behavior sessions into game sessions includes: Creating a list of start times and end times of the interactions of the user with the game name by user and game name; and For each start time within the list that differs from the previous end time in the list by less than a specified amount, treating the corresponding list item as a single game session.

8. The method according to any one of claims 1 to 7, further comprising: Using a machine learning model to generate device-level and household-level advertisement targeting inferences for one or more game segments operating in a production environment, the machine learning model being trained using a feature engineering pipeline including device-level features and household-level features; And Determining type advertisement targeting inferences related to the one or more game segments from the device-level and household-level advertisement targeting inferences.

9. The method according to any one of claims 1 to 8, wherein The machine learning model is trained based on a model based on a sequence diagram for information over time, the information over time including device-level preferences and household-level preferences.

10. An apparatus, comprising: At least one memory (130); And At least one processor (120), configured to: Obtain game exposure information over time based on a model based on a sequence diagram, the game exposure information including device-level preferences and household-level preferences; Combine one or more original user behavior sessions into game sessions based on the obtained game exposure information; Provide a scoring metric to check the degree of multi-matching in the obtained game exposure information and remove untrustworthy game exposures from the obtained game exposure information; and Generate one or more game segments to run in a production environment based on a feature engineering pipeline, where the one or more game segments are for auxiliary content recognition based on the inference of a machine learning model trained using game exposure information.

11. The apparatus according to claim 10, wherein, To obtain the game exposure information over time, the at least one processor (120) is configured to create a graph based on the name of the game played and the user's interaction with the device on which the game name was played, the graph representing the sequence of the user's interaction with the game name during a session.

12. The apparatus according to any one of claims 10 to 11, wherein: The at least one processor (120) is configured to derive household-level preferences based on the aggregation of device-level preferences of all devices in the household; and The at least one processor (120) is configured to separately aggregate the device-level preferences for one or more smart TVs within the household and the device-level preferences for one or more mobile devices within the household.

13. The device according to any one of claims 10 to 12, wherein To generate the one or more game segments to run in a production environment, the at least one processor (120) is configured to aggregate game metadata and time information corresponding to user behavior.

14. The apparatus according to any one of claims 10 to 13, wherein To provide a scoring metric, the at least one processor (120) is configured to: Remove exposures with an overlap score greater than a predefined overlap score as untrustworthy; and Determine the importance of the user's overlap score to the prediction accuracy; and wherein, to combine the one or more original user behavior sessions into a game session, the at least one processor (120) is configured to: Create a list of start times and end times of the user's interaction with the game name by user and game name; and For each start time within the list that is less than a specified amount different from the previous end time in the list, consider the corresponding list item as a single game session.

15. A machine-readable medium storing instructions that will be executed by at least one processor to perform the method according to any one of claims 1 to 9.