Skip to content
This repository was archived by the owner on Nov 16, 2023. It is now read-only.
This repository was archived by the owner on Nov 16, 2023. It is now read-only.

OneVsRestClassifier predict_proba exception #216

Closed
@daholste

Description

@daholste

Running this script:

from nimbusml import FileDataStream, DprepDataStream, Pipeline
from nimbusml.linear_model import AveragedPerceptronBinaryClassifier
from nimbusml.multiclass import OneVsRestClassifier

file_data_stream = FileDataStream.read_csv('D:/1MB_encoded.csv')
feature_columns = file_data_stream.head(1).columns.tolist()
label_column = feature_columns.pop(1)

binary_pipeline = Pipeline([
    AveragedPerceptronBinaryClassifier(caching='None', feature=feature_columns, label=label_column)
])

multiclass_pipeline = Pipeline([
    OneVsRestClassifier(AveragedPerceptronBinaryClassifier(caching='None'), feature=feature_columns, label=label_column)
])

binary_pipeline.fit(file_data_stream)
multiclass_pipeline.fit(file_data_stream)

print(binary_pipeline.predict_proba(file_data_stream))
print(multiclass_pipeline.predict_proba(file_data_stream))

print("Done")

successfully prints predicted probabilities for the binary pipeline, but throws an exception when trying to predict for the mutliclass:

File "d:\Python Tests\nimbus_multiclass_ap_predict_dataflow.py", line 29, in <module>
    print(multiclass_pipeline.predict_proba(file_data_stream))
  File "C:\Users\daholste\AppData\Local\Continuum\miniconda3\envs\dev5\lib\site-packages\nimbusml\internal\utils\utils.py", line 220, in wrapper
    params = func(*args, **kwargs)
  File "C:\Users\daholste\AppData\Local\Continuum\miniconda3\envs\dev5\lib\site-packages\nimbusml\pipeline.py", line 1998, in predict_proba
    self._extract_classes_from_headers(pcols)
  File "C:\Users\daholste\AppData\Local\Continuum\miniconda3\envs\dev5\lib\site-packages\nimbusml\pipeline.py", line 1944, in _extract_classes_from_headers
    classes = np.array(classes).astype(self.last_node.classes_.dtype)
AttributeError: 'OneVsRestClassifier' object has no attribute 'classes_'

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions