0.darkforest说明

darkforest是facebook田渊栋博士开发的深度学习围棋程序,2016的uec cup得了第二名(http://jsb.cs.uec.ac.jp/~igo/eng/)

1.docker说明
docker成立于2013.3,到2015.4公司估值10亿美金,github star进入了前十。vmware和微软成立了专门的部门支持docker,国外FLAG,国内BAT等公司都已全线跟进。

到https://hub.docker.com/explore/搜索cuda,发现下载最多的是nvidia/cuda,以下以这个docker为基础。

《Docker基础与实战》这本书不错,棒子写的,通俗易懂。亚马逊上其它的docker书籍也很多。

2.host安装驱动
./NVIDIA-Linux-x86_64-375.26.run      这是nvidia于2016.12.14发布驱动

上面的图是我的gtx1060驱动查询信息,host只需要驱动,剩下的都在docker容器中。

如果nvidia-smi运行不正常,后面的再继续没有意义。

3.安装nvidia-docker
下载地址:https://github.com/NVIDIA/nvidia-docker
dpkg -i nvidia-docker_1.0.0.rc.3-1_amd64.deb
如果不用nvidia-docker而直接用docker,容器内的nvidia-smi无法运行

4.构建容器,或者在容器中手动运行linux命令

容器脚本已上传到:https://github.com/wjx0912/dockerfile,稍后会推送到hub.docker并create auto-build

这个脚本大部分是抄袭nvidia,只有最后几行是自己写的:)

FROM nvidia/cuda:8.0-devel
LABEL maintainer "yongjian <weiqi5@qq.com>" ADD apt/sources.list /etc/apt/sources.list RUN apt-get update
RUN apt-get install -y curl
RUN apt-get install -y git
RUN rm -rf /var/lib/apt/lists/* ENV CUDNN_VERSION 5
LABEL com.nvidia.cudnn.version="5" RUN CUDNN_DOWNLOAD_SUM=a87cb2df2e5e7cc0a05e266734e679ee1a2fadad6f06af82a76ed81a23b102c8 && \
curl -fsSL http://developer.download.nvidia.com/compute/redist/cudnn/v5.1/cudnn-8.0-linux-x64-v5.1.tgz -O && \
echo "$CUDNN_DOWNLOAD_SUM cudnn-8.0-linux-x64-v5.1.tgz" | sha256sum -c --strict - && \
tar -xzf cudnn-8.0-linux-x64-v5.1.tgz -C /usr/local && \
rm cudnn-8.0-linux-x64-v5.1.tgz && \
ldconfig #ADD cudnn-8.0-linux-x64-v5.1.tgz /usr/local
#RUN ldconfig RUN git clone https://github.com/torch/distro.git ~/torch --recursive
RUN cd ~/torch && bash install-deps
RUN cd ~/torch && ./install.sh RUN luarocks install class
RUN luarocks install image
RUN luarocks install tds
RUN luarocks install cudnn RUN git clone https://github.com/facebookresearch/darkforestGo.git ~/darforest --recursive
RUN cd ~/darforest && sh ./compile.sh RUN echo "for test nvidia driver, please run command: nvidia-smi"
RUN echo "for test cuda/cudnn/torch, please run command: th -lcutorch -e 'cutorch.test()'"

docker build --tag cuda_torch:0.1 .

5.下载model到darkforest文件夹

在dropbox里面,已转到百度云盘:链接:http://pan.baidu.com/s/1jIbl3gy 密码:qftu

6.运行docker

nvidia-docker run -it -v /data:/data --name cuda_torch cuda_torch:0.1 /bin/bash

如果想再开一个终端:

nvidia-docker exec -it cuda_torch /bin/bash

7.docker中运行darkforest

server:

sh cnn_evaluator.sh 1 /data/local/go

client:

th cnnPlayerMCTSV2.lua --use_formal_params --num_gpu 1 --time_limit 10

然后

  • clear_board to clear the board
  • genmove b to genmove the black move.
  • play w Q4 to play a move at Q4 for specific color.
  • quit to quit.

8.最后截个图嘚瑟一下

 
===================================================
在hub.docker.com发布了一个image,拆箱即用,一键安装:
cuda, cudnn, torch, darkforest (版本都是2017.1最新),只需要一条指令:
docker pull wjx0912/cuda_torch
 
 
 

facebook darkforest围棋ai测试的更多相关文章

  1. 为何谷歌围棋AI AlphaGo可能会把李世石击溃

    /* 版权声明:可以随意转载,转载时请标明文章原始出处和作者信息 .*/ author: 张俊林 谷歌DeepMind开发的人工智能围棋程序AlphaGo以5:0的压倒性优势击败了欧洲围棋冠军.专业二 ...

  2. 【AI测试】也许这有你想知道的人工智能 (AI) 测试--第二篇

    概述此为人工智能 (AI) 测试第二篇 第一篇主要介绍了 人工智能测试.测试什么.测试数据等.第二篇主要介绍测试用例和测试报告.之后的文章可能具体介绍如何开展各项测试,以及具体项目举例如何测试.测试用 ...

  3. AI测试——旅程的终点

    在2019年6月,我产生了一个想法,即人工智能探索测试AIET(Artificial intelligence exploration test),大概用了一周时间来思考怎么把人工智能应用到测试领域, ...

  4. 【AI测试】人工智能 (AI) 测试--第二篇

    测试用例 人工智能 (AI) 测试 或者说是 算法测试,主要做的有三件事. 收集测试数据 思考需要什么样的测试数据,测试数据的标注 跑测试数据 编写测试脚本批量运行 查看数据结果 统计正确和错误的个数 ...

  5. [转]FaceBook ATC 弱网测试工具环境搭建

    工具简介 ATC是FaceBook开源的移动网络测试工具Augmented Traffic Control(ATC),能够方便的让我们模拟各种网络环境进行测试. ATC有两个最吸引人的特点: 在手机上 ...

  6. 【AI测试】也许这有你想知道的人工智能 (AI) 测试--开篇

    人工智能测试 什么是人工智能,人工智能是怎么测试的.可能是大家一开始最想了解的. 大家看图中关于人工智能的定义.通俗点来说呢,就是 让机器实现原来只有人类才能完成的任务:比如看懂照片,听懂说话,思考等 ...

  7. 【AI测试】人工智能 (AI) 测试--开篇

    人工智能测试 什么是人工智能,人工智能是怎么测试的.可能是大家一开始最想了解的.大家看图中关于人工智能的定义.通俗点来说呢,就是 让机器实现原来只有人类才能完成的任务:比如看懂照片,听懂说话,思考等等 ...

  8. facebook页面种简单测试js调用flash开放的js接口的方法

    无意间折腾出来的,此方法很triky,但是很简单有效. 背景说明: facebook种内嵌的iframe无法直接访问. 解决方法: chrome浏览器为例 1.右键查看iframe源代码,此时进入if ...

  9. 想做AI测试,需要学习哪些数学知识?

    摘自知乎的回答 作者:者也 以上是个人读研以来感受用得最多的数学基础课,挂一漏万,大侠请补充指正 高等数学是基础中的基础,研究生以上级别的一切理工科都需要这个打底,数据挖掘.人工智能.模式识别此类跟数 ...

随机推荐

  1. sqlite的常用语法

    sqllite 增删改查创建表的语法 创建表db.execSQL("create table user(_id integer primary key autoincrement,numbe ...

  2. c# txt文件的读写

    在公司实习,任务不太重,总结一下c#关于txt文件的读写,以便以后有用到的时候可以查看一下.如果有写得不完整的地方还请补充 说明:本人C#水平可能初级都谈不上,高手轻喷,参考:http://www.c ...

  3. display:none与visibility:hidden区别

    display:none与visibility:hidden有一个共同的作用是隐藏要显示的内容isplay:none 隐藏,但是不占空间 “看不见摸不到” 加载 display:none 隐藏,但是不 ...

  4. 安装PLSQL,登录报“无法解析指定的连接标识符的错误”

    安装PLSQL,本地不需要安装oracle服务器,但要安装oracle客户端. 一.安装客户端需要配置服务命名,tnsnames.oRA文件和监听(因为我开始没有配置监听,所以一直报无法解析制定的连接 ...

  5. jquery判断div是否隐藏实例

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. 指针数组 null与空字符串

    指针数组常适用于指向若干字符串,这样使字符串处理更加灵活方便. 在c++中,null表示:对象为空,它是对指针而言的.而""表示:值为空,它是对字符串而言的.

  7. 【LeetCode OJ】Symmetric Tree

    Problem Link: https://oj.leetcode.com/problems/symmetric-tree/ To solve the problem, we can traverse ...

  8. codeforces 732D(二分)

    题目链接:http://codeforces.com/contest/732/problem/D 题意:有m门需要过的课程,n天的时间可以选择复习.考试(如果的d[i]为0则只能复习),一门课至少要复 ...

  9. 彻底弄懂Activity四大启动模式

    最近有几位朋友给我留言,让我谈一下对Activity启动模式的理解.我觉得对某个知识点的理解必须要动手操作才能印象深刻,所以今天写一篇博文,结合案例理解Activity启动模式.由于之前看过" ...

  10. 爆破一个二元函数加密的cm

    系统 : Windows xp 程序 : cztria~1 程序下载地址 :http://pan.baidu.com/s/1slUwmVr 要求 : 爆破 使用工具 : OD 可在看雪论坛中查找关于此 ...