メインコンテンツへスキップ
自然言語処理 (NLP) は、人工知能と言語計算言語学の一分野です。NLP は、自然言語をコンピューターで解析および生成する技術を扱います。NLP の実用的な用途の 1 つは、テキストから意味のあるデータを抽出することです。 文書の処理方法は、その構造によって異なります。ここでは、文書を構造化文書、半構造化文書、非構造化文書の 3 種類に分類できます。
  • 構造化文書には、設計、数、配置が文書ごとに変わらない、明確に定義されたデータ field のセットが含まれます。構造化文書の例としては、フォーム、質問票、申請書があります。
  • 半構造化文書には、設計、数、配置が文書ごとに大きく異なる可能性があるデータ field のセットが含まれます。これらは「柔軟な文書」と呼ばれることもあります。半構造化文書の一例として請求書があり、明細の数や書式は発行会社によって異なることがよくあります。
  • 非構造化文書には、まったく構造化されていない情報が含まれます。また、明示的なデータ field も含まれません。非構造化文書の例としては、契約書、書簡、注文書があります。
文書タイプの詳細については、Types of documents processed using ABBYY FlexiCaptureを参照してください。 非構造化文書の処理には、NLP 技術を使用する必要があります。たとえば、NLP を使用すると、契約書から次のようなデータを抽出できます。参照番号、当事者名、重要な日付 (署名日、支払日、契約期間、終了日) 、契約金額、手数料、支払条件などです。 テーブル、構造化文書、半構造化文書から情報を抽出するには、別の方法を使用する必要があります (たとえば、FlexiLayouts) 。 テキストからの情報抽出 ABBYY のソフトウェア製品では、非構造化テキストから情報を抽出するために NLP モデル を使用します。NLP モデル は、文書からどのエンティティを抽出するかをプログラムに指示します。NLP モデルをサンプル文書で学習させると、テキストの対象分野と適切な抽出アルゴリズムが特定されるため、必要な情報をより効率的に抽出できます。NLP モデルの作成に必要な労力は、文書の多様性、プログラムが利用できる文脈、そして抽出する必要がある情報の複雑さと量によって異なります。 非構造化テキストからデータを抽出するには、多くの計算能力が必要です。テキストが長いほど、解析に時間がかかります。 ただし、必要な情報は、非常に長いテキストの特定のページや段落に含まれていることがよくあります。このような有用なテキスト部分を見つける処理は セグメンテーション と呼ばれます。この処理に必要な時間と計算リソースは、エンティティ抽出よりも大幅に少ないため、情報を抽出する前に文書を セグメント化 したい場合があります。有用なセグメントを特定する方法の詳細については、Creating a segmentation NLP modelを参照してください。 NLP を使用して非構造化文書を処理するには、次の手順を実行します。
  1. NLP モジュールをインストールします
  2. Document Definition を作成します
  3. NLP モデルを作成し学習させます
  4. または、既存の NLP モデルを Document Definition にロードします