我是一名电子爱好者,他试图使用ML来模拟传感器中的错误,我已经在python中使用SVM scikit-learn中的SVM训练模型中的传感器数据。
但过滤数据的用例非常即时,即传感器数据用于维持四轴飞行器的飞行,原始传感器数据应至少以200 Hz的速率过滤学习模型,确定我的PC可以做到,但我不能将我的PC放在四轴飞行器上,因此我需要在微型CPU /微控制器上运行该模型,但是,我选择的微控制器没有支持python。
那么如何获取/提取学习模型的数学本质,换句话说,我如何获得通过训练近似的函数,以便我可以在我选择的任何微控制器中实现它。
只是初学者试图学习,任何帮助将不胜感激。
答案 0 :(得分:1)
由于计算能力有限,使用Logistic回归可能是一个很好的选择,它很简单,计算成本低且易于重现,它是一个简单的函数,如y = w0 + w1.x1 + w2.x2 + ... + wn.xn。
要提取函数,您可以使用scikit-learn LogisticRegresion模型(http://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html)中的以下属性:
属性: coef _ :数组,形状(1,n_features)或(n_classes, n_features)
决策函数中的特征系数。
当给定问题是二进制时,coef_具有形状(1,n_features)。
拦截_ :数组,形状(1,)或(n_classes,)
拦截(a.k.a. bias)添加到决策函数中。
如果fit_intercept设置为False,则截距设置为零。 当问题是二进制时,intercept_的形状为(1,)。
如果您仍想使用SVM,我认为这个类似的问题对您有用:How to extract info from scikits.learn classifier to then use in C code