5

我需要使用模糊逻辑对对象进行分类。每个对象都有 4 个特征 - {大小、形状、颜色、纹理}。每个特征都被语言术语和一些隶属函数模糊化。问题是我无法理解如何去模糊化,以便我可以知道未知对象属于哪个类。使用 Mamdani Max-Min 推理,有人可以帮助解决这个问题吗?

对象 = {Dustbin, Can, Bottle, Cup} 或分别表示为 {1,2,3,4}。每个特征的模糊集是:

特征 : 尺寸

$\tilde{Size_{Large}}$ = {1//1,1/2,0/3,0.6/4}  for crisp values in range 10cm - 20 cm

$\tilde{Size_{Small}}$ = {0/1,0/2,1/3,0.4/4}  (4cm - 10cm)

形状:

$\tilde{Shape_{Square}}$ = {0.9/1, 0/2,0/3,0/4}  for crisp values in range 50-100

$\tilde{Shape_{Cylindrical}}$ = {0.1/1, 1/2,1/3,1/4}  (10-40)

特征 : 颜色

$\tilde{Color_{Reddish}}$ = {0/1, 0.8/2, 0.6/3,0.3/4}  say red values in between 10-50 (not sure, assuming)

$\tilde{Color_{Greenish}}$ = {1/1, 0.2/2, 0.4/3, 0.7/4}  say color values in 100-200

特征 : 质地

$\tilde{Tex_{Coarse}}$ = {0.2/1, 0.2/2,0/3,0.5/4}  if texture crisp values 10-20

$\tilde{Tex_{Shiny}}$ = {0.8/1, 0.8/2, 1/3, 0.5/4}  30-40

If then else 分类规则是

R1:如果对象尺寸大且呈圆柱形且颜色偏绿且质地粗糙,则对象为垃圾箱

或以表格形式只是为了节省空间

Object type  Size   Shape          Color        Texture
Dustbin :   Large  cylindrical       greenish   coarse
Can :       small  cylindrical       reddish    shiny
Bottle:     small  cylindrical        reddish    shiny
Cup :       small  cylindrical       greenish   shiny

然后,有一个未知特征的清晰值 X = {12cm, 52,120,11}。我该如何分类?还是我的理解不正确,我需要重新制定整个事情?

4

2 回答 2

0

模糊逻辑意味着每个模式在一个级别都属于一个类。换句话说,每个模式的算法输出可以是一个向量,假设每个类的相似性百分比总和为单位。然后可以通过检查阈值来决定一个类。这意味着模糊逻辑的目的是量化不确定性。如果您需要为您的案例做出决定,一个简单的最小距离分类器或多数票就足够了。否则,通过考虑“数字因素”再次定义您的问题。

于 2014-07-02T13:03:35.203 回答
0

一种可能的方法是为每个要素的不同属性定义质心,例如,Large_size=15cm 和 Small_size=7cm。然后可以将隶属函数定义为与这些质心的距离的函数。然后您可以执行以下操作: 1) 计算每个特征的欧几里得差 * 高斯或巴特沃斯内核(以捕获质心周围的范围)。为每个类准备一个内核,例如作为目标的垃圾箱需要大尺寸、粗糙纹理等。 2)计算以上所有内容的乘积(这是朴素贝叶斯方法)。模糊逻辑到此结束。3)然后,您可以将模式分配给具有最高隶属函数值的类。抱歉花了太长时间来回答,希望这会有所帮助。

于 2014-07-09T11:20:31.190 回答