首页 > 解决方案 > 空模型背后的想法是什么?

问题描述

我必须使用 python 和 cv2 对图像进行分类。在训练模型之前,我们必须首先使用创建一个空模型

cv2.ml.KNearest_create()

我知道这行代码创建了一个空模型,但这意味着什么?当我想到一个模型时,我通常会想象一个像 y = mx + b 或 y = ax^2 + bx + c 这样的方程。我很好奇空模型对象的外观以及如何使用它来拟合训练数据。

标签: pythonopencvmachine-learningmachine-learning-model

解决方案


KNearest_create函数实例化 k-最近邻类。这与实例化以下“示例”类没有什么不同:

class Example(object):
    def __init__(self):
        self.data = []

example = Example()

在某些机器学习的情况下,例如神经网络,您可能会使用随机数据初始化权重。但是,这些都不必在类的实例化期间进行。调用 fit/train 函数时可能不会。这是编程中的一种范式。

您可以查看Sklearn 对 K Nearest Neightbor 的实现,看看除了声明变量之外没有太多的事情发生。


推荐阅读