Python
人生苦短,我用python
zclhit_
全栈开发者
展开
-
think python学习心得-(5)迭代与字符串的使用
for while return break等语句,用法同C语言很像。m=5.0def sqr(a): x=a y=(x+m/x)/2 if abs(y-x)<0.00001: print y else: sqr(y) def sq(a): x=a y=(x+m/x)/2翻译 2016-03-26 18:40:44 · 1850 阅读 · 0 评论 -
Machine Learning in Action 学习笔记-(5)Logistic回归
logistic回归将会首次为我们引入最优化算法的分析思维,在对一系列点通过一条直线进行拟合的过程就是线性回归。寻找最佳的拟合参数,就需要用到我们常用的最优化算法。这里因为是进行二分类,所以可以使用Sigmoid函数实现分类。将线性回归问题转变为了最佳回归系数的迭代选择。梯度上升算法,随机梯度上升算法等都可以被用于这个最佳回归系数的选择过程。在预处理数据时,我们可以通过对缺失数转载 2016-06-05 23:55:55 · 1807 阅读 · 0 评论 -
Machine Learning in Action 学习笔记-(4)基于概率论的分类方法:朴素贝叶斯
开篇为我们讲解了许多实际应用情况下,我们可能不需要得到精准的分类,而是属于某一类的概率,以及属于其他类的概率。这里我就简单的以论坛侮辱性言语检测为例,来讲一下算法的流程。函数伪代码是:计算每个类别的文档数目对每篇训练文档:对每个类别:如果词条出现在了这个文档中->增加该文档的计数值增加所有词条的计数值对每个类别:对每个词条:将该词条的数目除以总体条数目得到条转载 2016-06-02 23:15:06 · 2051 阅读 · 0 评论 -
Machine Learning in Action 学习笔记-(3)决策树
决策树对于我们来说就像是一个具有终止块的流程图一样,终止块就向我们展示了分类的结果。通过使得信息熵变化至最小的原理构建我们的决策树不同的层,并且我们可以使用treePlotter.py这个模块来实现决策树的树形图绘制,能够更加直观的向我们展示决策树的结构。决策树的层数将会极大的和我们所具有的feature的数量有关,可能会存在终止块中无法准确决策出结果的情况(比如说feature过少)转载 2016-06-01 22:43:45 · 2107 阅读 · 0 评论 -
Machine Learning in Action 学习笔记-(2)kNN k近邻算法
kNN是最常见的聚类算法,通过比较待测被试特征与训练样本之间的欧式距离,选取k个最近的点,然后找出出现概率最高的label作为我们的预测结果。其中k的值,随机选择训练样本的方案,训练样本数目的变化都将会影响到我们最终的聚类准确率。这种基于实例的算法将会使我们无法知道平均实例样本,也将会影响到我们对于典型实例样本特征的理解。最大的收获是学会了更多的Python命令(在numPy)下的转载 2016-06-01 11:05:26 · 2030 阅读 · 0 评论 -
Machine Learning in Action 学习笔记-(1)
第一章引入了监督学习和非监督学习两个概念,介绍了NumbPy库,以及Matplotlib绘图工具协同工作。值得注意的是NumPy函数库中的matrix与MATLAB中matrices等价。如何选择合适的算法将会是一个影响我们工作效率的问题,选择了正确的算法,收集数据,准备数据,分析输入数据(洗数据),训练算法,测试算法,使用算法将会是未来的操作流程。转载 2016-05-30 16:49:30 · 2025 阅读 · 0 评论 -
think python学习心得-(6)利用words.txt来进行填字游戏
练习9-1fin = open('C://words.txt')for line in fin: word = line.strip() if len(word) >20: print wordwords.txt被保存在了C盘根目录下。练习9-2统计字母表中含有e的单词占有的百分比fin = open('C://words.txt')翻译 2016-04-01 16:46:12 · 2831 阅读 · 0 评论 -
think python学习心得-(2)接口设计
TurtleWorld模块的下载与安装:下载地址就是:http://thinkpython.com/swampy安装方法把压缩包解压之后,用cmd cd到解压的安装目录下,运行:python setup.py install安装后就可以from swampy.TurtleWorld import *啦!翻译 2016-03-18 19:38:05 · 2038 阅读 · 0 评论 -
think python学习心得-(1)关于函数和模块
安装版本为python(x,y) 2.7.2.1,因为看某大神说的兼容性问题所以没有选择2.7.3以上版本。。。提供了比较好用的spyder,适合数据处理(提供了类似于MATLAB workspace一样的工作空间查看编辑工具),以及平时可以用Ipython进行操作。变量部分略过,和C语言差不多。函数部分,Python提供了一个模块,可以用>>>import math进行导入调用该翻译 2016-03-16 10:28:55 · 2225 阅读 · 0 评论 -
think python学习心得-(3)条件和递归
比较简单,和C语言类似,这里po上自己制作的课后题答案好了:5-3 def check_fermat(a,b,c,n): a2=int(a) b2=int(b) c2=int(c) n2=int(n) left = pow(a2,n2)+pow(b2,n2) right = pow(c2,n2) if left==right:翻译 2016-03-23 18:42:16 · 2024 阅读 · 0 评论 -
think python学习心得-(4)有返回函数
练习题6-1def compare(x,y): if x>y: return 1 elif x==y: return 0 else: return -1a=[int(i) for i in raw_input('please input 2 number: ').split()]print compare(a[0翻译 2016-03-24 13:05:09 · 1817 阅读 · 0 评论 -
python networkx图论工具包如何画出edge的属性信息标签
networkx是一款非常好用的python下的图论分析工具,关于它的安装和如何构件图已经有很多大牛讲得很清楚里,但是我发现大家都没有提如何为画出来的图像中的edge或node在显示的过程中展示出其属性,在有的图中,展示属性有助于我们对这幅图有更清晰的认识,所以这里我将会向大家介绍如何为一幅图添加其node与edge属性。import networkx as nx;import ma原创 2017-03-08 14:31:49 · 10063 阅读 · 8 评论