如何预测使用scikit?

时间:2012-12-28 16:07:20

标签: machine-learning scikit-learn

我使用fit方法训练了一个名为clf的估算器,并将模型保存到磁盘。下次运行程序,它将从磁盘加载clf。

我的问题是:

  1. 如何预测保存在磁盘上的样本?我的意思是,如何加载和预测?
  2. 如何在预测后获取样本标签而不是标签整数?

1 个答案:

答案 0 :(得分:2)

  1. 如何预测保存在磁盘上的样本?我的意思是,如何加载和预测?

    您必须为新样本使用与传递给fit方法的样本相同的数组表示。如果要预测单个样本,则输入必须是形状为(1, n_features)的2D numpy数组。

    在HDD上读取原始文件并将其转换为适合分类器的numpy数组表示的方法是一个特定于域的问题:它取决于您是否尝试对文本文件,jpeg文件,视频文件中的帧进行分类,数据库中的行,syslog监控服务的日志行......

  2. 如何在预测后获取样本标签而不是标签整数?

    只需保留标签名称列表,并确保在拟合时用作目标值的整数在[0, n_classes)范围内。例如['spam', 'ham'],如果你有[0, 1]范围内的预测,那么你可以这样做:

    new_samples = # 2D array with shape (n_samples, n_features)
    label_names = ['ham', 'spam']
    predictions = [label_names[pred] for pred in clf.predict(new_samples)]