个人项目作业
这个作业属于哪个课程 | 软件工程 |
---|---|
这个作业要求在哪里 | |
这个作业的目标 | 进行性能分析、回归测试; 把代码上传到GitHub |
GitHub地址:3118005380 | |
PSP2.1 | Personal Software Process Stages |
:----: | :----: |
Planning | 计划 |
Estimate | 估计这个任务需要多少时间 |
Development | 开发 |
Analysis | 需求分析 (包括学习新技术) |
Design Spec | 生成设计文档 |
Design Review | 设计复审 |
Coding Standard | 代码规范 (为目前的开发制定合适的规范) |
Design | 具体设计 |
Coding | 具体编码 |
Code Review | 代码复审 |
Test | 测试(自我测试,修改代码,提交修改) |
Reporting | 报告 |
Test Repor | 测试报告 |
Size Measurement | 计算工作量 |
Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 |
Total | 总计 |
- 项目中包含两个.py文件,其中一个包含了实现余弦相似度算法的类CoSim,该类主要方法有:self.ClearContent(),用于清除文本噪音,使文本只留下中文字符,有一定局限性;self.DealString(),用于处理从文本转化而来的字符串,调用jieba库中的方法实现分词、提取关键词的操作,并编写代码求出各关键词的词频用于生成词频向量;self.CoSim(),用于计算两词频向量的余弦值。
独到之处在于,CoSim类的self.init()方法接收两个参数,并调用self.CoSim(),self.CoSim()调用了self.DealString(),self.DealString()在处理文本转化来的字符串前,调用self.ClearContent()清楚文本噪音。创建CoSim类的对象的同时余弦相似度就计算出来了,一步到位。 - 项目中的main.py文件用来获取命令行参数,进行文件的读写操作,以及调用CoSim类
- 单元测试
清除文本噪音
分词,提取关键词
计算词频向量
- 异常处理
- 程序运行截图