Anaconda软件中的 Environments 及 Jupyter Lab使用方法介绍

news2024/10/6 6:02:06

来源:投稿 作者:助教-Frank
编辑:学姐

本篇是打造舒适的AI开发环境系列-软件篇1

上期内容:学人工智能电脑&主机八大件配置选择指南

本文的重点:

(1)Environments使用中如何安装python包.;

(2)Jupyter Lab如何在服务器后台开启,从而让个人笔记本随时访问。

在下一篇文章中将讲述Appication库中VS Code, PyCharm这两个IDE如何结合本文讲述的Environments使用,以及如何连接远程学校/公司集群运行以及远程debug代码。

1.安装

本章介绍Anaconda在MacOS, Ubuntu, Windows是如何安装的。

笔者的笔记本是MacBook, 即MacOS系统, 额外装于Ubuntu系统的服务器位于学校集群。

Anaconda下载地址:

https://www.anaconda.com/products/distribution 根据自己的系统选择对应红色框的部分,建议此软件安装到SSD固态上加快读写速度。

Windows系统:

后缀为exe文件直接点击,下一步即可

此处需要注意,Advanced Options界面, 务必勾选添加环境变量(后续省事)。其余下一步即可。

MacOS系统:后缀为pkg文件直接点击拖入应用程序即可

Ubuntu系统: .后缀为sh文件.

由于公司/学校AI集群一般是没有图形化界面。需要右键图一的” 64-Bit(x86) installer“ 复制anaconda的下载链接地址。

step1: 根据IP/user_id/port链接服务器

ssh frank@10.19.124.245 -p 2022

step2: 转到任意一个目录进行wget

cd Downloads
wget -c https://repo.anaconda.com/archive/Anaconda3-2021.11-Linux-x86_64.sh

step3: 安装,采用默认Enter yes yes即可

sh Anaconda3-2021.11-Linux-x86_64.sh

通过此章节完成了Anaconda软件在Windows/MacOS/ubuntu的安装

2.Environment的基本使用

此章节分为三个部分,如何创建Environment、 Python软件库的选择、替换清华源。

2.1 创建Environment

Windows: 如下图打开Powershell或者win+R的终端

MacOS/Ubuntu:打开终端.(bshell, zshell都可),此处推荐zshell,有自动补全功能, 如何安装使用会在软件篇3介绍。

step1: 创建名为python3.6_torch1.5_cuda10.1的Environment

此处为笔者的命令习惯, 也建议大家采取这样的命令方式, 这样可以很好的管理不同版本,此处大家可以根据自己想要安装的python torch cudad版本命名即可.不需要跟我一样, 一个系统可以安装若干Anaconda Environment。

此处需要Windows/Ubuntu安装好CUDA,Windows下一步下一步即可。Ubuntu稍微麻烦。

后续可以出一个文章单独介绍如何配置Ubuntu中的各种软件,此处默认大家已经安装好。

对于MacOS由于没有NVDIA GPU也就只能安装CPU版本的pytorch。

那么可以采用python3.6_torch1.5_cpu命名。

特别:TensorFlow不同版本的安装要严格对应GPU版本。2.1.1 补充

conda create --name python3.6_torch1.5_cuda10.1 python=3.6

step2: 激活Environment,并安装Python 包

如何找到Python 包的安装命令在下一个章节

conda activate python3.6_torch1.5_cuda10.1
pip install numpy

2.1.1 TensorFlow. Pytorch的安装

TensorFlow:https://www.tensorflow.org/install/source?hl=zh-cn#gpu

如下图所示。TensorFlow不同版本有严格的CUDA对应要求, 如果你系统装了CUDA10.1 去安装tensorflow-2.40会报错,如何安装不同Tensorflow版本,会在2.2章节给出

Pytorch:

https://pytorch.org/get-started/previous-versions/

相比于TensorFlow的静态图机制, 基于动态图的Pytorch不同版本就不需要严格对应系统CUDA,在上述链接中可以找到不同版本的下载信息。

2.2 Python软件库的选择

在windows中,我们可以通过360管家或者腾讯电脑软件管家很方便的把很多exe文件给整理好了,所以我们能很方便的去下载各种应用。

比如QQ, 微信, 英雄联盟等各种软件。类似的,在Python所有包中,有没有一个厂商把numpy/torch/tensorflow等各种各样的库包装好呢?其实是有的。笔者这里给推荐两款,其实就相当于python库集合中的360/腾讯电脑管家。

2.2.1 Anaconda org

https://anaconda.org/anaconda/repo

以numpy为例

如下图所示, 可以看到这个包能在哪个系统上安装, 以及安装的命令,

2.2.2 Pypi org

https://pypi.org/

如下图所示,搜索numpy。

跟上述一样也看到安装命令. 以及历史版本. 笔者这里建议采用pypi

2.3 替换清华源

由于上述Anaconda/Pypi 服务器都在国外, 导致我们在安装某些包的时候速度太慢了, 所以有一些大学或者公司把国外的这些库给搬到国内来. 有名的比如清华、中科大、阿里等. 此处只介绍笔者经常用的清华源.

地址: https://mirrors.tuna.tsinghua.edu.cn/

如下图, 此处已经给了替换方法。

step1:激活自己的Anaconda Environment

conda activate python3.6_torch1.5_cuda10.1

step2: 对于windows系统需要生成.condarc文件,并全局搜索找到 .condarc文件

conda config –set show_channel_ruls yes

step3: 对于MacOS/ubuntu系统在home/xxx(xxx为自己用户名)找到.condarc文件,替换清华源地址

vim /home/wlsh/.condarc

此时再开始安装库是不是速度快的飞起︿( ̄) ̄)︿

3.Jupyter Lab的使用

当我们点开安装好的Anaconda软件,其实会发现软件库中有N多开发软件。

本节只介绍Jupyter Lab的使用,有的同学可能会问为啥不使用Jupyter Notebook。其实Jupter Lab是notebook的升级版, 更加的方便简单。

最重要的是后面我会介绍如何在学校/公司集群上如何长久的开启一个端口,用你的笔记本能随时随地访问,跟Kaggle或者某些租卡平台一样。

3.1 本地使用

对于windows/macOS/ubuntu有图形界面的系统来说,

一方面可以通过菜单栏点开Aanaconda的图标,得到上面的界面,然后点开Jupyter Lab。

另一方面可以在终端直接输入jupyter lab浏览器即可直接打开。

3.2 服务器使用

当我个人有一个台服务器 或者 实验室有一台服务器, 我应该如何在服务器上开启jupyter lab服务 让我能够在我笔记本上随时随地访问. 就跟kaggle或者colab提供的jupyter lab界面一样。

step1; 通过IP/use_id/port连接集群

ssh framk@10.19.124.245 -p 2022

step2: 激活自己的Anaconda Environment

conda activate python3.6_torch1.5_cuda10.1

step3: 安装jupyterlab并添加Environment到Jupyterlab

pip install jupyterlab
python -m ipykernel install --user --name python3.6_torch1.5_cuda10.1

step4: Jupyterlab的配置:

4.1 生成jupyter lab的配置文件

jupyter lab --generate-config

终端显示生成的配置文件位于

/home/frank/.jupyter/jupyter_lab_config.py

4.2 修改jupterlab登录密码

Jupyter lab password

4.3 主机IP/端口设置,编辑文件在最后面添加三行。

这三行的意思分别是允许任何IP链接. 集群不打开jupyter lab的图形界面, 初始服务器端口IP 如果遇到冲突会自行替换。

vim  /home/frank/.jupyter/jupyter_lab_config.py
c.NotebookApp.ip='*'
c.NotebookApp.open_browser=False
c.NotebookApp.port=8888

4.4 启动jupyter lab并挂到服务器的后台,查看后可以找到IP。

然后把localhost替换为服务器IP,在自己笔记本浏览器打开就可以啦!

nohup jupyter lab --port=8891 &
cat nohup.out

4.5关闭挂到后台的jupyter lab, 查找进程ID, 并关闭

ps -ef | grep jupyter lab
Kill -9 xxxx

关注下方《学姐带你玩AI》🚀🚀🚀

“打造舒适的AI环境”系列更新中,跟着大神学AI啦

码字不易,欢迎大家点赞评论收藏!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/179796.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Kettle(6):表输入组件——mysql转mysql

1 需求 前面我们已经将Excel中数据抽取到了MySQL的t_user表中。 现在有了新需求,要将MySQL数据库中的 t_user 表中的数据抽取出来,装载到另外一张表 t_user1中。 2 构建Kettle数据流图 2.1 从核心对象的输入组件中,将「表输入」组件拖拽到中…

电脑下载软件用什么软件好?安卓手机下载软件用哪个软件好?IDM下载器说:在做的都是弟弟

大年初五,迎财神,先祝大家新的一年财源滚滚,接下来为大家分享超级经典的IDM下载器,电脑端毫无争议的下载工具,安卓平台idm也是力压群雄,下面就为大家详细分享下: 1:1DM下载器&#x…

微服务统一登陆认证怎么做

[微服务统一登陆认证怎么做}?JWT 无状态登录原理 1.1.什么是有状态? 有状态服务,即服务端需要记录每次会话的客户端信息,从而识别客户端身份,根据用户身份进行请求的处理,典型的设计如tomcat中的session…

notepad++在行首行尾添加字符 | 选中列

目录 1、首行/尾行添加字符 1【使用快捷键 CtrlH】 2【^为行首、$为行尾】 3、查找模式选中正则表达式 2、Notepad中列选(竖选) 1、首行/尾行添加字符 1【使用快捷键 CtrlH】 或者鼠标 2【^为行首、$为行尾】 3、查找模式选中正则表达式 2、Notepad中列选(竖…

深度学习入门(一)感知机

该文将介绍感知机A(perceptron)这一算法。感知机是由美国学者Frank Rosenblatt在1957年提出来的。为何我们现在还要学习这一很久以前就有的 算 法 呢 ? 因 为 感 知 机 也 是 作 为 神 经 网 络(深 度 学 习)的起源的算…

详解Windows通过命令行查看电脑连接过的WIfI密码

CONTENT打开命令行进入命令行下的netsh工具查看连接过的WiFi名称指定WiFi名称查看密码在Windows操作系统中(PS:Windows Vista及以后的Windows系统)可以通过命令行工具netsh查看和更改电脑的无线连接设置,包括WiFi。本篇博客将详细…

C语言进阶——文件管理

每当我们写好一段代码运行结束之后,再次运行的时候就会发现,之前在终端上输入的数据都会消失,那么如何把之前输入的数据保存下来呢? 我们一般把数据持久化的方式有把数据存放在磁盘文件中、存放到数据库。打印等方式进行保存。 …

Java---微服务---elasticsearch安装部署

elasticsearch安装部署1.部署单点es1.1.创建网络1.2.加载镜像1.3.运行2.部署kibana2.1.部署2.2.DevTools3.安装IK分词器3.1.在线安装ik插件(较慢)3.2.离线安装ik插件(推荐)1)查看数据卷目录2)下载并解压缩分…

RocketMQ源码本地搭建调试

1 GitHub源码 git clone https://github.com/apache/rocketmq.git导入IDEA,可在命令行执行mvn compile一下,保证源码能够正确编译。本次我使用的master分支的版本-4.8.0。下面我们开始准备启动Namesrv。 2 启动Namesrv 到namesrv模块找到NamesrvStart…

web游戏---canvas基础图形

基础 canvas标签 canvas是H5中新推出的标签,这个提供一块画布,可以在上面绘制图案,通过这种方式制作web游戏带来的性能消耗比操作DOM要小的多。 如果知做浏览器游戏,为了保证性能最好使用画布来制作。 坐标系 画布的坐标系和…

ThinkPadE540重装系统

过年这段时间,帮家里人重装了一下win10系统,在这里记录一下,方便今后还要使用。 先准备两个U盘,一个存储电脑的文件(以防文件丢失),一个空u盘(制作重装系统的) 一.下载镜…

【5-卷积神经网络】北京大学TensorFlow2.0

课程地址:【北京大学】Tensorflow2.0_哔哩哔哩_bilibiliPython3.7和TensorFlow2.1六讲:神经网络计算:神经网络的计算过程,搭建第一个神经网络模型神经网络优化:神经网络的优化方法,掌握学习率、激活函数、损…

Junit单元测试框架【基础篇】

Junit单元测试框架【基础篇】🍎一.Junit单元测试框架🍒1.1 注解🍒1.2 断言🍒1.3 用例执行顺序🍒1.4 测试套件🍉1.4.1 指定类🍉1.4.1 指定包🍒1.5 参数化🍉1.5.1 单参数&a…

VBA提高篇_07 Goto跳转 / Exit退出 /VBA错误处理

文章目录使用逻辑变量控制循环使用Goto语句任意跳转捷径:使用Exit语句跳出结构保险: 使用错误处理改善用户体验On Error Goto Lablex:On Error Resume Next使用逻辑变量控制循环 使用Goto语句任意跳转 经常在错误处理时使用 捷径:使用Exit语句跳出结构 注意: 避免使用while…w…

【C++】AVL树(插入)

文章目录AVL树的概念平衡化旋转右单旋转左单旋转先左后右双旋转先右后左双旋转AVL树的插入根据BST树规则进行节点插入平衡化处理重新连接节点完整的插入函数代码AVL树的验证AVL树的性能AVL树的概念 二叉搜索树虽然可以提高查找的效率,但是二叉搜索树有其自身的缺陷&…

Python与Matlab混合编程案例

前言因为项目需要,需要批处理很多Matlab的.m文件,从每个文件中提取结果合并到一个文件中。 很明显,如果手工统计,几百个文件会累死的。 因此立即想到了Python在批处理方面的优势,因此就在网上找了相关资料,…

C++初阶:vector

文章目录1 vector介绍2 实现vector2.1 类的定义2.2 默认成员函数2.2.1 构造函数2.2.2 析构函数2.2.3 拷贝构造2.2.4 赋值重载2.3访问接口2.4 容量接口2.5 修改接口2.5.1 尾插尾删2.5.2 任意位置插入2.5.3 任意位置删除2.6 其他接口1 vector介绍 1 vector是表示可变大小数组的序…

10+编程语言实现云笔记

目标 为编程初学者打造入门学习项目,使用各种主流编程语言来实现。让想学编程的,一个都不落下。 上述基本涵盖了当前编程开发所有主流语言。 左侧为前端版本:安卓、iOS、鸿蒙、Flutter、Vue、uni-app。 右侧为服务器端版本:Jav…

代码随想录算法训练营三期 day 27 - 回溯 (3) (补)

39. 组合总和 题目链接:39. 组合总和 原文链接:39. 组合总和 视频链接:39. 组合总和 本题和 77.组合 ,216.组合总和III 的区别是:本题没有数量要求,可以无限重复,但是有总和的限制。 树形结构&…

【axios】axios的基础知识和使用

一、基础知识概念Axios 是专注于网络数据请求的库,只负责发请求、拿数据,不能操作DOM元素。相比于原生的 XMLHttpRequest 对象,axios 简单易用。相比于 jQuery,axios 更加轻量化,不能操作DOM元素,只专注于网络数据请求…