水门篇
『事情的起头总是由到访者开始』
──使劲地踩踏在土壤结实的大地上,弹起身体向前冲出去。
眨眨眼无视了流在额头上被风吹而掠过眼角的汗水。
一面感觉到吸入的氧气令肺部感到疼痛,而身体一面由心窝为中心逐渐绞痛起来。
「──呜」
紧咬着牙关,驱赶走意识当中所有的痛苦。
而脑子里就想着一件事情,就只有『终点』这个单字而已。
「────!」
感觉到从远处听到了某人高亢的声音。
那道声音逐渐接近,紧追着一路狂奔的昴。他像是拉着绳索般,借助着这道声音,一直向前、一直向前──。
「────!」
被拼命的呐喊声邀请,不顾眼前的视线起了一片白烟而奔跑着。
不久之后,
「你抵达终点了哦!」
当他跨过那条放在脚边不中用的白线,就在那一瞬间,天地整个颠倒了过去。
昴的头快要冲入低矮的草丛时,瞬间反应将手伸出向前翻滚,用熟练到不行的动作抵销冲击力,多滚了大概两圈之后,整个人呈现大字形躺在地上。
「噗哈-!啊-!好辛苦!好难受!但是、结束了!我跑完了!」
一面不停地大口喘气,但仍然还是一直拼命大声说着。
为了振奋自己无力的心境,而如此恶态放话说着。不能把疲累感想成疲劳,还有不能把努力想成单纯的辛苦。
这里还没有结束, ...
数据结构与算法
绪论定义
数据
数据元素
数据项
数据对象
数据
各种符号的集合
数值型数据
非数据型数据
数据元素
数据的基本单位,一般作为一个整体考虑
也称作记录,结点,顶点
数据项
构成数据元素的不可分割的最小单位
数据对象
性质相同的数据元素的集合,是数据的一个子集
感知机
感知机
该笔记基于《深度学习入门》而写,所以在python实践部分不会使用神经网络框架
这篇笔记的编写目的主要为便于回忆基础知识,并非教程
python实践部分的会用docsify整理到个人github上
感知机概述
接受多个输入信号,输出一个信号
大前提:所有输入只有1和0,即取值只有1和0
有两个输入的感知机
是一个接收两个输入信号的感知机的例子。x1、x2是输入信号,y是输出信号,$\omega_1,\omega_2$是权重(w是weight的首字母)。图中的○称为“神经元”或者“节点”。输入信号被送往神经元时,会被分别乘以固定的权重($\omega_1x_1,\omega_2x_2$)。神经元会计算传送过来的信号的总和,只有当这个总和超过了某个界限值时,才会输出1。这也称为“神经元被激活”。这里将这个界限值称为阈值,用符号θ表示。
数学表达式为
y=\begin{cases} 0\quad(\omega_1x_1+\omega_2x_2\leq\theta) \\ 1\quad(\omega_1x_1+\omega_2x_2>\theta)\end{ca ...
神经网络的向前传播
神经网络的向前传播
该笔记基于《深度学习入门》而写,所以在python实践部分不会使用神经网络框架
这篇笔记的编写目的主要为便于回忆基础知识,并非教程
python实践部分的会用docsify整理到个人github上
与前章的联系
感知机的缺陷
无法自动设定权重
神经网络的重要性质是它可以自动地从数据中学习到合适的权重参数
神经网络的例子 用图来表示神经网络的话,如图3-1所示。我们把最左边的一列称为输入层,最右边的一列称为输出层,中间的一列称为中间层。中间层有时也称为隐藏层。“隐藏”一词的意思是,隐藏层的神经元(和输入层、输出层不同)肉眼看不见。另外,把输入层到输出层依次称为第0层、第1层、第2层(层号之所以从0开始,是为了方便后面基于Python进行实现)。图3-1中,第0层对应输入层,第1层对应中间层,第2层对应输出层。
y=\begin{cases}0\quad(b+\omega_1x_1+\omega_2x_2\leq0)\\1\quad(b+\omega_1x_1+\omega_2x_2>0) \end{cases}以上 ...
神经网络-mnist.py注释
mnist.py的相关笔记
所用到的扩展模块有
urllib.request
os.path
gzip (下文不解释了,解压压缩包用的,直接用gzip.open()就行
pickle
os
numpy
os相关代码os.path.dirname(path)
获取文件路径
os.path.absapth()
获取绝对路径
os.path.exists(path)
看函数名知用法。。。
可能用到的特殊属性
12__fire__ #双下划线 表示当前目录的相对路径 #所以用到转换绝对路径的函数
pickle库
一个可以帮助你以二进制流的格式将知道对象保存到文件里,以便下次加载
保存格式为pkl
好处:
对于大数据文件,我不用每次都占用大量内存去处理(个人理解)
把数据从内存中保存到固定磁盘空间里
注意事项:
加载文件中一定要有你原来对象的定义,否则连它都不知道自己保存的是个啥东西
文件以二进制文件进行读写,别文本文件
常用函数
123456789#来自pickle的说明'''Functions: dump(object, f ...
神经网络的学习阶段
神经网络的学习阶段
该笔记基于《深度学习入门》而写,并且基于书中从零开始实现深度学习的程序的目的,在python实践部分不会使用市面上成熟的神经网络框架
(以后再用tensorflow和pytorch进行复现)
这篇笔记的编写目的主要为便于回忆基础知识,并非教程
python实践部分的会用docsify整理到个人github上(maybe)
从数据中学习
不同的学习方法比较
深 度 学 习 有 时 也 称 为 端 到 端 机 器 学 习(end-to-end machine learning)。这里所说的端到端是指从一端到另一端的意思,也就是从原始数据(输入)中获得目标结果(输出)的意思。
神经网络的优点是对所有的问题都可以用同样的流程来解决。
概念
训练数据(监督数据)
测试数据
泛化能力
模型对实际问题的处理能力
过拟合
对训练数据集可以顺利处理,但对其他数据集无法处理
如何学习
神经网络的学习通过某个指标表示现在的状态。然后,以这个指标为基准,寻找最优权重参数。
神经网络的学习的结果,我们都知道为随机事件或其有关随机变量 ...
误差反向传播法
误差反向传播法用到的知识:
计算图进行局部运算
简单层的实现
加法层
乘法层
激活函数层的实现
Relu层
Sigmoid层
Affine/Softmax层的实现
跳过计算图介绍
简单层的实现加法层
python实现
12345678910111213class AddLayer: def __init__ (self): pass def forward(self,x,y): out =x + y return out def backward(self,dout): dx=dout*1 dy=dout*1 return dx,dy
乘法层
python实现:
123456789101112131415class MulLayer: def __init__(self): self.x = None self.y = None def forward(self,x,y): ...
numpy基础使用
numpy库
shape的参数
当为三维时,(高度,行数,列数)
np.ndim()
求数组维度
numpy.frombuffer(buffer, dtype = float, count = -1, offset = 0)
buffer 可以是任意对象,会以流的形式读入。(但一定要是流) dtype 返回数组的数据类型,可选 count 读取的数据数量,默认为-1,读取所有数据。 offset 读取的起始位置,默认为0。
导入Numpy库
1import Numpy as np
特殊数组
np.array([列表]/(元组),dtype=数据类型)
dtype=数据类型
int64,’int64’,’np.int64’
np.arange(起始数字,结束数字,步长,dtype=数据类型 ) 创建数字序列数组
前闭后开:数字序列中不包括结束数字
起始数字省略,默认从0开始
步长省略时,默认为1
np.ones(shape,dtype=数据类型) 创建全1数组
shape决定数组的行数与列数,以元组形式传入
可以 ...
ipython自动补全
ipython自动补全
有利于jupyter notebook的自动补全
命令行中输入:ipython profile create
以上命令会在~/.ipython/profile_default/目录下生成ipython_config.py和ipython_kernel_config.py
我们需要修改(ipython_config.py)的以下几行,将开启补全功能:
123456789101112## Activate greedy completion PENDING DEPRECTION. this is now mostly taken care# of with Jedi.## This will enable completion on elements of lists, results of function calls,# etc., but can be unsafe because the code is actually evaluated on TAB.c.Completer.greedy = True## Experimental: restri ...
爬虫
什么是爬虫
通过编写程序,模拟浏览器上网,然后让其去互联网上抓取数据的过程。
爬虫究竟是合法还是违法的?
在法律中是不被禁止
具有违法风险
善意爬虫 恶意爬虫
爬虫带来的风险可以体现在如下2方面:
爬虫干扰了被访问网站的正常运营
爬虫抓取了收到法律保护的特定类型的数据或信息
爬虫在使用场景中的分类
通用爬虫:
抓取系统重要组成部分。抓取的是一整张页面数据。
聚焦爬虫:
是建立在通用爬虫的基础之上。抓取的是页面中特定的局部内容。
增量式爬虫:
检测网站中数据更新的情况。只会抓取网站中最新更新出来的数据。
相关知识http协议
概念:就是服务器和客户端进行数据交互的一种形式
常用请求头信息:
user-agent:请求载体的身份标识
Connection:请求完毕后,是断开连接还是保持连接
常用响应头信息:
Content-Type:服务器响应回客户端的数据类型
https协议:
安全的超文本传输协议
加密方式:
对称秘钥加密
非对称秘钥加密
证书秘钥加密
爬虫模块urllib模块和requests模块
主要使用requests模块
...









