个人学习记录博客
Generative Adversarial Network GAN学习:李宏毅:GAN GAN的输入包含一个随机变量 z,该变量从一个简单的分布(通常是正态分布)中采样。随机变量 z 的引入使得生成器具有更强的创造性,从而能够生成多样化的输出。Unconditional generation输入:一个低维向量 z,来自正态分布。输出:一个高维向量 y,通常表示为一张图像,具有复杂的分布。输入不同的 z 将导致输出的 y 不相同。Dicriminator 判别器是一个 neural network输入:一张图像输出:一个数值标量,数值越大,代表图像越真实,越小代表图像越假。Generator 和 Discriminator 是相互学习一起进化的。Algorithmgenerator 和 discriminator 是两个网络,首先需要初始化 generator 和 discriminator 两个网络,然后在每个训练步:Step1: 固定 generator G,更新 discriminator D。从正态分布中采样一些向量,作为 Generator 的输入,得到输出图像从真实数据集
学习:李宏毅:自注意力机制和Transformer1 EncoderEncoder 的主要作用是接收一系列输入向量,并输出对应的向量序列。可以使用 RNN 或 CNN 实现编码器,但在 Transformer 中,采用了自注意力机制(Self-Attention)来实现: Encoder 由多个相同的块(block)组成,每个块内部包含多个层(layer),其结构如下:每个块:input vector seq → self-attention → fully connected network → output。每个块的输出作为下一个块的输入,最终生成的输出为一个向量序列。 Transformer 的设计:在上面的结构基础上加入了 residual 和 normalization: 最终的 encoder 架构:2 Decoder2.1 自回归解码 Autoregressive(AT)Decoder 首先接收一个特殊符号,表示开始(start token),然后根据这个符号输出与词汇表大小相同的向量。选择概率最大的词作为最终输出,同时将其作为 Decoder 的新输入。 encode
1 输入Self-Attention 的输入一个向量序列,可以是原始输入或者某个隐藏层的输出。2 输出向量的产生对于输入向量(例如 $a^1$),需要计算其他向量与 $a^1$ 的关联度。关联度的计算通常通过 点乘 实现:对于给定的输入向量 $a^1$ ,需要先计算 $q^1$ 值:$a^1 = W^qa^1$,其他向量 $a^i$ 计算 $k^i$ 值:$k^i = W^ka^i$,之后和 $q^1$ 点乘,得到 $\alpha_{1,i}$,再进行 soft-max:$\alpha_{1,i}' = \exp(\alpha_{1,i})/\sum_j \exp(\alpha_{1,j})$,作为最终的 attention score: 根据 attention score,和每个输入的 value 值相乘(加权求和)得到最终的输出向量:$b^1 = \sum_i \alpha_{1,i}'v^i$ 这个输出包含了输入序列中各个元素的信息,经过加权后反映了与查询相关的重要性。计算 $b^2$,同上:3 矩阵乘法角度理解从矩阵乘法的角度来看: $W^q$,$W^k$,$W^v$ 是需
标题:Object Detection in 20 Years: A Survey发表时间:2019年pdf 链接:https://arxiv.org/pdf/1905.05055v2这篇文章回顾了400多篇关于目标检测的论文(从上个世纪九十年代到2019年),涵盖了许多话题。关键词:目标检测(Object detection)、计算机视(Computer vision)、深度学习(Deep learning)、卷积神经网络(Convolutional neural networks)、技术进步。1 介绍应用的角度:object detection 可以分为 "general object detection" 和 "detection application"。general object detection:探索不同的方法检测不同的物体以模拟人类的视觉和认知。detection appliction:探索特定应用场景,如:行人检测、人脸检测、文本检测 等。第二个部介绍目标检测20年的进化历史。第三部分介绍目标检测的一些加速技术。第四部分介绍近三年来一些最先进的检测方法(2019)。
前不久,我使用wordpress搭建博客,遇到latex公式无法显示的问题,无论下载哪个插件,$公式$显示的都是有问题的,加上wp不是原生支持md的,于是后面更换博客框架为typecho。在使用typecho的时候,使用 mathjax 库,参照网站给出的脚本加入到 header.php 中,在挂节点的时候latex公式能正常显示,但是正常访问还是没办法加载,于是在网上查找本地部署 mathjax的方法,尝试了很多方法,都失败了,最后在 这个博客找到了正确的答案。我把 mathjax的源代码中的 es5 中的文件放入 /usr/plugins/mathjax/文件目录下面,然后在 header.php 文件的 </head> 前面加入下面的代码<script> MathJax = { tex: { inlineMath: [['[latex]', '[/latex]'], ['\\(', '\\)']], inlineMath: [['$', '$'], ['\\(', '\\)']], displayMath: [['[
HCP Diffusion 官方文档1.01 loRA讲解视频:LoRA explained (and a bit about precision and quantization)关键:秩分解 + 对低秩矩阵进行微调训练$$ W_0 + \Delta W = W_0 + BAW_0 + \Delta W = W_0 + BA $$$W_0$ 是保持不变的原始模型权重A 和 B 是低秩矩阵:$B\in \mathbb{R}^{d\times r},A\in \mathbb{R}^{r\times k},rank\ r\ll \min(d,k)$ 有:$BA = \Delta W$初始化:$B$ 初始化为零矩阵,$A$ 的权重从正态分布中采样在 transformer 中,它通常应用于 attention weights前向传播:输入数据同时通过原始模型和低秩矩阵进行计算。结果相加,得到最终输出。$$ h = W_0 x + \Delta Wx = W_0 x + BAx $$def regular_forward_matmul(x, W): h = x @ w return h
Stable Models 阅读摘选稳定扩散的关键要素从大方向来看,稳定扩散可以分解三个重要元素:感知图像压缩:先将图像透过感知图像编码器&解码器(VQ-VAE [12]和VQ-GAN [13]风格)降低解析度后,直接在降解析度的图像上,或者说特征图上,进行 DDPM 的训练。潜在扩散模型:基本上就是 DDPM 的描述方法,不过这个 DM 在潜在空间中运行,因此论文称为潜在扩散模型。调理机制:SD论文内部设计了利用领域特定模型抽取语义信息后,再使用注意力机制[14]与究竟抽取图像的潜在结合。可以达到很泛用又有效的调理。稳定扩散架构与可运行。(资料来源)结合这三者就是构成Stable Diffusion的核心思想,感知图像压缩后的潜在扩散模型让Stable Diffusion可以高效地生成高解析度图像。条件机制则让Stable Diffusion可以具备良好的可控制性,完成各个式各样结合其他描述的生成任务。感知图像压缩一般简单的自动编码器虽然很容易重建,也可以有效地压缩潜在的大小,但是解码器重建的图形实际上经常是有一些模糊的,甚至有一些不真实的工件产生。常见自动编码器的概念。(资料来源)
Diffusion Model 是如何制作的?生成图片的第一步: 生成 一个都是杂讯的图片,生成图片的大小和目标图片大小一致。然后进行 denoise,就是过滤掉先前图片中的部分杂讯不断进行 denoise,最后得到一张清晰的图片每一步 denoise 都有一个编号,越之后的步骤的 denoise 的编号越小从杂讯到图片的过程称为 reverse process。跟雕塑一样denoise 的模型,除了需要输入一张图片之外,还要一个代表当前图片 noise 的程度的输入。Denoise 模组内部实际做的事情denoise 模组内部有一个 noise predicter,预测图片中的杂讯长什么样,需要输入一张图片和图片的 noise 程度,然后输出一张输入图片的杂讯,减去输入图片,达到 denoise 的效果直接产生一张更清晰的图片比产生一种 noise 图片更难,所以现在大部分模型都会选择先产生一张 noise 的图片如何训练 noise predictor?对图片不断加 noise把某次加noise后的图片作为输入,对应的 noise 就是它的输出Text-to-Image训练 文字-
进程同步进程具有异步性的特征。异步性:各并发执行的进程以各自独立的、不可预知的速度向前推进。例子:进程通信——管道通信读进程和写进程并发地运行,由于并发必然导致异步性,因此“写数据”和“读数据”两个操作执行的先后顺序是不确定的。而实际应用中,又必然按照“写数据 => 读数据”的顺序来执行的。所以需要解决这种异步问题。同步,亦称 直接制约关系,它是指为完成某种任务而建立的两个或多个进程,这些进程因为需要在某些位置上协调它们的工作次序而产生的制约关系。进程间的直接制约关系就是源于它们之间的相互合作。进程互斥进程的 “并发”需要 “共享”的支持。各个并发执行的进程不可避免的需要共享一些系统资源(如内存,又如打印机、摄像头这样的 I/O 设备)两种资源共享方式:互斥共享方式系统中的某些资源,虽然可以提供给多个进程使用,但一个时间段内只允许一个进程访问该资源。同时共享方式系统中的某些资源,允许一个时间段内由多个进程“同时”对它们进行访问一个时间段内只允许一个进程使用 的资源称为 临界资源。许多物理设备(比如摄像头、打印机)都属于 临界资源。此外,很多变量、数据、内存缓冲区等都属于临界资源。
监督学习(分类与回归,感知机、逻辑回归;神经网络、反向传播、CNN、RNN);非监督学习(K-means);强化学习(MDP定义、状态值函数和动作值函数、Q学习及SARSA、DQN)决策树例子:打网球例如 , 分类结果:No决策树概念:表示一个函数,该函数将属性值的向量作为输入,并返回一个“决策”(单个输出值)通过执行一系列测试来做出决策。节点:用属性标记边:用属性值标记叶子:用决策标记决策树表示:决策树表示属性值约束的合取的析取上例中的决策树:(Outlook = Sunny ∧ Humidity = Normal) ∨ (Outlook = Overcast) ∨ (Outlook = Rain ∧ Wind = Weak)任何布尔函数都可以写成决策树通过把真值表中的每一行对应树中的路径通常可以使用小树,然后,有些函数需要指数大的树决策树学习:目标:找到一棵与训练样例一致的小树思路:选择“最重要”属性作为(子)树的根信息论我们将使用 信息增益(information gain)的概念,它是用信息论的基本概念——熵(entropy)来定义的熵,是对随机变量不确定性的度量;信息的获取对
caroline
计算机专业学生