Skip to content

Instantly share code, notes, and snippets.

View huowa222's full-sized avatar
💭
Just leave me alone!

Howard huowa222

💭
Just leave me alone!
  • Self employed
  • Beijing
View GitHub Profile
@huowa222
huowa222 / gist:7cca2022a6dbfbe49d75
Created June 11, 2014 16:47
how to crack the captcha
简单验证码识别程序(源码)
简单验证码是指验证码图片里的字符,固定不变,或者变化很小的验证码,比如:字符上会有一些感扰点感扰线等情况,或者只有少数几种字体变化和字体大小变化。
这里给出源代码都是非常简单的源代码,学过《C程序设计》的都可以看懂,不会超出书本范围,而且不使用指针,这样VB,Delphi,JAVA 等语言都可以照此写出相应的源代码。
验证码识别可以分为三个大的步骤:预处理,分割,识别。
1. 预处理
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Maintainer: amix the lucky stiff
" http://amix.dk - amix@amix.dk
"
" Version: 3.6 - 25/08/10 14:40:30
"
" Blog_post:
" http://amix.dk/blog/post/19486#The-ultimate-vim-configuration-vimrc
" Syntax_highlighted:
@huowa222
huowa222 / gist:876646b2ce339386d88b
Created May 4, 2014 15:39
detect the nude pic
在这份教程中,我们将会学习到如何组织用户通过PHP上传成人照片或者裸照.
示例 下载
我在phpclasses.org上面偶然发现一个很有用的,由Bakr Alsharif开发的可以帮助开发者基于皮肤像素点来检测图片裸照的类文件.
@huowa222
huowa222 / gist:9804335
Created March 27, 2014 10:12
今天是我非常郁闷的一天。today is my blue day. im in very bad mood.
今天是我非常郁闷的一天,心情很差。today is my blue day. im not in mood to do anything. i know everybody hate aggressive boys.
穷人的恶性循环:
穷 -> 需要努力工作 -> 没有时间去交际 -> 人脉越来越狭窄 -> 工作越来越难做 -> 越需要努力去工作 -> 越没有时间去发展人脉 -> 越穷
富人的良性循环:
有钱 -> 工作很轻松 -> 很多时间都在交际上 -> 人脉越来越广 -> 工作越来越不用努力 -> 越有更多的时间精力去发展人脉 -> 越富有
程序员的恶性循环:
加班 -> 没空学习 -> 老是写同等水平代码 -> 无法提升代码质量 -> 老是出BUG -> 老是需要修改 -> 加班 -> ....
@huowa222
huowa222 / gist:9668681
Created March 20, 2014 17:01
programmer produtivity
俗话说,天下武功,唯快不破。也就是说要练成天下高手的话,出招速度一定要快,这样才能在江湖上立足,不至于掉了脑袋。而程序员要在IT界混出个名堂,也要有高效的工作效率才行。IT行业时时刻刻都产生着新知识、新技术,要想跟上变革肯定要有几把刷子。
而我本人很喜欢各种各样的方式来提高自己的工作效率,可以分享给大家一些经验。
1、键盘功底要扎实。敲键盘时要使用标准指法。可能你认为这是程序员的基本功,可是我发现其实很多程序员都做不到这点。看着他们敲代码时那笨拙的指法我就心急。其实炼成标准指法不难,相当年我还是一指禅,打字极慢,痛定思定,在一周内我打字必用标准指法,再别扭也要坚持,一周后就适应了标准指法了。现在不说运指如飞也算是略有小成。练习指法和键盘速度可以给大家推荐一些网站:http://10fastfingers.com/typing-test/english,这个就是练习标准指法的,我可以轻松上60 WPM(每分钟60单词),有个外国同事可以达到130以上,那才叫恐怖。http://typing.io/lessons,专门供程序员练习敲代码的网站,融合了各种括号和标点,难度有点大。
@huowa222
huowa222 / gist:9640856
Created March 19, 2014 12:40
recommendation opensource list
原文地址:http://in.sdo.com/?p=1707
收集和整理了目前互联网上能找到的开源推荐系统,并附上了个人的一些简单点评(未必全面准确),这个列表是目前为止比较全面的了,希望对大家了解掌握推荐系统有帮助(文/陈运文)
SVDFeature
由上海交大的同学开发,采用C++语言,代码质量很高。去年我们参加KDD竞赛时用过,很好很方便,而且出自咱们国人之手,所以置顶推荐!
项目地址:
http://svdfeature.apexlab.org/wiki/Main_Page
SVDFeature包含一个很灵活的Matrix Factorization推荐框架,能方便的实现SVD、SVD++等方法, 是单模型推荐算法中精度最高的一种。SVDFeature代码精炼,可以用相对较少的内存实现较大规模的单机版矩阵分解运算。
另外含有Logistic regression的model,可以很方便的用来进行ensemble运算
@huowa222
huowa222 / gist:9640835
Created March 19, 2014 12:39
similarity caculation Mahout Apache OpenSource
Apache Mahout 是 ApacheSoftware Foundation (ASF) 旗下的一个开源项目,提供一些可扩展的机器学习领域经典算法的实现,旨在帮助开发人员更加方便快捷地创建智能应用程序,并且,在 Mahout 的最近版本中还加入了对Apache Hadoop 的支持,使这些算法可以更高效的运行在云计算环境中。
在现实中广泛使用的推荐系统一般都是基于协同过滤算法的,一般分为基于用户(user)的协同过滤算法和基于项目(item)的协同过滤算法,这类算法通常都需要计算user和user,item和item之间的相似度,对于不同的数据量和不同类型的数据源,都需要不同的相似度计算方法来提高推荐性能和提高推荐的准确度,幸好在mahout中提供了大量的计算相似度的组件,这些组件实现了一些不同的相似度计算方法:
如图1:基于user的相似度计算
1.Pearson correlation-based similarity(皮尔森用户协同推荐算法)(一般不建议使用)
(PearsonCorrelationSimilarity) 根据用户对于物品的喜好分数进行用户的打分进行推荐,用户之间的相似度从-1~1
@huowa222
huowa222 / gist:9640781
Created March 19, 2014 12:36
classification algorithm Naive Bayesian classification
1.1、摘要
贝叶斯分类是一类分类算法的总称,这类算法均以贝叶斯定理为基础,故统称为贝叶斯分类。本文作为分类算法的第一篇,将首先介绍分类问题,对分类问题进行一个正式的定义。然后,介绍贝叶斯分类算法的基础——贝叶斯定理。最后,通过实例讨论贝叶斯分类中最简单的一种:朴素贝叶斯分类。
1.2、分类问题综述
对于分类问题,其实谁都不会陌生,说我们每个人每天都在执行分类操作一点都不夸张,只是我们没有意识到罢了。例如,当你看到一个陌生人,你的脑子下意识判断TA是男是女;你可能经常会走在路上对身旁的朋友说“这个人一看就很有钱、那边有个非主流”之类的话,其实这就是一种分类操作。
从数学角度来说,分类问题可做如下定义:
已知集合:和,确定映射规则,使得任意有且仅有一个使得成立。(不考虑模糊数学里的模糊集情况)
@huowa222
huowa222 / gist:9640745
Created March 19, 2014 12:34
classification algorithm : disicion tree
3.1、摘要
在前面两篇文章中,分别介绍和讨论了朴素贝叶斯分类与贝叶斯网络两种分类算法。这两种算法都以贝叶斯定理为基础,可以对分类及决策问题进行概率推断。在这一篇文章中,将讨论另一种被广泛使用的分类算法——决策树(decision tree)。相比贝叶斯算法,决策树的优势在于构造过程不需要任何领域知识或参数设置,因此在实际应用中,对于探测式的知识发现,决策树更加适用。
3.2、决策树引导
通俗来说,决策树分类的思想类似于找对象。现想象一个女孩的母亲要给这个女孩介绍男朋友,于是有了下面的对话:
女儿:多大年纪了?