assignment1-环境配置与代码

cs231n作业的网站(注意这个网站上不仅有三次的作业,还有对应python numpy的指导和jupyter notebook的指导等等:点击打开链接

在看了cs231n的课程之后,在完成assignment1的时候出现了很多问题,特别是在服务器上配置使用jupyter notebook。

作业的要求及配置及下载网站:点击打开链接

一、环境配置

(1)输入命令:ssh node18@192.168.137.118

(2)进入~目录

(3)运行./deploy_container_with_gpu.sh,但是需要注意的是你单独运行这个就没有给你的docker进行端口的映射,在你使用jupyter notebook的时候外部是访问不到的,所以需要你进行 端口映射,注意这里个人情况不一样,因为我们运行这个脚本就可以了,但是你可以需要docker run命令进行映射。完成输入命令:

./deploy_container_with_gpu.sh -p 3065:8080。我们这里随便给宿主机一个端口映射到container的端口之上,但由于jupyter的默认端口貌似是8888,你这里可以修改port 3065:8888,当然了我已经这样了,我就不改了,最后在运行jupyter notebook的时候指定端口就行。

(4)接着可能就是输入你的镜像和要求你输入你的container的名字,你起一个记住就行比如这里是sss-tf,这里之后每次登录要用。

(5)docker start sss-tf

(6)docker attach sss-tf

(7)cd /data2

(8)mkdir 你的名字的目录

(9)cd 你的目录

(10)安装anaconda3,去官网下载一个对应自己版本的执行脚本sh

(11)之后你退出,到你的本机进行挂载网络盘符在执行ssh node04@192.168.137.104

(12)sudo chown -R node04:node04 /data2/你的文件夹

(13)回到你自己的电脑,执行

sudo mkdir /data2
sudo mount -t cifs -o username=node04,password=123456 //192.168.137.104/data2 /data2

(14)最后下载好了之后肯定是下载到了你的Downloads下面。那么你在你的本机,执行cd Downloads

 

(15)将你下载好的,你执行ls看看应该会有一个sh文件,我的就是anaconda3-5.1.0-Linux-x86_64.sh,这个都是对应你的电脑的!

(16)在downloads目录下执行命令,cp -i anaconda3-5.1.0-Linux-x86_64.sh /data2/sss/这样之后你再进去服务器就会发现你的sh出现在了里面,之后在执行这个脚本就可以了。

(17)bash Anaconda3-5.1.0-Linux-x86_64.sh

(18)按照提示来就行,之后修改环境变量。自己手动在.bashrc文件中添加export PATH="/opt/anaconda3/bin:$PATH",然后再在命令行中输入source ~/.bashrc,

注意在每台电脑上是不一样的,你看他给出的提示信息,像我在自己电脑上的~/.bashrc就是不同的,export PATH=/home/syq/anaconda3/bin:$PATH

(19)之后来到你的服务器,你登录之后在你自己的目录下,你输入jupyter notebook --allow-root --port 8080 --ip 0.0.0.0 (这里需要指定端口,会出现token,第一次复制下来要用) tensorboard --port 8080 --ip 0.0.0.0 --logdi
r="/data3/pointcloud_registration/dcp-master/checkpoints/dcp_v1"

(20)在你本地的浏览器打开192.168.137.118:3065,第一次登录可能需要token,你就把之前的你terminal里面的token复制下来就行

 

以上就是环境配置的问题了,之前我就只会登录服务器,也不会配置docker端口映射,只有你进行了docker的端口映射,才能够实现网络的访问,但是多数网上的教程只是教会了你如何配置jupyter的配置文件,其实本质输入那行jupyter notebook的命令是一样的。但是你没有做docker的端口映射都是白搭!!!

下面是一张完整的端口示意图:

补充:在此基础上配置tensorflow:

之前我们安装好了anaconda3,现在我们需要在此基础上安装tensorflow,首先

输入命令:conda create -n tensorflow python=3.6

接着source activate tensorflow

接着pip install tensorflow-gpu==1.2,我们这里服务器最高只能安装1.2版本(那对于你自己的电脑的话,我没办法安装gpu版本,只能按照cpu版本,那么只需要输入pip install tensorflow,它会自动的选择最高的版本1.7)

小提示:我之前安装anaconda3的时候,安装错了,我执行的是sudo bash 。。。。.sh这样的话,我安装好的anaconda3就是一个属于root的目录,使得后面安装TensorFlow的地址就不会实在anaconda3/envs之下了,而是在。。。。我忘了提示是什么了。怎么删除呢,anaconda3安装是一个完整的文件夹直接删除就行,怎么删除这个创建了的tensorflow呢,因为你是conda create的,所以你执行命令conda remove -n tensorflow --all(这时候才可以conda create新的tensorflow的环境,否则总是报错已经存在的前缀好像是。。。忘了)

安装成功后,输入python,输入import tensorflow as tf没有报错就是成功了!

补充:安装opencv

之前我采用的是conda安装,但是之后报错了,你们可以先试试这个命令conda install opencv,但是在我import cv2的时候总是报错,我上网找了删除命令conda remove opencv。之后我采用的是pip安装,pip install opencv-python

补充:安装matplotlib

conda install matplotlib

补充:安装keras

pip install keras

补充:安装skimage

pip install scikit-image

 

二、assignment1的代码和解释

(1)KNN-推荐先阅读一下课程的课件:点击打开链接

为什么使用knn,而不使用nn,是因为nn的判定是经常性的出错的,相反的是KNN具有平滑决策边界的作用,同时更能反抗异常点的出现。那么我们如何的选择这个超参数k呢!一般是在交叉验证集和测试集上选择,选择那些在交叉验证集上表现好的,之后再在test集上进行评估。需要注意的是测试集仅在最后的时候才使用,不到最后我们不使用测试集。比如说我们的CIFAR-10,它本身是具有50,000个训练集和10,000个测试集的,但是我们现在在训练集的基础上划分出来1000个作为交叉验证集。

当你需要应用KNN的时候,我们建议你按照下面的步骤进行操作:

1.预处理你的数据(归一化),使得数据的均值为0,方差为1,且拉成向量的形式;

2.如果你的数据是高维的数据,我们建议你进行pca来进行降为;cs229:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值