本文是早年浏览easyai.tech后留下的笔记。
文章目录
- 神经网络
- CNN
- RNN
- GAN
- KNN
- CPU和GPU/TPU
- NLP
- No free lunch theorem
- transformer
- 注意力机制
- 自动编码器,自编码器
- GNN
- 推荐系统
- 附录
- NFL的两个例子
神经网络
水流,水龙头,流量阀。
可以回想CNN分类MNIST识别手写数字的例子。最后看哪个输出水龙头流出来的水最多。
深度学习的特征提取并不依靠人工,而是机器自动提取的。可解释性差。
CNN
适合处理图像。
卷积层,保留图片的特征
池化层,把数据降维,避免过拟合
全连接层,主体工作
RNN
适合处理序列。
RNN只有短期记忆。LSTM有长期记忆,记住“重要”内容。
GAN
生成对抗网络。基本思想是在攻防中提升。
KNN
k nearest neighbor,此nn非彼nn。既可以用来分类(多数表决),也可以用来回归(取邻居均值)。
训练时间为0,但分类时计算量较大,需要计算target跟训练集每个点的距离。
CPU和GPU/TPU
一个教授和一百个小学生的区别。
TPU的T是tensor。
NLP
nlp分为nlu理解和nlg生成。
nlu的用途,机器翻译,聊天机器人(人工客服)。
nlg的用途,新闻自动生成,聊天机器人(人工客服),BI(business intelligence)报告。
No free lunch theorem
没有一个算法能在所有情况下最佳。
其实我们的初心是超越“乱猜”。只有一种办法能做到,就是依靠先验知识。
这个知识是场景相关的。有的场景中,知识是对的,另一些场景中,知识是错的。
transformer
bert和gpt-2的效果非常好,在语义特征提取能力、长距离特征捕获能力、任务综合特征抽取能力、并行计算能力及运算效率全方面超越了cnn和rnn及其变体。
这里的t,就是transformer。
注意力机制
注意力机制如今已经被广泛地应用到了基于序列的任务中,它的优点是能够放大数据中最重要的部分的影响。
自动编码器,自编码器
自动编码器是神经网络的一种,其基本思想就是直接使用一层或者多层的神经网络对输入数据进行映射,得到输出向量,作为从输入数据提取出的特征。传统的自动编码器一般用来数据降维或者特征学习,类似于PCA,但是自动编码器比PCA灵活的多,因为它既能表征线性变换又能表征非线性变换。
自编码器待填坑。
GNN
图是不规则的,图中的每个节点都有不同数量的相邻节点。因此平时的卷积就不合适了。
图中节点相关,而不是像假设一样独立。
因此需要针对性设计出图神经网络。
图神经网络可以分为五类,分别是:图卷积网络(Graph Convolution Networks,GCN)、 图注意力网络(Graph Attention Networks)、图自编码器( Graph Autoencoders)、图生成网络( Graph Generative Networks) 和图时空网络(Graph Spatial-temporal Networks)。其中,图卷积网络是基础。
推荐系统
推荐系统的本质是数据补全。
附录
NFL的两个例子
Posit a toy universe that exists for exactly two days and on each day contains exactly
one object, a square or a triangle. The universe has exactly four possible histories:
(square, triangle): the universe contains a square on day 1, and a triangle on day 2
(square, square)
(triangle, triangle)
(triangle, square)
Any prediction strategy that succeeds for history #2, by predicting a square on day 2
if there is a square on day 1, will fail on history #1, and vice versa. If all histories
are equally likely, then any prediction strategy will score the same, with the same
accuracy rate of 0.5.
另一个例子是下面两张图。先验知识是,“只要向上爬,就能到最高点”。这个知识在图一会成功,在图二就会失败。