当前位置:   article > 正文

机器学习ML笔记_deoldify测试集

deoldify测试集

是对b站的up主@KnowingAI知智,的所有视频的笔记。基本上按照视频的发布时间排序,每个笔记前面都带有相应的视频号。

一、机器学习基础知识

BV14x411M7E9、BV1ot411P77s

监督学习supervised learning:≈概念学习concept learning

无监督学习unsupervised learning:归纳推理incluctive reasoning

增强学习reinforced learning:不断修正错误

BV1tx411M7mg

强人工智能=通用人工智能:可用咖啡测试、机器人学生测试、图灵测试

弱人工智能Weak AI=应用人工智能Applied AI:面对特定问题或任务

BV1yx41177Gd:弱人工智能

弱人工智能分为:

computer vision=CV

speech recognition

Natural language processing=NLP

recommendation system

expert system

BV1Bx411E7Hs:CV

4 tasks of computer vision:

Image classification

object recognition

semantic segmentation

video analyzing

BV1Lx41177sY:speech recognition

tasks of speech recognition:

convert human speech into normal language texks

Speaker Recognition

Speech Synthesis

BV18x411L7dz:NLP

自然语言处理:其任务涉及“理解”层面,有以下几个任务:

机器翻译:如谷歌翻译

中文自动分词:如锤子手机的“大爆炸“

问答系统:如图灵测试

信息抽取

阅读理解

自动摘要

文本分类等

BV1Nx41157hr:recommendation system

推荐算法:

基于内容的推荐算法

协同过滤:根据相似用户的喜好

BV1vW411a7jY:什么是语言

语素:是最小的、有意义的单位,词由语素组成

音素:口语的最小因素

BV1AW411h7Zq:两种对话模式

模版配对:是第一个引起巨大关注的对话程序Eliza的唯一功能

古怪谈话:如对话程序MGonz就用了这个

BV1VW411a74g

特征、属性、标签

学习=训练

过拟合

泛化

BV1SW41187cs

训练集:用来训练模型

验证集:用来确定网络结构或参数

测试集:用来检验最优模型的性能

一般来说,训练集、验证集、测试集占原始数据集的比例为3:1:1

BV16W411B7iM:知识图谱Knowledge Graph

知识图谱是一个将现实世界映射到数据世界,用节点和边组成的语义网络,其中节点代表物理世界中的实体或概念,边代表实体与实体的属性或它们之间的属性。

最早由谷歌提出,为更好服务于搜索。

也可以理解为基于图的数据理解方式,通过信息获取,知识融合知识加工等过程,将原始数据中的信息分析提炼形成图谱,机器就能找到复杂关系中潜在的关联

BV1DW411v7TF:回顾总结之前的视频

BV1HW411p7G5:人脸识别

之前的类似方法:指纹识别、虹膜识别

公司:旷视Face++

BV1vW411T7f3:书籍推荐

人工智能入门:周志华《机器学习》=西瓜书、李航《统计学习方法》

计算机视觉领域:Richard Szelisk《Computer Vision:Algorithm and Applications》

BV17W411L7TS:CV

CV还包括:
人体姿态识别

目标跟踪

SLAM:通过视频、图像等对现实空间进行重建

OCR=optical character recognition

边缘度检测

细粒度识别

(另外,还要区分CV和CG(计算机图形学)

人脸识别:

BV1xW411V7YP:人脸识别

1:1场景:如日常生活中的人脸识别

1:N场景:如嫌犯追踪、写字楼门禁

BV1HW411F7Sp:人脸识别的应用
很多平台已经开放了人脸识别的API,如阿里、旷视等公司

BV1ep411d7bN:iPhone X等人脸识别

采用结构光方法,即向人脸投射光,再读取物体表面的光信息来确定人脸的形状,用的是三维模型

SLAM:

BV1PW411N7g4:SLAM=simultaneous localization and mapping,即定位+地图构建

BV1os411H7wo:SLAM

3种SLAM方案:单目相机、双目相机、RGB-D

回环检测:回到了原来去过的地方

BV1Js411J7WC:OCR

BV1Ss411N7zH:人体姿态识别=人体姿态估计

BV1Cs41137RG:照片中的雾霾识别和去除

BV1ds411M7d6:换脸

BV1qW411Z7hy:自然语言处理=自然语言理解=计算语言学

符号主义:≈归纳与推理,即模仿数理科学的发展方式,将知识系统地整理成公理体系,让人工智能来源于数理逻辑

联结主义:≈神经网络和计算力,其基础是神经网络,神经网络间的连接机制与学习算法认为人工智能来源于对人脑机制的模拟

BV1RW411C7Nv:机器翻译=自动翻译

机器翻译有3个发展阶段:

基于规则的翻译方法

基于统计的翻译方法:对语料库依赖较大

基于神经网络的翻译方法

基于中间语言的翻译方法

基于实例的翻译方法

二、具体应用:这一部分视频里的干货比较少

BV1QW41167ea:机器翻译的应用

BV1aW411U7KR:信息抽取

BV1bt411f7FH:信息检索:如搜索引擎

BV15t411f7x9:情感分析

BV1Tt411d7So:关键词图谱

BV1cb411P746:Chatbot聊天机器人

BV1Jb411c7EQ:ChatBot

各大公司有提供供普通人开发的ChatBot接口,如百度的UNIT接口

BV1pt41127fr:作文评分:基于规则、基于深度学习

BV1et411C7zf:社会计算

语音任务:

BV1wt411S7NX:语音任务

大问题:语音识别、语音合成、声纹识别、自然语言处理

小问题:鸡尾酒会问题、远场识别、方言识别

BV1At411B7Dz:方言识别

BV1Xt411a78p:林志玲语音

BV1dt411675e:声纹识别

BV1ut411z7Vi:智能音箱

BV1jt411p72z:人工智能类语音任务的各种应用实例

BV1Kt411b7W7:语音交互设计方法

BV1tb411U7BW:听歌识曲

BV1hb411Y78j:虚拟偶像

BV1Sb411t7s9:音乐生成

BV1Yb411q7qH:鸡尾酒会问题cocktailparty problem

方法:基于单通道系统、基于多通道系统

BV1fb411n7Rg:远场识别

方法:麦克风阵列、深度学习

BV1Tb411J7sd:多模态

BV1Nb411x7jP:人工智能的应用

医疗应用:

BV1Vb411W7gz:基于影像的医疗辅助诊断系统

BV1Ab411M7uN:AI用于新药研发的各个阶段

BV14b41157rB:人工智能在医疗中的其他应用

BV1W4411873U:如何应对机器人骚扰电话

BV1b4411v7nn:智能客服

BV1p4411J7NH:AI猎头

BV1m441157qs:让游戏里的NPC拥有自己的意志

方法:行为树、有限状态机、AI

BV1v4411H7Ue:面部动作捕捉

方法:机械传动、光学、结构光

BV1j4411P7bU:法律应用:合同审查、文书生成、案件结果预测……

BV1z4411g7QS:金融应用:炒股、房产估值、信用评估等

BV1cx411d7Vh:农业应用

BV1B4411w7wz:教育应用

BV17x411f7vd:自动驾驶:传感器是自动驾驶的核心

BV1qt411g7ou:VR=Virtual Reality、AR=Augmented Reality、MR=Mixed Reality

BV1Zt411L72u:脑机接口BCI=brain-computer interface

BV1B4411f7RT:太空应用

BV1sE411f7aa:各种关于AI的预言

BV1rE411C7eG:自动驾驶的历史

BV18E411b7Br:区块链

区块链和人工智能就像是计算机与互联网,区块链是数据的存储方式,人工智能则是由数据产生的应用

BV1iE411i7DH:人造食物

BV1XJ411S7vq:找石油

BV1RJ41117aL:文章生成器:

生成器网址:

彩虹屁生成器:https://chp.shadiao.app

诺基亚短信图片生成器:https://zzkia.noddl.me:8020/?from=www.shadiao.app

藏头诗生成器:http://www.shicimingju.com/cangtoushi/index.html

https://suulnnka.github.io/BullshitGenerator/index.html?

BV1cJ41197LR:二次元头像生成器,如StyleGan

BV14J411B7Bw:颜值评分器

BV1LJ41117PG:美颜滤镜

BV1PJ411t7dT:美妆

BV12J411W7mL:路径规划

我自己的理解:就是Hamilton图、Euler图、拓扑排序、关键路径等

BV1rJ411b7jw:10年AI大事件

BV1uJ411G7Qt:AI打德扑:属于不完美信息博弈

BV1CJ411J7eD、BV1s7411e7nw、BV1pK41157VP:打麻将:如爆打、Suphx

论文地址:https://arxiv.org/abs/2003.13590

新冠应用:

BV1h7411H75P:流行病学模型

BV177411V7RC:隔空测体温

BV1G7411A7r3:

人脸识别:检测出是谁的脸

人脸检测:是张脸就可以进行某些行动

BV1o7411K7QK:计算机断层扫描CT=Computed Tomography

BV15E411x7wh:小型机器人

BV1qE411L7kN:蛋白质结构预测

BV1xE411P7a2:RTC=Real-time Communication

BV1564y1u7Uh:其他新冠肺炎应用

Mapping the Landscape of Artificial Intelligence Applications against COVID-19:https://arxiv.org/abs/2003.11336

BV1zK411L7ag:ARCore:是Google的增强现实平台

BV1bp4y1X7Fh:智能马桶:Bristol大便分类法

BV1aK4y1k7vC:AI线上开会:

https://github.com/mcreed/zoombot

https://github.com/alievk/avatarify

BV1ja4y1i7wk:创作漫画

如Tezuka2020:https://tezuka2020.kioxia.com/

BV1Az4y1d7qw:修复老电影

上色神器DeOldify:https://github.com/jantic/DeOldify

上色Colourise:https:/colourise.sg

超分辨率技术:http://mmlab.ie.cuhk.edu.hk/projects/SRCNN.html

插幀:

DAIN: https:/sites.google.com/view/wenbobao/dain

Super Slomo: https:/github.com/avinashpaliwal/Super-SloMo上色

BV1Qz411v7dU:做表情包

BV1Vz411i7Ph:做饭:如Flippy、Sony AI

BV17k4y1r7Tm:预测长相与性格的关系:五因素人格模型

BV1Ha4y1Y7LA:天气预报

GAN:

BV16C4y187JR:性转神器:如FaceApp,用的CycleGan

GAN=Generative Adversarial Network:由生成器Generator和判别器Discriminator

BV1yp4y1U7vM:人脸漫画化:用的是CycleGAN、MangaGan等

应用软件Pix2pix:pixel-me.tokyo

BV14Z4y1u7FF:秃头:用StyleGAN

Nvidia StyleGAN Paper&Code:https://nvlabs.github.io/stylegan2/versions.html

BV1fa4y1h7mz:计算群舞整齐度:如油管视频主:Techie_ray

BV1LK4y1x7ZY:识别唇语:如WLAS、LipNet模型

BV1GC4y187BV:外卖配送

BV1e5411a71j:GPT-3:Generative Pre-training

BV14f4y197ge:活体赛博昆虫:如RoboRoach;昆虫仿生机器人:如HAMR、Robofly

BV1WA411n78q:文章质量评估:如微信数据质量团队发布的论文《cognitive representation learning of self-media online article quality》和相应框架CoQAN

BV1Vp4y1i7Mc:开战斗机

BV1n54y1m7fa:解梦:如Dreamcatcher:http://social-dynamics.net/dreams/

BV1iV411m7tU:创作音乐:如全机器人乐队Compressorhead

BV1wz4y1f7zM:预测地震

三、各大知名算法

BV1yD4y1d7Fu:SOTA=State of the Art:是自称的,指比前人基础上更好

BV1Kr4y1w717:GNN=Graph Neural Networks:图论相关,可用Keras搭建

BV1ty4y1r7M8:胶囊网络Capsules Net

胶囊:

是一组打包好的神经元。

神经元可以输出数值,胶囊可以输出向量。

向量的长度代表胶囊对特征的认可程度,同时携带了一定的姿态信息。

Routing by Agreement:底层的胶囊在获取基础特征后,会对图片中可能是什么做出预测,如果找到共同认可的高层胶囊特征,就认为更可能是这一胶囊代表的内容

向量的长度跟神经元输出的数值什么关系:

神经元是Capsule的组成成分,Capsule中的(激活)向量可认为是一个个带方向的神经元,其方向代表该特征不同的空间变换(旋转、平移、放缩等等),模长则代表了高层Capsule取此种变换得到的概率。底层的capsule输出结果一定是指向最有可能的高层capsule,由此保证没有噪音传递在Capsules Net中

与CNN相比:

胶囊网络能更好地理解事物的组成、位置和姿态

胶囊网络正处于起步阶段

补充视频:Aurélien Géron:https://www.youtube.com/watch?v=pPN8d0E3900

BV1qA411j7Fs:神经网络Neural Networks

推荐视频:3Blue1Brown、斯坦福的经典课程

我自己的理解:神经网络就是图论里的一个有向的多部图

BV1oa411c7mS:CNN=Convolutional Neural Networks

CNN≈卷积核+池化层+全连接层

卷积核:一个个填充数字的正方形小格子

将卷积核与图片矩阵对齐并卷积(即将对应格子的数字相乘后再相加),再填到新矩阵中,并按照一定的距离(即步长)在图像上移动运算。最终得到一个新的矩阵,即特征图,其既是这一层的输出也是下一层的输入(我自己的理解:其计算方式有点类似于码分多路复用

设定不同的卷积核,我们就能找到各种各样的特征。卷积核寻找出特征,越卷积越抽象,范围越大。

如何设计卷积核:

训练:让网络根据已有的数据和它们的标签,来自动确定卷积核中的数字

池化层:

能选取图像的主要特征,可减少参数。其中,Maxpooling是保留窗口覆盖区域的最大数值

全连接层:

在网络的最后,能将提取到的特征集合在一起,给出图片可能是某个事物的概率

模型举例:例如拥有5个卷积层的AlexNet

应用:

CNN非常擅长处理图像;

将声音当作图谱处理可以完成语音识别;

将词语作为向量处理可以完成机器翻译

BV1Zi4y1L7LL:RNN=Recurrent Neural Network

RNN:高度重视序列信息,序列就是数据的前后关系。

RNN的基础结构是神经网络,但多了一个小盒子,用来记录数据输入时的网络状态。在下一次输入数据时,网络必须要考虑小盒子中保存的信息。随着数据的一次次输入,存储的信息也在不断地更新。盒子中地信息被称为隐状态

(形象化理解:HMM=Hidden Markov Models的pro max版

缺点:RNN适合捕捉到短时间片依赖,但训练长了之后一些重要信息会被后续输入给覆盖。也就是说,数据输入地越早,在隐状态中占据地影响就越小。所以一个句子很长,RNN就会忘记开始时说了什么

针对这个缺点,产生了RNN的改良版,即LSTM长短时记忆模型。LSTM能捕获长时间片依赖,它能选择性决定哪些重要信息留下,哪些被遗忘。

但前人发现在某些领域中长和短时间片都有不可忽视的作用,如句子中的上下文关系和文档中的重要关键词作用,所以后续有人提出了两者的结合体LSTM-RNN,以此捕获全局和局部关系。

应用:最常见的应用领域:NLP

BV1gy4y1q7M5:LSTM=Long Short Term Memory

LSTM:RNN加门控制

LSTM的变体:MGU、SRU、GRU

GRU:结构更简洁,计算更高效

BV1Ma411F7Y4:KNN=k-Nearest Neighbor=K近邻算法

knn并不是哪一种神经网络,它是机器学习中常用的分类算法。

KNN的基础思想非常简单:要判断一个新数据的类别,就看它的邻居都是谁:

假设我们的任务是分类水果,虽然不知道拿在手中的新水果是梨还是苹果,但通过观察它的大小和颜色,我们就能确定他在坐标系中的位置,再看看已经确定的苹果和梨都在哪儿,如果附近苹果多,我们就认为他是苹果,反之就认为他是梨子,KNN中的K指的是K个邻居,K=3就是通过离得最近的3个样本,来判断新数据的类别,类似于“长宽高”,水果的“大小”和“颜色”是数据的特征,苹果和梨子是数据的标签,计算距离时既可以使用两点之间的直线距离,也就是欧式距离,也可以使用坐标轴距离的绝对值的和,也就是曼哈顿距离Manhattan Distance。

K的取值非常重要:

如果K的值太小:容易受到个例的影响;

K的值太大:就会受到距离较远的特殊数据影响,K的取值受问题自身和数据集的大小决定,很多时候要靠反复尝试;

另外,k必须是奇数:因为如果是偶数的话恰好两边相等就无法判断了

KNN与k-means有什么区别:

k-means 是均值,分K组找每个组的中心再计算距离来聚类;

KNN 不分组,所有样本都计算距离

应用:

根据花瓣的长度、宽度等特征判断植物类别

将文本分词、统计词频等处理后判断文章的类型

电商、视频网站可以找到与你类似的用户,依据他们的选择推荐你可能感兴趣的商品或内容

为什么KNN难以用到较大的数据集中:

KNN的流程是先计算新样本与所有样本之间的距离,按由近及远的顺序排列后,再按K值确定分类,因此数据越多KNN的计算量越大,效率也就越低,很难应用到比较大的数据集里

KDTree:

针对计算量大的缺点,对数据进行树结构分割,然后距离计算就变成只需要新样本所在分支区域和邻域分支样本间的距离了,就是所谓的kd-tree构造

BV1cT4y1M7jK:蛋白质学习

CASP=Critical Assessment of Techniques for Protein

AlphaFold:DeepMind开发的根据蛋白质序列预测构象的深度学习模型

网友对端到端的解释:

端到端大概就是一种可以抛弃原有知识给出的处理/预测过程,直接从题目一端到答案的一端预测/处理(简化理解)。

这种算法的问题就是算法稳定性。这个其实一言难尽,因为端到端的大多没有可解释性,通常需要大量的训练。

端到端的好处是,毕竟现有知识并不能解释所有情况,因此,端到端会出现超出常识的正确率或者预测结果,也就是学到了些人类不知道的知识。

通常情况,端到端都不被小规模预算的训练使用,只有大型预算投入才有的玩,因为这个是一个上下限都很高的技术选型。

在我接触过的图像领域,小规模训练我还是会先做一些图像处理/分割/矫正/特征提取,之后再训练一个模型做输出,这种选型虽然最终结果可能不能极致,但是可控。

端到端的要么是我的训练集太小,要么是我不会用,感觉欠拟合的厉害…

如果有会端到端的大神,用小样本做的好的,希望交流一下。

解释一下端到端为什么是特点:

因为以前的其他都是从氨基酸序列预测二级结构,再通过二级结构预测三级结构。而这个是直接从氨基酸序列到三级结构。

扩展:

2020-12-29:请问这个序列直接预测三级是序列到二级到三级只不过有黑箱现象还是实现了序列到三级的直接概率预测呢

2022-5-23回复:用黑箱来做的

2022-5-23:我不太同意这个观点,之前的非端到端指的是先用神经网络预测三级结构的约束性质,再通过能量函数优化得到结构坐标;而Alphafold2能直接预测结构坐标

BV19K4y1L7ao:BP=反向传播算法

BP:用于确定神经元的权重和阈值。真正决定神经网络好不好用的,是神经元之间连接的权重和神经元的阈值

BP算法的思想非常简单:根据网络输出的答案与正确答案之间的误差,不断调整网络的参数:

假设我们正在训练一个图片分类网络,输入一张图片,逐层向前计算后,网络会给出该图片属于每个类别的概率。由于神经网络的初始参数是随机赋予的,大部分时间的答案都不尽如人意。这时,我们可以根据网络输出与正确答案之间的差距,从最后一层开始,逐层向前调整神经网络的参数。如果误差值为负,就提升权重,反之就降低权重。

调整的程度受学习率的制约。学习率像一个旋钮,用来控制参数调整程度的高低

过拟合问题:

由于强大的调整能力,BP算法控制下的神经网络容易过拟合。即:在训练数据上表现得很好,却认不出新数据是什么。

针对过拟合,我们可以采用提前停止策略:

将数据按一定的比例划分为训练集和验证集。用训练集调整参数,用验证集估算误差。如果训练集误差降低的同时,验证集的误差在升高,就代表网络开始过于适应训练集,这时就可以结束训练。

BP从数学层面上来说就是链式求导法则(即BP的精髓是求偏导数),而在程序实现上则是通过动态规划的方法来实现的。

BP利用梯度下降法来更新权重参数,在使用梯度下降法的时候需要计算梯度,链式法则只是计算梯度的公式

如果数据经过了除了加减乘除,比如说异或同或操作,是不是就没有办法BP了?:

BP其实是链式法则在神经网络上的具体应用,也就是说并不是简单的加减乘除。另外「异或」、「同或」在概率上是0与1,神经元连接权重是一个在0-1之间的百分比,两者之间不兼容呀(表达不严谨,大概是这个意思。

补充问题:

有一种loss就是二值loss,他是对之前的输入和权重相乘,然后判断来确定1和0的,像这种应该是可以反向传播的吧?

BV1HV411b7JR:决策树Decision Tree

应用:分类问题

构成:节点和边:

节点:根节点、子节点、叶子节点(代表样本分类结果)

边:指示方向

熵:

热力学中:表示一个系统内在的混乱程度

决策树中:表示分支下样本种类的丰富性。越混乱,熵就越大

决策树算法:

随着树的层数增加,让熵快速降低。熵越低,决策树分类效率越高

剪枝:

去掉一些决策树分枝

应用:解决特例数据过拟合问题

方法:

预剪枝:训练开始前规定条件,树达到某一深度就停止训练

后剪枝:先找到树,在依据一定条件如限制叶子结点的个数,去掉一部分分支

BV11i4y1F7n4:随机森林

通俗理解:

有一个1000题的题库,几个人随机从中抽一些题做来练手,每个人的解题思维和擅长用的解题方法都不一样。训练完之后,让他们做同一道题,如果大多数做的是A,结果就选A

集成学习:

随机森林属于集成学习,即将多个模型组合起来解决问题,这些模型会独立学习、预测、再投票出结果,准确度往往比单独的模型高很多

BV1U5411n7vH:梯度提升树GBDT=Gradient Boosted Decision Tree

与随机森林的不同:

GBDT中的树都是回归树

GBDT中的每棵树都建立在前一棵树的基础上

精髓是残差拟合:

残差拟合是提升树本来就具备的过程,梯度提升树是针对损失函数不是平方损失和指数损失而提出的

GBDT属于:

集成学习

Boosting提升:一个模型依赖于上一个模型。共同逼近正确答案的方法

Bagging:模型间相互独立共同投票出结果。随机森林也用了这个

Stacking堆叠:在多个模型的基础上放置一个更高层的模型,将底层模型的输出作为它的输入,最后由它给出最终的预测结果

网友纠正:

bagging是带bootstrap sampling的aggregating,视频中的bagging说的应该是aggregating。装袋这个译名其实有点误导。

回复:bootstrap sampling 的部分在上一个视频中讲过~这边的集成学习重点是在强调结构啦

XGB:

可以当成 GBDT 的一个高级版本,优化时使用的是二阶泰勒

BV1yo4y1o7A3:SVM=Support Vector Machine

KNN相当于画个圈,SVM相当于画个线

分类间隔:让分类间隔越大越好(即大间距分类器

决定了线的样本:支持向量

支持向量机:决策边界线上的样本点

样本少的时候SVM比深度学习厉害多了

支持张量机:

SVM的进阶版,对于少而杂的(维度高、非线性、小量)数据效果还不错。把向量替换成了高阶张量,把其中一个模展开,利用展开后矩阵与原张量数据和与新目标数据有相同标记的特点分类判别。不过原理更加晦涩难懂,还得懂个张量分析

dnn比svm厉害在了哪里:

svm确实要去做多label会比较烦一点,是一个二分分类器

dnn更暴力

BV1mf4y1k7UC:K均值聚类K-Means

属于聚类clustering、无监督学习

BV1wz4y1U74r:最大期望算法EM

相当于是有隐含变量的最大似然估计

属于迭代算法,或进化算法

如k-means就是EM算法的一个特例:

K-Means类似于离散化的EM,因为每个点只属于一个Cluster。如果把这个条件放宽,把每个点的归属改成概率分布,那就得到了Gaussian Mixture

LDA中的inference原理:是EM算法的变体

BV1JX4y157Qw:快手技术

BV1Zz4y127h1:transformer深度自注意力变换网络

因为对于翻译来说,句子间的单词数量并非是一一对应的,所以受限于结构,RNN只能实现N to N、1 to N、N to 1,不能解决NtoM的问题

sequence to sequence模型:

为了解决NtoM的问题。

seq2seq拥有编码器Encoder和解码器Decoder,

Encoder和Decoder依然是RNN网络,

先由Encoder提取原始句子的意义,再由Decoder将意义转换成对应的语言。

依靠意义这一中介,seq2seq成功解决了两端单词数不对等的状况

seq2seq提出后,出现的新问题:

意义单元能够存储的信息是有限的,如果一个句子太长,翻译精度就会随之下降

为了解决这个新问题,提出了Attention注意力机制:

在seq2seq的基础结构上,生成每个单词时,都有意识地从原始句子中提取生成该单词时最需要的信息,成功摆脱了输入序列的长度限制。

此机制的缺点:

这样的计算方式太慢了。RNN需要逐个“看”过句子中的单词,才能给出输出

由进一步提出了Self-Attention自注意机制,即Transformer:

先提取每个单词的意义,再依据生成顺序选取所需要的信息。

这样的结构不仅支持并行计算,效率更高,也很接近人类的翻译方式,效果非常好。

到这里,模型已经脱离了最初的RNN,成为了一个完全基于自注意力机制的、拥有Encoder和Decoder的结构

总结:

RNN->LSTM  GRU->Attention->Self Attention

GRU不是改进的LSTM吗?:

是的,但是整体框架差不多(跨越程度不多,不如前后的区别大)

encoder decoder不是在attention中就是rnn么,怎么变成self attention的》它的encoder和decoder是什么呢?:

encoder和decoder不代指任何具体模型,你放什么模型都可以。 只是在attention的RNN的en/decoder模型里指的是RNN模型

Word2vec已经过时了么:

w2v只是生称词向量而已啦。

思想没有过时,现在推荐领域很多方法都借鉴了word2vec的思想。

是13年火的模型,中间都经历了很多变体。Word2vec考虑的信息不够全面

BV11N41197nq:BERT:一个强大的语言(表示)模型

要把图像文字转换为机器能理解的形式:

图像:由像素组成,像素由RGB数值表示

文字:由数字组成的向量。用向量是因为:词语的意义之间是有关联的,距离可以表示词与词之间的关系

这些向量如何得到的:

用Bert等模型来帮我们找到词语位置

Bert源于Transformer:

即然Encoder能将语言的意义很好的抽离出来,那么直接将这部分独立,也许能很好地对语言作出表示

Bert的训练方法:

有遮挡的训练等

总结:

Bert任务本质是理解语言,而在其他任务上如文本生成任务,Bert就无法直接去生成文本。

像常见的GPT这种利用自回归训练理解语言序列分布,还有生成文本的技能,如故事&摘要生成等

BV1Jv411a7RB:GPT

Transformer的Encoder变成了Bert,Decoder变成了GPT

GPT2:

机器翻译、文本摘要、新闻写作(属于无中生有的生成类任务)

GPT3:

直接输入问题就能得到答案,不需要面对不同的任务再训练,也不需要调试就能直接使用,即Zero-Shot Learning零样本学习。

其Decoder的每一步输出都基于上一步输出的内容,这使得“生成”成为GPT最强大的能力。

GPT能够跨越语言的壁垒、能够根据语言描述生成图像

BV1dK4y1T757:情感计算

PAD模型:用数值对情感作出精确描绘

BV1MU4y1Y7DR:仿生机器人简史

BV1G64y1S7bc:Attention注意力机制

简单来说,Attention 是一种简化方法,可以从纷繁复杂的输入信息中,找出对当前输出最重要的部分。

一个典型的ATTENTION包括3部分:

Q=Query:是输入的信息;

K=Key;

V=Value;

K和V成组出现,通常是源语言,原始文本等已有的信息。

通过计算Q和K之间的相关性,得出不同的K对输出的重要程度,再与对应的V相乘求和,就得到Q的输出

(我不严谨地理解一下啊:key和value类似python里的字典,也类似C++的STL里的map,就是关键字和对应的权值

Attention的2个升级版:

Self-Attention自注意力机制:

只关注输入序列元素之间的关系,通过将输入序列直接转化为Q、K、V,在内部进行Attention计算,就能很好地捕捉文本的内在联系,对其做出再表示。

Multi-head Attention:

在自注意力机制的基础上,使用多种变换生成的Q、K、V进行运算,再将它们对相关性的结论综合起来,进一步增强Self-Attention的效果

以视频中的阅读理解为例,Q是问题,K和Q是原始文本,那K和Q分别代表什么?最后是怎样“利用V得到了答案”?:

镜头过的太快了,K 和 V 都是原始文本,其中 K 存在的目标是为了得到相关性,得到这个值后与 V 相乘得到最终的结果。

或者你也可以这么理解,对于「我爱吃苹果」中「我」和「爱」的相关性大于「我」和「苹果」之间的(决定相关性的既可能是意义也能是词性或是位置,总之计算机会给我们一个数值来表示这个相关性),attention 在做的事情就是找到当前 Q 最值得注意的内容并输出(不严谨,差不多是这个意思)

网友评论:

temp_name_fang:报道好像出了一点点偏差,其实attention的定义要general很多,这个query key value只是通常用于self-attention的计算。nlp领域可以说attention is all you need,vision可不行。

temp_name_fang:补充一下,vision也可以了,2020还是paper看少了。

别来沾边别来回覆 @temp_name_fang:现在又不行了。

赤洁:我说怎么这么奇怪,一个attention怎么用qkv原来由道友

BV1bf4y1W7ok:人工智能如何改变天文学

BV1mp4y187dm:GAN生成对抗网络

包含三个部分,生成、判别和对抗

类似的能生成以假乱真内容的生成模型:
Boltsmann机

变分自编码器

为什么判别器接近0.5停止而不是1停止:

这个涉及到神经网络训练时的loss函数。简单来说,如果判别器收到了相同数量的正反例,如果它完全无法区分正例和反例,返回0.5是最优解(因为x^2+(1-x)^2的最小值在x=0.5时取到)。所以,当判别器返回非常接近0.5的值的时候,说明判别器不太能区分正反例了(注:此处说的是假设损失函数是MSE(平均平方错误),但交叉熵等其它损失函数也会有类似的返回0.5损失最小的性质。

2021-5-20:提问,如果最后给了一个单点判别器,无论输入什么,输出一定是常值函数0.5,他就是好的了吗?

2021-5-20回复:确实GAN确实存在类似的问题,很多时候训练500轮左右的结果不错,但是训练2000轮之后的输出就变得非常奇怪了

BV1rK4y1K77s:赛博格Cyborg

字面意思:有机物和无机物的结合

忒修斯之船

BV1mU4y1b7wR:GAN的家族

GAN的缺点:难以训练

模式崩溃:生成器只要一直生成同一种能骗过它的假图片就能完成任务

WGAN:W指Wasserstein距离

DCGAN:生成器和判别器均为CNN

CycleGAN:有两个生成器和两个判别器

StyleGAN:能融合不同图片的风格不断产生新图片

3DGAN:能将二维图片转换成三维模型

还有:ProGAN、PcGAN

网站:GAN Zoo

BV1qv411571z:迁移学习Transfer Learning

利用数据、任务、模型间的相似性,将训练好的内容应用到新的任务上。这一过程发生在两个领域间:

源域:已有的知识和数据,也就是被迁移的对象

目标域:被赋予“经验”的领域

原理:

卷积神经网络的前几层是在提取图像特征,直到最后的全连接层才进行分类。提取特征的过程很是相似。所以可以将训练好的猫狗分类网络的前几层拿出来直接使用,再用苹果与梨的数据,训练新的全连接层完成分类。

迁移学习不是具体的模型,更像是解题思路,我们用迁移学习的原因:

目标领域的数据太少,需要标注数据更多的源域的帮助;

有时是为了节约训练时间;

有时是为了实现个性化应用;

应用:

语聊匮乏之间的小语种之间的翻译

缺乏标注的医疗影像数据识别

面向不同领域快速部署对话系统

之前见过的transformer、Bert这类预训练语言模型微调后可以完成不同的任务。正是迁移学习在NLB领域的应用

教育学和心理学中的迁移:

迁移的种类:

正迁移与负迁移,顺向迁移与逆向迁移,特殊迁移与一般迁移,现代认知心理学的分类

影响学习迁移的因素:

1.学习材料的共同要素

学习迁移的效果在一定程度上取决于学习材料之间的共同因素

2.对学习材料的概括水平

两种学习材料之间的共同因素固然是产生迁移的必要条件,但不是充分的条件

3.教材的组织结构和学生的认知结构

教材是知识的基本结构,可以简化知识,给学生提供便利与获得知识的途径有利于迁移

4.学习的指导

教育实践证明由教师育心提供正确答案,不如在教师的指导下通过学生自己发现问题解决问题,效果好

促进迁移的教学原则

1.科学组织教学内容

2.合理组织教学过程

网友评论:

迁移学习实际上是移植了其他的卷积神经网络上的权重参数,如imagenet生成了几百万张图片训练后的参数,VGG16,然后自己再训练自己写的全连接层上的参数,两者结合起来。就像站在巨人的肩膀上。

KnowingAI知智:这只是其中的一种实现方式。迁移学习不一定发生在深度网络上,也不一定只是迁移参数(还有改变样本权重、迁移关系等)。中文内容可以参阅杨强老师的相关论文演讲或是王晋东同学的迁移学习简明手册。

坂柳有栖Official:除了全连接层,我怎么记得有训练其他层?还是我记错了?

LaurusAway:这个应该是finetuning吧,属于迁移学习

BV1c5411g7or:博弈论

零和博弈:如下棋

非零和博弈:如股票

囚徒困境:

假设双方无法信任,从个人理性角度判断,出卖对方是最好的选择,这导致囚犯整体刑期最大

纳什均衡:

两个或多个参与者的非合作博弈中,假设每个参与者都知道其他参与者的策略,最初对自己最有利的选择后形成的策略组合。

在囚徒困境中两个人互不信任,因此指认对方自己获益最大最终导致双方相互背叛形成纳什均衡。

svm与纳什均衡的概念有异曲同工之处:

为找到最佳的划分方式,svm需要在分类样本中找到一个最均衡的位置

博弈机器学习的论文:

从这篇论文入手,根据他们的参考文献进行拓展阅读:[On similarities between inference in game theory and machine learning. Journal of Artificial Intelligence Research, 33, 259-283.]

刘教授的文章https://www.msra.cn/zh-cn/news/features/machine-learning-20160808

Annie Liang的一些工作https://www.anniehliang.com/

论文地址:https://www.jair.org/index.php/jair/article/view/10574/25304

博弈论课程推荐:

耶鲁大学公开课

BV1ub4y1Z7aM:联邦学习Federated Learning

联邦学习存在的目标是解决数据的协作和隐私问题,作为一个较新的概念,联邦学习仍在构建发展中

分类:

横向联邦学习=特征对齐的联邦学习:

参与者们业务相似、数据的特征重叠多、样本重叠少,比如不同地区两家银行通过上传参数在服务器种聚合更新模型,再将最新的参数下放完成模型效果的提升;

纵向联邦学习=样本对齐的联邦学习:

特征重叠少、样本重叠多,如同一地区银行和电商,需要加密算法,找相同样本后联合它们的特征进行学习;

联邦迁移学习:

如果样本和特征重合都不多,希望利用数据提升模型能力,需要将参与者的模型和数据迁移到同一空间中运算

本质就是个封装数据的类分布式学习,重点是高效不破坏数据的加密算法,传统机器学习的公式变形拟合方向的话出高质量成果概率不大

联邦学习和神经网络的关系:

联邦学习就是一种分布式的机器学习,机器学习会用到数据训练模型,而训练模型就需要用神经网络来进行训练

BV1Fw411f7G2:AutoML自动机器学习

一个好用的 AutoML 平台会覆盖机器学习的所有步骤,你甚至可在完全不理解 AutoML 是什么、没有任何编程基础的情况下使用它们

automl实现工具:

autogluon

autoML的论文:

Google的 Quoc Le

BV1ew411o7kB:梯度下降Gradient Descent

损失函数=误差函数:要让Loss不断变小

类似于盲人下山法:

盲人下山法

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/269718
推荐阅读
相关标签