IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 【代码学习】聚类方法及实现记录 -> 正文阅读

[人工智能]【代码学习】聚类方法及实现记录

最近工作中需要分别对视觉特征(68w+)和文本特征(9000+)进行聚类,由于两者数量差距大,所以尝试了许多种聚类的方式,这里简单总结下:

视觉特征

(1)lloyd聚类
代码为lloyd_motion_cluster.py和lloyd_2d_cluster.py
(2)single-pass聚类
代码为single_pass_motion_cluster.py和single_pass_2d_cluster.py
(3)层次聚类
代码为birch_motion_层次聚类_cluster.py和birch_2d_层次聚类_cluster.py
(4)dbscan聚类
代码为dbscan_2d_cluster.py和dbscan_motion_cluster.py
(5)meanshift聚类
代码为meanshift_2d_cluster.py和meanshift_motin_cluster.py
(6)gpu-kmeans聚类
代码为gpu-KMeans-2d.py和gpu-KMean-motions.py

其中1-5无法聚类出65万数据,一是计算内存爆炸,二是single-pass计算时间过长,最后采用gpu-kmeans获取聚类结果
根据聚类结果,随机选取10万个点画出可视化图
代码为:2d-pic-visualize.py和motion-pic-visualize.py
画图结果存放在100000个点画图结果中,聚类结果存放在result文件夹中

需要说明的是,kmeans其实可以直接调用sklearn.cluster.KMeans,传入参数即可。但因为这个提供的版本没办法在gpu上跑(其变量本质还是基于numpy定义的类型),所以又按照kmeans(lloyd)的流程又自己实现了一遍,这一版的变量基于torch.Tensor,可以放在gpu上

文本特征

(1)lloyd聚类
代码为verb-lloyd_cluster.py和noun-lloyd_cluster.py
(2)single-pass聚类
代码为single_pass_verb_cluster.py和single_pass_noun_cluster.py

文本聚类结果存放在文本特征result文件夹中

需要说明的是,lloyd聚类其实是kmeans聚类中最常见最基本的一种,除此之外还有一些改进的版本,具体可以参考3 versions of k-Means。使用sklearn.cluster.KMeans实现lloyd算法时,将参数 algorithm='lloyd'传入即可(其实默认值就是lloyd)

single-pass方法其实很简单,就是只过一遍的意思,设定一个阈值,每次计算距离,在阈值之上就归入已有类,否则就建立新类(从逻辑上说,感觉这种方式聚出来的效果不如kmeans)。算法的详细实例可参见Example of Single Pass Clustering Technique

代码暂未公布,有点不太想公布…实在想要代码的给我发评论留邮箱好了,我看心情发一下

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-11-05 00:28:48  更:2022-11-05 00:33:49 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 20:18:57-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码