故天将降大任于斯人也,必先苦其心志,劳其筋骨,饿其体肤,空乏其身,行拂乱其所为。所以动心忍性,增益其所不能。------《孟子 劝学篇》
为什么选择研究深度学习
最大的动机是收到陈天奇 MCL LLM这个项目的启发,想要给自己多年以来在移动端的知识积累寻找一个出口。我认为端侧智能是未来的一个发展方向,所以从深度学习理论开始研究起,希望在这条道路上可以踏实坚定地走下去。
学习本书的目标
通过这本《深度学习入门》,完成在深度学习领域最初的扫盲与知识体系初步搭建,同时学习一下python语法与常用库。
Python
搭建环境
我的操作系统是Windows 11家庭版,配置为32G内存+i5 13500H
- 命令行工具:使用Cmder代替原生Terminal以及Windows PowerShell(非常之难用),下载时选择Full安装包自带git等命令行工具
- Python运行环境:Anaconda,安装完成后配置环境变量
安装完成后,在控制台输入activate base
进入Anaonda环境,然后输入python
进入Python环境。输入exit()
以退出。
Python基本语法
Python是一种简单、易读、易记且开源的面向对象编程语言。可以以对话形式与Python解释器进行交互。
py
>>> 1 + 2
3
下面的代码片段里汇总了一些基础语法。
py
# 乘方
>>> 3 ** 2
9
# 数据类型 data type
>>> type(10)
<class 'int'>
# 变量
>>> x = 10
>>> print(x)
10
# 列表
>>> a = [1,2,3,4,5]
>>> print(a)
[1, 2, 3, 4, 5]
>>> len(a)
5
>>> a[0]
1
>>> a[0:2]
[1, 2]
# 字典 Map
>>> me = {'height' : 170}
>>> me['height']
170
# 布尔类型
>>> fool = False
>>> not(fool)
True
>>> type(fool)
<class 'bool'>
# if语句
>>> if fool:
... print("i'm fool')
...
i'm fool
# for语句
>>> for (i in [1,2,3])
... print(i)
...
1
2
3
# 函数
>>> def hello()
... print("Hello World!)
...
>>> hello()
Hello World!
命令行模式与脚本模式
上述使用方式为命令行直接使用,Python还支持以脚本文件的形式运行,编辑.py
文件后,通过执行python <filename>.py
来运行。
类的写法
类的写法与Java不同,类的构造函数与普通函数都会接收一个self
参数。
py
class 类名:
def __init__(self, param, ...):
...
def functionA(self, ...):
...
def functionB(self, ...):
...
常用库之Numpy
是外部库,不包含在标准版Python中,提供了很多数组和矩阵的便捷计算方法。
需要学习数组、多维数组(矩阵)、数组运算的写法。
常用库之Matplotlib
用于图形绘制和数据可视化,还可以读入硬盘上的图像。
小结
第一课,学习Python环境搭建和基本语法,以及常用的两个库(Numpy、Matplotlib)用法。