Go语言中文网 为您找到相关结果 11

Alpha Go 的原理浅析(深度学习与强化学习的融合)

前言 这两天网络上被Alpha Go和李世石的围棋对决刷屏,目前Alpha Go已经2-0领先。从前年开始关注研发这套系统的DeepMind公司,一直在追终他们最新的论文。深度学习这个词随着这一事件又火了一把,可是我想说的是虽然阿尔法狗确实得益于深层神经网络的发展,但是其能超过以往的围棋AI的原因是他将深度学习和强化学习结合在一起使用,再融合传统围棋AI主要使用的蒙特卡洛树搜索方法。要知道只用深度学习的方法去解决围棋问题在几年前已经有很多人在尝试,其效果却往往还不及当前最好的围棋AI(例如:Zen,Pachi等) 去年这家公司做的最引爆世界的事情是在Arcade Learning Environment中战胜了人类专家并且在nature上也发。这个环境是为了评估各种强化学习(Reinforc...阅读全文

最强围棋程序Alpha Go 浅析

最强围棋程序Alpha Go 浅析 去年谷歌的围棋程序Alpha Go一举打败所有已知的围棋AI程序,以及以5:0的大比分打败了专业棋手Fan Hui。随后在《nature》上报到了Alpha Go 的内幕。作为一个伪的围棋爱好者和一个机器学习爱好者,看了该文章,并看了其他的分析,写下自己的心得: 围棋的智能对弈程序最早当属我国的手谈,那个时期的自动对弈程序属于经验型的。随后从国外对围棋研究后,产生了蒙特卡洛树搜索的方法应运于围棋对弈,产生了一系列的强AI,可以达到业余水准,关于蒙特卡洛树搜索可以参看《基于蒙特卡洛树搜索的计算机围棋博弈研究》,可以说对该方法进行了详细的说明,阅读也较容易,可以得到围棋AI的一些背景,制约蒙特卡洛方法更近一步的原因是:树的展开,以及搜索的深度的确定。于此同时,...阅读全文

Go 应用程序构建浅析

要理解并灵活运用一个语言,我觉得有必要了解其构建应用程序的内部机制。经过这段时间对GO的接触,个人对GO构建程序的方式挺满意:简单、直接、灵活。下面就对GO语言构建应用程序的方法进行一个浅显的分析。 构建一个GO项目,我们只需设置好工程工作目录,并在该目录下新建名为src的文件夹,然后将你的源文件放到src下就行了。为便于理解,这里给出一个简单项目的例子进行具体说明。 环境变量:GOPATH =path/to/GoPro:$GOPATH GoPro/ bin/ hello pkg/ linux_amd64/ example/ mymath.a src/ example/ mymath/ sqrt.go //package mymath hello/ test.go //package mai...阅读全文

关于Google Protocol Buffer的中文资料

最近打算写一篇关于goprotobuf的使用教程,先了解了Google Protocol Buffer相关的知识点。下面是谷歌到的不错的资料,故记录下来方便以后查找。 Google Protocol Buffer 的使用和原理:http://www.ibm.com/developerworks/cn/linux/l-cn-gpb/index.html Google Protocol Buffers浅析系列:http://www.cnblogs.com/royenhome/archive/2010/10/29/1864860.htm...阅读全文

博文 2012年12月9日 Rhino(犀牛)

如何建设一个商城网站

喜欢网上购物的朋友,会发现现在的网上存在各式各样大大小小的商城网站。而且很多人都想自己建设一个网上商城,希望能做的像淘宝,京东那样,但是对于商城网站建设会有什么难点呢? 做商城网站很多人会去参照目前最大型的商城网站门户来做,建站宝盒提醒各位建站人员,你要明白每一个商城网站都有自己的亮点或者功能。其实最重要最简单的一点就是要让用户明白你的网站,不要做一个用户都不懂得网站。这样会导致你的网站没有流量,更不要说能有交易量了。那做商城网站需要注意什么问题呢? 一、 拥有一个好的域名,让用户记住你 做网站第一步最重要的是要有一个好的域名,域名就等于是你网站的名字,如果你有一个容易记住的名字,那么用户也会记得你。一个好的域名不但能让用户记得你,还能让搜索引擎...阅读全文

怎么做一个响应式商城网站

踏入C2C、B2C、O2O的网络新时代,不管是个人,还是公司企业,都需要拥有自己的网站。拥有一个体面的网站能够提升自身的品牌实力!现如今的互联网时代,无论是什么类型的网站,响应式建站都是非常适合的。通过响应式建站能够让你的网站提高一个等次,在网站建设过程中也能省去很多繁琐的步骤。利用建站宝盒进行商城网站的建设,能够大大提升建站的效率,不必再为网站模板的选择、功能的搭配而烦恼。 下面小编为大家整理出几个国外比较优秀的商城网站: Burberry Bold & Noble Snipcart Noodlebox 上诉这些国外商城网站都是采用响应式建站的,不管是在展示还是用户浏览体验,都能让人有特别的印象! 做一个响应式商...阅读全文

Go语言数组浅析

先看一个简单的数组定义: var array [3]int 上面语句定义了变量array,这个变量是一个包含3个整数的数组类型。可以使用Go语言内置的len函数得到数组长度: package main import ( "fmt" ) func main() { var array [3]int fmt.Println(len(array)) } 执行以上程序结果: 3 需要注意的是,在Go语言中,数组的长度是数组类型的一部分,它必须是一个常量表达式,即长度的值在程序编译时是可以得到的。请看下面这个程序: package main import ( "fmt" ) func print_array(array []int) { fmt.Printf("In function, array i...阅读全文

Go语言“:=”用法浅析

Go语言中可以使用“:=”为一个新的变量完成声明以及初始化的工作,如下例所示: i := 1 等价于: var i = 1 要注意语句中没有变量类型,不是var i int = 1。 “:=”不能重新声明一个已经声明过的变量,如下例所示: package main import "fmt" func main() { var i = 1 i := 2 fmt.Println(i) } 编译结果: C:/Go\bin\go.exe run C:/Work/go_work/Hello.go # command-line-arguments .\Hello.go:8: no new variables on left side of := 错误的原因是变量被重复声明了。 但使用“:=”为多个变量赋...阅读全文

Go语言字符串浅析

在Go语言中,字符串就是一个只读(read-only)的,可以包含任意字节(byte)的切片(slice)。由于Go源码文件都是使用UTF-8编码的,所以直接在源码中输入的字符串也都是用UTF-8编码的(前提是字符串里没有byte-level escapes,即字节层面上的转义)。请看下面这个例子: package main import "fmt" func main() { s := "日志log" fmt.Println(len(s)) } 执行结果: 9 s是一个UTF-8编码的字符串,“日志”两个汉字各占3个字节,所以一共是9个字节。 再看一个例子: package main import "fmt" func main() { s:="\xFF\xFF" fmt.Println(...阅读全文

Go语言runtime.Gosched()函数浅析

Go语言runtime.Gosched()函数的官方文档如下: func Gosched func Gosched() Gosched yields the processor, allowing other goroutines to run. It does not suspend the current goroutine, so execution resumes automatically. 这个函数的作用是让当前goroutine让出CPU,好让其它的goroutine获得执行的机会。同时,当前的goroutine也会在未来的某个时间点继续运行。 请看下面这个例子(show.go): package main import ( "fmt" ) func showNumber (i...阅读全文