検索

CVデータ抽出

Apr 08, 2025 am 09:30 AM

導入

就職の面接に出席したり、大企業の雇用に出席したりする場合、すべての履歴書を詳細にレビューすることは、大量の応募者のために非現実的ではありません。代わりに、CVデータ抽出を活用して、候補者のCVとの主要なジョブ要件がどれだけうまく整合しているかに焦点を当てることができ、雇用主と候補者の両方にとってマッチが成功する可能性があります。

あなたのプロフィールラベルをチェックすることを想像してください - 心配する必要はありません!今では、ポジションに適合し、職務要件に関連する資格のギャップを特定するのが簡単になりました。

たとえば、求人がプロジェクト管理の経験と特定のソフトウェアの習熟度を強調している場合、候補者はこれらのスキルが履歴書ではっきりと表示されるようにする必要があります。このターゲットを絞ったアプローチは、マネージャーが資格のある応募者を迅速に特定し、候補者が繁栄できるポジションを考慮していることを保証するのに役立ちます。

最も関連性の高い資格を強調することにより、雇用プロセスがより効率的になり、両当事者は適切な恩恵を受けることができます。同社は適切な人材をより迅速に見つけ、候補者は自分のスキルと経験に合った役割を獲得する可能性が高くなります。

学習成果

  • 自動化と分析のためのCVSからのデータ抽出の重要性を理解します。
  • さまざまなファイル形式からのテキスト抽出のためにPythonライブラリを使用するのに習熟します。
  • テキスト抽出の精度を高めるために画像を事前に処理する方法を学びます。
  • 抽出されたテキストのケース感度を処理し、トークンを正規化するための手法を探索します。
  • 効果的なCVデータ抽出に不可欠な主要なツールとライブラリを特定します。
  • 画像とPDFファイルの両方からテキストを抽出する実用的なスキルを開発します。
  • CVデータ抽出と効果的なソリューションに伴う課題を認識します。

この記事は、データサイエンスブログソンの一部として公開されました

目次

  • CVデータ抽出に不可欠なツール
    • Python
    • ライブラリ:NLTKとスペイシー
    • pytesseract
    • 枕ライブラリ
    • 画像またはPDFファイル
    • pdfplumberまたはpypdf2
  • PDFファイルまたは画像から単語を取得します
    • Pytesseract OCRマシンをインストールします。
    • ライブラリの枕を取り付けます
    • トークン化(またはスペイシー)のためのinstallnltk
    • Tesseractをダウンロードし、パスを構成します
  • 画像およびPDFテキスト抽出技術
    • OCRパフォーマンスを強化するための前処理画像
    • PDFファイルからテキストを取得します
    • pdfplumberからのテキストの抽出
    • 一貫性のためにトークンを正規化します
    • よくある質問

    CVデータ抽出に不可欠なツール

    履歴書とCVSからデータを効果的に抽出するには、プロセスを合理化し、正確性を確保するために、適切なツールを活用することが不可欠です。このセクションでは、CVデータ抽出の効率を高める主要なライブラリとテクノロジーを強調し、候補プロファイルからのより良い分析と洞察を可能にします。

    Python

    文や段落を言葉に分割できるライブラリまたは方法があります。 Pythonでは、Split()(基本トークン化)や自然言語ツールキット(NLTK)およびスペイシーライブラリなどのさまざまなライブラリとメソッドを使用して、より高度なトークン化を実現できます。

    単純なトークン化(文の分割)は、句読点や他の特殊文字を認識しません。

    文章= "今日は美しい日です!"
    sentences.split()
    ['今日'、 'is'、 'a'、 'beautiful'、 'day' ']

    ライブラリ:NLTKとスペイシー

    Pythonには、トークン化のためのより強力なツールがあります(Natural Language Toolkit(NLTK)。

    NLTK(Natural Language Toolkit)では、Punktトークネザーは、監視されていない文の分割と単語トークン化のために事前に訓練されたモデルを使用してテキストを積極的にトークン化します。

     NLTKをインポートします
    nltk.download( 'punkt')
    nltkからimport word_tokenizeから
    
    文章= "今日は美しい日です!"
    sentences.split()
    印刷(文)
    words = word_tokenize(文)
    印刷(単語)
    
    [nltk_data]パッケージパンクトをダウンロードします
    [nltk_data] c:\ users \ ss529 \ appdata \ roaming \ nltk_data ...
    今日は美しい日です!
    ['今日'、 'is'、 'a'、 'beautiful'、 'day'、 '!'! '。']
    [nltk_data]パッケージパンクはすでに最新です!

    パンクの重要な機能:

    • 言語の文法や構文に関する事前の情報を必要とせずに、特定のテキストを文と単語にトークン化できます。
    • 機械学習モデルを使用して文の境界を検出します。これは、句読点が厳密に個別の文章を分離しない言語で役立ちます。

    スペイシーは、正確なトークン化やその他の言語処理機能を提供する高度なNLPライブラリです。

    正規表現:パターンに基づいたカスタムトークン化ですが、手動セットが必要です。

     Reをインポートします
    remulal = "[a-za-z] [\ w]?"
    Re.Findall(通常の文章)
    [「今日」、「IS」、「A」、「Beautiful」、「Day!」]

    pytesseract

    これは、画像のテキストを読むために使用されるPythonベースの光学文字認識ツールです。

    枕ライブラリ

    画像操作に役立つさまざまな画像形式を処理するためのオープンソースライブラリ。

    画像またはPDFファイル

    履歴書は、PDFまたは画像形式である場合があります。

    pdfplumberまたはpypdf2

    PDFからテキストを抽出し、それを言葉にトークン化するには、Pythonで次の手順に従うことができます。

    • PYPDF2やPDFPlumberなどのライブラリを使用して、PDFからテキストを抽出します。
    • split()、nltk、またはスペイシーなどの任意のトークン化方法を使用して抽出されたテキストをトークン化します。

    PDFファイルまたは画像から単語を取得します

    PDFファイルには、PDF配管工と画像OCRが必要です。

    (PDFの代わりに)画像からテキストを抽出し、さまざまなフィールドの事前定義された単語に基づいてトークン化とスコアを付けたい場合は、次の手順に従うことでこれを実現できます。

    Pytesseract OCRマシンをインストールします。

    画像からテキストを抽出します

    ピップインストールpytesseract枕nltk

    ライブラリの枕を取り付けます

    さまざまな画像を処理するのに役立ちます。

    Pythonでの画像処理と操作に関しては、さまざまな形式間のサイズ変更、トリミング、または変換など、しばしば頭に浮かぶオープンソースライブラリが枕です。

    枕がどのように機能するかを見てみましょう。JupyterNotebookで画像を表示するには、ディスプレイを使用する必要があり、ブラケットの内側には、画像を保持する変数を保存する必要があります。

     PILインポート画像から
    image = image.open( 'art.jfif')
    ディスプレイ(画像)

    CVデータ抽出

    画像をサイズ変更して保存するには、サイズ変更および保存されたメソッドが使用されます。幅は400、高さは450に設定されます。

    CVデータ抽出

    枕の重要な機能:

    • 画像形式 - さまざまな形式をサポートします
    • 画像操作機能 - サイズを変更したり、画像を収集したり、カラー画像を灰色に変換したりできます。

    トークン化(またはスペイシー)のためのinstallnltk

    自然言語処理におけるトークン化のための2つの強力なライブラリであるNLTKまたはSPACYをインストールして、テキスト処理機能を強化する方法を発見してください。

    Tesseractをダウンロードし、パスを構成します

    GithubからTesseractをダウンロードし、最適化されたOCR機能に必要なパスを追加して、スクリプトにシームレスに統合する方法を学びます。

     pytesseract.pytesseract.tesseract_cmd = 'c:\ program files \ tesseract-ocr \ tesseract.exe' '
    • MacOS:Brew Install Tesseract
    • Linux:Package Managerからインストールします(たとえば、sudo apt tesseract-ocr)。
    • ピップインストールpytesseract枕

    それらの中には、多くの言語とOCRをサポートしているGoogleが開発したオープンソースライブラリTesseractがいくつかあります。

    Pytesseractは、Tesseract OCRエンジンのラッパーとして機能するPythonベースのプロジェクトに使用されます。

    画像およびPDFテキスト抽出技術

    デジタル時代では、画像とPDFファイルからテキストを抽出することは、データ分析やドキュメント処理など、さまざまなアプリケーションに不可欠になっています。この記事では、前処理画像の効果的な手法を調べ、強力なライブラリを活用して、光学文字認識(OCR)を強化し、多様なファイル形式からテキスト抽出を合理化します。

    OCRパフォーマンスを強化するための前処理画像

    前述の手順に従って、前処理画像がOCRのパフォーマンスを改善することができます。

    • 画像からグレースケール:画像はグレースケールに変換され、騒々しい背景を減らし、テキスト自体にしっかりと焦点を当てており、照明条件が異なる画像に役立ちます。
    • PILからImageOpsから
    • image = imageops.grayscale(image)
    • しきい値:バイナリのしきい値を適用して、画像を白黒形式に変換することにより、テキストを際立たせます。
    • サイズ変更:テキスト認識を改善するための高級画像。
    • ノイズの取り外し:フィルターを使用して画像内のノイズまたはアーティファクトを取り外します(例えば、ガウスブルール)。
     NLTKをインポートします
    pytesseractをインポートします
    PILインポート画像から
    CV2をインポートします
    
    nltk.tokenizeインポートword_tokenize
    
    nltk.download( 'punkt')
    pytesseract.pytesseract.tesseract_cmd = r'c:\ uses \ ss529 \ anaconda3 \ tesseract-cocr \ tesseract.exe '
    image = input( "ファイルの名前:")
    imag = cv2.imread(画像)
     
    #GrayScale画像にコンバートします
    GRAY = CV2.CVTCOLOR(画像、CV2.Color_Bgr2Gray)
     
    nltk.tokenizeインポートword_tokenize
    def text_from_image(画像):
        img = image.open(image)
        テキスト= pytesseract.image_to_string(img)
        テキストを返します
    画像= 'cv1.png'
    
    
    text1 = text_from_image(画像)
    
    #抽出されたテキストをトークン化します
    tokens = word_tokenize(text1)
    
    印刷(トークン)

    CVデータ抽出

    要件に一致する単語の数を知るために、私たちが比較し、すべての一致する単語にポイントを与えます10。

     #トークンを特定の単語と比較し、複製を無視し、スコアを計算する
    def compare_tokens_and_score(tokens、special_words、score_per_match = 10):
        match_words = set(word.lower()for word in token
        total_score = len(fields_keywords) * score_per_match
        total_scoreを返します
    
    #異なるスキルを持つフィールド
    fields_keywords = {
    
        "data_science_carrier":{'監視された機械学習'、「監視されていない機械学習」、「データ」、「分析」、「統計」、「python」}、
            
    }
    
    #そのフィールドの特定の単語に基づくスコア
    def process_image_for_field(画像、フィールド):
        Fields_keywordsに該当しない場合:
            print(f "field '{field}'は定義されていません。")
            戻る
    
        #画像からテキストを抽出します
        text = text_from_image(image)
        
        #抽出されたテキストをトークン化します
        tokens = tokenize_text(テキスト)
        
        #選択したフィールドの特定の単語を持つトークンを比較してください
        speciecy_words = fields_keywords [field]
        total_score = compare_tokens_and_score(tokens、specize_words)
        print(f "field:{field}")
        print( "Totalスコア:"、Total_score)
    
    
    画像= 'cv1.png' 
    field = 'data_science_carrier'

    「データサイエンス」と「データサイエンス」と「データサイエンス」などのケース感度を処理するために、すべてのトークンとキーワードを小文字に変換できます。

     tokens = word_tokenize(extracted_text.lower())

    NLTKなどのNLPライブラリを使用した溶質化や、単語を減らすためにスペイシーに耐える(例えば、「実行」に「実行」)を使用して使用すると

    nltk.stemからwordnetlemmatizerをインポートします
    
    lemmatizer = wordnetlemmatizer()
    
    def remormize_tokens(トークン):
        tokenのトークン用に[lemmatizer.lemmatize(token.lower())を返す]
    

    PDFファイルからテキストを取得します

    次に、PDFファイルからテキストを取得するために必要なアクションを調べてみましょう。

    必要なライブラリをインストールします

    次のライブラリが必要です。

    • pypdf2
    • pdfplumber
    • スペイシー
    • nltk

    PIPを使用します

    PIPインストールpypdf2 pdfplumber nltkスペイシー
    python -mスペイシーダウンロードen_core_web_sm

    PYDF2によるテキストの抽出

    Pypdf2をインポートします
    
    def text_from_pdf(pdf_file):
        open(pdf_file、 'rb')としてファイルとして:
            reader = pypdf2.pdfreader(file)
            text = ""
            Page_numの範囲(len(reader.pages))の場合:
                page = reader.pages [page_num]
                text = page.extract_text() "\ n"
        テキストを返します

    pdfplumberからのテキストの抽出

    pdfplumberをインポートします
    
    def text_from_pdf(pdf_file):
        pdfplumber.open(pdf_file)をpdfとして:
            text = ""
            pdf.pagesのページの場合:
                text = page.extract_text() "\ n"
        テキストを返します
    pdf_file = 'Soniasingla-datascience-bio.pdf'
    
    #PDFからテキストを抽出します
    text = text_from_pdf(pdf_file)
    
    #抽出されたテキストをトークン化します
    tokens = word_tokenize(テ​​キスト)
    
    印刷(トークン)

    一貫性のためにトークンを正規化します

    画像の代わりにPDFファイルを処理し、繰り返しの単語が複数のスコアを受信しないことを確認するには、以前のコードを変更します。 PDFファイルからテキストを抽出し、トークン化し、異なるフィールドからの特定の単語とトークンを比較します。コードは、一意の一致した単語に基づいてスコアを計算します。

     pdfplumberをインポートします
    NLTKをインポートします
    nltk.tokenizeインポートword_tokenize
    
    
    nltk.download( 'punkt')
    
    
    def extext_text_from_pdf(pdf_file):
        pdfplumber.open(pdf_file)をpdfとして:
            text = ""
            pdf.pagesのページの場合:
                text = page.extract_text() "\ n"
        テキストを返します
    
    
    def tokenize_text(テキスト):
        tokens = word_tokenize(テ​​キスト)
        トークンを返します
    
    
    def compare_tokens_and_score(tokens、special_words、score_per_match = 10):
        #セットを使用して、一意の一致した単語を保存して、複製を防ぐ
        anique_matched_words = set(word.lower()for word in token
        #一意の一致に基づいて合計スコアを計算します
        total_score = len(siquire_matched_words) * score_per_match
        unique_matched_words、total_scoreを返します
    
    #異なるフィールドの特定の単語のセットを定義します
    fields_keywords = {
    
        "data_science_carrier":{'監視された機械学習'、「監視されていない機械学習」、「データ」、「分析」、「統計」、「python」}、
            
        #ここにフィールドとキーワードを追加します
    }
    
    #ステップ4:フィールドを選択し、そのフィールドの特定の単語に基づいてスコアを計算します
    def process_pdf_for_field(pdf_file、field):
        Fields_keywordsに該当しない場合:
            print(f "field '{field}'は定義されていません。")
            戻る
     
        text = extext_from_pdf(pdf_file)
          
        tokens = tokenize_text(テキスト)  
        
        speciecy_words = fields_keywords [field]
        inquire_matched_words、total_score = compare_tokens_and_score(tokens、specize_words)
          
        print(f "field:{field}")
        print( "一意の一致した単語:"、unique_matched_words)
        print( "Totalスコア:"、Total_score)
    
    
    pdf_file = 'Soniasingla-datascience-bio.pdf'  
    field = 'data_science'  
    process_pdf_for_field(pdf_file、fie

    data_scienceフィールドが定義されていないため、エラーメッセージが生成されます。

    CVデータ抽出

    エラーが削除されると、正常に機能します。

    CVデータ抽出

    ケースの感度を適切に処理し、「データ」や「データ」などの単語が同じ単語と見なされながら、一度だけ得点していることを確認するために(異なるケースで複数回表示されていても)、トークンと特定の単語の両方のケースを正規化できます。これは、比較中にトークンと特定の単語の両方を小文字に変換することで行うことができますが、一致した単語の最終出力のために元のケーシングを保持します。

    テキスト抽出に関する重要なポイント

    • PDFPlumberを使用して、PDFファイルからテキストを抽出します。
    • OCRを使用して画像をマシンコードに変換します。
    • Pytesseractを使用して、Pythonラップコードをテキストに変換します。

    結論

    Pythonを使用した自動化技術に焦点を当て、CVSからデータを抽出および分析する重要なプロセスを調査しました。 PDFや画像を含むさまざまなファイル形式から効果的なテキスト抽出のために、NLTK、Spacy、Pytesseract、枕などの必須ライブラリを利用する方法を学びました。トークン化、テキストの正規化、スコアリングの方法を適用することにより、候補者の資格を職務要件と効率的に調整する方法についての洞察を得ました。この体系的なアプローチは、雇用主の雇用プロセスを合理化するだけでなく、候補者のスキルに合ったポジションを確保する可能性を高めます。

    キーテイクアウト

    • CVSからの効率的なデータ抽出は、雇用プロセスを自動化するために不可欠です。
    • NLTK、スペイシー、Pytesseract、枕などのツールは、テキストの抽出と処理に不可欠です。
    • 適切なトークン化方法は、CVSの内容を正確に分析するのに役立ちます。
    • キーワードに基づいてスコアリングメカニズムを実装すると、候補者と職務要件の間のマッチングプロセスが強化されます。
    • lemmatizationなどの手法を通じてトークンを正規化すると、テキスト分析の精度が向上します。

    よくある質問

    Q1。どのようにしてPDFからテキストを抽出することができますか?

    A. PDFからテキストを抽出するPYPDF2またはPDFPlumberライブラリ。

    Q2。画像形式でCVからテキストを抽出する方法は?

    A. CVが画像形式(スキャンドキュメントまたは写真)の場合、OCR(光学文字認識)を使用して画像からテキストを抽出できます。 Pythonで最も一般的に使用されるツールはPytesseractで、Tesseract OCRのラッパーです。

    Q3。 OCRの質の悪い画像を処理するにはどうすればよいですか?

    A.画像をOCRに供給する前に画像の品質を改善すると、テキスト抽出の精度が大幅に向上する可能性があります。 OpenCVなどのツールを使用したグレースケール変換、しきい値、ノイズリダクションなどのテクニックが役立ちます。

    この記事に示されているメディアは、Analytics Vidhyaが所有しておらず、著者の裁量で使用されています。

  • 以上がCVデータ抽出の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

    声明
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
    1つのプロンプトは、すべての主要なLLMのセーフガードをバイパスできます1つのプロンプトは、すべての主要なLLMのセーフガードをバイパスできますApr 25, 2025 am 11:16 AM

    HiddenLayerの画期的な研究は、主要な大規模な言語モデル(LLMS)における重大な脆弱性を明らかにしています。 彼らの発見は、ほぼすべての主要なLLMSを回避できる「政策の人形劇」と呼ばれる普遍的なバイパス技術を明らかにしています

    5つの間違いほとんどの企業が今年持続可能性を備えています5つの間違いほとんどの企業が今年持続可能性を備えていますApr 25, 2025 am 11:15 AM

    環境責任と廃棄物の削減の推進は、企業の運営方法を根本的に変えています。 この変革は、製品開発、製造プロセス、顧客関係、パートナーの選択、および新しいものの採用に影響します

    H20チップバンジョルツチャイナ企業ですが、彼らはインパクトのために長い間支えられてきましたH20チップバンジョルツチャイナ企業ですが、彼らはインパクトのために長い間支えられてきましたApr 25, 2025 am 11:12 AM

    高度なAIハードウェアに関する最近の制限は、AI優位のためのエスカレートする地政学的競争を強調し、中国の外国半導体技術への依存を明らかにしています。 2024年、中国は3,850億ドル相当の半導体を大量に輸入しました

    OpenaiがChromeを購入すると、AIはブラウザ戦争を支配する場合がありますOpenaiがChromeを購入すると、AIはブラウザ戦争を支配する場合がありますApr 25, 2025 am 11:11 AM

    GoogleからのChromeの強制的な売却の可能性は、ハイテク業界での激しい議論に火をつけました。 Openaiが65%の世界市場シェアを誇る大手ブラウザを取得する見込みは、THの将来について重要な疑問を提起します

    AIが小売メディアの成長する痛みをどのように解決できるかAIが小売メディアの成長する痛みをどのように解決できるかApr 25, 2025 am 11:10 AM

    全体的な広告の成長を上回っているにもかかわらず、小売メディアの成長は減速しています。 この成熟段階は、生態系の断片化、コストの上昇、測定の問題、統合の複雑さなど、課題を提示します。 ただし、人工知能

    「aiは私たちであり、それは私たち以上のものです」「aiは私たちであり、それは私たち以上のものです」Apr 25, 2025 am 11:09 AM

    古いラジオは、ちらつきと不活性なスクリーンのコレクションの中で静的なパチパチと鳴ります。簡単に不安定になっているこの不安定な電子機器の山は、没入型展示会の6つのインスタレーションの1つである「e-waste land」の核心を形成しています。

    Google Cloudは、次の2025年にインフラストラクチャについてより深刻になりますGoogle Cloudは、次の2025年にインフラストラクチャについてより深刻になりますApr 25, 2025 am 11:08 AM

    Google Cloudの次の2025年:インフラストラクチャ、接続性、およびAIに焦点を当てています Google Cloudの次の2025年の会議では、多くの進歩を紹介しました。 特定の発表の詳細な分析については、私の記事を参照してください

    Baby Ai Meme、Arcanaの550万ドルのAI映画パイプライン、IRの秘密の支援者が明らかにした話Baby Ai Meme、Arcanaの550万ドルのAI映画パイプライン、IRの秘密の支援者が明らかにした話Apr 25, 2025 am 11:07 AM

    今週はAIとXR:AIを搭載した創造性の波が、音楽の世代から映画制作まで、メディアとエンターテイメントを席巻しています。 見出しに飛び込みましょう。 AIに生成されたコンテンツの影響力の高まり:テクノロジーコンサルタントのShelly Palme

    See all articles

    ホットAIツール

    Undresser.AI Undress

    Undresser.AI Undress

    リアルなヌード写真を作成する AI 搭載アプリ

    AI Clothes Remover

    AI Clothes Remover

    写真から衣服を削除するオンライン AI ツール。

    Undress AI Tool

    Undress AI Tool

    脱衣画像を無料で

    Clothoff.io

    Clothoff.io

    AI衣類リムーバー

    Video Face Swap

    Video Face Swap

    完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

    ホットツール

    ZendStudio 13.5.1 Mac

    ZendStudio 13.5.1 Mac

    強力な PHP 統合開発環境

    MantisBT

    MantisBT

    Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

    SublimeText3 中国語版

    SublimeText3 中国語版

    中国語版、とても使いやすい

    EditPlus 中国語クラック版

    EditPlus 中国語クラック版

    サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

    AtomエディタMac版ダウンロード

    AtomエディタMac版ダウンロード

    最も人気のあるオープンソースエディター