Patent Publication Number: US-2019182197-A1

Title: Warning apparatus for preventing electronic mail wrong transmission, electronic mail transmission system, and program

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     The present application is a continuation of International Application No. PCT/JP2015/076040, filed Sep. 14, 2015, which claims the benefit of Japanese Patent Application No. 2015-080864, filed on Apr. 10, 2015, and Japanese Patent Application No. 2015-115282, filed on Jun. 5, 2015, each of which is incorporated herein by reference in its entirety. 
    
    
     TECHNICAL FIELD 
     The present invention relates to an electronic mail wrong transmission determination apparatus, an electronic mail transmission system, and a recording medium. 
     BACKGROUND ART 
     Conventionally, techniques for preventing wrong transmission of an electronic mail have been disclosed (refer to Japanese Patent No. 3663844 and Japanese Patent No. 4817952). 
     Japanese Patent No. 3663844 describes a technique for controlling, based on a comparison between an occurrence frequency of prescribed vocabulary in a body of a given electronic mail and an occurrence frequency of the vocabulary in bodies of electronic mails previously transmitted to the same destination as a destination of the given electronic mail, whether the given electronic mail is to be transmitted or transmission thereof is to be suspended. 
     Furthermore, Japanese Patent No. 3663844 describes a technique for supporting determination of whether or not there is a wrong transmission based on a politeness of the body of the given electronic mail and a presence or absence of a signature attached to the body of the given electronic mail. 
     Japanese Patent No. 4817952 describes a technique including analysis means for analyzing validity of a destination address of a transmission mail created by a user based on message data of all previously transmitted mails stored in transmitted mail recording means, display means for displaying a result of the analysis, and transmission execution means for accepting a transmission instruction by the user having viewed the displayed result and for executing transmission of the transmission mail. 
     Japanese Patent No. 4817952 further describes that the analysis means calculates a similarity between each address in a group of destination addresses, which is included in a similarity group of transmitted mails to which the transmission mail belongs, among the plural of similarity groups of transmitted mails constructed by clustering means according to a similarity of message data, and a destination address of the transmission mail; and proposes a destination address of a transmitted mail, the similarity of which is highest, as a correction candidate of the destination address. 
     SUMMARY OF INVENTION 
     The present invention has been made in order to solve problems existing in conventional art. 
     An electronic mail wrong transmission determination apparatus according to one embodiment includes: a feature information creation unit which creates feature information related to contents of an electronic mail that is a transmission object; an accumulation unit which accumulates feature information related to contents of a transmitted electronic mail and a destination of the transmitted electronic mail in association with each other; a destination candidate selection unit which selects destination candidates that are similar in appearance to a destination of the electronic mail that is the transmission object, from destinations of transmitted electronic mails; 
     a similarity model creation unit which creates a similarity model for each destination accumulated in the accumulation unit based on the feature information accumulated in the accumulation unit in association with the destination and based on the feature information accumulated in the accumulation unit in association with other destinations that differ from the destination; wherein the similarity model separates a feature information region associated with the destination and a feature information region associated with the other destinations from each other in a word space composed of dimensions of the number of words included in electronic mails and serves as a criterion of determination as to whether or not feature information related to contents of an arbitrary electronic mail belongs to the feature information region associated with the destination;
 
a reliability calculation unit which calculates respective reliabilities of a destination and destination candidates of the electronic mail that is the transmission object, based on feature information which is related to contents of the electronic mail that is the transmission object and which is created by the feature information creation unit, based on the similarity model which is related to the destination of the electronic mail that is the transmission object and which is created by the similarity model creation unit, and based on the similarity models which are related to the destination candidates of the electronic mail that is the transmission object and which are created by the similarity model creation unit;
 
a wrong transmission determination unit which determines whether or not a possibility of the destination of the electronic mail that is the transmission object being wrong is high, by comparing respective reliabilities calculated by the reliability calculation unit;
 
and
 
a selection unit which, when the wrong transmission determination unit determines that the possibility of the destination of the electronic mail that is the transmission object being wrong is high, selects destination candidates with higher reliabilities than the reliability of the destination of the electronic mail that is the transmission object.
 
     An electronic mail transmission system according to one embodiment includes: an electronic mail creation unit which creates an electronic mail that is a transmission object of which destination is specified; the electronic mail wrong transmission determination apparatus which determines whether or not a possibility of the destination of the electronic mail that is the transmission object created by the electronic mail creation unit being wrong is high; and a transmission unit which transmits the electronic mail that is the transmission object when it is determined by the electronic mail wrong transmission determination apparatus that the possibility of the destination being wrong is not high, or which suspends transmission of the electronic mail that is the transmission object when it is determined that the possibility of the destination being wrong is high. 
     An electronic mail transmission system according to one embodiment includes: an electronic mail creation unit which creates an electronic mail that is a transmission object of which destination is specified; the electronic mail wrong transmission determination apparatus which determines whether or not a possibility of the destination of the electronic mail that is the transmission object created by the electronic mail creation unit being wrong is high; a display unit which displays a destination candidate selected by the selection unit of the electronic mail wrong transmission determination apparatus; and a transmission unit which transmits the electronic mail that is the transmission object when it is determined by the electronic mail wrong transmission determination apparatus that the possibility of the destination being wrong is not high or which suspends transmission of the electronic mail that is the transmission object when it is determined that the possibility of the destination being wrong is high, and which transmits, when one of the destination candidates displayed by the display unit is specified during the suspension of transmission, the electronic mail that is the transmission object to the specified destination candidate. 
     An electronic mail transmission program according to one embodiment is a program for causing a computer to function as respective units of the electronic mail wrong transmission determination apparatus. 
     In addition, an electronic mail transmission program according to one embodiment is a program for causing a computer to function as respective units of the electronic mail transmission system. 
     One of the advantages is to prevent a wrong destination address and prevent wrong transmission of an electronic mail with high accuracy. 
    
    
     
       BRIEF DESCRIPTION OF DRAWINGS 
         FIG. 1  is a diagram showing a schematic configuration of an electronic mail transmission system. 
         FIG. 2  is a diagram showing a configuration of a mail client. 
         FIG. 3  is a flowchart showing a mail transmission processing routine of a mail client. 
         FIG. 4  is a block diagram showing a configuration of a mail wrong transmission determination apparatus. 
         FIG. 5  is a flow chart showing a mail body feature vector creation routine. 
         FIG. 6  is a diagram showing a noun dictionary. 
         FIG. 7  is a diagram showing a mail body feature vector. 
         FIG. 8  is a flowchart showing a mail body similarity model creation routine. 
         FIG. 9  is a diagram showing an example of a mail body similarity model related to a prescribed destination address. 
         FIG. 10  is a flow chart showing a wrong transmission determination processing routine. 
         FIG. 11  is a diagram for explaining a method of calculating reliability using a mail body similarity model. 
         FIG. 12  is a flow chart for executing a warning display routine. 
         FIG. 13  is a diagram schematically showing warning display. 
         FIG. 14  is a diagram showing a frequency table. 
         FIG. 15  is a flow chart showing a Bcc (blind carbon copy) determination routine. 
         FIG. 16  is a flow chart showing a frequency table update routine. 
         FIG. 17  is a diagram showing a state when a pull-down menu is displayed. 
         FIG. 18  is a flow chart for executing a warning display routine. 
     
    
    
     DESCRIPTION OF EMBODIMENTS 
     Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. 
     First Embodiment 
       FIG. 1  is a diagram showing a schematic configuration of an electronic mail transmission system  1 . 
     The electronic mail transmission system  1  includes a mail client  10  which performs creation and transmission processing of a mail message, a mail wrong transmission determination apparatus  30  which determines a possibility of a wrong transmission of an electronic mail created by the mail client  10 , and a mail server  50  which transmits a mail message transmitted from the mail client  10  to a destination address. 
       FIG. 2  is a diagram showing a configuration of the mail client  10 . 
     The mail client  10  includes an operation unit  11  on which operations by a user are performed, a display unit  12 , a communication unit  13  which performs communication processing of data with the outside, and a control unit  14  which controls behavior of the respective units. 
     The operation unit  11  outputs information in accordance with operations by the user including information such as an input mail message, a transmission instruction, and a selection instruction. 
     The display unit  12  displays information from the operation unit  11 , information received by the communication unit  13  from the outside, control information from the control unit  14 , and the like. For example, the display unit  12  displays information necessary for the user to make a determination such as an input mail message and a destination address candidate. 
     Based on control by the control unit  14 , the communication unit  13  communicates with the mail wrong transmission determination apparatus  30  or the mail server  50 . For example, the communication unit  13  transmits authentication data to the mail server  50  and receives authentication data to the effect that authentication has been made from the mail server  50 . The communication unit  13  transmits a mail message scheduled to be transmitted to the mail wrong transmission determination apparatus  30  and receives a determination result representing a possibility of a mail wrong transmission or the like from the mail wrong transmission determination apparatus  30 . In addition, when the possibility of a mail wrong transmission is low, the communication unit  13  transmits the mail message to the mail server  50 . 
     The mail client  10  configured as described above transmits a mail message to the mail server  50  according to the following procedure. 
       FIG. 3  is a flow chart showing a mail transmission processing routine of the mail client  10 . 
     In step S 1 , the mail client  10  transmits authentication data to the mail server  50  and, upon receiving authentication data to the effect that authentication has been made from the mail server  50 , advances to step S 2 . 
     In step S 2 , the mail client  10  transmits a mail message scheduled to be transmitted to the mail wrong transmission determination apparatus  30  and advances to step S 3 . 
     In step S 3 , the mail client  10  stands by until a determination result indicating a possibility of wrong transmission is received from the mail wrong transmission determination apparatus  30  and, once the determination result is received, advances to step S 4 . 
     Moreover, when transmitting a determination result to the effect that a possibility of wrong transmission is high to the mail client  10 , the mail wrong transmission determination apparatus  30  also transmits one or more destination address candidates to replace the destination address. In addition, in order to prompt the mail client  10  to verify the determination result, the mail wrong transmission determination apparatus  30  may also transmit reliability of each of the destination address and the destination address candidates. 
     In step S 4 , the mail client  10  analyzes the determination result and determines whether or not the possibility of wrong transmission is high, and advances to step S 5  in the case of a positive determination (when the possibility of wrong transmission is high) but advances to step S 6  in the case of a negative determination. 
     In step S 5 , the mail client  10  performs display processing in order to warn about the possibility of wrong transmission. Specifically, the mail client  10  executes a warning display routine to be described later and ends the present routine. 
     In step S 6 , since the possibility of wrong transmission is low, the mail client  10  transmits a mail message to the mail server  50  and ends the present routine. In addition, the mail server  50  transmits the mail message transmitted from the mail client  10  to the destination address in accordance with a prescribed protocol. 
       FIG. 4  is a block diagram showing a configuration of the mail wrong transmission determination apparatus  30 . 
     The mail wrong transmission determination apparatus  30  includes a mail message analyzing unit  31  which analyzes a mail message transmitted from the mail client  10 , an address book  32  which is a storage unit for storing destination addresses of transmitted mail messages, a destination address candidate selection unit  33  which selects destination address candidates to replace a destination address from the addresses stored in the address book  32 , a noun dictionary  34  which is a storage unit for storing nouns, and a mail body feature vector creation unit  35  which creates a feature vector of a mail message. 
     Here, the user can also select an address to be stored in the address book  32 . In other words, the addresses stored in the address book  32  may be all destination addresses of transmitted mail messages or addresses selected by the user from all of the destination addresses. 
     The mail wrong transmission determination apparatus  30  further includes a mail body feature vector accumulation unit  36  which accumulates mail body feature vectors, a mail body similarity model creation unit  37  which creates mail body similarity models, a mail body similarity model accumulation unit  38  which accumulates mail body similarity models, a reliability calculation unit  39  which calculates reliabilities, and a destination address validity determination unit  40  which determines a validity of a destination address. 
       FIG. 5  is a flow chart showing a mail body feature vector creation routine. 
     In step S 11 , the mail message analyzing unit  31  extracts a mail body from a mail message and further extracts a destination address from the mail message, and advances to step S 12 . Moreover, when the extracted destination address is not stored in the address book  32 , the destination address is written into the address book  32 . 
     In a case when a destination address has a prescribed feature such as having a domain which is the same as a domain of a transmitting party, the destination address needs not to be written into the address book  32 . In other words, only electronic mails to be transmitted to a domain which differs from the domain of the transmitting party may be considered an object of determination of wrong transmission in that case. 
     In step S 12 , the mail message analyzing unit  31  performs morphological analysis on the mail body and, using the noun dictionary, extracts all nouns included in the mail body. For example, the nouns extracted at this point are preferably verbal nouns, common nouns, and proper nouns. This is because respective occurrence frequencies of verbal nouns, common nouns, and proper nouns vary significantly depending on contents of the mail body. Alternatively, the mail message analyzing unit  31  may extract a word belonging to a part of speech other than nouns as long as the word characterizes contents of the mail body. 
     In step S 13 , the mail message analyzing unit  31  selects a first noun from all extracted nouns and advances to step S 14 . 
     In step S 14 , the mail message analyzing unit  31  determines whether or not the noun being selected is registered in the noun dictionary  34 , and advances to step S 15  when not registered but advances to step S 16  when registered. 
       FIG. 6  is a diagram showing the noun dictionary  34 . A noun and a correspondence index which is an index associated one-to-one to the noun are registered in the noun dictionary  34 . The correspondence index is a value for uniquely identifying a noun, and an order (a serial number beginning with 0) in which the noun is registered to the noun dictionary  34  is adopted in the present embodiment. 
     Here, the correspondence index is not limited to the order of registration as long as the correspondence index is a value capable of uniquely identifying a noun in the noun dictionary  34 , and therefore, the correspondence index may be, for example, a UUID (Universally Unique IDentifier) or a hash value (a numerical value derived by a hash function using a character string as input) of the noun. When the UUID or the hash value is used, the correspondence index becomes globally unique. As a result, a plurality of noun dictionaries  34  can be unified into one noun dictionary  34  or one noun dictionary  34  can be shared by a plurality of mail client users. 
     In step S 15 , since the noun being selected is not registered in the noun dictionary  34 , the mail message analyzing unit  31  generates a new correspondence index with respect to the noun, forms a pair of the noun and the correspondence index created in association with the noun, registers the pair in the noun dictionary  34 , and advances to step S 16 . 
     In step S 16 , the mail message analyzing unit  31  extracts a correspondence index of the noun being selected from the noun dictionary  34  and advances to step S 17 . 
     In step S 17 , the mail message analyzing unit  31  increments an occurrence frequency counter of the extracted correspondence index and advances to step S 18 . Therefore, every time a noun is extracted from the mail body, the occurrence frequency counter of the noun (correspondence index) increases by 1. 
     In step S 18 , the mail message analyzing unit  31  determines whether or not there is an unselected noun among all nouns extracted in step S 12 , and advances to step S 19  when there is an unselected noun but advances to step S 20  when there is no unselected noun. 
     In step S 19 , the mail message analyzing unit  31  selects a next noun from the unselected nouns and returns to step S 14 . In this manner, the processing from step S 14  to step S 19  is repeated until all of the nouns extracted in step S 12  are used to increment the occurrence frequency counter of the correspondence index. 
     In step S 20 , the mail message analyzing unit  31  outputs a pair of the correspondence index and the occurrence frequency counter for every noun included in the mail body to the mail body feature vector creation unit  35 . The mail body feature vector creation unit  35  creates a mail body feature vector by arranging the correspondence indexes and the occurrence frequency counters output from the mail message analyzing unit  31  in a prescribed order. 
       FIG. 7  is a diagram showing a mail body feature vector. As shown in the diagram, a mail body feature vector is an arrangement of pairs of the correspondence index and the occurrence frequency counter in a prescribed order. The mail body feature vector created by the mail body feature vector creation unit  35  is associated with a destination address and accumulated in the mail body feature vector accumulation unit  36 . 
     In this manner, mail body feature vectors of all mail messages transmitted to the mail wrong transmission determination apparatus  30  are sequentially accumulated in the mail body feature vector accumulation unit  36 . Subsequently, the present routine ends. 
     Here, the mail body feature vector accumulation unit  36  may accumulate only mail body feature vectors transmitted during a period from a prescribed time point, which precedes a current time point, to the current time point, instead of continuously accumulating the mail body feature vectors of all transmitted mail messages. In other words, the mail body feature vector accumulation unit  36  may delete mail body feature vectors which are older than the prescribed period preceding the current time point. 
     Alternatively, the mail body feature vector accumulation unit  36  may accumulate only mail body feature vectors of mail messages, the destination addresses of which have been already stored in the address book  32 , instead of accumulating the mail body feature vectors of all transmitted mail messages. 
       FIG. 8  is a flow chart showing a mail body similarity model creation routine. The present routine is batch-processed at prescribed time intervals such as every 24 hours. 
     In step S 21 , the mail body similarity model creation unit  37  selects a first address from the address book  32  and advances to step S 22 . While an example of the first address is a destination address registered first in the address book  32  in the present embodiment, the first address is not limited thereto and may instead be an arbitrary address registered in the address book  32 . 
     Alternatively, addresses to be selected from the address book  32  may be limited to addresses related to a mail body similarity model to be updated instead of all registered addresses. Here, the mail body similarity model to be updated corresponds to a mail body similarity model related to an address, to which, despite having an electronic mail newly transmitted to the address related to the mail body similarity model, the transmission is not reflected. 
     In step S 22 , the mail body similarity model creation unit  37  extracts all mail body feature vectors having the address being selected as a destination address from the mail body feature vector accumulation unit  36 , and advances to step S 23 . 
     In step S 23 , the mail body similarity model creation unit  37  randomly extracts mail body feature vectors having an address other than the address being selected as a destination address from the mail body feature vector accumulation unit  36 , and advances to step S 24 . Here, the number of mail body feature vectors extracted in the present step is the same as the number of mail body feature vectors extracted in step S 22 . 
     In step S 23 , mail body feature vectors having an address other than the address being selected as a destination address are “randomly” extracted in order to retain a generic feature (a generic tendency of deviation) of a group of mail body feature vectors having an address other than the address being selected as a destination address. In addition, in step S 23 , the “same” number of the mail body feature vectors as the number of the mail body feature vectors extracted in step S 22  are extracted in order to equalize, with respect to a mail body similarity model, a contribution from a group of mail body feature vectors having the address being selected as a destination address with a contribution from a group of mail body feature vectors having an address other than the address being selected as a destination address. 
     In other words, in step S 23 , mail body feature vectors are “randomly” extracted in the “same” number as in step S 22  in order to create a mail body similarity model which enables mail wrong transmission determination to be performed with high accuracy. However, the “random” extraction of mail body feature vectors in step S 23  in the “same” number as in step S 22  is not essential. In other words, a mail body similarity model necessary for mail wrong transmission determination can be created even if such conditions are not satisfied. 
     In step S 24 , the mail body similarity model creation unit  37  creates a mail body similarity model related to the address being selected using the groups of mail body feature vectors extracted in steps S 22  and S 23 . The mail body similarity model is created using, for example, an SVM (Support Vector Machine). 
     In the SVM, when a word space composed of dimensions of the total number of nouns used in mail bodies of all electronic mails is assumed, a mail body feature vector extracted from a mail body of one electronic mail is represented as one data point in the word space. If an optimum hyperplane can be created in the word space, which appropriately separates data points represented by a group of all mail body feature vectors having a given address as a destination address extracted in step S 22  from data points represented by a group of mail body feature vectors having an address other than the given address as a destination address extracted in step S 23 , an arbitrary data point in the word space can be classified by the hyperplane. 
     In consideration thereof, the mail body similarity model creation unit  37  creates a mail body similarity model as the hyperplane using the SVM. Then, the mail body similarity model creation unit  37  accumulates the mail body similarity model in the mail body similarity model accumulation unit  38  and advances to step S 25 . 
     In step S 25 , the mail body similarity model creation unit  37  determines whether or not there is an unselected address among addresses that are selection objects in the addresses registered in the address book  32 , and advances to step S 26  when there is an unselected address but ends the present routine when there is no unselected address. 
     In step S 26 , the mail body similarity model creation unit  37  selects an unselected address and returns to step S 22 . By repeating the processing from step S 22  to step S 26 , the mail body similarity model creation unit  37  creates mail body similarity models related to all addresses that are selection objects in the addresses registered in the address book  32 , and accumulates the mail body similarity models in the mail body similarity model accumulation unit  38 . Accordingly, the latest mail body similarity models related to all of the addresses registered in the address book  32  are accumulated in the mail body similarity model accumulation unit  38 . 
       FIG. 9  is a diagram showing an example of a mail body similarity model related to a prescribed address (address A). In this case, a two-dimensional word space is assumed, which is composed of two axes for “XYZ Co.” and “Saito”—the only nouns included in all the mail bodies. In this case, the mail body similarity model is expressed as a dashed line drawn in  FIG. 9 . In  FIG. 9 , open circles denote data points represented by a group of mail body feature vectors of transmitted mail bodies with the address A as their destination addresses. On the other hand, filled circles denote data points represented by a group of mail body feature vectors of transmitted mail bodies with addresses other than the address A as their destination addresses. Here, the mail body similarity model related to the address A is expressed as a hyperplane (in this case, a straight line) which separates, with the highest probability, a region in which open circles exists and a region in which filled circles exist from each other in the two-dimensional word space. 
       FIG. 10  is a flow chart showing a wrong transmission determination processing routine. 
     In step S 31 , the reliability calculation unit  39  calculates reliability with respect to a destination address of a mail scheduled to be transmitted. Specifically, the reliability calculation unit  39  calculates the reliability of a destination address based on a mail body feature vector of the destination address created by the mail body feature vector creation unit  35  and based on a mail body similarity model related to the destination address accumulated in the mail body similarity model accumulation unit  38 . 
       FIG. 11  is a diagram for explaining a method of calculating reliability using a mail body similarity model. Open and filled triangles indicate mail body feature vectors of two mail messages that are scheduled to be transmitted. Reliability corresponds to a distance from the mail body similarity model (a dashed line) to a mail body feature vector (for example, each triangle) which is a calculation object of the reliability. In other words, the longer the distance from the mail body similarity model, the higher the reliability of the mail body feature vector belonging to the region. 
     In  FIG. 11 , the open triangle is deep inside a region of open circles, or a distance from the mail body similarity model is long. On the other hand, although the filled triangle is within a region of filled circles, the filled triangle is close to the mail body similarity model, or a distance from the mail body similarity model is short. Therefore, a mail body having the mail body feature vector corresponding to the open triangle can be estimated to be a transmission mail having the address A as its destination address with high reliability thereof. On the other hand, while a mail body having the mail body feature vector corresponding to the filled triangle can be estimated not to be a transmission mail having the address A as its destination address, the reliability thereof is low. 
     In step S 32 , the destination address candidate selection unit  33  selects one or more destination address candidates to replace the destination address extracted by the mail message analyzing unit  31  from all addresses registered in the address book  32 . The destination address candidate selection unit  33  selects destination address candidates which are addresses similar in appearance to the destination address from the addresses in the address book  32  using, for example, the Levenshtein method or the N-gram method. 
     For example, using the N-gram method, the destination address candidate selection unit  33  computes, for each address in the address book  32 , an address similarity (0 to 100%), which is an indicator of similarity of an address to the destination address, by comparing a local section (user name) of the destination address (without a domain section being appended) with the local section of each address registered in the address book. Then, the destination address candidate selection unit  33  selects addresses with an address similarity equal to or higher than a threshold (for example, 50%) among the address similarities obtained for the respective addresses in the address book  32  as destination address candidates. 
     Alternatively, the destination address candidate selection unit  33  may compare the destination address with the respective addresses in the address book  32  including comment sections of mail addresses instead of limiting the comparison to the local sections of mail addresses. 
     For example, in the case of “Tarou Shinjuku” &lt;shinjuku.tarou@example.co.jp&gt;, the comment section is “Tarou Shinjuku”. By using the comment section in addition to the local section of addresses included in the address book  32 , the destination address candidate selection unit  33  can select destination address candidates with higher similarity to the destination address. 
     Subsequently, the reliability calculation unit  39  selects an arbitrary destination address candidate from the one or more destination address candidates selected by the destination address candidate selection unit  33 , and advances to step S 33 . 
     In step S 33 , the reliability calculation unit  39  calculates reliability with respect to a destination address candidate being selected. Specifically, the reliability calculation unit  39  first reads a mail body similarity model related to the destination address candidate being selected from the mail body similarity model accumulation unit  38 . The reliability calculation unit  39  next calculates the reliability of the destination address candidate being selected based on a mail body feature vector of the mail scheduled to be transmitted created by the mail body feature vector creation unit  35  and based on the read mail body similarity model related to the destination address candidate being selected, and advances to step S 34 . 
     In step S 34 , the destination address validity determination unit  40  determines whether or not the “reliability with respect to the destination address candidate” being selected is higher than the “reliability with respect to the destination address”, and advances to step S 35  in the case of a positive determination but advances to step S 36  in the case of a negative determination. Alternatively, even when a negative determination is made, the destination address validity determination unit  40  may advance to step S 35  when the reliability with respect to the destination address is lower than a prescribed threshold. 
     In step S 35 , the destination address validity determination unit  40  determines that there is a possibility of wrong transmission with respect to a mail message scheduled to be transmitted, sets the destination address candidate being selected as a destination address candidate to be presented to the mail client  10 , and advances to step S 36 . Alternatively, the destination address validity determination unit  40  may set the destination address candidate even when a negative determination is made in step S 34  but, at the same time, the reliability with respect to the destination address is lower than the prescribed threshold. 
     In step S 36 , the destination address validity determination unit  40  determines whether or not there is an unselected destination address candidate, and advances to step S 37  when there is an unselected destination address candidate but advances to step S 38  when there is no unselected destination address candidate. 
     In step S 37 , the destination address validity determination unit  40  selects an unselected destination address candidate and returns to step S 33 . Step S 33  to step S 37  are repetitively executed to compare all combinations of the “reliability with respect to the destination address” and the “reliability with respect to a destination address candidate”, and the present routine advances to step S 38 . 
     In step S 38 , the destination address validity determination unit  40  transmits a determination result to the mail client  10 . Specifically, when the “reliability with respect to the destination address” is higher than all “reliabilities with respect to destination address candidates”, the destination address validity determination unit  40  transmits a determination result to the effect that the possibility of wrong transmission is low to the mail client  10 . On the other hand, when there are a plural destination address candidates with hither reliability than the destination address itself, the destination address validity determination unit  40  transmits the plural destination address candidates together with a priority of each destination address candidate according to the reliability of the destination address candidate to the mail client  10 . 
     Moreover, the destination address validity determination unit  40  may also transmit the reliability itself of each of the destination address and the destination address candidates to the mail client  10 . 
     As a result, when the mail client  10  transmits a mail message to the mail wrong transmission determination apparatus  30 , the mail client  10  receives a determination result indicating a possibility of wrong transmission. 
     In addition, together with the determination result indicating that the possibility of wrong transmission is high, the mail client  10  can receive one or more destination address candidates to replace the original destination address from the mail wrong transmission determination apparatus  30 . Furthermore, when there are a plural destination address candidates, the mail client  10  can receive priorities of the destination address candidates. 
     Then, when the possibility of wrong transmission is low, the mail client  10  transmits the mail message that is the transmission object to the mail server  50  (step S 6  in  FIG. 3 ), but the mail client  10  displays warning when the possibility of wrong transmission is high (step S 5  in  FIG. 3 ). 
       FIG. 12  is a flow chart for executing a warning display routine for displaying warning represented by step S 5  in  FIG. 3 . The control unit  14  of the mail client  10  executes processing of steps S 41  and thereafter described below. 
     In step S 41 , the control unit  14  temporarily suspends transmission of a mail message to the mail server  50 . In addition, the control unit  14  displays a destination address and the mail message on the display unit  12  and displays warning to the destination address, and advances to step S 42 . 
       FIG. 13  is a diagram schematically showing warning display. When a possibility of a specified destination address being wrong is high, the destination address is highlighted and displayed by vibration to warn a user. Alternatively, blinking, a continuous or an intermittent variation of fonts (type, color, and size), or the like may be used instead of the vibration. 
     Furthermore, in  FIG. 13 , when an attached file exists or when a prescribed keyword is included in a mail body, a file name of the attached file and the prescribed keyword are highlighted and displayed by vibration. In this case, the prescribed keyword may be a keyword registered with respect to mail messages to all destination addresses or a keyword registered with respect to mail messages to a specific destination address. 
     An amount of vibration in the vibration display may be changed in accordance with a degree of the warning. For example, the higher the possibility of a transmission to the destination address being a wrong transmission, the larger the amount of vibration of the destination address. In other words, as shown in  FIG. 11 , the amount of vibration of a given destination address may be increased as an absolute value of reliability expressed as a distance from a mail body similarity model increases when a mail body feature vector of the given destination address exists in a region of a destination address which differs from the given destination address. 
     In addition, in a case where reliability of a given destination address is within a prescribed range (for example, even when a mail body feature vector of the given destination address exists in a region of a destination address which differs from the given destination address, an absolute value of the reliability expressed as a distance from a mail body similarity model is not sufficiently large) and the given destination address corresponds to at least one of: the destination address being a first destination of a transmission source of an electronic mail; the destination address having a domain which differs from a domain of the transmission source of the electronic mail; the destination address having a specific domain; and the destination address is to be specified in a Bcc field of the electronic mail, the amount of vibration of the given destination address may be increased in accordance with the number of correspondences. Furthermore, a display method which increases the degree of warning by means other than vibration display may be used. Whether or not such conditions are satisfied is determined by the control unit  14  based on the destination address and transmission information of previous electronic mails. 
     A method of determining whether or not a destination address is to be specified in a Bcc field of an electronic mail will now be described with reference to  FIGS. 14 to 16 . 
       FIG. 14  is a diagram showing a frequency table. A frequency table collectively shows a pair of destination addresses to which an electronic mail has previously been simultaneously transmitted, the number of transmissions (frequency) thereof, and a date and time of the last simultaneous transmission to the pair (last updated date/time) regardless of whether the destination address was specified in a TO field or a CC field. While the frequency table used herein organizes a pair of destination addresses, a frequency, and a last updated date/time regardless of a transmission source, the frequency table may organize a pair of destination addresses, a frequency, and a last updated date/time for each transmission source. 
     For example, when destination addresses (which may be specified in any of a TO field and a CC field) set to an electronic mail transmitted at a given time point in the past are “aaa@aaa.com”, “bbb@bbb.com”, and “ccc@ccc.com”, three pairs of destination addresses (“address 1”; “address 2”) are extracted as follows. 
     “Address 1”; “address 2” 
     “aaa@aaa.com”; “bbb@bbb.com”
 
“aaa@aaa.com”; “ccc@ccc.com”
 
“bbb@bbb.com”; “ccc@ccc.com”
 
     The frequency table includes, as its items, all pairs of destination addresses previously having been transmitted simultaneously, including the three pairs of destination addresses presented above. In addition, the item of each pair describes a frequency transmitted so far and a last updated date/time, which take all previous simultaneous transmissions of electronic mails to the pair into consideration. 
       FIG. 15  is a flow chart showing a Bcc determination routine for determining whether or not a destination address is to be specified in a Bcc field. 
     In step S 101 , the control unit  14  extracts all destination addresses from the TO field and the CC field of an electronic mail scheduled to be transmitted, and advances to step S 102 . 
     In step S 102 , the control unit  14  selects a first pair of destination addresses and advances to step S 103 . For example, when three destination addresses are extracted in step S 101 , there are three pairs of destination addresses. In this case, a first pair is selected from the three pairs of destination addresses. 
     In step S 103 , the control unit  14  determines whether or not a frequency of the pair selected in step S 102  is equal to or higher than a prescribed value, and advances to step S 104  in the case of a positive determination but advances to step S 105  in the case of a negative determination. In this case, a pair, the frequency of which is equal to or higher than the prescribed value, is assumed to be destination addresses that are strongly connected to each other. 
     In step S 104 , since the pair conceivably has a strong connection, the control unit  14  marks the pair and advances to step S 105 . 
     In step S 105 , the control unit  14  determines whether or not all pairs have been selected, and advances to step S 107  in the case of a positive determination but advances to step S 106  in the case of a negative determination. For example, when there are a total of four destination addresses in the TO field and the CC field of an electronic mail scheduled to be transmitted and thus there are six pairs of destination addresses, a determination is made on whether or not all of the six pairs of destination addresses have been selected. 
     In step S 106 , the control unit  14  selects a next pair of destination addresses and returns to step S 103 . Processing of step S 103  to step S 106  is repetitively executed, and when a determination of whether or not a pair of destination addresses is to be marked is made for all of the pairs of destination addresses, the present routine advances to step S 107 . 
     In step S 107 , using marked pairs, the control unit  14  groups all destination addresses of the electronic mail scheduled to be transmitted. First, the control unit  14  assumes that each marked pair is a group. Next, the control unit  14  compares two groups with each other and, when the groups share a same destination address, the control unit  14  unifies the two groups into one group. Conversely, when there is no common destination address, the two groups remain separate groups. The control unit  14  compares all of the groups and continues grouping until there is no more common destination addresses among the groups. 
     In addition, the control unit  14  organizes each of the destination addresses not marked in pairs with any other destination address in step S 104  into a single group. Subsequently, the present routine advances to step S 108 . 
     Moreover, by considering each destination address a node, an association between two destination addresses an edge, and a frequency a weight of an edge, the processing from step S 102  to step S 107  is equivalent to a generic problem of creating an aggregate (cluster) of nodes connected by edges with a weight equal to or greater than a prescribed weight. In other words, as long as groups of destination addresses with a strong association can be formed, the processing from step S 102  to step S 107  is not limited to the above. 
     In step S 108 , the control unit  14  counts the number of all groups and computes a Bcc determination value for determining whether or not to perform a Bcc transmission. In this case, the Bcc determination value is a value obtained by dividing the number of groups by the number of all destination addresses (the number of destination addresses extracted in step S 101 ). 
     In step S 109 , the control unit  14  determines whether or not the Bcc determination value is larger than a prescribed value, and advances to step S 110  in the case of a positive determination but advances to step S 111  in the case of a negative determination. The prescribed value is a numeral equal to or larger than 0 and smaller than 1, and is a threshold for determining a degree of existence of a strong connection among destination addresses extracted in step S 101 . 
     In other words, the Bcc determination value being larger than the prescribed value indicates that the number of groups formed by destination addresses with strong connections is close to the total number of the original destination addresses or, in other words, there are not many strong connections among individual destination addresses. 
     Generally, a Bcc transmission is performed when simultaneously transmitting to a large number of destination addresses that are not mutually related to each other. Therefore, when the Bcc determination value is larger than the prescribed value, the electronic mail conceivably is to be transmitted as Bcc. On the other hand, when the Bcc determination value is equal to or smaller than the prescribed value, since a sufficient number of close connections exist among the destination addresses, the electronic mail conceivably need not be transmitted as Bcc. 
     In step S 110 , the control unit  14  determines that the electronic mail is to be transmitted as Bcc, causes the display unit  12  to display information to the effect that the electronic mail is to be transmitted as Bcc, and advances to step S 111 . 
     In step S 111 , the control unit  14  updates the frequency table and ends the present routine. More specifically, in the present step, a frequency table update routine described below is executed. 
       FIG. 16  is a flowchart showing the frequency table update routine. Here, an update of the frequency table need not necessarily be performed at the timing of step S 111  but may be performed at a prescribed time of day. 
     In step S 121 , the control unit  14  extracts all destination addresses from the TO field and the CC field of an electronic mail scheduled to be transmitted, and advances to step S 122 . 
     In step S 122 , the control unit  14  selects a first pair of destination addresses and advances to step S 123 . 
     In step S 123 , the control unit  14  determines whether or not the pair selected in step S 122  is included in the frequency table, and advances to step S 124  in the case of a positive determination but advances to step S 127  in the case of a negative determination. 
     In step S 124 , the control unit  14  increments (increases by 1) the frequency of the pair, and advances to step S 125 . 
     In step S 125 , the control unit  14  determines whether or not all pairs have been selected, and advances to step S 128  in the case of a positive determination but advances to step S 126  in the case of a negative determination. 
     In step S 126 , the control unit  14  selects a next pair and returns to step S 123 . 
     In step S 127 , the control unit  14  registers the pair in the frequency table, sets the frequency  1  of the pair, and advances to step S 125 . 
     For example, when destination addresses (which may be specified in any of a TO field and a CC field) of an electronic mail transmitted at a given time point in the past are “aaa@aaa.com”, “bbb@bbb.com”, and “ccc@ccc.com”, the following three pairs of destination addresses (“address 1”; “address 2”) are extracted. 
     “Address 1”; “address 2” 
     “aaa@aaa.com”; “bbb@bbb.com”
 
“aaa@aaa.com”; “ccc@ccc.com”
 
“bbb@bbb.com”; “ccc@ccc.com”
 
     In this case, since the first item (“aaa@aaa.com”; “bbb@bbb.com”) was not included in the frequency table shown in  FIG. 14 , the first item has been newly registered in the frequency table and the frequency of the pair of the first item has been set to 1. Meanwhile, since the remaining items were already included in the frequency table, frequencies of the respective pairs of the remaining items have been increased by 1 (incremented) and, as a result, respective frequencies thereof have been set from 4 to 5 and from 1 to 2. 
     In step S 128 , the control unit  14  deletes items having been registered for a prescribed period of time or more from the frequency table and ends the present routine. At this point, for example, for each pair in the frequency table, the control unit  14  determines whether or not a last updated date/time precedes the present time point by a prescribed period of time or more and, when a prescribed pair satisfies this condition, the control unit  14  deletes the prescribed pair from the frequency table. By constantly updating the frequency table in this manner, the control unit  14  maintains accuracy of determination as to whether an electronic mail is to be transmitted as Bcc or not. 
     While an example where the control unit  14  of the mail client  10  executes the processing shown in  FIGS. 15 and 16  has been described in the present embodiment, the processing may be alternatively executed on the side of the server such as by the mail wrong transmission determination apparatus  30 . 
     Once again returning to  FIG. 12 , in step S 42 , the control unit  14  determines whether or not a send-button (refer to a top right section of  FIG. 13 ) displayed on the display unit  12  has been pressed (clicked), and advances to step S 43  in the case of a positive determination but advances to step S 44  in the case of a negative determination. 
     In step S 43 , the control unit  14  transmits the mail message to the mail server  50  and ends the present routine. In this case, since it is conceivable that the user had verified the destination address and then issued an instruction for forced transmission, the mail message is forcibly transmitted to the mail server  50 . 
     In step S 44 , the control unit  14  determines whether or not a cancel-button (refer to the top right section of  FIG. 13 ) displayed on the display unit  12  has been pressed (clicked), and advances to step S 45  in the case of a positive determination but advances to step S 46  in the case of a negative determination. 
     In step S 45 , the control unit  14  discards (erases) the mail message and ends the present routine. 
     In step S 46 , the control unit  14  determines whether or not there are destination address candidates (whether or not one or more destination address candidates have been transmitted from the mail wrong transmission determination apparatus  30 ), and advances to step S 47  in the case of a positive determination but advances to step S 50  in the case of a negative determination. 
     In step S 47 , the control unit  14  displays a pull-down menu upon detecting a prescribed operation such as positioning of a cursor on a position of the destination address on the display screen, and advances to step S 48 . 
       FIG. 17  is a diagram showing a state when a pull-down menu including a destination address and destination address candidates is displayed. The pull-down menu is for prompting the user to select the destination address or a destination address candidate. Therefore, in the pull-down menu, the destination address is displayed in an uppermost section, followed by destination address candidates displayed in a descending order of reliability from up to down. 
     In step S 48 , the control unit  14  determines whether the destination address or any of the destination address candidates in the pull-down menu has been selected by the user, and when it is determined that the destination address or any of the destination address candidates has been selected by the user, the control unit  14  advances to step S 49 . 
     In step S 49 , the control unit  14  sets the address (the destination address or a destination address candidate) selected in step S 48  as a new destination and returns to step S 42 . As a result, the address selected from the pull-down menu becomes a new destination address and processing of step S 42  and thereafter is executed once again. 
     In step S 50 , the control unit  14  determines whether or not the destination is still the first destination address, and returns to step S 41  in the case of a positive determination but returns to step S 42  in the case of a negative determination. Subsequently, processing of step S 41  or step S 42  and thereafter is once again executed. 
     As described above, when suspending the transmission of an electronic mail, the mail client  10  can attract the attention of the user to a destination address by displaying the destination address using vibration. In addition, the mail client  10  can present destination address candidates to replace the current destination address to the user. 
     In addition, when there are a plural destination address candidates, the mail client  10  can present the user with destination address candidates in a descending order of priority (for example, by placing a destination address candidate with a higher priority at a higher position in a pull-down menu). 
     It should be noted that the present invention is not limited to the embodiment described above and is also applicable to design modifications implemented within the scope of matters described in the claims. 
     For example, while the mail wrong transmission determination apparatus  30  is configured independent of the mail client  10  or the mail server  50  in  FIG. 1 , the mail wrong transmission determination apparatus  30  may be configured so as to be built into the mail client  10  or the mail server  50 . 
     In the embodiment described above, destination addresses are extracted from all mail messages transmitted to the mail wrong transmission determination apparatus  30  shown in  FIG. 4  and all of the extracted destination addresses are registered in the address book  32 . However, as an alternative to this example, only destination addresses of electronic mails transmitted based on a determination result of mail wrong transmission may be registered in the address book  32 . 
     In addition, while the mail message analyzing unit  31  shown in  FIG. 4  performs morphological analysis only on a mail body, morphological analysis may be performed on text information contained in an electronic mail including a mail header and other pieces of information. 
     A mail body similarity model is not limited to the SVM as long as the mail body similarity model statistically indicates a likelihood of a mail body being related to a specific destination address. As the mail body similarity model, for example, a naive Bayes, a decision tree (CART: Classification And Regression Tree), or a maximum entropy (ME) model may be used. 
     The mail body similarity model according to the present embodiment is sequentially updated based on mail body feature vectors of all mail messages transmitted to the mail wrong transmission determination apparatus  30 . However, the mail body similarity model may be based on mail body feature vectors of a part of mail messages transmitted to the mail wrong transmission determination apparatus  30 , which, for example, have been created since a prescribed time point in the past up to today. 
     In addition, the destination address validity determination unit  40  shown in  FIG. 4  may be configured inside the mail client  10  instead of the mail wrong transmission determination apparatus  30 . 
     In this case, the control unit  14  of the mail client  10  shown in  FIG. 2  is to include the functions of the destination address validity determination unit  40  described earlier and repetitively execute the processing of steps S 34  to S 37  shown in  FIG. 10  using the respective reliability transmitted from the mail wrong transmission determination apparatus  30 . In this manner, a final determination on whether or not a mail wrong transmission has been performed may be made by the mail client  10 . 
     Second Embodiment 
     The mail wrong transmission determination apparatus  30  according to a second embodiment determines a wrong transmission with respect to an electronic mail that is a transmission object without creating a destination address candidate. In this case, in the wrong transmission determination processing routine shown in  FIG. 10 , processing for selecting a destination address candidate in step S 32 , and steps S 33 , S 36  and S 37  are omitted. In addition, unlike in the first embodiment, the following processing is executed in step S 34 . 
     In step S 34 , the destination address validity determination unit  40  determines whether or not the “reliability with respect to the destination address” is higher than a prescribed threshold, and determines that a possibility of wrong transmission is low in the case of a positive determination but determines that the possibility of wrong transmission is high in the case of a negative determination, and transmits a determination result thereof to the mail client  10 . 
     Using the determination result by the mail wrong transmission determination apparatus  30 , the mail client  10  can transmit an electronic mail when the possibility of wrong transmission of the electronic mail is low, or the mail client  10  can temporarily suspend transmission of the electronic mail and display a warning when the possibility of wrong transmission of the electronic mail is high. 
       FIG. 18  is a flow chart for executing a warning display routine for displaying warning according to the second embodiment. Steps S 51  to S 55  in the present routine respectively correspond to steps S 41  to S 45  in the warning display routine shown in  FIG. 12 . However, in step S 54 , the control unit  14  determines whether or not the cancel button displayed on the display unit  12  has been pressed (clicked), and advances to step S 55  in the case of a positive determination but returns to step S 51  in the case of a negative determination. 
     At this point, the mail client  10  may seek a final judgment of a user with respect to mail transmission by presenting the reliability transmitted from the mail wrong transmission determination apparatus  30  to the user without modification. 
     Moreover, the mail client  10 , the mail wrong transmission determination apparatus  30 , and the mail server  50  described above are not limited to hardware configurations and may be a general-purpose computer installed with a program for executing the processing described above. 
     In addition, even in the second embodiment, the destination address validity determination unit  40  shown in  FIG. 4  may be configured inside the mail client  10  instead of the mail wrong transmission determination apparatus  30 . 
     In this case, the control unit  14  of the mail client  10  shown in  FIG. 2  is to include the functions of the destination address validity determination unit  40  described above and execute the processing of step S 34  in the second embodiment described earlier using the reliability transmitted from the mail wrong transmission determination apparatus  30 . In this manner, a final determination on whether or not a mail wrong transmission has been performed may be made by the mail client  10 . 
     REFERENCE SIGNS LIST 
     
         
           10  Mail client 
           30  Mail wrong transmission determination apparatus 
           31  Mail message analyzing unit 
           32  Address book 
           33  Destination address candidate selection unit 
           34  Noun dictionary 
           35  Mail body feature vector creation unit 
           36  Mail body feature vector accumulation unit 
           37  Mail body similarity model creation unit 
           38  Mail body similarity model accumulation unit 
           39  Reliability calculation unit 
           40  Destination address validity determination unit 
           50  Mail server