1.目标:
1.1、复现 一个文本聚类实验
1.2、复现 k-means聚类实验
1.3、复现 fast search——k-means聚类
1.4、复现 fast search----k-means----文本聚类
1.5、实验 上述改进
2.基本资料:
3.参考资料:
3.1 博客:
1、中文文本聚类(切词以及k-means聚类)python 2017.11.06
2、博客《文本聚类教程》 TF-IDF博客推荐
3、《【Python与机器学习】:利用Keras进行多类分类》
---》《Multi-Class Classification Tutorial with the Keras Deep Learning Library》
4、《How to understand the drawbacks of K-means》 关于k-means有丰富的图和说明
5、《How can i cluster document using k-means (Flann with python)?》 都说k-means不适用于文本聚类,可以使用k-moids 不过更慢
6、python sklearn-06:聚类-k-means 有详细的绘图的代码
7、《用Python实现文档聚类》实际项目
8、《K-means文本聚类系列(已经完成)》可以参照做实验
3.2论文:
3.3 数据集:《一些文本语料库》
3.4 网站:
1、https://stackoverflow.com/
2、https://datascience.stackexchange.com/
3、http://alias-i.com/lingpipe/demos/tutorial/cluster/read-me.html java关于cluster的库,包含document cluster
4、搜狐 5、《如何研究——以博士论文为例》 6、《国外博士论文下载网址》 7、
3.5 知乎大v呼广跃 阿里巴巴工程师 专栏:聚类,离群点检测
3.6书籍:
1、《mastering machine learning with scikit learn》第三章 特征选择 已下载,百度文库也有
2、《text analysis with python》文本分类这一章
3.7 github
1、《Guan Wang》有很多数据集
4.疑惑:
4.1 究竟是先熟悉文本聚类的理论还是先复现一个文本聚类的差不多的实验。
4.2 只熟悉理论,怕纸上谈兵没有实践效果来得快,只复现又看理论看得不明不白的,迷迷糊糊的,看不懂。
4.3 论文的分布和目录流程顺序该怎么组织?
将重点放在文本聚类的各技术上,按文本聚类的步骤(预处理--聚类--评价)去写还是按基本聚类方法、改进的方法去写。
5.暂记:
5.1 搜索最新的2017届的毕业论文。
5.2 搜索最新的论文。
5.3 sklearn python里的科学计算库,提供数种聚类算法。
5.4 如何学习tableau?
5.5 资料库:知乎-文本挖掘专栏、聚类、iteye关于聚类的检索
6.总结:
---》参考最接近的几篇硕士论文和博士论文。
---》一篇博士论文里的其中一个章节的实验就够写硕士论文了。
---》关注每个论文的实验部分及其写作的图片和实验结果总结。
--》套用现成的文本聚类全过程实验,将核心聚类算法进行处理好改进,即可完成论文实验。
--》写论文的时候注意总分总,中心句、小标题和一二三四序号等,使论文逻辑清晰。
--》多用实验。数据和图表去论证,去纯文字效果要好。
---------------------------------------------------20171106--------------------------------------------------
1、中文文本聚类(切词以及k-means聚类)
文中git项目chines_text_cluster git使用参考博客
2、重装java和eclipse
重刷系统之后,java还可以用,不过要照着网上的教程重新配置一下环境变量
有了java,eclipse就能直接启动了。
---------------------------------------------------20171115----------------------------------------------------
参考:Python·Win10通过Anaconda安装python和Jupyter(python2.7为例)
anaconda安装及使用教程
----------------------------------------------------20171207------------------------------------------------------
1、搜索一篇博客《文本聚类教程》,已转载。博主貌似是哈工大毕业、实习做文本聚类、毕业去百度做算法工程师。
博客简略介绍了一下文本聚类的核心点,并附上了python写的代码。(然而还看不懂)。
---------------------------------------------------20171208-----------------------------------------------------
1、看昨天博客的代码,读懂,制作数据进行实验。
----------------------------------------------------20171218--------------------------------------------------------
计划:上午看一份有关文本聚类的论文,了解基本理论。
下午看代码,做实验。
----------------------------------------------------20171219---------------------------------------------------------
1、总结:通读了几篇文本聚类的论文。
文本预处理 文本-----→文本去噪-----→中文分词-->去停用词->特征选取->建立向量空间模型->特征向量集
|
|
↓
文本聚类 文本向量集-----→K-CFSFDP算法聚类-----→确定类别数范围并迭代求解最佳类别数-----→类别数
|
|
↓
评估 查准率+召回率+F-measure
2、存在的问题
2.1python2.x和python3.x不兼容
更换python版本,使用anaconda更换python 《如何在anaconda中实现多版本python spyder共存》
可以在控制台使用activate python27激活python2,激活之后调用python即可使用python2.
在本机中,python3安装在C:\Users\qixianting\AppData\Local\Programs\Python\Python36。
python2安装在D:\2_software\anaconda\envs\python27。
安装jieba、gensim等模块。
jieba python2.x下安装: pip install jieba python3.x下安装:# pip install jieba
2.2乱码问题
2.2.1从根本解决 通读编码相关的知识,解决代码存在的问题
2.2.2 转移问题 查找相关去除停用词的代码,绕过编码问题。
----------------------------------------------------20171223---------------------------------------------------------
1、看知乎上关于聚类的东西,找到了一些相关的资料
1.1 周明博士
建议一:如何在NLP领域快速学会第一个技能(编译现有项目、编程实现这个项目、对比修改)
建议二:如何选择第一个好题目(研究现有的主要流派和方法以入门、阅读最新论文和牛人的论文并找出可改进的地方、复现实验、改进实验)
建议三:如何写出第一篇论文(写的很细致很具体:题目、摘要、引言、相关工作、自己的工作(算法+实验)、结论、参考文献)
1.2
----------------------------------------------------20180103---------------------------------------------------------
1、修改了stopwords.txt,将其编码改为utf-8,(文档另存时即可修改编码方式)成功运行了clustering.py,并使用三类文本进行聚类。
2、使用10类文档进行聚类时,依旧存在以下几点问题:
2.1 聚类结果太大无法显示,就算显示了数据也很难使用,还要一步步处理,可否将结果写入文档中保存。
2.2 不理解代码中画的图的意义,以及轮廓系数的意义。
3、理解python代码
3.1 f=open('doc.txt','r') open()函数创建了一个file对象,即f。
3.2 fileContent=f.read() file.read()函数返回读取到的字符串内容的字节
3.3 lines=f.readlines() file.readlines()函数,读取整个文件并自动返回一个按“行”拆分的列表
3.4 列表 list
list的方法:list.append(obj) 在列表末尾添加新的对象
python中关于list的方法: len(list) 列表元素的个数
for i in list01:
print i 列表的迭代