Resume structuring analysis method and system based on domain ontology library
By establishing a domain ontology library and using automated methods to extract structured resume information, the accuracy and efficiency issues of resume parsing in existing technologies have been resolved, achieving efficient and accurate resume information extraction.
Patent Information
- Application Number
- CN202211200761.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-09-29
- Publication Date
- 2025-12-23
- Estimated Expiration
- 2042-09-29
AI Technical Summary
Existing technologies rely on feature engineering and training set quality in resume parsing, resulting in low recognition rates and significant limitations, making it difficult to effectively extract structured information.
Establish a domain ontology library, including work unit, job title identifiers, etc. Extract structured information from resumes using automated methods, extract bracket text using a stack structure, and extract entities based on time, address, and job title order.
It improves the accuracy and efficiency of resume parsing, reduces the dependence on the quality and quantity of the training set, is applicable to various types of resume data, and has a high recognition rate and method reusability.
Smart Images

Figure CN115510844B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application belongs to the field of resume analysis, and particularly relates to a work resume structured analysis method and system based on a domain ontology library. BACKGROUND
[0002] The statements in this section merely provide background information related to the present application and do not necessarily constitute the prior art.
[0003] A resume is a necessary item that a job seeker needs to carry during an interview, is a "knocking stone" for a job seeker to apply for a job, and is also a powerful way for an enterprise to understand the past experience of a job seeker. A resume is an objective description of basic information, education experience, and work experience of an individual, and a job seeker can comprehensively and meticulously introduce himself / herself through a resume. An enterprise can efficiently determine whether a job seeker meets the requirements of a post through a resume. A scientific research institute can extract personal features of a job seeker through a resume, build a user portrait, a knowledge graph, a complex network, and other artificial intelligence related topics, and solve problems such as recommending a talent to a recruitment enterprise, recommending a job talent to an enterprise, and mining potential relationships between an enterprise and a talent. However, the key to solving these problems is how to extract structured work experience, education experience, and other feature information from a resume, that is, resume information analysis.
[0004] A resume is a special kind of big data and unstructured text, which contains not only various forms of textual descriptions with different focuses, but also highly similar expression structures such as work experience and education experience. Therefore, structured data meeting certain standard format constraints facilitates resume information analysis, but the flexible and variable characteristics of language organization bring challenges to the analysis work.
[0005] A resume analysis method based on machine learning can reduce labor costs to a certain extent, but it relies too much on feature engineering, that is, a standard structured resume data needs to be manually prepared for a machine learning model to learn; a fixed format based analysis method has high recognition rate, but has great limitations; and a statistical method relies too much on the quantity and quality of a training set. SUMMARY
[0006] To solve the above problems, the present application provides a work resume structured analysis method and system based on a domain ontology library. The present application summarizes the resume writing logic through prior knowledge, establishes a domain ontology library including a work unit identifier, a secondary unit identifier, and a position identifier, and extracts structured information in a resume through an automatic method without too much human interference.
[0007] According to some embodiments, a first aspect of the present application provides a work resume structured analysis method based on a domain ontology library, which adopts the following technical solution:
[0008] The resume structuring analysis method based on the domain ontology library comprises:
[0009] Obtaining resume data, extracting and screening bracket text content to obtain a set of to-be-processed sentences;
[0010] Splitting and recombining the set of to-be-processed sentences based on split markers to obtain a set of corrected to-be-processed sentences;
[0011] Based on the set of corrected to-be-processed sentences, extracting entities according to the order of time, address, work unit and job title;
[0012] Summarizing the extracted time entities, address entities, work unit entities and job title entities.
[0013] Further, the obtaining of the resume data, the extraction and screening of the bracket text content to obtain a set of to-be-processed sentences is specifically as follows:
[0014] Extracting the bracket text of the resume data based on a stack structure to obtain a set of bracket texts;
[0015] Screening the set of bracket texts based on whether the content contains time structure and bracket text to obtain a set of to-be-processed sentences of the resume.
[0016] Further, the extraction of the bracket text of the resume data based on the stack structure to obtain a set of bracket texts comprises:
[0017] Traversing the resume data string, declaring a stack operation string and a stack in-out flag;
[0018] If the character of the resume data is not a bracket, updating the current character to the stack operation string;
[0019] If the character of the resume data is a left bracket, in-stacking: performing a plus 1 operation on the stack in-out flag, and updating the current character to the stack operation string;
[0020] If the character of the resume data is a right bracket and the stack in-out flag is not equal to 1, in-stacking: performing a minus 1 operation on the stack in-out flag, and updating the current character to the stack operation string;
[0021] If the character of the resume data is a right bracket and the stack in-out flag is equal to 1, out-stacking: extracting the text data in the brackets in the stack operation string, resetting the stack in-out flag to 0, and resetting the stack operation string to an empty string;
[0022] After the traversal of the resume data is completed, all the bracket texts in the resume are obtained to form a set of bracket texts.
[0023] Further, the screening condition is specifically:
[0024] If the bracket text content is completely equal to the comprehensive structure, it is not reserved; wherein the comprehensive structure is: {hosting work, holding a position, being on loan, concurrently serving, (\d{4}[year.] \d{1,2}[month]?).* elected.*, (\d{4}[year.] \d{1,2}[month]?).* clear.*, (\d{4}[year.] \d{1,2}[month]?).* approved.*}.
[0025] If the bracket text contains time structure content, it is taken as a new sentence; otherwise, if the bracket text does not contain time structure content, it is reserved.
[0026] Further, the split marker is: {“,”, “concurrently”}.
[0027] Further, based on the modified to-be-processed sentence set, entity extraction is performed according to the order of time, address, work unit and work duty, specifically:
[0028] The start time and the end time are determined according to the number of time structures existing in each modified to-be-processed sentence, and a time entity is obtained;
[0029] The address entity is determined according to the address information in each modified to-be-processed sentence;
[0030] The work unit name is identified by traversing the work marker in each modified to-be-processed sentence, and a work unit entity is determined;
[0031] The work duty is identified by traversing the duty marker in each modified to-be-processed sentence, and a work duty entity is determined.
[0032] Further, the start time and the end time are determined according to the number of time structures existing in each modified to-be-processed sentence, and a time entity is obtained, including:
[0033] If there are two or more time structures in each modified to-be-processed sentence, the first time structure is the start time and the second time structure is the end time;
[0034] If there is only one time structure in each modified to-be-processed sentence, the time structure is the start time and the end time is empty, which is defaulted as “so far”;
[0035] If the modified to-be-processed sentence does not contain time information, the time information of the previous modified to-be-processed sentence is used as the time of the modified to-be-processed sentence.
[0036] Further, the work identifier in each modified to-be-processed sentence is traversed to identify the work unit name and determine the work unit entity, including:
[0037] The work unit identifier in each modified to-be-processed sentence is traversed to find the identifier with the smallest character / character string subscript existing in the modified to-be-processed sentence, that is, the smallest work unit identifier;
[0038] If the smallest work unit identifier subscripts are consistent, the work unit identifier with the larger length is taken as the work unit identifier;
[0039] If the second-smallest work unit identifier in the modified to-be-processed sentence exists in the two-level unit identifier, the second-smallest work unit identifier is the work unit identifier of the modified to-be-processed sentence;
[0040] The work unit identifier and the character string in front of the work unit identifier are extracted as the work unit entity.
[0041] Further, the job title identifier in each modified to-be-processed sentence is traversed to identify the job title and determine the job title entity, including:
[0042] If “,” exists in each modified to-be-processed sentence, the modified to-be-processed sentence is split based on “,”;
[0043] If the statement after “,” does not have a work unit identifier, the statement after “,” is only the job title, and no separate operation is performed; if the statement after “,” has a work unit identifier, the extraction process of the work unit entity and the extraction process of the job title entity are repeated;
[0044] The job title identifier in each modified to-be-processed sentence is traversed to find the identifier with the smallest character / character string subscript existing in the statement, that is, the smallest job title identifier;
[0045] If the smallest job title identifier subscripts are consistent, the work unit identifier with the larger length is taken as the work unit identifier;
[0046] The job title identifier and the character string in front of the job title identifier are extracted as the job title entity;
[0047] If the first character of the job title entity is a bracket, the bracket is moved to the corresponding work unit entity, and the first bracket structure in the job title entity is deleted.
[0048] According to some embodiments, the second aspect of the present application provides a work resume structured analysis system based on a domain ontology library, which adopts the following technical solution:
[0049] The work resume structured analysis system based on the domain ontology library includes:
[0050] The bracket text screening module is configured to obtain the work resume data, extract the bracket text content and screen to obtain a set of to-be-processed sentences;
[0051] The bracket text splitting module is configured to split and recombine the set of to-be-processed sentences based on a splitting symbol to obtain a set of revised to-be-processed sentences;
[0052] The sentence entity extraction module is configured to extract entities based on the set of revised to-be-processed sentences according to the order of time, address, work unit and work duty;
[0053] The sentence entity summary module is configured to summarize the extracted time entity, address entity, work unit entity and duty entity.
[0054] According to some embodiments, a third aspect of the present application provides a computer readable storage medium.
[0055] A computer readable storage medium has a computer program stored thereon, which, when executed by a processor, implements the steps in the work resume structured analysis method based on the domain ontology library according to the first aspect.
[0056] According to some embodiments, a fourth aspect of the present application provides a computer device.
[0057] A computer device includes a memory, a processor and a computer program stored on the memory and executable on the processor, and the processor implements the steps in the work resume structured analysis method based on the domain ontology library according to the first aspect when executing the program.
[0058] Compared with the prior art, the present application has the following advantages:
[0059] The present application summarizes the resume writing logic through prior knowledge, and establishes a domain ontology library including work unit symbols, secondary unit symbols and duty symbols. Compared with the statistical method, the prior knowledge without human interference replaces the training set with excellent quality and quantity, so the present application has better efficiency than the statistical method. Meanwhile, the present application does not need to manually prepare resume data for machine learning to extract and learn features, and uses more objective and authoritative prior knowledge to make the present application have higher accuracy than the machine learning method, and does not need to worry about overfitting problem.
[0060] The work resume structured analysis method based on the domain ontology library provided in the application does not need to prepare a training set in a standard format, considers the structures such as units and positions according to the results, and optimizes the prior symbol set. It is verified in actual work resume data sets that the application has high accuracy, can maintain good performance in multiple types of performance, and has high practical value. Compared with the parsing method based on a fixed format, the application can realize method reuse in multiple fields and multiple scenes while maintaining high recognition rate. BRIEF DESCRIPTION OF DRAWINGS
[0061] The accompanying drawings, which form a part of this specification, are included to provide a further understanding of the application and are incorporated in and constitute a part of this specification. The embodiments of these drawings are set forth to explain the application and are not intended to limit the application.
[0062] Figure 1 is a flow chart of the work resume structured analysis method based on the domain ontology library described in the embodiments of the application. DETAILED DESCRIPTION
[0063] The application will be further described below with reference to the drawings and embodiments.
[0064] It should be noted that the following detailed description is illustrative only and is intended to provide further description of the application. Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which the application pertains.
[0065] It should be noted that the terms used herein are only intended to describe specific embodiments and are not intended to limit the exemplary embodiments according to the application. As used herein, the singular form is intended to include the plural form unless the context clearly indicates otherwise, and it should also be understood that when the terms "comprise" and / or "include" are used in the specification, there is a presence of the features, steps, operations, devices, components and / or combinations thereof.
[0066] The embodiments in the application and the features in the embodiments can be combined with each other without conflict.
[0067] Glossary:
[0068] Domain ontology library: The domain ontology library involved in the application refers to the domain ontology library of terms such as addresses, units, and positions. The domain ontology library includes an address ontology library, a unit ontology library, and a position ontology library, wherein:
[0069] The address ontology library includes the province, city, and district information of the address, and is used to identify the address information involved in the resume statement;
[0070] The entity ontology includes work unit identifiers and secondary unit identifiers. The identifiers are standardized unit names obtained based on prior knowledge and are used to identify the work units mentioned in the resume. Examples include: department, bureau, management committee, Red Cross, trade union, chamber of commerce, federation of industry and commerce, committee, institute, factory, commission, company, and office.
[0071] The job ontology includes job identifiers, which are standardized job names obtained based on prior knowledge and used to identify job information mentioned in resumes. Examples include Chairman, Director, President, President Assistant, General Manager, Director, Assistant General Manager, Supervisor, etc.
[0072] Example 1
[0073] like Figure 1 As shown, this embodiment provides a structured parsing method for job resumes based on a domain ontology library. This embodiment uses the application of this method to a server as an example for illustration. It is understood that this method can also be applied to terminals, and can also be applied to systems including terminals, servers, and other components, and can be implemented through interaction between the terminal and the server. The server can be an independent physical server, a server cluster composed of multiple physical servers, or a distributed system. It can also be a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network servers, cloud communication, middleware services, domain name services, CDN security services, and big data and artificial intelligence platforms. The terminal can be a smartphone, tablet, laptop, desktop computer, smart speaker, smartwatch, etc., but is not limited to these. The terminal and server can be directly or indirectly connected via wired or wireless communication, which is not limited herein. In this embodiment, the method includes the following steps:
[0074] Obtain job resume data, extract the content of the bracketed text and filter it to obtain a set of statements to be processed;
[0075] Using the splitting marker as the splitting basis, the set of statements to be processed is split and reorganized to obtain the corrected set of statements to be processed.
[0076] Based on the revised set of statements to be processed, entities are extracted according to the order of time, address, work unit, and job title.
[0077] The extracted time entity, address entity, work unit entity, and job title entity are summarized.
[0078] For the structured extraction of resumes, this invention uses a domain ontology library to solve the problems of low efficiency in recognizing abbreviations of units, low accuracy in recognizing first and second-level units, and incomplete recognition of units with two job titles in a single statement based on machine learning methods; it also solves the problem of weak recognition ability of units that appear less frequently in resumes in statistical parsing methods; and it solves the problem that fixed-format methods cannot enumerate all extraction field formats and cannot extract field content with special formats.
[0079] like Figure 1 As shown, this invention obtains resumes from enterprises, schools, and government agencies on the internet, preprocesses them to obtain the work / education experience section, and constructs a domain ontology library that conforms to the resume type. The structured resume parsing method based on the domain ontology library includes identifying brackets, splitting the resume into multiple sentences, extracting structured information sentence by sentence, merging results, and optimization. This invention uses "2010.10-2015.03 Chairman and CFO (concurrently) of Shandong A Co., Ltd., and General Manager and Technician of Qingdao B Co., Ltd. (concurrently Technical Director of Jinan C Co., Ltd. from April 2012 to July 2013)" as a reference example. The specific parsing steps are as follows:
[0080] It should be noted that the sample data in this embodiment is based on a dataset of resumes. A resume may contain multiple work / education experiences, and each work / education experience may contain multiple statements. For example, a person's resume might read: a. 2020-2021, served as Director at Company A and General Manager at Company B; b. 2021-2022, served as Chairman at Company C. In this example: a and b are contents of a resume; a and b are two work experiences in the resume; "2020-2021, served as Director at Company A" and "General Manager at Company B" are two statements in a; and in this embodiment, the entity extraction object is the statement.
[0081] Step 1: Determine the content within the parentheses.
[0082] Step 1.1 Extracting text from brackets using a stack structure
[0083] The main steps of the bracket text extraction algorithm are shown below:
[0084] (1) Traverse the sample data string, declare the stack operation string (initially empty) and the push / pop flag (initially 0);
[0085] (2-1) If the character is not a parenthesis, update the current character in the stack operation string;
[0086] (2-2) If the character is a left parenthesis, push it onto the stack: increment the push / pop flag by 1 and update the current character in the stack operation string;
[0087] (2-3) If the character is a right parenthesis and the push / pop flag is not equal to 1, push: decrement the push / pop flag by 1 and update the current character in the stack operation string;
[0088] (2-4) If the character is a right parenthesis and the push / pop flag is equal to 1, pop: extract the text data inside the parentheses in the stack operation string, reset the push / pop flag to 0, and reset the stack operation string to an empty string.
[0089] When performing a pop operation, the popped string may be a complete set of parentheses or it may contain non-parentheses content. For example, the popped data might be: "2010.10-2015.03 Chairman and Chief Financial Officer (concurrently) of Shandong A Co., Ltd." Therefore, when extracting the text data within the parentheses in the stack operation string, regular expressions must be used for extraction: [\((](.*)[\))].
[0090] (3) Obtain all parenthetical text from the work resume, forming a set of parenthetical text. That is: {"concurrently held", "concurrently served as Technical Director of Company C in Jinan from April 2012 to July 2013"}
[0091] Step 1.2 Filter the text in brackets according to the criteria.
[0092] The parentheses filtering criteria are:
[0093] a. Content exactly equal to the following structure will not be retained: {Presiding over work, on temporary assignment, seconded, concurrently serving, (\d{4}[year\.]\d{1,2}[month]?).*Elected.*, (\d{4}[year\.]\d{1,2}[month]?).*Clarified.*, (\d{4}[year\.]\d{1,2}[month]?).*Approved.*}
[0094] b. Content containing a time structure, presented as a new sentence.
[0095] c. Content that does not contain a time structure will be retained.
[0096] Based on prior knowledge and requirements analysis, it can be concluded that the structures described in section a mostly appear in the job description section, and have no actual meaning to the job description itself, but are merely supplementary descriptions of the job description entity. Excluding the influence of these structures on the final result will help to use the results of this invention for further analysis.
[0097] Step 1 yields the following set of statements to be processed for this work history: {"2010.10-2015.03 Chairman and CFO of Shandong A Co., Ltd., and General Manager and Technician of Qingdao B Co., Ltd.", "April 2012 to July 2013 concurrently served as Technical Director of Jinan C Company"}.
[0098] Step 2: Split the statement
[0099] A statement may have employment experiences in multiple different units, and it needs to be split into different statements for structured parsing. The splitting identifiers are constructed from prior knowledge as {",", "兼"}, and based on these splitting identifiers, the set of statements to be processed is split and reorganized to obtain the corrected set of statements to be processed;
[0100] The corrected set of statements to be processed after step2 is: {"From October 2010 to March 2015, Chairman and Chief Financial Officer of Shandong A Co., Ltd.", "General Manager and Technician of Qingdao B Co., Ltd.", "From April 2012 to July 2013, concurrently served as Technical Director of Jinan C Co."}
[0101] step3 Entity extraction based on the domain ontology library
[0102] step3.1 Temporal entity
[0103] The regular expression for extracting time is: re.search("(\d{4}[年\.]\d{1,2}[月]?)\s*?[-—至]{1,2}\s*?(\d{4}[年\.]\d{1,2}[月]?)?",text); re.search("(\d{4}[年\.]\d{1,2}[月]?)\s*?",text). The function of this expression is to extract time information in the structure types of YYYY年MM月, YYYY.MM, YYYYMM, etc. in the text, such as: September 2022, 2022.09, 202209, etc.
[0104] If there are two or more time structures, the first time structure is the start time and the second time structure is the end time; if there is only one time structure, then this time structure is the start time and the end time is empty, defaulting to "up to now". If this statement does not contain time information, the time information of the previous statement is used as the time for this statement.
[0105] The temporal entities extracted in step3.1 are shown in Table 1:
[0106] Table 1 Temporal entities
[0107] Sentence Start time End time 2010.10-2015.03 Chairman of the Board of Directors and Financial Director of Shandong A Co., Ltd. 2010.10 2015.03 General Manager and Technician of Qingdao B Co., Ltd. 2010.10 2015.03 Served as Technical Director of Jinan C Company from April 2012 to July 2013 April 2012 July 2013
[0108] step3.2 Address entity extraction based on the address ontology library
[0109] Based on the address information reflected in the statement, the address information such as province, city, and district is intelligently extracted based on the prior knowledge in the domain ontology library - address ontology library, and the address information that has undergone historical changes is intelligently identified. For example, the former Kenli County can be identified as: Shandong Province - Dongying City - Kenli County.
[0110] step3.2 address entity extraction, as shown in Table 2:
[0111] Table 2 address entity
[0112]
[0113] step3.3 work unit entity extraction based on unit ontology library
[0114] According to the work unit identifier in the domain ontology library-unit ontology library, the first and second work unit names most consistent with the sentence semantics are intelligently identified, and according to the secondary unit identifier, it is judged whether the unit entity needs to be extracted to the secondary unit. At the same time, when analyzing the work unit of the sentence, for the sentences that do not exist {company, bank, university, middle school, primary school, college} string, the address information in the sentence is not retained. The main steps of the work unit extraction algorithm are as follows:
[0115] (1) Traverse the work unit identifier to find the identifier with the smallest character / string index that exists in the sentence, i.e. the smallest work unit identifier;
[0116] (2) If there are multiple smallest work unit identifiers, i.e. multiple identifiers with the same index and the smallest index, then take the one with the largest work unit identifier length as the work unit identifier;
[0117] (3) If the second smallest work unit identifier in the sentence exists in the secondary unit identifier, then the second smallest work unit identifier is the work unit identifier of the sentence;
[0118] (4) Extract the work unit identifier and the string before it as the work unit entity.
[0119] It can be understood that the size of the index of the work unit identifier is determined by the size of the character index; for example: "Xx Company Branch Office", in this sentence, { "company", "place"} are work unit identifiers, but the character index of "company" in this sentence is 2 (the index starts from 0), and the character index of "place" is 9. The character index of "company" is the smallest, so the work unit identifier of this sentence is "company".
[0120] The work unit identifier includes but is not limited to: hall, bureau, management committee, Red Cross Society, trade union, chamber of commerce, federation of industry and commerce, committee, institute, factory, committee, company, office, group limited company, bank, school, campus, newspaper, college, federation, secondary school, college, job speciality. The secondary unit identifier includes but is not limited to: office, office, research room, research institute, laboratory.
[0121] In real scenarios, only obtaining the first-level unit name does not meet the actual needs of some scenarios. For example, when analyzing whether two persons, A and B (A once worked for D Company, and B once worked for D Company XX Branch) worked together in the same company, if only the first-level unit name is taken, A and B are in a working relationship, but B is in XX Branch, and A and B are actually in the same system but have no working relationship. Therefore, the above work unit entity extraction algorithm can accurately mine the work unit entity in the work experience, and lay a good foundation for subsequent work experience mining, person relationship analysis, and person portrait establishment.
[0122] Step 3.3: Extract the work unit entity, as shown in Table 3:
[0123] Table 3: Work unit entity
[0124] Sentence Work unit 2010.10-2015.03 Chairman of the Board of Directors and Financial Director of Shandong A Co., Ltd. Shandong A Co., Ltd. General Manager and Technician of Qingdao B Co., Ltd. Qingdao B Co., Ltd. Served as Technical Director of Jinan C Company from April 2012 to July 2013 Jinan C Company
[0125] Step 3.4: Duty entity extraction based on the duty ontology library
[0126] According to the duty identifier in the domain ontology library-duty ontology library, the duty that best fits the resume semantics is intelligently identified. Meanwhile, the duty extraction work does not need to retain the work unit entity extracted in step 3.3, and the main steps of the duty extraction algorithm are as follows:
[0127] (1) If “,” exists, split the sentence based on “,”;
[0128] (2) If the sentence after “,” does not exist the work unit identifier, the sentence after “,” is only the duty, and no separate operation is performed; if the work unit identifier exists, repeat step 3.3 and step 3.4;
[0129] (3) Traverse the duty identifier to find the identifier that exists in the sentence and has the smallest character / string subscript, i.e., the smallest duty identifier;
[0130] (4) If the smallest duty identifier subscript is consistent, take the work unit identifier with the larger length as the work unit identifier;
[0131] (5) Extract the duty identifier and the string before it as the duty entity;
[0132] (6) If the first character of the duty entity is a bracket, move the bracket to the corresponding work unit entity, and delete the first bracket structure in the duty entity.
[0133] It is understandable that the subscript size of the job title identifier is determined by the size of the character index; for example, in the statement "Chairman of Company X", {"Chairman"} is the job title identifier, its character index is 4 (index starts from 0), and since there is only one job title identifier "Chairman" in this statement, it can be determined as the smallest character index. Therefore, the job title identifier of this statement is "Chairman".
[0134] Job titles include: Chairman, Director, President, President Assistant, General Manager, Director, General Manager Assistant, Supervisor, Manager, Specialist, Clerk, etc.
[0135] The job entities extracted in step 3.4 are shown in Table 4:
[0136] Table 4 Job Entities
[0137]
[0138] Step 4: Information Summary
[0139] The time entity, address entity, work unit entity, and job title entity extracted from steps 3.1, 3.2, 3.3, and 3.4 will be summarized, checked, and optimized, including work unit, secondary unit identifier, and job title identifier.
[0140] After processing in this embodiment, "2010.10-2015.03 Chairman and Chief Financial Officer of Shandong A Co., Ltd. (concurrently serving as) General Manager and Technician of Qingdao B Co., Ltd. (concurrently serving as Chief Technology Officer of Jinan C Co., Ltd. from April 2012 to July 2013)" can be decomposed into the contents as shown in Table 5.
[0141] Table 5: Summary of Resumes by Entity
[0142]
[0143] Example 2
[0144] This embodiment provides a structured CV parsing system based on a domain ontology library, including:
[0145] The bracket text filtering module is configured to retrieve resume data, extract bracket text content and filter it to obtain a set of statements to be processed.
[0146] The bracket text splitting module is configured to split and reorganize the set of statements to be processed based on the splitting marker, and obtain the corrected set of statements to be processed.
[0147] The sentence entity extraction module is configured to extract entities according to the order of time, address, work unit and work duty based on the revised sentence set to be processed.
[0148] The sentence entity summary module is configured to summarize the extracted time entity, address entity, work unit entity and duty entity.
[0149] The above modules have the same examples and application scenarios as the corresponding steps, but are not limited to the content disclosed in the above embodiment one. It should be noted that the above modules as part of the system can be executed in a computer system such as a set of computer executable instructions.
[0150] The description of each embodiment in the above embodiments has its own emphasis, and the parts not described in detail in a certain embodiment can refer to the related description of other embodiments.
[0151] The proposed system can be implemented in other ways. For example, the system embodiments described above are only illustrative, for example, the division of the above modules is only a logical function division, and in actual implementation, there can be another division method, for example, multiple modules can be combined or integrated into another system, or some features can be ignored or not executed.
[0152] Embodiment three
[0153] The embodiment provides a computer readable storage medium, which stores a computer program, and the program is executed by a processor to realize the steps in the work resume structured analysis method based on a domain ontology library.
[0154] Embodiment four
[0155] The embodiment provides a computer device, which includes a memory, a processor and a computer program stored in the memory and executable on the processor, and the processor realizes the steps in the work resume structured analysis method based on a domain ontology library when executing the program.
[0156] Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a system or a computer program product. Therefore, the present application can be in the form of a hardware embodiment, a software embodiment or an embodiment combining software and hardware aspects. Moreover, the present application can be in the form of a computer program product implemented on one or more computer usable storage media (including but not limited to magnetic disk storage and optical storage, etc.) containing computer usable program code.
[0157] The embodiments of methods, apparatuses (systems) and computer program products according to the present application can be described in terms of flowcharts and / or block diagrams. It will be understood that each flow and / or block, and / or combinations of flows and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, embedded processing device or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowcharts and / or block diagrams block or blocks. Figure 1 one or more flows and / or blocks. Figure 1 one or more flows and / or blocks.
[0158] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instructions which implement the function specified in the flowcharts and / or block diagrams block or blocks. Figure 1 one or more flows and / or blocks. Figure 1 one or more flows and / or blocks.
[0159] These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowcharts and / or block diagrams block or blocks. Figure 1 one or more flows and / or blocks. Figure 1 one or more flows and / or blocks.
[0160] It will be understood by those skilled in the art that implementing all or part of the processes in the above-described embodiments of methods can be accomplished by computer program instructions instructing relevant hardware, and the program can be stored in a computer-readable storage medium. When the program is executed, it can include the processes of the above-described embodiments of methods. The storage medium can be a magnetic disc, an optical disc, a read-only memory (ROM), a random access memory (RAM), or the like.
[0161] The above describes the specific embodiments of the present application in conjunction with the accompanying drawings, but is not a limitation on the scope of protection of the present application. Those skilled in the art should understand that various modifications or variations made by those skilled in the art on the basis of the technical solutions of the present application without inventive labor are still within the scope of protection of the present application.
Claims
1. A method for resume structured analysis based on domain ontology library, characterized in that, The method comprises the following steps: Obtaining work resume data, extracting bracket text content and screening to obtain a set of to-be-processed sentences, comprising: extracting bracket text of work resume data based on a stack structure to obtain a set of bracket texts; Splitting and recombining the set of to-be-processed sentences based on split markers to obtain a set of corrected to-be-processed sentences; Based on the set of corrected to-be-processed sentences, extracting entities according to the order of time, address, work unit and job title; Summarizing the extracted time entities, address entities, work unit entities and job title entities; The method of extracting bracket text of work resume data based on a stack structure to obtain a set of bracket texts comprises: Traversing the work resume data string, declaring stack operation string and in-out stack flag; If the character of the work resume data is not a bracket, update the current character to the stack operation string; If the character of the work resume data is a left bracket, push: the in-out stack flag performs a plus 1 operation, and the current character is updated to the stack operation string; If the character of the work resume data is a right bracket and the in-out stack flag is not equal to 1, push: the in-out stack flag performs a minus 1 operation, and the current character is updated to the stack operation string; If the character of the work resume data is a right bracket and the in-out stack flag is equal to 1, pop: extract the text data in the brackets in the stack operation string, reset the in-out stack flag to 0, and reset the stack operation string to an empty string; After the work resume data is traversed, all the bracket texts in the work resume are obtained to form a set of bracket texts.
2. The domain ontology library-based resume structuring parsing method of claim 1, wherein, The method of obtaining work resume data, extracting bracket text content and screening to obtain a set of to-be-processed sentences comprises: extracting bracket text of work resume data based on a stack structure to obtain a set of bracket texts, and further comprising: Screening the set of bracket texts according to whether the content contains time structure and bracket text to obtain a set of to-be-processed sentences of the work resume. 3.The method of claim 2, wherein, The screening condition is specifically: If the bracket text content is exactly equal to the comprehensive structure, it is not retained; wherein the comprehensive structure is: {hosting work, secondment, loan, concurrent, (\d{4}[year.] \d{1,2}[month]?).* elected.*, (\d{4}[year.] \d{1,2}[month]?).* clear.*, (\d{4}[year.] \d{1,2}[month]?).* approved.*}; If the bracket text contains time structure content, it is a new sentence; otherwise, if the bracket text does not contain time structure content, it is retained.
4. The domain ontology library-based resume structuring parsing method of claim 1, wherein, The split marker is: {"", "and", "concurrently"}.
5. The domain ontology library-based resume structuring parsing method of claim 1, wherein, The method of extracting entities based on the set of corrected to-be-processed sentences according to the order of time, address, work unit and job title is specifically: Determining the start time and end time according to the number of time structures in each corrected to-be-processed sentence to obtain time entities; Determining address entities according to address information in each corrected to-be-processed sentence; Traversing the work flag in each corrected to-be-processed sentence to identify the work unit name and determine the work unit entity; Traverse the job title symbol in each modified to-be-processed sentence, identify the job position, and determine the job position entity.
6. The domain ontology library-based resume structuring parsing method of claim 5, wherein, Determine the start time and the end time according to the number of time structures existing in each modified to-be-processed sentence, obtain the time entity, including: If there are two or more time structures in each modified to-be-processed sentence, the first time structure is the start time, and the second time structure is the end time; If there is only one time structure in each modified to-be-processed sentence, the time structure is the start time, and the end time is empty, which is defaulted as "so far"; If the modified to-be-processed sentence does not contain time information, the time information of the previous modified to-be-processed sentence is used as the time of the modified to-be-processed sentence.
7. The domain ontology library-based resume structuring parsing method of claim 5, wherein, Traverse the job title symbol in each modified to-be-processed sentence, identify the job position, and determine the job position entity, including: Traverse the job title symbol in each modified to-be-processed sentence, identify the job position, and determine the job position entity, including: If the minimum job title symbol index is consistent, the job title symbol with a larger length is taken as the job title symbol; If the second-smallest job title symbol in the modified to-be-processed sentence exists in the secondary unit symbol, the second-smallest job title symbol is the job title symbol of the modified to-be-processed sentence; Extract the job title symbol and the string before it as the job unit entity.
8. The domain ontology library-based resume structuring parsing method of claim 5, wherein, Traverse the job title symbol in each modified to-be-processed sentence, identify the job position, and determine the job position entity, including: If there are " and " in each modified to-be-processed sentence, split the modified to-be-processed sentence based on " and "; If the statement after " and " does not contain a job title symbol, the statement after " and " is only the job position, and no separate operation is performed; if the statement after " and " contains a job title symbol, the extraction process of the job unit entity and the extraction process of the job position entity are repeated; Traverse the job title symbol in each modified to-be-processed sentence, identify the job position, and determine the job position entity, including: If the minimum job title symbol index is consistent, the job title symbol with a larger length is taken as the job title symbol; Extract the job title symbol and the string before it as the job unit entity. If the first character of the job position entity is a bracket, the bracket is moved to the corresponding job unit entity, and the first bracket structure in the job position entity is deleted.
9. A resume structural analysis system based on a domain ontology library, characterized by, Including: The bracket text screening module is configured to obtain the resume data, extract the bracket text content, and screen to obtain a to-be-processed sentence set, including: extracting the bracket text of the resume data based on a stack structure to obtain a bracket text set; The bracket text splitting module is configured to split and recombine the to-be-processed sentence set according to the splitting symbol as the splitting basis to obtain a modified to-be-processed sentence set; The sentence entity extraction module is configured to extract entities according to the order of time, address, job unit, and job position based on the modified to-be-processed sentence set; The sentence entity summarizing module is configured to summarize the extracted time entity, address entity, work unit entity and position entity; The bracket text of the work resume data is extracted based on the stack structure to obtain a bracket text set, including: Traverse the work resume data string, declare a stack operation string and a stack in-out flag; If the character of the work resume data is not a bracket, update the current character to the stack operation string; If the character of the work resume data is a left bracket, stack in: the stack in-out flag performs a plus 1 operation, and the current character is updated to the stack operation string; If the character of the work resume data is a right bracket and the stack in-out flag is not equal to 1, stack in: the stack in-out flag performs a minus 1 operation, and the current character is updated to the stack operation string; If the character of the work resume data is a right bracket and the stack in-out flag is equal to 1, stack out: the bracket text data in the stack operation string is extracted, the stack in-out flag is reset to 0, and the stack operation string is reset to an empty string; After the work resume data is traversed, all the bracket texts in the work resume are obtained to form a bracket text set.
10. A computer-readable storage medium having stored thereon a computer program, characterized in that, The program is executed by the processor to implement the steps in the work resume structured analysis method based on the domain ontology library in any one of claims 1-8.
11. A computer device comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, The processor executes the program to implement the steps in the work resume structured analysis method based on the domain ontology library in any one of claims 1-8.
Citation Information
Patent Citations
Resume information extraction and characteristic identification analysis system and method based on knowledge base and rule base
CN105069560A
Resume data information analyzing processing method, device and equipment, and storage medium
CN108874928A