自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(119)
  • 资源 (14)
  • 收藏
  • 关注

原创 互联网大厂常见面试题目

4.C, C++, python哪种语言程序运行会快一些,为什么, C, C++的区别是什么,函数实现如果都放在头文件中会出现什么问题,如何解决该问题,Static函数在编译的时候和普通函数有什么区别,inline函数呢。1. CPU 的内存结构分为哪几层,分别是用于放什么数据的,如果一个函数里面有全局变量,局部变量和静态变量数据是如何存放的。3.操作系统中的虚拟内存实现机制是什么,如果我申请内存的时候超过实际内存大小会出现什么情况。2.C++多态的实现原理是什么,父类是如何找到子类的虚函数实现的。

2024-04-12 16:31:31 68

原创 深度学习八股文:混合精度训练过程出nan怎么办

前向计算过程中没有nan,loss算完后,乘以scale后导致inf,这时候再往后反向传播出nan了,那在梯度更新的时候就会在梯度更新前进行数值检查,check finite and unscale过程会去检查权重的梯度发现有nan或者inf就会跳过更新,此时就可以调整scale的值,把scale降低,然后跑下一个step的前向。混合精度训练使用较低的数值精度(通常是半精度浮点数,例如FP16)来加速模型训练,但在一些情况下,可能会引发数值不稳定性的问题,导致 NaN 的出现。

2023-11-24 16:02:05 1017

原创 深度学习八股文:模型出nan怎么办

如果以上步骤仍然无法解决问题,可能需要更深入地检查模型的架构、损失函数的定义以及训练数据的特性,以确定是哪一部分引发了 NaN 的问题。当模型在训练过程中的前向传播中产生 NaN(Not a Number)时,这通常表明模型在某一步骤的计算中出现了数值不稳定性的问题。如果模型在梯度更新时出现爆炸性梯度,可以考虑使用梯度裁剪,限制梯度的范围,以防止梯度过大导致数值不稳定。在模型的计算中,使用数值稳定性的操作,例如使用稳定的数学函数(如。检查模型结构,确保没有数值不稳定的操作。,来检查梯度计算是否正确。

2023-11-24 15:42:23 992

原创 进程和线程

进程是一个独立的执行单元,是操作系统中的资源分配和调度的基本单位。一个进程可以包含多个线程。

2023-11-20 20:43:10 112

原创 malloc 和 new的区别

在 C++ 中,malloc和new都是用于动态分配内存的方法,但它们有一些重要的区别。以下是关于malloc和new。

2023-11-20 20:35:57 238

原创 高性能八股文:框架中Dataloader读取原理

总体来说,PyTorch DataLoader 主要通过迭代器实现数据的加载,支持多进程加速,同时提供了丰富的参数和接口,使用户能够方便地进行数据加载和预处理。这种设计使得在训练深度学习模型时,数据的加载和处理能够高效而灵活地进行。PyTorch DataLoader 的实现原理涉及到数据集加载、批处理、多进程读取等方面的设计。

2023-11-15 14:48:41 215

原创 高性能面试八股文之编译流程&程序调度

Tensor Cores 是 NVIDIA GPU 中的一种硬件功能,旨在加速深度学习任务的矩阵乘法运算。CUDA Cores 是 GPU 中的通用处理单元,负责执行通用的计算任务。在 NVIDIA Volta 架构及之后的一些架构中,Tensor Cores 被引入以提高深度学习任务的性能。这些 Tensor Cores 是在 GPU 的 SM(Streaming Multiprocessor)中的特殊功能单元,与传统的 CUDA Cores 不同。

2023-11-15 14:41:38 340

原创 C++ 八股文 单例模式

引用:

2023-11-14 11:28:04 215

原创 栓Q:程序狗啃Flash AttentionV1 and V2

FlashAttention2详解(性能比FlashAttention提升200%) - 知乎flash attention论文及源码学习_KIDGINBROOK的博客-CSDN博客斯坦福博士一己之力让Attention提速9倍!FlashAttention燃爆显存,Transformer上下文长度史诗级提升 - 掘金

2023-10-24 18:34:43 127

原创 栓Q: 程序狗啃transformer

已经有很棒的了, 所以就直接引用大佬的文章吧 我就只做个汇总。

2023-10-24 15:39:48 50

原创 栓Q八股文: C++ 14/17 新特性

C++ 14 翻译: 【翻译】C++14的新特性简介-腾讯云开发者社区-腾讯云C++ 17翻译:【翻译】C++17的新特性简介-腾讯云开发者社区-腾讯云原理:C++ Lambda 原理和编译器实现_c++lamda实现原理-CSDN博客

2023-10-24 10:49:57 65

原创 深度学习八股文: 模型训练全过程及各阶段的原因

选择适当的深度学习模型结构,如卷积神经网络(CNN)、循环神经网络(RNN)、长短时记忆网络(LSTM)、变换器(Transformer)等,或设计自定义模型。训练过程中,输入数据通过模型前向传播,计算损失,然后通过反向传播(自动微分)计算梯度,最后使用优化器来更新模型参数。训练深度学习模型通常是一个迭代的过程,需要仔细调整和监控,以确保模型能够成功解决任务并具有良好的泛化能力。使用独立的测试集来评估最终模型的性能。根据验证集的性能,可能需要调整超参数,包括学习率、批次大小、模型复杂度等,以改进模型性能。

2023-10-19 19:42:30 780

原创 C++面试之动态规划 -- 最长递增子序列

个元素结尾的最长升序子序列的长度。通过在数组中遍历元素,比较当前元素与之前元素的大小,不断更新。函数使用动态规划来找到最长升序子序列的长度。数组,最终得到最长升序子序列的长度。

2023-10-18 16:56:37 57

原创 C++:面试二叉树的遍历

在C++中,可以使用递归或迭代的方法来实现二叉树的三种常见遍历方式:前序遍历、中序遍历和后序遍历。这里我将演示递归的方式来实现这三种遍历。

2023-10-18 16:21:25 316 1

原创 C++ 八股文: 构造函数

构造函数(Constructor)是一种特殊的成员函数,用于在创建对象时进行初始化。它的作用是确保对象在创建后处于一个合法和可用的状态。构造函数在类定义中声明,其名称与类名相同,但不带返回类型。

2023-10-18 14:12:06 117

原创 C++ 八股文:类析构

这是因为在析构函数执行过程中,对象的多态性和虚函数机制可能会受到限制,导致虚函数的行为与你期望的不一致。要确保对象的资源得到正确释放,最好在析构函数中执行基本的资源清理操作,而将特定的操作留给类的成员函数来处理。:如果在析构函数中调用虚函数,而这个虚函数又分配了资源(如内存或文件句柄),并且资源的释放需要在派生类的析构函数中执行,那么可能会导致资源泄漏。:如果必须在析构函数中执行某些可能引发异常的操作,应该尽可能在析构函数内部捕获异常,记录异常发生的情况,而不是将异常传播到上层。

2023-10-18 13:02:27 892 4

原创 面试八股文:C++ 多态 继承 重载 虚函数

C++ 支持多态、继承和函数重载,这些是面向对象编程(OOP)的基本概念。方法,它会根据实际对象的类型来选择正确的函数实现。这是多态的一个示例,同时还涵盖了继承和虚函数。函数中,使用多态性来调用不同类型的对象的。是派生类,它们都重写了。

2023-10-18 11:20:21 345

原创 C/C++ 面试八股文

它们提供了更安全和方便的内存管理方式,帮助减少内存泄漏和悬垂指针等问题。智能指针是与RAII(资源获取即初始化)编程原则紧密相关的,因此它们确保在离开作用域时自动释放分配的内存。:弱指针,与shared_ptr一起使用,用于解决循环引用的问题。:共享指针,允许多个智能指针共享相同的资源。:唯一指针,确保只有一个指针可以访问分配的资源。减少悬垂指针:当资源被释放后,智能指针将确保不再引用它,从而避免了悬垂指针问题。自动内存管理:它们负责在资源不再需要时自动释放内存,减少了内存泄漏的风险。

2023-10-17 21:07:39 626

原创 GPU高性能面试-写一个ReduceKernel

要求写一个reduceKernel 要求给出Kerne的完整调用:1. 进行一维reduce。

2023-10-13 13:12:58 270

原创 GPU如何统计显存占用

在当前终端运行你的python 程序,在另一个终端运行(也可以本终端后台运行这个)这个GPU显存统计脚本【这个代码会初始化NVML库,然后在一个无限循环中检查每块GPU的显存占用,并记录每块GPU的最大显存占用。你可以通过按Ctrl+C来停止程序的执行,并最终打印出每块GPU的最大显存占用。这个会2秒刷新一次,可以在一个终端运行程序另外一个终端执行这个然后看具体的显存变化【很费劲,而且可能一闪而过】库来监测程序的显存使用情况并记录最大值。要统计程序的最大显存占用,你可以使用Python的。

2023-10-13 12:51:50 379

原创 CUDA 高性能计算面试问题总结

线程块内的线程可以通过共享内存进行数据交换和协同计算,通常在一个线程块内的线程之间的通信效率更高。全局内存(Global Memory):全局内存是GPU内存中速度较低的一种,用于存储全局数据,可以被所有线程块和线程访问。共享内存(Shared Memory):共享内存是位于每个线程块内部的内存,用于线程块内的线程之间共享数据。寄存器(Registers):寄存器是GPU内存中速度最快的一种,用于存储每个线程的局部变量和临时数据。所有线程束中的线程执行相同的指令,但可以在不同的数据上操作。

2023-10-12 15:34:56 1124 1

原创 cuda面试常见编程题目

1.写一个ReduceKernel。4.写一个矩阵旋转90°。

2023-10-11 21:25:43 286

原创 GPU 基础知识整理

萌新:在接触一款硬件时我会:基础硬件结构,线程结构,内存布局,数据吞吐量,等方面进行学习:GPU 是专门设计用于并行计算的硬件,通常具有大量的处理单元(CUDA核心或流处理器)。这使得 GPU 能够同时处理大量的数据和任务,适用于高度并行化的工作负载,如深度学习、科学计算和图形渲染。:GPU 在浮点运算性能上通常非常强大,可以执行大规模的浮点计算,适用于科学计算、仿真和数据分析等需要高精度计算的任务。:GPU 具有高带宽的内存,可以快速读写大量数据。

2023-10-11 21:22:54 515

原创 sbprocess.CalledProcessError: Command ‘[‘/usr/local/bin/python‘, ‘-m‘, ‘pip‘, ‘--disable-pip-versio

【代码】sbprocess.CalledProcessError: Command ‘[‘/usr/local/bin/python‘, ‘-m‘, ‘pip‘, ‘--disable-pip-versio。

2023-07-18 10:04:33 494

原创 module ‘cv2‘ has no attribute ‘gapi_wip_gst_GStreamerPipeline‘

module 'cv2' has no attribute 'gapi_wip_gst_GStreamerPipeline'

2022-10-11 10:28:01 164 1

原创 pip已经安装,但是/usr/bin/pip: No such file or directory

FileNotFoundError: [Errno 2] No such file or directory: '/usr/bin/pip'

2022-09-13 11:08:01 316

原创 Fatal Python error: initfsencoding: Unable to get the locale encoding

pip 无法使用

2022-09-02 19:45:42 2274

原创 运行pytorch TSM模型问题记录

运行pytorch TSM 模型

2022-08-17 20:16:47 532

原创 pre-commit 不执行

git pre-commit的使用

2022-06-06 17:36:55 1161

原创 python装饰器 静态成员函数无法使用

先介绍一下背景,开始的时候我们给一个类添加装饰器,各种测试都OK,但是最终进行完成测试的时候发现之前调这个类的静态成员会报错。主要原因是在给类加装饰器的时候会返回一个一个对象。但是静态函数的使用是可以直接通过类进行调用的,这也就冲突了。后来就尝试在init函数中加一个函数调用,将装饰器改成了普通的函数调用,这样就能保证静态函数也能调用啦。......

2022-04-22 15:51:33 1045

原创 常见操作备忘

tar.gz解压:tar zxvf filename.tar.gz

2022-04-12 20:09:50 107

原创 2022.01-03-01 深度学习入门-基于python的理论与实现

本书还省最后一章,与代码实现没写。身体不适,暂停一周。下周补上

2022-01-24 10:38:35 1104

原创 2022.01-02-03 深度学习入门-基于python的理论与实现

唉,开始写这篇文章的时候,我还没看书呢,,,,天天有种赶作业的感觉,我太烦啦,讨厌自己的惰性。这本书一共有8个章节第一章是python基础介绍, 我是从第二章感知机开始写的。第三章神经网络,第四章神经网络的学习。第五章误差反向传播法,第六章与学习相关的技巧,第七章也就是本篇需要记载的卷积神经网络。第八章是深度学习。本来计划2周出一篇实践记录的,但是就我这懒的样子,实验只能放到下周了,下周会将前6周的实验全做一下。对于卷积计算的细节我就不记录了,可参考博客:CNN卷积具体计算过程_lichunchi123

2022-01-16 20:41:35 2078

原创 2022.01-02-02 深度学习入门-基于python的理论与实现

本周时间太短了,所以只能先简单的记录一下,后续有时间再补充。本章主要涉及寻找最优权重参数的最优方法,权重参数的初始值,超参数的设定方法等。同时还会介绍权值衰减,Dropout等正则化方法,并进行实现。1.参数更新神经网络学习的目的是找到是损失函数的值尽可能小的参数。这是寻找最优参数的问题,解决这个问题的过程称为最优。前面介绍过,将参数的梯度作为线索,使用参数的梯度,沿梯度方向更新参数,并重复这个步骤多次,从而逐渐靠近最优参数,这个过程称为”随机梯度下降法“ 简称 SGD。SGD 中的梯度更新

2022-01-16 19:46:32 745

原创 2022.01-02-01 深度学习入门-基于python的理论与实现

2022.01-2-01 表示2022年1月第二周的第一篇文章。哈哈,第1周的三篇文章,都是周五周六周日赶出来的,哈哈 有种小学生最后赶作业的感觉,悄悄说一声这篇文章是1月9日写的,没错就是刚写完第一周的第三篇才开始写的,为啥写呢? 因为先开个头,主要还是碎嘴哈哈。...

2022-01-09 23:04:38 327

原创 2022.01-1-03 深度学习入门-基于python的理论与实现

本篇用于记录《深度学习入门-基于python的理论与实现》中第4章神经网络的学习的随笔(主要是因为脑子笨,看了就忘,就想还不如写下来,毕竟写的时候会稍微过一下脑子,嘿嘿^_^)

2022-01-09 20:26:21 609

原创 2022.第二个Flag -- 学车【已完成】

已经在2021年12月报名了学车,但是由于自己特别懒在过去的2个月里一直没有看科目一(和我一起报名的同学已经开始科目三了。。。),周六周日总是躺尸,因此立下字据(军令状 哈哈)1. 在1月8日~16日前完成科目一视频学习,考试预约以及刷2遍科目一的考题(本周要做年终总结所以没时间考试哟~)2. 1月17~21号预约考试(当然是越早越好啦哈哈,然后年前还剩下一个周末,练习科目二会不会年后回来就忘记怎么开啦,哈哈,好傻,,,,又开始给自己找懒了,至少要练习一天,对吧)3.然后2月19号之前完成科目2

2022-01-08 23:54:12 160

原创 2022.01-1-02 深度学习入门-基于python的理论与实现

本篇是第三章神经网络的随笔,括号中的内容常表示个人对于该概念的理解。上一篇介绍了感知机和多层感知机,尽管多层感知机能够实现复杂的计算,但是感知机中的权重的设定和选择是通过人工设定的。神经网络就是为了解决这一问题,神经网络的重要性质是它可以自动地从数据中学习到合适的权重参数。1. 从感知机到神经网络神经网络用图表示的话可以表示为: 图1如图,我们将最左边的一列称为输入层,最右边的称为输出层,中间一列称为中间层,中间层有时候又称为隐藏层,隐藏层和输入输出不同是肉眼不可见的。这三个层也..

2022-01-08 23:30:47 659

原创 2022.01-1-01 深度学习入门-基于python的理论与实现

2022年01月04日,第一周记录第一篇文章

2022-01-08 00:41:15 953

原创 2022.第一个Flag -- 读书

虽然上学期间也上了深度学习的相关课程,但是当时一边学习一边实习,将更多的时间和心思放在了实习上,导致课程内容掌握不够,之前也立了很多的flag,但是都倒了,不想再颓废下去了,多多少少也想记录一下,希望能够与各位同学共同进步,如果我忘了拜托踢踢我。也希望志同道合的同学能一起学习,一起打卡。以前常说授人以鱼,不如授人以渔,但是很多情况下是没有时间去掌握渔的,但在工作的过程中经常希望能够立刻找到答案,都希望做那个伸手者。工作中有时间点,项目交付等。因此再今后的笔记中,将会把鱼放在前面,渔记录在后面,如果感兴趣

2022-01-04 22:22:10 881

_破解_补丁_niu.zip

这是一个神奇的破解补丁,针对的是2018amatlab的crack

2019-08-16

HeadFirst设计模式中文版

HeadFirst设计模式中文版

2019-02-27

effective C++

effective C++

2018-12-06

人月神话中文版

人月神话中文版

2018-12-06

[新增章节]密码编码学与网络安全(第五版)_原理与实践zhongwen.rar

[新增章节]密码编码学与网络安全(第五版)_原理与实践zhongwen.rar

2018-12-06

MATLAB的百度网盘链接

由于网上现在MATLAB比较麻烦因此,上传一份百度网盘链接,下载后会有一个.iso文件,直接解压然后运行setup.exe就行,至于注册码,自己去网上查吧,有很多。

2018-11-01

网上商城Hibernate+springmvc+struts

登录,退出登录,购物车,订单详情,商品搜索,显示商品 付款方式管理:添加付款方式,修改付款方式 数据库设计 注册,个人信息确认,付款方式。商品分类,商品信息展示, 产品管理:添加产品信息(上传照片+商品简介),修改产品信息; 数据库设计 订单管理:查询商品,管理员登录注册, 用户管理:用户详情,删除用户

2017-07-21

网上商城-交互原型设计软件Axure RP

交互原型设计软件Axure RP实现网站界面设计,已经上传该项目的个人文档,按需下载

2017-07-13

2016人机交互课程设计—网上商城系统界面设计

一、课程设计任务概述 2 1. 目的与任务; 2 2. 开发环境 2 3. 参考资料 2 4. 任务完成的一般过程 2 二、个人承担部分的主题、构思与创意 3 三、需求分析 4 1、竞争商品分析 5 2、用户分析 5 四、交互设计 6 4.1任务描述 6 4.2界面功能需求 7 4.3小组交互设计方案的看法及独创性见解 7 五、交互实现 7 5.1整体页面布局展示: 7 5.2各项功能分析与总结 9 六、可用性分析与评估 9 6.1系统可用性分析与评估的意义: 9 6.1.1可用性评估应该遵循的原则: 10 6.2系统可用性分析与评估分工与结论: 10 七、工作的具体过程 11 7.1登陆界面与商品展示页面设计过程: 11 7.2页面具体功能展示: 12 八、个人小结 13

2017-07-13

酒店网上预订系统--数据库课程设计.doc

1)客户查询指定日期内所有类别的空余房间数,系统显示空房表中的信息。 2)客户输入预订的起始日期、结束日期、房间类别和数量,并提交。 3)系统将用户提交的信息写入预订表,并修改空房表的相关数据。

2017-07-13

apache-tomcat-7.0.79.jar

tomcat7.0

2017-07-13

mysql-connector-java-5.1.25.jar

mysql-connector-java-5.1.25.jar

2017-07-11

决策树-C++代码

输出决策树,代码下方有案例

2017-05-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除