Object matching method and related device
By distinguishing incremental and non-incremental objects in the object matching method and matching according to their classification, the problems of object matching timeliness, accuracy and cost in massive object pools are solved, and a more efficient matching process is achieved.
Patent Information
- Application Number
- CN202411017175.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-26
- Publication Date
- 2025-05-27
- Estimated Expiration
- 2044-07-26
AI Technical Summary
The need to quickly find the same product matching a certain product among a large number of products is difficult to effectively solve in the existing technology, especially when matching objects in the object pool, there are challenges in timeliness, accuracy and cost control.
An object matching method is provided, by recalling candidate objects related to the object to be matched from the object pot, and determining whether the candidate object is an incremental object or a non-incremental object based on the matching time of the object to be matched and the information update time of the candidate object. For incremental objects, rematch is used to use the object matching model; for non-incremental objects, the previous matching results are multiplexed.
It improves the timeliness and accuracy of object matching in a massive object pool, reduces matching costs, reduces calculation volume by 50%, and increases system throughput by 1 times.
Smart Images

Figure CN118939879B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of computer technologies, and in particular, to an object matching method and related devices. Background Art
[0002] As e-commerce penetrates deeper into people's lives, users have an increasing need to search for the same products through the Internet. Therefore, how to quickly find the same products that match a certain product among a large number of products has become a problem that needs to be solved in various e-commerce applications. Summary of the Invention
[0003] In view of this, embodiments of the present disclosure provide an object matching method, which can instantaneously determine at least one target object that matches a to-be-matched object in an incremental manner, thereby improving the timeliness and accuracy of object matching in a large object pool, and effectively reducing the cost of object matching.
[0004] The object matching method described in the embodiments of the present disclosure may include: recalling at least one candidate object related to the to-be-matched object from an object bottom pool; respectively determining whether each candidate object is an incremental object or a non-incremental object based on the object matching time of the to-be-matched object recorded and the information update time of each candidate object; for the candidate objects determined to be non-incremental objects, reading the matching result recorded between the to-be-matched object and the candidate objects; for the candidate objects determined to be incremental objects, determining the matching result between the to-be-matched object and the candidate objects based on an object matching model; and determining at least one target object that matches the to-be-matched object based on the matching result between the to-be-matched object and the at least one candidate object.
[0005] In an embodiment of the present disclosure, recalling at least one candidate object related to the to-be-matched object from an object bottom pool includes: recalling at least one candidate object related to the to-be-matched object from the object bottom pool based on the attribute information of the to-be-matched object and an inverted index library corresponding to the object bottom pool established in advance.
[0006] In an embodiment of the present disclosure, respectively determining whether each candidate object is an incremental object or a non-incremental object based on the object matching time of the to-be-matched object recorded and the information update time of each candidate object includes: comparing the object matching time of the to-be-matched object recorded with the information update time of each candidate object respectively; in response to determining that the object matching time of the to-be-matched object is later than the information update time of the candidate object, determining that the candidate object is a non-incremental object; or in response to determining that the object matching time of the to-be-matched object is not later than the information update time of the candidate object, determining that the candidate object is an incremental object.
[0007] In an embodiment of the present disclosure, the above object matching method may further include: in response to determining that the matching result between the to-be-matched object and the candidate object recorded cannot be successfully read, determining the matching result between the to-be-matched object and the candidate object based on an object matching model.
[0008] In an embodiment of the present disclosure, after determining the matching result between the to-be-matched object and the candidate object based on the object matching model, the method further includes: recording the matching result between the to-be-matched object and the candidate object.
[0009] In an embodiment of the present disclosure, before determining whether the candidate object is an incremental object or a non-incremental object based on the object matching time of the to-be-matched object recorded and the information update time of each candidate object, the method further includes: comparing the object matching time of the to-be-matched object recorded with the update time of the object matching model recorded; in response to determining that the object matching time of the to-be-matched object is later than the update time of the object matching model, performing the step of determining whether the candidate object is an incremental object or a non-incremental object respectively based on the object matching time of the to-be-matched object recorded and the information update time of the candidate object; or in response to determining that the object matching time of the to-be-matched object is not later than the update time of the object matching model, determining the matching result between the to-be-matched object and at least one candidate object respectively based on the object matching model.
[0010] In an embodiment of the present disclosure, the matching result includes: the similarity between the to-be-matched object and the candidate object; respectively determining at least one target object matched with the to-be-matched object based on the matching result between the to-be-matched object and at least one candidate object includes: determining at least one target object matched with the to-be-matched object from the at least one candidate object based on the similarity between the to-be-matched object and the at least one candidate object and a preset matching condition.
[0011] In an embodiment of the present disclosure, the matching result includes: a determination result of whether the to-be-matched object and the candidate object match; respectively determining at least one target object matched with the to-be-matched object based on the matching result between the to-be-matched object and at least one candidate object includes: using the candidate object corresponding to the determination result of match among the at least one candidate object as at least one target object matched with the to-be-matched object.
[0012] In an embodiment of the present disclosure, after determining at least one target object matched with the to-be-matched object, the method further includes: updating the object matching time of the to-be-matched object to the current time.
[0013] Corresponding to the above object matching method, an embodiment of the present disclosure also discloses an object matching device, including:
[0014] A recall module, configured to recall at least one candidate object related to the object to be matched from an object pool;
[0015] An incremental object determination module, configured to determine whether each candidate object is an incremental object or a non-incremental object respectively based on the object matching time of the object to be matched and the information update time of each candidate object recorded;
[0016] An incremental object processing module, configured to, for a candidate object determined to be a non-incremental object, read the matching result recorded between the object to be matched and the candidate object;
[0017] A non-incremental object processing module, configured to, for a candidate object determined to be an incremental object, determine the matching result between the object to be matched and the candidate object based on an object matching model; and
[0018] A target object determination module, configured to determine at least one target object matched with the object to be matched based on the matching result between the object to be matched and the at least one candidate object.
[0019] In an embodiment of the present disclosure, the incremental object determination module includes:
[0020] A comparison unit, configured to compare the object matching time of the object to be matched recorded with the information update time of the candidate object;
[0021] A non-incremental object determination unit, configured to, in response to determining that the object matching time of the object to be matched is later than the information update time of the candidate object, determine that the candidate object is a non-incremental object; and
[0022] An incremental object determination unit, configured to, in response to determining that the object matching time of the object to be matched is not later than the information update time of the candidate object, determine that the candidate object is an incremental object.
[0023] In addition, an embodiment of the present disclosure also provides an electronic device, including: a memory, a processor, and a computer program stored on the memory and executable on the processor, where the processor implements the above object matching method when executing the program.
[0024] An embodiment of the present disclosure also provides a non-transitory computer-readable storage medium, where the non-transitory computer-readable storage medium stores computer instructions, and the computer instructions are used to cause a computer to execute the above object matching method.
[0025] Embodiments of the present disclosure also provide a computer program product, including computer program instructions, which when running on a computer, cause the computer to execute the above object matching method.
[0026] For the object matching method and related devices according to the embodiments of the present disclosure, first, candidate objects related to the object to be matched are determined by means of rough recall; then, based on the object matching time of the object to be matched in the last execution of object matching and the information update time of each candidate object, incremental objects that need to be re-matched for object matching and non-incremental objects that do not need to be re-matched for object matching are determined from the candidate objects. In this way, at least one target object that matches the object to be matched can be instantaneously determined in an incremental manner, thereby improving the timeliness and accuracy of finding the same model objects in a massive object pool and reducing the cost of finding the same model objects. Since there is no need to perform full-scale calculation, the overall calculation amount is expected to be reduced by 50%, and the throughput of the system will be doubled. BRIEF DESCRIPTION OF THE DRAWINGS
[0027] In order to more clearly illustrate the technical solutions in the present disclosure or related technologies, the following will briefly introduce the drawings required for use in the description of the embodiments or related technologies. Obviously, the drawings in the following description are only the embodiments of the present disclosure. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.
[0028] Figure 1 Shows the implementation process of the object matching method according to some embodiments of the present disclosure.
[0029] Figure 2 Shows the implementation process of a specific method for determining whether a candidate object is an incremental object or a non-incremental object based on the object matching time of the object to be matched recorded and the information update time of the candidate object according to some embodiments of the present disclosure.
[0030] Figure 3 Shows the internal structural schematic diagram of the object matching device according to some embodiments of the present disclosure.
[0031] Figure 4 Shows a more specific schematic diagram of the hardware structure of an electronic device according to some embodiments of the present disclosure. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0032] To make the objectives, technical solutions, and advantages of the present disclosure clearer and more understandable, the following further elaborates on the present disclosure in detail with reference to specific embodiments and the accompanying drawings.
[0033] It should be noted that, unless otherwise defined, the technical terms or scientific terms used in the embodiments of the present disclosure should have the ordinary meanings understood by those of ordinary skill in the field to which the present disclosure belongs. The "first", "second" and similar terms used in the embodiments of the present disclosure do not denote any order, quantity or importance, but are only used to distinguish different components. Words such as "include" or "comprise" mean that the elements or objects appearing before the word cover the elements or objects listed after the word and their equivalents, without excluding other elements or objects. Words such as "connect" or "couple" are not limited to physical or mechanical connections, but may include electrical connections, whether direct or indirect. "Upper", "lower", "left", "right", etc. are only used to represent relative position relationships, and when the absolute position of the object being described changes, the relative position relationship may also change accordingly.
[0034] It can be understood that before using the technical solutions of the various embodiments of the present disclosure, the types, usage scopes, usage scenarios, etc. of the personal information involved will be informed to the user in an appropriate manner, and the user's authorization will be obtained.
[0035] For example, when responding to receiving an active request from the user, a prompt message is sent to the user to clearly prompt the user that the operation requested to be executed will require obtaining and using the user's personal information. Thus, the user can autonomously choose whether to provide personal information to software or hardware such as an electronic device, an application program, a server, or a storage medium that executes the operations of the technical solutions of the present disclosure according to the prompt message.
[0036] As an optional but non-limiting implementation manner, the manner of sending a prompt message to the user in response to receiving an active request from the user may be, for example, in the form of a pop-up window, and the prompt message may be presented in text in the pop-up window. In addition, the pop-up window may also carry a selection control for the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0037] It can be understood that the above process of notifying and obtaining the user's authorization is only illustrative and does not limit the implementation manners of the present disclosure, and other manners that meet the relevant laws and regulations can also be applied to the implementation manners of the present disclosure.
[0038] In the embodiments of the present disclosure, for the convenience of description, the following concepts are defined first:
[0039] 1) The object to be matched can be used to represent a product for which the same model product is to be searched.
[0040] 2) Object bottom pool, which can be used to represent a product pool containing all products, usually with a magnitude in the billions. In the embodiments of the present disclosure, finding the same type of object specifically may refer to finding the same type of object of the object to be matched in the object bottom pool.
[0041] 3) Bottom pool object, the objects in the object bottom pool are called bottom pool objects.
[0042] 4) Object matching, which can be used to represent an object matching algorithm for finding the same type of object of the object to be matched in the above object bottom pool.
[0043] 5) Attribute information, which can be used to represent the description of the corresponding object, and can include one or more of the image and text information corresponding to the object. Among them, the above text information may include one or more of information such as title and detailed description.
[0044] 6) Feature information, which can be used to represent the features associated with the object obtained by calculating according to the attribute information of the object using a feature algorithm model. It can be understood that by processing the feature information of different objects, it can be determined whether different objects are of the same type.
[0045] 7) Algorithm model, an algorithm model is an expression of an algorithm, which finds patterns or makes predictions by sorting through massive amounts of data.
[0046] 8) Deep learning, a branch of machine learning, is an algorithm for representing learning of data with an artificial neural network architecture.
[0047] 9) Recall, simply finding potential targets through the capabilities of an algorithm in a large amount of data.
[0048] As mentioned above, how to quickly find the same type of object that matches a certain object among a large number of objects has become a problem that needs to be solved in various e-commerce applications. In the embodiments of the present disclosure, the operation of finding the same type of object that matches a certain object is called object matching.
[0049] Existing object matching methods usually rely on deep learning. The matching method based on deep learning means that by using a deep learning model to learn the features and semantic information of objects, object matching can be achieved. This method has high accuracy and efficiency, but requires a large amount of training data and computing resources. At the same time, when the objects in the object bottom pool change, in order to ensure the accuracy of the matching relationship between objects, it is necessary to recalculate the matching relationship between objects. Currently, the matching relationship between objects is usually updated by means of periodic full-scale updates, but this method not only cannot effectively guarantee timeliness and accuracy, but also performs a large amount of recalculation of the same type relationship, resulting in a large computational pressure.
[0050] To solve the above problems, embodiments of the present disclosure provide an object matching method, which can instantaneously determine at least one target object that matches the object to be matched in an incremental manner, thereby improving the timeliness and accuracy of object matching in a massive object pool, and effectively reducing the cost of object matching.
[0051] Figure 1 Shows the implementation process of the object matching method described in the embodiments of the present disclosure. As Figure 1 shown, the above object matching method may include:
[0052] In step 110, recall at least one candidate object related to the object to be matched from the object bottom pool.
[0053] In step 120, determine whether each candidate object is an incremental object or a non-incremental object based on the object matching time of the object to be matched and the information update time of each candidate object recorded.
[0054] In step 130, for the candidate objects determined to be non-incremental objects, read the matching results recorded between the object to be matched and the candidate objects.
[0055] In step 140, for the candidate objects determined to be incremental objects, determine the matching results between the object to be matched and the candidate objects based on the object matching model.
[0056] In step 150, determine at least one target object that matches the object to be matched based on the matching results between the object to be matched and each candidate object.
[0057] Next, the specific implementation methods of each step in the above object matching method will be further described in detail with specific examples.
[0058] In the embodiments of the present disclosure, the step 110 of recalling at least one candidate object related to the object to be matched from the object bottom pool may specifically include: recalling at least one candidate object related to the object to be matched from the object bottom pool based on the attribute information of the object to be matched and the inverted index library corresponding to the pre-established object bottom pool.
[0059] In an embodiment of the present disclosure, for each object in the object pool, an inverted index will be established in advance, so that an inverted index library corresponding to the object pool can be constructed. Moreover, when the attribute information of the objects in the object pool is updated, or when new objects are added to the object pool, the inverted index library corresponding to the object pool will be updated based on the updated attribute information of the objects in the object pool. It can be understood that through the pre-established inverted index library, at least one candidate object related to the object to be matched can be recalled from the object pool based on the attribute information of the object to be matched. Specifically, in practical applications, the attribute information of the object to be matched can be segmented first; then, based on the segmentation results, a search is performed in the inverted index library corresponding to the object pool to obtain a search result; finally, after operations such as fusion, sorting, and filtering on the search result, the above-mentioned at least one candidate object related to the object to be matched can be obtained. Regarding how to perform a search in the inverted index library and how to perform fusion, sorting, and filtering on the search result, reference can be made to the current inverted index technology, which will not be elaborated in detail here.
[0060] It should be noted that the embodiments of the present disclosure do not limit the specific method used to recall at least one candidate object related to the object to be matched from the object pool. That is to say, the embodiments of the present disclosure can use any recall method to recall at least one candidate object related to the object to be matched from the object pool.
[0061] Regarding step 120 above, the specific method for determining whether each candidate object is an incremental object or a non-incremental object based on the object matching time of the object to be matched and the information update time of the candidate object can be referred to Figure 2 . As Figure 2 shown, in an embodiment of the present disclosure, the following steps can be respectively executed for each candidate object:
[0062] In step 210, the object matching time of the above-mentioned object to be matched recorded is compared with the information update time of the above-mentioned candidate object.
[0063] In an embodiment of the present disclosure, in order to implement object matching in an incremental manner, the specific time when object matching is performed will be recorded after object matching is performed for a certain object to be matched, and the above time will be recorded as the object matching time of the object to be matched. In an embodiment of the present disclosure, the object matching time of the above-mentioned object to be matched will be used as a reference time. Specifically, the objects in the object pool whose information is updated after this reference time will be regarded as incremental objects, and the incremental objects need to perform object matching again; while for the objects in the object pool whose information is not updated after this reference time, they will be regarded as non-incremental objects, and the non-incremental objects can directly reuse the matching results obtained during the previous object matching without the need to perform object matching again.
[0064] In order to determine whether a candidate object is an incremental object or a non-incremental object, in addition to recording the object matching time of the above-mentioned object to be matched, for each bottom pool object, its information update time also needs to be recorded. That is, after any bottom pool object is updated with information, the specific time when the bottom pool object is updated with information needs to be further recorded.
[0065] In step 220, in response to determining that the object matching time of the object to be matched is later than the information update time of the candidate object, it is determined that the above-mentioned candidate object is a non-incremental object.
[0066] As mentioned above, in the embodiments of the present disclosure, the above-mentioned non-incremental object may specifically refer to a bottom pool object that has not been updated with information after an object matching of the object to be matched. For the above-mentioned non-incremental object, the matching result obtained during the previous object matching can be directly reused without the need to perform object matching again.
[0067] In step 230, in response to determining that the object matching time of the object to be matched is not later than the information update time of the candidate object, it is determined that the above-mentioned candidate object is an incremental object.
[0068] As mentioned above, in the embodiments of the present disclosure, the above-mentioned incremental object may specifically refer to a bottom pool object that has been updated with information after an object matching of the object to be matched. For the above-mentioned incremental object, since its information has been updated, the matching result obtained during the previous object matching cannot be directly reused, and object matching needs to be performed again.
[0069] Next, in step 130, for a candidate object determined to be a non-incremental object, the matching result recorded between the object to be matched and the above-mentioned candidate object can be directly read. It can be understood that the matching result between the above-mentioned object to be matched and the above-mentioned candidate object may specifically be the matching result obtained and recorded during the previous object matching of the above-mentioned object to be matched and the candidate object.
[0070] In the embodiments of the present disclosure, for a candidate object determined to be a non-incremental object, there may also be a situation where the matching result cannot be successfully read during the process of reading the matching result recorded between the object to be matched and the candidate object. When such a situation where the matching result cannot be successfully read occurs, the matching result between the object to be matched and the above-mentioned candidate object can be re-determined based on the object matching model.
[0071] On the other hand, in step 140, for a candidate object determined to be an incremental object, since the matching result obtained and recorded during the previous object matching of the above-mentioned object to be matched and the above-mentioned candidate object cannot be reused, object matching will be performed again based on the object matching model to determine the matching result between the object to be matched and the above-mentioned candidate object.
[0072] In an embodiment of the present disclosure, the above object matching model may be a deep learning algorithm model for determining the similarity between the features of two objects. Generally, its input is the feature information of the objects, and its output is the similarity between the objects or the prediction result of the matching degree between the objects. For example, match or not match, etc.
[0073] In an embodiment of the present disclosure, the above feature information of the object can be extracted from the attribute information of the object. Generally, the above attribute information of the object may include one or more of the information such as the image corresponding to the object and text information. Therefore, in the above step 140, the feature algorithm model may be first used to perform feature calculation based on one or more of the information such as the images and text information corresponding to the object to be matched and the candidate object to determine the feature information of the object to be matched and the candidate object. Then, the extracted feature information of the object to be matched and the candidate object is input into the above object matching model, and the object matching model outputs the matching result between the object to be matched and the candidate object. It should be noted that the specific algorithms of the above feature algorithm model and object matching model are not limited in the embodiments of the present disclosure.
[0074] To implement the above-mentioned same-model object matching calculation in an incremental manner, in an embodiment of the present disclosure, after determining the matching result between the object to be matched and the candidate object based on the object matching model, the above object matching method will further include: recording the matching result between the object to be matched and the candidate object. That is, after re-performing object matching based on the object matching model to determine the matching result between the object to be matched and the candidate object, the above matching result will be further stored for reuse in subsequent object matching processes.
[0075] In some embodiments of the present disclosure, the above matching result may include: the similarity between the object to be matched and the candidate object. In this case, the step 150 of determining at least one target object matching the object to be matched based on the matching results between the object to be matched and at least one candidate object may include: determining at least one target object matching the object to be matched from the at least one candidate object based on the similarity between the object to be matched and the at least one candidate object and a preset matching condition.
[0076] Specifically, in the embodiments of the present disclosure, the above-mentioned preset matching condition may be that the similarity between the object to be matched and the candidate object is greater than a preset similarity threshold, or the sorting result of the similarities between the object to be matched and the candidate objects sorted from high to low is greater than a preset sorting threshold, and so on. In this way, based on the similarity between the object to be matched and at least one candidate object and the above-mentioned preset matching condition, at least one target object that matches the object to be matched can be determined from the above-mentioned at least one candidate object.
[0077] In some other embodiments of the present disclosure, the above-mentioned matching result may include: a determination result on whether the object to be matched and the candidate object match. The above-mentioned determination result may include: the object to be matched and the candidate object match or the object to be matched and the candidate object do not match, and so on. In this case, the step 150 of respectively determining at least one target object that matches the object to be matched based on the matching results between the object to be matched and at least one candidate object may include: using the candidate objects corresponding to the determination result of "match" among the at least one candidate object as at least one target object that matches the object to be matched. That is to say, in this case, regardless of whether a candidate object is an incremental object or a non-incremental object, as long as the determination result is that the candidate object matches the object to be matched, then the candidate object is a target object of the above-mentioned object to be matched.
[0078] It should be noted that, in some embodiments of the present disclosure, after determining at least one target object that matches the object to be matched, the above-mentioned object matching method may further include: updating the object matching time of the object to be matched to the current time. In this way, the object matching time of the object to be matched will be updated to the time corresponding to the result of this object matching, so as to be used as a new reference time in the next object matching process for the object to be matched.
[0079] It can be seen from this that the object matching method and related devices described in the embodiments of the present disclosure first determine candidate objects related to the object to be matched by means of rough recall; then, based on the object matching time of the object to be matched in the previous execution of object matching and the information update time of each candidate object, incremental objects that need to re-perform object matching and non-incremental objects that do not need to re-perform object matching are determined from each candidate object. In this way, at least one target object that matches the object to be matched can be determined instantaneously in an incremental manner, thereby improving the timeliness and accuracy of finding the same type of object in a massive object pool, and reducing the cost of finding the same type of object. Since there is no need to perform full-scale calculation, the overall calculation amount is expected to be reduced by 50%, and the throughput of the system will be doubled.
[0080] In the above object matching method, the object matching time of the object to be matched and the information update time of the candidate object are mainly considered. In practical applications, when the above object matching model is updated, the matching result between two objects determined by the above object matching model will also change accordingly. Therefore, in this case, the matching result obtained during the previous object matching cannot be directly reused, and thus object matching needs to be performed again.
[0081] Based on the above considerations, in an embodiment of the present disclosure, before the above step 120, that is, before determining whether each candidate object is an incremental object or a non-incremental object based on the object matching time of the object to be matched recorded and the information update time of each candidate object, the above object matching method may further include:
[0082] First, compare the object matching time of the object to be matched recorded with the update time of the object matching model recorded.
[0083] In response to determining that the object matching time of the object to be matched is later than the update time of the object matching model, perform the step of determining whether each candidate object is an incremental object or a non-incremental object based on the object matching time of the object to be matched recorded and the information update time of each candidate object, that is, perform the above step 120.
[0084] In response to determining that the object matching time of the object to be matched is not later than the update time of the object matching model, determine the matching results between the object to be matched and at least one candidate object based on the object matching model.
[0085] Based on the above method, when the update time of the above object matching model is later than the object matching time of the object to be matched recorded, in order to ensure the accuracy of the object matching result, the matching results between the object to be matched and at least one candidate object will be re-determined based on the object matching model; and when the update time of the above object matching model is earlier than the object matching time of the object to be matched recorded, for non-incremental objects among the candidate objects, the matching result obtained after the previous object matching can still be reused without the need to perform object matching again, thereby reducing the cost of object matching and improving the efficiency of object matching.
[0086] Corresponding to the above object matching method, some embodiments of the present disclosure provide an object matching device, whose internal structure is as Figure 3 shown, including:
[0087] A recall module 310, configured to recall at least one candidate object related to the object to be matched from the object pool;
[0088] An incremental object determination module 320, configured to determine whether each candidate object is an incremental object or a non-incremental object based on the object matching time of the object to be matched recorded and the information update time of each candidate object respectively;
[0089] An incremental object processing module 330, configured to, for a candidate object determined to be a non-incremental object, read the matching result between the object to be matched recorded and the candidate object;
[0090] A non-incremental object processing module 340, configured to, for a candidate object determined to be an incremental object, determine the matching result between the object to be matched and the candidate object based on an object matching model; and
[0091] A target object determination module 350, configured to determine at least one target object that matches the object to be matched based on the matching results between the object to be matched and at least one candidate object respectively.
[0092] In some embodiments of the present disclosure, the above-mentioned incremental object determination module 420 may include:
[0093] A comparison unit, configured to compare the object matching time of the object to be matched recorded with the information update time of the candidate object;
[0094] A non-incremental object determination unit, configured to determine that the candidate object is a non-incremental object in response to determining that the object matching time of the object to be matched is later than the information update time of the candidate object; and
[0095] An incremental object determination unit, configured to determine that the candidate object is an incremental object in response to determining that the object matching time of the object to be matched is not later than the information update time of the candidate object.
[0096] Based on the same inventive concept, corresponding to the method of any of the above embodiments, the present disclosure further provides an electronic device, including: a memory, a processor, and a computer program stored on the memory and executable on the processor, where the processor implements the object matching method of any of the above embodiments when executing the program.
[0097] Figure 4 FIG. shows a schematic hardware structure diagram of a more specific electronic device provided in this embodiment. The device may include: a processor 2010, a memory 2020, an input / output interface 2030, a communication interface 2040, and a bus 2050. Among them, the processor 2010, the memory 2020, the input / output interface 2030, and the communication interface 2040 are communicatively connected to each other inside the device through the bus 2050.
[0098] The processor 2010 can be implemented in the form of a general-purpose CPU (Central Processing Unit), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits, etc., and is used to execute relevant programs to implement the technical solutions provided in the embodiments of this specification.
[0099] The memory 2020 can be implemented in the form of a ROM (Read Only Memory), a RAM (Random Access Memory), a static storage device, a dynamic storage device, etc. The memory 2020 can store an operating system and other application programs. When implementing the technical solutions provided in the embodiments of this specification through software or firmware, the relevant program codes are stored in the memory 2020 and are called and executed by the processor 2010.
[0100] The input / output interface 2030 is used to connect input / output devices to achieve information input and output. Among them, the input / output devices can be configured as components in the device or externally connected to the device to provide corresponding functions. The input devices can include microphones, various sensors, etc., and the output devices can include displays, speakers, vibrators, indicator lights, etc.
[0101] The communication interface 2040 is used to connect a communication module (not shown in the figure) to achieve communication interaction between this device and other devices. The communication module can achieve communication through a wired method (such as USB, network cable, etc.) or through a wireless method (such as a mobile network, WIFI, Bluetooth, etc.).
[0102] The bus 2050 includes a path for transmitting information between various components of the device (such as the processor 2010, the memory 2020, the input / output interface 2030, and the communication interface 2040).
[0103] It should be noted that although the above device only shows the processor 2010, the memory 2020, the input / output interface 2030, the communication interface 2040, and the bus 2050, in the specific implementation process, this device may also include other components necessary for normal operation. In addition, those skilled in the art can understand that the above device may also only include the components necessary to implement the solutions of the embodiments of this specification and does not necessarily include all the components shown in the figure.
[0104] The electronic device in the above embodiment is used to implement the corresponding object matching method in any of the foregoing embodiments and has the beneficial effects of the corresponding method embodiments, which will not be elaborated here.
[0105] Based on the same inventive concept, corresponding to the method of any of the above embodiments, the present disclosure also provides a non-transitory computer-readable storage medium storing computer instructions for causing the computer to execute the object matching method described in any one of the above embodiments.
[0106] The computer-readable medium of this embodiment includes permanent and non-permanent, removable and non-removable media, and information storage can be implemented by any method or technology. The information can be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassette tapes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information accessible by a computing device.
[0107] The computer instructions stored in the storage medium of the above embodiment are used to cause the computer to execute the task processing method described in any one of the above embodiments, and have the beneficial effects of the corresponding method embodiments, which will not be elaborated here.
[0108] Those of ordinary skill in the art should understand that the discussion of any of the above embodiments is only exemplary and is not intended to imply that the scope of the present disclosure (including the claims) is limited to these examples; under the concept of the present disclosure, the technical features in the above embodiments or different embodiments can also be combined, the steps can be implemented in any order, and there are many other variations in different aspects of the embodiments of the present disclosure as described above, which are not provided in detail for the sake of brevity.
[0109] In addition, for simplicity of explanation and discussion, and so as not to make the embodiments of the present disclosure difficult to understand, well-known power / ground connections to integrated circuit (IC) chips and other components may or may not be shown in the provided drawings. Further, the devices may be shown in block diagram form in order to avoid making the embodiments of the present disclosure difficult to understand, and this also takes into account the fact that details of the implementation of these block diagram devices are highly dependent on the platform on which the embodiments of the present disclosure are to be implemented (i.e., these details should be entirely within the understanding of those skilled in the art). In cases where specific details (such as circuits) are set forth to describe exemplary embodiments of the present disclosure, it will be apparent to those skilled in the art that the embodiments of the present disclosure may be practiced without these specific details or with variations of these specific details. Accordingly, these descriptions should be considered illustrative rather than restrictive.
[0110] Although the present disclosure has been described in connection with specific embodiments thereof, many alternatives, modifications, and variations of these embodiments will be apparent to those of ordinary skill in the art based on the foregoing description. For example, other memory architectures (such as dynamic RAM (DRAM)) may be used with the embodiments discussed.
[0111] Embodiments of the present disclosure are intended to cover all such alternatives, modifications, and variations that fall within the broad scope of the appended claims. Therefore, any omissions, modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the embodiments of the present disclosure shall be included within the protection scope of the present disclosure.
Claims
1. An object matching method, comprising: Recalling at least one candidate object related to the object to be matched from the object pool; wherein the object pool is a product pool containing all products; Determine whether each candidate object is an incremental object or a non-incremental object based on the recorded object matching time of the object to be matched and the information update time of each candidate object; For a candidate object determined to be a non-incremental object, reading a recorded matching result between the object to be matched and the candidate object; For a candidate object determined as an incremental object, determining a matching result between the object to be matched and the candidate object based on an object matching model; and Determine at least one target object that matches the object to be matched based on the matching result between the object to be matched and the at least one candidate object; wherein, The determining whether each candidate object is an incremental object or a non-incremental object based on the recorded object matching time of the object to be matched and the information update time of each candidate object comprises: For each candidate object, respectively, compare the recorded object matching time of the object to be matched with the information update time of the candidate object; In response to determining that the object matching time of the to-be-matched object is later than the information update time of the candidate object, determining that the candidate object is a non-incremental object; and In response to determining that the object matching time of the to-be-matched object is not later than the information update time of the candidate object, it is determined that the candidate object is an incremental object.
2. The object matching method according to claim 1, wherein: The step of recalling at least one candidate object related to the object to be matched from the object pool comprises: Based on the attribute information of the object to be matched and the pre-established inverted index library corresponding to the object pool, at least one candidate object related to the object to be matched is recalled from the object pool.
3. The object matching method according to claim 1, further comprising: In response to determining that the matching result between the object to be matched and the candidate object cannot be successfully read, the matching result between the object to be matched and the candidate object is determined based on the object matching model.
4. The object matching method according to claim 1 or 3, wherein: After determining a matching result between the object to be matched and the candidate object based on the object matching model, the method further comprises: The matching result between the object to be matched and the candidate object is recorded.
5. The object matching method according to claim 1, wherein: Before determining whether each candidate object is an incremental object or a non-incremental object based on the recorded object matching time of the object to be matched and the information update time of each candidate object, the method further includes: Comparing the object matching time of the object to be matched with the recorded update time of the object matching model; In response to determining that the object matching time of the object to be matched is later than the update time of the object matching model, performing the step of determining whether each candidate object is an incremental object or a non-incremental object based on the recorded object matching time of the object to be matched and the information update time of each candidate object; and In response to determining that the object matching time of the object to be matched is not later than the update time of the object matching model, a matching result between the object to be matched and the at least one candidate object is respectively determined based on the object matching model.
6. The object matching method according to claim 1, wherein: The matching result includes: the similarity between the to-be-matched object and the candidate object; and Determining at least one target object that matches the object to be matched based on the matching result between the object to be matched and the at least one candidate object includes: Based on the similarity between the object to be matched and the at least one candidate object and a preset matching condition, at least one target object matching the object to be matched is determined from the at least one candidate object.
7. The object matching method according to claim 1, wherein: The matching result includes: a determination result of whether the to-be-matched object matches the candidate object; and Determining at least one target object that matches the object to be matched based on the matching result between the object to be matched and the at least one candidate object includes: The candidate object corresponding to the determination result of matching in the at least one candidate object is used as at least one target object to be matched with the object to be matched.
8. The object matching method according to claim 1, wherein: After determining at least one target object that matches the object to be matched, the method further includes: The object matching time of the object to be matched is updated to the current time.
9. An object matching device, comprising: A recall module, used to recall at least one candidate object related to the object to be matched from the object pool; wherein the object pool is a product pool containing all products; An incremental object determination module, used to determine whether each candidate object is an incremental object or a non-incremental object based on the recorded object matching time of the object to be matched and the information update time of each candidate object; An incremental object processing module, configured to read the recorded matching result between the object to be matched and the candidate object for a candidate object determined to be a non-incremental object; a non-incremental object processing module, configured to determine, for a candidate object determined as an incremental object, a matching result between the object to be matched and the candidate object based on an object matching model; and A target object determination module is used to determine at least one target object that matches the object to be matched based on the matching result between the object to be matched and the at least one candidate object; wherein, The incremental object determination module comprises: A comparing unit, configured to compare the recorded object matching time of the object to be matched with the information update time of the candidate object; a non-incremental object determination unit, configured to determine that the candidate object is a non-incremental object in response to determining that the object matching time of the to-be-matched object is later than the information update time of the candidate object; and The incremental object determination unit is configured to determine that the candidate object is an incremental object in response to determining that the object matching time of the to-be-matched object is not later than the information update time of the candidate object.
10. An electronic device comprising: A memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the object matching method according to any one of claims 1 to 8 is implemented.
11. A non-transitory computer-readable storage medium storing computer instructions, wherein the computer instructions are used to enable a computer to execute the object matching method according to any one of claims 1 to 8.
12. A computer program product, comprising computer program instructions, which, when executed on a computer, enable the computer to execute the object matching method according to any one of claims 1 to 8.
Citation Information
Patent Citations
Method and device for providing target comparison commodity, equipment and medium
CN112036981A
Object recognition method and device, equipment and storage medium
CN118277804A