手搓GPT系列之 - 通过理解LSTM的反向传播过程,理解LSTM解决梯度消失的原理 - 逐条解释LSTM创始论文全部推导公式,配超多图帮助理解(下篇) 本文继续就Sepp Hochreiter 1997年的开山大作 Long Short-term Memory 中APPENDIX A.1和A.2所载的数学推导过程进行详细解读。希望可以帮助大家理解了这个推导过程,进而能顺利理解为什么那几个门的设置可以解决RNN里的梯度消失和梯度爆炸的问题。中篇介绍了各个权重的误差更新算法。本篇将继续说明梯度信息在LSTM的记忆单元中经过一定的时间步之后如何变化,并由此证明LSTM可实现CEC(Constant Error Carousel)。本篇为整个文章最关键一篇。
手搓GPT系列之 - 通过理解LSTM的反向传播过程,理解LSTM解决梯度消失的原理 - 逐条解释LSTM创始论文全部推导公式,配超多图帮助理解(中篇) 本文承接上篇,继续就Sepp Hochreiter 1997年的开山大作 Long Short-term Memory 中APPENDIX A.1和A.2所载的数学推导过程进行详细解读。希望可以帮助大家理解了这个推导过程,进而能顺利理解为什么那几个门的设置可以解决RNN里的梯度消失和梯度爆炸的问题。
关闭nginx容器之后,再次启动,原来宿主机映射的端口失效的问题解决 最近用containerd在部署nginx的时候,发生了一个比较诡异的问题,当笔者通过nerdctl stop把原来的nginx容器关闭,然后再通过nerdctl run启动一个新的nginx容器的时候,把原来的宿主机端口映射到这个新容器上,但新启动的容器却无法通过映射的端口收到任何请求,而且新容器启动顺利,没有任何报错。这个问题的原因十分隐蔽,而且一开始让人无从下手。本文介绍了这个问题的解决办法,为被该问题困扰的同学提供一个脱困的思路。
使用nginx提供https端点,实现不修改浏览器地址(不触发重定向)转发网络流量,附生成自签ssl证书最简单的方法(2个命令) 近日笔者需要实现一个网络流量转发的需求。要求很简单:将浏览器的请求转发到一个指定的域名,需要提供一个https端口并且把http端口转发到https端口。由于笔者对nginx的认知有限,因此磕磕绊绊研究了一阵,将结果写出来,以供其他有类似需求的同学参考对照。
k8s + containerd下,容器启动时报错 failed to create shim task, incompatible CNI versions 问题解决 详实介绍在containerd环境中运行容器遇到错误Incompatible CNI versions。错误消息incompatible CNI versions; config is \"1.0.0\", plugin supports [\"0.1.0\" \"0.2.0\" \"0.3.0\" \"0.3.1\" \"0.4.0\"]时的解决办法。帮助遇到相同问题的读者解决此类问题。
手搓GPT系列之 - 通过理解LSTM的反向传播过程,理解LSTM解决梯度消失的原理 - 逐条解释LSTM创始论文全部推导公式,配超多图帮助理解(上篇) 说起RNN和LSTM,就绕不过Sepp Hochreiter 1997年的开山大作 Long Short-term Memory。奈何这篇文章写的实在是太劝退,网上很多介绍LSTM的文章都对这个模型反向传播的部分避重就轻,更少见(反正我没找到)有人解析APPENDIX A.1和A.2所写的详细推导过程。笔者向来做事讲究个从心,这次不知道哪根弦打错竟然头铁硬刚这个推导过程。本文逐条参照原论文中的公式,记录整个推导过程的思路和笔者的理解,并配上超多图帮助理解。
手搓GPT系列之 - chatgpt + langchain 实现一个书本解读机器人 本文将给大家介绍一款基于大模型的应用框架:langchain。langchain集成了做一个基于大模型应用所需的一切。熟悉java web应用的同学们应该十分熟悉spring boot框架,我们可以说langchain 就是大语言模型应用方面的spring boot。本文将为大语言模型应用的开发者们提供一个基于langchain的示例项目,便于大家进一步提升prompt engineering的效能。
手搓GPT系列之 - RNN网络模型与隐马尔科夫链(HMC)模型的表达力(expressivity)关系 RNN模型和HMC模型,都是适合处理时间序列的模型。这两者在结构上具有一定的相似性。笔者在学习这两个模型的时候,对他们之间的关系非常感兴趣,但是却一度十分困惑:它们之间是否存在可互相表示的关系?哪一个的通用性更强?答案其实大家心里都有了吧,只是缺了一个严格的证明。本文将为机器学习算法领域的爱好者证明一个大家都知道的事情:可以用经典RNN网络模型来表达隐马尔科夫链模型。
手搓GPT系列之 - 后向传播,计算图,目标函数 本问将介绍神经网络中后向传播的机制和基本原理。详细解析在后向传播过程中,计算图的生成,以及如何在计算图中应用链式规则实现自动求导的机制,并介绍了价值函数(又称损失函数)在后向传播过程中的作用。适合初步了解神经网络基本概念的同学进一步理解神经网络参数优化的过程。
手搓GPT系列之 - Logistic Regression模型,Softmax模型的损失函数与CrossEntropyLoss的关系 笔者在学习各种分类模型和损失函数的时候发现了一个问题,类似于Logistic Regression模型和Softmax模型,目标函数都是根据最大似然公式推出来的,但是在使用pytorch进行编码的时候,却发现根本就没有提供softmax之类的损失函数,而提供了CrossEntropyLoss,MSELoss之类的。本文将介绍我们在学习LR模型和Softmax模型的时候接触到的目标函数,与实际应用中的经常用到的CrossEntropyLoss函数之间的关系。
手搓GPT系列之 - 神经网络模型基础知识,教你5分钟实现一个手写体识别神经网络 2023年了nlp还存不存在我不知道,数学家的思想真的有意思。介绍了线性回归分类器和softmax分类器,并证明了softmax分类器是由线性回归分类器并联而成的。本文将介绍以LR模型为基础的另一个分类器:神经网络。我们将介绍神经网络模型中的一些核心概念和训练过程,并介绍神经网络模型与LR模型及softmax模型的关系。可以帮助机器学习领域的初学者对神经网络模型建立一个基本的认知。
手搓GPT系列之 - 线性回归与softmax分类器,从理论到实战 NLP还存不存在我不知道,但数学之美一直都在。线性回归是机器学习中非常重要的一个砖块,我们将介绍线性回归和softmax分类器的数学原理及其内在关联。既是对自己学习成果的一种记录,如果能够对别人有所帮助那真是让人开心。
手搓GPT系列之 - 如何理解logit函数 如何理解logit公式?为什么叫这个名字呢?有些人说logit公式就是神经网络中未经过连接函数(一般为sigmoid函数)处理过的函数。这些说法也不错,不过还没到点上,我们在这里说明一下为什么这个公式叫logit公式。
手搓GPT系列之:单词向量(word vector)初体验 单词向量,指的是把每个单词表示为一个高维的实数向量(通常为100维到300维之间)。这些向量用来对词义(word meaning)进行建模。我们可以通过对比不同单词之间单词向量的距离,来表示这些单词在训练语料中的关系。
Resilience4j系列 - 使用Resilience4j-circuitbreaker优雅实现服务降级 通过实战的方式,逐步介绍在springboot项目中集成resilience4j-circuitbreaker的详细步骤。