Interview analysis method, device, computer equipment and readable storage medium based on natural language processing
Through natural language processing technology, analyzing job descriptions and resumes, generating interview questions and evaluating answers, solving the problem of inefficiency in the traditional interview process and achieving a more efficient and accurate recruitment process.
Patent Information
- Application Number
- CN202411738045.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-29
- Publication Date
- 2025-04-01
AI Technical Summary
The traditional interview process is inefficient and subjective, making it difficult to effectively screen and evaluate candidates.
The interview analysis method based on natural language processing is adopted, and the job description information is obtained and the resume is analyzed and the matching score is calculated, the interview questions are generated, and the interview answers are analyzed and professionally evaluated, and the results are finally visualized.
The entire interview process is intelligent, recruitment efficiency and accuracy are improved, and the subjectivity of manual screening is reduced.
Smart Images

Figure CN119740993A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of data processing, and in particular to an interview analysis method, device, computer equipment and readable storage medium based on natural language processing. Background Art
[0002] In today's talent recruitment field, the traditional interview process often relies on manual screening of resumes and assessment of candidates, which is inefficient and highly subjective. Summary of the invention
[0003] The object of the present invention is to provide an interview analysis method, apparatus, computer equipment and readable storage medium based on natural language processing.
[0004] In a first aspect, an embodiment of the present invention provides an interview analysis method based on natural language processing, comprising:
[0005] Obtaining job description information of a target job, and performing vectorization processing on the job description information to obtain core job requirement information of the target job;
[0006] Obtaining a resume to be processed, parsing the resume to be processed, and obtaining a matching score between the resume to be processed and the job description information;
[0007] When the matching score is greater than a preset matching score threshold, generating interview questions according to the core requirement information of the position and the resume to be processed;
[0008] Receiving interview answers to the interview questions, and processing the interview answers to obtain interview analysis results;
[0009] The interview analysis results are visualized and displayed on the target feedback page.
[0010] In a possible implementation manner, obtaining the job description information of the target job and performing vectorization processing on the job description information to obtain the core job requirement information of the target job includes:
[0011] Obtain job description information for target positions;
[0012] Inputting the job description information into a preset deep learning model for vectorization processing to obtain a job description feature vector;
[0013] Extracting skill keywords and semantic information of the target position according to the position description feature vector;
[0014] The skill keywords and semantic information are used as the core job requirement information of the target job.
[0015] In a possible implementation, the obtaining of the resume to be processed, parsing the resume to be processed, and obtaining a matching score between the resume to be processed and the job description information includes:
[0016] Obtaining the resume to be processed, and performing structured processing on the resume to be processed to obtain structured resume text content;
[0017] Based on a preset matching algorithm, similarity calculation is performed on the candidate background included in the resume text content for the skill keywords and the semantic information to obtain a matching score between the resume to be processed and the job description information.
[0018] In a possible implementation, the generating of interview questions according to the core requirement information of the position and the resume to be processed includes:
[0019] Inputting the skill keywords, the semantic information and the candidate background into a pre-trained question generation model to obtain technical questions, situational questions and behavioral questions for the skill keywords, the semantic information and the candidate background;
[0020] The technical questions, the situational questions, and the behavioral questions are used as the interview questions.
[0021] In a possible implementation manner, receiving the interview answers to the interview questions and processing the interview answers to obtain interview analysis results includes:
[0022] Input the interview answer into a preset deep learning model for vectorization processing to obtain an interview answer vector;
[0023] Calling a sentiment analysis tool to perform sentiment attitude evaluation on the interview answer vector to obtain a sentiment attitude score corresponding to the interview answer;
[0024] Performing a multidimensional professional evaluation based on the answer content and logical structure of the interview answer vector to obtain a multidimensional professional score corresponding to the interview answer;
[0025] The emotional attitude score and the multidimensional professional score are used as the interview analysis results.
[0026] In a possible implementation, the visualizing the interview analysis results and displaying them on a target feedback page includes:
[0027] Calling a preset visualization tool to visualize the interview analysis results to obtain an interview analysis report;
[0028] The interview analysis report is displayed on the target feedback page according to the preset arrangement.
[0029] In a possible implementation, the method further includes:
[0030] Collect and organize interview analysis results of multiple candidates for the same target position;
[0031] By comparing the emotional attitude scores, multi-dimensional professional scores and preset key evaluation indicators of different candidates, a comparative analysis chart between candidates is generated;
[0032] The comparative analysis chart is displayed in the target feedback page.
[0033] In a second aspect, an embodiment of the present invention provides an interview analysis device based on natural language processing, comprising:
[0034] An acquisition module is used to acquire the job description information of the target job, and perform vectorization processing on the job description information to obtain the job core requirement information of the target job; acquire the resume to be processed, parse the resume to be processed, and obtain the matching score between the resume to be processed and the job description information; and generate interview questions according to the job core requirement information and the resume to be processed when the matching score is greater than a preset matching score threshold;
[0035] The analysis module is used to receive the interview answers to the interview questions, process the interview answers, and obtain interview analysis results; and visualize the interview analysis results and display them on the target feedback page.
[0036] In a third aspect, an embodiment of the present invention provides a computer device, comprising a processor and a non-volatile memory storing computer instructions, wherein when the computer instructions are executed by the processor, the computer device executes the method described in at least one possible implementation of the first aspect.
[0037] In a fourth aspect, an embodiment of the present invention provides a readable storage medium, wherein the readable storage medium includes a computer program, and when the computer program is run, the computer device where the readable storage medium is located is controlled to execute the method described in at least one possible implementation manner of the first aspect.
[0038] Compared with the prior art, the beneficial effects provided by the present invention include: using an interview analysis method, device, computer equipment and readable storage medium based on natural language processing disclosed by the present invention, including: first obtaining the target job description and quantizing it to obtain the core job requirement information; parsing the resume to be processed to obtain a matching score; when the score is greater than a threshold, generating interview questions based on the job requirements and the resume; receiving the interview answers and processing them to obtain the analysis results; and visually displaying the results on the target feedback page. The method realizes the intelligence of the entire interview process and improves recruitment efficiency and accuracy. BRIEF DESCRIPTION OF THE DRAWINGS
[0039] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings required for use in the embodiments are briefly introduced below. It should be understood that the following drawings only illustrate certain embodiments of the present invention and should not be regarded as limiting the scope. For those of ordinary skill in the art, other related drawings can also be obtained based on these drawings without creative work.
[0040] Figure 1 A schematic diagram of the steps of the interview analysis method based on natural language processing provided by an embodiment of the present invention;
[0041] Figure 2 A schematic block diagram of the structure of an interview analysis device based on natural language processing provided by an embodiment of the present invention;
[0042] Figure 3 A schematic block diagram of the structure of a computer device provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0043] In order to make the purpose, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Generally, the components of the embodiments of the present invention described and shown in the drawings here can be arranged and designed in various different configurations.
[0044] The specific implementation modes of the present invention are described in detail below in conjunction with the accompanying drawings.
[0045] In order to solve the technical problems in the aforementioned background technology, Figure 1 The present invention provides a flowchart of an interview analysis method based on natural language processing according to an embodiment of the present invention. The following is a detailed introduction to the interview analysis method based on natural language processing.
[0046] Step S201, obtaining job description information of a target job, and performing vectorization processing on the job description information to obtain job core requirement information of the target job;
[0047] Step S202, obtaining a resume to be processed, parsing the resume to be processed, and obtaining a matching score between the resume to be processed and the job description information;
[0048] Step S203, when the matching score is greater than a preset matching score threshold, generating interview questions according to the core requirement information of the position and the resume to be processed;
[0049] Step S204, receiving interview answers to the interview questions, and processing the interview answers to obtain interview analysis results;
[0050] Step S205: Visualize the interview analysis results and display them on a target feedback page.
[0051] In the embodiment of the present invention, illustratively,
[0052] Suppose the server receives a job posting for a "Python development engineer" from a technology company. The server first obtains detailed information about the position from the company's human resources management system, for example: "We are looking for an experienced Python development engineer who is proficient in using Django and Flask frameworks for web application development, has good database design skills, is familiar with MySQL and MongoDB, has a team spirit, and can independently solve technical problems."
[0053] The server inputs this text into a preset deep learning model (such as a model using the word vector model Word2Vec or Transformer architecture) for vectorization processing. The model converts each word in the text into a corresponding vector representation, and then combines these vectors to obtain the feature vector of the entire job description.
[0054] Based on the obtained job description feature vector, the server extracts key skill keywords such as "Python", "Django", "Flask", "MySQL", "MongoDB", etc. through some natural language processing technologies (such as the keyword extraction algorithm TF-IDF). It also understands and extracts semantic information, such as the requirements for teamwork and independent problem-solving ability.
[0055] These skill keywords and semantic information constitute the core requirement information of the target position.
[0056] The server obtained a resume of a job seeker, which read as follows: "I have three years of Python development experience, am proficient in the Django framework, have participated in the development of multiple Web application projects based on MySQL databases, have good teamwork skills, and can independently cope with technical challenges in projects."
[0057] The server structures the resume, extracts key information, such as years of work experience, technical frameworks mastered, project experience, teamwork ability, etc., and converts it into a form that is easy to calculate and compare.
[0058] Then, based on a preset matching algorithm (such as the cosine similarity algorithm), the server calculates the similarity between the resume and the target job description in terms of skill keywords and semantic information. For skill keywords, the server compares the consistency of "Python", "Django", and "MySQL" mentioned in the job applicant's resume with the requirements of the target position; for semantic information, the server evaluates the degree of match between the teamwork and problem-solving abilities described in the job applicant's resume and the requirements of the target position.
[0059] Based on the comparison results, the server obtains a match score between the resume and the job description information, assuming it is 85 points (out of 100 points).
[0060] The preset matching score threshold is 70 points. Since the matching score of 85 points of the above job seeker's resume is greater than the threshold, the server generates interview questions based on the previously extracted core job requirement information and the content of this resume.
[0061] For example, the server inputs skill keywords such as "Python", "Django", and "MySQL", as well as semantic information about teamwork and independent problem solving, and candidate background information such as project experience mentioned in the job applicant's resume into the pre-trained question generation model.
[0062] Technical questions for model generation can be: "Please describe in detail how you handle high concurrent requests when developing web applications using the Django framework?" Situational questions can be: "Suppose that in a project, team members have disagreements on database design. How would you deal with it?" Behavioral questions can be: "Please share an experience in which you independently solved a complex technical problem in a project, as well as the steps you took and the final solution."
[0063] The job seeker answers the above interview questions. Assume that for the question "Please describe in detail how you handle high-concurrency requests when developing web applications using the Django framework?", the job seeker answers: "In previous projects, when encountering high-concurrency requests, I first optimized the system architecture and used a cache mechanism to reduce the number of database queries. At the same time, I tuned the code for performance and optimized the algorithm and data structure..."
[0064] The server inputs the interview answer into the preset deep learning model for vectorization processing to obtain the interview answer vector. Then, the sentiment analysis tool (such as the dictionary-based sentiment analysis method or the deep learning sentiment classification model) is called to evaluate the sentiment attitude of the interview answer vector. If the job seeker answers in a positive and confident tone, the sentiment attitude score may be high; if the answer is hesitant and lacks confidence, the sentiment attitude score may be low. Assume that the sentiment attitude score of this answer is 80 points.
[0065] At the same time, the server conducts a multi-dimensional professional evaluation based on the answer content and logical structure of the interview answer vector. For example, the server evaluates the depth of technical understanding, the rationality of the solution, the practicality of the experience, etc. Suppose the multi-dimensional professional score of this answer is 75 points.
[0066] In the end, the server used an emotional attitude score of 80 and a multi-dimensional professional score of 75 as the analysis results of this interview.
[0067] The server calls a preset visualization tool (such as Echarts library or Tableau software) to visualize the emotional attitude score of 80 and the multidimensional professional score of 75. A bar chart may be generated to clearly show the situation of these two scores, with a brief text description, such as "the job seeker is positive in emotional attitude, but there is still room for improvement in multidimensional professionalism."
[0068] Then, the server displays this visual interview analysis report on the target feedback page according to a preset layout (such as displaying charts on the left side of the page and detailed descriptions on the right side) for the recruiter to view and refer to.
[0069] In the embodiment of the present invention, the step of obtaining the job description information of the target job and performing vectorization processing on the job description information to obtain the job core requirement information of the target job may be implemented through the following example.
[0070] Obtain job description information for target positions;
[0071] Inputting the job description information into a preset deep learning model for vectorization processing to obtain a job description feature vector;
[0072] Extracting skill keywords and semantic information of the target position according to the position description feature vector;
[0073] The skill keywords and semantic information are used as the core job requirement information of the target job.
[0074] In the embodiment of the present invention, for example, it is assumed that the server receives a demand from a large Internet company to recruit a target position of "data analyst".
[0075] First, the server obtains detailed information about the position of "data analyst" from the company's human resources management system or a dedicated recruitment platform. The job description may be as follows: "We are looking to recruit a data analyst who is proficient in using Python and R languages for data analysis and modeling, familiar with data mining algorithms such as decision trees and cluster analysis, has the ability to process large-scale data, can extract valuable information from massive data, and has good communication skills and teamwork spirit, and can clearly and accurately convey the analysis results to non-technical personnel."
[0076] Next, the server inputs the obtained job description information into the preset deep learning model for vectorization processing. The preset deep learning model here can be a language model based on the Transformer architecture, such as Google's BERT model. The model encodes the input text and converts each word into a high-dimensional vector representation. After being processed by the model, the feature vector of the job description is obtained.
[0077] Then, the server uses a series of natural language processing technologies and algorithms to extract key skill keywords and semantic information based on the obtained job description feature vector. For example, the importance of each word in the description is calculated through the term frequency-inverse document frequency (TF-IDF) algorithm, so as to select relatively important words as skill keywords. At the same time, the semantic analysis algorithm is used to understand the meaning of the entire text and extract more in-depth semantic information.
[0078] After processing, the extracted skill keywords may include: "Python", "R language", "data mining algorithm", "large-scale data processing", etc. Semantic information can be the ability requirements for data analysts in communication, teamwork, and effective communication of complex analysis results.
[0079] Finally, the server uses these extracted skill keywords and semantic information as the core requirement information for the target position of "data analyst". This core requirement information will be matched and compared with the job seekers' resumes in the future to screen out candidates who initially meet the requirements.
[0080] For example, the server received a job posting for a "risk management specialist" from another financial company. The job description reads: "We are looking for a risk management specialist who has solid financial mathematics knowledge, is proficient in risk assessment models such as CreditRisk+ and KMV models, is familiar with financial market regulations, has a keen insight into risks, can remain calm and make accurate judgments under pressure, and has good stress resistance and adaptability."
[0081] The server also feeds the text into a preset deep learning model, such as a language model based on a recurrent neural network (RNN). The model encodes and vectorizes the text to generate a feature vector for the job description.
[0082] Subsequently, keywords and semantic information are extracted through a series of algorithms and technologies. The extracted skill keywords may include: "financial mathematics", "CreditRisk+", "KMV model", "financial market regulations", etc. Semantic information focuses on the requirements for risk insight, stress resistance and resilience.
[0083] These skill keywords and semantic information clarify the core requirements of the position of "Risk Management Specialist" and provide key basis and standards for the subsequent recruitment process.
[0084] For example, a manufacturing company posted a job opening for a "production planner". The job description reads: "We are hiring a production planner who is familiar with the operation of the ERP system, has mastered the production process optimization methods, understands the lean production concept, can reasonably arrange production plans according to order requirements, has good coordination and problem-solving skills, and can effectively respond to emergencies in production."
[0085] After the server obtains this description, it inputs it into a pre-trained deep learning model based on a convolutional neural network (CNN) for vectorization.
[0086] Next, extract keywords and semantic information. Skill keywords may include: "ERP system", "production process optimization", "lean production", etc. Semantic information focuses on the need for coordination and emergency response capabilities.
[0087] The final determined skill keywords and semantic information constitute the core requirements of the position, and the server screens and analyzes the resumes of job seekers based on these core requirements.
[0088] In the embodiment of the present invention, the obtaining of the resume to be processed, parsing of the resume to be processed, and obtaining a matching score between the resume to be processed and the job description information can be implemented through the following example.
[0089] Obtaining the resume to be processed, and performing structured processing on the resume to be processed to obtain structured resume text content;
[0090] Based on a preset matching algorithm, similarity calculation is performed on the candidate background included in the resume text content for the skill keywords and the semantic information to obtain a matching score between the resume to be processed and the job description information.
[0091] In the embodiment of the present invention, for example, it is assumed that the server receives a task related to the recruitment of an "e-commerce operation specialist" position by an e-commerce company. First, the server obtains a plurality of resumes to be processed.
[0092] One of the resumes reads as follows:
[0093] "Name: Zhang San
[0094] Work Experience:
[0095] -Worked as an e-commerce operations assistant in [Company A], responsible for product listing and delisting, store page optimization, and proficient in using Excel for data statistics and analysis.
[0096] -Served as an e-commerce operations specialist at [Company B], led multiple promotional activities, effectively increased store sales, was familiar with the promotion rules of major e-commerce platforms, and was able to use SEO techniques to improve product search rankings.
[0097] Project experience:
[0098] - Participated in [Project X] and increased product click-through rate by 30% by optimizing product titles and keywords.
[0099] -Led [Project Y], and achieved 20% year-over-year store sales growth during the promotional period.
[0100] Skill:
[0101] - Proficient in e-commerce data analysis tools, such as Business Advisor and Data Cube.
[0102] - Proficient in Photoshop and able to independently design product promotional images.
[0103] Personal advantages:
[0104] -Have good communication and coordination skills, and be able to maintain good working relationships with team members and suppliers.
[0105] - Passionate about the e-commerce industry, with strong learning ability and innovative spirit. ”
[0106] After the server obtains the resume to be processed, it will structure it. The server will identify the various modules in the resume, such as work experience, project experience, skills, personal strengths, etc., and extract the key information in each module to form the structured resume text content. For example, the company name, position, job responsibilities and achievements in work experience; the project name, measures taken and results achieved in project experience; the specific tools and software in skills; the description of various abilities in personal strengths, etc.
[0107] The structured resume text may be as follows:
[0108] “Work experience: [Company A] E-commerce operations assistant, product listing and delisting, store page optimization, Excel data statistics and analysis; [Company B] E-commerce operations specialist, leading promotional activities, familiar with promotion rules, SEO techniques to improve search rankings.
[0109] Project experience: [Project X] optimized product title keywords and increased click-through rate by 30%; [Project Y] led promotional activities and increased sales by 20% year-on-year.
[0110] Skills: E-commerce data analysis tools (Business Advisor, Data Cube), Photoshop design.
[0111] Personal strengths: communication and coordination, teamwork, learning and innovation. ”
[0112] Next, the server calculates the similarity of the skill keywords and semantic information in the job description for the candidate's background included in the resume text based on a preset matching algorithm. Assume that the skill keywords for the position of "e-commerce operation specialist" are "e-commerce data analysis", "SEO optimization", and "promotion activity planning", and the semantic information is "having good communication skills and teamwork spirit, able to adapt to a fast-paced work environment, and innovative thinking".
[0113] The server first matches the skills section of the resume with the job skill keywords. It finds that the "e-commerce data analysis tools (business advisor, data cube)" mentioned in the resume matches the "e-commerce data analysis" keyword; "familiar with promotion rules, SEO skills to improve search rankings" matches the "SEO optimization" keyword; "led multiple promotional activities" matches the "promotional activity planning" keyword.
[0114] Then, the semantic information in the resume is analyzed. The server determines that the "good communication and coordination skills, able to maintain a good cooperative relationship with team members and suppliers" mentioned in the resume is semantically similar to the "good communication skills and teamwork spirit" in the job description; "passionate about the e-commerce industry, strong learning ability and innovative spirit" is semantically consistent with "innovative thinking".
[0115] The server assigns a certain weight and score to each matching item based on the preset matching algorithm. For example, a completely matched skill keyword is given a higher score, while a partially matched or semantically similar one is given a lower score. The scores of all matching items are calculated comprehensively to obtain the matching score between the resume to be processed and the job description information. Assume that after calculation, the matching score of this resume is 88 points (out of 100 points).
[0116] Let’s look at another resume, for example:
[0117] "Name: Li Si
[0118] Work Experience:
[0119] -Worked in market research at [Company C], collecting and analyzing market data.
[0120] -Worked as a new media operator at [Company D], responsible for content planning and promotion of social media accounts.
[0121] Project experience:
[0122] - Participate in [Project Z], research the market demand for a certain product and write a research report.
[0123] Skill:
[0124] - Proficient in using SPSS for data analysis.
[0125] -Good at copywriting and has some experience in new media marketing.
[0126] Personal advantages:
[0127] -Clear logical thinking, good at analyzing and solving problems.
[0128] -Have strong self-motivation and time management skills. "
[0129] After the server obtains and structures the resume, it obtains:
[0130] “Work experience: [Company C] market research, data collection and analysis; [Company D] new media operations, content planning and promotion.
[0131] Project experience: [Project Z] Market demand research and report writing.
[0132] Skills: SPSS data analysis, copywriting, new media marketing.
[0133] Personal strengths: logical analysis, self-motivation, time management. ”
[0134] When calculating the similarity, the server found that the skills and work experience in the resume had a low match with the skill keywords and semantic information of the position of "e-commerce operation specialist". For example, the e-commerce data analysis tools, SEO optimization, promotional activity planning, etc. required by the position were rarely reflected in this resume. After calculation, the matching score of this resume may be only 55 points.
[0135] In this way, the server can perform detailed analysis and match score calculation for each resume to be processed, thereby providing strong support and reference for the subsequent recruitment process.
[0136] In the embodiment of the present invention, the generation of interview questions based on the core requirement information of the position and the resume to be processed can be implemented through the following examples.
[0137] Inputting the skill keywords, the semantic information and the candidate background into a pre-trained question generation model to obtain technical questions, situational questions and behavioral questions for the skill keywords, the semantic information and the candidate background;
[0138] The technical questions, the situational questions, and the behavioral questions are used as the interview questions.
[0139] In the embodiment of the present invention, for example, it is assumed that the server processes a situation where a software company is recruiting for a position of "software engineer". First, the server has obtained the core requirement information of the position, including skill keywords such as "Java programming", "database design", "algorithm optimization", semantic information such as "good problem-solving ability and teamwork spirit", and background information of the candidate, such as the candidate mentioned in the resume that he had participated in the "online education platform development project" and was mainly responsible for the writing of back-end code and database optimization.
[0140] The server feeds this information into a pre-trained question generation model. After receiving the input, the model starts generating different types of questions targeting skill keywords, semantic information, and candidate background.
[0141] For the skill keyword "Java programming", the generated technical question could be: "Please describe in detail an experience you had with multithreaded programming in Java, including the challenges you encountered and the solutions you solved."
[0142] A technical question about "database design" might be: "When designing a highly concurrent database architecture, how do you consider data consistency and performance optimization?"
[0143] A technical question about "algorithm optimization" might be: "Please share the specific steps and results of optimizing an algorithm in your project."
[0144] For the “good problem-solving ability” mentioned in the semantic information, the generated situational question can be: “Suppose you encounter an urgent bug in the project, causing the system to crash, how would you quickly locate and solve the problem?”
[0145] A situational question about "teamwork spirit" might be: "In a cross-departmental project, you and your colleagues from other departments had different opinions. How did you coordinate and reach a consensus?"
[0146] Combined with the candidate's background of participating in the "online education platform development project", the generated behavioral question can be: "In the online education platform development project, when users report that the learning progress is saved abnormally, what measures did you take to troubleshoot and solve this problem?"
[0147] “In this project, how did you collaborate with the front-end developers to ensure the effective connection between the back-end interface and the front-end page?”
[0148] The server sorts out these generated technical questions, situational questions, and behavioral questions as questions for this interview.
[0149] For another example, the server processes a situation where a financial company is recruiting for the position of "investment consultant". The core requirement information of the position includes skill keywords such as "financial analysis", "risk assessment", and "portfolio management", semantic information such as "good communication skills and customer service awareness", and the candidate's background shows that he has worked in the wealth management department of a large bank, responsible for formulating investment plans for high-net-worth customers.
[0150] After the server inputs this information into the question generation model, the generated technical questions may include: "Please explain how you evaluate a company's debt repayment ability and profitability when conducting financial analysis?"
[0151] "For different types of investment products, such as stocks, bonds, and funds, what factors do you focus on when conducting risk assessment?"
[0152] A situational question could be: "Assuming that the market suddenly experiences large fluctuations and your clients' portfolios suffer large losses, how would you communicate with your clients and adjust their investment strategies?"
[0153] “When a client questions the investment solution you provide, how will you explain and convince the client?”
[0154] A behavioral question might be: "In developing investment plans for high net worth clients, how do you select appropriate investment products based on the client's risk appetite and financial goals?"
[0155] “When dealing with situations where customers urgently redeem their investments, what steps do you take to meet customer needs and minimize losses?”
[0156] The server identifies these questions as questions to be asked to candidates during the interview in order to gain a more comprehensive and in-depth understanding of the candidate's abilities and compatibility with the position.
[0157] For example, the server processes a situation where a medical institution is recruiting for the position of "medical imaging diagnostician". The core requirement information of the position includes skill keywords such as "CT diagnosis", "MRI interpretation", and "pathological analysis", semantic information such as "having a high sense of responsibility and a rigorous work attitude", and the candidate's background shows that he has worked in the imaging department of a well-known hospital and has rich clinical experience.
[0158] After inputting this information into the question generation model, a technical question might be: “Please describe in detail how you distinguish between benign and malignant tumors when interpreting CT images?”
[0159] “When analyzing MRI images, what key indicators do you focus on for the diagnosis of neurological diseases?”
[0160] A situational question might be: "If you need to make a diagnosis based on the images of a critically ill patient in an emergency situation within a short period of time, how would you ensure the accuracy of the diagnosis?"
[0161] “How do you handle situations where your diagnosis differs from that of other doctors?”
[0162] A behavioral question might be: "In your past work, when you encountered difficult cases, how did you collaborate with other departments to finally reach a diagnosis?"
[0163] “How do you communicate and explain to patients and their families when you discover serious problems with their images?”
[0164] The server aggregates these generated questions into interview questions to more effectively assess whether the candidate is suitable for the position.
[0165] In the embodiment of the present invention, the receiving of the interview answers to the interview questions and the processing of the interview answers to obtain the interview analysis results may be implemented through the following examples.
[0166] Input the interview answer into a preset deep learning model for vectorization processing to obtain an interview answer vector;
[0167] Calling a sentiment analysis tool to perform sentiment attitude evaluation on the interview answer vector to obtain a sentiment attitude score corresponding to the interview answer;
[0168] Performing a multidimensional professional evaluation based on the answer content and logical structure of the interview answer vector to obtain a multidimensional professional score corresponding to the interview answer;
[0169] The emotional attitude score and the multidimensional professional score are used as the interview analysis results.
[0170] In the embodiment of the present invention, for example, it is assumed that the server processes interview answers for a "product manager" position recruited by an Internet company.
[0171] The candidate answered the interview questions. For example, in response to the question “Please describe how you collected and analyzed user needs in previous projects,” the candidate answered: “In previous projects, I first collected requirements through user survey questionnaires and user interviews, and then classified and organized the data in detail. For key requirements, I organized the team to have in-depth discussions and used some data analysis tools to extract valuable information. In this process, I fully listened to the opinions of team members and actively communicated and coordinated with the development and design departments to ensure accurate understanding and implementation of the requirements.”
[0172] After receiving the interview answer, the server inputs it into the preset deep learning model for vectorization. The deep learning model converts each word in the answer into a corresponding vector representation and combines these vectors to obtain the interview answer vector.
[0173] Next, the server calls the sentiment analysis tool to evaluate the sentiment attitude of the interview answer vector. The sentiment analysis tool analyzes the tone, wording and other features in the answer. In this example, the candidate's answer tone is positive and confident, and the wording is firm and proactive, such as "full listening" and "active communication", indicating that he has a positive attitude when handling work. After evaluation, the server obtains a high sentiment attitude score corresponding to this interview answer, such as 85 points (out of 100 points).
[0174] At the same time, the server conducts a multi-dimensional professional evaluation based on the answer content and logical structure of the interview answer vector. The server will analyze in detail whether the methods and processes mentioned in the answer are reasonable and professional. In this answer, the candidate clearly described the specific steps for collecting and analyzing user needs, including the methods used (user survey questionnaires, interviews), data processing methods (classification and organization, discussion, and tool application), and cross-departmental communication and coordination, etc., demonstrating professional understanding and practical experience in the demand processing link in product management. The logical structure is also relatively clear, first explaining the method, and then explaining the team collaboration and communication in the process. Combining these aspects, the server gives this interview answer a higher multi-dimensional professional score, such as 80 points (out of 100 points).
[0175] Finally, the server used an emotional attitude score of 85 and a multidimensional professional score of 80 as the analysis results of this interview.
[0176] Another example is a situation where a manufacturing company is recruiting for the position of “Production Supervisor”.
[0177] In response to the question "Please describe a time when you encountered a quality problem during production and how you solved it", the candidate answered: "Once when producing a batch of parts, I found that the dimensions of some products did not meet the standards. I immediately stopped the production line and organized quality inspectors to conduct a comprehensive inspection of the products that had been produced, and divided the qualified and unqualified products. Then I called a meeting with the team leaders and technicians on the production line to analyze the possible causes of the problem. After investigation, it was found that the mold of a piece of equipment was worn. We quickly arranged for maintenance personnel to replace the mold, and strictly inspected the subsequent products to ensure that the quality met the standards. Throughout the process, I always maintained close communication with the team, informed everyone of the progress in a timely manner, and stabilized everyone's emotions."
[0178] The server receives such an answer and performs vectorization processing to obtain the interview answer vector.
[0179] By calling the sentiment analysis tool to assess emotional attitudes, we found that the candidate showed a decisive and responsible attitude in his answers, and used calm and firm words, such as "stop immediately" and "arrange quickly", etc. His emotional attitude score was high, with a score of 90.
[0180] From the perspective of multi-dimensional professionalism, the answer shows clear problem-solving ideas and effective organizational and coordination skills. He was able to take correct measures quickly, organize relevant personnel to investigate and solve problems, and pay attention to communication and comfort with the team. He performed well in professionalism and scored 85 points in multi-dimensional professionalism.
[0181] Ultimately, the server determined an emotional attitude score of 90 and a multidimensional professional score of 85 as the analysis results of this interview.
[0182] Another example is a scenario where a financial company is recruiting for the position of “Risk Analyst”.
[0183] In response to the question “Please explain how you assess the risk level of a new investment project,” the candidate answered: “First, I would collect relevant information about the project, including the market environment, industry trends, and the background of the project team. Then, I would use some quantitative analysis methods, such as Monte Carlo simulation and sensitivity analysis, to assess the uncertainty of the project’s returns. At the same time, I would also conduct qualitative analysis, considering factors such as the impact of policies and regulations and the strategies of competitors. After synthesizing the results of various analyses, I would give a risk rating and corresponding recommendations.”
[0184] The server vectorizes this response.
[0185] The sentiment analysis tool evaluated the respondent's emotional attitude and found that the respondent's tone was professional and objective, giving the respondent an emotional attitude score of 80 points.
[0186] Regarding the professional assessment, the answer mentioned a variety of professional risk assessment methods and comprehensive considerations, with a clear logical structure, and a multi-dimensional professional score of 75 points.
[0187] The server obtained an emotional attitude score of 80 and a multi-dimensional professional score of 75 as the analysis results of this interview.
[0188] In the embodiment of the present invention, the visualization of the interview analysis results and displaying them on the target feedback page can be implemented through the following example.
[0189] Calling a preset visualization tool to visualize the interview analysis results to obtain an interview analysis report;
[0190] The interview analysis report is displayed on the target feedback page according to the preset arrangement.
[0191] In the embodiment of the present invention, for example, it is assumed that the server processes the interview analysis results of a large enterprise recruiting for the position of "marketing manager".
[0192] The server obtained the candidate's interview analysis results, including an emotional attitude score of 88 and a multi-dimensional professional score of 75.
[0193] First, the server calls a preset visualization tool, such as the matplotlib library in Python or a specialized commercial visualization tool such as Tableau, to visualize the interview analysis results.
[0194] The server generates an interview analysis report using a preset visualization template. The report may present the emotional attitude score and the multi-dimensional professionalism score in the form of a bar chart. The emotional attitude score column is displayed in green, and the height is close to the full score, indicating that the candidate showed a positive and confident attitude during the interview; the multi-dimensional professionalism score column is displayed in blue, which is in the upper middle position, intuitively reflecting that the candidate has a certain level of professional knowledge and skills, but there is still room for improvement.
[0195] In addition to the bar chart, the report can also include a text description and brief analysis of the score. For example, "The candidate was positive in the interview and showed enthusiasm and confidence in the job. In terms of multi-dimensional professionalism, he has a clear understanding of market strategies and promotion methods, but his understanding of some emerging marketing channels needs to be strengthened."
[0196] Next, the server displays the interview analysis report on the target feedback page according to the preset layout. The preset layout can be to display a large area of visual charts on the left side of the page, so that recruiters can see the intuitive comparison of scores at a glance; on the right side of the page, detailed text descriptions and analysis are listed to facilitate recruiters to further understand the specific situation.
[0197] At the same time, the top of the page may display the candidate's basic information, such as name, applied position, etc.; the bottom may provide some action buttons, such as "View more interview records" and "Compare with other candidates".
[0198] If you are processing the interview analysis results of multiple candidates at the same time, the page may be presented in the form of pages or tabs, so that recruiters can easily switch to view the reports of different candidates.
[0199] For example, the server processes the interview analysis results of a technology company recruiting for the position of "software engineer".
[0200] The candidate's emotional attitude score is 70 points and the multidimensional professional score is 80 points.
[0201] After the server calls the visualization tool, the generated interview analysis report displays the percentage of each score in the form of a pie chart. The pie chart part of the emotional attitude score is presented in orange, and the pie chart part of the multi-dimensional professional score is presented in purple. At the same time, detailed numerical and percentage annotations are provided next to the pie chart.
[0202] The text description might be: "The candidate showed a solid grasp of technical issues and the ability to solve them during the interview, but was a little nervous when communicating, and his emotional attitude needs to be improved."
[0203] The server displays the report on the target feedback page according to the preset page layout. The top of the page displays the key information of the candidate's resume, the middle is a visual chart and text description, and the bottom provides relevant recruitment process progress and next step operation suggestions, such as "recommendation to enter the next round of interviews" and "not suitable for this position".
[0204] In this way, recruiters can clearly and intuitively obtain the interview analysis results of candidates from the target feedback page, so as to make recruitment decisions more efficiently.
[0205] In the embodiments of the present invention, the following implementation modes are also provided.
[0206] Collect and organize interview analysis results of multiple candidates for the same target position;
[0207] By comparing the emotional attitude scores, multi-dimensional professional scores and preset key evaluation indicators of different candidates, a comparative analysis chart between candidates is generated;
[0208] The comparative analysis chart is displayed in the target feedback page.
[0209] In the embodiment of the present invention, for example, it is assumed that the server processes a situation in which a financial company is recruiting for the target position of "investment consultant".
[0210] The server first collects and organizes the interview analysis results of multiple candidates for the same target position. For example, there are three candidates, namely Candidate A, Candidate B and Candidate C. Candidate A's emotional attitude score is 85 points, and the multi-dimensional professional score is 78 points; Candidate B's emotional attitude score is 90 points, and the multi-dimensional professional score is 82 points; Candidate C's emotional attitude score is 70 points, and the multi-dimensional professional score is 75 points.
[0211] After the server obtains this data, it generates a comparative analysis chart between candidates by comparing the emotional attitude scores, multi-dimensional professional scores and preset key evaluation indicators of different candidates. The preset key evaluation indicators may include relevant certificate holdings, years of work experience, etc.
[0212] The server displays the emotional attitude scores in the form of a bar chart. The height of the bar represents the score, which intuitively shows that candidate B has the highest emotional attitude score of 90 points; candidate A is second at 85 points; and candidate C is relatively low at 70 points. The specific score of each candidate is also marked on the chart for a clearer comparison.
[0213] For the multi-dimensional professional scores, the server may choose to display them in a line graph. The height of the line reflects the difference in scores, showing that candidate B has the highest multi-dimensional professional score, with the line at the top; candidate A is slightly inferior; and candidate C's line is at the bottom. Similarly, the specific scores of each are clearly marked on the line graph.
[0214] In addition to these two main scores, for preset key evaluation indicators, such as years of work experience, suppose candidate A has 5 years of work experience, candidate B has 7 years of work experience, and candidate C has 3 years of work experience. The server can use a pie chart to show this ratio, and the size of each sector represents the proportion of different candidates' work experience in the total.
[0215] Combining these comparison data, the server generates a comprehensive comparison analysis chart.
[0216] Then, the server displays the comparative analysis chart on the target feedback page. The layout of the target feedback page can be that the comparative analysis chart is displayed in the upper part, and the chart occupies a larger space to highlight the key points. The scores and key indicators of each candidate are clearly visible, and different colors or marks represent different candidates.
[0217] The lower part of the page lists a link to a detailed interview analysis report for each candidate, which recruiters can click to view more specific content, such as the candidate's interview answer record, specific strengths and weaknesses, etc.
[0218] In this way, recruiters can see the comprehensive performance comparison of each candidate at a glance on the target feedback page, so as to make recruitment decisions more accurately and efficiently and select the most suitable candidate for the position of "Investment Advisor".
[0219] In order to more clearly describe the solution provided by the embodiment of the present invention, a relatively complete implementation method is provided below.
[0220] In terms of system implementation, deep learning-based language models, such as BERT and GPT, can be used to understand the semantics of job descriptions and resumes and generate relevant interview questions. At the same time, the answer analysis module can combine sentiment analysis, keyword extraction, and semantic matching technologies to conduct multi-dimensional evaluations of candidates' answers.
[0221] System architecture:
[0222] The system mainly consists of five modules, namely, job requirement analysis module, resume analysis module, interview question generation module, interview answer analysis module and result feedback module.
[0223] Each module is relatively independent and exchanges data through interfaces to achieve information transmission and task execution.
[0224] Implementation details of the job requirements analysis module:
[0225] Use Python programming language combined with natural language processing libraries (such as spaCy, NLTK, etc.) to implement text preprocessing.
[0226] The BERT model is used to vectorize the job description and extract the key features of job-related skills.
[0227] Implementation details of the resume analysis module:
[0228] The resume parser uses a deep learning model to parse resumes and convert them into structured data, including the candidate's educational background, work experience, etc.
[0229] The matching engine calculates the similarity between the resume and the job description using the TF-IDF algorithm to generate a matching score.
[0230] Implementation details of the interview question generation module:
[0231] Interview question generation uses a pre-trained GPT model to generate targeted questions based on the input job requirements and candidate background.
[0232] Question types include technical questions, scenario simulation questions, behavioral questions, etc. The type and difficulty of question generation can be controlled by setting different templates and conditions.
[0233] Implementation details of the interview answer analysis module:
[0234] The BERT model is used to vectorize the candidates’ responses, and sentiment analysis tools are used to evaluate factors such as emotions and attitudes in the responses.
[0235] Based on the content and logical structure of the answers, candidates are scored in multiple dimensions to ensure the objectivity and consistency of the evaluation results.
[0236] Implementation details of the result feedback module:
[0237] Use data visualization tools (such as Matplotlib, Plotly, etc.) to generate an interview evaluation report, which includes the candidate's overall performance, scores in various dimensions, and graphical evaluation results.
[0238] The feedback results are displayed to the interviewer through the web interface so that he or she can make a quick recruitment decision.
[0239] Please refer to Figure 2 , Figure 2 An interview analysis device 110 based on natural language processing provided by an embodiment of the present invention includes:
[0240] The acquisition module 1101 is used to acquire the job description information of the target job, and perform vectorization processing on the job description information to obtain the job core requirement information of the target job; acquire the resume to be processed, parse the resume to be processed, and obtain the matching score between the resume to be processed and the job description information; if the matching score is greater than a preset matching score threshold, generate interview questions according to the job core requirement information and the resume to be processed;
[0241] The analysis module 1102 is used to receive the interview answers to the interview questions, and process the interview answers to obtain interview analysis results; and visualize the interview analysis results and display them on the target feedback page.
[0242] It should be noted that the implementation principle of the interview analysis device 110 based on natural language processing can refer to the implementation principle of the interview analysis method based on natural language processing, which will not be repeated here. It should be understood that the division of the various modules of the above device is only a division of logical functions. In actual implementation, they can be fully or partially integrated into a physical entity, or physically separated. And these modules can all be implemented in the form of software calling through processing elements; they can also be all implemented in the form of hardware; some modules can also be implemented in the form of software calling through processing elements, and some modules can be implemented in the form of hardware. For example, the interview analysis device 110 based on natural language processing can be a separately established processing element, or it can be integrated in a chip of the above device. In addition, it can also be stored in the memory of the above device in the form of program code, and called and executed by a processing element of the above device. The function of the interview analysis device 110 based on natural language processing. The implementation of other modules is similar. In addition, all or part of these modules can be integrated together, or they can be implemented independently. The processing element described here can be an integrated circuit with signal processing capabilities. In the implementation process, each step of the above method or each module above can be completed by an integrated logic circuit of hardware in the processor element or instructions in the form of software.
[0243] For example, the above modules may be one or more integrated circuits configured to implement the above methods, such as one or more application specific integrated circuits (ASIC), or one or more microprocessors (digital signal processors, DSP), or one or more field programmable gate arrays (FPGA), etc. For another example, when a module above is implemented in the form of a processing element scheduling program code, the processing element may be a general-purpose processor, such as a central processing unit (CPU) or other processor that can call program code. For another example, these modules may be integrated together and implemented in the form of a system-on-a-chip (SOC).
[0244] The embodiment of the present invention provides a computer device 100, which includes a processor and a non-volatile memory storing computer instructions. When the computer instructions are executed by the processor, the computer device 100 executes the above-mentioned interview analysis device 110 based on natural language processing. Figure 3 As shown, Figure 3The computer device 100 provided in the embodiment of the present invention is a structural block diagram. The computer device 100 includes an interview analysis device 110 based on natural language processing, a memory 111, a processor 112 and a communication unit 113.
[0245] To achieve data transmission or interaction, the memory 111, the processor 112 and the communication unit 113 are electrically connected to each other directly or indirectly. For example, the electrical connection between these elements can be achieved through one or more communication buses or signal lines. The interview analysis device 110 based on natural language processing includes at least one software function module that can be stored in the memory 111 in the form of software or firmware or solidified in the operating system (OS) of the computer device 100. The processor 112 is used to execute the interview analysis device 110 based on natural language processing stored in the memory 111, such as the software function modules and computer programs included in the interview analysis device 110 based on natural language processing.
[0246] An embodiment of the present invention provides a readable storage medium, which includes a computer program. When the computer program is executed, the computer device where the readable storage medium is located is controlled to execute the aforementioned interview analysis device 110 based on natural language processing.
[0247] For illustrative purposes, the foregoing description is made with reference to specific embodiments. However, the above illustrative discussion is not intended to be exhaustive or to limit the present disclosure to the precise form disclosed. Numerous modifications and variations are possible in accordance with the above teachings. These embodiments are selected and described in order to best illustrate the principles of the present disclosure and its practical application, so that those skilled in the art can best utilize the present disclosure and utilize various embodiments with different modifications to suit the intended specific application.
Claims
1. An interview analysis method based on natural language processing, characterized in that: include: Obtaining job description information of a target job, and performing vectorization processing on the job description information to obtain core job requirement information of the target job; Obtaining a resume to be processed, parsing the resume to be processed, and obtaining a matching score between the resume to be processed and the job description information; When the matching score is greater than a preset matching score threshold, generating interview questions according to the core requirement information of the position and the resume to be processed; Receiving interview answers to the interview questions, and processing the interview answers to obtain interview analysis results; The interview analysis results are visualized and displayed on the target feedback page.
2. The method according to claim 1, characterized in that The step of obtaining the job description information of the target job and performing vectorization processing on the job description information to obtain the core job requirement information of the target job includes: Obtain job description information for target positions; Inputting the job description information into a preset deep learning model for vectorization processing to obtain a job description feature vector; Extracting skill keywords and semantic information of the target position according to the position description feature vector; The skill keywords and semantic information are used as the core job requirement information of the target job.
3. The method according to claim 2, characterized in that The obtaining of the resume to be processed, parsing the resume to be processed, and obtaining a matching score between the resume to be processed and the job description information includes: Acquire the resume to be processed, and perform structured processing on the resume to be processed to obtain structured resume text content; Based on a preset matching algorithm, similarity calculation is performed on the candidate background included in the resume text content for the skill keywords and the semantic information to obtain a matching score between the resume to be processed and the job description information.
4. The method according to claim 3, characterized in that The generating of interview questions according to the core requirement information of the position and the resume to be processed includes: Inputting the skill keywords, the semantic information and the candidate background into a pre-trained question generation model to obtain technical questions, situational questions and behavioral questions for the skill keywords, the semantic information and the candidate background; The technical questions, the situational questions, and the behavioral questions are used as the interview questions.
5. The method according to claim 1, characterized in that The receiving of interview answers to the interview questions and processing the interview answers to obtain interview analysis results include: Input the interview answer into a preset deep learning model for vectorization processing to obtain an interview answer vector; Calling a sentiment analysis tool to perform sentiment attitude evaluation on the interview answer vector to obtain a sentiment attitude score corresponding to the interview answer; Performing a multidimensional professional evaluation based on the answer content and logical structure of the interview answer vector to obtain a multidimensional professional score corresponding to the interview answer; The emotional attitude score and the multidimensional professional score are used as the interview analysis results.
6. The method according to claim 1, characterized in that The visualizing the interview analysis results and displaying them on the target feedback page includes: Calling a preset visualization tool to visualize the interview analysis results to obtain an interview analysis report; The interview analysis report is displayed on the target feedback page according to the preset arrangement.
7. The method according to claim 6, characterized in that The method further comprises: Collect and organize interview analysis results of multiple candidates for the same target position; By comparing the emotional attitude scores, multi-dimensional professional scores and preset key evaluation indicators of different candidates, a comparative analysis chart between candidates is generated; The comparative analysis chart is displayed in the target feedback page.
8. An interview analysis device based on natural language processing, characterized in that: include: An acquisition module is used to acquire job description information of a target job and perform vectorization processing on the job description information to obtain the core job requirement information of the target job; Obtaining a resume to be processed, parsing the resume to be processed, and obtaining a matching score between the resume to be processed and the job description information; When the matching score is greater than a preset matching score threshold, generating interview questions according to the core requirement information of the position and the resume to be processed; An analysis module, used for receiving interview answers to the interview questions and processing the interview answers to obtain interview analysis results; The interview analysis results are visualized and displayed on the target feedback page.
9. A computer device, characterized in that: The computer device comprises a processor and a non-volatile memory storing computer instructions. When the computer instructions are executed by the processor, the computer device executes the method according to any one of claims 1 to 7.
10. A readable storage medium, characterized in that: The readable storage medium includes a computer program, and when the computer program is executed, the computer device where the readable storage medium is located is controlled to execute the method according to any one of claims 1 to 7.