最近更新

[论文阅读 ] New Type Of DNN Learning 4 SR & Related Application : An] 2013-09-26

历史因素

最近神经网络复兴的原因

  • 深度网络相比于浅层网络更加Powerful
  • 初始化权值更加合理,使用更快的硬件让训练DNN更迅速
  • 使用大量的输出单元极大地提升了识别性能

最近DNN的成功,主要归功于三个因素:

  • 计算机更强大
  • 训练数据更多
  • 软件工程

开始DNN的突破在于使用一个生成式的,层次化的训练方法,初始化深度神经网络的权值,而不是初始时的随机权值。

首次证明DNN比GMM优秀的例子: 在NIPS-2009 Workshop上,有一个使用DNN的算法取得了很好的效果。他使用了8个隐藏层的网络,并且每层有数千个(a few thousand)隐藏神经元,层与层之间完全连接。

DNN的特点

使用RadASM在Windows下汇编环境配置 2013-09-16

这篇日志介绍了如何在Windows下使用RadASM进行汇编开发,并配置Irvine的库。分为如下几个步骤: * 安装汇编语言的集成开发环境RadASM * 下载Irvine的开发库 * 新建项目,配置Irvine库 * 运行Hello World

安装汇编语言的集成开发环境RadASM

RadASM可以从这里下载。下载完成后,是一个安装包,安装过程没有什么注意事项,正常的安装程序就可以了。(也许会报病毒,我用Avast检测报毒。也可以从官方网站下载安装)

安装完毕后,可以找到程序RadASM

下载Irvine的开发库

可以在Kip Irvine的官方网站下载它书籍的配套资料。地址在这里。大家可以下载vs2012的example就可以了。(八卦一下,下面那个Curtis Wong的Linux版本的Irvine32库,是天津大学咱的大学长黄耀龙写的。^V^)

下载完了是一个zip包。解压缩完毕了后,提取出Irvine32.inc, Irvine32.lib, Kernel32.lib, SmallWin.inc, User32.lib, VirtualKey.inc到某一个目录中

Soft Maximun 2013-09-11

翻译自这里

在程序中,你总有想要求两个数字的最大值的时候。简单的函数是:

f(x,y) = max(x,y)

但是这个简单函数对于复杂问题并不很有效。因为他有一个尖拐角(不连续)。有些时候,你需要一个其他方案去抹平这个Max函数的拐角。一个可选的函数式软Maximum函数(Soft Max)。这篇博客会回答下面几个问题。

  • 什么是软最大值函数?为什么这么叫它
  • 他和最大值函数有什么关系?
  • 为什么最大值函数有一个尖拐角
  • 软最大值函数如何抹平这些拐角的
  • 软最大值函数的优势是什么?
  • 你怎么控制这个”软度”

下文中,我会叫原始的最大值函数硬最大值函数,这样可以和软最大值函数做很好的比较。

软最大值函数,是具有两个自变量的函数,如下:

AIMA读书笔记1 2013-08-19

maven使用.03.普通项目和多模块项目 2013-07-14

上两个POST将概念讲述的非常完备。并在第一篇POST中,建立了一个Hello World程序,那么这篇日志会在第一篇的基础上,实际的写一些代码,并通过maven进行测试。

编写一个简单地类

使用你喜欢的IDE打开之前新建的Hello world程序,在src/main/java目录下,添加对应的包和类。即可向程序中添加一个类。例如,添加如下的类

package me.reyoung.mvntest;

public class SimpleAdder {
    public static int add(int a,int b){
        return a+b;
    }
}

并在src/test/java目录下,添加对应的测试文件。例如添加如下的测试类:

package me.reyoung.mvntest;

import junit.framework.TestCase;

maven使用.02.一些概念 2013-07-12

在上一篇POST中,简要的介绍了一下maven的特点,优势,安装。并建立了一个简单地Hello world工程。这一篇POST中,将主要会介绍一下Maven的一些约定。

pom.xml文件

Maven的项目文件是一个XML文件,叫做pom.xml,取Project Object Model的意思。对于项目的配置,都是修改POM.xml完成的。

一个简单地pom配置文件如下:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>me.reyoung</groupId>
  <artifactId>helloworld</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>helloworld</name>
  <url>http://maven.apache.org</url>

maven使用.01.Hello World 2013-07-11

要说Java世界有什么东西是我最为留恋的;在写其他语言程序的时候,我最为想要的东西,那非maven莫属。

什么是Maven?

Maven能做什么?

Maven是一个针对Java的自动构建工具。所谓自动构建,就是在命令行里面敲一条命令,而替代程序员手动去编译每一个java文件,在打成jar包的过程。这听起来没什么,尤其是对于本来使用IDE的程序员们来说。但是Maven还可以做到:

  • 依赖的引入。 不用程序员去手动的下载第三方的jar,只需要修改配置文件,便可以引入jar包。
  • 良好的测试集成。 maven对于”如果想要在打包前进行测试,如果测试不通过不打包”这种需求很容易做到。
  • 良好子项目管理。 maven对于项目来说,可以有一个大项目包括N个子项目构成。而不是像eclipse,只可以有一个根项目。
  • 良好的持续集成。 使用maven,对于daily build的支持,对于每次提交的代码的检查,简直是易如反掌。

总之,如果你原来只是使用过eclipse进行java开发,maven绝对值得你去接触。而且事实上,如此好的工具,也在java世界里用的非常广。

类似的工具

类似于Maven的工具也不少,相较于maven有这样和那样的不同,仅就我知道的java世界的自动构建工具,列举一下:

Robocup3D仿真软件Simspark_Rcssserver的windows安装 2013-06-30

Simspark和Rcssserver是Robocup3D仿真比赛的仿真服务器。这两个套件是跨平台的。所以,在windows下也可以安装。官方给出了二进制的安装包,但是在安装过程中,可能有一些问题。摘录如下。

下载安装二进制安装包

simspark项目托管在sf.net上(吐槽,当时还木有github,google code之类的呢。。)。其中,simspark的安装包可以在这里找到,而rcssserver的安装包可以在这里找到。

分别下载两个安装包,将对应软件装到随意的位置里。(例如,simspark装到D:\Simspark\, Rcssserver装到D:\Rcssserver)

添加环境变量

这时候,装好了以后,尝试运行rcssserver中的bin目录下的rcsoccersim3d.cmd,是会报错的。用记事本打开rcsoccersim3d.cmd,可以看到如下内容:

start cmd /c "%RCSSSERVER3D_DIR%\bin\rcssserver3d.cmd"
start /b /wait cmd /c "%RCSSSERVER3D_DIR%\bin\rcssmonitor3d.cmd"

可以看到这个cmd实际上是启动了两个其他的cmd,那么分别打开剩下两个cmd看看,比如看一下rcssserver3d.cmd

PATH %PATH%;%SPARK_DIR%\lib\simspark;%SPARK_DIR%\lib\thirdparty;%RCSSSERVER3D_DIR%\lib\rcssserver3d
cd "%RCSSSERVER3D_DIR%\bin\"
rcssserver3d.exe %1 %2 %3 %4

IBM考试笔记--CLAM01 2013-04-06

= CLAM01 – 使用IBM软件进行协作应用生命周期管理 =

== 学习目标 ==

  • 定义什么是协作生命周期管理
  • 解释协作生命周期管理的场景
  • 解释IBM Rational工具是怎么实现CLM的 ** Doors ** RTC ** RQM

== 软件交付的挑战 ==

=== 仅仅有37%的涉众满意开发速度,42%的人满意质量。50%外包项目表现不佳。 ===

造成这个问题,是由于三个壁垒: * Geographic * Organizational * Infrastructure

机器学习笔记-03-决策树 2013-04-03

= 决策树 = == 历史 ==

  • 1966年,CLS算法,By E.B. Hunt 离散的决策树算法。决策树算法的源起。
  • 1984年,CART算法,By Breiman 连续的决策树算法。解决了回归问题。 * !Need To READ! *

  • 1976年 Hyafil证明二分最优决策树是NPC的

  • 1986年, ID3, Quinlian. 将人工智能从逻辑(代数) 向 统计学,信息论,概率论发展。

  • 1997年, C5.0

  • 2001年, Random Forest, By Breiman

== 概述 ==

=== 决策树包括 ===

  • 内部节点 –> 决策函数
  • 叶节点 –> 分类结果