WO2011052116A1 - ウェブクローリング初期点選択システム、方法及びプログラム - Google Patents

ウェブクローリング初期点選択システム、方法及びプログラム Download PDF

Info

Publication number
WO2011052116A1
WO2011052116A1 PCT/JP2010/004738 JP2010004738W WO2011052116A1 WO 2011052116 A1 WO2011052116 A1 WO 2011052116A1 JP 2010004738 W JP2010004738 W JP 2010004738W WO 2011052116 A1 WO2011052116 A1 WO 2011052116A1
Authority
WO
WIPO (PCT)
Prior art keywords
web
initial point
score
web data
depth
Prior art date
Application number
PCT/JP2010/004738
Other languages
English (en)
French (fr)
Inventor
中山裕貴
門馬道也
森永聡
Original Assignee
日本電気株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Publication of WO2011052116A1 publication Critical patent/WO2011052116A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques

Definitions

  • the present invention relates to a web crawling initial point selection system, a web crawling initial point selection method, and a web crawling initial point selection program, and more particularly to a web crawling initial point selection system for obtaining one or a plurality of crawling initial points reflecting user's interest.
  • the present invention relates to a web crawling initial point selection method and a web crawling initial point selection program.
  • Non-Patent Document 1 describes a focused crawler.
  • the focused crawler described in Non-Patent Document 1 collects web pages based on the idea that related pages are likely to be linked with each other.
  • a storage device that stores web data and a degree of conformity with respect to a topic of a web page are calculated, and based on the degree of conformance
  • the computer includes a calculation device that determines the priority of a page to be crawled, and a storage unit (device) that stores the crawled page in a storage device.
  • the storage device stores the web page obtained by crawling.
  • the calculation device calculates the degree of conformity of the given topic and the crawled web page to the topic, and inserts the web page on which the hyperlink is pasted from the web page at an appropriate position in the queue.
  • the storage unit stores the content of the crawled page in the storage device together with the metadata.
  • Non-Patent Document 2 describes Graph Based Crawler Seed Selection.
  • Graph Based Crawler Seed ⁇ Selection described in Non-Patent Document 2 a point s that maximizes the sum of the page scores is determined as an initial point within a predetermined hop (depth) h, and web crawling I do.
  • Non-Patent Document 1 the initial point is randomly selected and web crawling is performed. In this case as well, it is not guaranteed that a web page having a high degree of fitness with a topic exists at or near a randomly selected initial point. Therefore, also in this case, there is a problem that it is not possible to efficiently collect web pages having a high degree of conformity with the topic requested by the user.
  • Non-Patent Document 2 when the hop (depth) h increases, the number of web pages existing within h hops from the initial point becomes enormous. For this reason, there is a problem that a large amount of unnecessary web pages (low conformity with topics) are collected.
  • the present invention provides a crawling initial point selection system, a web crawling initial point selection method, and a web crawling initial point selection program that can efficiently select an initial point for crawling a web page that reflects a user's interest. With the goal.
  • the web crawling initial point selection system calculates a weight of web data according to the degree of coincidence with information belonging to a specified category, and includes a directed link between web data and the weight of the web data Based on the weighted directed graph and the weighted directed graph, the higher the weight of the web data and the other web data linked to the web data, the higher the score of the web data is calculated.
  • initial point selection means for selecting web data with a higher score as an initial point that is the initial position of the web data to start crawling, and the initial point based on the weighted directed graph
  • the rule is to calculate a lower score as the number of web data at the depth from Based on the search depth score calculation rule, characterized in that a crawling depth determination means for determining a depth from the initial point of crawling the web data.
  • the web crawling initial point selection method is a graph that calculates the weight of web data according to the degree of coincidence with information belonging to a specified category, and includes a directed link between web data and the weight of the web data.
  • Web score which is a rule that configures a certain weighted directed graph, and based on the weighted directed graph, the higher the weight of the web data and other web data linked to the web data, the higher the score of the web data
  • the web data having a higher score is selected as the initial point that is the initial position of the web data to start crawling, and the number of web data at the depth from the initial point is determined based on the weighted directed graph.
  • the search depth score calculation rule which is a rule that lowers the score as the number increases, And determining the depth from the initial point of crawling data.
  • the web crawling initial point selection program calculates a weight of web data according to the degree of coincidence with information belonging to a specified category in a computer, a directed link between web data, and the weight of the web data Based on the weighted directed graph, the higher the weight of the web data and other web data linked to the web data, the higher the score of the web data.
  • the web score calculation rule which is a rule to calculate, based on the initial point selection process for selecting web data with a higher score as the initial position that is the initial position of the web data to start crawling, and the weighted directed graph .
  • Based on the search depth score calculation rule is a rule for calculating low, characterized in that to perform the crawling depth determination process for determining the depth from the initial point of crawling the web data.
  • an initial point for crawling a web page reflecting the user's interest can be efficiently selected.
  • FIG. FIG. 1 is a block diagram illustrating an example of a web crawling initial point selection system according to the first embodiment of the present invention.
  • the web crawling initial point selection system includes an input device 1 such as a keyboard, a data processing device 2 that operates under program control, a storage device 3 that stores information, and an output device 4 such as a display device and a printing device. And.
  • the storage device 3 includes a category dictionary storage unit 31 and a web data storage unit 32.
  • the web data storage unit 32 stores in advance web data obtained by past crawling together with metadata of the data.
  • the category dictionary storage unit 31 stores a category as a headword and a word included in the category as information on the category in advance. Specifically, the category dictionary storage unit 31 stores other categories related to the category in association with each other.
  • the category dictionary storage unit 31 also stores words belonging to each category.
  • Examples of categories stored in the category dictionary storage unit 31 include “politics”, “economy”, “hobbies”, “decree-designated city”, and the like. When the category is “designated city”, the category includes a word such as “Kawasaki city”, for example.
  • the category dictionary storage unit 31 may store categories hierarchically. For example, when “computer” is stored as a category, categories such as “software” and “hardware” may be stored in a lower layer of “computer”. Hereinafter, a category having a relationship such as a hierarchical relationship or an inclusion relationship may be referred to as a related category.
  • the category dictionary storage unit 31 and the web data storage unit 32 are realized by a magnetic disk device or the like included in the storage device 3.
  • the data processing device 2 includes user interest expansion means 21, weighted graph construction means 22, and initial point set determination means 23.
  • the user interest expansion means 21 searches and searches for a set of related categories stored in the category dictionary storage unit 31 using the user interest input from the input device 1 as a key. That is, the user interest expansion unit 21 extracts a related category of a category designated as the user's interest. For example, it is assumed that the category dictionary storage unit 31 stores categories in a tree structure having a parent-child relationship, and the category “computer” has child categories “software” and “hardware”. At this time, when “computer” is input as the user's interest, the user interest expanding means 21 includes categories “software” and “hardware” corresponding to descendants of the category as related categories of “computer” so as to follow the tree.
  • the user interest expanding means 21 combines the extracted “software” and “hardware” with the inputted “computer” as the user's interest.
  • the user interest expansion means 21 extends the user's interest to a category related to the information based on the input information about the user's interest.
  • the weighted graph construction unit 22 performs scoring of the web data stored in the web data storage unit 32 using the user interest expanded by the user interest expansion unit 21 as a key, and constructs a weighted directed graph.
  • this weighted directed graph is represented using the symbol G.
  • the weighted directed graph G is information including link information (hereinafter referred to as a directed link) having a direction between web data corresponding to the expanded user's interest and weights of the web data. It is.
  • the weighted graph constituting unit 22 extracts web data corresponding to the expanded user's interest from the web data storage unit 32. For example, when a category “designated city” is input as a user's interest, the weighted graph constituting unit 22 may extract web data including the word “Kawasaki city” included in the category. In addition, since the method of extracting the web data applicable to the input keyword is widely known, detailed description is omitted.
  • the web data extracted here corresponds to the point set V, and the information representing the link relation between the web data corresponds to the edge set E and the mapping f.
  • the point set V, the side set E, and the mapping f are information stored in advance in the web data storage unit 32.
  • the weighted graph constructing means 22 calculates a weight for each extracted web data by using a scoring method that calculates the weight of the web data higher as it matches the user's interest. That is, the weighted graph constituting unit 22 calculates the weight of the web data according to the degree of coincidence with the information belonging to the designated category. For example, a set of words belonging to the category is assigned to the category. Therefore, the weighted graph constructing means 22 scans the text of the web data, and if a word belonging to the category extracted by the user interest expanding means 21 appears in the web data, the weighted graph constituting means 22 The weight may be increased. In addition, when the word which belongs to a category is input as a user's interest, the weighted graph structure means 22 may increase the weight of web data according to the appearance frequency of the word.
  • the weighted graph constituting unit 22 increases the weight of the web data to “2”.
  • the weighted graph constructing means 22 increases the weight of the web data based on the appearance frequency of the words belonging to the category.
  • the method by which the weighted graph constituting unit 22 calculates the weight of the web data is not limited to the method using the appearance frequency of words belonging to the category.
  • the weighted graph constructing unit 22 may calculate the weight for each extracted web data using another calculation method that calculates the weight of the web data higher as it matches the user's interest.
  • the method (rule) for calculating the weight for the web data corresponds to the mapping w in the weighted directed graph.
  • the initial point set determination means 23 is based on the weighted directed graph formed by the weighted graph construction means 22 and includes one or a plurality of initial points (web data for starting web crawling) that are a subset of the point set V. Is determined together with the depth of search from the initial point, and the output device 4 outputs the result.
  • the depth from the initial point means the number of links through which the shortest path is traced from the web data at the initial point to other web data.
  • the initial point set determination means 23 determines the target web data (point set V) based on a rule that calculates a higher score as the weight of the web data and other web data linked to the web data is higher.
  • the web page with the highest score is selected as the initial point from among the web data that is not the target of web crawling.
  • the score calculated in this way is referred to as a web score.
  • the initial point set determination unit 23 may calculate a web score based on the following Equation 1 and select an initial point that maximizes the web score.
  • is a constant
  • w (s) is the weight of the point s
  • a (s, 1) is a weight with a distance of the shortest path from the point s of 1 (that is, linked from the point s).
  • represents the number of points belonging to A (s, 1).
  • is a value determined according to the difference in the degree of weighting generated between the weight of the initial point and other web data linked to the initial point.
  • the initial point set determination unit 23 selects, as the initial point, web data having a larger score calculated by Expression 1 based on the weighted digraph G.
  • the initial point set deciding means 23 increases the depth from the initial point where the web data is searched, and the initial point already selected based on the rule for calculating the score lower as the number of web data increases. Based on the number of web data existing at a certain depth, a score at that depth is calculated.
  • the score calculated in this way is referred to as a search depth score.
  • the initial point set determination unit 23 may calculate the search depth score based on the following Equation 2.
  • w (s) is the weight of the point s
  • d is the shortest distance from the point s
  • a (s, d + 1) is a set of points in the weighted directed graph whose distance of the shortest path from the point s is d + 1.
  • a (s, d + 1) represents the number of points belonging to the set A (s, d + 1).
  • the initial point set determination means 23 determines the depth at which the search depth score is below a predetermined threshold as the depth at the initial point.
  • a predetermined threshold As the depth at the initial point.
  • web data existing within the determined depth range is the target of web crawling.
  • the initial point set determining means 23 may repeat the above processing until the initial points reach a predetermined number.
  • the initial point set determining unit 23 determines, based on the weighted digraph G, the depth at which the score calculated by the expression 2 is lower than the predetermined threshold as the depth for crawling the web data from the initial point. To do.
  • the initial point set determining means 23 causes the output device 4 to output the selected initial point and the search depth from the initial point.
  • the user interest expansion means 21, the weighted graph construction means 22, and the initial point set determination means 23 are realized by a CPU of a computer that operates according to a program (initial point selection program).
  • the program is stored in a storage unit (not shown) of the data processing device 2, and the CPU reads the program, and according to the program, the user interest expanding unit 21, the weighted graph constructing unit 22, and the initial point set determining unit. 23 may be operated.
  • the user interest expansion unit 21, the weighted graph configuration unit 22, and the initial point set determination unit 23 may each be realized by dedicated hardware.
  • FIG. 2 is a flowchart showing an example of the operation in the first embodiment.
  • the input device 1 notifies the user interest expansion means 21 of the information.
  • the user interest expansion unit 21 checks whether or not a category related to the input user interest is stored in the category dictionary storage unit 31.
  • the user interest expansion unit 21 reads out one or more corresponding categories, and designates this as “expanded user interest”.
  • the user interest expanding unit 21 may set the input user's interest itself as “expanded user interest” ( Step A1).
  • the weighted graph constructing means 22 reads the web data stored in the web data storage unit 32 and constructs a weighted directed graph. Specifically, the weighted graph construction unit 22 reads the web data stored in the web data storage unit 32 based on the expanded user interest, and sets the point set V and the edge set in the weighted directed graph. E and map f are extracted. Then, the weighted graph constituting unit 22 calculates a weight for each read web data (step A2). The weighted graph constructing means 22 constructs a weighted directed graph based on such information (step A3).
  • the weighted directed graph is a link structure between web data and points between web data.
  • the weighted graph constructing means 22 scores the weighted directed graph so that the weight of each point (each web data) of the graph becomes higher as the content of the web data matches the expanded user interest.
  • a weighted directed graph is constructed by the method. For example, the weighted graph constructing means 22 calculates a web score based on the above-described formula 1, and constructs a weighted directed graph.
  • the initial point set determining means 23 initializes a list (hereinafter referred to as list L) for storing the web page selected as the initial point (step A4).
  • the initial point set determination unit 23 performs processing based on the weighted directed graph configured by the weighted graph configuration unit 22.
  • the initial point set determining means 23 checks whether or not the number of initial points stored in the list L has reached a predetermined number (hereinafter referred to as k pieces) (step A5). When the number of initial points has reached k (Yes in Step A5), the initial point set determining unit 23 causes the output device 4 to output the contents of the current list L (Step A13).
  • the initial point set determining means 23 calculates a web score corresponding to each point of the weighted directed graph. For example, the initial point set determining unit 23 calculates a web score based on the above-described Expression 1. Then, the initial point set determination means 23 selects a point (hereinafter referred to as a point s) that maximizes the web score from the weighted directed graph (that is, the set V of points), and performs a search from the point s. Depth d is set to 1 (step A6).
  • the initial point set determining means 23 calculates a search depth score corresponding to the selected point s with respect to the search depth d from the point s. For example, the initial point set determination unit 23 calculates a search depth score based on the above-described formula 2 (step A7). Then, it is determined whether or not the calculated search depth score is greater than or equal to a predetermined threshold (step A8). When the calculated search depth score is equal to or greater than a predetermined threshold value (Yes in step A8), the initial point set determination unit 23 increases the search depth d from the point s by 1 (step A10), and newly covers The point thus deleted is deleted from the weighted directed graph (step A11).
  • the initial point set determining unit 23 excludes web data in the range from the point s to the depth d as a target for web crawling and from candidates for determining the initial point. Then, the process returns to step A7 again, and the initial point set determination unit 23 continues to increase the search depth d until the calculated search depth score falls below a predetermined threshold.
  • the initial point set determining means 23 lists the point s and the search depth d from the point s as a pair. Is added to L (step A9). Then, the initial point set determining means 23 deletes the newly covered points from the weighted directed graph (step A12), and then repeats the processing after step A5. As described above, when the number of initial points has reached k in step A5 (Yes in step A5), the initial point set determination means 23 causes the output device 4 to output the contents of the current list L ( Step A13).
  • step A8 when the initial point set determining unit 23 cannot calculate the search depth score (for example, when there is no point for which a score is to be calculated), the initial point set determining unit 23 determines whether the initial point set determining unit 23 is in step A9. Subsequent processing (that is, processing after adding the initial point and the search depth d at that time to the list) may be performed.
  • FIG. 3 is an explanatory diagram illustrating an example of processing performed in the first embodiment.
  • the category dictionary storage unit 31 stores the categories “hardware” and “software” as related categories with respect to the category “computer”. To do. Further, it is assumed that the web data storage unit 32 stores a plurality of web data, among which “Document 1” includes a sentence “The feature of this computer is hardware ...”. Shall. Further, it is assumed that “computer” is input to the input device 1 as the user's interest.
  • the user interest expansion means 21 searches the category dictionary storage unit 31 in response to the input of the category “computer”, and reads related categories “hardware” and “software”. Then, the user interest expansion means 21 notifies the weighted graph construction means 22 of the category set “computer”, “hardware” and “software” as “expanded user interest” (step A1 in FIG. 2). .
  • the weighted graph constructing means 22 constructs a weighted directed graph G from the web data extracted from the web data storage unit 32 based on this “expanded user interest” (steps A2 and A3 in FIG. 2). Further, the initial point set determining means 23 initializes the list L (step A4).
  • FIG. 4 An example of the weighted directed graph G is shown in FIG.
  • the point set V includes nine points from point s1 to point s9.
  • the edge set E and the mapping f the point s2 to the point s1, the point s3 to the point s1, the point s4 to the point s2, the point s4 to the point s3, the point s4 to the point s5, the point s8 to the point s7, and the point It is assumed that the points s5 and s6 and the points s6 and s7 are linked in both directions in the direction from s9 to point s8.
  • the weights from the points s1 to s9 are “score 1”, “score 2”, “score 2”, “score 5”, “score 3”, “score 1”, “score 1”, respectively. ”,“ Score 2 ”, and“ score 5 ”.
  • the maximum value of the number of initial points to be selected is 2, and the threshold value of the search depth score is 1. A case where the initial point is determined under the above conditions will be described.
  • the initial point set determining means 23 checks whether or not the number of initial points stored in the list L has reached two (step A5). In the initial state, the initial point is not stored in the list L. Therefore, the initial point set determining means 23 determines that the number of initial points stored in the list L has not reached two (No in step A5), and the initial point set determining means 23 determines that the above equation 1 is satisfied. Based on this, a web score corresponding to each point of the weighted directed graph is calculated. Then, the initial point set determination unit 23 selects the point s that maximizes the web score from the weighted directed graph. Here, when the value of ⁇ in Equation 1 is 1, the web score at the point s4 is maximized. Therefore, the initial point set determining unit 23 selects the point s4 from the weighted directed graph G as the first initial point, and sets the search depth d from the point s4 to 1 (step A6).
  • the initial point set determining unit 23 calculates a search depth score corresponding to the selected point s4 with respect to the search depth 1 from the point s4 (step A7).
  • the initial point set determination means 23 calculates a search depth score corresponding to the selected point s4 with respect to the search depth 2 from the point s4 (step A7).
  • This value is a threshold value of 1 or more. Therefore, the initial point set determining unit 23 determines that the calculated search depth score is equal to or greater than a predetermined threshold (Yes in step A8), and the initial point set determining unit 23 determines the search depth from the point s4. d is incremented by 1 (step A10), and the newly covered point is deleted from the weighted directed graph (step A11).
  • the initial point set determination means 23 calculates a search depth score corresponding to the selected point s4 with respect to the search depth 3 from the point s4 (step A7).
  • the initial point set determination unit 23 cannot calculate the search depth score. Therefore, the initial point set determining means 23 determines the search depth d from the point s4 as 3, and adds the point s4 and the search depth 3 as a pair to the list L (step A9). Then, the initial point set determination unit 23 deletes the newly covered points from the point s4 to the depth 3 (points s1 to s7) from the weighted directed graph (step A12).
  • the initial point set determining means 23 determines that the number of initial points stored in the list L has not yet reached two (step No in A5). At this time, the initial point set determining means 23 selects the point s having the maximum web score from the remaining weighted directed graph. Here, when the value of ⁇ in Equation 1 is 1, the web score at the point s9 is maximized. Therefore, the initial point set determining unit 23 selects the point s9 from the weighted directed graph G as the second initial point, and sets the search depth d from the point s9 to 1 (step A6).
  • the initial point set determination means 23 calculates a search depth score corresponding to the selected point s4 with respect to the search depth 1 from the point s9 (step A7).
  • the initial point set determination unit 23 cannot calculate the search depth score. Therefore, the initial point set determining means 23 determines the search depth d from the point s9 as 1, and adds the point s9 and the search depth 1 as a pair to the list L (step A9). Then, the initial point set determination unit 23 deletes the newly covered points from the point s9 to the depth 1 (points s8 to s9) from the weighted directed graph (step A12).
  • the initial point set determining means 23 determines that the number of initial points stored in the list L has reached two (step A5). In Jesus). Therefore, the initial point set determining means 23 causes the output device 4 to output the contents of the current list L (step A13).
  • the weighted graph construction unit 22 calculates the weight of the web data according to the degree of coincidence with the word belonging to the category designated as the user's interest, and the weighted directed graph G Configure. Based on the weighted digraph G, the initial point set determination unit 23 selects web data having a larger score calculated based on Equation 1 as an initial point. Then, the initial point set determining means 23 determines, based on the weighted digraph G, the depth at which the score calculated based on the expression 2 is below a predetermined threshold as the depth for crawling the web data from the initial point. To do. Therefore, an initial point for crawling a web page reflecting the user's interest can be efficiently selected.
  • the initial point set determination unit 23 uses a rule that calculates a lower score as the number of web pages to be crawled increases, and the calculated score falls below a predetermined threshold value, the initial point set determination unit 23 has a deeper depth. Suppressing crawling on the web page. This makes it possible to avoid unnecessary deep crawling. Furthermore, the initial point set determining means 23 sets the object whose score is calculated when determining the initial point as a range of depth 1 from the initial point, and increases the crawling depth after the initial point is determined. Go. Therefore, since it is possible to suppress an enormous amount of calculation for determining the initial point, the initial point can be efficiently selected.
  • the user interest expansion means 21 extracts the related category of the designated category from the category dictionary memory
  • the initial point set determination unit 23 determines the initial point and the depth to be searched from the initial point. Therefore, it is possible to focus on collecting pages that match the user's interest while suppressing acquisition of pages that do not match the user's interest as much as possible.
  • FIG. FIG. 5 is a block diagram illustrating an example of a web crawling initial point selection system according to the second embodiment of the present invention.
  • the web crawling initial point selection system in this embodiment includes an input device 1 such as a keyboard, a data processing device 5 that operates under program control, a storage device 3 that stores information, and an output device 4 such as a display device and a printing device. And.
  • the input device 1, the storage device 3, and the output device 4 are the same as those in the first embodiment.
  • the data processing device 5 includes user interest expansion means 21, weighted graph construction means 22, and initial point set determination means 24.
  • the user interest expansion means 21 and the weighted graph construction means 22 are the same as in the first embodiment, but the initial point set determination means 23 in FIG. 1 is replaced with the initial point set determination means 24 in FIG. This is different from the first embodiment.
  • the initial point set determining means 24 is also a subset of the point set V based on the weighted directed graph formed by the weighted graph forming means 22 as in the initial point set determining means 23 in the first embodiment.
  • a set of initial points is determined together with the depth of search from the initial points, and the output device 4 outputs the results.
  • the method for determining the set of initial points is different from the initial point set determining means 23 in the first embodiment.
  • the initial point set determination unit 24 determines target web data (a set of points V) based on a rule that calculates a higher score as the weight of web data and other web data linked to the web data is higher.
  • the web page with the highest score is selected as the initial point from among the web data that is not the target of web crawling. Similar to the first embodiment, the score calculated in this way is hereinafter referred to as a web score.
  • the initial point set determination unit 24 may calculate a web score based on the above-described Equation 1 and select an initial point that maximizes the web score. That is, the initial point set determination unit 24 may select, as an initial point, web data having a larger score calculated by Expression 1 based on the weighted directed graph G.
  • the initial point set determining means 24 associates the selected initial point with the search depth from the initial point. For example, when an initial point is selected from the point set V, the initial point set determination unit 24 associates the selected initial point with the search depth 1.
  • the depth associated with the initial point is referred to as depth d '.
  • the initial point set deciding means 24 is based on the number of web data at the depth d ′ from the already selected initial point, based on the rule of calculating the score lower as the number of web data increases.
  • a score at the depth d ′ is calculated. Similar to the first embodiment, the score calculated in this way is hereinafter referred to as a search depth score.
  • the initial point set determination unit 24 may calculate the search depth score based on the above-described Expression 2. Then, the initial point set determining unit 24 selects an initial point and a depth d ′ that maximizes the search depth score.
  • the initial point set determination means 24 determines the target web data (point set V) based on a rule for calculating a higher score as the weight of the web data and other web data linked to the web data is higher.
  • the web page that maximizes the web score is selected from the web data that is not the target of web crawling.
  • the initial point set determination unit 24 may calculate a web score based on the above-described formula 1 and select a web page that maximizes the web score, as in the case of initially determining the initial point. . Then, the initial point set determination unit 24 compares the search depth score and the web score to determine which score is higher.
  • the initial point set determination unit 24 When the web score is equal to or less than the search depth score, the initial point set determination unit 24 increases the depth of crawling the web data from the initial point. On the other hand, when the web score is larger than the search depth score, the initial point set determination unit 24 uses the web data used when calculating the web score (that is, the web page with the maximum web score) as a new initial point. decide. Hereinafter, the initial point set determining unit 24 may repeat the above processing until the initial points reach a predetermined number.
  • the initial point set determination unit 24 calculates, based on the weighted digraph G, for example, the search depth score calculated based on the formula 2 based on the formula 1 except for the already selected web data. It is determined whether it is larger than the web score. Then, on the condition that the web score is larger than the search depth score, the initial point set determination unit 24 determines the web data used in the calculation based on Equation 1 as a new initial point. On the other hand, on the condition that the web score is equal to or less than the search depth score, the initial point set determination unit 24 determines to increase the depth of crawling the web data from the initial point.
  • the initial point set determining means 24 determines in advance that a threshold for the depth for searching the web data is set in advance, and the crawling depth is made deeper on the condition that the depth to be searched does not exceed the threshold. May be. By providing such a threshold, it is possible to prevent the crawling search from becoming too deep.
  • the initial point set determining means 24 causes the output device 4 to output the selected initial point and the search depth from the initial point, for example.
  • the user interest expansion means 21, the weighted graph construction means 22, and the initial point set determination means 24 are realized by a CPU of a computer that operates according to a program (initial point selection program).
  • the program is stored in a storage unit (not shown) of the data processing device 5, and the CPU reads the program, and in accordance with the program, the user interest expanding unit 21, the weighted graph constructing unit 22, and the initial point set determining unit. 24 may be operated.
  • the user interest expansion unit 21, the weighted graph configuration unit 22, and the initial point set determination unit 24 may each be realized by dedicated hardware.
  • FIG. 6 is a flowchart illustrating an example of the operation in the second embodiment.
  • the weighted graph constructing means 22 constructs a weighted directed graph
  • the initial point set determining means 23 is a list for storing the initial points (that is, the list L ) Is the same as the processing from step A1 to step A4 in the first embodiment. That is, in steps A1 to A4 illustrated in FIG. 6, the operations performed by the user interest expansion unit 21 and the weighted graph configuration unit 22 are performed by the user interest expansion unit 21 and the weighted graph configuration unit 22 of the first embodiment. Since it is the same as the operation, the description is omitted.
  • a search depth score from the initial point is calculated to determine a search depth.
  • the initial point set determination unit 24 uses the maximum value of the web score calculated by the unselected point s as the initial point and the search depth score calculated by the point s ′ already selected as the initial point. Is calculated, and the search depth and new initial point are determined.
  • the initial point set determining means 24 determines whether or not all the points s stored in the list L have reached a sufficient depth (step B1).
  • “sufficient depth” means an appropriate depth for efficient crawling.
  • the initial point set determination means 24 has a value calculated by Expression 2 below a predetermined threshold value for all points s stored in the list L. Judge that it has reached a sufficient depth. In the initial state, the process of step B7 is not performed, and the point s is not stored in the list L. Therefore, here, the initial point set determination means 24 determines that all the points s stored in the list L have not reached a sufficient depth (No in step B1).
  • the initial point set deciding means 24 has a point s ′ that is already selected as the initial point, and a point s ′ that has not been selected as the initial point and the value of Equation 2 has the maximum value.
  • a score is calculated (step B2). That is, the initial point set determination unit 24 determines the maximum value of the web score calculated by the unselected point s as the initial point and the maximum value of the search depth score calculated by the point s ′ that has already been selected as the initial point.
  • the initial point set determining unit 24 When the number of the initial points already selected is less than k and the value of the expression 1 at the point s is larger than the value of the expression 2 at the point s ′ (Yes in step B3), the initial point set determining unit 24 The search depth d ′ from the point s is set to 1, and the point s is added to the list L (step B4). Then, the initial point set determination unit 24 deletes the newly covered points from the weighted directed graph G (step A12), and repeats the processing after step B1.
  • the initial point set determining means 24 determines whether or not the value of Expression 2 is equal to or greater than a threshold (step B5). When the value of Expression 2 is equal to or greater than a predetermined threshold (Yes in Step B5), the initial point set determining unit 24 increases the search depth d 'from the point s' by 1 (Step B6). Then, the initial point set determination unit 24 deletes the newly covered points from the weighted directed graph G (step A12), and repeats the processing after step B1.
  • step B5 when the value of Expression 2 is less than a predetermined threshold (No in step B5), the initial point set determining unit 24 determines that all the points s stored in the list L are sufficiently deep. (Step B7). In this case, the initial point set determination means 24 deletes the newly covered points from the weighted digraph G (step A12), and then in step B1, all the points s stored in the list L are sufficiently deep. It is determined that the value has been reached (Yes in step B1). Then, the initial point set determination unit 24 causes the output device 4 to output the contents of the current list L (step A13).
  • step B6 the initial point set determination means 24 increases the search depth d ′ by 1 on the condition that the depth to be searched does not exceed the threshold for the depth for searching the web data. You may decide.
  • FIG. 7 is an explanatory diagram illustrating an example of processing performed in the second embodiment.
  • the category dictionary storage unit 31 has categories “hardware” and “software” for the category “computer”. Are stored as related categories.
  • the web data storage unit 32 stores a plurality of web data, among which “Document 1” includes a sentence “The feature of this computer is hardware ...”. Shall.
  • “computer” is input to the input device 1 as the user's interest.
  • the user interest expanding means 21 and the weighted graph constituting means 22 constitute a weighted directed graph G illustrated in FIG.
  • the maximum value of the number of initial points to be selected is 2, and the threshold value of the search depth score is 1.
  • the initial point set determining means 24 determines whether or not all the points s stored in the list L have reached a sufficient depth (step B1). In the initial state, the initial point set determining unit 24 determines that all the points s stored in the list L have not reached a sufficient depth (No in step B1). Next, the initial point set determining unit 24 calculates the maximum value of the web score calculated by the unselected point s as the initial point and the maximum search depth score calculated by the point s ′ already selected as the initial point. A value is calculated (step B2). Here, since the point s ′ already selected as the initial point does not exist, the initial point set determination unit 24 calculates the maximum value of the web score calculated by the unselected point s as the initial point (step B2). ). Here, if the value of ⁇ in Equation 1 is 1, the value of the web score calculated by the point s4 is “22/3”, which is the maximum.
  • the initial point set determination means 24 determines the depth of the search from the point s4. d 'is set to 1, and the point s4 is added to the list L (step B4). Then, the initial point set determining unit 24 deletes the newly covered points “point s2, s3, and point s5” included in the depth 1 from the point s4 from the weighted digraph G (step A12). .
  • the initial point set determination means 24 sets the search depth d 'from the point s9 to 1, and adds the point s9 to the list L (step B4). Then, the initial point set determining unit 24 deletes the newly covered “point s8” that is included in the depth 1 from the point s9 from the weighted digraph G (step A12).
  • the initial point set determining means 24 selects “point s4” having a depth of “1” from the list L, and sets the search depth score to “(score of point s1 + score of point s6) / point The number 2 is calculated as “1”.
  • the initial point set determining unit 24 determines whether or not the value of Expression 2 is equal to or greater than a predetermined threshold (step B5).
  • the initial point set determination unit 24 increases the search depth d ′ from the point s4 by one to obtain the depth. Is set to 2 (step B6). Then, the initial point set determining unit 24 deletes the newly covered points s1 and s6 from the weighted digraph G (step A12).
  • the initial point set determining unit 24 determines whether or not the value of Expression 2 is equal to or greater than a predetermined threshold (step B5).
  • the initial point set determination unit 24 increases the search depth d ′ from the point s9 by one to obtain the depth. Is set to 2 (step B6). Then, the initial point set determination unit 24 deletes the newly covered point s7 from the weighted directed graph G (step A12).
  • the initial point set determining means 24 determines whether or not all the points s stored in the list L have reached a sufficient depth (step B1). Again, since the sufficient depth has not yet been reached (No in step B1), the initial point set determining means 24 determines the maximum value of the web score calculated by the unselected point s as the initial point and the initial point. The maximum value of the search depth score calculated by the point s4 or the point s9 selected as is calculated (step B2). However, since no unselected points already exist, the web score is not calculated here. In addition, since there is no target point for calculating Equation 2, the search depth score is not calculated.
  • the initial point set determining unit 24 determines whether or not the value of Expression 2 is equal to or greater than a predetermined threshold (Step B5).
  • the initial point set determination unit 24 determines that the value is less than the predetermined threshold 1 (No in Step B5). Then, the initial point set determining unit 24 determines that all the points s4 and s9 stored in the list L have reached a sufficient depth (step B7).
  • the initial point set determining unit 24 does not delete the newly covered point from the weighted directed graph G (step A12).
  • step B1 the initial point set determining means 24 determines that all the points s stored in the list L have reached a sufficient depth (yes in step B1), and the contents of the current list L ( The output device 4 is made to output the depth 2 for the initial point s4 and the depth 2) for the initial point s9 (step A13).
  • the weighted graph construction unit 22 calculates the weight of the web data according to the degree of coincidence with the word belonging to the category designated as the user's interest, and the weighted directed graph G Configure. Based on the weighted digraph G, the initial point set determination unit 24 selects web data having a larger score calculated based on Equation 1 as an initial point. Then, the initial point set determination unit 24 uses the weighted digraph G to calculate the search depth score calculated based on the formula 2 based on the web score of the web data other than the initial point calculated based on the formula 2. It is judged whether it is also large.
  • the initial point set determining means 24 determines that web data other than the initial point is a new initial point on the condition that the web score is larger than the search depth score, and that the web score is equal to or less than the search depth score. Then, decide to deepen the depth from the initial point. Therefore, an initial point for crawling a web page reflecting the user's interest can be efficiently selected.
  • the weighted graph constructing unit 22 preferentially selects a web page that reflects the user's interest because the web page that matches the user's interest has a higher weight. can do.
  • the initial point set determination unit 24 uses a rule that calculates a lower score as the number of web pages to be crawled increases, and the calculated score is lower than a predetermined threshold value, the initial point set determining unit 24 has a deeper depth. Suppressing crawling on the web page. This makes it possible to avoid unnecessary deep crawling.
  • the user interest expansion means 21 extracts the related category of the designated category from the category dictionary storage unit 31 that stores the related category related to the category designated as the user's interest in association with each other. Then, the weighted graph construction unit 22 calculates the weight of the web data according to the degree of matching with the information belonging to the designated category and the related category. Therefore, the initial point reflecting the user's interest can be selected.
  • the initial point set determination unit 24 sets the initial point to be crawled and the depth to be crawled from the initial point in parallel with respect to the weighted digraph defining information including the value (weight) of the web data. Has been decided. In this way, by performing processing in parallel, it is possible to prevent the search depth for a specific initial point from becoming too large, and thus efficient crawling can be realized.
  • FIG. FIG. 8 is a block diagram illustrating an example of a web crawling initial point selection system according to the third embodiment of the present invention.
  • the web crawling initial point selection system in this embodiment includes an input device 1 such as a keyboard, a data processing device 7 that operates by reading an initial point automatic selection program 6, a storage device 3 that stores information, a display device, And an output device 4 such as a printing device.
  • the input device 1, the storage device 3, and the output device 4 are the same as those in the first embodiment and the second embodiment.
  • the initial point automatic selection program 6 is a program that is read into the data processing device 7 and controls the operation of the data processing device 7.
  • the data processing device 7 operates as the data processing device 2 in the first embodiment or the data processing device 5 in the second embodiment according to the initial point automatic selection program 6.
  • the data processing device 7 that has read the initial point automatic selection program 6 executes processing performed by the data processing device 2 in the first embodiment or processing performed by the data processing device 5 in the second embodiment. To do.
  • the CPU of the data processing device 7 uses the category dictionary stored in the category dictionary storage unit 31 in the storage device 3 to expand the user's interest. I do.
  • the CPU of the data processing device 7 uses the web data stored in the web data storage unit 32 to construct a weighted directed graph.
  • the CPU of the data processing device 7 uses the weighted directed graph configured as described above, and causes the output device 4 to display the crawling initial point set together with the search depth from each point.
  • FIG. 9 is a block diagram showing an example of the minimum configuration of the web crawling initial point selection system according to the present invention.
  • the web crawling initial point selection system according to the present invention calculates the weight of web data according to the degree of matching (for example, the appearance frequency of words) with information belonging to a specified category (for example, user's interest).
  • a graph composing unit 81 (for example, a weighted graph composing unit 22) that constitutes a weighted directed graph (for example, a weighted directed graph G) that is a graph including a directed link between them and the weight of the web data, and a weighted directed graph
  • a weighted directed graph for example, a weighted directed graph G
  • a weighted directed graph Based on the web score and the other web data linked to the web data, the higher the weight of the web data, the higher the score of the web data is calculated.
  • Web data with a higher score as an initial point which is the initial position of the web data to start crawling For example, from the initial point based on the initial point selection means 82 (for example, the initial point set determination means 23, the initial point set determination means 24) for selecting the web data having the largest value of Equation 1 and the weighted directed graph.
  • the crawling depth for determining the depth from the initial point for crawling the web data based on a search depth score calculation rule for example, Expression 2, which is a rule for calculating the score lower as the number of web data at the depth of the image increases.
  • Determining means 83 for example, initial point set determining means 23, initial point set determining means 24).
  • Web data weights are calculated according to the degree of matching (for example, word appearance frequency) with information belonging to a specified category (for example, user's interest), and the directed link between the web data and the web
  • a graph composing unit for example, a weighted graph composing unit 22 that constitutes a weighted directed graph (for example, a weighted directed graph G) that is a graph including data weights, and web data based on the weighted directed graph.
  • the higher the weight of the other web data linked to the web data the higher the initial value of the web data that starts crawling based on the web score calculation rule (for example, Equation 1) that is a rule for calculating the score of the web data higher.
  • Crawling depth determining means for example, initial point set determining means 23, initial point set
  • a search depth score calculation rule for example, Expression 2
  • a web crawling initial point selection system comprising a determination means 24).
  • the crawling depth determination means determines the depth from which the search depth score calculated based on the search depth score calculation rule falls below a predetermined threshold from the initial point to the web data The crawling depth and determine the web crawling initial point selection system.
  • a web other than the initial point where the search depth score calculated by the crawling depth determination means (for example, the initial point set determination means 24) based on the search depth score calculation rule is calculated based on the web score calculation rule. It is determined whether or not the web score, which is the score of the data, is greater than the search depth score.
  • a web crawling initial point selection system that determines web data other than the initial point as a new initial point on condition that the score is larger than the search depth score.
  • Related category extraction means for example, user interest expansion means for extracting the related category of the designated category from category storage means (for example, category dictionary storage unit 31) that stores related categories related to the category in association with each other. 21), a web crawling initial point selection system in which the weight calculation means calculates the weight of the web data according to the degree of coincidence with the specified category and information belonging to another category.
  • a web crawling initial point selection system in which the weight calculation means calculates a weight according to the frequency at which information belonging to a category appears in web data.
  • a weighted directed graph in which the initial point selection means sets s as a certain web data, the weight of the web data s calculated by the weight calculation means as w (s), and the distance of the shortest path from the web data s is 1.
  • the set of web data in the set is A (s, 1), the number of web data included in the set A (s, 1) is
  • the crawling depth determining means sets a certain web data as s, the weight of the web data s calculated by the weight calculating means as w (s), the search distance from the initial point as d, and the shortest distance from the web data s.
  • a set of web data in the weighted directed graph whose path distance is d + 1 is A (s, d + 1), and the number of web data included in the set A (s, d + 1) is
  • a web crawling initial point selection system that determines the depth at which web data is crawled based on a search depth score calculated according to a search depth score calculation rule that sometimes satisfies the relationship of Equation 2.
  • the crawling depth determining means sets a certain web data as s, the weight of the web data s calculated by the weight calculating means as w (s), the search distance from the initial point as d, and the shortest distance from the web data s.
  • a set of web data in the weighted directed graph whose path distance is d + 1 is A (s, d + 1), and the number of web data included in the set A (s, d + 1) is
  • a web crawling initial point selection system that determines whether or not the search depth score calculated by the search depth score calculation rule satisfying the relationship of Expression 2 is greater than the web score.
  • the present invention is suitably applied to a web crawling initial point selection system that determines one or a plurality of crawling initial points reflecting the user's interest.

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)

Abstract

 グラフ構成手段は、指定されたカテゴリに属する情報との合致度合いに応じてウェブデータの重みを算出し、ウェブデータ間の有向リンクとそのウェブデータの重みとを含むグラフである重み付き有向グラフを構成する。初期点選択手段は、重み付き有向グラフをもとに、ウェブデータとそのウェブデータにリンクされた他のウェブデータの重みが高いほど、そのウェブデータのスコアを高く算出する規則に基づいて、スコアがより大きいウェブデータを初期点として選択する。クローリング深度決定手段は、重み付き有向グラフをもとに、初期点からの深さにおけるウェブデータの数が多くなるほどスコアを低く算出する規則に基づいて、ウェブデータをクローリングする初期点からの深さを決定する。

Description

ウェブクローリング初期点選択システム、方法及びプログラム
 本発明は、ウェブクローリング初期点選択システム、ウェブクローリング初期点選択方法及びウェブクローリング初期点選択プログラムに関し、特にユーザの興味を反映して単数または複数のクローリングの初期点を求めるウェブクローリング初期点選択システム、ウェブクローリング初期点選択方法及びウェブクローリング初期点選択プログラムに関する。
 一般的なトピック特化型ウェブクローリングは、前もって決定されたウェブページの初期点からクローリングを開始し、探索の幅を拡げながら、特定のトピックに適合したウェブページを選択的に収集する。例えば、非特許文献1には、フォーカスドクローラについて記載されている。非特許文献1に記載されたフォーカスドクローラは、関連するページ同士はリンクで繋がっている可能性が高いとする考え方をもとに、ウェブページを収集する。
 非特許文献1に記載されたフォーカスドクローラのように、ウェブクローリングを行うシステムでは、一般的にウェブデータを保存する記憶装置と、ウェブページのトピックに対する適合度を計算し、その適合度に基づきクローリングを行うページの優先度を定める計算装置と、クローリングされたページを記憶装置に保存する保存手段(装置)から構成される。
 具体的には、記憶装置がクローリングにより得られたウェブページを保存する。計算装置は、与えられたトピックと、クローリングを行ったウェブページのトピックに対する適合度を計算し、そのウェブページからハイパーリンクが貼られているウェブページを待ち行列の適切な位置に挿入する。保存手段は、クローリングが行われたページのコンテンツを、メタデータとともに記憶装置に保存する。
 一方、ウェブクローリングが行われる探索の深さを固定し、ウェブクローリングの初期点となるウェブページを選択するアプローチも存在する。この場合、選択された単数または複数の初期点から、その深さ内のすべてのウェブページが探索範囲とされ、その範囲内でクローリングした結果が記憶装置等に保存される。例えば、非特許文献2には、Graph Based Crawler Seed Selectionについて記載されている。非特許文献2に記載されたGraph Based Crawler Seed Selectionでは、予め定められたホップ(深さ)hの範囲内で、ページのスコアの和が最大になる点sを初期点として決定し、ウェブクローリングを行う。
 一般的なトピック特化型ウェブクローリングシステムでは、初期点を決定する際に、ウェブページの初期点が前もって決定され、トピックとの適合度が考慮されていない。そのため、前もって決定された初期点やその付近に、トピックとの適合度が高いウェブページが存在することは保証されず、初期点を効率的に選択できるとは言い難い。
 非特許文献1に記載されたフォーカスドクローラでは、初期点がランダムに選択されてウェブクローリングが行われる。この場合も、ランダムに選択された初期点やその付近に、トピックとの適合度が高いウェブページが存在することは保証されていない。したがって、この場合も、ユーザの要求するトピックとの適合度が高いウェブページを効率的に収集することが出来ないという課題がある。
 一方、初期点から予め定められた探索の深さまでに存在するウェブページがどの程度トピックに適合するかを考慮することで、トピックとの適合度が高い初期点を決定することはある程度可能である。しかし、一般的なトピック特化型ウェブクローリングシステムや、クローリング初期点の自動決定システムを用いたクローリングでは、クローラが取得可能なウェブページの数に制約があると、探索の深さを条件に加味したクローリングを行うことは困難である。
 また、非特許文献2に記載されたGraph Based Crawler Seed Selectionでは、ホップ(深さ)hが大きくなった場合、初期点からhホップ以内に存在するウェブページの個数は膨大なものになる。そのため、不要な(トピックとの適合度が低い)ウェブページを大量に収集してしまうという課題がある。
 そこで、本発明は、ユーザの興味を反映したウェブページをクローリングするための初期点を効率的に選択できるクローリング初期点選択システム、ウェブクローリング初期点選択方法及びウェブクローリング初期点選択プログラムを提供することを目的とする。
 本発明によるウェブクローリング初期点選択システムは、指定されたカテゴリに属する情報との合致度合いに応じてウェブデータの重みを算出し、ウェブデータ間の有向リンクとそのウェブデータの重みとを含むグラフである重み付き有向グラフを構成するグラフ構成手段と、重み付き有向グラフをもとに、ウェブデータとそのウェブデータにリンクされた他のウェブデータの重みが高いほど、そのウェブデータのスコアを高く算出する規則であるウェブスコア算出規則に基づいて、クローリングを開始するウェブデータの初期位置である初期点としてスコアがより大きいウェブデータを選択する初期点選択手段と、重み付き有向グラフをもとに、初期点からの深さにおけるウェブデータの数が多くなるほどスコアを低く算出する規則である探索深度スコア算出規則に基づいて、ウェブデータをクローリングする初期点からの深さを決定するクローリング深度決定手段とを備えたことを特徴とする。
 本発明によるウェブクローリング初期点選択方法は、指定されたカテゴリに属する情報との合致度合いに応じてウェブデータの重みを算出し、ウェブデータ間の有向リンクとウェブデータの重みとを含むグラフである重み付き有向グラフを構成し、重み付き有向グラフをもとに、ウェブデータとそのウェブデータにリンクされた他のウェブデータの重みが高いほど、そのウェブデータのスコアを高く算出する規則であるウェブスコア算出規則に基づいて、クローリングを開始するウェブデータの初期位置である初期点としてスコアがより大きいウェブデータを選択し、重み付き有向グラフをもとに、初期点からの深さにおけるウェブデータの数が多くなるほどスコアを低く算出する規則である探索深度スコア算出規則に基づいて、ウェブデータをクローリングする初期点からの深さを決定することを特徴とする。
 本発明によるウェブクローリング初期点選択プログラムは、コンピュータに、指定されたカテゴリに属する情報との合致度合いに応じてウェブデータの重みを算出し、ウェブデータ間の有向リンクとそのウェブデータの重みとを含むグラフである重み付き有向グラフを構成するグラフ構成処理、重み付き有向グラフをもとに、ウェブデータとそのウェブデータにリンクされた他のウェブデータの重みが高いほど、そのウェブデータのスコアを高く算出する規則であるウェブスコア算出規則に基づいて、クローリングを開始するウェブデータの初期位置である初期点としてスコアがより大きいウェブデータを選択する初期点選択処理、および、重み付き有向グラフをもとに、初期点からの深さにおけるウェブデータの数が多くなるほどスコアを低く算出する規則である探索深度スコア算出規則に基づいて、ウェブデータをクローリングする初期点からの深さを決定するクローリング深度決定処理を実行させることを特徴とする。
 本発明によれば、ユーザの興味を反映したウェブページをクローリングするための初期点を効率的に選択できる。
本発明の第1の実施形態におけるウェブクローリング初期点選択システムの例を示すブロック図である。 第1の実施形態における動作の例を示すフローチャートである。 第1の実施形態で行われる処理の例を説明する説明図である。 重み付き有向グラフの例を示す説明図である。 本発明の第2の実施形態におけるウェブクローリング初期点選択システムの例を示すブロック図である。 第2の実施形態における動作の例を示すフローチャートである。 第2の実施形態で行われる処理の例を説明する説明図である。 本発明の第3の実施形態におけるウェブクローリング初期点選択システムの例を示すブロック図である。 本発明によるウェブクローリング初期点選択システムの最小構成例を示すブロック図である。
 以下、本発明の実施形態を図面を参照して説明する。
実施形態1.
 図1は、本発明の第1の実施形態におけるウェブクローリング初期点選択システムの例を示すブロック図である。本実施形態におけるウェブクローリング初期点選択システムは、キーボード等の入力装置1と、プログラム制御により動作するデータ処理装置2と、情報を記憶する記憶装置3と、ディスプレイ装置や印刷装置などの出力装置4とを備えている。
 記憶装置3は、カテゴリ辞書記憶部31と、ウェブデータ記憶部32とを備えている。ウェブデータ記憶部32は、過去のクローリングにより得られたウェブデータを、そのデータのメタデータとともに予め記憶する。カテゴリ辞書記憶部31は、カテゴリを見出し語として、そのカテゴリに含まれる単語をそのカテゴリの情報として予め記憶する。具体的には、カテゴリ辞書記憶部31は、カテゴリに関連する他のカテゴリを対応付けて記憶する。そして、カテゴリ辞書記憶部31は、各カテゴリに属する単語も合わせて記憶する。
 カテゴリ辞書記憶部31が記憶するカテゴリの例として、例えば、「政治」、「経済」、「趣味」、「政令指定都市」等が挙げられる。また、カテゴリが「政令指定都市」の場合、そのカテゴリには、例えば「川崎市」などの単語が含まれる。また、カテゴリ辞書記憶部31は、カテゴリを階層的に記憶していてもよい。例えば、カテゴリとして「コンピュータ」を記憶している場合、「コンピュータ」の下位層に「ソフトウェア」や「ハードウェア」といったカテゴリを記憶してもよい。以下、階層関係や包含関係など、関連性を有するカテゴリを関連カテゴリと記すこともある。なお、カテゴリ辞書記憶部31及びウェブデータ記憶部32は、記憶装置3が備える磁気ディスク装置等によって実現される。
 データ処理装置2は、ユーザ興味拡張手段21と、重み付きグラフ構成手段22と、初期点集合決定手段23とを備えている。ユーザ興味拡張手段21は、入力装置1から入力されたユーザの興味をキーにして、カテゴリ辞書記憶部31に記憶された関連カテゴリの集合を探索して検索する。すなわち、ユーザ興味拡張手段21は、ユーザの興味として指定されたカテゴリの関連カテゴリを抽出する。例えば、カテゴリ辞書記憶部31が、親子関係を有する木構造でカテゴリを記憶しているものとし、カテゴリ「コンピュータ」が子カテゴリ「ソフトウェア」及び「ハードウェア」を有しているものとする。このとき、ユーザの興味として「コンピュータ」が入力されると、ユーザ興味拡張手段21は、木を辿るように「コンピュータ」の関連カテゴリとしてカテゴリの子孫に該当するカテゴリ「ソフトウェア」及び「ハードウェア」を抽出する。そして、ユーザ興味拡張手段21は、抽出した「ソフトウェア」及び「ハードウェア」を、入力された「コンピュータ」と合わせて、ユーザの興味とする。このように、ユーザ興味拡張手段21は、入力されたユーザの興味に関する情報をもとに、その情報に関連するカテゴリにまでユーザの興味を拡張していると言える。
 重み付きグラフ構成手段22は、ユーザ興味拡張手段21が拡張したユーザの興味をキーにして、ウェブデータ記憶部32に記憶されたウェブデータのスコアリングを行い、重み付き有向グラフを構成する。以下、この重み付き有向グラフを符号Gを用いて表す。ここで、重み付き有向グラフGとは、拡張されたユーザの興味に該当するウェブデータ間の向きを有するリンク情報(以下、有向リンクと記す。)と、それらのウェブデータの重みとを含む情報である。以下、重み付き有向グラフGは、点(ウェブデータ)の集合V、辺(ウェブデータ間のリンク構造)の集合E、Vから実数への写像w:V→R、及び、Eの元(げん)一つに対し、Vの二つの元(げん)を対応させる写像f:E→V×Vの四つ組G:=(f,w,V,E)により構成されるものとする。
 具体的には、重み付きグラフ構成手段22は、拡張されたユーザの興味に該当するウェブデータをウェブデータ記憶部32から抽出する。例えば、重み付きグラフ構成手段22は、ユーザの興味としてカテゴリ「政令指定都市」が入力されたときに、そのカテゴリに含まれる単語「川崎市」が含まれるウェブデータを抽出してもよい。なお、入力されたキーワードに該当するウェブデータを抽出する方法は広く知られているため、詳細な説明は省略する。なお、ここで抽出されたウェブデータが点の集合Vに相当し、これらウェブデータのリンク関係を表す情報が、辺の集合E及び写像fに相当する。また、点の集合V、辺の集合E及び写像fは、ウェブデータ記憶部32にあらかじめ記憶された情報である。
 そして、重み付きグラフ構成手段22は、ユーザの興味に合致しているほどウェブデータの重みを高く算出するスコアリング方法を用いて、抽出された各ウェブデータに対する重みを算出する。すなわち、重み付きグラフ構成手段22は、指定されたカテゴリに属する情報との合致度合いに応じてウェブデータの重みを算出する。例えば、カテゴリには、そのカテゴリに属する単語の集合が割り当てられている。そこで、重み付きグラフ構成手段22は、ウェブデータのテキストを走査し、ユーザ興味拡張手段21が抽出したカテゴリに属する単語がウェブデータ中に出現している場合、その出現頻度に応じてウェブデータの重みを増加させてもよい。なお、カテゴリに属する単語がユーザの興味として入力された場合、重み付きグラフ構成手段22は、その単語の出現頻度に応じてウェブデータの重みを増加させてもよい。
 以下、具体例を用いて、重み付きグラフ構成手段22がウェブデータに対する重みを算出する方法について説明する。例えば、ユーザ興味拡張手段21により得られたカテゴリの集合が、「路線」、「都市」、「政令指定都市」であり、ウェブデータのテキストが「私は南武線で川崎市に行った。」であるものとする。このとき、「南武線」という単語が、カテゴリ「路線」に含まれており、「川崎市」という単語が、カテゴリ「政令指定都市」に含まれている場合、重み付きグラフ構成手段22は、ウェブデータの重みを増加させる。例えば、最も簡単な例として、出現頻度を重みとする場合、重み付きグラフ構成手段22は、このウェブデータの重みを「2」に増加させる。
 上記具体例では、重み付きグラフ構成手段22が、カテゴリに属する単語の出現頻度をもとにウェブデータの重みを増加させる場合について説明した。ただし、重み付きグラフ構成手段22が、ウェブデータの重みを算出する方法は、カテゴリに属する単語の出現頻度を利用する方法に限定されない。重み付きグラフ構成手段22は、ユーザの興味に合致しているほどウェブデータの重みを高く算出する他の算出方法を用いて、抽出された各ウェブデータに対する重みを算出してもよい。なお、ここでウェブデータに対する重みを算出する方法(規則)が、重み付き有向グラフにおける写像wに相当する。
 初期点集合決定手段23は、重み付きグラフ構成手段22で構成された重み付き有向グラフをもとに、点の集合Vの部分集合である単数または複数の初期点(ウェブクローリングを開始するウェブデータ)を、その初期点から探索を行う深さとともに決定し、出力装置4にその結果を出力させる。なお、以下の説明で、初期点からの深さとは、初期点になるウェブデータから他のウェブデータまで最短経路を辿った場合に経由するリンクの数を意味する。
 まず、初期点集合決定手段23は、ウェブデータとそのウェブデータにリンクされている他のウェブデータの重みが高いほどスコアを高く算出する規則に基づいて、対象のウェブデータ(点の集合V)のうち、ウェブクローリングの対象になっていないウェブデータの中から、スコアが最大になるウェブページを初期点として選択する。以下、このように算出されたスコアを、ウェブスコアと記す。例えば、初期点集合決定手段23は、以下の式1に基づいてウェブスコアを算出し、ウェブスコアが最大になる初期点を選択してもよい。
Figure JPOXMLDOC01-appb-M000001
 ここで、γは定数、w(s)は点sの重み、A(s,1)は、点sからの最短経路の距離が1である(すなわち、点sからリンクしている)重み付き有向グラフ中の点の集合、|A(s,1)|は、A(s,1)に属する点の個数を表す。なお、γは、初期点の重みと、初期点にリンクする他のウェブデータとの間に生じさせる重み付けの程度の差異に応じて定められる値である。このように、初期点集合決定手段23は、重み付き有向グラフGをもとに、式1により算出されるスコアがより大きいウェブデータを初期点として選択する。
 次に、初期点集合決定手段23は、ウェブデータの探索を行う初期点からの深さを深くし、ウェブデータの数が多くなるほどスコアを低く算出する規則に基づいて、既に選択された初期点からある深さに存在するウェブデータの数をもとに、その深さにおけるスコアを算出する。以下、このように算出されたスコアを、探索深度スコアと記す。例えば、初期点集合決定手段23は、以下の式2に基づいて探索深度スコアを算出してもよい。
Figure JPOXMLDOC01-appb-M000002
 ここで、w(s)は点sの重み、dは点sからの最短距離、A(s,d+1)は、点sからの最短経路の距離がd+1である重み付き有向グラフ中の点の集合、|A(s,d+1)|は、集合A(s,d+1)に属する点の数を表す。
 そして、初期点集合決定手段23は、探索深度スコアが予め定められた閾値を下回る深さを、その初期点における深さと決定する。すなわち、決定した深さの範囲内に存在するウェブデータが、ウェブクローリングの対象になる。以下、初期点集合決定手段23は、初期点が予め定められた個数になるまで上記処理を繰り返せばよい。このように、初期点集合決定手段23は、重み付き有向グラフGをもとに、式2により算出されるスコアが予め定められた閾値を下回る深さを初期点からウェブデータをクローリングする深さと決定する。
 このように、式2では、初期点からの深さにおけるウェブページの数で除算を行っているため、その深さのウェブページ数が大きくなるほど式2の値が減少し、閾値を下回るようになる。すなわち、探索の深さを決定する際に用いられる規則(例えば、式2)によって、ウェブページの個数によるペナルティを課すことで、不要なウェブページを多く収集することを抑止できる。
 最後に、初期点集合決定手段23は、選択した初期点及びその初期点からの探索深度を出力装置4に出力させる。
 ユーザ興味拡張手段21と、重み付きグラフ構成手段22と、初期点集合決定手段23とは、プログラム(初期点選択プログラム)に従って動作するコンピュータのCPUによって実現される。例えば、プログラムは、データ処理装置2の記憶部(図示せず)に記憶され、CPUは、そのプログラムを読み込み、プログラムに従って、ユーザ興味拡張手段21、重み付きグラフ構成手段22及び初期点集合決定手段23として動作してもよい。また、ユーザ興味拡張手段21と、重み付きグラフ構成手段22と、初期点集合決定手段23とは、それぞれが専用のハードウェアで実現されていてもよい。
 次に、動作について説明する。図2は、第1の実施形態における動作の例を示すフローチャートである。まず、入力装置1にユーザの興味が入力されると、入力装置1は、その情報をユーザ興味拡張手段21に通知する。ユーザ興味拡張手段21は、入力されたユーザの興味と関連のあるカテゴリがカテゴリ辞書記憶部31に記憶されているかどうかを調べる。カテゴリ辞書記憶部31にユーザの興味と関連のあるカテゴリが記憶されていた場合、ユーザ興味拡張手段21は、対応する1つ以上のカテゴリを読み出し、これを「拡張されたユーザ興味」とする。なお、カテゴリ辞書記憶部31にユーザの興味と関連のあるカテゴリが記憶されていない場合、ユーザ興味拡張手段21は、入力されたユーザの興味自身を「拡張されたユーザ興味」とすればよい(ステップA1)。
 次に、重み付きグラフ構成手段22は、ウェブデータ記憶部32に記憶されているウェブデータを読み出し、重み付き有向グラフの構成を行う。具体的には、重み付きグラフ構成手段22は、拡張されたユーザ興味をもとに、ウェブデータ記憶部32に記憶されているウェブデータを読み出し、重み付き有向グラフにおける点の集合V、辺の集合E及び写像fを抽出する。そして、重み付きグラフ構成手段22は、読み出した各ウェブデータに対する重みを算出する(ステップA2)。重み付きグラフ構成手段22は、これらの情報をもとに、重み付き有向グラフを構成する(ステップA3)。
 ここでの重み付き有向グラフは、点を各ウェブデータ、辺をウェブデータ間のリンク構造としたものである。重み付きグラフ構成手段22は、この重み付き有向グラフに対し、グラフの各点(各ウェブデータ)の重みを、ウェブデータの内容が拡張されたユーザ興味と合致しているほど高くなるようなスコアリング方法により計算して、重み付き有向グラフを構成する。例えば、重み付きグラフ構成手段22は、ウェブスコアを上記の式1に基づいて計算し、重み付き有向グラフを構成する。その後、初期点集合決定手段23は、初期点として選択されたウェブページを格納するためのリスト(以下、リストLと記す。)を初期化する(ステップA4)。以下、初期点集合決定手段23は、重み付きグラフ構成手段22が構成した重み付き有向グラフをもとに処理を行う。
 初期点集合決定手段23は、リストLに格納された初期点の数が予め定められた数(以下、k個と記す。)に達しているか否かを調べる(ステップA5)。初期点の数がk個に達していた場合(ステップA5におけるイエス)、初期点集合決定手段23は、現在のリストLの内容を出力装置4に出力させる(ステップA13)。
 初期点の数がk個に達していない場合(ステップA5におけるノー)、初期点集合決定手段23は、重み付き有向グラフの各点に対応するウェブスコアを計算する。例えば、初期点集合決定手段23は、上述の式1に基づいてウェブスコアを計算する。そして、初期点集合決定手段23は、ウェブスコアが最大になる点(以下、点sと記す。)を重み付き有向グラフの中(すなわち、点の集合V)から選択し、点sからの探索の深さdを1とする(ステップA6)。
 続いて、初期点集合決定手段23は、点sからの探索の深さdに対して、選択した点sに対応する探索深度スコアを計算する。例えば、初期点集合決定手段23は、上述の式2に基づいて探索深度スコアを計算する(ステップA7)。そして、算出した探索深度スコアが予め定められた閾値以上か否かを判断する(ステップA8)。算出した探索深度スコアが予め定められた閾値以上の場合(ステップA8におけるイエス)、初期点集合決定手段23は、点sからの探索の深さdを1増加させ(ステップA10)、新たにカバーされた点を重み付き有向グラフから削除する(ステップA11)。すなわち、初期点集合決定手段23は、点sから深さdの範囲にあるウェブデータを、ウェブクローリングの対象とするとともに、初期点を決定するための候補から除外する。そして、再びステップA7に戻り、初期点集合決定手段23は、算出する探索深度スコアが予め定められた閾値を下回るまで探索の深さdを増やし続ける。
 一方、算出した探索深度スコアが予め定められた閾値を下回る以上の場合(ステップA8におけるノー)、初期点集合決定手段23は、点s及び点sからの探索の深さdをペアにしてリストLに追加する(ステップA9)。そして、初期点集合決定手段23は、新たにカバーされた点を重み付き有向グラフから削除した後(ステップA12)、ステップA5以降の処理を繰り返す。なお、上述の通り、ステップA5において初期点の数がk個に達していた場合(ステップA5におけるイエス)、初期点集合決定手段23は、現在のリストLの内容を出力装置4に出力させる(ステップA13)。
 なお、ステップA8において、初期点集合決定手段23が、探索深度スコアを算出できない場合(例えば、スコアを算出する対象になる点が存在しない場合)には、初期点集合決定手段23は、ステップA9以降の処理(すなわち、初期点及びその時点における探索の深さdをリストに追加する以降の処理)を行ってもよい。
 以上の処理について、具体例を用いてさらに説明する。図3は、第1の実施形態で行われる処理の例を説明する説明図である。図3に例示するように、以下の説明では、カテゴリ辞書記憶部31は、「コンピュータ」というカテゴリに対して、「ハードウェア」及び「ソフトウェア」というカテゴリを関連するカテゴリとして記憶しているものとする。また、ウェブデータ記憶部32が、複数のウェブデータを記憶しているものとし、そのうち「文書1」が「このコンピュータの特徴は、・・・ハードウェアが・・・」という文章を含んでいるものとする。また、ユーザの興味として「コンピュータ」が入力装置1に入力されたものとする。
 ユーザ興味拡張手段21は、「コンピュータ」というカテゴリの入力に対し、カテゴリ辞書記憶部31を検索し、「ハードウェア」及び「ソフトウェア」という関連カテゴリを読み出す。そして、ユーザ興味拡張手段21は、「拡張されたユーザ興味」として、カテゴリの集合「コンピュータ」、「ハードウェア」及び「ソフトウェア」を重み付きグラフ構成手段22に通知する(図2におけるステップA1)。重み付きグラフ構成手段22は、この「拡張されたユーザ興味」をもとにウェブデータ記憶部32から抽出したウェブデータから、重み付き有向グラフGを構成する(図2におけるステップA2及びA3)。また、初期点集合決定手段23は、リストLを初期化する(ステップA4)。
 重み付き有向グラフGの例を図4に示す。図4に例示する重み付き有向グラフGは、点の集合Vが点s1から点s9までの9つの点を含んでいるものとする。また、辺の集合E及び写像fにより、点s2から点s1、点s3から点s1、点s4から点s2、点s4から点s3、点s4から点s5、点s8から点s7、及び、点s9から点s8の向きに、点s5と点s6及び点s6と点s7は双方向にそれぞれ点のリンク付けがなされるものとする。また、写像wにより、点s1から点s9までの重みが、それぞれ「スコア1」,「スコア2」,「スコア2」,「スコア5」,「スコア3」,「スコア1」,「スコア1」,「スコア2」,「スコア5」になるものとする。また、選択する初期点の個数の最大値を2、探索深度スコアの閾値を1とする。以上の条件のもとで、初期点を決定する場合について説明する。
 まず、初期点集合決定手段23は、リストLに格納された初期点の数が2個に達しているか否かを調べる(ステップA5)。初期の状態では、リストLには初期点が格納されていない。そこで、初期点集合決定手段23は、リストLに格納された初期点の数が2個に達していないと判断し(ステップA5におけるノー)、初期点集合決定手段23は、上述の式1に基づき、重み付き有向グラフの各点に対応するウェブスコアを計算する。そして、初期点集合決定手段23は、ウェブスコアが最大になる点sを重み付き有向グラフの中から選択する。ここで、式1におけるγの値を1とすると、点s4のウェブスコアが最大になる。そのため、初期点集合決定手段23は、第1の初期点として重み付き有向グラフGの中から点s4を選択し、点s4からの探索の深さdを1とする(ステップA6)。
 続いて、初期点集合決定手段23は、点s4からの探索の深さ1に対して、選択した点s4に対応する探索深度スコアを計算する(ステップA7)。ここで、初期点集合決定手段23は、上述の式2に基づいて点s4の探索深度スコアを(点s1のスコア1+点s6のスコア1)/点の個数2個=1と計算する。この値は、閾値1以上の値である。よって、初期点集合決定手段23は、算出した探索深度スコアが予め定められた閾値以上であると判断し(ステップA8におけるイエス)、初期点集合決定手段23は、点s4からの探索の深さdを1増加させ(ステップA10)、新たにカバーされた点を重み付き有向グラフから削除する(ステップA11)。
 引き続き、初期点集合決定手段23は、点s4からの探索の深さ2に対して、選択した点s4に対応する探索深度スコアを計算する(ステップA7)。ここで、初期点集合決定手段23は、上述の式2に基づいて点s4の探索深度スコアを、(点s7のスコア1)/(点の個数1個)=1と計算する。この値は、閾値1以上の値である。よって、初期点集合決定手段23は、算出した探索深度スコアが予め定められた閾値以上であると判断し(ステップA8におけるイエス)、初期点集合決定手段23は、点s4からの探索の深さdを1増加させ(ステップA10)、新たにカバーされた点を重み付き有向グラフから削除する(ステップA11)。
 さらに、初期点集合決定手段23は、点s4からの探索の深さ3に対して、選択した点s4に対応する探索深度スコアを計算する(ステップA7)。ここで、式2の分母における深さ(3+1)=4に該当する点が重み付き有向グラフに存在しないため、初期点集合決定手段23は、探索深度スコアが算出できない。そのため、初期点集合決定手段23は、点s4からの探索の深さdを3に決定し、点s4および探索の深さ3をペアにしてリストLに追加する(ステップA9)。そして、初期点集合決定手段23は、新たにカバーされた点s4から深さ3までの点(点s1~点s7)を重み付き有向グラフから削除する(ステップA12)。
 ここで、リストLに格納された初期点の数は1個のため、初期点集合決定手段23は、リストLに格納された初期点の数がまだ2個に達していないと判断する(ステップA5におけるノー)。このとき、初期点集合決定手段23は、ウェブスコアが最大になる点sを残った重み付き有向グラフの中から選択する。ここで、式1におけるγの値を1とすると、点s9のウェブスコアが最大になる。そのため、初期点集合決定手段23は、第2の初期点として重み付き有向グラフGの中から点s9を選択し、点s9からの探索の深さdを1とする(ステップA6)。
 続いて、初期点集合決定手段23は、点s9からの探索の深さ1に対して、選択した点s4に対応する探索深度スコアを計算する(ステップA7)。ここで、式2の分母における深さ(1+1)=2に該当する点が重み付き有向グラフに存在しないため、初期点集合決定手段23は、探索深度スコアが算出できない。そのため、初期点集合決定手段23は、点s9からの探索の深さdを1に決定し、点s9および探索の深さ1をペアにしてリストLに追加する(ステップA9)。そして、初期点集合決定手段23は、新たにカバーされた点s9から深さ1までの点(点s8~点s9)を重み付き有向グラフから削除する(ステップA12)。
 ここで、リストLに格納された初期点の数は2個になるため、初期点集合決定手段23は、リストLに格納された初期点の数が2個に達したと判断する(ステップA5におけるイエス)。そのため、初期点集合決定手段23は、現在のリストLの内容を出力装置4に出力させる(ステップA13)。
 以上のように、本実施形態によれば、重み付きグラフ構成手段22が、ユーザの興味として指定されたカテゴリに属する単語との合致度合いに応じてウェブデータの重みを算出して重み付き有向グラフGを構成する。初期点集合決定手段23は、その重み付き有向グラフGをもとに、式1に基づいて算出されるスコアがより大きいウェブデータを初期点として選択する。そして、初期点集合決定手段23は、重み付き有向グラフGをもとに、式2に基づいて算出されるスコアが予め定められた閾値を下回る深さを初期点からウェブデータをクローリングする深さと決定する。そのため、ユーザの興味を反映したウェブページをクローリングするための初期点を効率的に選択できる。
 具体的には、重み付きグラフ構成手段22が、ユーザの興味により合致したウェブページに高い重みが付けるため、ユーザの興味を反映したウェブページを優先的に選択することができる。また、初期点集合決定手段23が、クローリングする対象のウェブページの数が多くなるほどスコアを低く算出する規則を利用し、算出したスコアが予め定められた閾値を下回る場合には、それ以上の深さのウェブページに対してクローリングを行うことを抑止する。そのため、不必要に深いクローリングを避ける事が可能になる。さらに、初期点集合決定手段23は、初期点を決定する際にスコアを算出する対象を、初期点から深さ1の範囲とし、初期点が決定してから順次クローリングする深さを増加させていく。よって、初期点を決定するための計算量が膨大になることを抑止できるため、初期点を効率的に選択することができる。
 また、本実施形態では、ユーザ興味拡張手段21が、ユーザの興味として指定されたカテゴリに関連する関連カテゴリを対応付けて記憶するカテゴリ辞書記憶部31から、指定されたカテゴリの関連カテゴリを抽出する。そして、重み付きグラフ構成手段22が、指定されたカテゴリ及び関連カテゴリに属する情報との合致度合いに応じてウェブデータの重みを算出する。よって、よりユーザの興味を反映した初期点を選択できる。
 言い換えると、本実施形態によれば、初期点集合決定手段23が、初期点、及びその初期点から探索を行う深さを合わせて決定する。そのため、ユーザの興味と合致しないページの取得を可能な限り抑えつつ、ユーザの興味と合致するページを重点的に収集することが可能になる。
実施形態2.
 図5は、本発明の第2の実施形態におけるウェブクローリング初期点選択システムの例を示すブロック図である。なお、第1の実施形態と同様の構成については、図1と同一の符号を付し、説明を省略する。本実施形態におけるウェブクローリング初期点選択システムは、キーボード等の入力装置1と、プログラム制御により動作するデータ処理装置5と、情報を記憶する記憶装置3と、ディスプレイ装置や印刷装置などの出力装置4とを備えている。入力装置1、記憶装置3及び出力装置4については、第1の実施形態と同様である。
 データ処理装置5は、ユーザ興味拡張手段21と、重み付きグラフ構成手段22と、初期点集合決定手段24とを備えている。ユーザ興味拡張手段21及び重み付きグラフ構成手段22については、第1の実施形態と同様であるが、図1における初期点集合決定手段23が、図5では初期点集合決定手段24に置き換わっている点で第1の実施形態と異なる。
 初期点集合決定手段24も、第1の実施形態における初期点集合決定手段23と同様、重み付きグラフ構成手段22で構成された重み付き有向グラフをもとに、点の集合Vの部分集合である初期点の集合を、その初期点から探索を行う深さとともに決定し、出力装置4にその結果を出力させる。ただし、初期点の集合を決定する方法が、第1の実施形態における初期点集合決定手段23と異なる。
 まず、初期点集合決定手段24は、ウェブデータとそのウェブデータにリンクされている他のウェブデータの重みが高いほどスコアを高く算出する規則に基づいて、対象のウェブデータ(点の集合V)のうち、ウェブクローリングの対象になっていないウェブデータの中から、スコアが最大になるウェブページを初期点として選択する。第1の実施形態と同様、以下、このように算出されたスコアを、ウェブスコアと記す。例えば、初期点集合決定手段24は、上述の式1に基づいてウェブスコアを算出し、ウェブスコアが最大になる初期点を選択してもよい。すなわち、初期点集合決定手段24は、重み付き有向グラフGをもとに、式1により算出されるスコアがより大きいウェブデータを初期点として選択してもよい。なお、ここで、初期点集合決定手段24は、選択した初期点と、初期点からの探索の深さとを対応付けておく。例えば、初期点集合決定手段24は、点の集合Vから初期点を選択した際、選択した初期点と探索の深さ1とを対応付けておく。以下、この初期点に対応付けられた深さのことを深さd’と記す。
 次に、初期点集合決定手段24は、ウェブデータの数が多くなるほどスコアを低く算出する規則に基づいて、既に選択された初期点から深さd’におけるウェブデータの数をもとに、その深さd’におけるスコアを算出する。第1の実施形態と同様、以下、このように算出されたスコアを、探索深度スコアと記す。例えば、初期点集合決定手段24は、上述の式2に基づいて探索深度スコアを算出してもよい。そして、初期点集合決定手段24は、探索深度スコアが最大になる初期点及び深さd’を選択する。
 さらに、初期点集合決定手段24は、ウェブデータとそのウェブデータにリンクされている他のウェブデータの重みが高いほどスコアを高く算出する規則に基づいて、対象のウェブデータ(点の集合V)のうち、ウェブクローリングの対象になっていないウェブデータの中から、ウェブスコアが最大になるウェブページを選択する。例えば、初期点集合決定手段24は、初めに初期点を決定する場合と同様に、上述の式1に基づいてウェブスコアを算出し、そのウェブスコアが最大になるウェブページを選択してもよい。そして、初期点集合決定手段24は、探索深度スコアとウェブスコアとを比較し、どちらのスコアが大きいかを判断する。ウェブスコアが探索深度スコア以下の場合、初期点集合決定手段24は、初期点からウェブデータをクローリングする深さをより深くする。一方、ウェブスコアが探索深度スコアよりも大きい場合、初期点集合決定手段24は、ウェブスコアを算出する際に用いたウェブデータ(すなわち、ウェブスコアが最大になるウェブページ)を新たな初期点と決定する。以下、初期点集合決定手段24は、初期点が予め定められた個数になるまで上記処理を繰り返せばよい。
 このように、初期点集合決定手段24は、重み付き有向グラフGをもとに、例えば、式2に基づいて算出される探索深度スコアが、既に選択されたウェブデータ以外で式1に基づいて算出されるウェブスコアよりも大きいか否かを判断する。そして、ウェブスコアが探索深度スコアよりも大きいことを条件に、初期点集合決定手段24は、式1に基づいて算出する際に用いたウェブデータを新たな初期点と決定する。一方、ウェブスコアが探索深度スコア以下であることを条件に、初期点集合決定手段24は、初期点からウェブデータをクローリングする深さをより深くすると決定する。
 なお、初期点集合決定手段24は、ウェブデータを探索する深さについての閾値を予め設け、探索しようとする深さがこの閾値を超えていないことを条件にクローリングする深さをより深くすると決定してもよい。このような閾値を設けることで、クローリングする探索の深さが深くなりすぎることを抑止できる。
 最後に、初期点集合決定手段24は、例えば、選択した初期点及びその初期点からの探索深度を出力装置4に出力させる。
 ユーザ興味拡張手段21と、重み付きグラフ構成手段22と、初期点集合決定手段24とは、プログラム(初期点選択プログラム)に従って動作するコンピュータのCPUによって実現される。例えば、プログラムは、データ処理装置5の記憶部(図示せず)に記憶され、CPUは、そのプログラムを読み込み、プログラムに従って、ユーザ興味拡張手段21、重み付きグラフ構成手段22及び初期点集合決定手段24として動作してもよい。また、ユーザ興味拡張手段21と、重み付きグラフ構成手段22と、初期点集合決定手段24とは、それぞれが専用のハードウェアで実現されていてもよい。
 次に、動作について説明する。図6は、第2の実施形態における動作の例を示すフローチャートである。なお、入力装置1にユーザの興味が入力されてから、重み付きグラフ構成手段22が重み付き有向グラフを構成し、初期点集合決定手段23が、初期点を格納するためのリスト(すなわち、リストL)を初期化するまでの処理は、第1の実施形態におけるステップA1~ステップA4までの処理と同様である。すなわち、図6に例示するステップA1~A4で、ユーザ興味拡張手段21及び重み付きグラフ構成手段22が行う動作は、第1の実施形態のユーザ興味拡張手段21及び重み付きグラフ構成手段22が行う動作と同一のため、説明は省略する。
 リストLの初期化後、第1の実施形態では、新たに初期点になる点を決定した後、その初期点からの探索深度スコアを算出し、探索の深さを決定していた。本実施形態では、初期点集合決定手段24が、初期点として未選択の点sによって算出されるウェブスコアの最大値と、既に初期点として選択されている点s’によって算出される探索深度スコアの最大値を計算し、探索の深さ及び新たな初期点を決定する。
 まず、初期点集合決定手段24は、リストLに格納された全ての点sが、十分な深さに達したか否かを判断する(ステップB1)。なお、ここでの「十分な深さ」とは、効率的にクローリングを行うための適切な深さという意味である。具体的には、後述のステップB5において、初期点集合決定手段24が、リストLに格納された全ての点sに対し、式2で算出される値が予め定められた閾値を下回った場合に、十分な深さに達したと判断する。なお、初期状態では、ステップB7の処理は行われておらず、リストLに点sは格納されていない。そこで、ここでは、初期点集合決定手段24は、リストLに格納された全ての点sが、十分な深さに達していないと判断する(ステップB1におけるノー)。
 次に、初期点集合決定手段24は、式1の値が最大になる、初期点として未選択の点sと、式2の値が最大になる、既に初期点として選択されている点s’とをもとにスコアを計算する(ステップB2)。すなわち、初期点集合決定手段24は、初期点として未選択の点sによって算出されるウェブスコアの最大値と、既に初期点として選択されている点s’によって算出される探索深度スコアの最大値を計算する。
 既に選択された初期点の個数がk個より少なく、かつ、点sにおける式1の値が点s’における式2の値より大きい場合(ステップB3におけるイエス)、初期点集合決定手段24は、点sからの探索の深さd’を1として、点sをリストLに加える(ステップB4)。そして、初期点集合決定手段24は、新たにカバーされた点を重み付き有向グラフGから削除し(ステップA12)、ステップB1以降の処理を繰り返す。一方、ステップB3において、既に選択された初期点の個数がk個に達している場合、または、点sにおける式1の値が点s’における式2の値より以下の場合(ステップB3におけるノー)、初期点集合決定手段24は、式2の値が閾値以上か否かを判断する(ステップB5)。式2の値が予め定められた閾値以上の場合(ステップB5におけるイエス)、初期点集合決定手段24は、点s’からの探索の深さd’を1増加させる(ステップB6)。そして、初期点集合決定手段24は、新たにカバーされた点を重み付き有向グラフGから削除し(ステップA12)、ステップB1以降の処理を繰り返す。
 また、ステップB5において、式2の値が予め定められた閾値未満の場合(ステップB5におけるノー)、初期点集合決定手段24は、リストLに格納された全ての点sが、十分な深さに達したと判断する(ステップB7)。この場合、初期点集合決定手段24は、新たにカバーされた点を重み付き有向グラフGから削除したあと(ステップA12)、ステップB1において、リストLに格納された全ての点sが、十分な深さに達したと判断する(ステップB1におけるイエス)。そして、初期点集合決定手段24は、現在のリストLの内容を出力装置4に出力させる(ステップA13)。
 なお、ステップB6において、初期点集合決定手段24は、探索しようとする深さがウェブデータを探索する深さについての閾値を超えていないことを条件に探索の深さd’を1増加させると決定してもよい。
 以上の処理について、具体例を用いてさらに説明する。図7は、第2の実施形態で行われる処理の例を説明する説明図である。以下の説明では、第1の実施形態において図3に示す例と同様、例示するように、カテゴリ辞書記憶部31は、「コンピュータ」というカテゴリに対して、「ハードウェア」及び「ソフトウェア」というカテゴリを関連するカテゴリとして記憶しているものとする。また、ウェブデータ記憶部32が、複数のウェブデータを記憶しているものとし、そのうち「文書1」が「このコンピュータの特徴は、・・・ハードウェアが・・・」という文章を含んでいるものとする。また、ユーザの興味として「コンピュータ」が入力装置1に入力されたものとする。そして、ユーザ興味拡張手段21及び重み付きグラフ構成手段22が、図4に例示する重み付き有向グラフGを構成したものとする。また、選択する初期点の個数の最大値を2、探索深度スコアの閾値を1とする。
 まず、初期点集合決定手段24は、リストLに格納された全ての点sが、十分な深さに達したか否かを判断する(ステップB1)。初期状態では、初期点集合決定手段24は、リストLに格納された全ての点sが、十分な深さに達していないと判断する(ステップB1におけるノー)。次に、初期点集合決定手段24は、初期点として未選択の点sによって算出されるウェブスコアの最大値と、既に初期点として選択されている点s’によって算出される探索深度スコアの最大値を計算する(ステップB2)。ここでは、既に初期点として選択されている点s’は存在しないため、初期点集合決定手段24は、初期点として未選択の点sによって算出されるウェブスコアの最大値を算出する(ステップB2)。ここで、式1におけるγの値を1とすると、点s4によって算出されるウェブスコアの値が「22/3」と最大になる。
 ここでは、既に選択された初期点の個数が2個より少なく、かつ、式2の値は存在しないため(ステップB3におけるイエス)、初期点集合決定手段24は、点s4からの探索の深さd’を1として、点s4をリストLに加える(ステップB4)。そして、初期点集合決定手段24は、新たにカバーされた、点s4から深さ1に含まれる点である「点s2、点s3、点s5」を重み付き有向グラフGから削除する(ステップA12)。
 再び、ステップB1に戻り、初期点集合決定手段24は、リストLに格納された全ての点sが、十分な深さに達したか否かを判断する(ステップB1)。ここでは、まだ十分な深さに達していないため(ステップB1におけるノー)、初期点集合決定手段24は、初期点として未選択の点sによって算出されるウェブスコアの最大値と、既に初期点として選択されている点s4によって算出される探索深度スコアの最大値を計算する(ステップB2)。ここで、初期点集合決定手段24は、重み付き有向グラフの中から「点s9」を選択し、ウェブスコアを「5+2=7」と計算する。また、初期点集合決定手段24は、リストLの中から深さが「1」である「点s4」を選択し、探索深度スコアを「(点s1のスコア1+点s6のスコア1)/点の個数2=1」と算出する。
 ここでは、初期点の個数は1個であり、かつ、式2の値は1であるため、ウェブスコアの値である7よりも小さい。すなわち、既に選択された初期点の個数が2個より少なく、かつ、点s9における式1の値が深さ1である点s4における式2の値より大きい(ステップB3におけるイエス)。よって、初期点集合決定手段24は、点s9からの探索の深さd’を1として、点s9をリストLに加える(ステップB4)。そして、初期点集合決定手段24は、新たにカバーされた、点s9から深さ1に含まれる点である「点s8」を重み付き有向グラフGから削除する(ステップA12)。
 再び、ステップB1に戻り、初期点集合決定手段24は、リストLに格納された全ての点sが、十分な深さに達したか否かを判断する(ステップB1)。ここでも、まだ十分な深さに達していないため(ステップB1におけるノー)、初期点集合決定手段24は、初期点として未選択の点sによって算出されるウェブスコアの最大値と、既に初期点として選択されている点s4又は点s9によって算出される探索深度スコアの最大値を計算する(ステップB2)。ここで、初期点集合決定手段24は、重み付き有向グラフの中から「点s6」を選択し、ウェブスコアを「1+1=2」と計算する。また、初期点集合決定手段24は、リストLの中から深さが「1」である「点s4」を選択し、探索深度スコアを「(点s1のスコア+点s6のスコア)/点の個数2=1」と算出する。
 ここでは、初期点の個数は2個であるため、既に選択された初期点の個数は2個以上である(ステップB3におけるノー)。よって、初期点集合決定手段24は、式2の値が予め定められた閾値以上か否かを判断する(ステップB5)。ここでは、式2の値が予め定められた閾値1以上であるため(ステップB5におけるイエス)、初期点集合決定手段24は、点s4からの探索の深さd’を1増加させ、深さを2にする(ステップB6)。そして、初期点集合決定手段24は、新たにカバーされた点s1及び点s6を重み付き有向グラフGから削除する(ステップA12)。
 再び、ステップB1に戻り、初期点集合決定手段24は、リストLに格納された全ての点sが、十分な深さに達したか否かを判断する(ステップB1)。ここでも、まだ十分な深さに達していないため(ステップB1におけるノー)、初期点集合決定手段24は、初期点として未選択の点sによって算出されるウェブスコアの最大値と、既に初期点として選択されている点s4又は点s9によって算出される探索深度スコアの最大値を計算する(ステップB2)。ここで、初期点集合決定手段24は、重み付き有向グラフの中から「点s7」を選択し、ウェブスコアを「1」と計算する。また、初期点集合決定手段24は、リストLの中から深さが「1」である「点s9」を選択し、探索深度スコアを「(点s7のスコア)/点の個数1=1」と算出する。
 ここでは、初期点の個数は2個であるため、既に選択された初期点の個数は2個以上である(ステップB3におけるノー)。よって、初期点集合決定手段24は、式2の値が予め定められた閾値以上か否かを判断する(ステップB5)。ここでは、式2の値が予め定められた閾値1以上であるため(ステップB5におけるイエス)、初期点集合決定手段24は、点s9からの探索の深さd’を1増加させ、深さを2にする(ステップB6)。そして、初期点集合決定手段24は、新たにカバーされた点s7を重み付き有向グラフGから削除する(ステップA12)。
 再び、ステップB1に戻り、初期点集合決定手段24は、リストLに格納された全ての点sが、十分な深さに達したか否かを判断する(ステップB1)。ここでも、まだ十分な深さに達していないため(ステップB1におけるノー)、初期点集合決定手段24は、初期点として未選択の点sによって算出されるウェブスコアの最大値と、既に初期点として選択されている点s4又は点s9によって算出される探索深度スコアの最大値を計算する(ステップB2)。ただし、ここでは、既に未選択の点は存在しないため、ウェブスコアの計算は行わない。また、式2を算出する対象の点も存在しないため、探索深度スコアの計算も行わない。そして、初期点の個数はすでに2個であるため(ステップB3におけるノー)、初期点集合決定手段24は、式2の値が予め定められた閾値以上か否かを判断する(ステップB5)。ここでは、式2の値は存在しないため、初期点集合決定手段24は、予め定められた閾値1未満と判断する(ステップB5におけるノー)。そして、初期点集合決定手段24は、リストLに格納された全ての点s4及び点s9が、十分な深さに達したと判断する(ステップB7)。
 なお、この場合、新たにカバーされた点は存在しないため、初期点集合決定手段24は、新たにカバーされた点を重み付き有向グラフGから削除しない(ステップA12)。そして、初期点集合決定手段24は、ステップB1において、リストLに格納された全ての点sが、十分な深さに達したと判断し(ステップB1におけるイエス)、現在のリストLの内容(初期点s4について深さ2、初期点s9に対して深さ2)を出力装置4に出力させる(ステップA13)。
 以上のように、本実施形態によれば、重み付きグラフ構成手段22が、ユーザの興味として指定されたカテゴリに属する単語との合致度合いに応じてウェブデータの重みを算出して重み付き有向グラフGを構成する。初期点集合決定手段24は、その重み付き有向グラフGをもとに、式1に基づいて算出されるスコアがより大きいウェブデータを初期点として選択する。そして、初期点集合決定手段24は、重み付き有向グラフGをもとに、式2に基づいて算出される探索深度スコアが、式2に基づいて算出される初期点以外のウェブデータのウェブスコアよりも大きいか否かを判断する。初期点集合決定手段24は、ウェブスコアが探索深度スコアよりも大きいことを条件に、初期点以外のウェブデータを新たな初期点と決定し、ウェブスコアが探索深度スコア以下であることを条件に、初期点からの深さをより深くすると決定する。そのため、ユーザの興味を反映したウェブページをクローリングするための初期点を効率的に選択できる。
 具体的には、第1の実施形態と同様に、重み付きグラフ構成手段22が、ユーザの興味により合致したウェブページに高い重みが付けるため、ユーザの興味を反映したウェブページを優先的に選択することができる。また、初期点集合決定手段24が、クローリングする対象のウェブページの数が多くなるほどスコアを低く算出する規則を利用し、算出したスコアが予め定められた閾値を下回る場合には、それ以上の深さのウェブページに対してクローリングを行うことを抑止する。そのため、不必要に深いクローリングを避ける事が可能になる。さらに、ユーザ興味拡張手段21が、ユーザの興味として指定されたカテゴリに関連する関連カテゴリを対応付けて記憶するカテゴリ辞書記憶部31から、指定されたカテゴリの関連カテゴリを抽出する。そして、重み付きグラフ構成手段22が、指定されたカテゴリ及び関連カテゴリに属する情報との合致度合いに応じてウェブデータの重みを算出する。よって、よりユーザの興味を反映した初期点を選択できる。
 また、本実施形態では、初期点集合決定手段24が、ウェブデータの価値(重み)を含む情報を定義した重み付き有向グラフに対し、クローリングする初期点と初期点からクローリングする深さとを並列的に決定している。このように、並列的に処理することにより、特定の初期点に対する探索の深さが大きくなりすぎることを抑止できるため、効率的なクローリングを実現することができる。
実施形態3.
 図8は、本発明の第3の実施形態におけるウェブクローリング初期点選択システムの例を示すブロック図である。なお、第1の実施形態及び第2の実施形態と同様の構成については、図1及び図6と同一の符号を付し、説明を省略する。本実施形態におけるウェブクローリング初期点選択システムは、キーボード等の入力装置1と、初期点自動選択用プログラム6を読み込んで動作するデータ処理装置7と、情報を記憶する記憶装置3と、ディスプレイ装置や印刷装置などの出力装置4とを備えている。入力装置1、記憶装置3及び出力装置4については、第1の実施形態及び第2の実施形態と同様である。
 すなわち、初期点自動選択用プログラム6は、データ処理装置7に読み込まれてデータ処理装置7の動作を制御するプログラムである。データ処理装置7は、初期点自動選択用プログラム6に従って、第1の実施形態におけるデータ処理装置2、または、第2の実施形態におけるデータ処理装置5として動作する。言い換えると、初期点自動選択用プログラム6を読み込んだデータ処理装置7が、第1の実施形態においてデータ処理装置2が行う処理、または、第2の実施形態においてデータ処理装置5が行う処理を実行する。
 この場合、入力装置1からユーザの興味が与えられると、例えば、データ処理装置7のCPUは、記憶装置3内のカテゴリ辞書記憶部31に記憶されているカテゴリ辞書を用い、ユーザの興味の拡張を行う。次に、データ処理装置7のCPUは、ウェブデータ記憶部32に記憶されているウェブデータを用い、重み付き有向グラフを構成する。続いて、データ処理装置7のCPUは、このようにして構成された重み付き有向グラフを用い、クローリングの初期点集合をその各々の点からの探索の深さとともに、出力装置4に表示させる。
 次に、本発明によるウェブクローリング初期点選択システムの最小構成例を説明する。図9は、本発明によるウェブクローリング初期点選択システムの最小構成の例を示すブロック図である。本発明によるウェブクローリング初期点選択システムは、指定されたカテゴリ(例えば、ユーザの興味)に属する情報との合致度合い(例えば、単語の出現頻度)に応じてウェブデータの重みを算出し、ウェブデータ間の有向リンクとそのウェブデータの重みとを含むグラフである重み付き有向グラフ(例えば、重み付き有向グラフG)を構成するグラフ構成手段81(例えば、重み付きグラフ構成手段22)と、重み付き有向グラフをもとに、ウェブデータとそのウェブデータにリンクされた他のウェブデータの重みが高いほど、そのウェブデータのスコアを高く算出する規則であるウェブスコア算出規則(例えば、式1)に基づいて、クローリングを開始するウェブデータの初期位置である初期点としてスコアがより大きいウェブデータ(例えば、式1の値が最も大きいウェブデータ)を選択する初期点選択手段82(例えば、初期点集合決定手段23、初期点集合決定手段24)と、重み付き有向グラフをもとに、初期点からの深さにおけるウェブデータの数が多くなるほどスコアを低く算出する規則である探索深度スコア算出規則(例えば、式2)に基づいて、ウェブデータをクローリングする初期点からの深さを決定するクローリング深度決定手段83(例えば、初期点集合決定手段23、初期点集合決定手段24)とを備えている。
 そのような構成により、ユーザの興味を反映したウェブページをクローリングするための初期点を効率的に選択できる。
 なお、少なくとも以下に示すようなウェブクローリング初期点選択システムも、上記に示すいずれかの実施形態に開示されている。
(1)指定されたカテゴリ(例えば、ユーザの興味)に属する情報との合致度合い(例えば、単語の出現頻度)に応じてウェブデータの重みを算出し、ウェブデータ間の有向リンクとそのウェブデータの重みとを含むグラフである重み付き有向グラフ(例えば、重み付き有向グラフG)を構成するグラフ構成手段(例えば、重み付きグラフ構成手段22)と、重み付き有向グラフをもとに、ウェブデータとそのウェブデータにリンクされた他のウェブデータの重みが高いほど、そのウェブデータのスコアを高く算出する規則であるウェブスコア算出規則(例えば、式1)に基づいて、クローリングを開始するウェブデータの初期位置である初期点としてスコアがより大きいウェブデータ(例えば、式1の値が最も大きいウェブデータ)を選択する初期点選択手段(例えば、初期点集合決定手段23、初期点集合決定手段24)と、重み付き有向グラフをもとに、初期点からの深さにおけるウェブデータの数が多くなるほどスコアを低く算出する規則である探索深度スコア算出規則(例えば、式2)に基づいて、ウェブデータをクローリングする初期点からの深さを決定するクローリング深度決定手段(例えば、初期点集合決定手段23、初期点集合決定手段24)とを備えたウェブクローリング初期点選択システム。
(2)クローリング深度決定手段(例えば、初期点集合決定手段23)が、探索深度スコア算出規則に基づいて算出される探索深度スコアが予め定められた閾値を下回る深さを、初期点からウェブデータをクローリングする深さと決定するウェブクローリング初期点選択システム。
(3)クローリング深度決定手段(例えば、初期点集合決定手段24)が、探索深度スコア算出規則に基づいて算出される探索深度スコアが、ウェブスコア算出規則に基づいて算出される初期点以外のウェブデータのスコアであるウェブスコアよりも大きいか否かを判断し、ウェブスコアが探索深度スコア以下であることを条件に、ウェブデータをクローリングする初期点からの深さをより深くすると決定し、ウェブスコアが探索深度スコアよりも大きいことを条件に、初期点以外のウェブデータを新たな初期点と決定するウェブクローリング初期点選択システム。
(4)カテゴリに関連する関連カテゴリを対応付けて記憶するカテゴリ記憶手段(例えば、カテゴリ辞書記憶部31)から、指定されたカテゴリの関連カテゴリを抽出する関連カテゴリ抽出手段(例えば、ユーザ興味拡張手段21)を備え、重み算出手段が、指定されたカテゴリ及び他のカテゴリに属する情報との合致度合いに応じてウェブデータの重みを算出するウェブクローリング初期点選択システム。
(5)重み算出手段が、カテゴリに属する情報がウェブデータ中に出現する頻度に応じて重みを算出するウェブクローリング初期点選択システム。
(6)初期点選択手段が、あるウェブデータをsとし、重み算出手段が算出するウェブデータsの重みをw(s)とし、ウェブデータsからの最短経路の距離が1である重み付き有向グラフ中のウェブデータの集合をA(s,1)とし、集合A(s,1)に含まれるウェブデータの数を|A(s,1)|とし、初期点の重みと、初期点にリンクする他のウェブデータとの間に生じさせる重み付けの程度の差異に応じて予め定められる値をγとしたときに、式1の関係を満たすウェブスコア算出規則により算出されるウェブスコアに基づいて、ウェブデータを選択するウェブクローリング初期点選択システム。
(7)クローリング深度決定手段が、あるウェブデータをsとし、重み算出手段が算出するウェブデータsの重みをw(s)とし、初期点から探索する距離をdとし、ウェブデータsからの最短経路の距離がd+1である重み付き有向グラフ中のウェブデータの集合をA(s,d+1)とし、集合A(s,d+1)に含まれるウェブデータの数を|A(s,d+1)|としたときに、式2の関係を満たす探索深度スコア算出規則により算出される探索深度スコアに基づいて、ウェブデータをクローリングする深さを決定するウェブクローリング初期点選択システム。
(8)クローリング深度決定手段が、あるウェブデータをsとし、重み算出手段が算出するウェブデータsの重みをw(s)とし、初期点から探索する距離をdとし、ウェブデータsからの最短経路の距離がd+1である重み付き有向グラフ中のウェブデータの集合をA(s,d+1)とし、集合A(s,d+1)に含まれるウェブデータの数を|A(s,d+1)|としたときに、式2の関係を満たす探索深度スコア算出規則により算出される探索深度スコアが、ウェブスコアよりも大きいか否かを判断するウェブクローリング初期点選択システム。
 以上、実施形態及び実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
 この出願は、2009年10月28日に出願された日本特許出願2009-247481を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 本発明は、ユーザの興味を反映して単数または複数のクローリングの初期点を求めるウェブクローリング初期点選択システムに好適に適用される。
 1 入力装置
 2 データ処理装置
 3 記憶装置
 4 出力装置
 5 データ処理装置
 6 初期点自動選択用プログラム
 7 データ処理装置
 21 ユーザ興味拡張手段
 22 重み付きグラフ構成手段
 23 初期点集合決定手段
 24 初期点集合決定手段
 31 カテゴリ辞書記憶部
 32 ウェブデータ記憶部

Claims (14)

  1.  指定されたカテゴリに属する情報との合致度合いに応じてウェブデータの重みを算出し、ウェブデータ間の有向リンクと当該ウェブデータの重みとを含むグラフである重み付き有向グラフを構成するグラフ構成手段と、
     前記重み付き有向グラフをもとに、ウェブデータと当該ウェブデータにリンクされた他のウェブデータの重みが高いほど、当該ウェブデータのスコアを高く算出する規則であるウェブスコア算出規則に基づいて、クローリングを開始するウェブデータの初期位置である初期点として前記スコアがより大きいウェブデータを選択する初期点選択手段と、
     前記重み付き有向グラフをもとに、前記初期点からの深さにおけるウェブデータの数が多くなるほどスコアを低く算出する規則である探索深度スコア算出規則に基づいて、ウェブデータをクローリングする前記初期点からの深さを決定するクローリング深度決定手段とを備えた
     ことを特徴とするウェブクローリング初期点選択システム。
  2.  クローリング深度決定手段は、探索深度スコア算出規則に基づいて算出される探索深度スコアが予め定められた閾値を下回る深さを、初期点からウェブデータをクローリングする深さと決定する
     請求項1記載のウェブクローリング初期点選択システム。
  3.  クローリング深度決定手段は、探索深度スコア算出規則に基づいて算出される探索深度スコアが、ウェブスコア算出規則に基づいて算出される初期点以外のウェブデータのスコアであるウェブスコアよりも大きいか否かを判断し、前記ウェブスコアが前記探索深度スコア以下であることを条件に、ウェブデータをクローリングする前記初期点からの深さをより深くすると決定し、前記ウェブスコアが前記探索深度スコアよりも大きいことを条件に、前記初期点以外のウェブデータを新たな初期点と決定する
     請求項1記載のウェブクローリング初期点選択システム。
  4.  カテゴリに関連する関連カテゴリを対応付けて記憶するカテゴリ記憶手段から、指定されたカテゴリの関連カテゴリを抽出する関連カテゴリ抽出手段を備え、
     重み算出手段は、指定されたカテゴリ及び前記他のカテゴリに属する情報との合致度合いに応じてウェブデータの重みを算出する
     請求項1から請求項3のうちのいずれか1項に記載のウェブクローリング初期点選択システム。
  5.  重み算出手段は、カテゴリに属する情報がウェブデータ中に出現する頻度に応じて重みを算出する
     請求項1から請求項4のうちのいずれか1項に記載のウェブクローリング初期点選択システム。
  6.  初期点選択手段は、あるウェブデータをsとし、重み算出手段が算出するウェブデータsの重みをw(s)とし、ウェブデータsからの最短経路の距離が1である重み付き有向グラフ中のウェブデータの集合をA(s,1)とし、前記集合A(s,1)に含まれるウェブデータの数を|A(s,1)|とし、初期点の重みと、初期点にリンクする他のウェブデータとの間に生じさせる重み付けの程度の差異に応じて予め定められる値をγとしたときに、式1の関係を満たすウェブスコア算出規則により算出されるウェブスコアに基づいて、ウェブデータを選択する
     請求項1から請求項5のうちのいずれか1項に記載のウェブクローリング初期点選択システム。
    Figure JPOXMLDOC01-appb-M000003
  7.  クローリング深度決定手段は、あるウェブデータをsとし、重み算出手段が算出するウェブデータsの重みをw(s)とし、初期点から探索する距離をdとし、ウェブデータsからの最短経路の距離がd+1である重み付き有向グラフ中のウェブデータの集合をA(s,d+1)とし、前記集合A(s,d+1)に含まれるウェブデータの数を|A(s,d+1)|としたときに、式2の関係を満たす探索深度スコア算出規則により算出される探索深度スコアに基づいて、ウェブデータをクローリングする深さを決定する
     請求項2に記載のウェブクローリング初期点選択システム。
    Figure JPOXMLDOC01-appb-M000004
  8.  クローリング深度決定手段は、あるウェブデータをsとし、重み算出手段が算出するウェブデータsの重みをw(s)とし、初期点から探索する距離をdとし、ウェブデータsからの最短経路の距離がd+1である重み付き有向グラフ中のウェブデータの集合をA(s,d+1)とし、前記集合A(s,d+1)に含まれるウェブデータの数を|A(s,d+1)|としたときに、式3の関係を満たす探索深度スコア算出規則により算出される探索深度スコアが、ウェブスコアよりも大きいか否かを判断する
     請求項3に記載のウェブクローリング初期点選択システム。
    Figure JPOXMLDOC01-appb-M000005
  9.  指定されたカテゴリに属する情報との合致度合いに応じてウェブデータの重みを算出し、
     ウェブデータ間の有向リンクと前記ウェブデータの重みとを含むグラフである重み付き有向グラフを構成し、
     前記重み付き有向グラフをもとに、ウェブデータと当該ウェブデータにリンクされた他のウェブデータの重みが高いほど、当該ウェブデータのスコアを高く算出する規則であるウェブスコア算出規則に基づいて、クローリングを開始するウェブデータの初期位置である初期点として前記スコアがより大きいウェブデータを選択し、
     前記重み付き有向グラフをもとに、前記初期点からの深さにおけるウェブデータの数が多くなるほどスコアを低く算出する規則である探索深度スコア算出規則に基づいて、ウェブデータをクローリングする前記初期点からの深さを決定する
     ことを特徴とするウェブクローリング初期点選択方法。
  10.  初期点からウェブデータをクローリングする深さを、探索深度スコア算出規則に基づいて算出される探索深度スコアが予め定められた閾値を下回る深さに決定する
     請求項9記載のウェブクローリング初期点選択方法。
  11.  探索深度スコア算出規則に基づいて算出される探索深度スコアが、ウェブスコア算出規則に基づいて算出される初期点以外のウェブデータのスコアであるウェブスコアよりも大きいか否かを判断し、
     前記ウェブスコアが前記探索深度スコア以下であることを条件に、ウェブデータをクローリングする前記初期点からの深さをより深くすると決定し、前記ウェブスコアが前記探索深度スコアよりも大きいことを条件に、前記初期点以外のウェブデータを新たな初期点と決定する
     請求項9記載のウェブクローリング初期点選択方法。
  12.  コンピュータに、
     指定されたカテゴリに属する情報との合致度合いに応じてウェブデータの重みを算出し、ウェブデータ間の有向リンクと当該ウェブデータの重みとを含むグラフである重み付き有向グラフを構成するグラフ構成処理、
     前記重み付き有向グラフをもとに、ウェブデータと当該ウェブデータにリンクされた他のウェブデータの重みが高いほど、当該ウェブデータのスコアを高く算出する規則であるウェブスコア算出規則に基づいて、クローリングを開始するウェブデータの初期位置である初期点として前記スコアがより大きいウェブデータを選択する初期点選択処理、および、
     前記重み付き有向グラフをもとに、前記初期点からの深さにおけるウェブデータの数が多くなるほどスコアを低く算出する規則である探索深度スコア算出規則に基づいて、ウェブデータをクローリングする前記初期点からの深さを決定するクローリング深度決定処理
     を実行させるためのウェブクローリング初期点選択プログラム。
  13.  コンピュータに、
     クローリング深度決定処理で、探索深度スコア算出規則に基づいて算出される探索深度スコアが予め定められた閾値を下回る深さを、初期点からウェブデータをクローリングする深さと決定させる
     請求項12記載のウェブクローリング初期点選択プログラム。
  14.  コンピュータに、
     クローリング深度決定処理で、探索深度スコア算出規則に基づいて算出される探索深度スコアが、ウェブスコア算出規則に基づいて算出される初期点以外のウェブデータのスコアであるウェブスコアよりも大きいか否かを判断させ、前記ウェブスコアが前記探索深度スコア以下であることを条件に、ウェブデータをクローリングする前記初期点からの深さをより深くすると決定させ、前記ウェブスコアが前記探索深度スコアよりも大きいことを条件に、前記初期点以外のウェブデータを新たな初期点と決定させる
     請求項12記載のウェブクローリング初期点選択プログラム。
PCT/JP2010/004738 2009-10-28 2010-07-26 ウェブクローリング初期点選択システム、方法及びプログラム WO2011052116A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009-247481 2009-10-28
JP2009247481 2009-10-28

Publications (1)

Publication Number Publication Date
WO2011052116A1 true WO2011052116A1 (ja) 2011-05-05

Family

ID=43921555

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/004738 WO2011052116A1 (ja) 2009-10-28 2010-07-26 ウェブクローリング初期点選択システム、方法及びプログラム

Country Status (1)

Country Link
WO (1) WO2011052116A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103123628A (zh) * 2011-11-21 2013-05-29 腾讯科技(深圳)有限公司 地理位置搜索方法及系统
CN103279492A (zh) * 2013-04-28 2013-09-04 乐视网信息技术(北京)股份有限公司 一种抓取网页的方法和装置
CN113269833A (zh) * 2021-06-23 2021-08-17 合肥量圳建筑科技有限公司 电气末端定位方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08305729A (ja) * 1995-05-10 1996-11-22 Oki Electric Ind Co Ltd ネットワーク情報フィルタリングシステム
JPH10260978A (ja) * 1997-03-18 1998-09-29 Nippon Telegr & Teleph Corp <Ntt> 情報収集方法及び装置
JP2003281173A (ja) * 2002-03-22 2003-10-03 Toshiba Corp 情報収集システム、情報収集方法及びコンピュータに情報収集を実行させるプログラム
JP2004054588A (ja) * 2002-07-19 2004-02-19 Just Syst Corp 文書検索装置、文書検索方法およびその方法をコンピュータに実行させるプログラム
JP2009015407A (ja) * 2007-07-02 2009-01-22 Sony Corp 情報処理装置、コンテンツの評判検索方法およびコンテンツの評判検索システム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08305729A (ja) * 1995-05-10 1996-11-22 Oki Electric Ind Co Ltd ネットワーク情報フィルタリングシステム
JPH10260978A (ja) * 1997-03-18 1998-09-29 Nippon Telegr & Teleph Corp <Ntt> 情報収集方法及び装置
JP2003281173A (ja) * 2002-03-22 2003-10-03 Toshiba Corp 情報収集システム、情報収集方法及びコンピュータに情報収集を実行させるプログラム
JP2004054588A (ja) * 2002-07-19 2004-02-19 Just Syst Corp 文書検索装置、文書検索方法およびその方法をコンピュータに実行させるプログラム
JP2009015407A (ja) * 2007-07-02 2009-01-22 Sony Corp 情報処理装置、コンテンツの評判検索方法およびコンテンツの評判検索システム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
HOKUTO TOYAMA: "Jiko Gakushugata Topic Crawler no Kaihatsu to Hyoka", DEWS2006 RONBUNSHU, 30 June 2006 (2006-06-30), Retrieved from the Internet <URL:http://www.ieice.org/iss/de/DEWS/DEWS2006/doc/3B-i11.pdf> *
MASANOBU YAMADA: "Efficient Collection Strategies of Important Web Pages by Incremental PageRank", TRANSACTIONS OF INFORMATION PROCESSING SOCIETY OF JAPAN, vol. 45, no. SIG11, 15 October 2004 (2004-10-15), pages 465 - 473 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103123628A (zh) * 2011-11-21 2013-05-29 腾讯科技(深圳)有限公司 地理位置搜索方法及系统
CN103123628B (zh) * 2011-11-21 2015-10-21 腾讯科技(深圳)有限公司 地理位置搜索方法及系统
CN103279492A (zh) * 2013-04-28 2013-09-04 乐视网信息技术(北京)股份有限公司 一种抓取网页的方法和装置
CN113269833A (zh) * 2021-06-23 2021-08-17 合肥量圳建筑科技有限公司 电气末端定位方法、装置、设备及存储介质
CN113269833B (zh) * 2021-06-23 2024-04-09 合肥量圳建筑科技有限公司 电气末端定位方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
JP5798814B2 (ja) リアルタイム人気キーワードに対する代表フレーズを提供する方法およびシステム
KR100706389B1 (ko) 이미지 상호간의 유사도를 고려한 이미지 검색 방법 및장치
KR20100107610A (ko) 질의/문서 주제 범주 변화 분석 시스템 및 그 방법과 이를 이용한 질의 확장 기반 정보 검색 시스템 및 그 방법
JP2012128479A (ja) 検索装置及びプログラム
JP4324650B2 (ja) 情報資源検索装置、情報資源検索方法及び情報資源検索プログラム
CN112836029A (zh) 一种基于图的文档检索方法、系统及其相关组件
WO2011052116A1 (ja) ウェブクローリング初期点選択システム、方法及びプログラム
JP4754849B2 (ja) 文書検索装置、文書検索方法、および文書検索プログラム
JP5980520B2 (ja) 効率的にクエリを処理する方法及び装置
KR101273646B1 (ko) 멀티 모달리티 데이터 색인 및 검색 방법, 그 시스템
JP5747749B2 (ja) 検索装置及びプログラム
JP2012518221A (ja) 寄与スコアに基づいた文書順位決定システムおよび方法
KR100975510B1 (ko) 웹 페이지 색인 업데이트 방법 및 시스템
JP2011100208A (ja) 行動推定装置、行動推定方法および行動推定プログラム
US20080189029A1 (en) Route Calculation Method and Device with Progressive Elimination of Data Corresponding to the Road Network
JP5589009B2 (ja) 推薦クエリ抽出装置及び方法及びプログラム
JP4959032B1 (ja) ウェブページ解析装置およびウェブページ解析用プログラム
KR101349969B1 (ko) 추천 질의어 제공 시스템 및 방법
JP5585489B2 (ja) 検索支援装置、プログラム及び方法
JP5384884B2 (ja) 情報検索装置および情報検索プログラム
KR101083476B1 (ko) 문서의 위치 정보를 이용한 문서 순위 산출 시스템 및 방법
JP2004264928A (ja) Webサイト内検索方法と装置、Webサイト内検索プログラムおよびこのプログラムを記録した記録媒体
JP3598738B2 (ja) 情報抽出装置、情報検索方法及び情報抽出方法
JP2007172616A (ja) 文書検索方法及び装置
JP4049543B2 (ja) 文書検索装置、文書検索プログラム、記録媒体

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10826256

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10826256

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP