CN113535958A - Production thread aggregation method, device and system, electronic equipment and medium - Google Patents
Production thread aggregation method, device and system, electronic equipment and medium Download PDFInfo
- Publication number
- CN113535958A CN113535958A CN202110859746.8A CN202110859746A CN113535958A CN 113535958 A CN113535958 A CN 113535958A CN 202110859746 A CN202110859746 A CN 202110859746A CN 113535958 A CN113535958 A CN 113535958A
- Authority
- CN
- China
- Prior art keywords
- production
- threads
- category
- thread
- threshold
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Databases & Information Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
The present disclosure provides a production thread aggregation method, apparatus, system, electronic device, computer-readable storage medium, and computer program product, and relates to the field of computers, in particular, to the field of intelligent search technology. The implementation scheme is as follows: obtaining a production thread from the search log; classifying the production lines based on the category information to obtain one or more first production line groups; for each of the one or more first groups of cords, performing the following aggregation operation: obtaining a vector for each production thread in the first set of production threads; determining a first number of production threads of each production thread of the first group of production threads based on the vector, the similarity to the first number of production threads being greater than a first threshold; and aggregating each production thread and all the determined first number of production threads to obtain one or more clusters.
Description
Technical Field
The present disclosure relates to the field of computers, and more particularly, to the field of intelligent search, and more particularly, to a method, an apparatus, a system, an electronic device, a computer-readable storage medium, and a computer program product for production cue aggregation.
Background
The existing knowledge search engine is used for providing a simple and dependable information acquisition mode for a user. Meanwhile, the search requirement of the knowledge content is continuously updated and iterated, and the requirement of the user on new knowledge content can be better met by mining production clues related to the requirement of the user on search knowledge to perform oriented production. However, the production threads mined based on the search logs are large in magnitude, and the deep semantics expressed by some production threads are the same. Therefore, how to quickly perform semantic aggregation on production threads to reduce repetitive production becomes a problem to be solved.
Disclosure of Invention
The present disclosure provides a production thread aggregation method, apparatus, electronic device, computer-readable storage medium, and computer program product.
According to an aspect of the present disclosure, there is provided a production thread polymerization method comprising: obtaining a production thread from the search log; classifying the production threads based on category information to obtain one or more first production thread groups; for each of the one or more first set of production lines: obtaining a vector for each production thread in the first set of production threads; determining a first number of production threads of each production thread of the first group of production threads based on the vector, the first number of production threads having a similarity greater than a first threshold; and aggregating said each production thread and all the determined first number of production threads to obtain one or more clusters.
According to another aspect of the present disclosure, there is provided a production cord polymerization apparatus comprising: an acquisition unit configured to obtain a production thread from the search log; a classification unit configured to classify the production cues based on category information to obtain one or more first production cue groups; one or more aggregation units, wherein each of the aggregation units is configured to perform the following slave operations: obtaining a vector for each production thread in the first set of production threads; determining a first number of production threads of each production thread of the first group of production threads based on the vector, the first number of production threads having a similarity greater than a first threshold; and aggregating said each production thread and all the determined first number of production threads to obtain one or more clusters.
According to another aspect of the present disclosure, there is provided a production line cord polymerization system comprising: a first apparatus configured to perform the following operations: obtaining a production thread from the search log; classifying the production clues based on the category information to obtain one or more first production clue groups; one or more second apparatuses, wherein each of the second apparatuses is configured to perform the following slave operations: obtaining a vector for each production thread in the first set of production threads; determining a first number of production threads of each production thread of the first group of production threads based on the vector, the first number of production threads having a similarity greater than a first threshold; and aggregating said each production thread and all the determined first number of production threads to obtain one or more clusters.
According to another aspect of the present disclosure, there is provided an electronic device including: at least one processor; and a memory communicatively coupled to the at least one processor; the memory stores instructions executable by the at least one processor to cause the at least one processor to perform the method of the present disclosure.
According to another aspect of the present disclosure, there is provided a non-transitory computer readable storage medium storing computer instructions for causing a computer to perform the method described in the present disclosure.
According to another aspect of the disclosure, a computer program product is provided, comprising a computer program which, when executed by a processor, implements the method described in the disclosure.
According to one or more embodiments of the disclosure, production threads are classified based on category information, so that the production threads in the classified production thread group are all similar, and by means of vector recall based on vector similarity, the probability of missed recall can be greatly reduced, so that the time consumed for aggregating production threads of tens of millions of levels can be controlled within an acceptable range, and the aggregation efficiency is improved.
It should be understood that the statements in this section do not necessarily identify key or critical features of the embodiments of the present disclosure, nor do they limit the scope of the present disclosure. Other features of the present disclosure will become apparent from the following description.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate exemplary embodiments of the embodiments and, together with the description, serve to explain the exemplary implementations of the embodiments. The illustrated embodiments are for purposes of illustration only and do not limit the scope of the claims. Throughout the drawings, identical reference numbers designate similar, but not necessarily identical, elements.
FIG. 1 illustrates a schematic diagram of an exemplary system in which various methods described herein may be implemented, according to an embodiment of the present disclosure;
figure 2 illustrates a flow diagram of a production thread aggregation method according to an embodiment of the present disclosure;
FIG. 3 illustrates a flow diagram for classifying production cues based on category information according to an embodiment of the present disclosure;
FIG. 4 illustrates a flow diagram for aggregating a production line cord, according to an embodiment of the present disclosure;
fig. 5 shows a block diagram of a production thread aggregation apparatus according to an embodiment of the present disclosure;
figure 6 illustrates a block diagram of a production thread aggregation system, in accordance with an embodiment of the present disclosure; and
FIG. 7 illustrates a block diagram of an exemplary electronic device that can be used to implement embodiments of the present disclosure.
Detailed Description
Exemplary embodiments of the present disclosure are described below with reference to the accompanying drawings, in which various details of the embodiments of the disclosure are included to assist understanding, and which are to be considered as merely exemplary. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope of the present disclosure. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
In the present disclosure, unless otherwise specified, the use of the terms "first", "second", etc. to describe various elements is not intended to limit the positional relationship, the timing relationship, or the importance relationship of the elements, and such terms are used only to distinguish one element from another. In some examples, a first element and a second element may refer to the same instance of the element, and in some cases, based on the context, they may also refer to different instances.
The terminology used in the description of the various described examples in this disclosure is for the purpose of describing particular examples only and is not intended to be limiting. Unless the context clearly indicates otherwise, if the number of elements is not specifically limited, the elements may be one or more. Furthermore, the term "and/or" as used in this disclosure is intended to encompass any and all possible combinations of the listed items.
Embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings.
Fig. 1 illustrates a schematic diagram of an exemplary system 100 in which various methods and apparatus described herein may be implemented in accordance with embodiments of the present disclosure. Referring to fig. 1, the system 100 includes one or more client devices 101, 102, 103, 104, 105, and 106, a server 120, and one or more communication networks 110 coupling the one or more client devices to the server 120. Client devices 101, 102, 103, 104, 105, and 106 may be configured to execute one or more applications.
In embodiments of the present disclosure, server 120 may run one or more services or software applications that enable the execution of the production thread aggregation method.
In some embodiments, the server 120 may also provide other services or software applications that may include non-virtual environments and virtual environments. In certain embodiments, these services may be provided as web-based services or cloud services, for example, provided to users of client devices 101, 102, 103, 104, 105, and/or 106 under a software as a service (SaaS) model.
In the configuration shown in fig. 1, server 120 may include one or more components that implement the functions performed by server 120. These components may include software components, hardware components, or a combination thereof, which may be executed by one or more processors. A user operating a client device 101, 102, 103, 104, 105, and/or 106 may, in turn, utilize one or more client applications to interact with the server 120 to take advantage of the services provided by these components. It should be understood that a variety of different system configurations are possible, which may differ from system 100. Accordingly, fig. 1 is one example of a system for implementing the various methods described herein and is not intended to be limiting.
A user may use client devices 101, 102, 103, 104, 105, and/or 106 to enter query content and obtain search knowledge. The client device may provide an interface that enables a user of the client device to interact with the client device. The client device may also output information to the user via the interface. Although fig. 1 depicts only six client devices, those skilled in the art will appreciate that any number of client devices may be supported by the present disclosure.
Network 110 may be any type of network known to those skilled in the art that may support data communications using any of a variety of available protocols, including but not limited to TCP/IP, SNA, IPX, etc. By way of example only, one or more networks 110 may be a Local Area Network (LAN), an ethernet-based network, a token ring, a Wide Area Network (WAN), the internet, a virtual network, a Virtual Private Network (VPN), an intranet, an extranet, a Public Switched Telephone Network (PSTN), an infrared network, a wireless network (e.g., bluetooth, WIFI), and/or any combination of these and/or other networks.
The server 120 may include one or more general purpose computers, special purpose server computers (e.g., PC (personal computer) servers, UNIX servers, mid-end servers), blade servers, mainframe computers, server clusters, or any other suitable arrangement and/or combination. The server 120 may include one or more virtual machines running a virtual operating system, or other computing architecture involving virtualization (e.g., one or more flexible pools of logical storage that may be virtualized to maintain virtual storage for the server). In various embodiments, the server 120 may run one or more services or software applications that provide the functionality described below.
The computing units in server 120 may run one or more operating systems including any of the operating systems described above, as well as any commercially available server operating systems. The server 120 may also run any of a variety of additional server applications and/or middle tier applications, including HTTP servers, FTP servers, CGI servers, JAVA servers, database servers, and the like.
In some implementations, the server 120 may include one or more applications to analyze and consolidate data feeds and/or event updates received from users of the client devices 101, 102, 103, 104, 105, and 106. Server 120 may also include one or more applications to display data feeds and/or real-time events via one or more display devices of client devices 101, 102, 103, 104, 105, and 106.
In some embodiments, the server 120 may be a server of a distributed system, or a server incorporating a blockchain. The server 120 may also be a cloud server, or a smart cloud computing server or a smart cloud host with artificial intelligence technology. The cloud Server is a host product in a cloud computing service system, and is used for solving the defects of high management difficulty and weak service expansibility in the traditional physical host and Virtual Private Server (VPS) service.
The system 100 may also include one or more databases 130. In some embodiments, these databases may be used to store data and other information. For example, one or more of the databases 130 may be used to store data such as search logs, line strings, and the like. The data store 130 may reside in various locations. For example, the data store used by the server 120 may be local to the server 120, or may be remote from the server 120 and may communicate with the server 120 via a network-based or dedicated connection. The data store 130 may be of different types. In certain embodiments, the data store used by the server 120 may be a database, such as a relational database. One or more of these databases may store, update, and retrieve data to and from the database in response to the command.
In some embodiments, one or more of the databases 130 may also be used by applications to store application data. The databases used by the application may be different types of databases, such as key-value stores, object stores, or regular stores supported by a file system.
The system 100 of fig. 1 may be configured and operated in various ways to enable application of the various methods and apparatus described in accordance with the present disclosure.
Knowledge products such as Baidu encyclopedia, Baidu know, Baidu experience, Baidu library, baby know, etc. provide output of various knowledge contents for user search. The user enters a search term or a search sentence, for example: what do baby eczema? ", to obtain the corresponding reply page, thereby obtaining the knowledge content corresponding to the retrieval information. Meanwhile, the requirements of the knowledge contents are continuously updated and iterated, search words and/or search sentences (query) capable of reflecting the knowledge searching requirements of the user are mined to serve as production clues, and oriented production is carried out based on the production clues, so that the requirements of the user on the new knowledge contents can be better met. However, the magnitude of the production clues obtained by mining the search logs is large, and there are some search terms and/or search sentences that express the same deep semantics, such as "how do baby eczema? "and" how does infant eczema treat? The meaning of "expressed" is identical. How to quickly perform semantic aggregation on production threads to reduce repeated production becomes a problem to be solved.
Thus, embodiments according to the present disclosure provide a production cord polymerization method. Figure 2 illustrates a flow diagram of a production thread aggregation method 200 according to an embodiment of the disclosure. As shown in fig. 2, the method 200 includes: (step 210); classifying the manufacturing lines based on the category information to obtain one or more first groups of manufacturing lines (step 220); for each of the one or more first set of production lines, performing the following aggregation operations: obtaining a vector for each production thread in the first set of production threads (step 230); determining a first number of production threads of each production thread in the first group of production threads based on the vector, the similarity of each production thread being greater than a first threshold (step 240); and aggregating each production thread and all the determined first number of production threads to obtain one or more clusters (step 250).
According to the method and the device, the production clues are classified based on the category information, so that the production clues in the classified production clue group are all similar, the probability of missing recall can be greatly reduced through vector recall based on the vector similarity, the time consumption of aggregation of the production clues of tens of millions of levels can be controlled within an acceptable range, and the aggregation efficiency is improved.
In some embodiments, the search log may be a search history of the user obtained by search engines, and in general, each search engine may store a search history of the user including query content, query time, query IP, operating system and browser information, and so on, in order to improve the accuracy of the search. And the search history records can also record search results of all query contents clicked and viewed by the user, and the search results comprise display page position information, product line identification and the like. Further, the query content (search query) may be one or more words, one or more questions, one or more nouns, one or more symbols, etc., and the search result corresponding to the query content may be the content of paraphrase corresponding to the query content, such as the explanation of noun or symbol; the search result corresponding to the query content may be content after the search content is further generated, for example, the query content is "egg frying with tomatoes", and the search result is "how do eggs fried with tomatoes? ".
In some embodiments, the production threads are query contents of users in the search logs that meet production requirements of the production line business, such as some of the query contents, "how to do? The query question of the class is the query content which can be produced by knowing the service line or the experience service line, and the query question can be used as a production clue for knowing the service line or the experience service line.
In some embodiments, the production cues may be query content and search results corresponding to the query content. For example, the query content is "tomato-fried egg method", and the search result is "how do tomato-fried eggs? ", the query content and the search results may both be production threads.
Alternatively, the production thread may be at least one thread selected from a plurality of initial production threads that meet the production requirements of the line service. Illustratively, the initial production thread is the query content and/or search results of the initial user satisfying the business requirement in the search log, and the production thread can be obtained by processing (e.g., filtering, etc.) the initial thread.
In some examples, all query content in the search logs that meet the business requirements of the production line (i.e., search query) may be mined to obtain production threads.
Illustratively, a product line is a business line that produces (or processes) a production line, such as a know-how business line, an encyclopedia business line. The product line provides the processed content (e.g., landing pages) to a search engine for the search engine to search for the processed content.
According to some embodiments, the category information for the production thread may include a first category and a second category. Illustratively, as shown in FIG. 3, classifying the production line based on the category information (step 220) may include: classifying the production threads based on the first category to obtain one or more second groups of production threads (step 310); determining whether the number of the production threads in each second production thread group is less than a second threshold (step 320); and in response to determining that the number of production threads in the at least one second group of production threads is greater than the second threshold ("no" at step 320), further classifying the at least one second group of production threads in which the number of production threads is greater than the second threshold based on a second category to obtain one or more first groups of production threads (step 330); otherwise (step 320, yes), the one or more second groups of production threads are taken as the one or more first groups of production threads obtained (step 340).
In some examples, the second category may be fine-grained category information relative to the first category. After classifying the production threads in the obtained second production thread group based on the second category, the further classified production thread group and the second production thread group having the production thread number not greater than the second threshold value are taken together as the first production thread group.
In some examples, the production lead obtained based on the search log may include first category information, which may be determined by a preset classification model, without limitation. The first category information may be category information such as K12, disease knowledge, and the like. Illustratively, the production threads may be first classified according to a first category, but since the distribution of the production threads is not uniform, the number of production threads of a portion of the first category, such as K12, disease knowledge, etc., is much greater than the number of production threads of the other categories. Therefore, a corresponding threshold may be set, and after the classification based on the first category, if the number of production threads in a certain production thread group is greater than the threshold, the classification based on the second category is continued for the production thread group whose number of production threads is greater than the threshold.
In some examples, the second category of the production thread is category data obtained after refining deep semantics of the production thread. Production threads with the same second category have greater similarity in their deep semantics. Therefore, the production clues in each cluster after being aggregated are relatively similar after being classified based on the second category, the probability of missing the recall is reduced when the recall is performed on each production clue (the production clue similar to the production clue is determined), the directional production of the production clue cluster obtained based on the aggregation is facilitated, and the possibility of repeated production is reduced.
According to some embodiments, the classifying the production threads of the at least one second group of production threads further based on the second category, respectively, may comprise: for each of the at least one second set of production lines: counting the number of production clues corresponding to each second category; and classifying the second production thread group based on the number of the production threads respectively corresponding to the second categories and a second threshold to obtain one or more first production thread groups. Production lines having the same second category belong to the same first production line group.
In some examples, for each second production line group with the number of production lines greater than the preset threshold, the number of production lines corresponding to each second category in the production line group may be counted. For example, the number of the production threads corresponding to each second category may be sorted from large to small, and then classified based on the number of the production threads corresponding to each second category and a preset second threshold. For example: the number of the production threads corresponding to the second category 1 is 5 ten thousand, the number of the production threads corresponding to the second category 2 is 4.5 ten thousand, the number of the production threads corresponding to the second category 3 is 4 ten thousand, the number of the production threads corresponding to the second category 4 is 3 ten thousand, the number of the production threads corresponding to the second category 5 is 2.9 ten thousand …, and the preset second threshold value is 10 ten thousand production threads, so that the production threads corresponding to the second category 1 and the second category 2 can be merged into one group (9.5 ten thousand), and the production threads corresponding to the second category 3, the second category 4, and the second category 5 can be merged into one group (9.9 ten thousand) …. Of course, it should be understood that the classification may also be directly performed based on the number of the production threads corresponding to each second category and the preset second threshold, as long as it is ensured that the number of the production threads in each group obtained by the classification is not greater than the preset second threshold.
In some examples, the second category of the production cue may be obtained by a Natural Language Processing (NLP) based semantic classification model (e.g., an open source LAC model). For example, the second category may be category information obtained by sub-classifying one or more first categories on the basis of the first categories. Additionally or alternatively, the second category may also be custom fine-grained category information, not necessarily subordinate to the first category.
In some embodiments, to divide the production line at a fine granularity, the second category may include an entity category, such as names of concrete concepts like the palace, the great wall, and an abstract category, such as names of abstract concepts like mother and baby, religion, and so on.
According to some embodiments, the entity category and the abstract category may be determined by a deep learning based model, respectively. For example, the entity category may be determined by a lexical analysis model (e.g., LAC) identifying entity words in a query statement as a production lead. The abstract categories may be determined by an abstract category model based on deep learning. Illustratively, the abstract category model may be a multi-label classification model trained based on the Ernie 2.0 chinese pre-training model.
Thus, according to some embodiments, when the second category includes an entity category and an abstract category, further the method 200 may further include: in response to determining that the production thread contains both the entity category and the abstract category, a second category of the production thread is deduplicated.
In some examples, for each second production line group with the number of production lines greater than the preset threshold, the number of production lines corresponding to each second category in the production line group may be counted. If the production thread contains both the entity category and the abstract category, the production thread can be classified based on the statistics and classification of the number of the second categories participating in the production thread, for example, based on the entity category or the abstract category.
After the classified production thread groups are obtained, each production thread group can be aggregated respectively, so that the oriented knowledge production can be carried out through the aggregated production thread clusters.
According to some embodiments, the method 200 may further comprise: the first set of production lines are sent to a plurality of units or machines, respectively, such that the corresponding first set of production lines are subjected to an aggregation operation on the units or machines.
For example, the sorted groups of production lines may be respectively issued to the machines (slave devices) to aggregate the production lines in the group of production lines on the machines. Thus, when the number of production threads is very large, the time consumption in polymerization can be greatly reduced, and the polymerization efficiency is greatly improved.
In some examples, before aggregating each production thread group, a certain number of production threads similar to each production thread (i.e., search query) need to be recalled, so as to calculate the similarity of the production thread pairs based on the recall result, and further aggregate the similar production threads into clusters.
In general, the keywords of the production threads may be obtained so as to match the keywords between the production threads, and for each production thread, a predetermined number of production threads having the same keywords may be recalled. That is, keyword matching is a measure of similarity to text, which requires the same keywords between the recall results and the original production thread. Thus, production threads that are semantically identical but are expressed differently cannot be recalled. In the embodiment according to the present disclosure, the recall based on the vector similarity is a measure of semantic similarity, and even if there is no identical keyword between the production thread to be recalled and the original production thread, the recall can still be performed as long as the expressed semantics are the same.
In some examples, the precondition for the vector recall is that the production threads need to be converted into multidimensional vectors, i.e., a vector for each production thread in the first production thread group is obtained. Illustratively, a vector representation of a production lead may be obtained by an Ernie-Sim-lnfer model trained based on an Ernie 2.0 pre-training model, the vector latitude being, for example, 64 dimensions. After the vector of the production thread is fetched, the vector recall is performed after the data containing the vector is written to the search model (e.g., the Elasticsearch model).
Because the vector recall is the similarity measurement of the semantic level of the production line, compared with the keyword recall, the recall missing probability of the vector recall is greatly reduced, and a small number of recall results can achieve a better clustering effect, so that the recall quantity is reduced, the subsequent aggregation time is further saved, and the aggregation efficiency is improved.
According to some embodiments, determining the first number of production threads based on the vector may include: a first number of production threads are determined by the approximate nearest neighbor search algorithm for each production thread having a similarity greater than a first threshold.
In the field of machine learning, one problem often involved in semantic retrieval, image recognition, recommendation systems, and the like is: given a vector X ═ X1, X2, x3... xn ], the first K most similar vectors need to be searched from a massive vector library. These vectors are typically very high in dimensionality, are time-consuming with conventional search methods, and tend to cause latency to become a bottleneck, so that the most similar search can be converted to an Approximate Nearest Neighbor (Ann) search. Through the approximate nearest neighbor search algorithm, the first K vectors returned are not necessarily the most similar K vectors, but effective contents can be quickly searched in mass data, and the search time is saved.
The approximate nearest neighbor search algorithm may be implemented based on any suitable algorithm, including but not limited to, annoy, faiss, nmslib, falcon, and the like.
According to some embodiments, aggregating each production thread and all of the determined first number of production threads may comprise: the following is performed for each production thread to obtain a second number of clusters (step 410): forming the production line cords themselves into clusters (step 4101); sequentially determining a similarity score for each of a first number of production threads corresponding to the production thread and each of the production threads in the cluster (step 4102); and in response to the similarity scores each being greater than a third threshold, merging a respective production cue of the first number of production cues into the cluster (step 4103); and merging the second number of clusters to obtain one or more merged clusters (step 420). Note that the similarity score between the production threads in each cluster is greater than the third threshold.
It is to be understood that the second number is the number of production threads in the corresponding first group of production threads obtained after the classification.
Illustratively, each production thread is first aggregated with a first number of production threads based on its recall. For example, it is preset that, for each production thread, 10 production threads similar to the production thread are recalled in its corresponding production thread group, and then the corresponding production threads in the 11 production threads are aggregated into a cluster, so that the similarity scores between the production threads in the generated cluster are all greater than the third threshold. After the clusters corresponding to each production cue are obtained, then a cluster-to-cluster merge can be performed. Similarly, during the merging process of the clusters, it is required to satisfy that the similarity score between the production threads in each cluster is greater than the third threshold.
According to some embodiments, the method according to the present disclosure may further comprise: the similarity scores between the production lines are saved during the aggregation process so that the merging between the clusters is performed based on the saved similarity scores. Therefore, the similarity score among the production clue clusters is prevented from being repeatedly calculated, the aggregation time is saved, and the operation efficiency is improved.
According to some embodiments, the similarity score may be determined by a trained semantic matching model and a semantic sentence classification model. Thus, determining the similarity score may comprise: obtaining a first similarity score between the pair of production threads based on the semantic matching model; and in response to the first similarity score being greater than a fourth threshold, obtaining a second similarity score between the pair of production cues further based on a semantic sentence classification model to treat the second similarity score as the determined similarity score.
The semantic matching model and the semantic sentence pattern classification model can accurately balance the similarity between the production cue pairs. Thus, the deep semantics between the aggregated production thread clusters are made the same to reduce duplicate production.
According to some embodiments, the training data of the semantic matching model may include supervised data formed after data filtering of logs containing user click data.
In some examples, to improve the accuracy of the search, each search engine typically maintains a user's search history, which may include search results for all query content that the user clicks to view. For example, the user query (i.e., search query) is "tomato-fried egg preparation", the user clicks on the search result as "how do tomato-fried eggs? "page content. And the user click data contains the content of interest to the user, i.e. the content that the user wants to acquire, to a certain extent. It can thus be seen that the user click data is somewhat associated with or similar to the query content (i.e., search query). Therefore, the semantic matching model is trained through the monitoring data formed after the data screening is carried out on the log containing the user click data, and the similarity between the production clue pairs can be acquired more accurately.
According to some embodiments, the input to the semantic sentence classification model may include the first similarity score output by the semantic matching model described above, and the features obtained after feature extraction for each of the pair of production threads.
According to some embodiments, the features include at least one of: number of action nouns, whether to include a reference term, whether to be a master/passive sentence, etc.
According to some embodiments, the semantic schema classification model may be based on a Gradient Boosted Decision Tree (GBDT) model.
For example, after recalling based on the vector, similarity clustering may be performed based on the recall results. The similarity between pairs of production threads cannot be accurately measured to some extent due to vector-based similarity matching. To more accurately measure the similarity between pairs of production cues, a similarity model may be pre-trained. The similarity model is formed by fusing a semantic matching model and a semantic sentence pattern classification model. The training data of the semantic matching model comprises weak supervision data formed by screening the click-and-expansion logs of the search engine, wherein the screening process can comprise screening of question-sentence search words/search sentences, data standardization and the like. The semantic matching model may use, for example, a SimNetC network, a presentation layer bow, a loss function hingloss, and the like. It should be understood that the structure of the semantic matching model is not so limited and any other suitable network (e.g., CNN) and algorithm are possible. The semantic sentence pattern classification model is used as a supplement of a semantic matching model, and matching precision is improved by identifying whether the sentence patterns of the production cue pairs are the same or not. For example, the semantic sentence classification model can be obtained by extracting a plurality of features such as the number of dynamic nouns of a production clue, whether a Term (Term, e.g., him, me, etc.) is contained, whether the Term is an active/passive sentence, a similarity score output by the semantic matching model, and the like, and training based on the GBDT model. It should be understood that the semantic sentence classification model is not so limited and any other suitable model and network are possible. After the similarity scores of the corresponding pairs of production leads are obtained, similarity clustering can be performed based on the similarity scores.
Embodiments according to the present disclosure also provide a production cord aggregation device. Fig. 5 shows a block diagram of a production thread aggregation apparatus 500 according to an embodiment of the present disclosure. As shown in fig. 5, the apparatus 500 may include: an obtaining unit 510 configured to obtain a production thread from the search log; a classifying unit 520 configured to classify the production threads based on the category information to obtain one or more first production thread groups; one or more aggregation units 530, wherein each of the aggregation units 530 is configured to perform the following slave operations: obtaining a vector for each production thread in the first set of production threads; determining a first number of production threads of each production thread of the first group of production threads based on the vector, the first number of production threads having a similarity greater than a first threshold; and aggregating said each production thread and all the determined first number of production threads to obtain one or more clusters.
Here, the operations of the above units 510 to 530 of the production thread aggregation apparatus 500 are similar to the operations of the steps 210 to 250 described above, and are not repeated herein.
There is also provided, in accordance with an embodiment of the present disclosure, a production line cord aggregation system. Fig. 6 shows a block diagram of a production thread aggregation apparatus 600 according to an embodiment of the present disclosure. As shown in fig. 6, the system 600 may include: a first apparatus 610 configured to perform the following operations: obtaining a production thread from the search log; classifying the production clues based on the category information to obtain one or more first production clue groups; one or more second devices 620, wherein each of the second devices is configured to perform the following slave operations: obtaining a vector for each production thread in the first set of production threads; determining a first number of production threads of each production thread of the first group of production threads based on the vector, the first number of production threads having a similarity greater than a first threshold; and aggregating said each production thread and all the determined first number of production threads to obtain one or more clusters.
The operation of the above units 610-620 of the production line cable polymerization system 600 is similar to the operation of the steps 210-250 described above, and will not be described herein again.
In the technical scheme of the disclosure, the acquisition, storage, application and the like of the personal information of the related user all accord with the regulations of related laws and regulations, and do not violate the good customs of the public order.
According to an embodiment of the present disclosure, there is also provided an electronic device, a readable storage medium, and a computer program product.
Referring to fig. 7, a block diagram of a structure of an electronic device 700, which may be a server or a client of the present disclosure, which is an example of a hardware device that may be applied to aspects of the present disclosure, will now be described. Electronic device is intended to represent various forms of digital electronic computer devices, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be examples only, and are not meant to limit implementations of the disclosure described and/or claimed herein.
As shown in fig. 7, the device 700 comprises a computing unit 701, which may perform various suitable actions and processes according to a computer program stored in a Read Only Memory (ROM)702 or a computer program loaded from a storage unit 708 into a Random Access Memory (RAM) 703. In the RAM 703, various programs and data required for the operation of the device 700 can also be stored. The computing unit 701, the ROM 702, and the RAM 703 are connected to each other by a bus 704. An input/output (I/O) interface 705 is also connected to bus 704.
Various components in the device 700 are connected to the I/O interface 705, including: an input unit 706, an output unit 707, a storage unit 708, and a communication unit 709. The input unit 706 may be any type of device capable of inputting information to the device 700, and the input unit 706 may receive input numeric or character information and generate key signal inputs related to user settings and/or function controls of the electronic device, and may include, but is not limited to, a mouse, a keyboard, a touch screen, a track pad, a track ball, a joystick, a microphone, and/or a remote controller. Output unit 707 may be any type of device capable of presenting information and may include, but is not limited to, a display, speakers, a video/audio output terminal, a vibrator, and/or a printer. Storage unit 708 may include, but is not limited to, magnetic or optical disks. The communication unit 709 allows the device 700 to exchange information/data with other devices via a computer network, such as the internet, and/or various telecommunications networks, and may include, but is not limited to, modems, network cards, infrared communication devices, wireless communication transceivers and/or chipsets, such as bluetooth (TM) devices, 1302.11 devices, WiFi devices, WiMax devices, cellular communication devices, and/or the like.
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuitry, Field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), system on a chip (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, receiving data and instructions from, and transmitting data and instructions to, a storage system, at least one input device, and at least one output device.
Program code for implementing the methods of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the program codes, when executed by the processor or controller, cause the functions/operations specified in the flowchart and/or block diagram to be performed. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which a user can provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic, speech, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a back-end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), Wide Area Networks (WANs), and the Internet.
The computer system may include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server may be a cloud server, a server of a distributed system, or a server with a combined blockchain.
It should be understood that various forms of the flows shown above may be used, with steps reordered, added, or deleted. For example, the steps described in the present disclosure may be performed in parallel, sequentially or in different orders, and are not limited herein as long as the desired results of the technical solutions disclosed in the present disclosure can be achieved.
Although embodiments or examples of the present disclosure have been described with reference to the accompanying drawings, it is to be understood that the above-described methods, systems and apparatus are merely exemplary embodiments or examples and that the scope of the present invention is not limited by these embodiments or examples, but only by the claims as issued and their equivalents. Various elements in the embodiments or examples may be omitted or may be replaced with equivalents thereof. Further, the steps may be performed in an order different from that described in the present disclosure. Further, various elements in the embodiments or examples may be combined in various ways. It is important that as technology evolves, many of the elements described herein may be replaced with equivalent elements that appear after the present disclosure.
Claims (20)
1. A production cord polymerization process comprising:
obtaining a production thread from the search log;
classifying the production threads based on category information to obtain one or more first production thread groups;
for each of the one or more first groups of production lines, performing the following aggregation operations:
obtaining a vector for each production thread in the first set of production threads;
determining a first number of production threads of each production thread of the first group of production threads based on the vector, the first number of production threads having a similarity greater than a first threshold; and
aggregating said each production thread and all determined first number of production threads to obtain one or more clusters.
2. The method of claim 1, wherein the category information comprises a first category and a second category, wherein classifying the production cue based on the category information comprises:
classifying the production thread based on the first category to obtain one or more second groups of production threads; and
in response to determining that the number of production threads in at least one second group of production threads is greater than a second threshold, the production threads in the at least one second group of production threads are further classified, respectively, based on the second category to obtain one or more first groups of production threads.
3. The method of claim 2, wherein classifying the production threads of the at least one second group of production threads, respectively, further based on the second category comprises:
for each of the at least one second set of production lines:
counting the number of production clues corresponding to each second category; and
classifying the second production thread group based on the number of the production threads respectively corresponding to the second categories and the second threshold to obtain one or more first production thread groups,
production lines having the same second category belong to the same first production line group.
4. The method of claim 3, wherein the second category includes an entity category and an abstract category, the method further comprising:
in response to determining that a production thread contains both the entity category and the abstract category, a second category of the production thread is deduplicated.
5. The method of any of claims 2-4, wherein the second category includes an entity category and an abstract category, and wherein,
the entity category and the abstract category are respectively determined through a deep learning-based model.
6. The method of claim 1, wherein determining the first number of production threads based on the vector comprises:
a first number of production threads of each of the production threads with a similarity greater than a first threshold is determined by an approximate nearest neighbor search algorithm.
7. The method of claim 1, wherein aggregating each of the production lines and all of the determined first number of production lines comprises:
performing the following for each of said production threads to obtain a second number of clusters:
forming the production line rope into a cluster;
sequentially determining a similarity score between each production thread of the first number of production threads corresponding to the production thread and each production thread of the cluster; and
in response to the similarity scores each being greater than a third threshold, merging a respective production cue of the first number of production cues into the cluster; and
and merging the second number of clusters to obtain one or more merged clusters, wherein the similarity score between the production threads in each cluster is greater than the third threshold.
8. The method of claim 7, further comprising: the similarity scores between the production lines are saved during the aggregation process, so that the merging between the clusters is performed based on the saved similarity scores.
9. The method of claim 7 or 8, wherein the similarity score is determined by a trained semantic matching model and a semantic sentence classification model, wherein,
determining the similarity score comprises:
obtaining a first similarity score between a pair of production threads based on the semantic matching model; and
in response to the first similarity score being greater than a fourth threshold, obtaining a second similarity score between the pair of production cues further based on the semantic sentence classification model to treat the second similarity score as the determined similarity score.
10. The method of claim 9, wherein,
the training data of the semantic matching model comprises supervision data formed by data screening of logs containing user click data, and wherein,
the input of the semantic sentence pattern classification model comprises a first similarity score output by the semantic matching model and the characteristics obtained after the characteristics of each production clue in the production clue pair are extracted.
11. The method of claim 10, wherein the feature comprises at least one of the group consisting of: number of action nouns, whether to include a reference term, whether to be an active/passive sentence.
12. The method of claim 10, wherein the semantic sentence classification model is based on a gradient boosting decision tree model.
13. The method of any of claims 1-12, further comprising: sending the first set of manufacturing lines to a plurality of units or machines, respectively, such that the aggregation operation is performed on the units or machines.
14. A production cord polymerization apparatus comprising:
an acquisition unit configured to obtain a production thread from the search log;
a classification unit configured to classify the production cues based on category information to obtain one or more first production cue groups;
one or more aggregation units, wherein each of the aggregation units is configured to perform the following slave operations:
obtaining a vector for each production thread in the first set of production threads;
determining a first number of production threads of each production thread of the first group of production threads based on the vector, the first number of production threads having a similarity greater than a first threshold; and
aggregating said each production thread and all determined first number of production threads to obtain one or more clusters.
15. The apparatus of claim 14, wherein the category information comprises a first category and a second category, wherein the classifying unit comprises:
means for classifying the production thread based on the first category to obtain one or more second groups of production threads; and
means for classifying the production threads in the at least one second group of production threads based further on the second category to obtain one or more first groups of production threads in response to determining that the number of production threads in the at least one second group of production threads is greater than a second threshold.
16. The apparatus of claim 14, wherein the aggregation unit comprises:
performing the following for each of the production threads to obtain a second number of clustered units:
forming the production line rope into a cluster;
sequentially determining a similarity score for each of the corresponding first number of production threads and each of the production threads in the cluster; and
in response to the similarity scores each being greater than a third threshold, merging a respective production cue of the first number of production cues into the cluster; and
merging the second number of clusters to obtain a unit of merged one or more clusters, wherein,
the similarity score between the production cues in each cluster is greater than a third threshold.
17. A production line cord polymerization system comprising:
a first apparatus configured to perform the following operations:
obtaining a production thread from the search log; and
classifying the production threads based on category information to obtain one or more first production thread groups;
one or more second apparatuses, wherein each of the second apparatuses is configured to perform the following slave operations:
obtaining a vector for each production thread in the first set of production threads;
determining a first number of production threads of each production thread of the first group of production threads based on the vector, the first number of production threads having a similarity greater than a first threshold; and
aggregating said each production thread and all determined first number of production threads to obtain one or more clusters.
18. An electronic device, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein
The memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-13.
19. A non-transitory computer readable storage medium having stored thereon computer instructions for causing the computer to perform the method of any one of claims 1-13.
20. A computer program product comprising a computer program, wherein the computer program realizes the method of any one of claims 1-13 when executed by a processor.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110859746.8A CN113535958B (en) | 2021-07-28 | 2021-07-28 | Production line aggregation method, device and system, electronic equipment and medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110859746.8A CN113535958B (en) | 2021-07-28 | 2021-07-28 | Production line aggregation method, device and system, electronic equipment and medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113535958A true CN113535958A (en) | 2021-10-22 |
CN113535958B CN113535958B (en) | 2023-08-08 |
Family
ID=78089551
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110859746.8A Active CN113535958B (en) | 2021-07-28 | 2021-07-28 | Production line aggregation method, device and system, electronic equipment and medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113535958B (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120158702A1 (en) * | 2010-12-15 | 2012-06-21 | Microsoft Corporation | Classifying Results of Search Queries |
US20190034793A1 (en) * | 2017-07-25 | 2019-01-31 | Linkedin Corporation | Semantic clustering based retrieval for candidate set expansion |
CN110442718A (en) * | 2019-08-08 | 2019-11-12 | 腾讯科技(深圳)有限公司 | Sentence processing method, device and server and storage medium |
CN111563097A (en) * | 2020-04-30 | 2020-08-21 | 广东小天才科技有限公司 | Unsupervised topic aggregation method and device, electronic equipment and storage medium |
CN112667770A (en) * | 2019-10-15 | 2021-04-16 | 北京京东尚科信息技术有限公司 | Method and device for classifying articles |
CN113010782A (en) * | 2021-03-16 | 2021-06-22 | 北京百度网讯科技有限公司 | Demand amount acquisition method and device, electronic equipment and computer readable medium |
-
2021
- 2021-07-28 CN CN202110859746.8A patent/CN113535958B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120158702A1 (en) * | 2010-12-15 | 2012-06-21 | Microsoft Corporation | Classifying Results of Search Queries |
US20190034793A1 (en) * | 2017-07-25 | 2019-01-31 | Linkedin Corporation | Semantic clustering based retrieval for candidate set expansion |
CN110442718A (en) * | 2019-08-08 | 2019-11-12 | 腾讯科技(深圳)有限公司 | Sentence processing method, device and server and storage medium |
CN112667770A (en) * | 2019-10-15 | 2021-04-16 | 北京京东尚科信息技术有限公司 | Method and device for classifying articles |
CN111563097A (en) * | 2020-04-30 | 2020-08-21 | 广东小天才科技有限公司 | Unsupervised topic aggregation method and device, electronic equipment and storage medium |
CN113010782A (en) * | 2021-03-16 | 2021-06-22 | 北京百度网讯科技有限公司 | Demand amount acquisition method and device, electronic equipment and computer readable medium |
Also Published As
Publication number | Publication date |
---|---|
CN113535958B (en) | 2023-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112507715B (en) | Method, device, equipment and storage medium for determining association relation between entities | |
WO2020108063A1 (en) | Feature word determining method, apparatus, and server | |
JP2022191412A (en) | Method for training multi-target image-text matching model and image-text retrieval method and apparatus | |
CN113656668B (en) | Retrieval method, management method, device, equipment and medium of multi-modal information base | |
CN112329453B (en) | Method, device, equipment and storage medium for generating sample chapter | |
CN114625855A (en) | Method, apparatus, device and medium for generating dialogue information | |
CN116501960B (en) | Content retrieval method, device, equipment and medium | |
WO2023142406A1 (en) | Ranking method and apparatus, ranking model training method and apparatus, and electronic device and medium | |
CN113656587A (en) | Text classification method and device, electronic equipment and storage medium | |
CN112560461A (en) | News clue generation method and device, electronic equipment and storage medium | |
KR20230006601A (en) | Alignment methods, training methods for alignment models, devices, electronic devices and media | |
WO2024027125A1 (en) | Object recommendation method and apparatus, electronic device, and storage medium | |
CN112905743B (en) | Text object detection method, device, electronic equipment and storage medium | |
CN115600646A (en) | Language model training method, device, medium and equipment | |
CN112860681B (en) | Data cleaning method and device, computer equipment and medium | |
CN113535958B (en) | Production line aggregation method, device and system, electronic equipment and medium | |
CN114238745A (en) | Method and device for providing search result, electronic equipment and medium | |
CN116028750B (en) | Webpage text auditing method and device, electronic equipment and medium | |
CN115809364B (en) | Object recommendation method and model training method | |
CN112954025B (en) | Information pushing method, device, equipment and medium based on hierarchical knowledge graph | |
CN113190698B (en) | Paired picture set generation method and device, electronic equipment and storage medium | |
CN114842474B (en) | Character recognition method, device, electronic equipment and medium | |
CN115033782B (en) | Object recommendation method, training method, device and equipment of machine learning model | |
CN116881485B (en) | Method and device for generating image retrieval index, electronic equipment and medium | |
CN113656534A (en) | Corpus expansion method, apparatus, device and medium |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |