sklearn—无监督最近邻
无监督最近邻
NearestNeighbors (最近邻)实现了 unsupervised nearest neighbors learning(无监督的最近邻学习)。 它为三种不同的最近邻算法提供统一的接口:BallTree, KDTree, 还有基于 sklearn.metrics.pairwise 的 brute-force 算法。算法的选择可通过关键字 'algorithm' 来控制, 并必须是 ['auto', 'ball_tree', 'kd_tree', 'brute'] 其中的一个。当默认值设置为 'auto' 时,算法会尝试从训练数据中确定最佳方法。有关上述每个选项的优缺点,参见 `Nearest Neighbor Algorithms`_ 。
找到最近邻
为了完成找到两组数据集中最近邻点的简单任务, 可以使用 sklearn.neighbors 中的无监督算法:
X = np.array([[-, -], [-, -], [-, -], [, ], [, ], [, ]])
# k个最近的点中包含自己
nbrs = NearestNeighbors(n_neighbors=, algorithm='ball_tree').fit(X)
#n_neighbors 指定包括本样本在内距离本样本最近的 n 个点
#algorithm 指定最临近算法
distances,indices = nbrs.kneighbors(X)
#distances len(X)*n_neighbors的向量,每一行表示距离本样本距离由小到大的样本的index
#distances len(X)*n_neighbors的向量,每一行表示最邻近的n_neighbors个样本距离本样本点的距离
# k个最近点的下标,按升序排列
print(indices)
print(distances)
plt.figure()
plt.scatter(X[:,],X[:,])
plt.xlim(X[:,].min()-,X[:,].max()+)
plt.ylim(X[:,].min()-,X[:,].max()+)
plt.title("Unsupervised nearest neighbors")
plt.show()
当然KDtree和ball_tree在sklearn中还有单独的实现方式具体操作请看链接
http://sklearn.apachecn.org/cn/0.19.0/modules/neighbors.html#unsupervised-neighbors1.6.1.2
sklearn.neighbors.KNeighborsClassifier
X = [[], [], [], []]
y = [, , , ]
from sklearn.neighbors import KNeighborsClassifier
neigh = KNeighborsClassifier(n_neighbors=)
neigh.fit(X, y)
KNeighborsClassifier(...)
print(neigh.predict([[1.1]])) print(neigh.predict_proba([[]]))
sklearn—无监督最近邻的更多相关文章
- 无监督︱异常、离群点检测 一分类——OneClassSVM
OneClassSVM两个功能:异常值检测.解决极度不平衡数据 因为之前一直在做非平衡样本分类的问题,其中如果有一类比例严重失调,就可以直接用这个方式来做:OneClassSVM:OneClassSV ...
- 【转】有监督训练 & 无监督训练
原文链接:http://m.blog.csdn.net/article/details?id=49591213 1. 前言 在学习深度学习的过程中,主要参考了四份资料: 台湾大学的机器学习技法公开课: ...
- 学习笔记CB008:词义消歧、有监督、无监督、语义角色标注、信息检索、TF-IDF、隐含语义索引模型
词义消歧,句子.篇章语义理解基础,必须解决.语言都有大量多种含义词汇.词义消歧,可通过机器学习方法解决.词义消歧有监督机器学习分类算法,判断词义所属分类.词义消歧无监督机器学习聚类算法,把词义聚成多类 ...
- kaggle信用卡欺诈看异常检测算法——无监督的方法包括: 基于统计的技术,如BACON *离群检测 多变量异常值检测 基于聚类的技术;监督方法: 神经网络 SVM 逻辑回归
使用google翻译自:https://software.seek.intel.com/dealing-with-outliers 数据分析中的一项具有挑战性但非常重要的任务是处理异常值.我们通常将异 ...
- 将句子表示为向量(上):无监督句子表示学习(sentence embedding)
1. 引言 word embedding技术如word2vec,glove等已经广泛应用于NLP,极大地推动了NLP的发展.既然词可以embedding,句子也应该可以(其实,万物皆可embeddin ...
- 转:Deep learning系列(十五)有监督和无监督训练
http://m.blog.csdn.net/article/details?id=49591213 1. 前言 在学习深度学习的过程中,主要参考了四份资料: 台湾大学的机器学习技法公开课: Andr ...
- 使用GAN进行异常检测——可以进行网络流量的自学习哇,哥哥,人家是半监督,无监督的话,还是要VAE,SAE。
实验了效果,下面的还是图像的异常检测居多. https://github.com/LeeDoYup/AnoGAN https://github.com/tkwoo/anogan-keras 看了下,本 ...
- UFLDL深度学习笔记 (三)无监督特征学习
UFLDL深度学习笔记 (三)无监督特征学习 1. 主题思路 "UFLDL 无监督特征学习"本节全称为自我学习与无监督特征学习,和前一节softmax回归很类似,所以本篇笔记会比较 ...
- scikit-learn(project中用的相对较多的模型介绍):2.3. Clustering(可用于特征的无监督降维)
參考:http://scikit-learn.org/stable/modules/clustering.html 在实际项目中,我们真的非常少用到那些简单的模型,比方LR.kNN.NB等.尽管经典, ...
随机推荐
- SpringBoot多数据源解决方案(转载)
1.开源项目地址:MyBatis Plus & Dynamic Datasource Maven配置: <dependency> <groupId>com.baomid ...
- php打开csv
<?php $fh=fopen("a.csv","r");//这里我们只是读取数据,所以采用只读打开文件流 $arr=fgetcsv($fh);//这个函 ...
- Java学习笔记-----eclipse中建立Java项目并成功运行
环境:WIN7 64位 +eclipse 2018 12version 具体方法:https://jingyan.baidu.com/album/9c69d48fefa53113c9024eb3.ht ...
- ansible 的file 模块
创建.修改.删除文件或者目录: file模块 file模块常用的几个参数:state.path.src.dest.mode.owner.group.name.recurse state后面跟的参数: ...
- PAT Advanced 1033 To Fill or Not to Fill (25 分)
With highways available, driving a car from Hangzhou to any other city is easy. But since the tank c ...
- 微信开发企业支付到银行卡PHP
微信开发企业支付到银行卡 功能详解 不会的朋友可以加我QQ:344902511先发个微信支付官方链接你查看https://pay.weixin.qq.com/wiki/doc/api/tools/mc ...
- Django学习系列3:创建仓库
在创建仓库之前,在项目superlists中新建一个Python文件,命名为functional_tests.py,里面的内容如下: # File: functional_test.py # Auth ...
- mysql——InnoDB 锁
https://www.cnblogs.com/leedaily/p/8378779.html 1.InnoDB锁的实现方式:给索引项加锁,只有通过索引条件检索数据,InnoDB才使用行级锁,否则,I ...
- layui 中的$符号有可以和jquery冲突,var & = layui.$
在项目上使用到了滚动条插件,但是使用var & = layui.$,会影响到插件. 错误提示: Uncaught TypeError: $(...).perfectScrollbar is n ...
- Python 元组Ⅰ
Python 元组 Python的元组与列表类似,不同之处在于元组的元素不能修改. 元组使用小括号,列表使用方括号. 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可. 如下实例: 创建空元 ...