Matching system, program, and matching method

The matching system addresses the challenge of subjective natural language explanations by numerically scoring and ranking human resources based on project skills and attributes, enhancing the evaluation of talent suitability.

WO2025210765A1PCT designated stage Publication Date: 2025-10-09BEATRUST INC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2024/013718
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-04-03
Publication Date
2025-10-09

AI Technical Summary

Technical Problem

Conventional techniques face difficulties in ranking and evaluating matching results between human resources and projects due to reasons for suitability being explained in natural language, making it hard for users to rank candidates effectively.

Method used

A matching system that calculates scores for human resources based on project skills and attributes, ranks them numerically, and allows for input and adjustment of attributes and skills, using large-scale language models and vector conversion to enhance accuracy.

Benefits of technology

Facilitates easier evaluation of matching results by providing numerical rankings and objective scoring, improving the recognition of talent suitability for projects.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024013718_09102025_PF_FP_ABST
    Figure JP2024013718_09102025_PF_FP_ABST
Patent Text Reader

Abstract

A matching system according to the present invention performs matching processing between human resources and projects. The matching system acquires text data that represents the details of a project, identifies one or more project skills that pertain to the project on the basis of the text data, acquires one or more attributes for each of a plurality of human resources, calculates scores for the human resources on the basis of each of the project skills and each of the attributes, and outputs the plurality of human resources in an order that is based on the scores for the human resources, the scores for the human resources being outputted as numerical values.
Need to check novelty before this filing date? Find Prior Art

Description

Matching system, program, and matching method

[0001] The present invention relates to a matching system, a program, and a matching method.

[0002] In the activities of a company or other organization, when managing a project that involves a team of many people, it is important to select the most suitable person for the project from among the candidates. In such a selection process, it is useful to evaluate how well the project and the person match.

[0003] Various techniques for this purpose are known. For example, Patent Document 1 describes a matching information processing system that classifies tasks and personnel, calculates scores, and performs optimal matching.

[0004] JP 2023-184514 A

[0005] However, conventional techniques have had the problem of difficulty in ranking and evaluating matching results. For example, Patent Literature 1 describes proposing candidates with reasons for their suitability according to the desired talent profile, but the reasons are only explained in natural language, making it difficult for users who view the explanation to rank the candidates.

[0006] The present invention has been made to solve such problems, and aims to propose a matching system, program, and matching method that make it easier to evaluate the ranking of matching results.

[0007] An example of a matching system according to the present invention is a matching system that performs a matching process between human resources and projects, and acquires text data representing the content of the project, identifies one or more project skills related to the project based on the text data, acquires one or more attributes for each of a plurality of human resources, calculates a score for each human resource based on each of the project skills and each of the attributes, ranks the plurality of human resources based on each human resource's score, and outputs each human resource's score as a numerical value.

[0008] In one example, the matching system further calculates a score for each attribute of each talent, and calculates a score for each talent based on the score for each attribute of the talent.

[0009] In one example, the matching system further determines the strength of each project skill based on the text data, and calculates a score for each talent based on the strength of each project skill.

[0010] In one example, the matching system receives input from a first person to assign a new attribute to the first person, receives input from a second person to assign a new attribute to the first person, and makes the score of the attribute assigned to the first person by the second person greater than the score of the attribute assigned to the first person by the first person.

[0011] In one example, the matching system receives positive feedback from a second talent about any of the attributes of the first talent, and calculates a score for each attribute based on the number of positive feedback for that attribute.

[0012] In one example, the matching system displays each project skill associated with the project and accepts input to add or remove one or more project skills.

[0013] In one example, the matching system displays the strength of each project skill and accepts input to change the strength of any project skill.

[0014] In one example, the matching system associates one or more normalized skills with each attribute and calculates a score for each attribute based on each normalized skill associated with that attribute.

[0015] In one example, the matching system associates one or more normalized skills with each attribute, obtains hierarchical information representing the hierarchical relationship between each normalized skill, and calculates the total number of the normalized skills associated with one or more of the human resources based on the hierarchical information.

[0016] In one example, the matching system inputs information including the text data into a large-scale language model; and obtains the one or more project skills from the large-scale language model.

[0017] In one example, the matching system further includes a client terminal, and the client terminal outputs the score of each talent as a numerical value.

[0018] An example of a program according to the present invention causes a computer to function as the above-described matching system.

[0019] An example of a matching method according to the present invention is a matching method for performing a matching process between human resources and projects, comprising the steps of: a computer acquiring text data representing the content of the project; a computer identifying one or more project skills related to the project based on the text data; a computer acquiring one or more attributes for each of a plurality of human resources; a computer calculating a score for each of the human resources based on each of the project skills and each of the attributes; and a computer ranking and outputting the plurality of human resources based on each human resource's score, and outputting each human resource's score as a numerical value.

[0020] According to the matching system, program, and matching method of the present invention, it becomes easier to evaluate the ranking of matching results.

[0021] Effects other than those mentioned above will be explained by the embodiments and modifications described in this specification and the drawings.

[0022] 1. An overview of the operation of the matching system according to embodiment 1. An overview of the configuration of the matching system according to embodiment 1. An example of the hardware configuration of the matching server 10 of FIG. 2. An example of the configuration of the talent data D1 of FIG. 3. An example of a matching processing screen 100 output by the matching server 10 of FIG. 2. An example of an attribute display screen 200 output by the matching server 10 of FIG. 2. An example of a normalized skill statistics screen 300 output by the matching server 10 of FIG. 2 and an enlarged partial view 301 thereof. An example of a processing flow executed by the matching server 10 of FIG. 2 regarding processing to assign attributes to talent. An example of a processing flow executed by the matching server 10 of FIG. 2 regarding matching processing. Details of step S12 of FIG. 9. Details of step S14 of FIG. 9.

[0023] Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. [Embodiment 1] Fig. 1 is a diagram illustrating an outline of the operation of a matching system according to embodiment 1. The matching system performs a matching process between a project and human resources by executing a matching method described in this specification.

[0024] "Project" refers to, but is not limited to, a plan, initiative, job, etc. to be carried out by one or more individuals. Projects are created, executed, and / or managed by organizations, such as, but not limited to, a company, public organization, country, or local government.

[0025] "Talent" refers to candidates for individuals (natural persons) involved in a project, and for example, suitable talent is selected from a large number of talents for a certain project. Talent refers to some or all of the individuals belonging to a specific group (a company or a division thereof), but it does not have to be limited to individuals belonging to a specific group, and individuals not related to a specific group can also be considered as talent.

[0026] The matching system identifies skills related to a project (hereinafter sometimes referred to as "project skills") based on sentences (text data) that describe the content of the project. Project skills refer to, for example, but are not limited to, techniques, abilities, skills, etc. that are useful for or required to carry out the project. Project skills are expressed, for example, as text data in natural language.

[0027] The matching system also acquires attributes for each talent. In the example of FIG. 1, three talents are shown: talent A, talent B, and talent C. "Attributes" refer to, for example, but are not limited to, the talent's abilities, qualities, characteristics, etc. It may also include evaluation information about the talent held by the organization. Attributes are expressed as text data, for example. Attributes expressed as text data are sometimes called "tags."

[0028] The matching system calculates a score for each candidate based on the similarity between the project skills and the candidate's attributes. Specific methods for calculating the similarity and score will be described later. The candidates are then ranked and output based on the calculated scores. At this time, the score for each candidate is output as a numerical value, for example, a numerical ranking is output.

[0029] The output results may be, for example, as shown in the result display field 140 of the matching processing screen 100 in Fig. 5 (described later). The project manager who receives such an output can easily understand the ranking evaluation of the matching results. In particular, since not only the ranking but also the numerical score is displayed, the degree of matching of each talent can be easily recognized.

[0030] 2 shows an overview of the configuration of the matching system according to embodiment 1. The matching system is configured, for example, by a matching server 10. The matching server 10 is configured to be able to communicate with each of a large-scale language model server 20, a vector transformation model server 30, an administrator terminal 41, and a human resources terminal 42 (two terminals in FIG. 2 ) via a communication network (including, for example, the Internet).

[0031] 2, the matching system can be configured only by the matching server 10, but may also include other components. For example, the matching system may include any or all of the large-scale language model server 20, the vector conversion model server 30, the administrator terminal 41, and the human resources terminal 42 described above.

[0032] The administrator terminal 41 is a client terminal operated by, for example, an administrator who manages the matching server 10. The talent terminal 42 is a client terminal operated by, for example, each talent. Client terminals operated by users other than these may also be provided.

[0033] In the example of Figure 2, the networks to which the matching server 10 is connected are separated into a network for communicating with the large-scale language model server 20 and the vector conversion model server 30 and a network for communicating with the administrator terminal 41 and the human resources terminal 42, but these may also be the same network, such as the Internet.

[0034] 3 shows an example of the hardware configuration of matching server 10. Matching server 10 has a hardware configuration as a known computer, and includes, for example, calculation means 11, storage means 12, and input / output means 13. The calculation means 11 includes, for example, a processor. The processor can be manufactured using an integrated circuit, ASIC, FPGA, or the like. The storage means 12 includes, for example, a storage medium such as a semiconductor memory device or a magnetic disk device. Some or all of the storage medium may be non-transitory storage media.

[0035] The storage means 12 stores the talent data D1. The storage means 12 may also store a program (not shown). A processor of a computer executes this program, causing the computer to function as the matching server 10 described in this embodiment. That is, the program may cause the computer to function as the matching server 10 or matching system according to this embodiment and execute the matching method according to this embodiment. The matching method may include each step described in relation to this embodiment.

[0036] The input / output means 13 includes, for example, input devices such as a keyboard and a mouse, output devices such as a display and a printer, and communication devices such as a network interface. The communication devices can function as both input devices and output devices. The communication devices can perform wired communication and / or wireless communication.

[0037] Although the hardware configurations of the large-scale language model server 20, the vector conversion model server 30, the administrator terminal 41, and the talent terminal 42 are not illustrated, each has a hardware configuration as a known computer, for example, a configuration similar to the configuration described above for the matching server 10. The storage devices of the large-scale language model server 20, the vector conversion model server 30, the administrator terminal 41, and the talent terminal 42 may store programs (not shown). By executing these programs on a computer processor, each computer may perform the functions of the large-scale language model server 20, the vector conversion model server 30, the administrator terminal 41, and the talent terminal 42 described in this embodiment. In other words, these programs may cause a computer to function as the large-scale language model server 20, the vector conversion model server 30, the administrator terminal 41, and the talent terminal 42 according to this embodiment. It should be noted that the large-scale language model server 20, the vector conversion model server 30, the administrator terminal 41, and the talent terminal 42 do not need to store talent data D1.

[0038] 4 shows an example of the configuration of the talent data D1. The talent data D1 associates, for multiple talents, a talent ID that identifies each talent with information about the talent. The talent information includes the talent's name and information about attributes. The information about attributes includes the attribute name (expressed as a tag), type, number of evaluations, and normalized skill.

[0039] The attribute name is, for example, a representation of the attribute as text data, but may be in a format other than text data. The type indicates the assigner of the attribute, for example, whether the attribute is assigned by the talent himself / herself (personal tag) or by another person (peer tag). Here, "other people" includes, but is not limited to, other talents, individuals not included in the talent, the organization to which the talent belongs, and organizations not directly related to the talent. The number of ratings indicates the number or degree to which other talents have given positive ratings (e.g., "like" operations) for the attribute. The normalization skill is an expression actually used when matching the attribute with project skills. This normalization skill is, for example, text data, but may be in a format other than text data.

[0040] Normalized skills are skills that belong to a set of skills defined by, for example, a public institution. One example is the classification by ESCO (European Skills, Competences, Qualifications and Occupations <https: / / esco.ec.europa.eu / en / classification / skill_main>). The ESCO skill classification defines the names of many skills and the hierarchical relationships between each skill, making it useful for analyzing the skills possessed by human resources.

[0041] However, the normalization skill is not limited to this, and any skill with any expression, content, and format may be used as long as it is in a format that can be commonly associated with a plurality of attributes.

[0042] 5 shows an example of a matching processing screen 100 output by the matching server 10. This matching processing screen 100 is displayed on, for example, the administrator terminal 41. The matching processing screen 100 includes a text input field 110, a skill field 120, a submit button 130, and a result display field 140. The text input field 110 is an input field for accepting input of a sentence expressing the content of the project. In this example, the sentence "I want to create a video that will become popular on video sites" has been input.

[0043] The skill column 120 includes a skill display column 121 , a skill input column 122 , a strength change column 123 , an add button 124 , and a delete button 125 .

[0044] The skill display field 121 includes the name of the project skill and a parameter indicating the importance of the project skill (in this embodiment, this is referred to as "strength," but the name is not limited to this). In this way, the matching server 10 displays each project skill related to the project and the strength of each project skill in the skill display field 121.

[0045] In the example of FIG. 5 , for example, the strength of a project skill named "video creation" is 100% and the strength of a project skill named "social media marketing" is 50%. The currently selected project skill (in this example, "video creation") is displayed at the top of the skill display field 121. The selected project skill can be changed by performing an operation on any project skill in the skill display field 121 (e.g., by clicking with the mouse). That is, for example, when the portion displayed as "content creation" is operated, the matching server 10 accepts the selection of "content creation" and changes the display at the top of the skill display field 121 accordingly.

[0046] When the matching server 10 receives an operation of the delete button 125, it deletes the project skill selected at that time from among the project skills required for the project, and accordingly erases the display from the skill display column 121.

[0047] The skill input field 122 accepts input of a new project skill to be added. When the matching server 10 accepts the operation of the add button 124, the matching server 10 stores the project skill currently displayed in the skill input field 122 as a project skill required for the project, and accordingly adds the display of the project skill to the skill display field 121.

[0048] In this manner, the matching server 10 can accept input to add or delete one or more project skills.

[0049] The strength change field 123 includes a strength change knob 123a, which is used to change the strength of any project skill. The matching server 10 changes the strength of the currently selected project skill in response to an operation (e.g., a drag operation) on the strength change knob 123a. In this way, the matching server 10 can accept input to change the strength of any project skill.

[0050] Note that the GUI for changing the strength of a skill is not limited to this, and it may be possible to directly input a numerical value, or to select from a predetermined number of values ​​using a pull-down list or the like.

[0051] The submit button 130 is used to instruct execution of the matching process after the project skills to be used for matching have been determined. When the submit button 130 is operated, the matching server 10 executes the matching process between the project and the personnel based on the project skills and strength at that time.

[0052] The result display field 140 displays the matching results between projects and human resources. In the example of FIG. 5, the score (total_score) and breakdown (related_tags) of each of four human resources (users) are displayed. For example, for human resource "Mr. A," the highest score of 0.34 is displayed for the attribute "tends to use animated emojis," the next highest score of 0.31 is displayed for the attribute "origin thinking," and so on, with the attributes and their scores displayed in descending order. Note that for ease of illustration, some of the breakdown is omitted in FIG. 5, so the human resource score does not match the sum of the breakdown.

[0053] FIG. 6 shows an example of an attribute display screen 200 output by the matching server 10. This attribute display screen 200 is displayed, for example, on the administrator terminal 41 and the talent terminal 42. In this example, multiple attributes for one talent are displayed as "tags." In this example, each attribute is displayed classified into one of multiple categories ("Special Skills / Strengths," "Hobbies / Interests," and "About Me"), but such a categorization display format is not essential, and categories other than those shown in the figure may be used, or the display may be performed without categorization. Note that, for convenience of illustration, some attributes are omitted from FIG. 6.

[0054] Attributes are displayed in the form of tags 201. As described above, attributes can be assigned by the talent themselves or by others. In the example of FIG. 6, attributes assigned by the talent themselves ("self-assigned tags," e.g., tag 201a "white wine lover") are shown in dark gray, while attributes assigned by others ("peer tags," e.g., tag 201b "AI") are shown in light gray. The display color of each tag can be designed as appropriate. Here, as an example of interpretation, attributes related to peer tags can be said to represent the talent more objectively than attributes related to self-assigned tags, and therefore can be said to be more reliable.

[0055] The attribute display screen 200 includes a plurality of tags 201 and a rating count display 202 for each tag 201. The rating count display 202 indicates the number of positive ratings for that attribute of the human resource. If the number of positive ratings is zero, the number of positive ratings is not displayed on the attribute display screen 200. As an example of interpretation, an attribute associated with a tag having a larger number of positive ratings can be said to better represent the human resource than an attribute associated with a tag having a smaller number of positive ratings, and therefore can be said to be more reliable.

[0056] The number of positive evaluations represents, for example, the number of times other people have made a specific positive evaluation operation, or the number of such other people. A positive evaluation operation is, for example, an operation expressing approval or praise for the tag. More specifically, it may be an operation similar to a "Like" operation on a social networking service (SNS). Such an operation can be input, for example, from the talent terminal 42 via the attribute display screen 200. The talent terminal 42 transmits this operation to the matching server 10. Upon receiving this operation, the matching server 10 increases the number of evaluations for the attribute of the talent in the talent data D1. In this way, the matching server 10 can accept the input of a positive evaluation of one of the attributes of a certain talent (a first talent) from another entity (e.g., a second talent).

[0057] 7 shows an example of a normalized skill statistics screen 300 output by matching server 10 and an enlarged partial view 301 thereof. This normalized skill statistics screen is displayed, for example, on manager terminal 41 and human resource terminal 42. Normalized skill statistics screen 300 displays statistical information on the normalized skills of each human resource for a group consisting of one or more human resources. In the example of FIG. 7 , the total number of each normalized skill is displayed in a format similar to a pie chart, and the total number is represented by the angle range of each region.

[0058] In the example of Fig. 7, the normalized skill statistics screen 300 also displays the hierarchical relationship of the normalized skills. For example, the normalized skills are classified into three hierarchical levels: upper level, middle level, and lower level, and are distinguished by adding "_1," "_2," and "_3" to the end of the skill name, respectively. In the example of the enlarged partial view 301 of Fig. 7, the upper level normalized skill "social skills and communication skills" is associated with the middle level normalized skill "communication skills," etc., which is further associated with the lower level "ability to speak to an audience," etc.

[0059] A specific method for generating such a normalized skill statistics screen 300 can be designed by a person skilled in the art, as appropriate, but one example will be described below. The matching server 10 can acquire hierarchical information indicating the hierarchical relationship between each normalized skill in advance. The hierarchical information can be generated by the matching server 10 or another computer based on, for example, the skill classification of ESCO. The hierarchical information may also be generated manually based on, for example, the skill classification of ESCO.

[0060] Next, the matching server 10 accepts input of information identifying the talent for which statistical information is to be displayed. This information may include, for example, one or more talent IDs, or may include information identifying the group to which each talent belongs. Next, the matching server 10 refers to the talent data D1 and calculates the total number of each normalized skill (corresponding to a lower hierarchical level) related to one or more talents to be displayed. Furthermore, based on the above hierarchical level information, the matching server 10 similarly calculates the total number of higher-level normalized skills. Then, the matching server 10 generates a normalized skill statistics screen 300 based on the total number of normalized skills for each hierarchical level.

[0061] The operation of the matching system having the above configuration will be described below.

[0062] 8 shows an example of the flow of processing for assigning attributes to human resources, which is executed by the matching server 10. The processing in FIG. 8 is started in response to a predetermined instruction (for example, an operation by a human resource to assign an attribute to itself or another human resource).

[0063] 8, first, matching server 10 acquires attributes to be assigned to a specific talent (step S1). The attributes are acquired, for example, from administrator terminal 41, talent terminal 42, or another computer. For example, a talent can operate his / her own talent terminal 42 to display attribute display screen 200 relating to himself / herself or another talent, and input new attributes to be assigned to the talent via this screen.

[0064] More precisely, the matching server 10 performs the following process when assigning a new attribute to a certain person (hereinafter referred to as a first person): That is, the matching server 10 can receive input from the first person to assign a new attribute to the first person (principal person). In this way, when a new attribute is assigned to the first person (principal person) by the first person, the type of the attribute is a personal tag. Furthermore, the matching server 10 can receive input from an entity different from the first person (e.g., a second person) to assign a new attribute to the first person. In this way, when a new attribute is assigned to the first person by the second person, the type of the attribute is a peer tag.

[0065] The human resource terminal 42 accepts the input of the attributes and transmits them to the matching server 10, which receives them and acquires the attributes.

[0066] Next, the matching server 10 associates one or more normalized skills with each of the acquired attributes (steps S2 to S7 below). A specific example of this process will be described below, but the specific implementation method is not limited to this.

[0067] The matching server 10 inputs the attribute names into the large-scale language model (step S2) by, for example, transmitting the attribute names to the large-scale language model server 20.

[0068] The large-scale language model server 20 stores a large-scale language model, and can input a language into the large-scale language model to obtain its output. The large-scale language model is a trained model that has been trained using, for example, a large amount of text data so as to output an appropriate response in natural language in response to an input in natural language (more typically, natural sentences), and various known models can be used. Known examples include, but are not limited to, BERT, GPT-3, GPT-4, and PaLM. The large-scale language model server 20 transmits the output from the large-scale language model to the matching server 10.

[0069] Here, when inputting attributes into the large-scale language model, the matching server 10 may additionally input information other than the attribute name. The additional information may include an explanatory statement that the attribute represents the ability of a human resource, a command statement to output one or more skills related to the attribute that are useful for the project, etc. The additional information input here may be fixed and input in advance to the matching server 10.

[0070] Next, the matching server 10 acquires the skills output from the large-scale language model (step S3). This is done, for example, by receiving information transmitted from the large-scale language model server 20. Hereinafter, the skills acquired in step S3 will be referred to as "provisional skills" to distinguish them from project skills and normalized skills.

[0071] Next, the matching server 10 transmits the name of the provisional skill to the vector conversion model server 30 (step S4). The vector conversion model server 30 stores a trained model and can convert linguistic expressions such as names into vectors (e.g., 768 dimensions). Such a vector conversion model server 30 can be configured using, for example, paraphrase-multilingual-mpnet-base-v2 (https: / / huggingface.co / sentence-transformers / paraphrase-multilingual-mpnet-base-v2), but is not limited to this.

[0072] The vector conversion model server 30 transmits the vector representing the provisional skill (the converted vector) to the matching server 10, which receives and acquires it (step S5). In this way, the provisional skill is vectorized. That is, a multi-dimensional vector is acquired based on the name of the provisional skill.

[0073] Next, the matching server 10 selects from the normalized skills a vector similar to the received vector (vector representing the provisional skill) (step S6). It is preferable that the normalized skill has been converted in advance into a vector of the same dimension as the vector representing the attribute by processing similar to steps S4 and S5; if this is not the case, a similar processing may be performed in step S6. A specific method for calculating the similarity between the vector representing the provisional skill and the vector representing the normalized skill can be designed by a person skilled in the art based on known technology, but it can be calculated based on cosine similarity, for example. The matching server 10 selects the normalized skill that gives the highest similarity.

[0074] Next, the matching server 10 stores the selected normalized skills in the talent data D1 in association with the attributes (step S7). If multiple provisional skills are acquired for one attribute, a normalized skill can be selected for each provisional skill, and in this case, multiple normalized skills are associated with one attribute. In this way, the process of FIG. 8 ends.

[0075] This processing can reduce output variations caused by large-scale language models. Large-scale language models, by their nature, may generate similar but slightly different language expressions as outputs for the same input. Even in such cases, by selecting and using similar normalization skills, it is possible to absorb slight variations and treat them as the same normalization skill, thereby improving matching accuracy.

[0076] 9 shows an example of the flow of the matching process executed by matching server 10. The process in FIG. 9 is started in response to a predetermined instruction (for example, a process start operation input from administrator terminal 41).

[0077] In the process of Figure 9, the matching server 10 first acquires natural sentences (text data) that represent the content of the project (step S11). An example of the text data is a single sentence such as "I want to create a video that will be popular on video sites," but of course, the text data is not limited to this and may be a sentence consisting of multiple sentences. Furthermore, while natural sentences are used in this embodiment, in modified examples, expressions that do not form natural sentences (such as a list of words) may also be used. It is preferable that the text data clearly represent the content of the project.

[0078] While any method for acquiring text data can be designed, an example is shown below. The matching server 10 displays the text input field 110 of the matching processing screen 100 on the administrator terminal 41. Furthermore, the matching server 10 or the administrator terminal 41 may display a message prompting the user to input text data representing the content of the project. The administrator terminal 41 may accept the input via the text input field 110 of the matching processing screen 100 and transmit it to the matching server 10. The input at the administrator terminal 41 may be input via a keyboard, or may be the specification of information indicating the location of text data previously input and stored in the administrator terminal 41. Alternatively, text data may be previously stored in the matching server 10 (e.g., by reusing previous text data), and information indicating the location of the stored text data may be transmitted from the administrator terminal 41 to the matching server 10.

[0079] Next, the matching server 10 identifies information about project skills based on the text data (step S12). The information about project skills includes, for example, for one or more project skills, a name (character string) representing the project skill and the strength of the project skill.

[0080] 10 shows the details of step S12. In step S12, the matching server 10 first inputs information including text data representing the content of the project into the large-scale language model (step S121). This input is performed, for example, by transmitting the text data to the large-scale language model server 20.

[0081] The large-scale language model server 20 stores a large-scale language model, and can input a language into the large-scale language model to obtain its output. The large-scale language model server 20 transmits the output from the large-scale language model to the matching server 10.

[0082] Here, when inputting text data into the large-scale language model, the matching server 10 may additionally input information other than the text data. The additional information may include an explanatory statement that the text data describes the content of a project, a command to identify and output one or more project skills required for the project, a command to output a "strength" indicating the degree to which each project skill is required for the project as a numerical value associated with each project skill, etc. The additional information input here may be fixed and input in advance to the matching server 10.

[0083] Next, the matching server 10 obtains one or more project skills and a strength associated with each project skill from the large-scale language model (step S122), for example, by receiving information transmitted from the large-scale language model server 20. In this way, the matching server 10 can determine the project skills and the strength of each project skill based on the text data.

[0084] Next, the matching server 10 outputs the received project skills and strengths, and accepts operations to change the project skills (step S123). Operations to change the project skills can be accepted via the skill field 120 on the matching processing screen 100 of Fig. 5, and include, for example, the following operations: - Adding a project skill - Deleting a project skill - Changing the strength of the project skill (for example, increasing or decreasing) Note that, as a modified example, step S123 can be omitted.

[0085] Next, the matching server 10 accepts an input of an operation to confirm the project skills (step S124). For example, this operation is accepted as an operation on the submit button 130 on the matching processing screen 100 of Fig. 5. In this way, the matching server 10 identifies information related to the project skills based on the text data, and the processing of step S12 of Fig. 9 ends here.

[0086] 9, after step S12, the matching server 10 acquires information about attributes (step S13). For example, the matching server 10 refers to the talent data D1 and acquires one or more attributes for each of a plurality of talents.

[0087] Next, the matching server 10 calculates a score for each of the personnel based on each of the project skills and each of the attributes (step S14).

[0088] FIG. 11 shows the details of step S14. In step S14, the matching server 10 first vectorizes the project skill (step S141). That is, based on the name of the project skill (e.g., "video creation"), a multi-dimensional (e.g., 768-dimensional) vector is obtained. This process can be performed, for example, by the same process as steps S4 and S5 in FIG. 8.

[0089] Next, the matching server 10 vectorizes the normalized skills for each of the talent attributes (step S142). That is, a multi-dimensional (e.g., 768-dimensional) vector is obtained based on the name of the normalized skill. This process can be performed, for example, by processes similar to steps S4 and S5 of FIG. 8. Note that if the results of a previously performed vectorization of the normalized skills are stored in the matching server 10 (e.g., talent data D1) or another computer, step S142 can be performed simply by obtaining those results.

[0090] Next, the matching server 10 calculates a score based on the similarity between each project skill and the attributes of the human resource (step S143). Here, the score can be calculated based on the normalized skill of the attribute. If multiple normalized skills are associated with one attribute, the most appropriate normalized skill can be selected and used. The most appropriate normalized skill is, for example, the one with the highest similarity (e.g., cosine similarity) between the project skill and the attribute.

[0091] A similarity (cosine similarity, as an example, is used below) is calculated between a normalized skill (or one of multiple normalized skills) associated with an attribute and a project skill, and a score for the combination of the attribute and the project skill is calculated based on this cosine similarity. A method for calculating the score can be designed appropriately by those skilled in the art, but as a non-limiting example, the score can be calculated using the following formula: Score(s,t) = CosineSimilarity * Strength * (1 + w_reaction * reaction_count ) * (1 + w_peer * is_peer) ... (Formula 1) where Score(s,t) is the score for the combination of project skill s and attribute t, CosineSimilarity is the cosine similarity between the project skill and the normalized skill, Strength is the strength of the project skill, reaction_count is the number of ratings associated with the attribute, w_reaction is the weight of the number of ratings, is_peer is a value indicating whether or not the tag is a peer tag (for example, 0 for a self tag and 1 for a peer tag), and w_peer is the weight for whether or not the tag is a peer tag.

[0092] According to the above formula 1, the matching server 10 can increase the score of a peer tag by the value of the variable is_peer, assuming all other variables are the same, to a higher score than the score of a personal tag. This allows more objective attributes to obtain a higher score, improving the accuracy of matching. Note that the specific formula for increasing the score of a peer tag to a higher score than the personal tag is not limited to the above formula 1 and can be designed appropriately by those skilled in the art. Note that, as a modified example, a calculation formula that does not use the variable is_peer may be used. In that case, whether the tag is a peer tag or a personal tag is not taken into consideration.

[0093] Furthermore, according to Equation 1, the matching server 10 can calculate the score of each attribute based on the number of evaluations for that attribute using the value of the variable reaction_count. Therefore, for example, an attribute that has received many positive evaluations from others will have a higher score. This results in a higher score for more objective attributes, improving matching accuracy. Alternatively, a calculation formula that does not use the variable reaction_count may be used. In this case, positive evaluations will not be taken into account.

[0094] Furthermore, according to Equation 1, the matching server 10 can calculate the score of each attribute (and thus the score of each human resource) based on the strength of each project skill using the value of the variable Strength. This allows the calculation of a score that emphasizes project skills that are more relevant to the target project, improving the accuracy of matching. As a modified example, a calculation formula that does not use the variable Strength may be used. In this case, all project skills are considered with a uniform weight.

[0095] Furthermore, according to Equation 1, the variable CosineSimilarity represents the cosine similarity between the project skill and the normalized skill, so the matching server 10 can calculate the score of each attribute based on the normalized skill associated with the attribute using the value of this variable. Note that, as a modified example, a similarity other than cosine similarity may be used.

[0096] Next, the matching server 10 calculates a score for each attribute of each human resource (step S144). The score for an attribute is calculated, for example, as the sum of the scores for that attribute and each project skill. That is, Score(t) = Σ_skill { Score(s,t)} where Score(t) is the score for attribute t, Score(s,t) is the score for the combination of project skill s and attribute t as described above, and Σ_skill represents the operation of taking the sum for all project skills.

[0097] Next, the matching server 10 calculates the score of the talent (step S145. The talent score can be calculated based on the scores of each attribute of the talent, for example, as the sum of the scores of each attribute. That is, Score_Person = Σ_tag { Score(t)} where Score_Person is the talent score, Score(t) is the score of attribute t as described above, and Σ_tag represents the operation of taking the sum for all attributes. In this way, scores are calculated for all talents, and step S14 in FIG. 9 is completed.

[0098] 9, after step S14, the matching server 10 ranks and outputs the plurality of talents based on the score of each talent (step S15). At this time, the score of each talent is output as a numerical value. This output is displayed, for example, in the result display field 140 of the matching processing screen 100 shown in FIG. 5. As described above, the matching processing screen 100 is displayed on a client terminal such as the administrator terminal 41, and the client terminal outputs the score of each talent as a numerical value.

[0099] 5, the user column in the result display column 140 displays Mr. A as the top talent (the talent with the highest score), Mr. B as the second talent (the talent with the next highest score), followed by Mr. C and Mr. D. In addition to showing the ranking, the total_score column displays the score of each talent, so that, for example, Mr. A's score is about 1.688, making it easy to see how much higher it is compared to the scores of the other talents that are also displayed.

[0100] The related_tags column also displays a breakdown of the score, displaying each attribute in order according to its score. For example, in the case of Person A, the attribute "tends to use animated emojis" has the highest score of 0.34 and is displayed first (far left). The attribute "origin thinking" has the next highest score of 0.31 and is displayed second (second from the left). This is followed by "easy-to-read documents" and "operation design." By ranking not only the talent's score but also each of the talent's attributes and displaying them together with the score, it is easy to understand why the talent has a high score for that project. In this way, the matching system according to this embodiment makes it easier to evaluate the ranking of matching results.

[0101] [Other Embodiments] Those skilled in the art can arbitrarily add, modify, or delete components in each of the above-described embodiments within the scope of the present invention. For example, the entire hardware configuration of the matching system shown in Figure 2 can be configured using a single computer, or can be configured using more computers than those shown in Figure 2. In such cases, those skilled in the art can appropriately design which computer executes each step described in Figures 8 to 11.

[0102] 2 shows two personnel terminals 42, the number of personnel terminals 42 may be one, or three or more. Also, a plurality of personnel may share one personnel terminal 42.

[0103] In the first embodiment described above, normalized skills are used when calculating the scores of attributes, but it is also possible to modify the system so that normalized skills are not used for some or all of the attributes. If normalized skills are not used for any attributes, steps S2 and S3 in Fig. 8 can be omitted, and the attributes themselves can be used instead of the normalized skills in the subsequent processing.

[0104] The order of the steps shown in each figure can be changed as appropriate. For example, the order of steps S141 and S142 in Figure 11 can be swapped.

[0105] DESCRIPTION OF SYMBOLS 10...Matching server (matching system) 20...Large-scale language model server 30...Vector conversion model server 41...Administrator terminal 42...Human resource terminal 100...Matching processing screen 110...Text input field 120...Skill field 121...Skill display field 122...Skill input field 123...Strength change field 123a...Strength change knob 124...Add button 125...Delete button 130...Submit button 140...Result display field 200...Attribute display screen 201 (201a, 201b)...Tag 202...Evaluation number display 300...Normalized skill statistics screen 301...Partially enlarged view D1...Human resource data

Claims

1. A matching system that performs matching processing between human resources and projects, comprising the steps of: acquiring text data that represents the content of the project; identifying one or more project skills related to the project based on the text data; acquiring one or more attributes for each of a plurality of human resources; calculating a score for each human resource based on each of the project skills and each of the attributes; ranking the plurality of human resources based on each human resource's score and outputting the score for each human resource as a numerical value.

2. The matching system according to claim 1, further comprising: calculating a score for each attribute of each talent; and calculating a score for each talent based on the score for each attribute of the talent.

3. The matching system according to claim 1, further determining the strength of each project skill based on the text data, and calculating the score of each talent based on the strength of each project skill.

4. The matching system according to claim 2, wherein the matching system receives input from a first person to assign a new attribute to the first person, receives input from a second person to assign a new attribute to the first person, and makes the score of the attribute assigned to the first person by the second person higher than the score of the attribute assigned to the first person by the first person.

5. The matching system of claim 2, wherein the matching system receives input of positive evaluations from the second talent regarding any of the attributes of the first talent, and calculates a score for each attribute based on the number of positive evaluations for that attribute.

6. The matching system of claim 1, wherein the matching system displays each project skill associated with the project and accepts input to add or remove one or more project skills.

7. The matching system according to claim 3, wherein the matching system displays the strength of each project skill, and accepts input to change the strength of any of the project skills.

8. The matching system of claim 2, wherein the matching system associates one or more normalized skills with each attribute, and calculates a score for each attribute based on each normalized skill associated with that attribute.

9. The matching system of claim 2, wherein the matching system associates one or more normalized skills with each attribute, obtains hierarchical information representing a hierarchical relationship between each normalized skill, and calculates the total number of the normalized skills associated with one or more of the human resources based on the hierarchical information.

10. The matching system according to claim 1, wherein the matching system inputs information including the text data into a large-scale language model, and obtains the one or more project skills from the large-scale language model.

11. The matching system according to claim 1, further comprising a client terminal, wherein the client terminal outputs the score of each candidate as a numerical value.

12. A program that causes a computer to function as the matching system according to claim 1.

13. A matching method for performing a matching process between human resources and projects, comprising the steps of: a computer acquiring text data representing the content of the project; a computer identifying one or more project skills related to the project based on the text data; a computer acquiring one or more attributes for each of a plurality of human resources; a computer calculating a score for each of the human resources based on each of the project skills and each of the attributes; and a computer ranking and outputting the plurality of human resources based on each human resource's score, and outputting each human resource's score as a numerical value.

Citation Information

Patent Citations

  • Structured job search engine

    JP2012510116A

  • Stairs made of air layered plates connecting to a second-floor tunnel made of air layered plates to prevent stampede accidents

    KR1020230161380A