深度学习——第2章 深度学习开发环境搭建

第2章 深度学习开发环境搭建

目录

[2.1 Anaconda](#2.1 Anaconda)

[2.2 Jupyter notebook](#2.2 Jupyter notebook)

[2.3 Markdown](#2.3 Markdown)

[2.4 Latex](#2.4 Latex)

[2.5 Pycharm](#2.5 Pycharm)

2.1 Anaconda

2.1.1 Anaconda简介

Anaconda是一个开源的Python发行版本,其包含了conda、Python等800多个科学包及其依赖项。因为包含了大量的科学包,Anaconda 的下载文件比较大,如果只需要某些包,或者需要节省带宽或存储空间,也可以使用Miniconda这个较小的发行版(仅包含conda和 Python)。

  • 开源免费
  • 支持近800个第三方库
  • 包含多个主流工具
  • 适合数据计算领域开发
  • Win/Linux/OS X

2.1.2 下载Anaconda

百度搜索Anaconda

打开Anaconda网页

![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/fd44ab393cca4f39857242a5561b986a.png![在这里插入图片描述](https://file.jishuzhan.net/article/1732714620696662018/77412d6208ba2c23750b094d9aaf3f8b.webp)

点击Products --> individual Edition 下拉到页面最下方:

根据你的电脑系统,选择相应版本的 Anaconda,Mac OS 用户选择 Mac 版本即可。推荐使用 Graphical Installer。

2.1.3 安装 Anaconda

选择默认位置安装:

两个选择框都勾上,点击安装:

等待安装结束,时间稍长。

安装完成后即可开始使用。

2.1.4 查看 Anaconda

Anaconda 装好之后,可以在开始菜单查看。可以看到包含了如下图所示的组件:

我们会用到的是:

  • Anaconda Prompt:Anaconda 自带的命令行
  • Jupyter Notebook:一个简单易用、适合入门的Python IDE
  • Anaconda Navigator Anaconda是一个集成各类Python工具的集成平台

2.1.5 包和环境管理工具conda

conda: 一个工具,用于包管理和环境管理,其中:

  • 包管理与pip类似,管理Python第三方库
  • 环境管理能够允许用户使用不同版本Python,并能灵活切换

anaconda:一个集合,包括conda、某版本Python、一批第三方库等

conda将工具、第三方库、Python版本、conda都当作包,同等对待

Win平台: cmd,执行conda ‐‐version 获取conda版本;执行conda update conda 升级conda

2.1.6 编程工具Spyder


2.1.7 交互式编辑环境IPython

IPython是一个功能强大的交互式shell,适合进行交互式数据可视化和GUI相关应用。notebook即在此基础上生成。

  • 变量前或后增加?将显示一些通用信息,包括函数对应的源代码。
  • IPython的%魔法命令:%magic。

2.2 Jupyter notebook

2.2.1 jupyter notebook简介

Jupyter Notebook是一个开源的Web应用程序,允许用户创建和共享包含代码、方程式、可视化和文本的文档。在编辑的过程中,每次编辑一行代码就可以运行一行代码,运行的结果也可以显示在代码的下方,方便查看。当所有的程序编写和运行完毕之后,还可以直接把编辑和运行之后的所有信息保存在文件中。

它的用途包括:数据清理和转换、数值模拟、统计建模、数据可视化、机器学习等等。它具有以下优势:

  • 可选择语言:支持超过40种编程语言,包括Python、R、Julia、Scala等。
  • 分享笔记本:可以使用电子邮件、Dropbox、GitHub和Jupyter Notebook Viewer与他人共享。
  • 交互式输出:代码可以生成丰富的交互式输出,包括HTML、图像、视频、LaTeX等等。
  • 大数据整合:通过Python、R、Scala编程语言使用Apache Spark等大数据框架工具。支持使用pandas、scikit-learn、ggplot2、TensorFlow来探索同一份数据。

2.2.2 启动jupyter notebook

在cmd环境下,输入命令:jupyter notebook,之后就可以启动jupyter botebook编辑器,启动之后会自动打开浏览器,并访问http://localhost:8088 ,默认跳转到http://localhost:8088/tree

2.2.3 Jupyter notebook的两种模式

对于Notebook中的单元,有两种模式:命令模式 (Command Mode)与编辑模式 (Edit Mode),在不同模式下我们可以进行不同的操作。

python 复制代码
print('机器学习')

如上图,在编辑模式(Edit Mode)下,右上角出现一只铅笔的图标,单元左侧边框线呈现出绿色,点Esc键或运行单元格(ctrl-enter)切换回命令模式。

在命令模式(Command Mode)下,铅笔图标消失,单元左侧边框线呈现蓝色,按Enter键或者双击cell变为编辑状态。

command mode和edit mode。在一个cell中按下enter就进入edit mode,按下Esc进入command mode。

2.2.4 cell的基本操作

命令模式下的快捷键

编辑模式下的快捷键

注意不要死记硬背,在使用过程中需要什么就去查,多用用就能记住了。

2.3 Markdown

2.3.1 Markdown语言简介

Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。
Markdown 是一种轻量级标记语言,创始人为 John Gruber。它允许人们「使用易读易写的纯文本格式编写文档,然后转换成有效的 XHTML(或者 HTML)文档」。------维基百科

简单地说,Markdown 与 HTML 语言一样,使用一些符号就代替样式。但是它比 HTML 语言更加简单。例如我想要实现标题样式,那么我可以这么做:

# 一级标题
## 二级标题
### 三级标题
#### 四级标题

2.3.2 Markdown的优点

用 Word 也可以实现同样的效果,为什么要使用 Markdown 呢?

Word 等其他文本编辑工具虽然也能实现同样的效果,但其功能太过强大。Word 还能改变字体颜色,可以调节字体大小。这么强大的功能是 Word 的优点,但也是它的缺点。当功能过多,我们的注意力就会分散,就会去纠结:这个字体大小到底是 14 还是 16 好?我想强调这一句话,是要加粗还是标红?

而 Markdown 的出现让我们不需要去纠结这些问题。Markdown 的本质是让我们回归到内容本身,注重文章本身的结构,而不是样式

例如我们想要强调一句话,那么我们直接使用两个星号为其加粗,而不需要考虑是加粗还是标红(Markdown中只有黑色字体,没有其他颜色字体)。

这就是我要强调的文字

我们也不需要关心字体大小问题,因为 Markdown 中字体大小都与结构有关,无法手动设置。一级标题字体大一些,二级标题小一些。我们只需要关注哪些是一级标题,哪些是二级标题。而不需要去纠结标题字体到底要设置多大,Markdown 的本质是让我们回归内容本身。

2.3.3 Markdown格式语法

原生的 Markdown 语法包含了最基础的一些特性,例如:标题、加粗、斜体、段落、引用、超链接、图片、列表、代码块、水平分割线等。

而一些自定义实现的编辑器,则有一些自定义的实现,例如:数学公式、TODO列表等。所以当你看到有一些语法在一个编辑可以用,但到另一个编辑器又用不了的时候,那么这个语法可能就不是通用的 Markdown 原生语法了。

Markdown 语法非常简单,基本上多用几次就能学会,下面简单介绍一些常用的 Markdown 语法:

2.3.3.1 表示段落

Markdown 使用 ## 号来表示段落。

# 第一章
## 第一章第一节 1.1
### 第一章第一节第一小节 1.1.1
#### 四级标题
2.3.3.2 加粗、斜体、加粗斜体

Markdown 使用一个星号表示斜体,两个星号表示加粗,三个星号表示加粗斜体。

深度学习

深度学习

深度学习

2.2.3.3 无序列表

使用星号或者中横线来表示无序列表,注意后面需要加空格。

  • 西北民族大学
  • 中央民族大学
  • 中国民族信息技术研究院
  • 数学与计算机科学学院
  • 计算机科学与技术
  • 人工智能
  • 大数据科学与技术
2.2.3.4 有序列表

使用数字加'.'来表示有序列表,后面同样需要加空格。

计算机类专业共有9个细分专业,分别是:

  1. 计算机科学与技术
  2. 软件工程
  3. 网络工程
  4. 信息安全
  5. 物联网工程
  6. 数字媒体技术
  7. 智能科学与技术
  8. 空间信息与数字技术
  9. 电子与计算机工程
2.2.3.5 引用

Markdown 使用 > 符号来表示引用。

魏晋陶渊明 《杂诗十二首·其一》:

人生无根蒂,飘如陌上尘。

分散逐风转,此已非常身。

落地为兄弟,何必骨肉亲!

得欢当作乐,斗酒聚比邻。

盛年不重来,一日难再晨。

及时当勉励,岁月不待人。

2.3.3.6 代码块

我们使用` 号来表示代码块引用。

重音符:"`" ,是一个变音符号,用于希腊语(1982年前)、法语、加泰罗尼亚语、威尔士语、意大利语、越南语、苏格兰盖尔语、挪威语、葡萄牙语和其他语言内。

单行代码样式:

print("深度学习")

多行代码样式:

python 复制代码
for i in range(10):
    print(i)
2.3.3.7 水平分割线

使用"---"表示分割线

我在分隔线的上方


我在分隔线的下方

2.3.2.8 表格

使用一根竖线来分隔各个单元格,使用冒号来决定单元格的对齐方向。

左对齐

人物排序 人物姓名
1 张三
2 李四
3 王五

居中

人物排序 人物姓名
1 张三
2 李四
3 王五

右对齐

人物排序 人物姓名
1 张三
2 李四
3 王五
2.3.2.9 制作Todo列表

格式:-空格[空格]空格 文字

  • 未处理的事情1
  • 未处理的事情2

格式 -空格[x]空格 文字

  • 已处理的事情1
  • 已处理的事情2
2.3.2.10 锚点功能

如果文章很长很长,在标题的部分建立一个目录,可以利用描点迅速链接过去

用法 (topic是索引的id,可以改成其他值,但是两处要对应)

标题1

标题1

2.3.4 Markdown使用场景

目前越来越多的站点都支持了 Markdown 语法,例如:Github 等代码托管平台,CSDN、简书、博客园等写作平台。因此,掌握好 Markdown 语法可以非常方便地在各个主流站点使用。

2.3.5 Markdown编辑工具

Markdown 本质上是一个纯文本,所以任何能打开纯文本的东西都可以来编辑 Markdown。但如果你想要有预览功能,那么一款顺手的编辑功能还是有必要的。

  • Windows上的编辑器有:MarkdownPad、Typora、vscode。
  • OS X上的编辑器有:Mou、MacDown、MWeb。

2.4 Latex

2.4.1 Latex简单介绍

Latex是一种文件生成系统,它生成纯文本文件,后缀名为.tex。它不像Word软件编写文件一样所见即所得,而是用一定的语法或者标记符号来组织内容。Latex在学术写作中被广泛使用,特别在数学和计算机这样的学科。Latex可以让你忘记格式,而专注于内容。

在学术写作中,我们往往会对内容不停地改来改去,特别是如果还插入了图片的话,每次修改都可能需要重新排版,而Latex可以让你不用担心这些,任何时候都能帮你输出高质量的排版,在不确定的地方加一个注释,任何时候都可以重新修改而对输出的PDF没有影响。

本课程只讲解在notebook中使用Latex 数学公式的方法,更多有关Latex的知识,请自行查找学习。

2.4.2 在notebook中使用Latex数学公式

  • 行内公式

    $x ={-b \pm \sqrt{b^2-4ac}\over 2a} $

  • 行间公式
    x = − b ± b 2 − 4 a c 2 a x ={-b \pm \sqrt{b^2-4ac}\over 2a} x=2a−b±b2−4ac

运行后显示效果和word公式相同

2.4.3 常用数学符号的 LaTeX 语法

  • 上标:a^{2}
    a 2 a^{2} a2
  • 下标:a_{3}
    a 3 a_3 a3
  • 分式:\frac{2}{3} #n分之m
    2 3 \frac{2}{3} 32
  • 开方:

平方: \sqrt{2}
2 \sqrt{2} 2

n开m次方 :\sqrt[3]{4}
4 3 \sqrt[3]{4} 34

  • 累计求和:\sum_{i=m}^{n} #从m到n求和
    ∑ i = m n \sum_{i=m}^{n} i=m∑n

其它
Σ i = m n \Sigma_{i=m}^{n} Σi=mn
σ i = m n \sigma_{i=m}^{n} σi=mn

  • 累计求积:\prod_{i=m}^{n} #从m到n求积
    ∏ i = m n \prod_{i=m}^{n} i=m∏n
  • 积分:
    \int_{i=m}^{n} #从m到n积分
    ∫ i = m n \int_{i=m}^{n} ∫i=mn
  • 向量:

\vec a %a向量
a ⃗ \vec a a

\overrightarrow{AB} #A到B的向量
A B → \overrightarrow{AB} AB

  • 省略号:a+b+\cdots+z #a+b+...+z
    a + b + ⋯ + z a+b+\cdots+z a+b+⋯+z

  • 大括号:\underbrace{a+b+\cdots+z}{26} #a+b+...+z
    a + b + ⋯ + z ⏟ 26 \underbrace{a+b+\cdots+z}
    {26} 26 a+b+⋯+z

  • 指数和下标可以用^和_后加相应字符来实现。比如:

  • 平方根(square root)的输入命令为:\sqrt,n 次方根相应地为: \sqrt[n]。方根符号的大小由LATEX自动加以调整。也可用\surd 仅给出

    符号。比如:

  • 命令\overline 和\underline 在表达式的上、下方画出水平线。比如:

  • 命令\overbrace 和\underbrace 在表达式的上、下方给出一水平的大括号。

  • 向量(Vectors)通常用上方有小箭头(arrow symbols)的变量表示。这可由\vec 得到。另两个命令\overrightarrow 和\overleftarrow在定义从A 到B 的向量时非常有用。

  • 分数(fraction)使用\frac{...}{...} 排版。一般来说,1/2 这种形式更受欢迎,因为对于少量的分式,它看起来更好些。

  • 积分运算符(integral operator)用\int 来生成。求和运算符(sum operator)由\sum 生成。乘积运算符(product operator)由\prod 生成。上限和下限用^ 和_来生成,类似于上标和下标。

2.5 Pycharm

Pycharm 作为一款针对 Python 的编辑器,配置简单、功能强大、使用起来省时省心,对初学者友好。

下面介绍 pycharm 编辑器的基本使用方法,包括以下几个方面:

  • 下载安装
  • 新建项目流程
  • 配置 Pycharm
  • Python控制台

2.5.1 下载安装

Pycharm提供免费的社区版与付费的专业版。专业版额外增加了一些功能,如项目模板、远程开发、数据库支持等。个人学习 Python 使用免费的社区版已足够。

主页:https://www.jetbrains.com/pycharm/

下载后根据正常安装流程一步步操作即可。

注意:安装路径尽量不使用带有中文或空格的目录,在以后的使用过程中可以减少一些莫名错误。

2.5.2 新建项目

安装好软件之后,我们开始创建第一个项目,界面如下

左侧导航栏选择 Pure Python ,右侧的 Location 选择项目的路径, Interpreter 通过下拉栏选择 Python版本 ,这里直接使用 Python 的安装路径即可。

选择完成之后,点击 Create 按钮,进入界面。这时就可以创建文件了,步骤如下图所示:

这里我们以刚刚创建的 Crossin-practices 文件夹为例,依次点击

Crossin-practices → New → Python File

在 Name 一栏输入文件名即可,记得添加 .py 后缀,点击 OK 之后就可以开始书写代码:

print('hello,word')

然后在界面点击 右键 → Run example

出现这样的结果:

对于同一个脚本,第一次运行使用 右键 → Run example ,之后可以直接点击右上角或者左下角的绿三角 。如下图:

注意:更改文件运行的时候,三角和快捷键运行项目不会自动更改。所以经常会运行错误的文件而未发现。所以我们推荐第一次运行使用右键的方式,将脚本切换之后再使用绿三角。

2.5.3 Pycharm配置

Pycharm 里配置很多,几个比较重要的配置方法如下:

编码设置:

Python 的编码问题由来已久,为了避免一步一坑,Pycharm 提供了方便直接的解决方案

在 IDE Encoding 、Project Encoding 、Property Files 三处都使用 UTF-8 编码,同时在文件头添加:#-- coding: utf-8 -

这样在之后的学习过程中,或多或少会避免一些编码坑。

解释器设置:

当有多个版本安装在电脑上,或者需要管理虚拟环境时,Project Interpreter 提供方便的管理工具。

在这里可以方便的切换 Python 版本,添加卸载库等操作。

修改字体:

在 Editor → Font 选项下可以修改字体,调整字体大小等功能。

快捷键设置:

在 windows 下一些最常用的默认快捷键:

Pycharm 也为不同平台的用户提供了定制的快捷键方案,习惯了用emacs、vim、vs的同学,可以直接选择对应的方案。

同时,Pycharm 也提供了自定义快捷键的功能。

2.5.5 Python 控制台

为了方便用户,Pycharm 提供了另一个贴心的功能,将 Python shell 直接集成在软件中,调出方法如下:

相关推荐
这个男人是小帅30 分钟前
【GAT】 代码详解 (1) 运行方法【pytorch】可运行版本
人工智能·pytorch·python·深度学习·分类
__基本操作__32 分钟前
边缘提取函数 [OPENCV--2]
人工智能·opencv·计算机视觉
Doctor老王37 分钟前
TR3:Pytorch复现Transformer
人工智能·pytorch·transformer
热爱生活的五柒37 分钟前
pytorch中数据和模型都要部署在cuda上面
人工智能·pytorch·深度学习
HyperAI超神经3 小时前
【TVM 教程】使用 Tensorize 来利用硬件内联函数
人工智能·深度学习·自然语言处理·tvm·计算机技术·编程开发·编译框架
小白学大数据4 小时前
Python爬虫开发中的分析与方案制定
开发语言·c++·爬虫·python
扫地的小何尚4 小时前
NVIDIA RTX 系统上使用 llama.cpp 加速 LLM
人工智能·aigc·llama·gpu·nvidia·cuda·英伟达
Shy9604185 小时前
Doc2Vec句子向量
python·语言模型
埃菲尔铁塔_CV算法7 小时前
深度学习神经网络创新点方向
人工智能·深度学习·神经网络
艾思科蓝-何老师【H8053】7 小时前
【ACM出版】第四届信号处理与通信技术国际学术会议(SPCT 2024)
人工智能·信号处理·论文发表·香港中文大学