用 Python 实现一个大数据搜索引擎
技术文章 / 2017-12-06

搜索是大数据领域里常见的需求。Splunk和ELK分别是该领域在非开源和开源领域里的领导者。本文利用很少的Python代码实现了一个基本的数据搜索功能,试图让大家理解大数据搜索的基本原理。 布隆过滤器 (Bloom Filter) 第一步我们先要实现一个布隆过滤器。 布隆过滤器是大数据领域的一个常见算法,它的目的是过滤掉那些不是目标的元素。也就是说如果一个要搜索的词并不存在与我的数据中,那么它可以…

Pylearn2:一个基于Theano的机器学习库
技术文章 / 2017-12-03

Pylearn2是一个基于Theano的机器学习库,它的大部分功能是基于Theano顶层实现的。这意味着用户可以用数学表达式去编写Pylearn2插件(新模型、算法等),Theano不仅会帮助用户优化这些表达式,并且将这些表达式编译到CPU或者GPU中。 功能特性 研究人员可以添加他们所需要的功能。我们避免提前设置过多自上而下的计划,这样容易导致用户难以使用。 一个实现高效科学实验的机器学习工具箱…

Python NLP入门教程
技术文章 / 2017-12-03

目录 什么是NLP? NLP实现 NLP库 安装 NLTK 使用Python Tokenize文本 统计词频 处理停用词 使用NLTK Tokenize文本 非英文Tokenize 同义词处理 反义词处理 词干提取 非英文词干提取 单词变体还原 词干和变体的区别   正文 本文简要介绍Python自然语言处理(NLP),使用Python的NLTK库。NLTK是Python的自然语言处理工…

提升 Python 程序性能的 6 个技巧
技术文章 / 2017-12-01

本文除非特殊指明,”python“都是代表CPython,即C语言实现的标准python,且本文所讨论的是版本为2.7的CPython。另外,本文会不定期更新,如果大家有一些好的想法,请在评论里面留言,我会补充到文章中去。 姊妹篇:《Python内存优化》 姊妹篇:《使用gc、objgraph干掉python内存泄露与循环引用!》 python为什么性能差: 当我们提到一门编程语言的效率时:通常有…

Golang调用Python
技术文章 / 2017-11-25

Python是时髦的机器学习御用开发语言,Golang是大红大紫的新时代后端开发语言。Python很适合让搞算法的写写模型,而Golang很适合提供API服务,两位同志都红的发紫,这里就介绍一下正确搅基的办法。 原理 Python提供了丰富的C-API。而C和Go又可以通过cgo无缝集成。所以,直接通过Golang调用libpython,就可以实现Go调Python的功能了。确实没啥神奇,只要会用…

pylint在项目中的使用
技术文章 / 2017-11-24

需求背景: Pylint 是一个 Python 代码分析工具,它分析 Python 代码中的错误,查找不符合代码风格标准和有潜在问题的代码。 Pylint 是一个 Python 工具,除了平常代码分析工具的作用之外,它提供了更多的功能:如检查一行代码的长度,变量名是否符合命名标准,一个声明过的接口是否被真正实现等等。 Pylint 的一个很大的好处是它的高可配置性,高可定制性,并且可以很容易写小插…

走近 Python (类比 JS )
技术文章 / 2017-11-23

Python 是一门运用很广泛的语言,自动化脚本、爬虫,甚至在深度学习领域也都有 Python 的身影。作为一名前端开发者,也了解 ES6 中的很多特性借鉴自 Python (比如默认参数、解构赋值、Decorator等),同时本文会对 Python 的一些用法与 JS 进行类比。不管是提升自己的知识广度,还是更好地迎接 AI 时代,Python 都是一门值得学习的语言。 数据类型 在 Pytho…

Python 和 Ruby 的对比
技术文章 / 2017-11-23

最近在考虑学习一门后端语言,在ruby和python直接犹豫,然后自己做了一些对比,希望能帮到有同样问题的你。 一、异同对比选择 1、Python和ruby的相同点: 都强调语法简单,都具有更一般的表达方式。python是缩进,ruby是类basic的表达。都大量减少了符号。 都是动态数据类型。都是有丰富的数据结构。 都具有C语言扩展能力,都具有可移植性,比perl的可移植性更好。也都可以作为嵌入…

《流畅的 Python 》阅读笔记
技术文章 / 2017-11-23

起步 《流畅的python》是一本适合python进阶的书, 里面介绍的基本都是高级的python用法. 对于初学python的人来说, 基础大概也就够用了, 但往往由于够用让他们忘了深入, 去精通. 我们希望全面了解这个语言的能力边界, 可能一些高级的特性并不能马上掌握使用, 因此这本书是工作之余, 还有余力的人来阅读, 我这边就将其有用, 精妙的进阶内容整理出来. 这本书有21个章节, 整理也…