Resume analysis step (step 2) technology and Implementation (11) qq, email and contact number

Posted by figment on Wed, 19 Jan 2022 18:17:07 +0100

Resume analysis step (step 2) technology and Implementation (11) qq, email and contact number

Following the theory of the previous article:

Resume analysis: the commonly received resume is in the form of pictures or documents. We need to extract the text in the resume first, and then carry out algorithm analysis and AI training on the text, so as to realize the effect of analyzing resume and improving resolution.

First, we introduce the technologies needed in the whole analysis process and training process:

  1. Character recognition: OCR service (Baidu AI open platform: general character recognition)
  2. Algorithm (pseudo code: unlimited language)
  3. AI machine learning (ML.NET or Python algorithm libraries)

Step 1: extract all valuable contents (all information that can be converted: because this explanation is in Chinese, the next step is to analyze the Chinese resume as an example) step 2: identify through the algorithm and find the information that meets the requirements, such as name, gender, age, educational background, work experience, etc. Step 3: store the identified information locally, and then correct the errors manually. Take the version as a template, and submit it to the machine learning algorithm for learning and calculation to calculate the model. Step 4: re identify the obtained model to a certain amount of resume, correct it, and then hand it over to the machine learning algorithm for learning operation and repeated learning until the pass rate is close to 100%.

Step implementation:

Step 1: read the text and get the information

Refer to the previous article for details

Step 2: recognize characters and classify them

The text information we read through Baidu cloud is a region by Region string. At this time, we need to classify these strings: basic information (38 items)

#1. Name 2 Last name 3 Gender 4 Age 5 Height 6 Weight 7 Marital status 8 Date of birth 9 Account address 10 Native place address 11 ID number 12. Ethnic 13 Nationality 14 Political outlook 15 Language ability 16 English level 17 Computer level 18 Blog / home address 19 Physical condition 20 Major 21 Graduated from 22 Hobbies and specialties 23 Salary requirements 24 qq 25. Mailbox 26 contact number

qq

/// <summary>
///Verify qq
/// </summary>
///< param name = "words" > content < / param >
/// <returns></returns>
public List<string> VerificationQQ(string words, int currindex = -1)
{

    List<string> resultInfo = new List<string>();
    if (words.Contains("QQ"))
    {
        var word01 = NextWord(currindex);
        resultInfo.Add(word01);
    }

    if (words.Contains("QQ: "))
        resultInfo.Add(words);
    if (words.Contains("QQ:"))
        resultInfo.Add(words);
    return resultInfo;
}


mailbox

/// <summary>
///Verify mailbox
/// </summary>
///< param name = "words" > content < / param >
/// <returns></returns>
public List<string> VerificationEMail(string words, int currindex = -1)
{

    List<string> resultInfo = new List<string>();
    if (words.Contains("mailbox")||words.Contains("E-Mail"))
    {
        var word01 = NextWord(currindex);
        resultInfo.Add(word01);
    }

    if (words.Contains("EMail: "))
        resultInfo.Add(words);
    if (words.Contains("EMail:"))
        resultInfo.Add(words);
    if (words.Contains("E-Mail: "))
        resultInfo.Add(words);
    if (words.Contains("E-Mail:"))
        resultInfo.Add(words);
    if (words.Contains("Email:"))
        resultInfo.Add(words);
    if (words.Contains("mailbox:"))
        resultInfo.Add(words);
    if (words.Contains("mailbox"))
        resultInfo.Add(words);
    if (words.Contains("@"))
        if (words.Contains("."))
            resultInfo.Add(words);
    return resultInfo;
}

contact number

/// <summary>
///Verify contact number
/// </summary>
///< param name = "words" > content < / param >
/// <returns></returns>
public List<string> VerificationPhone(string words, int currindex = -1)
{

    List<string> resultInfo = new List<string>();
    if (words.Contains("contact number") || words.Contains("Phone"))
    {
        var word01 = NextWord(currindex);
        resultInfo.Add(word01);
    }

    if (words.Contains("contact number:"))
        resultInfo.Add(words);
    if (words.Contains("contact number:"))
        resultInfo.Add(words);
    if (words.Contains("Phone: "))
        resultInfo.Add(words);
    if (words.Contains("Phone:"))
        resultInfo.Add(words);


    if (words.Contains("13"))
        if (words.Length > 10)
            resultInfo.Add(words);
    return resultInfo;
}

To the source code, leave an email in the comment area, or add qq group: 5464965

Topics: AI