Information processing method, program, and information processing device
The directed graph approach visualizes skill relationships and proficiency levels, addressing the challenge of understanding skill interdependencies and gaps, enhancing skill assessment efficiency.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-26
- Publication Date
- 2026-03-10
AI Technical Summary
Existing technologies struggle to visualize and confirm the relationships between various skills, making it difficult to understand these relationships effectively.
An information processing method that generates a directed graph by hierarchizing nodes representing skills, using edges to connect them and assign weights based on skill relationships, allowing for the visualization of skill interdependencies.
Enables easy understanding of skill relationships and proficiency levels, facilitating intuitive assessment of skill gaps and requirements for specific fields.
Smart Images

Figure 2026041021000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to an information processing method, a program, and an information processing device. [Background technology]
[0002] Conventionally, there is known a technique for evaluating skills using a radar chart. For example, Patent Document 1 discloses a technique for evaluating skills using a radar chart that visualizes the comparison between a current level and a target level. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Publication No. 2017-123123 Summary of the Invention [Problem to be solved by the invention]
[0004] It is possible to evaluate an engineer's skills using indicators such as coding ability and design ability, but there was a need to visualize and confirm the relationships between skills.
[0005] Therefore, the disclosed technology has been developed in consideration of these circumstances, and aims to provide technology that visualizes the relationships between skills and makes it possible to easily understand such relationships. [Means for solving the problem]
[0006] An information processing method that is one aspect of the disclosed technology includes an information processing device acquiring each node representing each skill of an engineer, hierarchizing each node based on the relationship between the skills, generating a directed graph, and outputting the directed graph. [Effects of the Invention]
[0007] According to the present invention, by generating a directed graph based on the skills possessed by a user, the relationships between skills can be easily understood using the directed graph. [Brief explanation of the drawings]
[0008] [Figure 1] FIG. 1 is a diagram showing an example of the configuration of an information processing system according to an embodiment of the present invention. [Figure 2] FIG. 1 is a diagram illustrating an example of a directed graph according to an embodiment of the present invention. [Figure 3] FIG. 1 is a block diagram illustrating an example of a server according to an embodiment of the present invention. [Figure 4] A flowchart showing an example of processing of the information processing apparatus according to the present embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0009] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.
[0010] <System Overview> Fig. 1 is a diagram showing an example of the configuration of an information processing system 1 according to an embodiment of the present invention. In the example shown in Fig. 1, the information processing system 1 illustratively includes an information processing device 10, an information processing device 20, a server 30, and a network N. Furthermore, the number of the information processing device 10, the information processing device 20, and the server 30 may be one or more.
[0011] The information processing system 1 is used, for example, by a user (hereinafter also referred to as an administrator) who generates questions to measure the skills required to generate the directed graph 50 related to the skills of engineers described below, a user (hereinafter also referred to as an examinee) who answers the questions, and a user (hereinafter also referred to as an evaluator or company) who evaluates the answers to the questions.
[0012] The administrator and the evaluator may be the same user. When a user who answers questions or evaluates the answer results to questions is referred to as a "company," the "company" may include at least one of a company that wants to hire engineers and a company that wants to measure the skills of its in-house engineers.
[0013] The information processing system 1 generates a directed graph 50 related to a user's skills, for example, in response to a request from the user. The user may be, for example, a company that wants to hire an engineer, a company that wants to measure the skills of its in-house engineers, an administrator, an evaluator, or the like.
[0014] 2 is a diagram illustrating an example of a directed graph 50 according to an embodiment of the present disclosure. The directed graph 50 is generated using edges 52 connecting nodes 51 as components. Skills are assigned to each node 51, and each node 51 represents the concept of each skill (hereinafter, the skills assigned to a node 51 are also referred to as skill tags 53). Each node 51 has skill tag information related to each skill tag 53, which will be described later, and each edge 52 has edge information, which will be described later.
[0015] The user can understand the relationships and inclusion relationships between the skills from the directed graph 50 generated based on the skill tags 53 and skill tag information assigned to the nodes 51, and the edges 52 and edge information.
[0016] For example, upon request from an administrator or an evaluator, the information processing system 1 generates a directed graph 50 with a skill tag 53 attached, or generates coding questions in a specified programming language to measure the skills of an engineer.
[0017] The predetermined programming language includes at least one of scripting languages such as JavaScript (registered trademark), Python, and C, and well-known programming languages such as Go, Swift, and Kotlin (registered trademark). Note that the skill tags 53 required to generate the directed graph 50 are not limited to the skills of the engineer. Furthermore, the questions for measuring the engineer's skills are not limited to coding questions, and may be multiple-choice and / or written questions that test skills, or questions that can be answered using a drawing tool.
[0018] The information processing system 1 provides the generated digraph 50 and / or questions to the examinee or the evaluator. For example, the information processing system 1 provides the examinee with an environment in which he or she can check the digraph 50 online and an environment in which he or she can answer the questions, and the evaluator with an environment in which he or she can check the digraph 50 online.
[0019] The information processing device 10 is an information processing device used by an examinee when answering questions for skill measurement. The information processing device 10 is, for example, a personal computer, a smartphone, a tablet terminal, etc. The information processing device 10 acquires questions via a network N and presents them to the examinee. The information processing device 10 also outputs the contents of the examinee's answers to the questions to at least one of the information processing device 20 and the server 30.
[0020] An application program (app) for using an engineer skill measurement service (hereinafter also referred to as the "service") for which the server 30 provides questions may be installed in the information processing device 10.
[0021] This application causes the information processing device 10 to execute at least a part of the processing for displaying a directed graph 50 relating to the skills of engineers, which is disclosed in the embodiment described below, in the present service provided by the server 30. By executing this application, the information processing device 10 may access the server 30 and transmit and receive information used to execute the application.
[0022] The information processing device 20 is an information processing device used by an evaluator or a company, and is, for example, a personal computer, a smartphone, a tablet terminal, or the like.
[0023] The information processing device 20, through user input, acquires requests for generating questions for measuring an engineer's skills, or acquires requests for displaying a default directed graph 50 or a directed graph 50 associated with the skills of a specific user, and outputs these requests to the server 30.
[0024] The information processing device 20 acquires, via the network N, from the server 30, the directed graph 50 corresponding to the request, the questions, or a list of selectable questions.
[0025] The information processing device 20 may output the directed graph 50 acquired from the server 30 to the information processing device 10 via the network N.
[0026] The information processing device 20 may acquire the contents of the answers given by the examinee to the questions from the information processing device 10 or the server 30 via the network N.
[0027] The server 30 is an information processing device used by an administrator or the like, and may be a general-purpose computer or the like. The server 30 provides the present service disclosed in this embodiment. For example, the server 30 generates a directed graph 50 related to the skills of engineers.
[0028] The server 30 outputs the generated directed graph 50 to at least one of the information processing device 10 and the information processing device 20 via the network N.
[0029] The server 30 may acquire the contents of the answers given by the examinee to the questions from the information processing device 10 via the network N, and output the contents to the information processing device 20. The server 30 may evaluate the contents of the answers, for example, by scoring or correcting them, and output the evaluated contents of the answers to at least one of the information processing device 10 or the information processing device 20. The detailed processing by the server 30 will be described later.
[0030] The network N is realized by, for example, a network such as the Internet or a mobile phone network, a LAN (Local Area Network), or a network that combines these.
[0031] <Server configuration> 3 is a block diagram illustrating an example of a server 30 according to one embodiment of the disclosure. The server 30 includes one or more processors (e.g., CPUs) 310, one or more network communication interfaces 320, a storage device (storage unit) 330, and one or more communication buses 350 for interconnecting these components.
[0032] The server 30 may optionally include a user interface 340. The user interface 340 includes a display and / or an input device (such as a keyboard and / or a mouse or some other pointing device).
[0033] Storage device 330 may be, for example, a high-speed random access memory (primary storage) such as DRAM, SRAM, or other random access solid-state storage device, or may be a non-volatile memory (secondary storage) such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid-state storage devices.
[0034] Furthermore, the storage device 330 may be a non-transitory computer-readable recording medium that stores a program, etc. Furthermore, the storage device 330 may be either a main storage device (memory) or an auxiliary storage device (storage), or may include both.
[0035] Another example of storage device 330 may be one or more storage devices located remotely from processor 310. In some embodiments, storage device 330 stores programs, modules, and data structures, or a subset thereof, that are executed by processor 310.
[0036] The storage device 330 is a storage unit that stores data, programs, etc. used by the information processing system 1. For example, the storage device 330 stores questions given to examinees, correct answers to the questions, skill tags associated with the questions, evaluation criteria, and answers to the questions.
[0037] The storage device 330 also stores, for example, the generated directed graph 50, each node 51, each skill tag 53, each edge 52, edge information, and the content of the answers submitted by the examinees, which are elements for generating the directed graph 50. The storage device 330 stores, for example, each node 51, each skill tag 53, each edge 52, and the like included in the directed graph 50 constructed for each user who answered the questions, and stores each user identification information in association with the skill tag of the skill possessed by each user who answered the questions in the directed graph 50.
[0038] Each skill tag 53 has skill tag information, which is stored in the storage device 330. The skill tag information includes a definition of each skill representing each skill tag 53, the skill ID of each skill, the ID of each node 51 to which each skill is assigned (hereinafter also referred to as a node ID), the question to which each skill is associated, information for determining whether each skill tag 53 is a skill tag 53 located at the end of a directed graph, information set by instructions from a user, etc. For example, when each skill is assigned to each node 51, the skill ID and node ID are linked and stored in the storage device 330 as skill tag information.
[0039] The method of generating skill tags 53 corresponding to each skill is arbitrary, and for example, the administrator may set a definition of a skill representing skill tag 53 in skill tag information, and generate skill tag 53. It is desirable that the skill representing skill tag 53 be defined as an independent single concept, and for example, a skill related to one module in one programming language selected from various programming languages can be represented as skill tag 53.
[0040] Each edge 52 has edge information, which is stored in the storage device 330. The edge information includes the edge ID of each edge, the connection relationship of each node 51 indicating whether or not each node 51 is connected by an edge, the hierarchical relationship between each node 51 indicating the relationship when each node 51 is connected by an edge, information on the weight 54 indicating the degree of contribution of each node 51 (hereinafter also referred to as "weight information"), information set by instructions from a user, etc.
[0041] The edge information stores the relationship between the edge source node 51 and the edge destination node 51, and the weight 54 corresponding to the relationship. The method of defining the relationship between the nodes 51 is arbitrary, and for example, the administrator can define it in the edge information. For example, when the nodes 51 are connected by an edge, an edge ID is linked to each node ID, and the hierarchical relationship between the nodes 51 is assigned to the edge ID, and the edge information is stored in the storage device 330.
[0042] The processor 310 executes a program stored in the storage device 330 to control, for example, the processing executed by the information processing unit 312 .
[0043] The information processing unit 312 includes, for example, an acquisition unit 313 , a directed graph generation unit 314 , an association unit 315 , an output unit 316 , a search unit 317 , and a proposal unit 318 .
[0044] The acquisition unit 313 acquires each node 51 representing each skill of an engineer. The nodes 51 acquired by the acquisition unit 313 are assigned skill tags 53 representing each skill, and for example, the acquisition unit 313 acquires each node 51 stored in the storage device 330 in response to an instruction from a user.
[0045] The directed graph generating unit 314 generates a directed graph 50 by hierarchizing each node 51 acquired from the acquiring unit 313 based on the relationships between skills.
[0046] For example, the directed graph generation unit 314 generates a hierarchical directed graph 50 by connecting the start node 51, the end node 51, and the branching node 51 therebetween with edges 52 based on edge information defined about the relationship between skills corresponding to the acquired node 51. Note that if there are multiple nodes next to a certain node 51, this indicates that the node 51 has branched, and the more skills corresponding to each of the next nodes 51 are acquired, the greater the proficiency in the skill corresponding to the certain node.
[0047] The output unit 316 outputs the directed graph 50 generated by the directed graph generation unit 314. The output unit 316 outputs, for example, to the information processing device 10 or the information processing device 20, information about the generated directed graph 50 and the skill tags 53 assigned to the nodes 51 constituting the directed graph 50.
[0048] Through the above process, the nodes 51 are hierarchized based on the relationships between the skills, and the directed graph 50 is generated, thereby making it possible to visualize the relationships between the skills corresponding to the nodes 51. For example, it becomes possible for the user to easily understand that in order to have a specific skill, it is necessary to acquire the skill of a node in a lower layer of that skill. Note that if the acquisition unit 313 is unable to acquire a node 51 or if multiple nodes 51 are not acquired, for example, the acquisition unit 313 may instruct the directed graph generation unit 314 not to generate the directed graph 50.
[0049] The directed graph generating unit 314 may assign a predetermined weight 54 to each edge 52 of the directed graph 50 based on the relationship between the skill of the node 51 at the edge destination and the skill of the node 51 at the edge source.
[0050] The directed graph generation unit 314 assigns a predetermined weight 54 to each edge 52 based on information about the weight 54 acquired from each edge information. For example, the predetermined weight 54 may be set according to the degree of contribution of a skill corresponding to a lower node to a skill corresponding to a higher node.
[0051] Through the above processing, the directed graph generation unit 314 assigns a predetermined weight 54 to each edge 52 connecting each node 51, thereby establishing a relationship between each node 51, and based on each weight 54, each node 51 at the source of the edge can represent the degree of contribution or contribution rate of each node 51 at the destination of the edge.
[0052] The weight 54 of each edge 52 is set based on the edge information corresponding to the skill tag information, and the weight 54 may or may not be set according to each node 51. The method of assigning the weight 54 is arbitrary, and for example, the operator can assign the weight 54 by defining it in the edge information.
[0053] The associating unit 315 may associate a predetermined question with the node 51, acquire the user's answer to the question from the acquiring unit 313, and if the answer satisfies a predetermined criterion, associate the skill of the node 51 associated with the question with the user.
[0054] For example, when there is a relationship between question A and skill A, the associating unit 315 associates question A with the node 51 corresponding to skill A. The questions associated by the associating unit 315 are, for example, questions about an engineer's coding skills, knowledge, system design, etc.
[0055] For example, if the associating unit 315 determines that the relevance between a skill tag 53 and a question is high based on the experience of the administrator, the associating unit 315 associates the skill tag 53 with the question. Note that the method for associating a skill tag 53 with a question is arbitrary, and for example, the administrator may associate them. The number of questions that can be associated with a skill tag 53 is arbitrary.
[0056] When the user answers the question, the acquisition unit 313 acquires the user's answer to the question, and if the association unit 315 determines that the answer acquired by the acquisition unit 313 satisfies a predetermined criterion, it associates the skill tag 53 associated with the predetermined question with the user. For example, the predetermined criterion includes answering the predetermined question correctly.
[0057] The directed graph generating unit 314 may generate the directed graph 50 based on the nodes 51 representing the skill tags 53 associated with the users acquired from the associating unit 315 .
[0058] By the above process, the user is prompted to answer questions, and based on the answer results, a directed graph 50 can be generated from nodes 51 and edges 52 that represent skill tags 53 of the skills possessed by the user.
[0059] As a result, the skills possessed by the user and the relationships between those skills can be intuitively understood from the directed graph 50 of the skills of the engineer associated with the user who answered the question. Note that the directed graph 50 corresponding to the skills possessed by a specific user may be a directed graph generated only by the skills possessed by the user, or may be a directed graph in which the skills possessed by the user are visualized by highlighting nodes corresponding to the skills possessed by the user in a default directed graph. Note that the highlighting of the nodes may be performed using at least one of a color, a bold line, a background color, etc.
[0060] Furthermore, from the directed graph 50 generated based on the answer results, the user can intuitively understand that an engineer who possesses a certain set of skills is skilled enough to be an engineer in a certain field, and that in another field, if an engineer does not possess the set of skills that make up that field, he or she is insufficient in that field, and from the skill tags 53 associated with the questions, the user can intuitively understand the relationships between skills based on the directed graph 50.
[0061] The questions associated by the associating unit 315 are not limited to coding questions, but may be multiple choice and / or written questions, or questions to be answered using a drawing tool. For example, the associating unit 315 may associate skill tags 53, which are required to generate the directed graph 50, with multiple choice questions that test knowledge.
[0062] Furthermore, when the problems associated by the associating unit 315 include a problem regarding the coding skills of an engineer, the problem may include a coding problem using one programming language selected from various programming languages. For example, when the problems associated by the associating unit 315 include a problem regarding the knowledge of an engineer, the problem may include a problem regarding knowledge of at least one of PCs, servers, cloud computing, security, networks, databases, web technology, and artificial intelligence. For example, when the problems associated by the associating unit 315 include a problem regarding system design by an engineer, the problem may include a problem regarding at least one of requirements definition, basic design, external design, functional design, internal design, and detailed design.
[0063] The acquisition unit 313 may acquire a measurement range of the engineer's skill. For example, the acquisition unit 313 acquires a question associated with the skill tag 53 by the association unit 315 based on the skill tag 53 included in the acquired measurement range.
[0064] By the above process, when a company wants to know whether an engineer possesses a specific skill when having a user answer questions, the company can limit the range of questions to be posed in order to measure the specific skill. Note that the method of acquiring the measurement range of an engineer's skill is arbitrary. For example, the user may be prompted to select a skill tag 53 that the company wants to measure from multiple skill tags 53, and the acquisition unit 313 may acquire questions associated with the selected skill tag 53 and skill tags 53 similar to the selected skill tag 53.
[0065] The acquisition unit 313 outputs the node 51 selected based on the acquired measurement range as the first node 51, and the output unit 316 outputs the question associated with the first node 51 as the first question to the information processing device 20 used by the user.
[0066] Then, based on the user's answer to the first question, the associating unit 315 selects at least one node 51 different from the first node 51 from among the nodes 51 associated with the first node 51, and sets the question associated with the at least one node 51 as the second question. The output unit 316 outputs the second question to the information processing device 20.
[0067] For example, if there is another skill that is required to acquire a certain skill, it is preferable to ask whether the other skill has been acquired. Therefore, when the associating unit 315 determines that the first node 51 has the other skill that is required for the skill represented by the skill tag 53 assigned to the first node 51, the associating unit 315 may output, as the second question, a second question associated with the skill tag 53 that represents the other skill to the processing device. Note that the determination of whether there is another skill that is required to acquire a certain skill is made based on determination information included in the edge information stored in the storage device 330. Note that the determination information indicates whether the skill of the edge destination node is required for the edge source node, and may be defined by, for example, an administrator.
[0068] The above process makes it possible to dynamically provide a plurality of different questions to the user, without requiring the company to select the questions to be provided to the user, and to realize an approach similar to item response theory or item response theory.
[0069] Furthermore, for example, the company may assign only "Frontend" as information regarding skills, and then the user answers questions that have been assigned skill tags 53 associated with "Frontend." Based on the answer results, it is possible to understand from the skill tags 53 associated with the user from the directed graph 50 that, as an engineer with skills related to Frontend, the user has high proficiency in some skills but low proficiency in other skills.
[0070] Item response theory (ITE) is a theory for measuring user characteristics, the difficulty of evaluation items, and discrimination power based on responses to a group of evaluation items. It can estimate ability scores and difficulty parameters, check how well the data fits the model, and examine the appropriateness of evaluation items. In addition to measuring individual ability scores, it can also probabilistically determine the difficulty of questions from discrete results such as correct or incorrect evaluation items.
[0071] The node 51 associated with a predetermined problem may include a terminal (end point) node 51 of the directed graph 50. When associating a problem with a skill tag 53, the associating unit 315 preferably associates the problem with the skill tag 53 assigned to the terminal node of the directed graph 50. For example, by associating a problem with the skill tag 53 of the terminal node, it becomes possible to have the user solve a problem related to a fine-grained skill, and to determine whether or not the user has a fine-grained skill.
[0072] For example, the skill tag information includes information that can determine whether or not the skill tag 53 is at the end, and the association unit 315 can determine whether or not the skill tag 53 is at the end by acquiring the skill tag information, and associates the skill tag 53 at the end with the problem preferentially over the skill tag 53 that is not at the end.
[0073] By associating the end-level skill tag 53 with the question through the above process, the skill of the user can be grasped more accurately by the skill tag 53.
[0074] It is preferable that the questions associated with the terminal skill tag 53 be questions that directly test understanding of the skill of the terminal skill tag 53 (hereinafter also referred to as fine-grained questions), and the difficulty level of the questions is preferably such that they can be answered in 5 to 10 minutes.
[0075] By associating fine-grained questions with terminal skill tags 53 and providing them to the user in this way, the efficiency of item response theory or methods similar to item response theory can be improved. This is because fine-grained questions do not make the granularity of the skills being evaluated coarse, and questions can be provided dynamically and efficiently without waste.
[0076] For example, when using a problem to recruit users with the skills of a given engineer, one company may use a library that contains the skills of a given engineer, while another company may use a different library, so even though they are called the skills of a given engineer, different skills will be required.
[0077] Specifically, let's say that the skills at the bottom of the Go Engineer skill tag 53 are Echo, http, Gorm, and sqlx. By generating questions that directly test understanding of each of Echo, http, Gorm, and sqlx and presenting them to users, even if there are multiple definitions of Go Engineer, by combining different questions, it is possible to broadly cover the needs of each company, for example. Furthermore, fine-grained questions allow for the assessment of more skills.
[0078] By combining fine-grained questions through the above process, it is possible to evaluate the user's skills at a fine granularity, for example, with respect to the skills required by each company.
[0079] Furthermore, the directed graph generating unit 314 may display the skills associated with each user in association with the nodes 51 of the directed graph 50. For example, the directed graph generating unit 314 may indicate that the specific user has the skill tag 53 by attaching an ownership mark or the like to the node 51 corresponding to the skill tag 53 representing the skill possessed by the specific user in the directed graph 50 of the specific user.
[0080] For example, the output unit 316 may output the directed graph 50 generated by associating the skill tag 53 associated with each user with the node 51 to the information processing device 10, the information processing device 20, etc.
[0081] By performing the above processing, the skills associated with each user are displayed on the information processing device 10 and the information processing device 20 in association with the nodes 51 of the directed graph 50, thereby visualizing the skills possessed by the user and making it possible to determine whether or not the user is suitable for a specific position in an engineering field, and to determine what skill groups a user needs to satisfy in order to be objectively evaluated as possessing specific skills corresponding to a category consisting of skill groups.
[0082] The directed graph generation unit 314 may acquire a change request from a predetermined user for the directed graph 50, and may change the directed graph 50 based on the change request. The changed directed graph 50 may be associated with the user who made the change request.
[0083] The acquisition unit 313 may acquire a request to change skill tag information from a company that is a predetermined user. For example, when a company requests a change based on certain conditions, the acquisition unit 313 changes the skill tag 53 to satisfy the request. The method for changing the skill tag 53 is arbitrary, and may be realized by, for example, having the administrator change the definition of the skill tag information, or by assigning a company ID to the skill tag information, the skill tag 53 may be managed for each company. The changed skill tag information is stored in the storage device 330.
[0084] The acquisition unit 313 may acquire a request to change edge information from a company that is a predetermined user. For example, when a company requests a change request based on certain conditions, the acquisition unit 313 changes the edge information to satisfy the request. The method for changing the edge information is arbitrary, and for example, the method may be realized by the operator changing the skill tag of the edge source and / or edge destination, or the edge information may be managed for each company by assigning a company ID to the edge information. The changed edge information is stored in the storage device 330.
[0085] The directed graph generation unit 314 generates the directed graph 50 based on the changed skill tag information and / or edge information in response to the change request. The association unit 315 associates the generated directed graph 50 with the user. The directed graph 50 thus generated can be changed by changing the skill tag information or edge information, thereby changing the directed graph 50 generated by the nodes 51 and edges 52.
[0086] By performing the above process, for example, it is possible to establish standards for each company by associating the modified digraph 50 with a user. Also, if a company defines its human resources as those who satisfy a certain set of skills, by reflecting the definition in the skill tag 53, it is possible to determine from the digraph 50 associated with the user whether the person is the human resource the company is looking for.
[0087] When a user having a skill of node 51 is associated with the node 51, the acquisition unit 313 may acquire information regarding at least one skill, and the search unit 317 may search for the user from the directed graph 50 based on the information regarding the at least one skill.
[0088] For example, suppose that a project B requires an engineer who possesses skill B. When a user (e.g., a company employee) searches for an engineer by specifying skill B, the acquisition unit 313 first acquires a skill tag corresponding to skill B specified by the user, for example, based on skill tag information. Then, the search unit 317 searches the directed graph 50 for an engineer associated with the skill tag corresponding to skill B, thereby identifying an engineer who possesses skill B.
[0089] The suggestion unit 318 may identify skills that do not satisfy a predetermined standard from the digraph 50 in which the user's skills are associated with the nodes 51, and may make suggestions regarding the identified skills. The predetermined standard may be, for example, a digraph 50 that represents the engineer the user aspires to be, or the administrator may allow the user to select from candidates for digraphs 50 by proficiency level, and the selected digraph 50 may be used as the predetermined standard.
[0090] The proposing unit 318 can generate proposed contents of an education plan from the directed graph 50. Since the skills possessed by the user are visualized by the directed graph 50, by comparing the skills with the target directed graph 50, an education plan can be generated to fill the gap.
[0091] For example, the suggestion unit 318 compares the directed graph 50 associated with the user with the directed graph 50 representing the engineer the user aspires to be, thereby identifying skills that do not meet a predetermined standard and suggesting teaching materials such as questions to help the user acquire the skills that are not met.
[0092] The method for proposing educational plans and teaching materials is arbitrary. For example, the proposal unit 318 can obtain skill tags 53 that are the subject of education from the directed graph 50, and generate proposed educational plan content in natural language by linking the skill tag information linked to each skill tag 53 with a generation AI such as ChatGPT, which is a large-scale language model that generates sentences based on natural language processing technology.
[0093] <Operation> Next, the operation according to this embodiment will be described. Fig. 4 is a flowchart showing an example of the processing of the server 30 according to this embodiment.
[0094] In step S10, the acquisition unit 313 acquires each node 51 representing each skill of the engineer. A skill tag 53 representing each skill is assigned to each node 51 acquired by the acquisition unit 313.
[0095] In step S11, the acquisition unit 313 determines whether or not multiple nodes 51 have been acquired. If multiple nodes 51 have been acquired (step S11: YES), the process proceeds to step S12. If multiple nodes 51 have not been acquired (step S11: NO), the process ends.
[0096] In step S12, the directed graph generation unit 314 hierarchizes the nodes 51 representing the skill tags 53 acquired from the acquisition unit 313 based on the relationships between the skills, and generates the directed graph 50. The relationships between the skills are defined in the edge information.
[0097] In step S13, the output unit 316 outputs the directed graph 50 generated by the directed graph generation unit 314. The output unit 316 outputs, for example, to the information processing device 20, the generated directed graph 50, information about the skills of the skill tags 53 that make up the directed graph 50, and the like.
[0098] <Modification> The above-described embodiments and examples are intended to facilitate understanding of the present invention and are not to be construed as limiting the present invention. The present invention may be modified or improved without departing from the spirit thereof, and equivalents thereof are also included in the present invention. Furthermore, the present invention can be formed into various disclosures by appropriately combining multiple components disclosed in the above-described embodiments or examples. For example, some components may be deleted from all the components shown in the embodiments. Furthermore, components may be appropriately combined in different embodiments.
[0099] (Calculating similarity between skill tags) The digraph generation unit 314 may acquire the relationship between skills by calculating the similarity between the skills. If the similarity calculated by a predetermined method is equal to or greater than a predetermined value, the digraph generation unit 314 determines that the relationship between the skills is high, and if the calculated similarity is less than the predetermined value, the digraph generation unit 314 determines that the relationship between the skills is low.
[0100] For example, the digraph generation unit 314 may use the similarity between questions associated with a skill tag as the similarity between skills, or may have a large-scale language model calculate the similarity between two skills. The digraph generation unit 314 may store the calculated similarity in the edge information, or may generate a machine learning model using the stored similarity between skills as training data and measure the similarity by using the trained machine learning model. Note that the similarity between each skill may be defined in the edge information by, for example, an administrator.
[0101] In addition, the skill tags 53 assigned to the hierarchical nodes 51 can be clustered using a predetermined algorithm, and abstract skill tags 53 may be generated from specific skill tags 53.
[0102] For example, from skill tags 53 relating to specific skills such as React, Vue, etc., skill tags 53 such as Frontend, Backend, etc. may be generated as abstracted skills, or skill tags 53 having a certain degree of similarity or higher may be grouped by clustering using an approximation method such as K-means, and abstracted skill tags 53 may be generated for this group.
[0103] Through the above process, abstract skill tags 53 are generated from specific skill tags 53 by clustering, thereby enabling a more accurate representation of the hierarchy between nodes 51. Furthermore, since there is no need to generate abstract skill tags 53 manually, skill tags 53 can be generated efficiently. Furthermore, the names of abstract skill tags may be generated using a large-scale language model.
[0104] (Skill tag 53 generated by scraping) The acquisition unit 313 may acquire, from one or more web pages, skill tags 53 related to the skills of engineers posted on the web pages. The acquisition unit 313 performs scraping on a website consisting of one or more web pages, for example.
[0105] Specifically, the acquisition unit 313 acquires HTML data of a web page from a website and extracts information about the engineer's skills in order to generate the skill tag 53. Furthermore, during scraping, the acquisition unit 313 may set a specific website or web page (e.g., Qiita, stackoverflow, leetcode) that contains content related to skills, and extract information about the engineer's skills from the website or web page.
[0106] This eliminates the need to manually extract information about an engineer's skills from a web page and collect the necessary data to generate the skill tag 53, significantly reducing the time required to generate the skill tag 53 related to the engineer's skills. Note that when the acquisition unit 313 scrapes a website, it does so in compliance with the terms of use and laws and regulations of the website.
[0107] (Generate skill tag 53) The acquisition unit 313 receives, for example, information relating to the generation of the skill tag 53 from the user, and the directed graph generation unit 314 can generate a new skill tag 53 based on the information relating to the generation of the skill tag 53.
[0108] The granularity of the skill tags 53 generated by the directed graph generation unit 314 is arbitrary, but the granularity of the newly generated skill tags 53 may be decomposed to a level where it cannot be decomposed any further (hereinafter also referred to as the atomic level), and if the newly generated skill tags 53 represent abstract skills, a set of atomic-level skill tags 53 may be superordinated to generate skill tags 53 representing abstract skills. When generating new questions, questions that directly test understanding of the skills represented by atomic-level skill tags 53 may be generated.
[0109] (Scoring) The acquisition unit 313 may perform scoring and acquire the score based on the skill tag 53 associated with the user. For example, if a score is associated with the skill tag 53, the acquisition unit 313 may acquire a total score by tallying up the scores associated with the skill tags of the skills possessed by each user based on the scores associated with the skill tag 53. Note that the score for each skill tag 53 may be defined in the skill tag information by, for example, an administrator. [Explanation of symbols]
[0110] 1...information processing system, 10...information processing device, 20...information processing device, 30...server, 50...directed graph, 51...node, 52...edge, 53...skill tag, 310...processor, 312...information processing unit, 313...acquisition unit, 314...directed graph generation unit, 315...association unit, 315...output unit, 317...search unit, 318...suggestion unit, 320...network communication interface, 330...storage device, 340...user interface, 350...communication bus, N...network
Claims
1. The information processing device Obtaining each node representing each skill of the engineer, hierarchizing the nodes based on the relationships between skills and generating a directed graph; outputting the directed graph; An information processing method that performs the above.
2. The information processing method according to claim 1 , further comprising the step of assigning a predetermined weight to each edge of the directed graph based on a relationship between the skill of the node at the end of the edge and the skill of the node at the source of the edge.
3. associating a predetermined problem with said node; obtaining a user's answer to the predetermined question; The information processing method of claim 1 , further comprising associating the skill of the node associated with the given question with the user if the answer satisfies a predetermined criterion.
4. obtaining a measure of the skill range of said engineers; outputting a first problem associated with a first node selected based on the measurement range to a processing device utilized by a user; selecting at least one node from among the nodes associated with the first node based on the user's answer to the first question; The information processing method of claim 3 , further comprising outputting a second problem associated with the at least one node to the processing device.
5. The information processing method according to claim 3 , wherein the node associated with the predetermined problem includes a terminal node of the directed graph.
6. The information processing method according to claim 3 , further comprising displaying the skills associated with each of the users in association with the nodes of the directed graph.
7. obtaining a change request from a predetermined user for the directed graph; modifying the directed graph based on the modification request; The information processing method according to claim 1 , further comprising associating the modified directed graph with the predetermined user.
8. If a user with the skills of the node is associated with the node, obtaining information about at least one skill; The information processing method of claim 1 , further comprising: searching for a user from the directed graph based on information about the at least one skill.
9. Identifying skills from the directed graph in which the user's skills are associated with the nodes, which skills do not meet a predetermined criterion; The information processing method of claim 1 , further comprising making suggestions related to the identified skills.
10. The information processing method according to claim 1 , further comprising clustering the hierarchical nodes using a predetermined algorithm.
11. An information processing device including a processor and a storage unit, the processor: Obtaining each node representing each skill of the engineer, hierarchizing the nodes based on the relationships between skills and generating a directed graph; outputting the directed graph; An information processing device that executes the above.
12. In the information processing device, Obtaining each node representing each skill of the engineer, hierarchizing the nodes based on the relationships between skills and generating a directed graph; outputting the directed graph; A program that executes the following.
Citation Information
Patent Citations
Business practice skill development support system, business practice skill development support method and server
JP2017123123A