用 WEKA 进行数据挖掘,第 3 部分: 最近邻和服务器端库
2010-06-23 00:00:00 来源:WEB开发网清单 1. 最近邻的数学理论
Customer Age Income Purchased Product
1 45 46k Book
2 39 100k TV
3 35 38k DVD
4 69 150k Car Cover
5 58 51k ???
Step 1: Determine Distance Formula
Distance = SQRT( ((58 - Age)/(69-35))^2) + ((51000 - Income)/(150000-38000))^2 )
Step 2: Calculate the Score
Customer Score Purchased Product
1 .385 Book
2 .710 TV
3 .686 DVD
4 .941 Car Cover
5 0.0 ???
如果使用最近邻算法回答我们上面遇到的 “第 5 个顾客最有可能购买什么产品” 这一问题,答案将是一本书。这是因为第 5 个顾客与第 1 个顾客之间的距离要比第 5 个顾客与其他任何顾客之间的距离都短(实际上是短很多)。基于这个模型,可以得出这样的结论:由最像第 5 个顾客的顾客可以预测出第 5 个顾客的行为。
不过,最近邻的好处远不止于此。最近邻算法可被扩展成不仅仅限于一个最近匹配,而是可以包括任意数量的最近匹配。可将这些最近匹配称为是 “N-最近邻”(比如 3-最近邻)。回到上述的例子,如果我们想要知道第 5 个顾客最有可能购买的产品,那么这次的结论是书和 DVD。而对于上述的亚马逊的例子,如果想要知道某个顾客最有可能购买的 12 个产品,就可以运行一个 12-最近邻算法(但亚马逊实际运行的算法要远比一个简单的 12-最近邻算法复杂)。
更多精彩
赞助商链接