UMBRELLA

未雨绸缪,举重若轻

反向传播

当我们构建一个机器学习模型,例如神经网络,我们需要告诉模型如何根据输入的数据得到正确的输出。这个过程通常涉及到向前传播(或者说前向传播):输入数据进入模型的输入层,然后经过一系列的数学运算和变换,最终得到输出结果。然而,仅仅向前传播是不够的。因为我们不仅想知道输出是什么,更想知道如果输入稍微改变一下,输出会如何变化。就需要反向传播发挥作用了。简单来说,反向传播就是一种计算误差的方法,它通过比较模型的输出结果和真实结果之间的差异(即误差),来决定如何调整模型的参数(例如权重和偏置项)以便在下一次前向传播时得到更接近真实结果的输出。为什么每个算法模型都有一个反向传播函数呢?因为只有通过反向传播,我们才知道模型在哪方面做得好,哪些方面需要改进。换句话说,反向传播是模型训练过程中不可或缺的一环。它不仅帮助我们评估模型的性能,还指导我们调整模型的参数使模型在未知的数据上表现得更好。想象以下,如果我们有一个模型但是不知道如何调整它的参数,那么无论怎么使用这个模型,它的性能都很难得到提升。而有了反向传播,我们就像有了一双“指南针”,知道该如何引导模型向更好的方向发展。

所以,反向传播是机器学习和深度学习的一项核心技术。它不仅帮助我们构建更强大的模型,还使得我们可以理解和解释模型的决策过程。

阅读全文 »

推荐引擎-逻辑回归

基于逻辑回归模型就是根据用户的行为和喜好,为用户推荐心仪的内容或产品。而基于逻辑回归模型的推荐算法,简单来说,就是利用逻辑回归模型预测用户对物品的特征翻译成机器能懂的语言,预测评分。这个算法分为五个步骤:

  • 数据清洗:把原始数据整理干净,提取出用户的行为和物品的特征。
  • 特征大作战:根据需求和数据特点,设计并提取有效的特征,让用户和物品更立体。
  • 模型训练营:用历史数据训练逻辑回归模型,建立输入和输出的关系。
  • 评分预测期:用训练好的模型预测用户对未知物品的评分或偏好。
  • 推荐生成器:根据预测评分和其他规则,生成个性化的推荐列表。
    阅读全文 »

训练/验证损失

关于训练损失(train Loss)和验证损失(validation Loss),想象你在教一只狗做算术。你有一堆卡片,每张卡片都有一个数学问题,比如“2 + 3 =?”和答案。小狗的任务看着问题,然后找出正确答案。

  • 训练损失:就像你教小狗时,它回答错误的那些问题的数量。你希望这个数字越小越好,因为这意味着小狗在训练时学的越好。
  • 验证损失:就像你在训练一段时间后,拿出一些新的卡片来测试小狗。这些卡片上的问题小狗之前没见过。验证损失就是小狗在这些新问题上回答错误的数量。这个数字也很重要。证明小狗学到的知识是否能够应用到新的问上,也就是它泛化能力如何。

如果你发现小狗在训练时的错误很少(训练损失低)但是在新的问题上的错误很多(验证损失高),那就意味着小狗已经记住了你给它看过的哪些特定问题和答案,而没有真正学会怎么做算术。这就是模型过拟合了,支队训练数据学的很好,但对新的数据就不行了。你的目标是要让小狗在训练和验证时都尽量少犯错误,这样它才能学会做算术,也能应用到新的问题上。

阅读全文 »

PyTorch Lightning 是专业人工智能研究人员和机器学习工程师的深度学习框架。是一个batteries included的深度学习框架,适合需要最大灵活性同时大规模增强性能的专业人工智能研究人员和机器学习工程师。

阅读全文 »

NLP

自然语言处理(NLP):就是轻松教会计算机理解人类的语言,像阅读、回答问题、识别语音这些日常操作,都离不开他。这其中,有几大关键算法功不可没:

  • 词袋模型:像数豆子一样统计每个词出现的次数,虽然不考虑顺序,却能帮计算机快速分类文本情绪。
  • 循环神经网络(RNN):专门对付一连串信息,比如做翻译和预测下一句,只是对长句子力不从心。
  • 长短时记忆网络(LSTM):升级版的RNN,解决了记忆差的问题,擅长学习语言中的长距离关联。
  • 支持向量机(SVM):经典分类器,在区分不同类别文本上有一手。
  • 生成对抗网络(GAN):一边生成文本一边鉴别真伪。用于生成逼真的对话内容
  • 注意力机制:让模型懂得抓重点,像机器翻译和摘要提炼,就用上了这一招。
  • 预训练语言模型:BRET、GPT等明星模型先在海量文本里“修炼”,然后应用于各种场景。
  • Transformer:自注意力机制的核心,编码解码一手抓,翻译和生成任务轻松搞定。
    阅读全文 »

CNN与MLP的区别

CNNMLP的区别:

  • CNN(卷积神经网络):就像一个厉害的画家,它通过扫描局部特征(比如边缘、纹理)来识别图片。特备擅长看图说话,由“局部观察员”卷积层找到关键线索,接着用池化层浓缩信息,最后全连接层整合所有线索判断画中内容类别。CNN的强项在于处理图像和视频这类局部细节丰富的数据。
  • MLP(多层感知机):则仿佛是一位音乐大师,专注于倾听旋律与节奏的全局特征,从而识别音乐风格。MLP在处理文本和声音这类整体模式重要的数据时独具匠心。它的结构就像层层堆叠的乐团,每层神经元都跟前一层相连,共同构建复杂映射关系。总结一下,CNN是图像处理专家,专攻局部特征;MLP则是文本和音频的理解高手,聚焦全局特征。
    阅读全文 »

多模态融合

多模态融合是指将来自不同感知渠道(如图像、文本、语音、视频等)的数据信息整合起来,共同进行分析和理解的过程,传统的多模态融合方法可能无法有效地捕获跨模态之间的依赖关系,而Transformer通过自注意力机制可以灵活地捕捉到不同模态特征间的相关性,并且能够根据不同模态输入的重要性动态调整权重,实现高效的信息交互与融合。简答来说,就是将不同类型的数据“混合搅拌”,从而得到更丰富、更深入的信息。比如,把图片和文字放到一起,让机器自己找联系。在这个过程中,不同模态的数据就像是不同口味的食材,还能快速的烹饪出美味。它通过学习和转换不同模态的数据,让多模态融合变得更加简单、高效。未来,随着技术的进步,多模态融合将在更多领域大放异彩。

阅读全文 »

基于LSTM实现一个股票预测模型

这只是一个简单的例子,并未考虑很多实际问题,,例如特征选择、模型复杂度调整、超参数优化等。在真实环境中,股票价格受到多种因素影响,包括但不限于市场情绪、公司基本面、政策法规等,但纯依赖于历史价格进行预测可能效果有限。此代码并未包含模型验证和预测部分,实际应用中还需要对模型在测试集上的表现进行评估,并用模型对未来数据进行预测。股票预测模型通常是基于机器学习或深度学习技术,通过历史数据(如:开盘价、收盘价、最高价、最低价、交易量等)来预测未来的股价走势。这是一个非常基础的基于LSTM(长短期记忆网络)的股票预测模型实现。

阅读全文 »

指数移动平均

指数移动平均(EMA)就像一个会偏爱新信息的智能计算器,帮你更准确地算出数据变化的趋势。不同于简单的移动平均(SMA),它给最近的数据点更大话语权。每个时间节点上,新的EMA值是由当前数+以前EMA值按神秘权重阿尔法相加得出,这个权重一般在01之间浮动,越靠近现在,数据点的影响力越大。而在深度学习领域,EMA变成超能力助手,专门帮模型“记账”,追踪参数的平均值。训练时它能打造一个平滑版的权重集合,这对某些高级训练战术特管用,比如测试阶段用“影子”模型来稳稳预测。

阅读全文 »

模型压缩与知识蒸馏

模型压缩技术就像就像经验丰富的老师教学生的过程。大而复杂的教师模型已经学到了很多“知识”,包括不仅限于准确预测的能力,还包括对输入数据细微差别的敏感度。学生模型则相对简单,通过模仿教师模型的输出以及中间层特征分布来学习这些知识,这样即使学生模型结构简单、参数少,也能达到接近甚至超越教师模型的表现。模型压缩就像给模型做“断舍离”,它通过剪枝(丢掉不那么重要的参数)、量化(把复杂的数字变简单)、智能结构设计(NAS帮你找最优架构)和模块替换(换上高效的小部件),巧妙的缩小模型体积,还不影响表现力。

知识蒸馏则是师傅带徒弟的好戏。大而强的教师模型传授经验给小而精的学生模型,教会学生模仿自己识别图像、做决策的能力,结果小模型也能接近甚至超越师傅的水平,但体积却迷你的多。为什么这两种技术非常重要呢?

  • 资源效率UP:大大减少计算、存储和传输数据的需求,在手机,物联网设备这些地方超实用。
  • 实时响应GET:压缩后的模型推理速度更快,满足各种实时应用需求。
  • 理解力&适应性PLUS:只是蒸馏可以提炼关键特征,让模型更好解释且能更好应对新情况。
  • 轻松部署无压力:小模型轻轻松松在各种硬件平台上安家落户,尤其适合资源有限的环境。
    阅读全文 »
0%