CN112837095A - Object distribution method and system - Google Patents
Object distribution method and system Download PDFInfo
- Publication number
- CN112837095A CN112837095A CN202110138578.3A CN202110138578A CN112837095A CN 112837095 A CN112837095 A CN 112837095A CN 202110138578 A CN202110138578 A CN 202110138578A CN 112837095 A CN112837095 A CN 112837095A
- Authority
- CN
- China
- Prior art keywords
- class
- objects
- type
- matching
- sample
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 67
- 238000009826 distribution Methods 0.000 title claims description 25
- 238000012937 correction Methods 0.000 claims abstract description 78
- 230000006870 function Effects 0.000 claims description 66
- 239000013598 vector Substances 0.000 claims description 38
- 230000000875 corresponding effect Effects 0.000 claims description 34
- 230000014509 gene expression Effects 0.000 claims description 26
- 238000012545 processing Methods 0.000 claims description 26
- 230000004048 modification Effects 0.000 claims description 16
- 238000012986 modification Methods 0.000 claims description 16
- 238000013528 artificial neural network Methods 0.000 claims description 14
- 230000002596 correlated effect Effects 0.000 claims description 11
- 238000003860 storage Methods 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 7
- 238000010276 construction Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 14
- 238000012549 training Methods 0.000 description 9
- 230000035945 sensitivity Effects 0.000 description 7
- 230000008901 benefit Effects 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 238000012886 linear function Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 229910006119 NiIn Inorganic materials 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0207—Discounts or incentives, e.g. coupons or rebates
- G06Q30/0214—Referral reward systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0207—Discounts or incentives, e.g. coupons or rebates
- G06Q30/0235—Discounts or incentives, e.g. coupons or rebates constrained by time limit or expiration date
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Accounting & Taxation (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Entrepreneurship & Innovation (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Game Theory and Decision Science (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Biology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
The embodiment of the specification discloses an object allocation method and an object allocation system, wherein the method is executed by at least one processor and comprises the following steps: acquiring characteristic information of a first class of objects to be matched; determining matching values of the first class object and two or more candidate second class objects respectively based on the characteristic information of the first class object and the characteristic information of the two or more candidate second class objects; acquiring matching correction parameters; and selecting a target second-class object from the two or more candidate second-class objects and allocating the target second-class object to the first-class object based on at least the matching correction parameter and the two or more matching values.
Description
Technical Field
The present disclosure relates to the internet field, and in particular, to an object allocation method and system.
Background
In the actual production and living field, problems that one kind of object needs to be allocated to another object are often faced, and certain constraint conditions need to be considered in the allocation process. How to complete the distribution automatically, efficiently and accurately becomes a difficult problem to be solved.
Disclosure of Invention
One of the embodiments of the present specification provides an object allocation method, which is executed by at least one processor, and includes: acquiring characteristic information of a first class of objects to be matched; determining matching values of the first class object and two or more candidate second class objects respectively based on the characteristic information of the first class object and the characteristic information of the two or more candidate second class objects; acquiring matching correction parameters; and selecting a target second-class object from the two or more candidate second-class objects and allocating the target second-class object to the first-class object based on at least the matching correction parameter and the two or more matching values.
One of the embodiments of the present specification provides an object distribution system, including: the characteristic acquisition module is used for acquiring characteristic information of a first class of objects to be matched; the matching value determining module is used for determining the matching values of the first class object and two or more candidate second class objects respectively based on the characteristic information of the first class object and the characteristic information of the two or more candidate second class objects; the parameter acquisition module is used for acquiring matching correction parameters; and the distribution module is used for selecting a target second-class object from the two or more candidate second-class objects and distributing the target second-class object to the first-class object at least based on the matching correction parameter and the two or more matching values.
One of the embodiments of the present specification provides an object allocation apparatus, which includes a processor and a memory; the memory is used for storing instructions, and the processor is used for executing the instructions so as to realize the object distribution method.
One of the embodiments of the present specification provides a computer-readable storage medium, where the storage medium stores computer instructions, and when the computer reads the computer instructions in the storage medium, the computer executes the object allocation method.
One of the embodiments of the present specification provides a method for determining matching correction parameters for object assignment, the method being performed by at least one processor and comprising: constructing an equivalent objective function; minimizing the equivalent objective function is equivalent to maximizing a matching value under a preset constraint condition, wherein the matching value is equal to a sum of matching values of a plurality of first-class objects and second-class objects matched with the first-class sample objects when the first-class sample objects and the second-class objects matched with the first-class sample objects are given; the equivalent objective function is associated with the match correction parameters and the match values for a given plurality of first class objects and their matching second objects; determining a plurality of first-class sample objects, a plurality of first-class associated objects having association relations with the first-class sample objects, and second-class objects respectively allocated to the first-class sample objects; acquiring second graph data; the second graph data comprises nodes respectively corresponding to a plurality of first-class sample objects and a plurality of first-class associated objects having association relations with the first-class sample objects, and the edge weight information among the nodes in the second graph data reflects the association relations among the corresponding objects; processing the second graph data by utilizing a graph neural network to obtain vector expressions of a plurality of first-class sample objects; determining the matching value of the first type sample object and the second type object thereof based on the vector expression of the first type sample object and the characteristic information of the second type object thereof, and further obtaining the matching value of each first type sample object and the second type object thereof; substituting the matching value into the equivalent objective function, and determining a matching correction parameter, wherein the matching correction parameter can enable the equivalent objective function to obtain a minimum value under the matching value.
One of the embodiments of the present specification provides a matching correction parameter determination system for object allocation, which includes: the function construction unit is used for constructing an equivalent objective function; minimizing the equivalent objective function is equivalent to maximizing a matching value under a preset constraint condition, wherein the matching value is equal to a sum of matching values of a plurality of first-class objects and second-class objects matched with the first-class sample objects when the first-class sample objects and the second-class objects matched with the first-class sample objects are given; the equivalent objective function is associated with the match correction parameters and the match values for a given plurality of first class objects and their matching second objects; the object determining unit is used for determining a plurality of first-class sample objects, a plurality of first-class associated objects having association relation with the first-class sample objects, and second-class objects respectively allocated to the first-class sample objects; a drawing data acquisition unit for acquiring second drawing data; the second graph data comprises nodes respectively corresponding to a plurality of first-class sample objects and a plurality of first-class associated objects having association relations with the first-class sample objects, and the edge weight information among the nodes in the second graph data reflects the association relations among the corresponding objects; the graph data processing unit is used for processing the second graph data by utilizing a graph neural network to obtain vector expressions of a plurality of first type sample objects; the matching value determining unit is used for determining the matching value of the first type sample object and the second type object based on the vector expression of the first type sample object and the characteristic information of the second type object, and further obtaining the matching value of each first type sample object and the second type object; and the parameter calculation unit is used for substituting the matching value into the equivalent objective function and determining a matching correction parameter, and the matching correction parameter can enable the equivalent objective function to obtain a minimum value under the matching value.
One of the embodiments of the present specification provides an apparatus for matching correction parameter determination for object assignment, the apparatus comprising a processor and a memory; the memory is used for storing instructions, and the processor is used for executing the instructions to realize the matching correction parameter determination method for object allocation.
One of the embodiments of the present specification provides a computer-readable storage medium, where the storage medium stores computer instructions, and when the computer reads the computer instructions in the storage medium, the computer executes the above method for determining matching correction parameters for object allocation.
Drawings
The present description will be further explained by way of exemplary embodiments, which will be described in detail by way of the accompanying drawings. These embodiments are not intended to be limiting, and in these embodiments like numerals are used to indicate like structures, wherein:
FIG. 1 is a schematic diagram of an application scenario of an object distribution system in accordance with some embodiments of the present description;
FIG. 2 is an exemplary flow diagram of an object allocation method according to some embodiments of the present description;
FIG. 3 is an exemplary flow diagram illustrating obtaining feature information for a first class of objects to be matched according to some embodiments of the present description;
FIG. 4 is an exemplary flow diagram illustrating the determination of match correction parameters according to some embodiments herein;
FIG. 5 is an exemplary flow diagram illustrating the determination of a target second class object based on a match correction parameter and a match value according to some embodiments of the present description;
FIG. 6 is a modular schematic diagram of an object distribution system according to some embodiments of the present description;
FIG. 7 is a modular schematic diagram of a match correction parameter determination system according to some embodiments described herein.
Detailed Description
In order to more clearly illustrate the technical solutions of the embodiments of the present disclosure, the drawings used in the description of the embodiments will be briefly described below. It is obvious that the drawings in the following description are only examples or embodiments of the present description, and that for a person skilled in the art, the present description can also be applied to other similar scenarios on the basis of these drawings without inventive effort. Unless otherwise apparent from the context, or otherwise indicated, like reference numbers in the figures refer to the same structure or operation.
It should be understood that "system", "apparatus", "unit" and/or "module" as used herein is a method for distinguishing different components, elements, parts, portions or assemblies at different levels. However, other words may be substituted by other expressions if they accomplish the same purpose.
As used in this specification and the appended claims, the terms "a," "an," "the," and/or "the" are not intended to be inclusive in the singular, but rather are intended to be inclusive in the plural, unless the context clearly dictates otherwise. In general, the terms "comprises" and "comprising" merely indicate that steps and elements are included which are explicitly identified, that the steps and elements do not form an exclusive list, and that a method or apparatus may include other steps or elements.
Flow charts are used in this description to illustrate operations performed by a system according to embodiments of the present description. It should be understood that the preceding or following operations are not necessarily performed in the exact order in which they are performed. Rather, the various steps may be processed in reverse order or simultaneously. Meanwhile, other operations may be added to the processes, or a certain step or several steps of operations may be removed from the processes.
FIG. 1 is a schematic diagram of an application scenario of an object distribution system according to some embodiments of the present description.
As shown in FIG. 1, object distribution system 100 includes a first class of objects 110, a second class of objects 120, a server 130, and a network 140.
The first type of object 110 is a distribution recipient when the system 100 performs a distribution operation. In some embodiments, the first type of object may be an entity (e.g., a company, a service provider, a user, a merchant or a city, etc.) and may also be an information item (e.g., an account, a user account number, etc.).
The second class of objects 120 are objects that are allocated when the system 100 performs an allocation operation. In some embodiments, the second class of objects may also be entities (e.g., orders, funds, resources, etc.) or items of information (e.g., vouchers, orders, etc.).
In some embodiments, first class of objects 110 and second class of objects 120 may be entities or items of information from a group including, but not limited to, the financial industry, insurance industry, internet industry, automotive industry, catering industry, telecommunications industry, energy industry, entertainment industry, sports industry, logistics industry, medical industry, security industry, and the like.
For example, in one scenario, the first class object 110 may be a service provider, the second class object 120 is an order that needs to be executed; in another scenario, the first class of objects 110 may be platform users and the second class of objects 120 may be rewards that the platform issues to the users to encourage or guide the platform users through certain actions or operations. Including but not limited to a red envelope, voucher, or cash. It should be noted that the above two scenarios are only used as examples and are not intended to limit the scope of the present specification.
The server 130 may be a single server or a group of servers. The set of servers may be centralized or distributed (e.g., server 130 may be a distributed system). In some embodiments, the server 130 may be regional or remote. In some embodiments, the server 130 may be implemented on a cloud platform or provided in a virtual manner. By way of example only, the cloud platform may include a private cloud, a public cloud, a hybrid cloud, a community cloud, a distributed cloud, an internal cloud, a multi-tiered cloud, and the like, or any combination thereof. In some embodiments, server 130 may include processor 135. Processor 135 may process data and/or information obtained from other devices or system components. The processor may execute program instructions based on the data, information, and/or processing results to perform one or more of the functions described herein. For example, the processor 135 may process the feature information of the first type object and the feature information of the plurality of second type objects, determine a matching value between the first type object and each of the second type objects, obtain a matching modification parameter, and select one of the plurality of second type objects to be assigned to the first type object based on the matching modification parameter and each of the matching values. For example, the processor 135 may assign an order to a service provider or assign an award to a user based on the methods described above. In some embodiments, the processor 135 may include one or more sub-processing devices (e.g., single core processing devices or multi-core processing devices). Merely by way of example, the processor 135 may include a Central Processing Unit (CPU), an Application Specific Integrated Circuit (ASIC), an Application Specific Instruction Processor (ASIP), a Graphics Processing Unit (GPU), a Physical Processing Unit (PPU), a Digital Signal Processor (DSP), a Field Programmable Gate Array (FPGA), a programmable logic circuit (PLD), a controller, a micro-controller unit, a Reduced Instruction Set Computer (RISC), a microprocessor, or the like or any combination thereof.
In some embodiments, in assigning the second class of objects to the first class of objects, certain properties of the second class of objects, such as the value of the reward or order for the second type of object, the color and shape of the item of the second type of object, or the geographic location of the destination for the second type of object, is directly proportional to the aggressiveness of the first type of object feedback, taking the service provider as the first class object and the order as the second class object, the service provider is more likely to be matched to orders with higher amounts (it can be considered that such assignment corresponds to higher matching values), while the service provider is less satisfied with the order matched to the lower amount (the matching value corresponding to the allocation is considered to be lower), and taking the user who performs physical examination at a fixed point as the first object, the user is more likely to be matched to the physical examination center which is closer to the location of the user to perform physical examination (the matching value corresponding to the allocation is considered to be higher).
However, in the actual execution process, some attributes of the second class object may be restricted from being fixed, for example, in the first scenario, orders with higher amount and orders with lower amount are placed, and for some service providers, when frequently matched to orders with lower amount, the platform may be exited or dissatisfaction may be generated, which may cause a reduction in service effect; in another scenario, there may be a limit to the total amount of funds available for allocation to users, and there may be a portion of users that are not incentivized due to less funding; as another example, users at each physical examination center have limited reception.
In view of this, in a situation where the allocation process is constrained by some attributes of the second type of object (such as the total value of the order or the total amount of the reward or the amount of receptions), in order to perform reasonable allocation on the second type of object, an object allocation system is proposed, which combines the characteristics of the first type of object, determines the matching values of the first type of object and different second type of objects, and selects and allocates an object with a higher matching degree with the first type of object after correcting the matching values. And further, under the constraint condition, the automatic and accurate distribution of the objects is realized. It should be understood that the object allocation method provided in the present specification can also be applied to other scenarios, such as allocating a production task (second object) to a corresponding production pipeline (first class object), and the like.
FIG. 2 is an exemplary flow diagram of an object allocation method according to some embodiments of the present description.
In some embodiments, one or more steps in flow 200 may be performed by processor 135 in fig. 1. It includes:
step 210, obtaining characteristic information of the first class object to be matched. In some embodiments, step 210 may be performed by feature acquisition module 610.
In some embodiments, the first class of objects to be matched may be the first class of objects that need to receive an assignment when the platform receives an assignment request. For example, when the service platform receives an order allocation request and needs to allocate an order to the service provider, the service provider is used as a first class object to be matched, and the platform may obtain feature information of the service provider. For another example, when a certain sales platform needs to incentivize users to complete certain behaviors (such as inviting new people, guiding users to use specified products or reaching consumption standards, etc.) through rewards, the first type of objects to be matched may be users, and at this time, the characteristic information of the users may be acquired.
In some embodiments, each first class object may include one or more features. For example, when the first type object is a user, the characteristic information may include age, gender, credit status, consumption habits, and the like. In some embodiments, the characteristic information may also be digitized, such as "0" indicating that the gender of the user is female, "1" indicating that the gender of the user is male, and so on. In some embodiments, the characteristic quantization processing manner may be any other encoding manner capable of converting a non-numerical value into a numerical value, and is not limited in this specification.
In some embodiments, the specific step of obtaining the feature information of the first type object to be matched is described in detail later, and may specifically refer to fig. 3 and the related description.
In some embodiments, there may be a plurality of second class objects, and the platform selects two or more second class objects related to the first class object among the plurality of second class objects as candidate second class objects. Continuing with the foregoing example, when the first type object is a service provider, the service platform receives the order allocation request, and needs to allocate an order to the service provider, where the order is the second type object. And when the order and the service provider are located in the same area or the order demand is the same as the type of service provided by the service provider, the order can be used as a candidate second object. For another example, when the sales platform needs to issue a reward to the first type of object, i.e., the user, to encourage the user to complete a certain behavior, the reward is the second type of object.
In some embodiments, the feature information of the second class of objects may also be one or more. For example, when the order is distributed, the order is taken as a second class object, and the characteristic information of the order may include an order amount, an order type, an order service time, an order initiator attribute, and the like; the reward is taken as a second class object, and the characteristic information of the reward can comprise reward amount, reward type, reward validity period and the like.
Further, since the award amount is a discrete value, for ease of processing, in some embodiments the amount may be divided into a plurality of levels, with each level being understood to correspond to an amount. In particular, in some embodiments, the set of amounts may be represented asIn the set togetherThe amount of each gear can be expressed as the sum of money according to the size of the sumIn some embodiments, when the second type object is an award, the gear information corresponding to the award amount may be used as the characteristic information of the second type object.
In some embodiments, the matching value is used to indicate the matching degree between the first class object and the second class object, and in some embodiments, the matching value is proportional to the matching degree, and the matching value may be a numerical value or a probability value.
In some embodiments, the reward is a second type of object when the first type of object is a user. By way of example only, in a marketing campaign for a certain sales platform, a marketer may wish to achieve a certain marketing effect (e.g., increase sales or usage of a certain product) through the campaign, in such a scenario, users may be further divided into inviters and invitees, and accordingly, the first type of object may include both inviter and invitee types of users. The user as the inviter invites other users to use or buy a certain product, the invitee can obtain an invited reward as the second type object after accepting the invitation, and the inviter can correspondingly obtain an invited reward as the second type object. For example, when the invitee uses the invited rewards, the inviter will receive the invited rewards.
In some scenarios, the marketer may want more invitees to use the reward, and the inviter may be able to invite more invitees. Further, in some embodiments, when the first class object is an invitee, the matching value between the first class object and the candidate second class object is positively correlated with the probability that the candidate second class object is used by the first class object when the candidate second class object is allocated to the first class object. When the first-class object is an inviter, the matching value of the first-class object and the candidate second-class object is positively correlated with the number of people who send the invitation to other users when the candidate second-class object is distributed to the first-class object.
In some embodiments, the characteristic information of the first class of objects (i.e., the characteristics of the invitee i) is represented as hiThe characteristic information of the candidate second-class object (i.e. the money amount j corresponding to the reward level) is represented as rjDifferent match value prediction models may be constructed for the type of object of the first class (e.g., inviter or invitee).
When the first kind of object is the requested object, the matching value is a probability value, and the matching value can be general fc(hi,rj) Obtaining, wherein:
wherein, the characteristic information h of the first class objectiThe vector type vector can be obtained through a neural network or a deep learning network, and the specific obtaining mode can refer to the related description of fig. 3 later.
λ (i, τ) in equation (1) is a piecewise linear function that represents the degree of sensitivity or responsiveness of user i to each of the τ segments in the function. For example, assuming that the piecewise linear function averagely divides the reward with the amount of 0-5 elements into 5 segments, the value of λ (i,2) can represent the sensitivity of the user i to the second segment (i.e. 1-2 element segment); in this case, the sensitivity of the user to the award with the amount of 2-tuple is actually the accumulation of the sensitivity λ (i,1) of the user to the 0-1-tuple and the sensitivity λ (i,2) of the 1-2-tuple, and thus the integral of the piecewise linear function is calculated in formula (1). In some embodiments, the piecewise linear function may be defined as:
Wherein, WkAnd bkIs the trainable parameter corresponding to the k-th segment,represents the parameter WkTransposing the matrix of (1). Exemplary, WkMay be with hiThe vector of the same dimension is used as the vector,bkare all single numerical values.
In some embodiments, a parameter w may be requiredkThe following constraints are satisfied:
the difference of the sensitivity degrees represented by the two adjacent money amounts of the user is limited within a certain range through formula (3). Illustratively, the sensitivity of the user to some two adjacent reward money amounts, such as 1-2 yuan and 2-3 yuan, does not differ too much, so the smoothness of the piecewise function is ensured by the limitation of the difference, wherein, the value of ζ can be selected according to the actual situation. It should be noted that, in some embodiments, the constraint condition may not be set according to the actual application scenario.
When the first type object is an inviter, the matching value is positively correlated with the number of people the inviter sends the invitation to other users, and the matching value can be passed through fm(hi,rj) Obtaining:
wherein SoftPlus () and Relu () are activation functions, and in some embodiments SoftPlus () and Relu () can be replaced by other activation functions, such as Sigmoid function, Leaky Relu function, and the like; in the formula WgAnd WpRespectively trainable parameters. Exemplary, Wg、WpAll can be hiThe vector of the same dimension is used as the vector, are all single numerical values.
Model f prediction with respect to matching valuesc(hi,rj) And fm(hi,rj) The training process for the parameters to be trained can be found elsewhere in this specification.
In step 220, the first class object respectively obtains the matching value of each candidate second class object, but in some embodiments, it can be seen that the matching value is positively correlated with the value of the second class object, so that the matching value needs to be corrected to a certain extent by matching the correction parameter in consideration of the constraint conditions such as cost.
In some embodiments, the matching correction parameters may be obtained in advance, and the parameter obtaining module may directly obtain the matching correction parameters from the storage device. In some embodiments, the match correction parameters may be updated periodically. The specific steps for obtaining the matching correction parameters are described in detail later, and refer to fig. 4 and the related description.
And 240, selecting a target second-class object from the two or more candidate second-class objects and allocating the target second-class object to the first-class object based on at least the matching correction parameter and the two or more matching values. In some embodiments, step 240 may be performed by assignment module 640.
In some embodiments, two or more of the match values may be modified based at least on a match modification parameter, resulting in two or more target scores; and screening the candidate second-class objects based on the target scores to obtain target second-class objects. The modification can make the total value of the matching values of the plurality of first-class objects and the second-class objects obtain the maximum value under the preset constraint condition, that is, when the second-class objects are allocated to the plurality of first-class objects one by one according to the target score obtained by the modification, the total value of the matching values of the first-class objects and the second-class objects can obtain the maximum value under the preset constraint condition. In some embodiments, the target scores may be further calculated based on the matching correction parameters, the preset constraint conditions and the matching values, and the candidate second class object corresponding to the smallest target score may be determined as the target second class object. Further details regarding the selection of a target second class object from the two or more candidate second class objects based on the match modification parameter and two or more of the match values may be found in the related description of fig. 4.
Next, based on an example, a matching value prediction model f is set forthc(hi,rj) And fm(hi,rj) The training process of (1).
Illustratively, the first class of objects is users of a certain platformThe second class object is the reward that the platform issues to the user. Historical data may be obtained from the platform for training the match value prediction model. When the user accepts the invitation, the platform receives an invitation request and gives the invitee an invited reward, which may be defined as ΩcIs the set of such invited requests. When the invitee uses the reward, the platform receives a reward request and gives the inviter an invitation reward, which may define ΩmIs a collection of such reward requests. Thus, a plurality of pairs of objects of the first type and the objects of the second type to which they are assigned can be obtained. At the same time, it is possible to record whether the first type of object as an invitee uses the reward assigned to him, and to observe the number of users who are invited for a period of time after the first type of object as an inviter receives the reward. In some embodiments, the average number of rewards the inviter receives during a first observation period and the number of users invited during a second subsequent observation period may also be recorded as a training sample. Wherein the time period may be one week, one month, etc.
In some embodiments, f may be definedc(hi,rj) The loss function of (d) is:
wherein,is a set of positive samples of the sample,indicating that user i has used the reward r assigned to himj;Is a set of negative examples whenIndicating that user i has not used the allocation to himPrize rj。
In some embodiments, f may be definedc(hi,rj) The loss function of (d) is:
wherein, (i, r)j)∈ΩmRepresenting the average reward received by user i during the first observation period as rjThe number of invitations sent in a second subsequent observation period, i.e. with a tag value of yi。
Further, a joint loss function may be constructedAnd adjusting the matching value prediction model f based on the loss functionc(hi,rj) And fm(hi,rj) To minimize the joint loss function.
It should be noted that the above description related to the flow 200 is only for illustration and description, and does not limit the applicable scope of the present specification. Various modifications and alterations to flow 200 will be apparent to those skilled in the art in light of this description. However, such modifications and variations are intended to be within the scope of the present description.
Fig. 3 is an exemplary flow diagram illustrating obtaining feature information for a first class of objects to be matched according to some embodiments of the present description. In some embodiments, the flow 300 may be implemented by the feature acquisition module 610.
In some embodiments, the graph data may be utilized to obtain feature information of the first type of object, based on which the process 300 may include:
step 301, acquiring first graph data; the first graph data comprises nodes corresponding to the first class objects and a plurality of first class associated objects having association relations with the first class objects respectively, and the edge weight information among the nodes in the first graph data reflects the association relations among the corresponding objects.
The graph data may include a plurality of nodes and edge weights, wherein a node may correspond to an object, a property or feature of an object may be considered a property or feature of a corresponding node, and an edge weight between nodes may represent an association between two corresponding objects. Depending on the type of object, the graph data may be a social graph (where nodes correspond to users and edges between nodes represent social relationships between users), a device network graph (where nodes correspond to network devices and edges between nodes represent communication relationships between devices), a transfer graph (where nodes correspond to user accounts and edges between nodes represent fund flow relationships between users), and so on. In some embodiments, the first graph data may add all or part of the first class of associated objects associated with the first class of objects to the first graph data over a time period, which may be a month, a half year, a year, or the like.
For example, when the first type object is a user, the neighbor set may be constructed for the user based on the invitation relationship in the past period of time and month, such as constructing the neighbor set N for the user ii. In particular, the neighbor set NiIncluding user i, and when user i has invited user j or has been invited by user j within a past period of time, user j can be added into the set Ni. In some embodiments, users other than user i having a non-inviting relationship may join their neighbor set NiFor example, the user j 'is only a co-worker of the user i, and no invitation or invited relationship has yet occurred, and at this time, the user j' may be added to the neighbor set Ni. Neighbor set NiIn this case, the user i may be regarded as a first-class object, and users other than the user i may be regarded as first-class associated objects. Further, first graph data may be constructed for the user based on the set of neighbors. The users in the neighbor set correspond to the nodes in the first graph data one by one, and the edge weights in the first graph data reflect the association relationship between the corresponding users, such as an invitation relationship or an invited relationship. In some embodiments, the frontiers in the first graph data may also reflect other relationships between corresponding users, such as social relationships, transactional relationships, and the like.
In some embodiments, the form of the edge weight between the first type object and the first type associated object may include 0 or 1, so as to be present or absent, and the edge weight may also be a numerical value between 0 and 1, so as to further represent the strength of the relationship, for example, the strength of the relationship is positively correlated with the size of the transfer amount. It should be noted that, in some embodiments, the value of the edge weight may also take other values according to an actual application scenario, for example, the edge weight may be greater than 1. In some embodiments, according to an actual application scenario, a value of the edge weight may also be a negative number, for example, when an invitation direction needs to be embodied, for example, if the first type object invites the first type associated object j, the edge weight between the two may be + and, conversely, the edge weight between the two may be-.
Step 302, processing the first graph data by utilizing a graph neural network to obtain the vector expression of the first class object.
In some embodiments, the Graph neural network may include one or more of a Graph Convolution Network (GCN), a Graph Attention network (Graph Attention network), a Graph Autoencoders (Graph Autoencoders), and a Graph generation network (Graph generation Networks).
Taking the graph attention network GAT as an example, the graph attention network is a graph convolution network based on space, and its attention mechanism is to use an attention mechanism for determining the weight of the node neighborhood when aggregating the feature information. Illustratively, when the first type object is a user, the first type object can pass through h(0)(vi) The raw features representing the user i, which in some embodiments may include the user's gender, age, consumption habits, etc., may be converted into an initial vector representation in some manner and input into the graph attention network. In the graph attention network, after the convolution processing of the graph attention network, the vector expression of the user i can be expressed as h(L)(vi). The graph attention network may include multiple layers of graph convolution calculations, where a layer of graph convolution calculation may be expressed as:
where σ (·) is the activation function; in some embodiments, the activation function may be a sigmoid function or a tanh function, or the like; v. ofiAnd vjRespectively representing the characteristics of a node i and a node j adjacent to the node i, such as taking the initial vector expression of the node i and the node j; w(l)Is trainable parameters of the L-th layer, L is 1, 2, … and L, L is an integer more than 1; h is(l-1)Representing the input of the l-th layer, when l takes 1, h(0)I.e. the initial vector expression v for user ii;α(vi,vj) Is a graph convolution kernel function, which may also be referred to as an attention function. It can be understood that after the initial vector expression of each node in the first graph data is input into the graph attention network, and after the L-layer graph convolution calculation is performed in the graph attention network, the vector expression h of the first-class object can be obtained(L)(vi)。
In some embodiments, the graph convolution kernel may be of the form:
in the formula, d is viAnd vjSuch as euclidean distance.
In some other embodiments, the graph convolution kernel may also be:
formula (8) is a graph convolution kernel without parameter training, and formula (9) is a graph convolution kernel with a parameter W1And W2In the actual training process, the graph convolution kernel without parameter training can realize lower and quick training of calculated amount, and the graph convolution kernel containing parameters can more accurately learn the influence contribution of the adjacent node j to the node i in the graph data. In some embodiments, the graph convolution kernel function may also have other forms, and is not limited in this specification. In the above formula, the vectors of the nodes at each stage are expressed in the same dimension, such as initial vector expressionCo-dimensional with the vector representation of the graph attention network output, a (v)i,vj) Co-dimensional with vector representation of nodes, W(l)、W1And W2Is a square matrix, the dimension of the row or column of which is the same as the vector dimension of the node.
In some embodiments, the vector h of the first type object obtained after the neural network processing is performed in step 303(L)(vi) The feature information of the first class object can be represented as h in step 220iAnd continues with this representation in the following.
FIG. 4 is an exemplary flow diagram illustrating the determination of match correction parameters according to some embodiments of the present description. In some embodiments, the process 400 may be implemented by the match correction parameter determination system 700.
In some embodiments, the matching correction parameters obtained in step 230 may be determined by the process 400:
step 401, constructing an equivalent objective function. In some embodiments, step 401 may be implemented by function building unit 710.
For the convenience of intuitive understanding, the first type of object is taken as a platform user, and the second type of object is taken as an example of a reward issued to the user for the platform. When the user accepts the invitation, the platform receives an invitation request, and the specific level or amount of the invited reward to the invitee needs to be determined, wherein the omega can be definedc′Is the set of such invited requests. When the invitee uses the reward, the platform receives a reward request and determines the specific level or amount of the reward to be invited to the inviter, which may define Ωm′Is a collection of such reward requests.
In some embodiments, the reward amount has been previously divided intoLevels, for invitees, discrete decision variables may be definedIn particular, whenIndicates that j-level rewards are issued to the ith user as an invitee, and further, because the rewards sent to the users by the actual platform are 1, the constraint condition is addedThis ensures that there is one and only one for a single inviteeI.e. the user has one and only one award, regardless of the amount. Similarly, for inviters, discrete decision variables may be definedWhile adding constraints
Thus far, in the foregoing example, the question of determining what level or amount of reward to issue to user i translates into a process of solving discrete decision variables.
In some application scenarios, it is desirable that the matching of each object of the first type with the assigned object of the second type is greatest. For this purpose, an objective function may be established based on a sum of matching values of each first class object and different second class objects:
in the formula,andthe model can be trained in advance for matching the value prediction model, and the training process can be referred to the relevant description of fig. 2.
In the case of maximizing the goal, constraints need to be added, it being understood that the average cost of delivery, including the cost of the invitee's reward and the cost of the inviter's reward, needs to be controlled during the reward placement process, but in some embodiments the voucher actually delivered to the invitee is not immediately underwritten, and only part of the underwriting will be accounted for. Further, the constraint condition may be that the average cost does not exceed the set threshold, where the average cost may be described as a ratio of the profit generated by the first type of sample object using its second type of object and/or sending an invitation to other users to the cost generated by allocating the corresponding second type of object to the first type of sample object, and further may be represented by the following formula:
indicating that the invitee has used the allocated award amounts in their entirety,indicating the amount of cost that would be incurred by the invitee after all of the allocated rewards have been used;indicating the total number of awards issued to the inviter,indicating the total amount of the award to be issued to the inviter. It will be appreciated that the constraints are not exclusive and may be arranged in other ways depending on the particular context requirements.
Further, the problem is converted into a target function which is solved under the preset constraint conditionNumber-maximized discrete decision variablesAnd
in some embodiments, to facilitate the solution, decision variables may be usedAndconversion into continuous decision variables, e.g. of decision variablesAndand converting into a value between 0 and 1. The specific conversion mode can refer to a mode of converting common discrete variables into continuous variables, such as an interpolation method, a curve fitting method and the like. After continuous conversionAndthe respective constraints are still satisfied. Then, introducing dual variables by adopting a Lagrange multiplier method to convert the target function and the constraint condition thereof into an equivalent target function:
due to the constraint condition of the discrete decision variables, the last two summation terms in equation (12) are 0, and the equivalent objective function can be further simplified as:
wherein λ is lagrange multiplier, or matching correction parameter. In some embodiments, it may be considered when λ ═ λ*In this case, the optimal solution exists in the formula (12) or the formula (13), and the objective function is maximized and satisfies the preset constraint condition.
Finally, the problem is transformed into discrete decision variables that are solved to minimize the equivalent objective function given the matching correction parameters. At this point, the platform may be determined to give the set Ω based on the rewards that the platform actually released over a historical period of timec′And set omegam′The reward issued by each first-class object in (1), namely the user, further determines a discrete decision variable, and solves the optimal value of the matching correction parameter on the premise that the discrete decision variable is known.
The plurality of sample objects of the first type and the second type of object assigned to the sample objects of the first type may be based on a set Ωc′And set omegam′And (4) determining. The determination manner of the multiple first-type associated objects having an association relationship with each first-type sample object may be referred to in step 301, and is not described herein again.
Step 403, acquiring second graph data; the second graph data comprises nodes corresponding to a plurality of first-class sample objects and a plurality of first-class associated objects having association relations with the first-class sample objects respectively, and the edge weight information among the nodes in the second graph data reflects the association relations among the corresponding objects. In some embodiments, step 403 may be implemented by graph data acquisition unit 730.
In some embodiments, the obtaining manner of the second graph data is similar to the obtaining manner of the first graph data in step 301, which may specifically refer to related description in step 301, and is not described herein again. In some embodiments, one graph data may be constructed for each first type sample object, i.e. a plurality of second graph data may be obtained, in a similar manner to step 301. In some embodiments, the aforementioned plurality of second graph data may also be concatenated to obtain a larger second graph data.
In some embodiments, the manner of processing the second graph data by using the graph neural network to obtain the vector expressions of the plurality of first type sample objects is similar to that in step 302, which may specifically refer to the related description in step 302 and is not described herein again.
Due to the set omegac′And set omegam′Each object of the first class in (a) has been assigned to a certain object of the second class, and thus the discrete decision variables in the equivalent objective function are known. At this time, the matching value of each first-class sample object and the second-class object thereof may be calculated by using the matching value prediction model. The manner of determining the matching value is similar to that in step 220, and reference may be specifically made to the related description in step 220, which is not described herein again.
And 406, substituting the matching value into the equivalent objective function, and determining a matching correction parameter, wherein the matching correction parameter can enable the equivalent objective function to obtain a minimum value under the matching value. In some embodiments, step 406 may be implemented by parameter calculation unit 760.
Substituting the calculated matching values into a formula (13), and further solving the formula (13) through an L-BFGS algorithm to obtain lambda*The L-BFGS algorithm is a method for solving a nonlinear programming problem by using a quasi-Newton methodThe algorithm has the advantages of high convergence rate, low memory overhead and the like, and in some other embodiments, other algorithms can be used for obtaining the lambda*Such as gradient descent method or newton method.
In some embodiments, λ*The matching value can be maximized under the preset constraint condition (i.e. formula (12)), and therefore the solved lambda can be obtained*Directly as the matching correction parameters.
FIG. 5 is an exemplary flow diagram illustrating the determination of a target second class object based on a match correction parameter and a match value according to some embodiments of the present description. In some embodiments, flow 500 may be implemented by assignment module 640.
Continuing with the reward allocation scenario described above, when the platform actually receives an allocation request (e.g., an invited request or a reward request) from a first type of object (e.g., a user), the platform may first determine the first type of object and candidate second type of objects (e.g., a reward set) with reference to steps 210 and 220Prize in rjJ is 1, 2, …,) The matching value of (2).
Step 501, based on the matching correction parameters, the average distribution cost and two or more matching values, calculating to obtain two or more target scores.
Referring to the related description of FIG. 4, it can be appreciated that the distribution problem can be equivalently solved as a discrete decision variable that minimizes equation (13), wherein the correction parameter λ is matched*The average distribution cost B is known, and in particular, the problem of minimizing equation (13) can be translated into selecting a candidate second class object from a plurality of candidate second class objects for a given first class object (e.g., user i)OrThe smallest targeted second class object. In an actual scene, the matching correction parameter, the average distribution cost and the matching value can be respectively substitutedOrA target score is obtained. When the first type of object is an invitee, useCalculating a target score, using when the first type of object is an inviterA target score is calculated. Further, two or more target scores may be obtained.
Specifically, it can be expressed as:
as an example, when the first class of objects are invitees, the target score may be calculated if the jth reward is assigned theretoTake the minimum value, i.e. platform allocates reward r to the userl(ii) a When the first type object is an invitee, if j-th reward is assigned thereto, the target scoreTaking the minimum value, the platform allocates the reward r to the userl. The platform may issue different rewards to the user based on this to achieve maximum match under the constraints. After the platform executes the reward policy for a period of time, the process 400 may be re-executed based on the existing reward distribution history data to update the matching correction parameters, so that iterative update of the matching correction parameters can be realized to make the matching correction parameters closer to the optimal values, thereby optimizing the reward distribution policy of the platform.
It should be noted that the above descriptions regarding the flow 300 to the flow 500 are only for illustration and explanation, and do not limit the applicable scope of the present specification. Various modifications and changes to the above steps may be made by those skilled in the art, given the benefit of this description. However, such modifications and variations are intended to be within the scope of the present description.
FIG. 6 is a modular schematic diagram of an object distribution system according to some embodiments of the present description.
The object assignment system 600 as shown in fig. 6 includes a feature acquisition module 610, a match value determination module 620, a parameter acquisition module 630, and an assignment module 640.
The feature obtaining module 610 is configured to obtain feature information of a first class of objects to be matched.
The description of the feature information of the first type of object may be found elsewhere in this specification (e.g., in step 210, process 300, and the related description thereof), and is not repeated here.
A matching value determining module 620, configured to determine matching values of the first class object and two or more candidate second class objects respectively based on the feature information of the first class object and the feature information of the two or more candidate second class objects.
The description of the candidate second-class object and the matching value may be found elsewhere in this specification (e.g., in step 220 and its related description), and will not be further described herein.
A parameter obtaining module 630, configured to obtain the matching correction parameter.
The relevant description of the matching correction parameters can be found elsewhere in this specification (e.g., in step 230, process 400 and the relevant description thereof), and will not be described herein again.
An assigning module 640, configured to select a target second class object from the two or more candidate second class objects and assign the target second class object to the first class object based on at least a matching modification parameter and the two or more matching values.
The relevant description of the target second-class object can be found elsewhere in this specification (e.g., in the relevant description of step 240 and flow 500), and is not repeated here.
FIG. 7 is a modular schematic diagram of a match correction parameter determination system according to some embodiments described herein.
The matching correction parameter determination system 700 shown in fig. 7 includes a function construction unit 710, an object determination unit 720, a graph data acquisition unit 730, a graph data processing unit 740, a matching value determination unit 750, and a parameter calculation unit 760.
A function constructing unit 710, configured to construct an equivalent objective function; minimizing the equivalent objective function is equivalent to maximizing a matching value under a preset constraint condition, wherein the matching value is equal to a sum of matching values of a plurality of first-class objects and second-class objects matched with the first-class sample objects when the first-class sample objects and the second-class objects matched with the first-class sample objects are given; the equivalent objective function is associated with the match correction parameters and the match values for a given plurality of objects of the first class and the second objects with which it matches.
The description of the equivalent objective function can be found elsewhere in this specification (e.g., in step 401 and its related description), and is not repeated here.
The object determining unit 720 is configured to determine a plurality of first type sample objects, a plurality of first type associated objects having association relations with the first type sample objects, and a second type object respectively allocated to the first type sample objects.
The description of the first-class association object and the second-class association object may be found elsewhere in this specification (e.g., in step 402 and the description thereof), and will not be described herein again.
A drawing data acquisition unit 730 for acquiring second drawing data; the second graph data comprises nodes corresponding to a plurality of first-class sample objects and a plurality of first-class associated objects having association relations with the first-class sample objects respectively, and the edge weight information among the nodes in the second graph data reflects the association relations among the corresponding objects.
The description of the second graph data can be found elsewhere in this specification (e.g., in step 403 and its related description), and is not repeated here.
And the graph data processing unit 740 is configured to process the second graph data by using a graph neural network to obtain vector expressions of a plurality of first type sample objects.
The description of the vector expression of the first type sample object can be found elsewhere in this specification (e.g., in step 404 and the related description thereof), and is not repeated here.
A matching value determining unit 750, configured to determine, based on the vector expression of the first type sample object and the feature information of the second type sample object, a matching value between the first type sample object and the second type sample object, and further obtain a matching value between each first type sample object and the second type sample object.
The relevant description of the matching value can be found elsewhere in this specification (e.g., in step 405 and its relevant description), and is not repeated here.
A parameter calculating unit 760, configured to substitute the matching value into the equivalent objective function, and determine a matching correction parameter, where the matching correction parameter enables the equivalent objective function to obtain a minimum value under the matching value.
The relevant description for determining the matching correction parameter can be found elsewhere in this specification (e.g., in step 406 and its relevant description), and will not be described herein again.
It should be understood that the systems shown in fig. 6, 7 and their modules may be implemented in various ways. For example, in some embodiments, an apparatus and its modules may be implemented by hardware, software, or a combination of software and hardware. Wherein the hardware portion may be implemented using dedicated logic; the software portions may then be stored in a memory for execution by a suitable instruction execution device, such as a microprocessor or specially designed hardware. Those skilled in the art will appreciate that the methods and apparatus described above may be implemented using computer executable instructions and/or embodied in processor control code, such code being provided for example on a carrier medium such as a diskette, CD-or DVD-ROM, a programmable memory such as read-only memory (firmware) or a data carrier such as an optical or electronic signal carrier. The apparatus and modules thereof in this specification may be implemented not only by hardware circuits such as very large scale integrated circuits or gate arrays, semiconductors such as logic chips, transistors, or programmable hardware devices such as field programmable gate arrays, programmable logic devices, etc., but also by software executed by various types of processors, for example, or by a combination of the above hardware circuits and software (e.g., firmware).
It should be noted that the above descriptions of the candidate item display and determination system and the modules thereof are only for convenience of description, and the description is not limited to the scope of the illustrated embodiments. It will be appreciated by those skilled in the art that, given the teachings of the present system, any combination of modules or sub-system configurations may be used to connect to other modules without departing from such teachings.
The beneficial effects that may be brought by the embodiments of the present description include, but are not limited to: (1) by matching the correction parameters, a target second class object more suitable for the first class object can be selected based on sample data under the condition of constraint conditions; (2) the graph neural network is used for processing graph data so as to extract the characteristics of the first class of objects, the relation between the first class of objects and the related objects can be fully considered, the first class of objects can be depicted more accurately, and the matching value prediction model obtained based on the first class of objects is more accurate; (3) when the first class of objects contain multiple classes of objects with different properties and association relations, the method provided by the specification can be used for modeling based on the association relations among the different classes of objects, so that the distribution mode is more reasonable; (4) and more accurate matching correction parameters can be obtained in real time through the updated sample data, so that the distribution strategy is optimized.
It is to be noted that different embodiments may produce different advantages, and in different embodiments, any one or combination of the above advantages may be produced, or any other advantages may be obtained.
Having thus described the basic concept, it will be apparent to those skilled in the art that the foregoing detailed disclosure is to be regarded as illustrative only and not as limiting the present specification. Various modifications, improvements and adaptations to the present description may occur to those skilled in the art, although not explicitly described herein. Such modifications, improvements and adaptations are proposed in the present specification and thus fall within the spirit and scope of the exemplary embodiments of the present specification.
Also, the description uses specific words to describe embodiments of the description. Reference throughout this specification to "one embodiment," "an embodiment," and/or "some embodiments" means that a particular feature, structure, or characteristic described in connection with at least one embodiment of the specification is included. Therefore, it is emphasized and should be appreciated that two or more references to "an embodiment" or "one embodiment" or "an alternative embodiment" in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, some features, structures, or characteristics of one or more embodiments of the specification may be combined as appropriate.
Additionally, the order in which the elements and sequences of the process are recited in the specification, the use of alphanumeric characters, or other designations, is not intended to limit the order in which the processes and methods of the specification occur, unless otherwise specified in the claims. While various presently contemplated embodiments of the invention have been discussed in the foregoing disclosure by way of example, it is to be understood that such detail is solely for that purpose and that the appended claims are not limited to the disclosed embodiments, but, on the contrary, are intended to cover all modifications and equivalent arrangements that are within the spirit and scope of the embodiments herein. For example, although the system components described above may be implemented by hardware devices, they may also be implemented by software-only solutions, such as installing the described system on an existing server or mobile device.
Similarly, it should be noted that in the preceding description of embodiments of the present specification, various features are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure aiding in the understanding of one or more of the embodiments. This method of disclosure, however, is not intended to imply that more features than are expressly recited in a claim. Indeed, the embodiments may be characterized as having less than all of the features of a single embodiment disclosed above.
Numerals describing the number of components, attributes, etc. are used in some embodiments, it being understood that such numerals used in the description of the embodiments are modified in some instances by the use of the modifier "about", "approximately" or "substantially". Unless otherwise indicated, "about", "approximately" or "substantially" indicates that the number allows a variation of ± 20%. Accordingly, in some embodiments, the numerical parameters used in the specification and claims are approximations that may vary depending upon the desired properties of the individual embodiments. In some embodiments, the numerical parameter should take into account the specified significant digits and employ a general digit preserving approach. Notwithstanding that the numerical ranges and parameters setting forth the broad scope of the range are approximations, in the specific examples, such numerical values are set forth as precisely as possible within the scope of the application.
For each patent, patent application publication, and other material, such as articles, books, specifications, publications, documents, etc., cited in this specification, the entire contents of each are hereby incorporated by reference into this specification. Except where the application history document does not conform to or conflict with the contents of the present specification, it is to be understood that the application history document, as used herein in the present specification or appended claims, is intended to define the broadest scope of the present specification (whether presently or later in the specification) rather than the broadest scope of the present specification. It is to be understood that the descriptions, definitions and/or uses of terms in the accompanying materials of this specification shall control if they are inconsistent or contrary to the descriptions and/or uses of terms in this specification.
Finally, it should be understood that the embodiments described herein are merely illustrative of the principles of the embodiments of the present disclosure. Other variations are also possible within the scope of the present description. Thus, by way of example, and not limitation, alternative configurations of the embodiments of the specification can be considered consistent with the teachings of the specification. Accordingly, the embodiments of the present description are not limited to only those embodiments explicitly described and depicted herein.
Claims (18)
1. An object allocation method, the method being performed by at least one processor, comprising:
acquiring characteristic information of a first class of objects to be matched;
determining matching values of the first class object and two or more candidate second class objects respectively based on the characteristic information of the first class object and the characteristic information of the two or more candidate second class objects;
acquiring matching correction parameters;
and selecting a target second-class object from the two or more candidate second-class objects and allocating the target second-class object to the first-class object based on at least the matching correction parameter and the two or more matching values.
2. The method according to claim 1, wherein the obtaining of the feature information of the first class of objects to be matched comprises:
acquiring first graph data; the first graph data comprises nodes respectively corresponding to the first class objects and a plurality of first class associated objects having association relations with the first class objects, and the edge weight information among the nodes in the first graph data reflects the association relations among the corresponding objects;
processing the first graph data by utilizing a graph neural network to obtain vector expression of the first class of objects;
and taking the vector expression of the first class object as the characteristic information of the first class object.
3. The method of claim 1, wherein the first type of object is a user; and,
when the first class object is an invitee, the matching value of the first class object and the candidate second class object is positively correlated with the probability that the candidate second class object is used by the first class object when the candidate second class object is distributed to the first class object;
when the first-class object is an inviter, the matching value of the first-class object and the candidate second-class object is positively correlated with the number of people who send the invitation to other users when the candidate second-class object is distributed to the first-class object.
4. The method of claim 1, wherein said selecting a target second class object from the two or more candidate second class objects and assigning to the first class object based on at least a match modification parameter and two or more of the match values comprises:
correcting two or more matching values at least based on matching correction parameters to obtain two or more target scores; the correction enables the sum of the matching values of the plurality of first-class objects and the distributed second-class objects to obtain the maximum value under the preset constraint condition;
a target second class object is selected from the two or more candidate second class objects based on the target score and assigned to the first class object.
5. The method of claim 4, wherein the match correction parameter is determined by:
constructing an equivalent objective function; minimizing the equivalent objective function is equivalent to maximizing a matching value under a preset constraint condition, wherein the matching value is equal to a sum of matching values of each first class object and a second class object matched with the first class object when the first class objects and the second class objects matched with the first class objects are given; the equivalent objective function is associated with the match correction parameters and the match values for a given plurality of first class objects and their matching second objects;
determining a plurality of first-class sample objects, a plurality of first-class associated objects having association relations with the first-class sample objects, and second-class objects respectively allocated to the first-class sample objects;
acquiring second graph data; the second graph data comprises nodes respectively corresponding to a plurality of first-class sample objects and a plurality of first-class associated objects having association relations with the first-class sample objects, and the edge weight information among the nodes in the second graph data reflects the association relations among the corresponding objects;
processing the second graph data by utilizing a graph neural network to obtain vector expressions of a plurality of first-class sample objects;
determining the matching value of the first type sample object and the second type object thereof based on the vector expression of the first type sample object and the characteristic information of the second type object thereof, and further obtaining the matching value of each first type sample object and the second type object thereof;
substituting the matching value into the equivalent objective function, and determining a matching correction parameter, wherein the matching correction parameter can enable the equivalent objective function to obtain a minimum value under the matching value.
6. The method of claim 5, the first type of sample object being a user; and the plurality of sample objects of the first type comprise inviters and invitees;
when the first type sample object is an invitee, the matching value of the first type sample object and the second type object thereof is positively correlated with the probability that the second type object is used by the first type sample object when the second type object is allocated to the first type sample object;
when the first type sample object is an inviter, the matching value of the first type sample object and the second type object thereof is positively correlated with the number of people who send the invitation to other users when the second type object is distributed to the first type sample object.
7. The method of claim 6, wherein the preset constraint condition comprises that the ratio of the profit generated by the first type sample object using the second type object and/or sending the invitation to other users to the cost generated by allocating the corresponding second type object to the first type sample object does not exceed the preset average allocation cost.
8. The method of claim 7, wherein modifying two or more of the match values based at least on a match modification parameter to obtain two or more target scores comprises:
calculating to obtain the two or more target scores based on the matching correction parameters, the average distribution cost and the two or more matching values;
the selecting a target second class object from the two or more candidate second class objects based on the target score and assigning to the first class object comprises:
and determining the candidate second-class object corresponding to the minimum value of the two or more target scores as the target second-class object.
9. The method of claim 5, wherein the determining of the matching correction parameter further comprises: and updating the plurality of first type sample objects periodically, and updating the matching correction parameters based on the updated plurality of first type sample objects.
10. An object distribution system, comprising:
the characteristic acquisition module is used for acquiring characteristic information of a first class of objects to be matched;
the matching value determining module is used for determining the matching values of the first class object and two or more candidate second class objects respectively based on the characteristic information of the first class object and the characteristic information of the two or more candidate second class objects;
the parameter acquisition module is used for acquiring matching correction parameters;
and the distribution module is used for selecting a target second-class object from the two or more candidate second-class objects and distributing the target second-class object to the first-class object at least based on the matching correction parameter and the two or more matching values.
11. An object allocation apparatus, the apparatus comprising a processor and a memory; the memory is used for storing instructions, and the processor is used for executing the instructions to realize the object allocation method according to any one of claims 1-9.
12. A computer-readable storage medium storing computer instructions which, when read by a computer, cause the computer to perform the object allocation method of any one of claims 1 to 9.
13. A method of matching correction parameters determination for object assignment, the method being performed by at least one processor, comprising:
constructing an equivalent objective function; minimizing the equivalent objective function is equivalent to maximizing a matching value under a preset constraint condition, wherein the matching value is equal to a sum of matching values of a plurality of first-class objects and second-class objects matched with the first-class sample objects when the first-class sample objects and the second-class objects matched with the first-class sample objects are given; the equivalent objective function is associated with the match correction parameters and the match values for a given plurality of first class objects and their matching second objects;
determining a plurality of first-class sample objects, a plurality of first-class associated objects having association relations with the first-class sample objects, and second-class objects respectively allocated to the first-class sample objects;
acquiring second graph data; the second graph data comprises nodes respectively corresponding to a plurality of first-class sample objects and a plurality of first-class associated objects having association relations with the first-class sample objects, and the edge weight information among the nodes in the second graph data reflects the association relations among the corresponding objects;
processing the second graph data by utilizing a graph neural network to obtain vector expressions of a plurality of first-class sample objects;
determining the matching value of the first type sample object and the second type object thereof based on the vector expression of the first type sample object and the characteristic information of the second type object thereof, and further obtaining the matching value of each first type sample object and the second type object thereof;
substituting the matching value into the equivalent objective function, and determining a matching correction parameter, wherein the matching correction parameter can enable the equivalent objective function to obtain a minimum value under the matching value.
14. The method of claim 13, wherein the first type of sample object is a user; and the plurality of sample objects of the first type comprise inviters and invitees;
when the first type sample object is an invitee, the matching value of the first type sample object and the second type object thereof is positively correlated with the probability that the second type object is used by the first type sample object when the second type object is allocated to the first type sample object;
when the first type sample object is an inviter, the matching value of the first type sample object and the second type object thereof is positively correlated with the number of people who send the invitation to other users when the second type object is distributed to the first type sample object.
15. The method according to claim 14, wherein the preset constraint condition comprises that the ratio of the profit generated by the first type sample object using the second type object and/or sending the invitation to other users to the cost generated by allocating the corresponding second type object to the first type sample object does not exceed the preset average allocation cost.
16. A matching correction parameter determination system for object assignment, comprising:
the function construction unit is used for constructing an equivalent objective function; minimizing the equivalent objective function is equivalent to maximizing a matching value under a preset constraint condition, wherein the matching value is equal to a sum of matching values of a plurality of first-class objects and second-class objects matched with the first-class sample objects when the first-class sample objects and the second-class objects matched with the first-class sample objects are given; the equivalent objective function is associated with the match correction parameters and the match values for a given plurality of first class objects and their matching second objects;
the object determining unit is used for determining a plurality of first-class sample objects, a plurality of first-class associated objects having association relation with the first-class sample objects, and second-class objects respectively allocated to the first-class sample objects;
a drawing data acquisition unit for acquiring second drawing data; the second graph data comprises nodes respectively corresponding to a plurality of first-class sample objects and a plurality of first-class associated objects having association relations with the first-class sample objects, and the edge weight information among the nodes in the second graph data reflects the association relations among the corresponding objects;
the graph data processing unit is used for processing the second graph data by utilizing a graph neural network to obtain vector expressions of a plurality of first type sample objects;
the matching value determining unit is used for determining the matching value of the first type sample object and the second type object based on the vector expression of the first type sample object and the characteristic information of the second type object, and further obtaining the matching value of each first type sample object and the second type object;
and the parameter calculation unit is used for substituting the matching value into the equivalent objective function and determining a matching correction parameter, and the matching correction parameter can enable the equivalent objective function to obtain a minimum value under the matching value.
17. An apparatus for matching correction parameter determination for object assignment, the apparatus comprising a processor and a memory; the memory is used for storing instructions, and the processor is used for executing the instructions to realize the matching correction parameter determination method for object allocation according to any one of claims 13-15.
18. A computer-readable storage medium storing computer instructions which, when read by a computer, cause the computer to perform the method for determining matching correction parameters for object assignment according to any of claims 13 to 15.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110138578.3A CN112837095A (en) | 2021-02-01 | 2021-02-01 | Object distribution method and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110138578.3A CN112837095A (en) | 2021-02-01 | 2021-02-01 | Object distribution method and system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112837095A true CN112837095A (en) | 2021-05-25 |
Family
ID=75931484
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110138578.3A Pending CN112837095A (en) | 2021-02-01 | 2021-02-01 | Object distribution method and system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112837095A (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200279147A1 (en) * | 2019-02-28 | 2020-09-03 | Baidu Online Network Technology (Beijing) Co., Ltd. | Method and apparatus for intelligently recommending object |
CN111681059A (en) * | 2020-08-14 | 2020-09-18 | 支付宝(杭州)信息技术有限公司 | Training method and device of behavior prediction model |
CN111738780A (en) * | 2020-07-31 | 2020-10-02 | 支付宝(杭州)信息技术有限公司 | Method and system for recommending object |
CN111931002A (en) * | 2020-06-30 | 2020-11-13 | 华为技术有限公司 | Matching method and related equipment |
CN112084427A (en) * | 2020-09-15 | 2020-12-15 | 辽宁工程技术大学 | Interest point recommendation method based on graph neural network |
-
2021
- 2021-02-01 CN CN202110138578.3A patent/CN112837095A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200279147A1 (en) * | 2019-02-28 | 2020-09-03 | Baidu Online Network Technology (Beijing) Co., Ltd. | Method and apparatus for intelligently recommending object |
CN111931002A (en) * | 2020-06-30 | 2020-11-13 | 华为技术有限公司 | Matching method and related equipment |
CN111738780A (en) * | 2020-07-31 | 2020-10-02 | 支付宝(杭州)信息技术有限公司 | Method and system for recommending object |
CN111681059A (en) * | 2020-08-14 | 2020-09-18 | 支付宝(杭州)信息技术有限公司 | Training method and device of behavior prediction model |
CN112084427A (en) * | 2020-09-15 | 2020-12-15 | 辽宁工程技术大学 | Interest point recommendation method based on graph neural network |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Belo-Filho et al. | An adaptive large neighbourhood search for the operational integrated production and distribution problem of perishable products | |
Schuetz et al. | Approximate dynamic programming for capacity allocation in the service industry | |
Dror et al. | Survey of cooperative inventory games and extensions | |
Chen et al. | Re-solving stochastic programming models for airline revenue management | |
JP7486507B2 (en) | Reinforcement learning system and method for inventory management and optimization | |
Hulshof et al. | Patient admission planning using approximate dynamic programming | |
Huang et al. | MSPM: A modularized and scalable multi-agent reinforcement learning-based system for financial portfolio management | |
Anily et al. | Subadditive and homogeneous of degree one games are totally balanced | |
CN112074860A (en) | Computer-implemented method for compiling an investment portfolio of assets | |
Shalaby et al. | A decision support system (DSS) for facilitating the scenario selection process of the renegotiation of PPP contracts | |
Lai et al. | Mechanism design for collaborative production-distribution planning with shipment consolidation | |
Akçay et al. | Evolution of cooperation and skew under imperfect information | |
CN111311384A (en) | Method and system for training recommendation model | |
Farvaresh et al. | A coalition structure algorithm for large-scale collaborative pickup and delivery problem | |
Ibarra-Rojas et al. | Vehicle routing problem considering equity of demand satisfaction | |
CN116739840B (en) | Travel package recommendation method, device and storage medium based on multi-objective group optimization | |
KR102590112B1 (en) | Coded and Incentive-based Mechanism for Distributed Training of Machine Learning in IoT | |
CN112837095A (en) | Object distribution method and system | |
CN117273951A (en) | Resource information processing method, device, computer equipment and storage medium | |
CN111445032A (en) | Method and device for decision processing by using business decision model | |
CN112966968B (en) | List distribution method based on artificial intelligence and related equipment | |
Huang et al. | An incentive dynamic programming method for the optimization of scholarship assignment | |
Chen et al. | Multiobjective Order Assignment Optimization in a Global Multiple‐Factory Environment | |
CN113298316A (en) | Intelligent manufacturing framework and method based on block chain, scheduling matching method and model | |
Deng et al. | The usage of opportunity cost to maximize performance in revenue management |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210525 |