Transformers(4) - 要約

今回は、Transformersを使って要約を行います。

(Transformersのインストールは完了している想定となります。)

要約

要約は、長い文章(本文)を短い文章に変換する処理です。

ソースとしては、まずタスク名に‘summarization’を指定したパイプラインを作成します。

パイプラインには次の3つを引数として渡し、要約処理を行います。

  • 第1引数
    要約対象の本文を指定します。
  • max_length
    要約の最大語数
  • min_length
    要約の最小語数

[Google Colaboratory]

1
2
3
4
5
6
7
8
9
10
from transformers import pipeline

# 要約のパイプラインの準備
summarizer = pipeline('summarization')

# テキスト
text = 'Huggingface Transformers is a deep learning framework provided by Huggingface that specializes in natural language processing. It supports both TensorFlow and PyTorch. You can use deep learning to solve natural language processing tasks such as text classification, question answering, and summary.'

# 推論
print(summarizer(text, max_length=20, min_length=10))

実行結果は下記の通りです。

[実行結果]

1
[{'summary_text': ' Huggingface Transformers is a deep learning framework that specializes in natural language processing . It'}]

結果は「Transformersは、自然言語処理に特化したディープラーニングのフレームワークです。」と、的確な要約文になっています。

次回は、テキスト生成を行います。