CN108197308B - Keyword recommendation method and system based on search engine - Google Patents
Keyword recommendation method and system based on search engine Download PDFInfo
- Publication number
- CN108197308B CN108197308B CN201810092422.4A CN201810092422A CN108197308B CN 108197308 B CN108197308 B CN 108197308B CN 201810092422 A CN201810092422 A CN 201810092422A CN 108197308 B CN108197308 B CN 108197308B
- Authority
- CN
- China
- Prior art keywords
- explosion
- spark
- sparks
- point
- determining
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000004880 explosion Methods 0.000 claims abstract description 307
- 238000005474 detonation Methods 0.000 claims description 11
- 238000005315 distribution function Methods 0.000 claims description 4
- 238000005457 optimization Methods 0.000 description 6
- 206010037660 Pyrexia Diseases 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 239000002245 particle Substances 0.000 description 3
- 230000035772 mutation Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
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/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
The invention discloses a keyword recommendation method and system based on a search engine. The method comprises the following steps: acquiring input information input into a search engine by a user; acquiring data information related to the input information from an engine database according to the input information of the user; the data information related to the input information comprises N pieces of data information; acquiring the explosion times M of the firework algorithm; acquiring an explosion point of the Kth explosion of the firework algorithm according to the N pieces of data information and the explosion times M; acquiring the explosion radius and the number of sparks of the K-th explosion in the firework algorithm according to the N pieces of data information and the explosion times M; carrying out explosion by adopting a firework algorithm to obtain keywords related to the input information of the user; and recommending the keywords to a user through the search engine for the user to select. The method and the system of the invention improve the accuracy and efficiency of recommending the keywords.
Description
Technical Field
The invention relates to the field of internet, in particular to a keyword recommendation method and system based on a search engine.
Background
With the rapid development of the internet, the resources on the internet have reached a mass scale, the structure is diversified, the distribution is unbalanced, the dynamic updating and changing speed is high, and the useful information updating speed and the storage condition are dynamic. The search engine technology is used as an effective information acquisition tool and important network application, and helps people to search needed information from a wide information resource sea. When a user searches through a search engine, the search engine will generally recommend related keywords according to the input of the user, and the user can preferentially select a matching search condition from the recommended keywords. However, the traditional search engine cannot provide interesting information for the user well in a big data environment, and the efficiency of searching keywords is not high, so that the accuracy of the presented information is low. The efficiency and performance of modern search engines must be improved in light of the need for personalized, intelligent retrieval. The frame structure and the core algorithm of the search engine basically determine the efficiency, the current particle swarm-based multi-target big data efficient intelligent search optimization algorithm is easy to fall into a local optimal solution, the local optimization capability is poor, and the accuracy of recommending keywords to a user is low and the efficiency is low.
Disclosure of Invention
The invention aims to provide a keyword recommendation method and system based on a search engine so as to improve the accuracy of keyword recommendation.
In order to achieve the purpose, the invention provides the following scheme:
a keyword recommendation method based on a search engine, the method comprising:
acquiring input information input into a search engine by a user;
acquiring data information related to the input information from an engine database according to the input information of the user; the data information related to the input information comprises N pieces of data information;
acquiring the explosion times M of the firework algorithm;
acquiring an explosion point of the K-th explosion of the firework algorithm according to the N pieces of data information and the explosion times M, wherein K is more than or equal to 1 and less than or equal to M;
acquiring the explosion radius and the number of sparks of the K-th explosion in the firework algorithm according to the N pieces of data information and the explosion times M;
carrying out explosion by adopting a firework algorithm to obtain keywords related to the input information of the user;
and recommending the keywords to a user through the search engine for the user to select.
Optionally, the obtaining of the explosion point of the kth explosion of the firework algorithm according to the N pieces of data information and the explosion times M specifically includes:
when K is 1, determining the N pieces of data information as an initial population of a firework algorithm, and determining N positions of the N pieces of data information as N explosion points of the 1 st explosion;
when K is more than or equal to 2 and less than or equal to M-1, obtaining the fitness value of the K-1 spark; the K-1 spark is a spark generated after the K-1 explosion; determining the spark with the minimum fitness value in the K-1 spark as an explosion point of the K explosion; determining the rest N-1 explosion points of the Kth explosion by using the selected probability according to the distance between sparks in the Kth spark-1;
when K is M, obtaining the fitness value of the M-1 spark; the M-1 spark is a spark generated after the M-1 explosion; and determining the spark with the minimum fitness value in the M-1 spark as an explosion point of the Mth explosion.
Optionally, the determining the remaining N-1 explosion points of the kth explosion by using the selected probability according to the distance between the sparks in the K-1 spark specifically includes:
using formulasCalculating a selected probability P (X) for each of the K-1 sparki) (ii) a Wherein R (X)i) For the X-th spark in the K-1 sparkiThe sum of the distances between the spark and the other sparks,R(Xj) For the X-th spark in the K-1 sparkjThe sum of the distances between the spark and other sparks;
ranking the selected probabilities of all sparks in the K-1 spark;
and determining the first N-1 sparks with the highest probability to be the rest N-1 explosion points of the K explosion.
Optionally, the obtaining of the explosion radius and the number of sparks of the kth explosion in the firework algorithm according to the N pieces of data information and the explosion number M specifically includes:
when K is 1, acquiring a preset explosion radius and a preset spark number as the explosion radius and the spark number of the 1 st explosion;
when K is more than or equal to 2 and less than or equal to M; using formulasDetermining the explosion point X of the Kth explosioniRadius of detonation Ri;
Wherein, f (X)i) Is an explosion point XiFitness value of ymin=min(f(Xj)),ymax=max(f(Xj)),(j=1,2,…N),yminIs the minimum value of the fitness values of all n sparks in the K-1 spark, ymaxIs the maximum value of the fitness values of all n sparks in the K-1 spark;is the maximum radius preset in the firework algorithm,the maximum value of the number of sparks preset in the firework algorithm is obtained; ε is the minimum machine amount; the K-1 spark is the spark generated after the K-1 explosion.
Optionally, the determining KthExplosion point X of secondary explosioniAfter the number of sparks, the method further comprises:
using formulasThe explosion point X of the K-th explosioniIs corrected to Si', wherein a and b are arbitrary constants, and a < b < 1.
Optionally, the explosion by using the firework algorithm specifically includes:
fireworks explosion is adopted to generate explosion sparks and Gaussian variation sparks;
for explosion point XiAcquiring a plurality of explosion directions for generating explosion sparks; for the k explosion direction, the formula is usedDetermining the position of an explosion sparkWherein R isiIs an explosion point XiThe radius of detonation of;is the position before explosion;
for explosion point XiAcquiring a plurality of explosion directions for generating Gaussian variant sparks; for the jth explosion direction, the formula is utilizedDetermining the position of a Gaussian variant sparkWherein e to N (1,1), N (1,1) represents a Gaussian distribution function with a mean value of 1 and a variance of 1.
Optionally, after determining the position of the gaussian variant spark, the method further includes:
judging whether the position of the explosion spark exceeds the boundary range of a feasible region or not to obtain a first judgment result;
when the first judgment result shows that the position of the explosion spark exceeds the boundary range of a feasible region, a formula is usedUpdating the position of the explosion spark in the K-th explosion direction toWherein XUB,kIs the upper boundary of the feasible region, XLB,kIs the lower boundary of the feasible region;
judging whether the position of the Gaussian variation spark exceeds the boundary range of a feasible region or not to obtain a second judgment result;
when the second judgment result shows that the position of the Gaussian variation spark exceeds the boundary range of a feasible region, a formula is usedUpdating the position of the Gaussian variation spark in the jth explosion direction to
The invention also provides a keyword recommendation system based on the search engine, which is applied to the method and comprises the following steps:
the input information acquisition module is used for acquiring input information input into the search engine by a user;
the data information acquisition module is used for acquiring data information related to the input information from an engine database according to the input information of the user; the data information related to the input information comprises N pieces of data information;
the explosion times acquisition module is used for acquiring the explosion times M of the firework algorithm;
the explosion point acquisition module is used for acquiring the explosion point of the K-th explosion of the firework algorithm according to the N pieces of data information and the explosion times M, wherein K is more than or equal to 1 and less than or equal to M;
the explosion radius and spark number obtaining module is used for obtaining the explosion radius and spark number of the Kth explosion in the firework algorithm according to the N pieces of data information and the explosion times M;
the explosion module is used for carrying out explosion by adopting a firework algorithm to obtain keywords related to the input information of the user;
and the keyword recommending module is used for recommending the keywords to the user through the search engine for the user to select.
Optionally, the explosion point obtaining module specifically includes:
a first explosion point determining unit, configured to determine the N pieces of data information as an initial population of a firework algorithm when K is 1, and determine N positions of the N pieces of data information as N explosion points of a 1 st explosion;
the second explosion point determining unit is used for obtaining the fitness value of the K-1 spark when K is more than or equal to 2 and less than or equal to M-1; the K-1 spark is a spark generated after the K-1 explosion; determining the spark with the minimum fitness value in the K-1 spark as an explosion point of the K explosion; determining the rest N-1 explosion points of the Kth explosion by using the selected probability according to the distance between sparks in the Kth spark-1;
a third explosion point determination unit for obtaining a fitness value of an M-1 th spark when K is M; the M-1 spark is a spark generated after the M-1 explosion; and determining the spark with the minimum fitness value in the M-1 spark as an explosion point of the Mth explosion.
Optionally, the module for acquiring the explosion radius and the number of sparks specifically includes:
a first acquisition unit, configured to acquire a preset explosion radius and a preset number of sparks as an explosion radius and a preset number of sparks of a 1 st explosion when K is 1;
a second obtaining unit, configured to, when K is greater than or equal to 2 and less than or equal to M; using formulasDetermining the explosion point X of the first explosioniRadius of detonation Ri(ii) a Using formulasDetermining the explosion point X of the Kth explosioniNumber of sparks Si(ii) a Wherein, f (X)i) Is an explosion point XiFitness value of ymin=min(f(Xj)),ymax=max(f(Xj)),(j=1,2,…N),yminIs the minimum value of the fitness values of all n sparks in the K-1 spark, ymaxIs the maximum value of the fitness values of all n sparks in the K-1 spark;is the maximum radius preset in the firework algorithm,the maximum value of the number of sparks preset in the firework algorithm is obtained; ε is the minimum machine amount; the K-1 spark is the spark generated after the K-1 explosion.
According to the specific embodiment provided by the invention, the invention discloses the following technical effects:
the search engine adopting the firework algorithm can enable users to participate in the search process, so that the search result is closest to the user requirement, and the accuracy and the satisfaction of the search result can be ensured; in the firework algorithm searching process, fireworks are simultaneously exploded for searching, so that the retrieval efficiency is effectively improved; the quality of the firework population is continuously optimized, and lean and refined, so that the matching degree of the search result and the keywords is optimal; the method for searching the global optimal solution by utilizing the fast convergence speed and the good search capability of the firework algorithm is a good application method.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings needed to be used in the embodiments will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings without inventive exercise.
FIG. 1 is a schematic flow chart of a keyword recommendation method based on a search engine according to the present invention;
FIG. 2 is a schematic structural diagram of a keyword recommendation system based on a search engine according to the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
In order to make the aforementioned objects, features and advantages of the present invention comprehensible, embodiments accompanied with figures are described in further detail below.
Taking the example that a user needs to search for ' children's suitable extraclass reading materials ', the scheme of the invention is explained by combining with fig. 1, and fig. 1 is a flow diagram of the keyword recommendation method based on the search engine; as shown in fig. 1, the method includes:
step 100: acquiring input information input into a search engine by a user. The user's input information may be "child" at this time.
Step 200: and acquiring data information related to the input information from the engine database according to the input information of the user. The data information related to the input information includes N pieces of data information, and the data information may be a keyword, a phrase, or a sentence. For example, the N pieces of data information obtained at this time may include: children's toys, children's age range, what medicine children eat for a fever, children's glasses, etc.
Step 300: and acquiring the explosion times of the firework algorithm. The search engine needs to set the number M of fireworks explosions, i.e. the number of iterations, when searching using the fireworks algorithm.
Step 400: and acquiring the explosion point of the K-th explosion of the firework algorithm according to the N pieces of data information and the explosion times M. Wherein K is more than or equal to 1 and less than or equal to M. In the explosion process, the iteration times are different, and the corresponding determination methods of the explosion points are different, specifically:
when K is 1, namely the first explosion, the N pieces of data information are determined as the initial population of the firework algorithm, and N positions of the N pieces of data information are determined as N explosion points of the 1 st explosion.
When K is more than or equal to 2 and less than or equal to M-1, obtaining the fitness value of the K-1 spark; the K-1 spark is a spark generated after the K-1 explosion; determining the spark with the minimum fitness value in the K-1 spark as an explosion point of the K explosion; and determining the rest N-1 explosion points of the K explosion by using the selected probability according to the distance between the sparks in the K-1 spark.
Using formulasCalculating a selected probability P (X) for each of the K-1 sparki) (ii) a Wherein R (X)i) For the X-th spark in the K-1 sparkiThe sum of the distances between the spark and the other sparks,R(Xj) For the X-th spark in the K-1 sparkjThe sum of the distances between the spark and other sparks;
ranking the selected probabilities of all sparks in the K-1 spark;
and determining the first N-1 sparks with the highest probability to be the rest N-1 explosion points of the K explosion. In selection, if the individual density of sparks is high, i.e., there are many other candidate individuals around the individual, the probability that the individual is selected is reduced.
When K is M, namely the last explosion, obtaining the fitness value of the M-1 spark; the M-1 spark is a spark generated after the M-1 explosion; the sparks generated after the M-1 explosion comprise explosion sparks generated by an explosion operator and Gaussian variant sparks generated by variant sparks; and determining the spark with the minimum fitness value in the M-1 spark as an explosion point of the Mth explosion.
Step 500: and acquiring the explosion radius and the number of sparks of the K-th explosion in the firework algorithm according to the N pieces of data information and the explosion times M. Different iteration times correspond to different determination methods of explosion radius and spark quantity, and specifically:
when K is 1, acquiring a preset explosion radius and a preset spark number as the explosion radius and the spark number of the 1 st explosion; that is, the explosion radius and the number of sparks of the explosion point at the first explosion are preset.
When K is more than or equal to 2 and less than or equal to M; using formulasDetermining the explosion point X of the Kth explosioniRadius of detonation Ri(ii) a Using formulasDetermining the explosion point X of the Kth explosioniNumber of sparks Si(ii) a Wherein, f (X)i) Is an explosion point XiThe value of the fitness value of (a) is,ymin=min(f(Xj)),ymax=max(f(Xj)),(j=1,2,…N),yminis the minimum value, y, of the fitness values of all N sparks in the K-1 sparkmaxIs the maximum of the fitness values of all N sparks in the K-1 spark;is the maximum radius preset in the firework algorithm,the maximum value of the number of sparks preset in the firework algorithm is obtained; ε is the minimum machine amount; the K-1 spark is the spark generated after the K-1 explosion. During the subsequent explosion, the explosion radius and the number of sparks are determined according to the fitness value of the spark of the current generation.
Because the fireworks with better performance have larger influence on the offspring,easily reduce the diversity of the population, and the number S of sparks in a certain radiusiAnd (4) limiting: using formulasThe explosion point X of the K-th explosioniIs corrected to Si', wherein a and b are arbitrary constants, and a < b < 1.
Step 600: and exploding by adopting a firework algorithm to obtain keywords related to the input information of the user. The fireworks algorithm (FWA) is a new optimization algorithm proposed based on the observation that fireworks explode in the air to produce a spark phenomenon. And the position vector of each firework represents each group of solutions, the offspring sparks are generated by explosion in the sky, and are continuously exploded, and repeated iteration is performed to complete the search of the solutions. Thus, each explosion requires the determination of the explosion point, the explosion radius and the number of sparks. And the spark generated by the last explosion is the final searched result, and the keyword corresponding to the position of the spark is the keyword related to the input information of the user. For example, the searched keywords may be: how much the child has fever, the age of the child, etc.
Specifically, when fireworks are exploded and exploded, an explosion operator generates explosion sparks, and a mutation operator generates Gaussian mutation sparks;
when the explosion spark is exploded, the explosion spark is exploded in multiple dimensions (directions) to an explosion point XiAcquiring a plurality of explosion directions for generating explosion sparks; for the k explosion direction, the formula is usedDetermining the position of an explosion sparkWherein R isiIs an explosion point XiThe radius of detonation of;is the position before explosion;
explosion of Gaussian variant sparkWill explode in multiple dimensions (directions) for an explosion point XiAcquiring a plurality of explosion directions for generating Gaussian variant sparks; for the jth explosion direction, the formula is utilizedDetermining the position of a Gaussian variant sparkWherein e to N (1,1), N (1,1) represents a Gaussian distribution function with a mean value of 1 and a variance of 1; wherein e to N (1,1), N (1,1) represents a Gaussian distribution function with a mean value of 1 and a variance of 1.
In the process of generating explosion sparks and Gaussian variant sparks by the explosion operator and the variant operator respectively, sparks possibly generated exceed the boundary range of the feasible region omega. Firstly, whether the position of an explosion spark and/or the position of a Gaussian variation spark exceeds the boundary range of a feasible domain or not needs to be judged, and when the position exceeds the boundary on a dimension k, a new position is mapped by the following mapping rule:
when the position of the explosion spark exceeds the boundary range of the feasible region, the formula is usedUpdating the location of the detonation spark in the k-th detonation direction toWherein XUB,kIs the upper boundary of the feasible region, XLB,kIs the lower boundary of the feasible region;
when the position of the Gaussian variant spark exceeds the boundary range of the feasible region, the formula is usedUpdating the position of the Gaussian variation spark in the jth explosion direction to
Step 700: and recommending the keywords to a user through the search engine for the user to select. At this time, after the user inputs "children", the search engine recommends keywords such as "how children are getting fever", "children age", and the like to the user for selection. The process of step 100 is resumed when the user continues to enter or reenter new keywords.
The traditional process of searching keywords by a search engine is a multi-objective optimization algorithm based on particle swarm, so that a local optimal solution is easy to trap, and the local optimization capability is poor. The firework algorithm has a local searching capability and a global searching capability self-adjusting mechanism, and each firework in the firework population carries out resource distribution and information interaction according to the fitness value relative to other fireworks, so that the whole population can reach a balance between the global searching capability and the local searching capability. And the explosion searching mechanism of the fireworks enables a single firework to have strong local explosiveness, each individual firework in the population can generate a plurality of individuals in one iteration process in the iteration process of the fireworks algorithm, the particle swarm optimization algorithm generally only generates one individual, and the explosion searching mechanism of the fireworks algorithm enables the area near the fireworks to be searched more thoroughly.
Self-adjusting process: in a firework population, an algorithm determines an explosion radius and the number of explosion sparks only according to the difference between the fitness values of fireworks, the position of the fireworks with good fitness values is considered as a potential better area, more search resources can be obtained, the explosion radius is smaller, more sparks are generated in a smaller adjacent area to enable the fireworks to be finely searched in the area around the position, the fireworks with poor fitness values can only obtain relatively fewer resources, the explosion radius is larger, the search range is correspondingly increased, and the fireworks generate less sparks in a larger adjacent area to perform large-range global search around the position.
Moreover, the invention adopts a firework algorithm based on binary coding, the firework shell is a binary code with the length of m, and the explosion range of the firework shell Xi is controlled according to the explosion radius r, namely the binary bit is updated within 1-r. The radius r is non-linearly decreasing with the number of iterations. Each bit of Xi may be passed through a pair of variantsThe significance is obtained by the probability p, and the expression isWhen the position is updated, a [0, 1 ] is randomly generated]If rand () < p, bkIf it is 0, the binary bit of the corresponding position takes the opposite state of the original one; otherwise, the holding state is unchanged.
FIG. 2 is a schematic structural diagram of a keyword recommendation system based on a search engine according to the present invention. As shown in fig. 2, the system includes:
an input information obtaining module 201, configured to obtain input information input by a user to a search engine;
a data information obtaining module 202, configured to obtain, according to the input information of the user, data information related to the input information from an engine database; the data information related to the input information comprises N pieces of data information;
the explosion times obtaining module 203 is used for obtaining the explosion times M of the firework algorithm;
an explosion point obtaining module 204, configured to obtain an explosion point of the kth explosion of the firework algorithm according to the N pieces of data information and the explosion frequency M, where K is greater than or equal to 1 and less than or equal to M; the explosion point obtaining module 204 specifically includes:
a first explosion point determining unit, configured to determine the N pieces of data information as an initial population of a firework algorithm when K is 1, and determine N positions of the N pieces of data information as N explosion points of a 1 st explosion;
the second explosion point determining unit is used for obtaining the fitness value of the K-1 spark when K is more than or equal to 2 and less than or equal to M-1; the K-1 spark is a spark generated after the K-1 explosion; determining the spark with the minimum fitness value in the K-1 spark as an explosion point of the K explosion; determining the rest N-1 explosion points of the Kth explosion by using the selected probability according to the distance between sparks in the Kth spark-1;
a third explosion point determination unit for obtaining a fitness value of an M-1 th spark when K is M; the M-1 spark is a spark generated after the M-1 explosion; and determining the spark with the minimum fitness value in the M-1 spark as an explosion point of the Mth explosion.
An explosion radius and spark number obtaining module 205, configured to obtain an explosion radius and a spark number of a kth explosion in the firework algorithm according to the N pieces of data information and the number of times of explosion M; the explosion radius and spark number obtaining module 205 specifically includes:
a first acquisition unit, configured to acquire a preset explosion radius and a preset number of sparks as an explosion radius and a preset number of sparks of a 1 st explosion when K is 1;
a second obtaining unit, configured to, when K is greater than or equal to 2 and less than or equal to M; using formulasDetermining the explosion point X of the Kth explosioniRadius of detonation Ri(ii) a Using formulasDetermining the explosion point X of the Kth explosioniNumber of sparks Si(ii) a Wherein, f (X)i) Is an explosion point XiFitness value of ymin=min(f(Xj)),ymax=max(f(Xj)),(j=1,2,…N),yminIs the minimum value of the fitness values of all n sparks in the K-1 spark, ymaxIs the maximum value of the fitness values of all n sparks in the K-1 spark;is the maximum radius preset in the firework algorithm,the maximum value of the number of sparks preset in the firework algorithm is obtained; ε is the minimum machine amount; the K-1 spark is the spark generated after the K-1 explosion.
The explosion module 206 is configured to explode with a firework algorithm to obtain keywords related to the input information of the user;
and the keyword recommending module 207 is used for recommending the keywords to the user through the search engine for the user to select.
The embodiments in the present description are described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments are referred to each other. For the system disclosed by the embodiment, the description is relatively simple because the system corresponds to the method disclosed by the embodiment, and the relevant points can be referred to the method part for description.
The principles and embodiments of the present invention have been described herein using specific examples, which are provided only to help understand the method and the core concept of the present invention; meanwhile, for a person skilled in the art, according to the idea of the present invention, the specific embodiments and the application range may be changed. In view of the above, the present disclosure should not be construed as limiting the invention.
Claims (8)
1. A keyword recommendation method based on a search engine is characterized by comprising the following steps:
acquiring input information input into a search engine by a user;
acquiring data information related to the input information from an engine database according to the input information of the user; the data information related to the input information comprises N pieces of data information;
acquiring the explosion times M of the firework algorithm;
acquiring an explosion point of the K-th explosion of the firework algorithm according to the N pieces of data information and the explosion times M, wherein K is more than or equal to 1 and less than or equal to M;
acquiring the explosion radius and the number of sparks of the K-th explosion in the firework algorithm according to the N pieces of data information and the explosion times M; the method specifically comprises the following steps: when K is 1, acquiring a preset explosion radius and a preset spark number as the explosion radius and the spark number of the 1 st explosion; when K is more than or equal to 2 and less than or equal to M; using formulasDetermining the Kth timeExplosion point X of an explosioniRadius of detonation Ri(ii) a Using formulasDetermining the explosion point X of the Kth explosioniNumber of sparks Si(ii) a Wherein, f (X)i) Is an explosion point XiFitness value of ymin=min(f(Xj)),ymax=max(f(Xj)),(j=1,2,…N),yminIs the minimum value of the fitness values of all n sparks in the K-1 spark, ymaxIs the maximum value of the fitness values of all n sparks in the K-1 spark;is the maximum radius preset in the firework algorithm,the maximum value of the number of sparks preset in the firework algorithm is obtained; ε is the minimum machine amount; the K-1 spark is a spark generated after the K-1 explosion;
carrying out explosion by adopting a firework algorithm to obtain keywords related to the input information of the user; the keyword corresponding to the position of the spark generated by the last explosion is the keyword related to the input information of the user;
and recommending the keywords to a user through the search engine for the user to select.
2. The method according to claim 1, wherein the obtaining of the explosion point of the kth explosion of the firework algorithm according to the N pieces of data information and the explosion number M specifically comprises:
when K is 1, determining the N pieces of data information as an initial population of a firework algorithm, and determining N positions of the N pieces of data information as N explosion points of the 1 st explosion;
when K is more than or equal to 2 and less than or equal to M-1, obtaining the fitness value of the K-1 spark; the K-1 spark is a spark generated after the K-1 explosion; determining the spark with the minimum fitness value in the K-1 spark as an explosion point of the K explosion; determining the rest N-1 explosion points of the Kth explosion by using the selected probability according to the distance between sparks in the Kth spark-1;
when K is M, obtaining the fitness value of the M-1 spark; the M-1 spark is a spark generated after the M-1 explosion; and determining the spark with the minimum fitness value in the M-1 spark as an explosion point of the Mth explosion.
3. The method of claim 2, wherein determining the remaining N-1 explosion points for the kth explosion using a selected probability based on the distance between sparks in the kth spark, comprises:
using formulasCalculating a selected probability P (X) for each of the K-1 sparki) (ii) a Wherein R (X)i) For the X-th spark in the K-1 sparkiThe sum of the distances between the spark and the other sparks,R(Xj) For the X-th spark in the K-1 sparkjThe sum of the distances between the spark and other sparks;
ranking the selected probabilities of all sparks in the K-1 spark;
and determining the first N-1 sparks with the highest probability to be the rest N-1 explosion points of the K explosion.
4. Method according to claim 1, characterized in that said determination of the explosion point X of the kth explosion is carried outiAfter the number of sparks, the method further comprises:
5. The method according to claim 1, wherein the exploding with the fireworks algorithm specifically comprises:
fireworks explosion is adopted to generate explosion sparks and Gaussian variation sparks;
for explosion point XiAcquiring a plurality of explosion directions for generating explosion sparks; for the k explosion direction, the formula is usedDetermining the position of an explosion sparkWherein R isiIs an explosion point XiThe radius of detonation of;is the position before explosion;
for explosion point XiAcquiring a plurality of explosion directions for generating Gaussian variant sparks; for the jth explosion direction, the formula is utilizedDetermining the position of a Gaussian variant sparkWherein e to N (1,1), N (1,1) represents a Gaussian distribution function with a mean value of 1 and a variance of 1.
6. The method of claim 5, wherein after determining the location of the Gaussian variant spark, further comprising:
judging whether the position of the explosion spark exceeds the boundary range of a feasible region or not to obtain a first judgment result;
when the first judgment result shows that the position of the explosion spark exceeds the boundary range of the feasible regionAround the time, using the formulaUpdating the position of the explosion spark in the K-th explosion direction toWherein XUB,kIs the upper boundary of the feasible region, XLB,kIs the lower boundary of the feasible region;
judging whether the position of the Gaussian variation spark exceeds the boundary range of a feasible region or not to obtain a second judgment result;
7. A keyword recommendation system based on a search engine, the system comprising:
the input information acquisition module is used for acquiring input information input into the search engine by a user;
the data information acquisition module is used for acquiring data information related to the input information from an engine database according to the input information of the user; the data information related to the input information comprises N pieces of data information;
the explosion times acquisition module is used for acquiring the explosion times M of the firework algorithm;
the explosion point acquisition module is used for acquiring the explosion point of the K-th explosion of the firework algorithm according to the N pieces of data information and the explosion times M, wherein K is more than or equal to 1 and less than or equal to M;
an explosion radius and spark number obtaining module for obtaining the explosion radius and spark number according to the N pieces of data informationThe explosion times M obtain the explosion radius and the number of sparks of the Kth explosion in the firework algorithm; the explosion radius and spark number acquisition module specifically comprises: a first acquisition unit, configured to acquire a preset explosion radius and a preset number of sparks as an explosion radius and a preset number of sparks of a 1 st explosion when K is 1; a second obtaining unit, configured to, when K is greater than or equal to 2 and less than or equal to M; using formulasDetermining the explosion point X of the first explosioniRadius of detonation Ri(ii) a Using formulasDetermining the explosion point X of the Kth explosioniNumber of sparks Si(ii) a Wherein, f (X)i) Is an explosion point XiFitness value of ymin=min(f(Xj)),ymax=max(f(Xj)),(j=1,2,…N),yminIs the minimum value of the fitness values of all n sparks in the K-1 spark, ymaxIs the maximum value of the fitness values of all n sparks in the K-1 spark;is the maximum radius preset in the firework algorithm,the maximum value of the number of sparks preset in the firework algorithm is obtained; ε is the minimum machine amount; the K-1 spark is a spark generated after the K-1 explosion;
the explosion module is used for carrying out explosion by adopting a firework algorithm to obtain keywords related to the input information of the user; the keyword corresponding to the position of the spark generated by the last explosion is the keyword related to the input information of the user;
and the keyword recommending module is used for recommending the keywords to the user through the search engine for the user to select.
8. The system according to claim 7, wherein the explosion point obtaining module specifically comprises:
a first explosion point determining unit, configured to determine the N pieces of data information as an initial population of a firework algorithm when K is 1, and determine N positions of the N pieces of data information as N explosion points of a 1 st explosion;
the second explosion point determining unit is used for obtaining the fitness value of the K-1 spark when K is more than or equal to 2 and less than or equal to M-1; the K-1 spark is a spark generated after the K-1 explosion; determining the spark with the minimum fitness value in the K-1 spark as an explosion point of the K explosion; determining the rest N-1 explosion points of the Kth explosion by using the selected probability according to the distance between sparks in the Kth spark-1;
a third explosion point determination unit for obtaining a fitness value of an M-1 th spark when K is M; the M-1 spark is a spark generated after the M-1 explosion; and determining the spark with the minimum fitness value in the M-1 spark as an explosion point of the Mth explosion.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810092422.4A CN108197308B (en) | 2018-01-31 | 2018-01-31 | Keyword recommendation method and system based on search engine |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810092422.4A CN108197308B (en) | 2018-01-31 | 2018-01-31 | Keyword recommendation method and system based on search engine |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108197308A CN108197308A (en) | 2018-06-22 |
CN108197308B true CN108197308B (en) | 2020-06-05 |
Family
ID=62591268
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810092422.4A Active CN108197308B (en) | 2018-01-31 | 2018-01-31 | Keyword recommendation method and system based on search engine |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108197308B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110610017B (en) * | 2019-07-16 | 2021-10-29 | 安徽理工大学 | Mining subsidence prediction parameter solving method based on improved firework algorithm |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005091825A2 (en) * | 2004-03-04 | 2005-10-06 | Yahoo! Inc. | Keyword recommendation for internet search engines |
CN102902753A (en) * | 2012-09-20 | 2013-01-30 | 北京奇虎科技有限公司 | Method and device for complementing search terms and establishing individual interest models |
CN102929924A (en) * | 2012-09-20 | 2013-02-13 | 百度在线网络技术(北京)有限公司 | Method and device for generating word selecting searching result based on browsing content |
US8874541B1 (en) * | 2012-01-31 | 2014-10-28 | Intuit Inc. | Social search engine optimizer enhancer for online information resources |
CN106503661A (en) * | 2016-10-25 | 2017-03-15 | 陕西师范大学 | Face gender identification method based on fireworks depth belief network |
-
2018
- 2018-01-31 CN CN201810092422.4A patent/CN108197308B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005091825A2 (en) * | 2004-03-04 | 2005-10-06 | Yahoo! Inc. | Keyword recommendation for internet search engines |
US8874541B1 (en) * | 2012-01-31 | 2014-10-28 | Intuit Inc. | Social search engine optimizer enhancer for online information resources |
CN102902753A (en) * | 2012-09-20 | 2013-01-30 | 北京奇虎科技有限公司 | Method and device for complementing search terms and establishing individual interest models |
CN102929924A (en) * | 2012-09-20 | 2013-02-13 | 百度在线网络技术(北京)有限公司 | Method and device for generating word selecting searching result based on browsing content |
CN106503661A (en) * | 2016-10-25 | 2017-03-15 | 陕西师范大学 | Face gender identification method based on fireworks depth belief network |
Non-Patent Citations (2)
Title |
---|
基于二进制烟花算法的特征选择方法;路永和等;《情报学报》;20170331;第36卷(第3期);论文正文第249-253页 * |
烟花算法研究进展;谭营等;《智能系统学报》;20141031;第9卷(第5期);论文正文第515-525页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108197308A (en) | 2018-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8484181B2 (en) | Cloud matching of a question and an expert | |
US5317507A (en) | Method for document retrieval and for word sense disambiguation using neural networks | |
CN108829865B (en) | Information retrieval method and device | |
US20120095978A1 (en) | Related item usage for matching questions to experts | |
Nabli et al. | Efficient cloud service discovery approach based on LDA topic modeling | |
De Vocht et al. | Discovering meaningful connections between resources in the web of data | |
CN111159361B (en) | Method and device for acquiring article and electronic equipment | |
CN113011471A (en) | Social group dividing method, social group dividing system and related devices | |
JP6973255B2 (en) | Word vector changing device, method, and program | |
CN114896377A (en) | Knowledge graph-based answer acquisition method | |
CN107239554B (en) | Method for retrieving English text based on matching degree | |
Güran et al. | Efficient feature integration with Wikipedia-based semantic feature extraction for Turkish text summarization | |
CN108197308B (en) | Keyword recommendation method and system based on search engine | |
CN114490926A (en) | Method and device for determining similar problems, storage medium and terminal | |
CN111723179A (en) | Feedback model information retrieval method, system and medium based on concept map | |
CN113312523B (en) | Dictionary generation and search keyword recommendation method and device and server | |
CN112507097B (en) | Method for improving generalization capability of question-answering system | |
CN114328820A (en) | Information searching method and related equipment | |
Nio et al. | Improving the robustness of example-based dialog retrieval using recursive neural network paraphrase identification | |
CN113128210B (en) | Webpage form information analysis method based on synonym discovery | |
Peña et al. | Siambert: Siamese bert-based code search | |
Mishra et al. | Review of Web Page Clustering | |
Martellozzo | Integrating semantic and keyword search: a transformer-based approach for content discovery | |
Banerjee | Detecting ambiguity in conversational systems | |
Setia et al. | Semantically Enriched Keyword Prefetching Based on Usage and Domain Knowledge |
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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20231008 Address after: D13, B1/F, Ouyada Hanyang International Plaza, 123 Longyang Avenue, Hanyang District, Wuhan City, Hubei Province, 430000 Patentee after: Jiurun (Hubei) New Energy Technology Co.,Ltd. Address before: 430000 South Eru 28, Hongshan District, Wuhan, Hubei Patentee before: HUBEI University OF TECHNOLOGY |