3856-高同学-人工智能学科-数据挖掘 扫二维码继续学习 二维码时效为半小时

(0评价)
价格: 免费

写代码开发的工作,做为一场战争的话,

写出来的代码,相当于士兵与武器

故,数据结构与算法是一名程序开发人员的必备的基本功,不是一

 

算法,就是让计算机把问题解决出来,计算的方法

 

算法是计算机处理信息的本质,因为计算机程序本质是一个算法来告诉计算机确切的步骤来执行一个指定的任务。

一般地,当算法在处理信息时,会从输入设备或数据的存储地址读取数据,把结果写入输出设备或某个存储地址供以后再调用

算法是独立存在的一种解决问题的方法与思想

对于算法而言,实现的语言并不重要,重要的是思想。

算法可以有不同的语言描述实现版本(如C描述,C++描述,python描述等),我们现在是在python语言进行描述实现

 

算法的五大特性:

输入:算法具有0个或多个输入

输出:算法至少有1个或多个输出

有穷性:算法在有限的步骤之后会自动结束而不会无限循环,并且每一个步骤可以在接受的时间内完成

确定性:算法中的每一步都有确定的含义,不会出现二义性

可行性:算法的每一步都是可行的,也就是说每一步都能够执行有限的次数完成

 

 

 

 

 

 

 

 

[展开全文]

Max pooling 采样取各样区内最大

avg pooling 取平均

[展开全文]

stride 步长

padding 填充0

layer 层

[展开全文]

O' = O - learningrate*gradient

[展开全文]

https://cloud.189.cn/t/EBF

[展开全文]
2811_lch · 2022-08-25 · 自由式学习 0

python内置类型性能分析:

timei模块 

可以用来测试一小段python代码的执行速度

class timeit.Timer(stmt='pass',setup='pass',timer=<timer function>)

Timer:是测量小段代码执行速度的类

stmt:参数是要测试的代码语句

setup:参数是运行代码时需要的设置

timer:参数是一个定时函数,与平台有关

 

[展开全文]

消耗时间大小:

O(1)<O(logn)<O(n)<O(nlogn)<O(n^2)<O(n^3)<O(2^n)<O(n!)<O(n^n)

[展开全文]

数据结构与算法:

算法是一种独立的解决问题的方法和思想,语言并不重要,重要的是思想

算法的五大特性:

1.输入:算法具有0个或多个输入

2.输出:算法至少有1个或多个输出

3.有穷性:算法在有限的步骤之后就会自动结束而不会无限循环,并且每一个步骤可以在可接受的时间范围内

4.确定性:算法中的每一步都有确定性的含义,不会出现二义性

5.可行性:算法的每一步都是可行的,也就是说每一步都能够执行有限的次数完成

[展开全文]

算法的五大特性:输入、输出、有穷性、确定性、可行性

[展开全文]

数据预处理

深度学习需要的是标准的正方形图片

(1)image resize

(2)Data Argumentation

(3)Normalize

(4)to tensor

 

[展开全文]

自定义数据集实战

test数据量太小的话,测试结果波动较大,所以我们为了保证测试的效果,会把测试集的数据多分配一些

1、load data ——比较重要的模型;

继承一个通用的母类

inherit from torch.utils.data.Dataset

要定一个两个函数

_len_:数据量

_getitiem_:能够得到指定的样本

2、build model——在我们已经定义好的模型上做一些修改;

3、train and test

4、transfer learning

 

[展开全文]

情感分类实战

Google CoLab

(1)continuous 12 hours;

(2)free K80 for GPU;

(3)不需要爬墙

 

[展开全文]

LSTM使用方法

LSTMcell更为灵活的使用方法,可以自定义喂数据的方式

[展开全文]

2、输入门

it作为一个开度,将多少信息传入到下一个时间点,有算法决定这个开度;新信息同样也是由ht-1和当前点的xt共同决定的。it是对当前信息的过滤系数,当前信息与开度相乘之后就是经过过滤后输入下一个点的新信息。

输入门的值

ct是memory,ht是隐藏层的输出

3、输出值

同样是由开度和ct共同决定的,ot作为开度也是由算法决定的

LSTM如何解决梯度离散的问题呢?

由于存在忘记门、输入门和输出门三个门

当前隐藏层对前一个隐藏层求导时,出现三个值相加的情况,不容易出现都是大或都是小的情况,数值相对可靠,所以效果相对来说更好一些。

[展开全文]

LSTM将短期记忆变长,RNN只能记住比较短的时间序列,LSTM就是为了解决短期记忆的问题。

1、忘记门

[展开全文]

梯度爆炸

why?


梯度是有WR的k次方乘以其他的一些东西得到的

当WR大于1的时候,k次方会非常大

当WR小于1的时候,k次方会接近于0

我们的loss本来是逐渐变小的,发生梯度爆炸的loss会突然增大,为了解决这个问题,我们可以检查当前位置的梯度值,如果大于我们设定的阈值,我们将用梯度本身来除以她此刻的模,再乘以阈值,这样使得梯度在设定范围内,且方向不发生变化

Gradient Clipping

查看一下梯度的模,利用clip_grad_norm把梯度的裁剪到10左右

梯度离散:后面隐藏层梯度变化比较大,前面的隐藏层梯度变化很小,长时间得不到更新

 

 

[展开全文]

out是所有的时间戳上面最后一个memory状态

h是左右一个时间的所有memory状态

 

[展开全文]