我正在阅读有关模糊逻辑的内容,但我只是看不出它在大多数情况下如何改进机器学习算法(它似乎相对经常应用)。
举个例子,k个最近邻。如果你有一堆属性color: [red,blue,green,orange], temperature: [real number], shape: [round, square, triangle]
,比如把东西堆在一起。
如何使用机器模糊逻辑来改进机器学习?大多数情况下,您可以在大多数网站上找到的玩具示例似乎并不那么适用。
我正在阅读有关模糊逻辑的内容,但我只是看不出它在大多数情况下如何改进机器学习算法(它似乎相对经常应用)。
举个例子,k个最近邻。如果你有一堆属性color: [red,blue,green,orange], temperature: [real number], shape: [round, square, triangle]
,比如把东西堆在一起。
如何使用机器模糊逻辑来改进机器学习?大多数情况下,您可以在大多数网站上找到的玩具示例似乎并不那么适用。
当变量具有自然的形状解释时,建议使用模糊逻辑。例如,[非常少,少,多,非常多] 对值有很好的重叠梯形解释。
像颜色这样的变量可能不会。模糊变量表示成员的程度,那是它们变得有用的时候。
关于机器学习,这取决于您要应用模糊逻辑的算法的哪个阶段。在我看来,在找到集群之后(使用传统的学习技术)来确定每个集群上搜索空间中某个点的隶属度会更好,但这并不能提高每次看到的学习,而是在之后的分类学习。
【圆形、方形、三角形】多为理想范畴,主要存在于几何学中(即理论上)。在现实世界中,某些形状可能几乎是正方形或或多或少是圆形(圆形)。红色有许多细微差别,有些颜色更接近其他颜色(例如,请一位女士解释绿松石)。因此,抽象类别和一些特定值也可用作参考,在现实世界中,对象或值不一定等于这些对象或值。
模糊成员资格允许您测量某些特定对象与某个理想对象的距离。使用这种度量可以避免“不,它不是圆形的”(这可能导致信息丢失),并利用给定对象是(不是)圆形的度量。
通过强行添加模糊性来激怒您。如果您有一个“边数”属性而不是“形状”属性,则该属性将进一步分为“少”、“中”、“多”和“不可数”。考虑到适当的隶属函数,正方形可能是“少”和“中等”的一部分。代替“颜色”属性,如果您有“红色”属性,则使用 RGB 代码,可以制作隶属函数。因此,正如我在数据挖掘方面的经验所说,每种方法都可以应用于每个数据集,什么有效,什么有效。
在我看来,模糊逻辑对于任何事情都不是一种实际可行的方法,除非您正在构建一个目的构建的模糊控制器或一些基于规则的结构,例如合规性/策略。虽然,模糊意味着处理介于 0 和 1 之间的所有内容。但是,当您处理需要在 3 维空间中应用模糊逻辑方面的更复杂的问题时,我发现它有点缺陷。您仍然可以处理多变量,而无需查看模糊逻辑。不幸的是,对我研究过模糊逻辑的我来说,我发现自己不同意在大维度空间中的模糊集合中接近的原则,这似乎不可行、不切实际,而且在逻辑上也不是很合理。您将在模糊集解决方案中应用的自然语言库也将是非常临时的,究竟是什么[非常,很少,许多] 这就是您在应用程序中定义的所有内容。在很多机器学习方面,您会发现您甚至不必将自然语言基础构建到您的模型中。事实上,您会发现无需将模糊逻辑应用到模型的任何方面即可获得更好的结果。
我不清楚您在给出的示例中要完成什么(形状、颜色等)。模糊逻辑已成功用于机器学习,但我个人认为它可能更常用于构建策略。与其继续讨论,我建议您参考我在“PC AI”杂志 2002 年 3 月 / 4 月号上发表的一篇文章,希望能阐明这个想法:
难道不能将离散集合转换为连续集合并获得与模糊性相同的效果,同时能够使用概率论的所有技术吗?
例如尺寸 ['small', 'medium', 'big'] ==> [0,1]