LAMDA面试准备(2024-05-23)

  • 有没有学习过机器学习,提问了 FP-Growth 相比 Apriori 的优点
    • 1. 更高的效率和更少的计算量(时间)

      FP-Growth 通过构建和遍历 FP-树 (Frequent Pattern Tree) 来挖掘频繁项集,而不需要像 Apriori 那样生成和测试大量的候选项集。具体来说:

      • 减少候选项集的生成:Apriori 需要生成大量的候选项集并进行多次扫描数据集以计算候选项集的支持度。FP-Growth 通过 FP-树结构直接挖掘频繁项集,避免了候选项集的生成过程。
      • 单次数据扫描:FP-Growth 只需要两次扫描数据集:第一次扫描用于计算各项的频次,第二次扫描用于构建 FP-树。而 Apriori 在每次生成新的候选项集时都需要重新扫描数据集。
    • 2. 更低的内存消耗(空间)

      FP-Growth 通过 FP-树结构紧凑地表示数据集中的所有项和它们之间的关联关系,从而减少了内存消耗:

      • 压缩数据集:FP-树能够有效地压缩数据集,将共享的频繁项组合在一起,以树的形式存储,从而减少了冗余数据。
      • 减少存储空间:由于 FP-树紧凑地存储了所有频繁项集,所需的存储空间远小于 Apriori 算法中需要存储的所有候选项集。【适合大数据集
  • 调模型怎么 debug
    • 1. 数据预处理和输入检查

      • 数据正确性:确保数据预处理步骤正确无误,包括数据归一化、标准化、缺失值处理等。
      • 数据分布:检查训练数据和测试数据的分布是否一致,是否存在数据泄漏。
      • 数据可视化:使用可视化工具检查数据输入是否符合预期(如图像、文本等)。
    • 2. 模型架构和实现验证

      • 逐层检查:逐层检查模型架构,确保每层的输入和输出维度正确。
      • 单元测试:对模型的各个组件(如卷积层、全连接层等)进行单元测试,确保它们的功能正确。
      • 对比基准:将实现与已知正确的基准模型(如官方实现)进行对比,确保实现无误。
    • 3. 超参数和训练过程调试

      • 学习率调整:尝试不同的学习率,观察模型的收敛情况。过高或过低的学习率都会影响模型性能。
      • 批次大小:调整批次大小,观察其对训练速度和模型性能的影响。
      • 正则化:使用正则化技术(如Dropout、L2正则化)防止过拟合,调试其参数。
    • 4. 损失函数和梯度检查

      • 损失曲线:绘制损失函数值随训练迭代次数的变化曲线,观察损失是否正常下降。
      • 梯度检查:检查梯度值是否合理,是否存在梯度爆炸或梯度消失问题。
      • 数值稳定性:确保计算过程中没有数值不稳定的问题,如NaN或Inf值。
    • 5. 输出和中间结果检查

      • 输出可视化:可视化模型的输出,检查是否符合预期。
      • 中间激活值:提取和检查中间层的激活值,确保模型在各层的行为符合预期。
      • 错误案例分析:分析模型在错误样本上的表现,找出模型的薄弱环节。
    • 6. 调试工具和框架

      • 调试器:使用调试工具(如TensorFlow的tfdbg或PyTorch的pdb)进行逐步调试。
      • 日志记录:记录训练过程中的重要信息(如损失值、精度等),方便后续分析。
      • Profiler:使用性能分析工具(如TensorFlow的Profiler或PyTorch的torch.utils.bottleneck)检测性能瓶颈。
    • 7. 迁移学习和微调

      • 预训练模型:使用预训练模型作为起点,通过微调减少训练时间和数据需求。
      • 逐层微调:逐层解冻模型进行微调,从高层特征到低层特征逐步调整模型。
    • 8. 集成学习和模型对比

      • 集成方法:使用集成方法(如Bagging、Boosting)提高模型性能。
      • 模型对比:对比不同模型的性能,选择最优模型进行部署。
    • 9. 合作与咨询

      • 代码审查:与团队成员进行代码审查,寻找潜在问题。
      • 社区支持:利用开源社区资源(如论坛、讨论组)寻求帮助和建议。
  •  机器学习中FP、TP是什么?
    • 混淆矩阵

      • TP(True Positive,真正例)

        • 定义:模型预测为正类(Positive),且实际也是正类。
        • 示例:在癌症检测中,模型预测某人患有癌症,且实际该人确实患有癌症。
      • FP(False Positive,假正例)

        • 定义:模型预测为正类,但实际是负类。
        • 示例:在癌症检测中,模型预测某人患有癌症,但实际该人没有患癌症。这种情况也被称为“误报”。
      • TN(True Negative,真负例)

        • 定义:模型预测为负类(Negative),且实际也是负类。
        • 示例:在癌症检测中,模型预测某人没有癌症,且实际该人确实没有癌症。
      • FN(False Negative,假负例)

        • 定义:模型预测为负类,但实际是正类。
        • 示例:在癌症检测中,模型预测某人没有癌症,但实际该人患有癌症。这种情况也被称为“漏报”。
      • T/F为判断正误,P/N为模型预测



  • 线代中的矩阵的秩和矩阵的关系?

    • 1. 秩的定义

      • 行秩(Row Rank):矩阵中线性无关的行向量的最大数目。
      • 列秩(Column Rank):矩阵中线性无关的列向量的最大数目。
      • 对于一个矩阵 A,行秩和列秩是相等的,这个共同的值就称为矩阵的秩。

    • 2. 秩与线性无关

      • 矩阵的秩表示矩阵中最大线性无关向量的数量。
      • 如果一个矩阵的秩等于其行数,则行向量线性无关。
      • 如果一个矩阵的秩等于其列数,则列向量线性无关。



  • 讲一讲线代中的矩阵的特征值

  • 了解科研前瞻用什么工具
  • 有哪几种常见的神经网络
    • MLP,CNN,RNN,AutoEncoder,GAN,GNN,Transformer...
  • RNN有哪些常见的问题?如何解决这些问题
    • 常见问题
      • 梯度消失和梯度爆炸问题

        • 梯度消失:在反向传播过程中,梯度逐层缩小,导致前面的层几乎无法更新。
        • 梯度爆炸:在反向传播过程中,梯度逐层增大,导致模型参数变得非常大,训练不稳定
      • 长期依赖问题

        • RNN 在处理长序列数据时,难以捕捉远距离的依赖关系,即早期输入信息对后续输出的影响较弱。
      • 计算效率

        • RNN 的序列处理是逐步进行的,不能并行处理,导致训练时间较长,特别是在处理长序列时。
      • 训练过程不稳定

        • 由于梯度问题和参数初始化问题,RNN 的训练过程可能会非常不稳定。
    • 改进方法
      • 长短期记忆网络 (Long Short-Term Memory, LSTM) 和门控循环单元 (Gated Recurrent Unit, GRU)

        • LSTM 和 GRU 是两种改进的 RNN 架构,通过引入门控机制,能够有效地解决梯度消失和梯度爆炸问题,并捕捉长期依赖关系。
        • LSTM:通过引入输入门、遗忘门和输出门来控制信息的流动。
        • GRU:类似于 LSTM,但结构更简单,仅包含更新门和重置门。
      • 梯度裁剪 (Gradient Clipping)

        • 为了解决梯度爆炸问题,可以设置一个阈值,当梯度超过这个阈值时,将其裁剪到阈值范围内。
        • 这种方法可以防止梯度值变得过大,导致训练不稳定。
      • 使用更高级的优化算法

        • 使用自适应学习率的优化算法,如 Adam、RMSprop 等,可以在一定程度上缓解梯度消失和梯度爆炸问题。
      • 序列的截断反向传播 (Truncated Backpropagation Through Time, TBPTT)

        • 对于非常长的序列,可以将序列分割成较短的子序列,分别进行反向传播。这种方法能够在不影响捕捉长期依赖的前提下,提高计算效率。
      • 正则化技术

        • 使用正则化技术(如 Dropout、权重惩罚等)可以提高 RNN 的泛化能力,减轻过拟合问题。
        • Dropout:在训练过程中随机丢弃一部分神经元,防止过拟合。
      • 使用预训练模型和迁移学习

        • 使用预训练模型(如 BERT、GPT 等)和迁移学习技术,可以充分利用已有的大规模数据和训练好的模型参数,提高训练效率和模型性能。
      • 引入注意力机制 (Attention Mechanism)

        • 注意力机制可以动态地为输入序列中的不同部分分配权重,从而更好地捕捉长距离依赖关系。
        • 自注意力 (Self-Attention):在变换器 (Transformer) 中得到广泛应用,通过计算输入序列内部各个位置之间的注意力权重,提升序列建模能力。
      • 双向 RNN (Bidirectional RNN)

        • 双向 RNN 通过在正向和反向两个方向上处理序列数据,能够更全面地捕捉序列中的依赖关系。
        • 双向 LSTM 和 GRU:结合双向处理和门控机制,进一步增强对长序列的建模能力。
  • 中心极限定理
    • 独立同分布随机变量的均值分布在样本数量趋于无穷大时接近于正态分布的性质。
  • 等价类的定义



参考:(视频超好)

【五分钟机器学习】随机森林(RandomForest):看我以弱搏强_哔哩哔哩_bilibili

【五分钟机器学习】Adaboost:前人栽树后人乘凉_哔哩哔哩_bilibili

 随机森林:(这个画风很爱哈哈哈,已投币orz)

以弱博强(整个模型是由多个弱监督模型组成),bagging

 

xgboost:(自适应增强算法,前人栽树、后人乘凉,错题本)


寄了寄了寄了,,,

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/330629.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IDEA 将多个微服务Springboot项目Application启动类添加到services标签,统一启动、关闭服务

IDEA 将多个微服务Springboot项目Application启动类添加到services标签,统一启动、关闭服务 首先在Views > Tool Windows > Services 添加services窗口 点击services窗口,首次需要添加配置类型,我们选择Springboot 默认按照运行状态分…

LiveGBS流媒体平台GB/T28181用户手册-用户管理:添加用户、编辑、关联通道、搜索、重置密码

LiveGBS流媒体平台GB/T28181用户手册-用户管理:添加用户、编辑、关联通道、搜索、重置密码 1、用户管理1.1、添加用户1.2、编辑用户1.3、关联通道1.4、重置密码1.5、搜索1.6、删除 2、搭建GB28181视频直播平台 1、用户管理 1.1、添加用户 添加用户,可以配置登陆用户…

Node.js —— 前后端的身份认证 之用 express 实现 JWT 身份认证

JWT的认识 什么是 JWT JWT(英文全称:JSON Web Token)是目前最流行的跨域认证解决方案。 JWT 的工作原理 总结:用户的信息通过 Token 字符串的形式,保存在客户端浏览器中。服务器通过还原 Token 字符串的形式来认证用…

如何彻底搞懂装饰器(Decorator)设计模式?

对于任何一个软件系统而言,往现有对象中添加新功能是一种不可避免的实现场景,但这一实现过程对现有系统的影响可大可小。从架构设计上讲,我们也知道存在一个开闭原则(Open-Closed Principle,OCP)&#xff0…

抖音极速版:抖音轻量精简版本,新人享大福利

和快手一样,抖音也有自己的极速版,可视作抖音的轻量精简版,更专注于刷视频看广告赚钱,收益比抖音要高,可玩性更佳。 抖音极速版简介 抖音极速版是一个提供短视频创业和收益任务的平台,用户可以通过观看广…

Spring系列-03-BeanFactory和Application接口和相关实现

BeanFactory BeanFactory和它的子接口们 BeanFactory 接口的所有子接口, 如下图 BeanFactory(根容器)-掌握 BeanFactory是根容器 The root interface for accessing a Spring bean container. This is the basic client view of a bean container; further interfaces such …

【Linux网络】端口及UDP

文章目录 1.再看四层2.端口号2.1引入linux端口号和进程pid的区别端口号是如何生成的传输层有了pid还设置端口号端口号划分 2.2问题2.3netstat 3.UDP协议3.0每学一个协议 都要讨论一下问题3.1UDP协议3.2谈udp/tcp实际上是在讨论什么? 1.再看四层 2.端口号 端口号(Po…

sw套合样条曲线

套合样条曲线,可以变成一条曲线,然后可以进行分段

吉林大学软件工程易错题

1.【单选题】软件工程方法是( )。 A、为开发软件提供技术上的解决方法 (软件工程方法 ) B、为支持软件开发、维护、管理而研制的计算机程序系统(软件工程工具) …

码蹄集部分题目(2024OJ赛16期;单调栈集训+差分集训)

&#x1f9c0;&#x1f9c0;&#x1f9c0;单调栈集训 &#x1f96a;单调栈 单调递增栈伪代码&#xff1a; stack<int> st; for(遍历数组) {while(栈不为空&&栈顶元素大于当前元素)//单调递减栈就是把后方判断条件变为小于等于即可{栈顶元素出栈;//同时进行其他…

react antd中transfer穿梭框组件中清除搜索框内容

如图&#xff1a;需要清除search搜索框内容 antd的transfer穿梭框组件未提供入口修改input框的值。 2种方法修改。 1、直接操作dom元素设置值&#xff08;不推荐&#xff09; useEffect(() > {const searchInput document.querySelector(.ant-transfer-list-search input)…

Proteus仿真小技巧(隔空连线)

用了好几天Proteus了.总结一下使用的小技巧. 目录 一.隔空连线 1.打开添加网络标号 2.输入网络标号 二.常用元件 三.运行仿真 四.总结 一.隔空连线 引出一条线,并在末尾点一下. 1.打开添加网络标号 选择添加网络标号, 也可以先点击按钮,再去选择线(注意不要点端口) 2.…

前端绘制流程节点数据

根据数据结构和节点的层级、子节点id&#xff0c;前端自己绘制节点位置和关联关系、指向、已完成节点等 <template><div><div>通过后端节点和层级&#xff0c;绘制出节点以及关联关系等</div><div class"container" ref"container&…

【Numpy】深入解析numpy.mgrid()函数

numpy.mgrid()&#xff1a;多维网格生成与数值计算的利器 &#x1f308; 欢迎莅临我的个人主页&#x1f448;这里是我深耕Python编程、机器学习和自然语言处理&#xff08;NLP&#xff09;领域&#xff0c;并乐于分享知识与经验的小天地&#xff01;&#x1f387; &#x1f393…

张大哥笔记:改变自己,才是改变一切的开始

人往往有一种惰性&#xff0c;总喜欢把希望寄托于别人&#xff01;比如会将注意力投向外部因素如环境、他人或命运从而期望为我们的生活带来突破和转机。但现实往往是残酷的&#xff0c;不会发生任何改变的&#xff01;真正的改变来自于自己&#xff0c;自我革新才是改变整个局…

开源实用!猫抓媒体嗅探浏览器插件

CatCatch&#xff1a;网络资源&#xff0c;一触即发 - 精选真开源&#xff0c;释放新价值。 概览 CatCatch是一个专为浏览器设计的资源嗅探扩展&#xff0c;旨在帮助用户轻松捕获和分析网页中的各种资源。无论是视频、音频还是其他类型的文件&#xff0c;猫爪都能提供直观的界…

AI - 各类AI针对Excel分析对比

一个水果销量表&#xff0c;Excel包含多个年份sheet&#xff0c;需要提取某个品种的水果每年的销量&#xff0c;看看几个AI的分析结果吧 1、文心一言3.5&#xff08;不支持Excel&#xff09; 不支持上传Excel文件 2、 通义千问2.5&#xff08;完成★&#xff09; 顺利完成…

虚拟机网络设置为桥接模式后未显示网络

本方法为&#xff0c;VMware配置正确&#xff0c;但在尝试其他办法后未能成功解决的人提供一种方法 本机的虚拟机使用NAT模式正常使用 但是使用桥接模式后重启&#xff0c;未发现虚拟机内网络设置,详见下图&#xff1a; 使用 ifconfig 查看网络详情 发现没有ens33接口 查看硬…

kubectl

陈述式资源管理方法 kubernetes 集群管理集群资源的唯一入口是通过相应的方法调用apiserver的接口 kubectl 是官方的CLI命令行工具&#xff0c;用于与apiserver进行通信&#xff0c;将用户在命令行输入的命令&#xff0c;组织转换成apiserver能识别的信息&#xff0c;进而实现…

当面试官问出“Unsafe”类时,我就知道这场面试废了,祖坟都能给你问出来!

一、写在开头 依稀记得多年以前的一场面试中&#xff0c;面试官从Java并发编程问到了锁&#xff0c;从锁问到了原子性&#xff0c;从原子性问到了Atomic类库&#xff08;对着JUC包进行了刨根问底&#xff09;&#xff0c;从Atomic问到了CAS算法&#xff0c;紧接着又有追问到了…