手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜的Vultr , 注册 | 登陆
浏览模式: 标准 | 列表Tag:聚合

Kmeans算法

做电子商务的不可避免的都会遇到价格区间的问题。这,主要显示在搜索的时候,如果你区间设的过大,那几乎把所有产品都列出来了。那和没有分区间没啥分别。因此,还真有一种算法可以解决这个问题(当然也只是基本解决,看上去不是特别的乱而己)。

这是在老王的博客上看到的:

means算法

Web开发中,CRUD做多了难免厌烦,其实还有很多细节可以挖掘,比如很多电子商务网站上都有商品价格区间,都是诸如1000-2000,2000-3000之类定死的,而没有按商品自己的分布规律来划分,此时有一种名为Kmeans的算法可以使用,效果很好,网上有很多现成的代码可以参阅,比如PHP的版本:

kmeanspp
K-Means Clustering in PHP

--EOF--

到百科看了一下,这么解释K-means:k-means 算法接受输入量 k ;然后将n个数据对象划分为 k个聚类以便使得所获得的聚类满足:同一聚类中的对象相似度较高;而不同聚类中的对象相似度较小。聚类相似度是利用各聚类中对象的均值所获得一个“中心对象”(引力中心)来进行计算的。

虽然这样能够处理,老王也给了一个PHP的解决方案,但在实际中,应用的范围并能算是特别大,有时候还是直接手写的。以前的时候,我们是在分类里,直接把几个区间定义好,然后在搜索的时候指定某一分类时,自动调用这个区间。理由是,如果你的产品分的很散,从几块到几千块的都有,这种分类区间,就只能定义到分类上了。

不过上面的算法可以学习一下

Tags: kmeans, 老王, 聚合, 分类, 算法