This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class sexIdentifier { | |
public static final String HOMOSEXUAL = "homo"; | |
public static final String STRAIGHT = "straight"; | |
public static void main(String args[]){ | |
public String identifyGender(String yourGender, String belovedGender){ | |
if(yourGender.equals(belovedGender)){ | |
return HOMOSEXUAL; | |
}else{ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
J.U.C并发框架(1) | |
翻译:书卷多情 | |
在J2SE1.5中,java.util.concurrent包下的大部分同步工具(锁、阻塞等)以AbstractQueuedSynchronizer类为基础来构建。这个框架提供了一些常用机制用于自动管理并发状态、阻塞及非阻塞线程和队列。本论文描述了该框架的根源、设计实现、用法及性能。 | |
关键字:synchronized, java | |
1、介绍 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
JVM底层又是如何实现synchronized的? | |
目前在Java中存在两种锁机制:synchronized和Lock,Lock接口及其实现类是JDK5增加的内容,其作者是大名鼎鼎的并发专家Doug Lea。本文并不比较synchronized与Lock孰优孰劣,只是介绍二者的实现原理。 | |
数据同步需要依赖锁,那锁的同步又依赖谁?synchronized给出的答案是在软件层面依赖JVM,而Lock给出的方案是在硬件层面依赖特殊的CPU指令,大家可能会进一步追问:JVM底层又是如何实现synchronized的? | |
本文所指说的JVM是指Hotspot的6u23版本,下面首先介绍synchronized的实现: | |
synrhronized关键字简洁、清晰、语义明确,因此即使有了Lock接口,使用的还是非常广泛。其应用层的语义是可以把任何一个非null对象 作为"锁",当synchronized作用在方法上时,锁住的便是对象实例(this);当作用在静态方法时锁住的便是对象对应的Class实例,因为 Class数据存在于永久带,因此静态方法锁相当于该类的一个全局锁;当synchronized作用于某一个对象实例时,锁住的便是对应的代码块。在 HotSpot JVM实现中,锁有个专门的名字:对象监视器。 | |
1. 线程状态及状态转换 | |
当多个线程同时请求某个对象监视器时,对象监视器会设置几种状态用来区分请求的线程: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
3.1、摘要 | |
在前面两篇文章中,分别介绍和讨论了朴素贝叶斯分类与贝叶斯网络两种分类算法。这两种算法都以贝叶斯定理为基础,可以对分类及决策问题进行概率推断。在这一篇文章中,将讨论另一种被广泛使用的分类算法——决策树(decision tree)。相比贝叶斯算法,决策树的优势在于构造过程不需要任何领域知识或参数设置,因此在实际应用中,对于探测式的知识发现,决策树更加适用。 | |
3.2、决策树引导 | |
通俗来说,决策树分类的思想类似于找对象。现想象一个女孩的母亲要给这个女孩介绍男朋友,于是有了下面的对话: | |
女儿:多大年纪了? |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
1.1、摘要 | |
贝叶斯分类是一类分类算法的总称,这类算法均以贝叶斯定理为基础,故统称为贝叶斯分类。本文作为分类算法的第一篇,将首先介绍分类问题,对分类问题进行一个正式的定义。然后,介绍贝叶斯分类算法的基础——贝叶斯定理。最后,通过实例讨论贝叶斯分类中最简单的一种:朴素贝叶斯分类。 | |
1.2、分类问题综述 | |
对于分类问题,其实谁都不会陌生,说我们每个人每天都在执行分类操作一点都不夸张,只是我们没有意识到罢了。例如,当你看到一个陌生人,你的脑子下意识判断TA是男是女;你可能经常会走在路上对身旁的朋友说“这个人一看就很有钱、那边有个非主流”之类的话,其实这就是一种分类操作。 | |
从数学角度来说,分类问题可做如下定义: | |
已知集合:和,确定映射规则,使得任意有且仅有一个使得成立。(不考虑模糊数学里的模糊集情况) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
原文地址: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运算 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
俗话说,天下武功,唯快不破。也就是说要练成天下高手的话,出招速度一定要快,这样才能在江湖上立足,不至于掉了脑袋。而程序员要在IT界混出个名堂,也要有高效的工作效率才行。IT行业时时刻刻都产生着新知识、新技术,要想跟上变革肯定要有几把刷子。 | |
而我本人很喜欢各种各样的方式来提高自己的工作效率,可以分享给大家一些经验。 | |
1、键盘功底要扎实。敲键盘时要使用标准指法。可能你认为这是程序员的基本功,可是我发现其实很多程序员都做不到这点。看着他们敲代码时那笨拙的指法我就心急。其实炼成标准指法不难,相当年我还是一指禅,打字极慢,痛定思定,在一周内我打字必用标准指法,再别扭也要坚持,一周后就适应了标准指法了。现在不说运指如飞也算是略有小成。练习指法和键盘速度可以给大家推荐一些网站:http://10fastfingers.com/typing-test/english,这个就是练习标准指法的,我可以轻松上60 WPM(每分钟60单词),有个外国同事可以达到130以上,那才叫恐怖。http://typing.io/lessons,专门供程序员练习敲代码的网站,融合了各种括号和标点,难度有点大。 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
穷人的恶性循环: | |
穷 -> 需要努力工作 -> 没有时间去交际 -> 人脉越来越狭窄 -> 工作越来越难做 -> 越需要努力去工作 -> 越没有时间去发展人脉 -> 越穷 | |
富人的良性循环: | |
有钱 -> 工作很轻松 -> 很多时间都在交际上 -> 人脉越来越广 -> 工作越来越不用努力 -> 越有更多的时间精力去发展人脉 -> 越富有 | |
程序员的恶性循环: | |
加班 -> 没空学习 -> 老是写同等水平代码 -> 无法提升代码质量 -> 老是出BUG -> 老是需要修改 -> 加班 -> .... |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
今天是我非常郁闷的一天,心情很差。today is my blue day. im not in mood to do anything. i know everybody hate aggressive boys. | |
OlderNewer