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等.尽管经典, ...
随机推荐
- 基于Spring Cloud 几行配置完成单点登录开发
单点登录概念 单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一.SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统. ...
- 关于python3.4版本中的zip函数
特别注意: 在window,显示变量 print(x);而在linux中 print x 例如,有两个列表: >>>a = [1,2,3] >>>b = [4,5, ...
- SQL的基本操作(三)
Hive基本SQL操作 Hive DDL(数据库定义语言) 1.数据库的基本操作 --展示所有数据库 show databases; --切换数据库 use database_name; /*创建数据 ...
- 五种I/O模型
文档地址:https://www.cse.huji.ac.il/course/2004/com1/Exercises/Ex4/I.O.models.pdf 五种I/O模型: 1. blocking ...
- css标签样式 边框 盒子模型 定位 溢出 z-index 透明度
目录 一.CSS设置标签样式 1. 给标签设置长和宽 2.字体的颜色(3种表示方法) 3.文本样式 4. 语义 5. 背景样式 6. 边框 6.1 边框变圆 7.display 标签转换 二.盒子模型 ...
- notepad++文档格式转化window、unix、MAC
切换
- 常见状态码StatusCode
当浏览者访问一个网页时,浏览者的浏览器会向网页所在服务器发出请求.当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含HTTP状态码的信息头(server header)用以响应浏览器的请求. ...
- Redis :Linux和Window查看版本号
一.Linux版本:查看服务端版本 **二者都可以** redis-server -v redis-server --version 查看客户端版本 **二者都可以** redis-cli -v re ...
- shell练习--PAT题目1003:我要通过!(成功案例)
“答案正确”是自动判题系统给出的最令人欢喜的回复.本题属于 PAT 的“答案正确”大派送 —— 只要读入的字符串满足下列条件,系统就输出“答案正确”,否则输出“答案错误”. 得到“答案正确”的条件是: ...
- 牛客挑战赛34 A~E
闷声发大财 A O(nmk)dp即可,因为带了1/2的常数+2s所以很稳 #include <algorithm> #include <iostream> #include & ...