2012年10月19日

Several concepts in Data Mining

摘要: Data Mining tasksPredictive tasks:---Classification (which is used for discrete target variables)---Regression (which is used for continuous target variables)Descriptive tasks:---Association analysis (to discover patterns that describe strongly associated features in the data)---Cluster analysis (to 阅读全文

posted @ 2012-10-19 21:16 liangzh123 阅读(605) 评论(0) 推荐(0)

LINUX 查看硬件配置命令

摘要: 系统 # uname -a # 查看内核/操作系统/CPU信息 # head -n 1 /etc/issue # 查看操作系统版本 # cat /proc/cpuinfo # 查看CPU信息 # hostname # 查看计算机名 # lspci -tv # 列出所有PCI设备 # lsusb -tv # 列出所有USB设备 # lsmod # 列出加载的内核模块 # env # 查看环境变量资源 # free -m # 查看内存使用量和交换区使用量 # df -h # 查看各分区使用情况 # du -sh <目录名> # 查看指定目录的大小 # grep MemTot... 阅读全文

posted @ 2012-10-19 20:37 liangzh123 阅读(180) 评论(0) 推荐(0)

2012年9月20日

遗传算法

摘要: 这是个真实的故事。从前在海岸边有一群扇贝在悠哉游哉地生活繁衍着。它们自然是衣食不愁,连房子也有了着落。它们担忧的只有一件事:每隔一段时间,总有一个人来挖走它们之中的一部分。当然啦,挖回去干什么这大家都知道。但扇贝们不知道的是,这人的家族图腾是Firefox的图标,所以他总是选择那些贝壳花纹长得比较不像Firefox图标的扇贝。这种状况持续了好几十万代。大家应该也猜到扇贝们身上发生什么事情了:它们的贝壳上都印着很像Firefox图标的图案。可能有些读者会说:你这不是糊弄我们么,Firefox才有多少年历史,你就搞了个几十万代的扇贝?确有其事,但是这些扇贝不是真实的,它们在我电脑的内存里边生活。它 阅读全文

posted @ 2012-09-20 10:19 liangzh123 阅读(996) 评论(1) 推荐(0)

2012年7月3日

JVM内存分配策略

摘要: Java堆,分配对象实例所在空间,是GC的主要对象。分为新生代(Young Generation/New),老年代(Tenured Generation/Old)新生代又划分成 Eden Space, From Survivor, To Survivor对象的内存分配,就是在堆上分配(但也可能经过JIT编译后被拆散为标量类型并间接地在栈上分配),对象主要分配在新生代的Eden区上,如果启动了本地线程分配缓冲,将按线程优先在TLAB上分配。少数情况下也可能会直接分配在老年代中,分配的规则并不是百分之百固定的,其细节取决于当前使用的是哪一种垃圾收集器组合,还有虚拟机中与内存相关的参数的设置。新生代 阅读全文

posted @ 2012-07-03 19:34 liangzh123 阅读(1354) 评论(0) 推荐(0)

2012年7月2日

JVM垃圾收集器

摘要: 垃圾收集器就是收集算法的具体实现,不同的虚拟机会提供不同的垃圾收集器。并且提供参数供用户根据自己的应用特点和要求组合各个年代所使用的收集器。本文讨论的收集器基于Sun Hotspot虚拟机1.6版。 下图中展示了jdk1.6中提供的6种作用于不同年代的收集器,两个收集器之间存在连线的话就说明它们可以搭配使用。没有最好的收集器,也没有万能的收集器,只有最合适的收集器。从Serial收集器到Parallel收集器,再到CMS收集器, G1收集器,用户线程的停顿时间在不断缩短,但是仍然没有办法完全消除。1. Serial收集器单线程收集器,使用复制收集算法,收集时会暂停所有工作线程(我们将这件事情称 阅读全文

posted @ 2012-07-02 21:04 liangzh123 阅读(985) 评论(0) 推荐(1)

2012年6月30日

JVM垃圾收集算法

摘要: 1,标记-清除(Mark-Sweep):算法分为“标记”和“清除”两个阶段:首先标记出所有需要回收的对象,在标记完成后统一回收掉所有被标记的对象(如果对象在进行根搜索后发现没有与GC Roots相连接的引用链,对象将会被标记)。它是最基础的收集算法,因为后续的收集算法都是基于这种思路并对其缺点进行改进而得到的。它的主要缺点有两个:一个是效率问题,标记和清除过程的效率都不高;另外一个是空间问题,标记清除之后会产生大量不连续的内存碎片,空间碎片太多可能会导致,当程序在以后的运行过程中需要分配较大对象时无法找到足够的连续内存而不得不提前触发另一次垃圾收集动作。如下图:2,复制算法(Copying): 阅读全文

posted @ 2012-06-30 21:40 liangzh123 阅读(327) 评论(0) 推荐(0)

JVM判断对象存活的算法

摘要: 引用计数算法(reference counting):垃圾收集的早期策略。一个对象被创建时,为该对象分配一个引用计数器。当有地方引用它时,计数加1。当一个对象的引用超过了生存期或者被设置一个新的值时,引用计数减1。任何引用计数为0的对象可以被当作垃圾收集。当一个对象被垃圾收集的时候,它引用的任何对象计数值减1。在这种方法中,一个对象被垃圾收集后可能导致后续其他对象的垃圾收集行动。此算法实现简单,判断效率高;但很难解决对象之间的相互循环引用,如,A对象有一个对B对象的引用,B对象又反过来引用A对象,除此之外这两个对象无任何引用,但引用计数都不会为0,无法回收它们。(因此JVM未使用此算法)。另外 阅读全文

posted @ 2012-06-30 20:16 liangzh123 阅读(424) 评论(0) 推荐(0)

JVM运行时数据区

摘要: 1,程序计数器(Program Counter Register)是一块较小的内存空间,在线程启动时创建,线程私有。可以看做是当前线程所执行的字节码的行号指示器。如果线程正在执行的是一个Java方法,这个计数器记录的是正在执行的虚拟机字节码指令的地址;如果正在执行的是Natvie方法,这个计数器值则为空(Undefined)。此内存区域是唯一一个在Java虚拟机规范中没有规定任何OutOfMemoryError情况的区域。2,虚拟机栈(Stack):线程私有,生命周期与线程相同;虚拟机栈描述的是Java方法执行的内存模型:每个方法被执行的时候都会同时创建一个栈帧(Stack Frame)用于存 阅读全文

posted @ 2012-06-30 16:10 liangzh123 阅读(340) 评论(0) 推荐(0)

2012年6月28日

MapReduce作业运行机制

摘要: 一,作业的提交Job.waitForCompletion(true):1)此方法调用submit(). 在Submit()方法里面连接JobTracker,即生成一个内部JobSummitter(实际上是new JobClient(),在new JobClient()里面生成一个JobSubmissionProtocol接口(JobTracker实现了此接口)对象jobSubmitClient(是它连接或对应着JobTracker)),在Submit()方法里面也调用JobClient.submitJobInternal(conf)方法返回一个RunningJob(步骤1);2)参数true说 阅读全文

posted @ 2012-06-28 20:50 liangzh123 阅读(894) 评论(0) 推荐(0)

2012年6月26日

svn简单使用

摘要: 库管理员的工作:从Tigris.org下载svn服务器并安装;完成后在命令行执行svn help会出现:执行svnadmin help出现:建库:执行svnadmin create svnrepo会在当前目录下产生文件夹svnrepo,它就是新建的svn库。对库设置权限:把svnrepo/conf/svnserve.conf中的#password-db = passwd(指定从哪查找可访问库的用户)注释去掉,再svnrepo/conf/passwd里面设置用户名和密码。启动服务器:svnserve –d –r svnrepo //d表示deamon,后台运行;r表示root身份。在eclips 阅读全文

posted @ 2012-06-26 20:54 liangzh123 阅读(333) 评论(0) 推荐(0)

导航