安阳市网站制作公司,wordpress做淘宝的交流插件,找人做菠菜网站需要多少钱,郑州做网站推广的公司哪家好KNN和Kmeans
KNN KNN-K个最近的邻居#xff0c;而K是可人先预设出来的。 所谓近朱者赤#xff0c;近墨者黑。 可以选取离当前最近的K个样本来作为辅助判断#xff0c;因为本样本和最近的K个样本应该是处于一种相似的状态。 以下是一个苹果和梨的识别任务。 图上会出现一个未…KNN和Kmeans
KNN KNN-K个最近的邻居而K是可人先预设出来的。 所谓近朱者赤近墨者黑。 可以选取离当前最近的K个样本来作为辅助判断因为本样本和最近的K个样本应该是处于一种相似的状态。 以下是一个苹果和梨的识别任务。 图上会出现一个未知的事物可以结合和根据以往已经出现在图上的数据来对这个未知事物进行判断。 可以选取离这个样本最近的K个样本进行判断比如上图让K3离样本最近的3个样本有两个梨子1个苹果。那么当前样本可能会被判断为梨子。 而关于最近的近也有不同的衡量来源比如说曼哈顿距离和欧式距离。
K的选取
如果说K选取过小则最近的样本的影响相对较大若这个最近样本是一个特殊的样本将被容易带偏。 如果说K选取过大则如果样本数本身不够大的情况下容易将偏远样本的信息也囊括进来容易受到相关影响。
KNN算法的应用 比如在推荐算法中可以将用户和他在空间上相近的角色进行比对从而得到相近的信息来作为当前用户的特征从而结合这个特征找到符合的商品来进行推送。 由于KNN一个新样本需要和其他样本进行计算。计算本身会带来损耗。同时计算本身是受到K的大小和特征维度的影响。
Kmeans KNN是通过周围K个水果来认出当前水果。 而SVM可以通过划分好的直线来将水果区分开只需看水果落入的是哪一个范围就可认为是哪一种水果。实际处理中可能涉及到软间隔的影响 而不管是KNN还是SVM都是建立在已有标签的样本的数据之上。KNN中的K个样本是需要知道这K个样本到底是啥而SVM需要知道一些具有标签的样本从而来画出能够区分开的线 而只知道样本分布不知道样本具体是啥的时候就需要用到Kmeans。 可以人为设置具体要分为几类从而让Kmeans确认出最终各个点的归属。 打个比方就好像有一片居民居住地作为城市规划的专家你要设置几个村中心并将哪些人划分到这个村落中去来进行管理。 如果这个人居住地和某个村中心A相距比另一个村中心B来得更远那么这个人应该被划分到村中心B中去。 也就是说可以先认为离谁近就可以归于谁。
Kmeans步骤
可以粗略归纳为——选取样本中心-各点计算距离来归于某一个样本中心-不断迭代直至样本中心稳定。 首先在图中随机找到两个点来作为样本中心因为K2所以挑两个点。 然后每一个点计算与这两个样本点的距离从而来进行归类。 然后每一个点都计算出来到底归于哪一个类。 然后可以将类的点再取平均来作为这个类新的样本中心。 然后所有点再与新的样本中心进行计算迭代直至新的样本中心没有再发生改变。 则可认为基本稳定。 所以Kmeans相对简单容易上手是一种无监督学习不需要样本带有标签只需要知道样本的分布即可打标签是需要成本的相关的工作可以在boss上面找到数据标注员的工作。 而Kmeans也有缺点比如效果并不一定比有监督学习来得好并且效果比较依赖K的选取。