你不知道模型机器学习QLattice(模型让我们数据你不知道学习)「machine learning 模型」

数据科学中层领域,我有个大新闻。
一个全新的机器学习模型已经浮出水面。
QLattice简介:适合您的问题的全新模型。
QLattice图既不是神经网络也不是基于决策树的模型。
您可以说QLattice解开了黑匣子神经网络的包装,并提供了类似于决策树的解释性/解释性。
在开始实践之前,让我们看一下QLattice图:QLattice在成千上万个潜在模型中搜索具有一组正确功能和交互组合的一张图,从而结合起来对问题进行完美调整。
在QLattice中可访问的数据转换为:乘法,线性,正弦,tanh和高斯-这些几乎涵盖了所有自然发生的依存关系。
这意味着训练有素的QLattice图将在预测目标变量时提取出功能所持有的任何信号。
但是,这一切的真正美并不是模型的高精度。
就是您对模型进行了简单的视觉描绘-您可以详细检查数据是如何被操纵以最终提供一组预测的。
在您的神经网络的隐藏层或整体模型的第117个决策树中,没有任何东西被隐藏起来(请参阅打开黑匣子)。
我会不遗余力地说,QLattice图是描述数据真实模型,实际数据生成过程的最佳选择。
感兴趣吗?请遵循此快速教程,了解如何应用您的QLattice(自行注册以进行学习)。
如何申请您的QLattice在本教程中,我们将介绍如何使用QLattice解决回归问题的基本工作流程Feyn(/ ˈfaɪn /)是我们用于与QLattice交互的软件开发工具包。
它以Richard Feynman的名字命名-他在路径积分方面的工作使QLattice成为可能。
试试吧。

在Kaggle上找到一些随机的,连续的目标数据集…Airbnb出租。

您在纽约的Airbnb(Kaggle)上购买公寓的合适价格是多少。
该数据集充分展示了连续和分类特征的组合(最后我们可以为您提供很好的地图可视化结果)。
我们走吧。

因此,我们根据租金类型,位置,评论,主机受欢迎程度和历史可用性信息来预测价格。
对于本博文,我们将轻轻地跳过冗长的数据探索和功能工程任务(当然,其中的重要性当然也不过分,不过这并不是本博文的重点)。
但是,需要最少的预处理工作,即删除唯一的标识符和不相关的功能。
NaN值和极端离群值也是如此。
数据就绪-让我们将其拆分。
目前,我们将使用火车和测试仪。
唤醒QLattice现在我们可以开始比赛了。
我们首先称为QLattice。
要继续,我们需要告诉QLattice它生成的模型的输入和输出是什么。
我们将数据集中的每个变量分配给一个语义类型-我们是在处理数字值还是分类值?默认情况下,每个变量都将被分配为数值并期望数值,因此我们仅指出类别变量:使用此功能,分类变量会自动在QLattice中编码。
你听到了吗?不再需要手持一键式或类似的分类功能编码。

它会在分类寄存器中处理。
同样,数字寄存器通过MinMaxScalar标准化自动将数据缩放到[-1,1]之间。
如果您有特定的缩放比例愿望,则可以进行干预并自己进行数值缩放。
Q图让我们将QLattice投入使用。
QLattice的主要作用是生成QGraphs。
QGraph是连接输入到输出的所有可能模型的集合。
但是,由于计算和内存限制,QGraph无法容纳所有可能的模型,因此实际上是无限模型列表(通常是成千上万个模型)的子集。
我们需要告诉QLattice,模型的输入和输出应该是什么。
我们将所有变量都包含在下面的方法中,然后声明将哪个变量作为我们的输出。
让我们为您展示一些随机的,未经训练的模型。
每种型号都有两种类型的盒子。
绿色是输入或输出,粉红色是我们所谓的交互。
交互将获取一个值,然后对该值求值,然后将其移至下一个交互。
这些模型有点类似于神经网络,但是节点更少,节点上的激活函数不是典型的类型。
现在,我们将乘法,线性,正弦和高斯函数与典型的tanh函数一起应用。
每个模型都有从左到右的自然流动,因此我们将数据集的每一行输入到输入中,在每个粉红色方框中进行评估,然后在输出的末尾产生预测。
拟合像神经网络或任何其他机器学习技术一样,这些模型中的每一个都需要训练。
每次交互的权重最初都是随机的,因此您上面看到的所有模型都可能很糟糕。
QGraph fit方法需要采用以下参数:· QGraph中的模型数据应在其上进行训练· 我们要优化的损失函数由于我们处于典型的回归问题中,因此我们将使用标准均方误差损失。
那么这里发生了什么?我们在子集的QGraph中训练每个模型。
在拟合期间的任何给定时间,显示的图都是具有最小均方误差损失的模型。
分类让我们来看看到目前为止最好的。
我们通过使用sort函数来做到这一点。
排序功能根据我们可以自由选择的一些标准对模型进行排序。
让我们坚持标准案例;我们要基于所有训练集的损失对模型进行排序。
更新数据那么,如果最初提取的几千个图表中没有一个与真实模型匹配,该怎么办?显然,我们还没有完成。
答案就是更新。
在更新QLattice时,我们会推动最佳学习,以影响QGraph中的下一个图形绘制-我们使下一个图形提取偏向于图形特征,从而使前一组图形中的损失最小。
现在,我们准备好从QGraph绘制下一个图形。
如下所示,让我们继续进行5次更新。
适合,排序,更新,重复……直到您的损失持续一段时间没有减少(或者您只是不想再继续下去)。
预测让我们来看看我们的努力。
我们可以通过在图表上运行预测方法来预测测试集中的价格。
最后,要闪闪发光:在纽约市的经度纬度范围内倾注实际情况和预测。
希望通过本介绍QLattice解决回归问题的介绍,我们希望您对QLattice的意义有一个广泛的了解,并且我们已经引起了更多的兴趣。
谢谢阅读。

(本文由闻数起舞翻译自Valdemar Stentoft-Hansen的文章《The QLattice: A new machine learning model you didn't know you needed》,转载请注明出处,原文链接:https://medium.com/abzuai/the-qlattice-a-new-machine-learning-model-you-didnt-know-you-needed-c2e037878cd)
你不知道模型机器学习QLattice(模型让我们数据你不知道学习)
(图片来源网络,侵删)

联系我们

在线咨询:点击这里给我发消息