watson_developer_cloud.natural_language_classifier_v1 module

IBM Watson™ Natural Language Classifier uses machine learning algorithms to return the top matching predefined classes for short text input. You create and train a classifier to connect predefined classes to example texts so that the service can apply those classes to new inputs.

class NaturalLanguageClassifierV1(url='https://gateway.watsonplatform.net/natural-language-classifier/api', username=None, password=None, iam_apikey=None, iam_access_token=None, iam_url=None)[source]

Bases: watson_developer_cloud.watson_service.WatsonService

The Natural Language Classifier V1 service.

default_url = 'https://gateway.watsonplatform.net/natural-language-classifier/api'
classify(classifier_id, text, **kwargs)[source]

Classify a phrase.

Returns label information for the input. The status must be Available before you can use the classifier to classify text.

Parameters:
  • classifier_id (str) – Classifier ID to use.
  • text (str) – The submitted phrase. The maximum length is 2048 characters.
  • headers (dict) – A dict containing the request headers
Returns:

A DetailedResponse containing the result, headers and HTTP status code.

Return type:

DetailedResponse

classify_collection(classifier_id, collection, **kwargs)[source]

Classify multiple phrases.

Returns label information for multiple phrases. The status must be Available before you can use the classifier to classify text. Note that classifying Japanese texts is a beta feature.

Parameters:
  • classifier_id (str) – Classifier ID to use.
  • collection (list[ClassifyInput]) – The submitted phrases.
  • headers (dict) – A dict containing the request headers
Returns:

A DetailedResponse containing the result, headers and HTTP status code.

Return type:

DetailedResponse

create_classifier(metadata, training_data, metadata_filename=None, training_data_filename=None, **kwargs)[source]

Create classifier.

Sends data to create and train a classifier and returns information about the new classifier.

Parameters:metadata (file) – Metadata in JSON format. The metadata identifies the

language of the data, and an optional name to identify the classifier. Specify the language with the 2-letter primary language code as assigned in ISO standard 639. Supported languages are English (en), Arabic (ar), French (fr), German, (de), Italian (it), Japanese (ja), Korean (ko), Brazilian Portuguese (pt), and Spanish (es). :param file training_data: Training data in CSV format. Each text value must have at least one class. The data can include up to 20,000 records. For details, see [Data preparation](https://console.bluemix.net/docs/services/natural-language-classifier/using-your-data.html). :param str metadata_filename: The filename for training_metadata. :param str training_data_filename: The filename for training_data. :param dict headers: A dict containing the request headers :return: A DetailedResponse containing the result, headers and HTTP status code. :rtype: DetailedResponse

delete_classifier(classifier_id, **kwargs)[source]

Delete classifier.

Parameters:
  • classifier_id (str) – Classifier ID to delete.
  • headers (dict) – A dict containing the request headers
Returns:

A DetailedResponse containing the result, headers and HTTP status code.

Return type:

DetailedResponse

get_classifier(classifier_id, **kwargs)[source]

Get information about a classifier.

Returns status and other information about a classifier.

Parameters:
  • classifier_id (str) – Classifier ID to query.
  • headers (dict) – A dict containing the request headers
Returns:

A DetailedResponse containing the result, headers and HTTP status code.

Return type:

DetailedResponse

list_classifiers(**kwargs)[source]

List classifiers.

Returns an empty array if no classifiers are available.

Parameters:headers (dict) – A dict containing the request headers
Returns:A DetailedResponse containing the result, headers and HTTP status code.
Return type:DetailedResponse
class Classification(classifier_id=None, url=None, text=None, top_class=None, classes=None)[source]

Bases: object

Response from the classifier for a phrase.

Attr str classifier_id:
 (optional) Unique identifier for this classifier.
Attr str url:(optional) Link to the classifier.
Attr str text:(optional) The submitted phrase.
Attr str top_class:
 (optional) The class with the highest confidence.
Attr list[ClassifiedClass] classes:
 (optional) An array of up to ten class-confidence

pairs sorted in descending order of confidence.

class ClassificationCollection(classifier_id=None, url=None, collection=None)[source]

Bases: object

Response from the classifier for multiple phrases.

Attr str classifier_id:
 (optional) Unique identifier for this classifier.
Attr str url:(optional) Link to the classifier.
Attr list[CollectionItem] collection:
 (optional) An array of classifier responses for

each submitted phrase.

class ClassifiedClass(confidence=None, class_name=None)[source]

Bases: object

Class and confidence.

Attr float confidence:
 (optional) A decimal percentage that represents the confidence

that Watson has in this class. Higher values represent higher confidences. :attr str class_name: (optional) Class label.

class Classifier(url, classifier_id, name=None, status=None, created=None, status_description=None, language=None)[source]

Bases: object

A classifier for natural language phrases.

Attr str name:(optional) User-supplied name for the classifier.
Attr str url:Link to the classifier.
Attr str status:
 (optional) The state of the classifier.
Attr str classifier_id:
 Unique identifier for this classifier.
Attr datetime created:
 (optional) Date and time (UTC) the classifier was created.
Attr str status_description:
 (optional) Additional detail about the status.
Attr str language:
 (optional) The language used for the classifier.
class ClassifierList(classifiers)[source]

Bases: object

List of available classifiers.

Attr list[Classifier] classifiers:
 The classifiers available to the user. Returns an

empty array if no classifiers are available.

class ClassifyInput(text)[source]

Bases: object

Request payload to classify.

Attr str text:The submitted phrase. The maximum length is 2048 characters.
class CollectionItem(text=None, top_class=None, classes=None)[source]

Bases: object

Response from the classifier for a phrase in a collection.

Attr str text:(optional) The submitted phrase. The maximum length is 2048

characters. :attr str top_class: (optional) The class with the highest confidence. :attr list[ClassifiedClass] classes: (optional) An array of up to ten class-confidence pairs sorted in descending order of confidence.