C# を使用してドキュメントと生のテキストを分類する

テキスト分類またはテキスト分類は、タグを割り当てたり、テキストを整理されたグループに分類したりするプロセスです。 C# 開発者は、クラウド上で生のテキストやドキュメントをプログラムによって簡単に分類できます。この記事では、C# の REST API を使用してドキュメントと生のテキストを分類する方法を学習します。

この記事では次のトピックについて説明/取り上げます。

ドキュメント分類 REST API と .NET SDK

テキストやドキュメントの分類には、GroupDocs.Classification Cloud の .NET SDK API を使用します。これにより、生のテキストとドキュメントを事前定義されたカテゴリに分類できます。 SDK は、IAB-2、Documents & Sentiment 分類など、複数の分類タイプをサポートしています。分類情報には、最良のクラスがその確率スコアとともに示されます。

NuGet パッケージ マネージャーから、またはパッケージ マネージャー コンソールで次のコマンドを使用して、GroupDocs.Classification を Visual Studio プロジェクトにインストールできます。

Install-Package GroupDocs.Classification-Cloud

手順と利用可能なコード例を開始する前に、ダッシュボード からクライアント ID とクライアント シークレットを取得してください。クライアント ID とシークレットを取得したら、以下に示すコードを追加します。

var configuration = new Configuration();
configuration.ClientId = "659fe7da-715b-4744-a0f7-cf469a392b73";
configuration.ClientSecret = "b377c36cfa28fa69960ebac6b6e36421";

C# の REST API を使用して Word ドキュメントを分類する

以下の簡単な手順に従って、Word 文書を分類できます。

ドキュメントをアップロードする

まず、以下のコード サンプルを使用して、DOCX ファイルをクラウドにアップロードします。

// APIの初期化
var apiInstance = new FileApi(configuration);

// ローカル/ディスクからIOStreamでファイルを開きます。
var fileStream = File.Open("C:\\Files\\sample.docx", FileMode.Open);

// ファイルアップロードリクエストの作成
var request = new UploadFileRequest("sample.docx", fileStream, "");

var response = apiInstance.UploadFile(request);

その結果、アップロードされた DOCX ファイルは、クラウド上のダッシュボードの ファイル セクション で利用できるようになります。

C# を使用して Word 文書を分類する

以下の手順に従って、Word 文書をプログラムで分類できます。

  • ClassificationApi のインスタンスを作成する
  • BaseRequest のインスタンスを作成する
  • DOCX ファイルのパスを設定し、BaseRequest ドキュメントに割り当てます。
  • BaseRequest を使用して ClassifyRequest を作成する
  • BaseClassesCount を設定する
  • ClassificationApi.Classify() メソッドを呼び出して、ClassificationResponse を取得します。

次のコード サンプルは、REST API を使用して Word ドキュメントを分類する方法を示しています。

// APIの初期化
var apiInstance = new ClassificationApi(configuration);

// 基本リクエストの作成
BaseRequest baseRequest = new BaseRequest();
baseRequest.Document = new GroupDocs.Classification.Cloud.Sdk.Model.FileInfo()
{
    Name = "sample.docx",
    Folder = ""
};

// 分類リクエストの作成
var request = new ClassifyRequest(baseRequest);
request.BestClassesCount = "3";

// 分類結果を取得する
ClassificationResponse response = apiInstance.Classify(request);
foreach(var r in response.BestResults)
{
    Console.WriteLine("ClassName: " + r.ClassName);
    Console.WriteLine("ClassProbability: " + r.ClassProbability);
    Console.WriteLine("--------------------------------");
}
C# の REST API を使用して Word ドキュメントを分類する

C# の REST API を使用して Word ドキュメントを分類する

C# を使用して Word 文書を分類して分類する

以下の手順に従って、プログラムで Word 文書を分類に基づいて分類できます。

  • ClassificationApi のインスタンスを作成する
  • BaseRequest のインスタンスを作成する
  • DOCX ファイルのパスを設定し、BaseRequest ドキュメントに割り当てます。
  • BaseRequest を使用して ClassifyRequest を作成する
  • BaseClassesCount を設定する
  • 分類法の設定
  • ClassificationApi.Classify() メソッドを呼び出して、ClassificationResponse を取得します。

次のコード サンプルは、REST API を使用して Word ドキュメントを「ドキュメント」分類に分類する方法を示しています。前述の手順に従ってファイルをアップロードしてください。

// APIの初期化
var apiInstance = new ClassificationApi(configuration);

// 基本リクエストの作成
BaseRequest baseRequest = new BaseRequest();
baseRequest.Document = new GroupDocs.Classification.Cloud.Sdk.Model.FileInfo()
{
    Name = "sample.docx",
    Folder = ""
};

// 分類リクエストの作成
var request = new ClassifyRequest(baseRequest);
request.BestClassesCount = "3";
request.Taxonomy = "documents";

// 分類結果を取得する
ClassificationResponse response = apiInstance.Classify(request);
foreach(var r in response.BestResults)
{
    Console.WriteLine("ClassName: " + r.ClassName);
    Console.WriteLine("ClassProbability: " + r.ClassProbability);
    Console.WriteLine("--------------------------------");
}
ClassName: ADVE
ClassProbability: 77.17
--------------------------------
ClassName: Resume
ClassProbability: 22.83
--------------------------------
ClassName: Scientific
ClassProbability: 0.01
--------------------------------

ドキュメントを分類するための分類法として以下を使用できます。

  • デフォルト
  • iab2
  • 書類
  • 感情
  • 感情3

リクエスト パラメーターの分類の詳細については、「リクエスト パラメーターの分類」セクションを参照してください。

C# の REST API を使用して生のテキストを分類する

以下の手順に従って、生のテキストをプログラムで分類できます。

  • ClassificationApi のインスタンスを作成する
  • BaseRequest インスタンスの作成
  • BaseRequest の説明に生のテキストを提供する
  • BaseRequest を使用して ClassifyRequest を作成する
  • BaseClassesCount を設定する
  • ClassificationApi.Classify() メソッドを呼び出して、ClassificationResponse を取得します。

次のコード サンプルは、REST API を使用して生のテキストを分類する方法を示しています。

// APIの初期化
var apiInstance = new ClassificationApi(configuration);

// 基本リクエストの作成
BaseRequest baseRequest = new BaseRequest();
baseRequest.Description = "We support some of the most popular file formats in business, "
    + "including Microsoft Word documents, Excel spreadsheets, PowerPoint presentations, "
    + "Outlook emails and archives, Visio diagrams, Project files, and Adobe Acrobat PDF documents..";

// 分類リクエストの作成
var request = new ClassifyRequest(baseRequest);
request.BestClassesCount = "3";

// 分類結果を取得する
var response = apiInstance.Classify(request);
foreach (var r in response.BestResults)
{
    Console.WriteLine("ClassName: " + r.ClassName);
    Console.WriteLine("ClassProbability: " + r.ClassProbability);
    Console.WriteLine("--------------------------------");
}
ClassName: Hobbies_&_Interests
ClassProbability: 43.02
--------------------------------
ClassName: Business_and_Finance
ClassProbability: 26.64
--------------------------------
ClassName: Technology_&_Computing
ClassProbability: 18.25
--------------------------------

オンラインで試す

上記の API を使用して開発された、次の無料のオンライン分類ツールをお試しください。 https://products.groupdocs.app/分類[/](https:/ /products.groupdocs.app/splitter/pdf)

結論

この記事では、C# を使用してクラウド上の Word ドキュメントと生のテキストを分類する方法を学習しました。また、プログラムを使用して DOCX ファイルをクラウドにアップロードする方法も学習しました。 GroupDocs.Classification Cloud API の詳細については、ドキュメント を使用して学習できます。また、ブラウザーを通じて API を直接視覚化して操作できる API リファレンス セクションも提供しています。不明な点がある場合は、フォーラム でお気軽にお問い合わせください。

関連項目