Abstract:
An affinity calculation apparatus for calculating a degree of affinity between a first element and a second element that are not directly relevant among three or more elements includes: an extraction section configured to extract, from a document, relevance of each of pairs of two directly relevant elements of the three or more elements; and a calculation section configured to calculate the degree, of the pairs, based on the relevance of each of pairs of two elements of the first element, the second element, and one or more intermediate elements that lie between the first element and the second element.

Description:
[0001]    The entire disclosure of Japanese Patent Application No. 2016-094413 filed on May 10, 2016 including description, claims, drawings, and abstract are incorporated herein by reference in its entirety. 
       BACKGROUND OF THE INVENTION 
     Field of the Invention 
       [0002]    The present invention relates to a technology to calculate a degree of affinity between two elements. 
       Description of the Related Art 
       [0003]    For individuals, connections with other people are important and an asset. For companies, connections with other companies are important and a key factor to management strategies. 
         [0004]    Therefore, technologies for grasping a relationship between individuals or a relationship between companies have been proposed. 
         [0005]    A company correlative information extracting system described in JP 2009-271799 A includes: a document DB in which a plurality of pieces of document data whose release dates are associated are accumulated; a company name DB in which a plurality of company names are stored; an associated document extracting section that extracts the document data in which a plurality of the company names appear from the document DB, compares the release date of each document data and the appeared company names, and extracts a plurality of pieces of associated document data related to the same event; a keyword extracting section for extracting a keyword from each associated document data; and a company correlative information extracting section for checking the presence of the keyword for each associated document, identifying the keyword existing in two or more associated documents as a correlative keyword, and storing the company correlative information including a pair of company names and correlative keywords into a company correlative information DB. 
         [0006]    An evaluation device described in JP 2008-287328 A detects, when receiving input of document data such as articles on newspaper or on a Web site about each company, words showing the characteristics of the company from the document, and generates article vectors expressing the characteristics of the document about the company on the basis of the number of appearances of the pertinent words. Furthermore, the evaluation device generates a partial space corresponding to the company by using a self-correlation matrix on the basis of an article vector group of each company, calculates inter-company similarity from angles between the generated partial spaces of the companies, and extracts the words related to each company by using the partial spaces. Then, the evaluation device visualizes the inter-company similarity with the related words in order to make it correspond to the distance of plots corresponding to the companies, and displays it as a company map. 
         [0007]    According to the technology described in JP 2005-352637 A, an index calculation section selects a plurality of indexes of a plurality of years to be analyzed that represent features of a company from financial information, company information, and the like. A feature extracting section selects indexes of the plurality of years to be analyzed for the company and calculates a partial space representing feature of inter-year differences of the respective companies based upon an autocorrelation matrix. An original index relativity calculation section obtains an angle (canonical angle) formed by the base vector of the original index and the partial space. A similarity calculation section calculates an angle (canonical angle) formed by the partial space among the companies for all combinations of the companies. A similarity map display section calculates coordinates of two dimensions by a multidimensional scale method according to inter-company similarities to draw a map. 
         [0008]    Meanwhile, in order to further expand connections, individuals or companies need to approach a party that is not directly relevant at the moment. In doing so, it is desirable to choose a party that is likely to be able to establish a good connection. 
         [0009]    However, conventional technologies allow evaluation of only connections between parties that have already been relevant directly to each other. Therefore, it is difficult to find a party that is likely to be able to establish a good connection from among parties that are not directly relevant at the moment. 
       SUMMARY OF THE INVENTION 
       [0010]    In view of such problems, it is an object of the present invention to make it possible to find, more easily than before, a party that is likely to be able to establish a good connection from among parties that are not directly relevant. 
         [0011]    To achieve the abovementioned object, according to an aspect, an affinity calculation apparatus for calculating a degree of affinity between a first element and a second element that are not directly relevant among three or more elements, reflecting one aspect of the present invention comprises: an extraction section configured to extract, from a document, relevance of each of pairs of two directly relevant elements of the three or more elements; and a calculation section configured to calculate the degree, of the pairs, based on the relevance of each of pairs of two elements of the first element, the second element, and one or more intermediate elements that lie between the first element and the second element. 
         [0012]    The affinity calculation apparatus preferably further comprises a storage section configured to store a point corresponding to each of keywords, wherein the extraction section preferably extracts each of the keywords as the relevance, and the calculation section preferably calculates the degree based on the point corresponding to each of the keywords extracted as the relevance. 
         [0013]    Furthermore, when the plurality of different keywords is extracted by the extraction section for one of the pairs, the calculation section preferably calculates the degree based on a total value of the point for each of the plurality of keywords. 
         [0014]    Furthermore, the extraction section preferably extracts timing when the relevance occurs together with the relevance, and when the plurality of keywords is extracted by the extraction section for one of the pairs, the calculation section preferably calculates the degree based on the point and change in a cumulative value of the point for each of the plurality of keywords. 
         [0015]    Furthermore, the calculation section preferably calculates the degree to be lower as a distance between the first element and the second element increases. 
         [0016]    Furthermore, the first element is preferably each designated element of the three or more elements, and the second element is preferably each element having a designated attribute of the three or more elements. 
         [0017]    Furthermore, when there is a plurality of the second elements, the calculation section preferably calculates the degree for each of the second elements. 
         [0018]    Furthermore, the affinity calculation apparatus preferably further comprises a display section configured to display each of the second elements with the greatest degree more highlighted than the other second elements. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0019]    The above and other objects, advantages and features of the present invention will become more fully understood from the detailed description given hereinbelow and the appended drawings which are given by way of illustration only, and thus are not intended as a definition of the limits of the present invention, and wherein: 
           [0020]      FIG. 1  is a diagram illustrating an example of an overall configuration of a system including a relevant element search apparatus; 
           [0021]      FIG. 2  is a diagram illustrating an example of a hardware configuration of the relevant element search apparatus; 
           [0022]      FIG. 3  is a diagram illustrating an example of a functional configuration of the relevant element search apparatus; 
           [0023]      FIG. 4  is a diagram illustrating an example of point dictionary data; 
           [0024]      FIG. 5  is a diagram illustrating an example of element attribute data; 
           [0025]      FIG. 6  is a flowchart illustrating an example of a correlation extraction process flow; 
           [0026]      FIG. 7  is a diagram illustrating an example of correlation data; 
           [0027]      FIGS. 8A to 8C  are diagrams illustrating examples of a correlation diagram; 
           [0028]      FIG. 9  is a flowchart illustrating an example of a friendliness point calculation process flow; 
           [0029]      FIG. 10  is a diagram illustrating an example of display of the correlation diagram; 
           [0030]      FIG. 11  is a flowchart illustrating an example of an overall process flow of the relevant element search apparatus; 
           [0031]      FIG. 12  is a diagram illustrating an example of the functional configuration of the relevant element search apparatus; 
           [0032]      FIG. 13  is a flowchart illustrating an example of the correlation extraction process flow; 
           [0033]      FIG. 14  is a diagram illustrating an example of the correlation data; and 
           [0034]      FIG. 15  is a flowchart illustrating an example of the friendliness point calculation process flow. 
       
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS 
       [0035]    Hereinafter, an embodiment of the present invention will be described with reference to the drawings. However, the scope of the invention is not limited to the illustrated examples. 
       First Embodiment 
       [0036]      FIG. 1  is a diagram illustrating an example of an overall configuration of a system including a relevant element search apparatus  1 .  FIG. 2  is a diagram illustrating an example of a hardware configuration of the relevant element search apparatus  1 . 
         [0037]    The relevant element search apparatus  1  is an apparatus that searches for an element (hereinafter referred to as “relevant element”) that is directly or indirectly relevant to an element (hereinafter referred to as “central element”). As illustrated in  FIG. 1 , the relevant element search apparatus  1  is connected to apparatuses such as a web server  21  and an image forming apparatus  22  via a communication line  3 . As the communication line  3 , the Internet, a local area network (LAN), a public line, or a dedicated line is used. 
         [0038]    The following describes an example in which a notebook personal computer is used as the relevant element search apparatus  1 . 
         [0039]    As illustrated in  FIG. 2 , the relevant element search apparatus  1  includes a central processing unit (CPU)  10   a , a random access memory (RAM)  10   b , a read only memory (ROM)  10   c , an auxiliary storage device  10   d , a liquid crystal display  10   e , a network interface card (NIC)  10   f , a keyboard  10   g , and a pointing device  10   h.    
         [0040]    The liquid crystal display  10   e  displays screens such as a screen indicating a message to a user, a screen for the user to enter commands or information, and a screen indicating a result of a process performed by the CPU  10   a.    
         [0041]    The NIC  10   f  communicates with apparatuses such as the web server  21  and the image forming apparatus  22  via the communication line  3  according to a protocol such as TCP/IP. 
         [0042]    The keyboard  10   g  and the pointing device  10   h  are used for the user to enter commands or information. 
         [0043]    The ROM  10   c  or the auxiliary storage device  10   d  stores a preferred element search program  10 P, in addition to an operating system and a web browser. The preferred element search program  10 P is a program for searching for the relevant element to the central element. 
         [0044]    These programs are loaded in the RAM  10   b  and executed by the CPU  10   a . As the auxiliary storage device  10   d , a device such as a hard disk drive and a solid state drive (SSD) is used. 
         [0045]    The web server  21  provides various documents as a web page. The relevant element search apparatus  1  can download data of the web page from the web server  21 . 
         [0046]    The image forming apparatus  22  is an apparatus that integrates functions such as copy, network print, facsimile, scan, and box. In general, the image forming apparatus  22  is sometimes referred to as “multifunction machine” or “multifunction peripherals (MFP).” 
         [0047]    The network print function is a service to print images on paper based on image data received from a personal computer, a tablet computer, a smartphone, or any other devices. The network print function is sometimes referred to as “network printing” or “PC print.” 
         [0048]    The box function is a service to provide each user with a storage area called “box” or “personal box”, and to allow the user to save and manage data such as document data in the storage area for the user. The box corresponds to “folder” or “directory” of a personal computer. Furthermore, the box function allows data saved in the box to be provided to the relevant element search apparatus  1  via the communication line  3 . 
         [0049]    The following describes a mechanism of the relevant element to the central element by taking a case where a certain company is the central element and another company is the relevant element as an example. 
         [0050]      FIG. 3  is a diagram illustrating an example of a functional configuration of the relevant element search apparatus  1 .  FIG. 4  is a diagram illustrating an example of point dictionary data  5 A.  FIG. 5  is a diagram illustrating an example of element attribute data  5 B.  FIG. 6  is a flowchart illustrating an example of a correlation extraction process flow.  FIG. 7  is a diagram illustrating an example of correlation data  5 D.  FIGS. 8A to 8C  are diagrams illustrating examples of a correlation diagram  6 E.  FIG. 9  is a flowchart illustrating an example of a friendliness point calculation process flow.  FIG. 10  is a diagram illustrating an example of display of the correlation diagram  6 E. 
         [0051]    The preferred element search program  10 P allows the relevant element search apparatus  1  to achieve functions illustrated in  FIG. 3 , such as a document acquisition unit  101 , a central element receiving unit  102 , a correlation extraction unit  103 , an element correlation diagram generation unit  104 , an attribute designation receiving unit  105 , an inter-element point calculation unit  106 , an optimal element selection unit  107 , an element correlation diagram display unit  108 , a point dictionary storage unit  131 , an element attribute storage unit  132 , and a correlation storage unit  133 . 
         [0052]    The point dictionary storage unit  131  stores the point dictionary data  5 A for each relevance phrase, as illustrated in  FIG. 4 . “The relevance phrase” is a phrase (keyword) indicating relevance between a plurality of elements. 
         [0053]    The point dictionary data  5 A indicates a relevance point for the relevance phrase. “The relevance point” is a value indicating how strong the relevance is between the plurality of elements. The relevance point is expressed by the relevance phrase. Furthermore, whether the value is positive or negative represents how good the relevance is in some cases. 
         [0054]    In the first embodiment, a friendliness point is used as the relevance point. The friendliness point is a value indicating how strong a friendly relationship is between two elements (companies). The positive friendliness point represents that the two companies are in a good relationship, whereas the negative friendliness point represents that the two companies are in a tense relationship. 
         [0055]    As illustrated in  FIG. 5 , the element attribute storage unit  132  stores element attribute data  5 B for each element (company in the first embodiment). 
         [0056]    The element attribute data  5 B indicates attributes of the company, such as a business type and location of the company, in addition to a company name of the company. 
         [0057]    The point dictionary data  5 A and the element attribute data  5 B are prepared in advance by a person such as an administrator. The point dictionary data  5 A and the element attribute data  5 B are appropriately updated as necessary. 
         [0058]    The document acquisition unit  101  acquires document data  5 C. The document data  5 C is data for displaying a document including character strings, charts, illustrations, and photos. The document data  5 C is data in a format such as a text format, hypertext markup language (HTML), and portable document format (PDF). 
         [0059]    The document acquisition unit  101  may acquire a file designated by the user as the document data  5 C from the web server  21  or the image forming apparatus  22 . Alternatively, the document acquisition unit  101  may search the web server  21  for a web page by using a phrase designated by the user as a search key, and acquire a file of the hit web page as the document data  5 C. Alternatively, the document acquisition unit  101  may search the box of the image forming apparatus  22  for a document by using a predetermined phrase as a search key, and acquire a file of the hit document as the document data  5 C. 
         [0060]    In the first embodiment, data of a document on a company is acquired as the document data  5 C. In particular, data of a document on a company that is the central element (hereinafter referred to as “central company”) is acquired. Moreover, data of a document on a company that is likely to have direct or indirect relevance to the central company is acquired. The user designates a file or a phrase such that such data is acquired as the document data  5 C. 
         [0061]    The central element receiving unit  102  performs a process of receiving a name of the company (company name) that is a central element, that is, a central company, as follows, for example. 
         [0062]    The central element receiving unit  102  displays a screen for entering the company name of the central company on the liquid crystal display  10   e . Here, the user enters the name of the central company with a device such as the keyboard  10   g . The central element receiving unit  102  then receives the entered company name. 
         [0063]    The correlation extraction unit  103  performs, for example, by a procedure illustrated in  FIG. 6 , a process of extracting correlation between the elements (companies) indicated in the document data  5 C acquired by the document acquisition unit  101 , and generating data indicating the correlation. 
         [0064]    The correlation extraction unit  103  notices first document data  5 C (#701 and #702 of  FIG. 6 ), and notices a first sentence indicated in the document data  5 C (#703 and #704). 
         [0065]    The correlation extraction unit  103  searches the noticed sentence for any relevance phrase and a plurality of company names (#705). This relevance phrase is indicated in either piece of the point dictionary data  5 A stored in the point dictionary storage unit  131 . The company names are indicated in either piece of the element attribute data  5 B stored in the element attribute storage unit  132 . 
         [0066]    When the noticed sentence indicates company names of a plurality of companies (YES in #706) and this sentence indicates a relevance phrase (YES in #707), the correlation extraction unit  103  determines that these companies have direct relevance expressed by this relevance phrase, and generates the correlation data  5 D (#708). 
         [0067]    As in  FIG. 7 , the correlation data  5 D indicates two company names among these company names, this relevance phrase, and the friendliness point. The friendliness point is a friendliness point for this relevance phrase indicated in the point dictionary data  5 A (see  FIG. 4 ). 
         [0068]    When company names of three or more companies are indicated, the correlation extraction unit  103  generates the correlation data  5 D for each combination of two companies among these companies. 
         [0069]    For example, when this sentence indicates three company names “Name_A1”, “Name_A2”, and “Name_A3”, and indicates the relevance phrase “alliance”, then the correlation extraction unit  103  generates data indicating “Name_A1, Name_A2, alliance, 50”, data indicating “Name_A1, Name_A3, alliance, 50” and data indicating “Name_A2, Name_A3, alliance, 50” as the correlation data  5 D. Here, the friendliness point “50” is based on the point dictionary data  5 A for “alliance.” 
         [0070]    The correlation extraction unit  103  then causes the correlation storage unit  133  to store the correlation data  5 D (#709). 
         [0071]    However, if this sentence includes a wording that cancels this relevance phrase or a negative wording for this relevance phrase, the correlation extraction unit  103  may skip generating the correlation data  5 D based on this sentence. 
         [0072]    For example, sentences “not make an alliance”, “dissolve alliance”, and “difficult to make an alliance” include wording that cancels the relevance phrase or negative wording for the relevance phrase, “not make”, “dissolve”, and “difficult.” In such a case, the correlation extraction unit  103  may skip generating the correlation data  5 D. 
         [0073]    Also when the correlation data  5 D that indicates identical content (relevance phrase, friendliness point, and company names of two companies) has already been stored in the correlation storage unit  133 , the correlation extraction unit  103  may skip generating the correlation data  5 D. 
         [0074]    When the document data  5 C is data of a document created mainly by the central company, the correlation extraction unit  103  may handle first-person phrases of the company, such as “our company”, “this company”, and “we”, as the company name of the central company. 
         [0075]    When the noticed document data  5 C includes a next sentence (YES in #710), the correlation extraction unit  103  notices this sentence (#711 and #704), and appropriately performs the same process as described above (#705 to #709). Then, the correlation extraction unit  103  appropriately performs the process of steps #705 to #709 until there is no unnoticed sentence. 
         [0076]    When there is any unnoticed document data  5 C (YES in #712), the correlation extraction unit  103  notices the unnoticed document data  5 C (#713 and #702), and performs the process of steps #703 to #711 as appropriate. 
         [0077]    Thus, the correlation extraction unit  103  extracts the correlation between the plurality of companies from each sentence indicated in each document data  5 C, generates the correlation data  5 D, and causes the correlation storage unit  133  to store the correlation data  5 D. 
         [0078]    The element correlation diagram generation unit  104  generates correlation diagram data  5 E. The correlation diagram data  5 E is data for reproducing the correlation diagram  6 E as illustrated in  FIG. 8A  indicating a relationship between elements (companies in the first embodiment). 
         [0079]    In the correlation diagram  6 E, an ellipse represents an element (company), and a company name of the company is indicated within the ellipse. A line segment that connects two ellipses is a link representing that the companies of these ellipses are directly relevant. The company names of both of the companies are indicated in one of the correlation data  5 D stored in the correlation storage unit  133 . 
         [0080]    The correlation diagram  6 E can be calculated by a known method based on the correlation data  5 D stored in the correlation storage unit  133 . 
         [0081]    Among elements relevant to the central company directly or indirectly (hereinafter referred to as “relevant companies”), the attribute designation receiving unit  105  performs, for example, as follows, a process of receiving the attribute common to the relevant companies the user wants to know. The following describes an example in which the business type is used as the attribute. 
         [0082]    The attribute designation receiving unit  105  displays a screen for entering the business type on the liquid crystal display  10   e . Here, the user enters the business type with a device such as the keyboard  10   g . The central element receiving unit  102  then receives the entered business type. For example, when the user wants to know a company of a medical equipment manufacturer as the relevant company to the central company, the user enters “medical equipment manufacturer.” Hereinafter, a company of the business type received by the attribute designation receiving unit  105  is described as “target company.” 
         [0083]    The inter-element point calculation unit  106  calculates the friendliness point between the company received by the central element receiving unit  102 , that is, the central company, and the company of the business type received by the attribute designation receiving unit  105 , that is, the target company, by a procedure illustrated in  FIG. 9 . 
         [0084]    The inter-element point calculation unit  106  calculates the friendliness point for each link (#721 of  FIG. 9 ). 
         [0085]    For one link, only one piece of correlation data  5 D may be stored in the correlation storage unit  133 , or a plurality of pieces of correlation data  5 D may be stored in the correlation storage unit  133 . 
         [0086]    When only one piece of correlation data  5 D is stored for a certain link, the inter-element point calculation unit  106  calculates the friendliness point indicated in the correlation data  5 D as the friendliness point for the link. Therefore, for example, as illustrated in  FIG. 7 , only one piece of correlation data  5 D is stored for a link between a company having a company name “Name_A0” and the company having the company name “Name_A2.” The correlation data  5 D indicates “−20” as the friendliness point. Therefore, “−20” is calculated as the friendliness point for the link. 
         [0087]    Meanwhile, when a plurality of pieces of correlation data  5 D are stored for a certain link, a total value of the friendliness points indicated in these pieces of correlation data  5 D is calculated as the friendliness point for the link. Therefore, for example, two pieces of correlation data  5 D are stored for a link between the company having the company name “Name_A0” and the company having the company name “Name_A1.” For these pieces of correlation data  5 D, “30” and “20” are indicated as the friendliness points. Therefore, the total value of these friendliness points, that is, “50” is calculated as the friendliness point for this link. 
         [0088]    As a result of the process in step #721, the friendliness point for each link as illustrated in  FIG. 8B  is calculated. 
         [0089]    The inter-element point calculation unit  106  notices the first target company (#722), and selects the shortest path between the central company and the noticed target company (#723). 
         [0090]    For example, when the company having the company name “Name_A0” is the central company and a company having a company name “Name_A4” is the noticed target company, the inter-element point calculation unit  106  selects, as the shortest path, a path including a link of the companies of the company names “Name_A0” and “Name_A1” and a link of the companies of the company names “Name_A1” and “Name_A4.” 
         [0091]    The inter-element point calculation unit  106  then calculates the friendliness point for the selected shortest path by Equation (1) (#724). 
         [0000]    
       
         
           
             
               
                 
                   [ 
                   
                     Equation 
                      
                     
                         
                     
                      
                     1 
                   
                   ] 
                 
               
               
                 
                     
                 
               
             
             
               
                 
                   Y 
                   = 
                   
                     
                       ( 
                       
                         
                           
                             
                               ∏ 
                               
                                 i 
                                 = 
                                 1 
                               
                               n 
                             
                           
                           
                             Pi 
                           
                         
                       
                       ) 
                     
                     × 
                     
                       1 
                       
                         M 
                         
                           ( 
                           
                             n 
                             - 
                             1 
                           
                           ) 
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   1 
                   ) 
                 
               
             
           
         
       
     
         [0092]    Here, “Y” is a friendliness point for the shortest path selected. “Pi” is a friendliness point for the ith link among the links that constitute the shortest path. “N” is the number of links that constitute the shortest path selected. 
         [0093]    “M” is a constant equal to or greater than 1, and is preferably the maximum value of the friendliness points defined in the point dictionary data  5 A. Therefore, in the example of  FIG. 4 , preferably M is “100.” The following describes an example in which M=100. 
         [0094]    That is, the inter-element point calculation unit  106  calculates a value obtained by dividing, (N−1) times, a product of the friendliness points for the links constituting the shortest path by M as the friendliness point for the selected shortest path. 
         [0095]    When the company having the company name “Name_A0” is the central company and the company having the company name “Name_A4” is the noticed target company, Y=((−20)×(−40))/100=8 is calculated as the friendliness point for the selected shortest path. 
         [0096]    When there is an unnoticed target company (YES in #725), the inter-element point calculation unit  106  notices this target company (#726), and calculates the friendliness point between the central company and the noticed target company (#723 to #724). 
         [0097]    Meanwhile, there is a plurality of shortest paths in some cases. In these cases, the inter-element point calculation unit  106  selects all of the plurality of shortest paths in step #723. Then, in step #724, the inter-element point calculation unit  106  calculates the friendliness points for all the selected shortest paths, and calculates a total value of these friendliness points. 
         [0098]    For example, when the company having the company name “Name_A0” is the central company and the company having the company name “Name_A3” is the noticed target company, there are two shortest paths. 
         [0099]    Therefore, the inter-element point calculation unit  106  calculates the friendliness point for each of the two shortest paths. 
         [0100]    The friendliness point for the first shortest path is Y=(50×20)/100=10. 
         [0101]    The friendliness point for the second shortest path is Y=(−20×(−100))/100=20. 
         [0102]    Then, the total value 10+20=30 of these friendliness points is calculated. 
         [0103]    When the company having the company name “Name_A0” is the central company and three companies having company names “Name_A3”, “Name_A4”, and “Name_A5” are target companies, the friendliness point is calculated by the process described above as illustrated in  FIG. 8C . 
         [0104]    The optimal element selection unit  107  selects the target company having the largest friendliness point with the central company from among these target companies as a company most preferred for the central company (hereinafter referred to as “optimal company”). In the example of  FIG. 8C , the target company having the company name “Name_A3” is selected as an optimal company. 
         [0105]    However, if a company directly connected to the central company is a target company, this company is excluded from candidates for optimal company selection. In addition, when a link with a negative friendliness point is included in the path between the central company and the target company, the target company may be excluded from candidates for optimal company selection. 
         [0106]    The element correlation diagram display unit  108  displays the correlation diagram  6 E on the liquid crystal display  10   e . At this time, as illustrated in  FIG. 10 , the element correlation diagram display unit  108  highlights the optimal company more than other target companies. In addition, the element correlation diagram display unit  108  displays the friendliness point for each link and the friendliness point between the central company and each target company. 
         [0107]      FIG. 11  is a flowchart illustrating an example of an overall process flow of the relevant element search apparatus  1 . 
         [0108]    Next, the overall process flow of searching for the target company and the optimal company will be described with reference to the flowchart of  FIG. 11 . 
         [0109]    The relevant element search apparatus  1  performs the process by a procedure illustrated in  FIG. 11  based on the preferred element search program  10   p.    
         [0110]    The relevant element search apparatus  1  acquires the document data  5 C (#11 of  FIG. 11 ). Upon receipt of designation of the central element (for example, central company) (#12), the relevant element search apparatus  1  performs the process of generating data (correlation data  5 D) indicating correlation between the elements (for example, companies) indicated in the document data  5 C acquired in step #11 (#13). The procedure of this process is as described before in  FIG. 6 . 
         [0111]    The relevant element search apparatus  1  generates the correlation diagram data  5 E based on the correlation data  5 D (#14). Furthermore, the relevant element search apparatus  1  receives the attribute common to the elements that the user wants to know (for example, relevant companies), the elements being relevant to the central element (#15). 
         [0112]    The relevant element search apparatus  1  then calculates the friendliness point for a pair of the central element and an element having the received attribute (for example, target company) (#16). The relevant element search apparatus  1  then selects the most preferable element for the central element (for example, optimal company) (#17), and displays the correlation diagram  6 E as illustrated in  FIG. 10  (#18). The method for calculating the friendliness point is as described above in  FIG. 9 . 
         [0113]    According to the first embodiment, the target company that is not directly relevant is presented to the user together with the friendliness point with the central company. Therefore, it is possible, more easily than before, to find the target company that is likely to be able to establish a good connection among such target companies. It is also possible to develop new customers more accurately than before. 
       Second Embodiment 
       [0114]      FIG. 12  is a diagram illustrating an example of a functional configuration of a relevant element search apparatus  1 .  FIG. 13  is a flowchart illustrating an example of a correlation extraction process flow.  FIG. 14  is a diagram illustrating an example of correlation data  5 F.  FIG. 15  is a flowchart illustrating an example of a friendliness point calculation process flow. 
         [0115]    In the first embodiment, a friendliness point between a central company and a target company is calculated regardless of timing of an event described in a document, but in a second embodiment, the friendliness point is calculated based on this timing. 
         [0116]    The following describes a mechanism of search for an optimal company in the second embodiment when elements are companies as an example. Description of points overlapping with the first embodiment will be omitted. 
         [0117]    A hardware configuration of the relevant element search apparatus  1  is similar to a hardware configuration of the relevant element search apparatus  1  of the first embodiment, as illustrated in  FIG. 2 . 
         [0118]    A ROM  10   c  or an auxiliary storage device  10   d  stores a preferred element search program  10 Q instead of a preferred element search program  10 P. The preferred element search program  10 Q allows achievement of functions illustrated in  FIG. 12 , such as a document acquisition unit  151 , a central element receiving unit  152 , a correlation extraction unit  153 , an element correlation diagram generation unit  154 , an attribute designation receiving unit  155 , an inter-element point calculation unit  156 , an optimal element selection unit  157 , an element correlation diagram display unit  158 , a point dictionary storage unit  161 , an element attribute storage unit  162 , and a correlation storage unit  163 . 
         [0119]    As does the point dictionary storage unit  131  of the first embodiment (see  FIG. 3 ), the point dictionary storage unit  161  stores point dictionary data  5 A (see  FIG. 4 ). 
         [0120]    As does the element attribute storage unit  132 , the element attribute storage unit  162  stores element attribute data  5 B (see  FIG. 5 ). 
         [0121]    As does the document acquisition unit  101 , the document acquisition unit  151  performs a process of acquiring document data  5 C. 
         [0122]    However, it is preferable that a user designates a file or a phrase so as to acquire data of a document indicating not only relevance between a plurality of companies but also timing when the relevance occurs as the document data  5 C. 
         [0123]    As does the central element receiving unit  102 , the central element receiving unit  152  performs a process of receiving a company name of the central company. 
         [0124]    The correlation extraction unit  153  performs a process of generating data indicating correlation between companies indicated in the document data  5 C acquired by the document acquisition unit  151 , for example, by a procedure illustrated in  FIG. 13 . 
         [0125]    As in steps #701 to #704 of  FIG. 6 , the correlation extraction unit  153  notices first document data  5 C (#731 and #732 of  FIG. 13 ), and notices a first sentence indicated in the document data  5 C (#733 and #734). As in step #705, the correlation extraction unit  153  searches the noticed sentence for any relevance phrase and a plurality of company names (#735). This relevance phrase is indicated in either piece of the point dictionary data  5 A stored in the point dictionary storage unit  161 . The company names are indicated in either piece of the element attribute data  5 B stored in the element attribute storage unit  162 . 
         [0126]    When the noticed sentence indicates company names of a plurality of companies (YES in #736) and this sentence indicates a relevance phrase (YES in #737), the correlation extraction unit  153  determines timing when an event described in this sentence occurs, that is, timing when the relevance indicated in this relevance phrase occurs (#738). Hereinafter, this timing is described as “occurrence timing.” For example, a date indicated in this sentence may be determined as the occurrence timing. Alternatively, a date when this document is created may be determined as the occurrence timing. This date may be a date when data is created or a date when data is updated, indicated in a property of the document data  5 C. 
         [0127]    The correlation extraction unit  153  then generates the correlation data  5 F (#739). As in  FIG. 14 , the correlation data  5 F indicates two company names among these company names, this relevance phrase, friendliness point, and this occurrence timing. As in the correlation data  5 D of the first embodiment (see  FIG. 7 ), the friendliness point is a friendliness point for this relevance phrase indicated in the point dictionary data  5 A (see  FIG. 4 ). 
         [0128]    As in the first embodiment, when company names of three or more companies are indicated, the correlation extraction unit  153  generates the correlation data  5 F for each combination of two companies among these companies. 
         [0129]    The correlation extraction unit  153  then causes the correlation storage unit  163  to store the correlation data  5 F (#740). 
         [0130]    As in the first embodiment, if this sentence includes a wording that cancels this relevance phrase or a negative wording for this relevance phrase, the correlation extraction unit  153  may skip generating the correlation data  5 F based on this sentence. 
         [0131]    Also when the correlation data  5 F that indicates identical content (relevance phrase, friendliness point, occurrence timing, and company names of two companies) has already been stored in the correlation storage unit  163 , the correlation extraction unit  153  may skip generating the correlation data  5 F. 
         [0132]    In addition, the correlation extraction unit  153  may handle first-person phrases of the company, such as “our company”, “this company”, and “we”, as the company name of the central company. 
         [0133]    When the noticed document data  5 C includes a next sentence (YES in #741), the correlation extraction unit  153  notices this sentence (#742 and #734), and appropriately performs the same process as described above (#735 to #740). Then, the correlation extraction unit  153  appropriately performs the process of steps #735 to #740 until there is no unnoticed sentence. 
         [0134]    When there is any unnoticed document data  5 C (YES in #743), the correlation extraction unit  153  notices the unnoticed document data  5 C (#744 and #732), and performs the process of steps #733 to #742 as appropriate. 
         [0135]    Thus, the correlation extraction unit  153  extracts the correlation between the plurality of companies from each sentence indicated in each document data  5 C, generates the correlation data  5 F, and causes the correlation storage unit  163  to store the correlation data  5 F. 
         [0136]    Returning to  FIG. 12 , the element correlation diagram generation unit  154  generates correlation diagram data  5 E, as does the element correlation diagram generation unit  104 . However, the element correlation diagram generation unit  154  uses the correlation data  5 F instead of the correlation data  5 D. 
         [0137]    As does the attribute designation receiving unit  105 , the attribute designation receiving unit  155  performs the process of receiving an attribute common to the relevant companies the user wants to know. 
         [0138]    The inter-element point calculation unit  156  calculates the friendliness point between the company received by the central element receiving unit  152 , that is, the central company, and the company of the business type received by the attribute designation receiving unit  155 , that is, the target company, by a procedure illustrated in  FIG. 15 . 
         [0139]    The inter-element point calculation unit  156  calculates the friendliness point for each link (#751 of  FIG. 15 ). 
         [0140]    For one link, only one piece of correlation data  5 F may be stored in the correlation storage unit  163 , or a plurality of pieces of correlation data  5 F may be stored. 
         [0141]    When only one piece of correlation data  5 F is stored for a certain link, the inter-element point calculation unit  156  calculates the friendliness point indicated in the correlation data  5 F as the friendliness point for the link, as in step #721 of  FIG. 9 . 
         [0142]    Meanwhile, when the plurality of pieces of correlation data  5 F is stored for a certain link, the inter-element point calculation unit  156  calculates the friendliness point for the link by Equation (2). 
         [0000]    
       
         
           
             
               
                 
                   [ 
                   
                     Equation 
                      
                     
                         
                     
                      
                     2 
                   
                   ] 
                 
               
               
                 
                     
                 
               
             
             
               
                 
                   X 
                   = 
                   
                     
                       ∑ 
                       
                         i 
                         = 
                         1 
                       
                       m 
                     
                      
                     
                         
                     
                      
                     
                       Ri 
                       · 
                       Qi 
                     
                   
                 
               
               
                 
                   ( 
                   2 
                   ) 
                 
               
             
           
         
       
     
         [0143]    Here, “X” is a friendliness point for the link. “Qi” is a friendliness point indicated in the correlation data  5 F of which the occurrence timing is ith (ith old) among these pieces of correlation data  5 F. Hereinafter, the occurrence timing indicated in the ith correlation data  5 F is simply described as “ith occurrence timing.” “Ri” is a rate of change from a cumulative value of the friendliness point at the (i−1)th occurrence timing to a cumulative value of the friendliness point at the ith occurrence timing. That is, the following equation is satisfied. 
         [0000]    
       
         
           
             
               
                 
                   [ 
                   
                     Equation 
                      
                     
                         
                     
                      
                     3 
                   
                   ] 
                 
               
               
                 
                     
                 
               
             
             
               
                 
                   Ri 
                   = 
                   
                     
                       
                         ∑ 
                         
                           j 
                           = 
                           1 
                         
                         i 
                       
                        
                       
                           
                       
                        
                       Qj 
                     
                     
                       
                         ∑ 
                         
                           j 
                           = 
                           1 
                         
                         
                           i 
                           - 
                           1 
                         
                       
                        
                       
                           
                       
                        
                       Qj 
                     
                   
                 
               
               
                 
                   ( 
                   3 
                   ) 
                 
               
             
           
         
       
     
         [0144]    Here, R 1  is always “1.” 
         [0145]    Therefore, according to Equation (3), for example, when the friendliness point is “50”, “20”, and “70” in order from old occurrence timing, the following equations are satisfied. 
         [0000]        R 1=1 
         [0000]        R 2=(50+20)/50=1.4 
         [0000]        R 3=(50+20+70)/(50+20)=2 
         [0146]    Hereinafter, the inter-element point calculation unit  156  performs processing steps similar to steps #722 to #726 of the first embodiment by using the friendliness point calculated in step #751 instead of the friendliness point calculated in step #721 (#752 to #756). 
         [0147]    Returning to  FIG. 12 , the optimal element selection unit  157  selects the target company having the largest friendliness point with the central company as the optimal company, as does the optimal element selection unit  107  of the first embodiment. 
         [0148]    As does the element correlation diagram display unit  108 , the element correlation diagram display unit  158  displays the correlation diagram  6 E on the liquid crystal display  10   e . However, the optimal company selected by the optimal element selection unit  157  is highlighted here, and the friendliness point calculated by the inter-element point calculation unit  156  is displayed (the friendliness point for each link, and the friendliness point between the central company and each target company). 
         [0149]    An overall process flow in the second embodiment, that is, the process flow by the preferred element search program  10 Q is basically similar to the process flow in the first embodiment, as illustrated before in  FIG. 11 . 
         [0150]    However, the process illustrated in  FIG. 13  is performed as the process of step #13. In addition, the process illustrated in  FIG. 15  is performed as the process of step #16. 
         [0151]    According to the second embodiment, the relevant element search apparatus  1  calculates the friendliness point between the central company and the target company also based on the timing when the relevance occurs. Therefore, the optimal company can be selected more suitably than in the first embodiment. 
         [0152]    In the first and second embodiments, the relevant element search apparatus  1  has received designation of the central company and designation of the business type on separate screens; however, the relevant element search apparatus  1  may receive designation of the central company and designation of the business type on one screen. 
         [0153]    In the first and second embodiments, all the functions illustrated in  FIG. 3  or  FIG. 12  are achieved by the relevant element search apparatus  1 ; however, some functions may be achieved by a server. For example, the functions of the central element receiving units  102  and  152 , the attribute designation receiving units  105  and  155 , and the element correlation diagram display units  108  and  158  are achieved by the relevant element search apparatus  1 . These functions may be achieved through transmission of a web page for designating the central company and attributes, and a web page indicating the correlation diagram  6 E from the server, and display of the web page by the web browser of the relevant element search apparatus  1 . The relevant element search apparatus  1  notifies designated content to the server. The server achieves other functions. However, the server performs the processes based on the content notified from the relevant element search apparatus  1 . 
         [0154]    In the first embodiment, for a pair of two linked (adjacent) companies, when certain relevance appears in the document at least once, the correlation data  5 D of the pair and the relevance has been generated. However, when the relevance appears a predetermined number of times or more, which is 2 or greater, the correlation data  5 D may be generated. 
         [0155]    The target company with a path to the central company having a distance equal to or greater than a predetermined distance may be excluded from candidates for optimal company selection. Alternatively, it is also possible not to calculate the friendliness point between such a target company and the central company. 
         [0156]    In the first and second embodiments, the business type has been used as the attribute, but other attributes may be used, such as business performance, location, or the number of years since establishment. 
         [0157]    The method for calculating various friendliness points in the first and second embodiments is not limited to the above-described example. For example, a plurality of friendliness points may be multiplied instead of being added. 
         [0158]    In addition, the configuration of the whole or each part of the relevant element search apparatus  1 , detailed processes, order of the processes, structure of data, and the like can be appropriately changed in accordance with the gist of the present invention. 
         [0159]    Although the present invention has been described and illustrated in detail, it is clearly understood that the same is by way of illustrated and example only and is not to be taken by way of limitation, the scope of the present invention being interpreted by terms of the appended claims.