自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 pandas中的loc函数

是一个列表、数组、Series或任何可以迭代的对象,其中包含DataFrame。中对应于这些标签的行或列(取决于。的内容是行标签还是列标签)。将返回DataFrame。的索引或列标签,那么。

2024-05-30 17:06:25 207

原创 normalization

bn 对批次大小的依赖: BN的效果在很大程度上依赖于批次大小(batch size)。当批次大小较小时,BN可能无法准确地估计每个批次的均值和方差,导致性能下降。 在某些情况下,如在线学习或内存受限的环境中,可能无法使用较大的批次大小,这限制了BN的应用。 不适用于RNNs: BN最初是为卷积神经网络(CNNs)设计的,而在循环神经网络(RNNs)中,由于数据之间存在时间依赖性,BN可能无法有效地工作。 尽管有一些尝试将BN应用于RNNs的变体(如Layer Normalization

2024-05-27 16:19:04 181

原创 map函数

在你提到的代码中,test_df['context'].map(cpc_texts) 中的 map() 函数将 DataFrame 中 'context' 列的每个元素传递给 cpc_texts 所代表的对象或函数,并返回一个包含了映射结果的迭代器或 Series 对象。这种用法可能是为了将 'context' 列的每个值映射到某个预先准备好的数据上,以便获取额外的信息或特征。在Python中,map() 函数是用于将一个函数应用到可迭代对象(如列表、元组等)的每个元素上,返回一个包含结果的迭代器。

2024-05-27 14:51:55 132

原创 bert_baseline

BERT (Bidirectional Encoder Representations from Transformers) 是一种基于 Transformer 架构的预训练语言模型,由 Google AI Language 团队在 2018 年提出。BERT 的主要贡献在于其双向的上下文编码能力和通过预训练-微调(pre-training-finetuning)范式来适配不同自然语言处理任务的能力。

2024-05-27 14:48:20 526

原创 FOCAL Loss

在实现FOCAL Loss时,需要注意选择合适的(\alpha)和(\gamma)值。一般来说,(\alpha)可以根据正负样本的比例进行调整,而(\gamma)则需要通过实验进行验证。其中,(p_t)是模型预测为真实类别的概率,(\alpha)是一个平衡因子,用于调整正负样本的权重,(\gamma)是一个调制因子,用于减少易分类样本的权重。FOCAL Loss的定义公式为:(FL(p_t) = -\alpha(1 - p_t)^\gamma \log(p_t))

2024-05-27 14:44:03 809

原创 第一次参加kaggle的baseline

【代码】第一次参加kaggle的baseline。

2024-05-27 14:41:00 96

原创 倒排索引表的创建

倒排表的创建其实很简单,最简单的方法就是循环所有的单词一遍,然后记录每一个单词所出现的文档,然后把这些文档的ID保存成list即可。我们可以定义一个类似于hash_map, 比如 inverted_index = {}, 然后存放包含每一个关键词的文档出现在了什么位置,也就是,通过关键词的搜索首先来判断包含这些关键词的文档(比如出现至少一个),然后对于candidates问题做相似度比较。# 没在word_doc中的,建立一个空listi。# key:word,value:包含该词的句子序号的列表。

2024-05-27 14:39:03 166

原创 count计算单词出现的次数

例如: python Copy code my_list = [1, 2, 2, 3, 4, 2, 5] count_of_2 = my_list.count(2) print(count_of_2) # 输出:3 这段代码统计了列表 my_list 中元素 2 的出现次数,结果是 3。" count_of_o = my_string.count("o") print(count_of_o) # 输出:2 这段代码统计了字符串 my_string 中字符 "o" 的出现次数,结果是 2。

2024-05-27 13:32:49 124

原创 去重复单词

然而,文本数据中可能包含重复的单词,这可能会导致不准确的分析或计算。让我们详细讲解代码行 words = set(q.strip().split()) 的操作: q 是一个包含文本的字符串,假设它代表一个问题或句子。使用代码 `set(text.split())`,我们可以轻松地实现这一目标: ```python unique_words = set(text.split()) print(unique_words) 输出将是一个包含唯一单词的集合: arduino Copy code {'一个示例。

2024-05-27 13:31:34 253

原创 FGM对抗训练

FGM对抗训练(Fast Gradient Method)是一种用于提升模型鲁棒性和泛化能力的训练方法。

2024-05-27 13:28:52 104

原创 CBAM论文学习

CBAM(Convolutional Block Attention Module)论文是一篇关于深度学习领域注意力机制的研究论文,主要提出了一种新的卷积块注意力模块,旨在增强卷积神经网络(CNN)对图像特征的建模和表示能力。CBAM模块由两部分组成:通道注意力和空间注意力。

2024-05-27 12:49:39 185

原创 Squeeze-and-Excitation Networks

SENet的提出基于一种全新的“特征重标定”策略,通过学习的方式来自动获取到每个特征通道的重要程度,然后依照这个重要程度去提升有用的特征并抑制对当前任务用处不大的特征。在Squeeze步骤中,首先对每个特征通道进行全局平均池化(Global Average Pooling),将每个二维的特征通道变成一个实数,这个实数某种程度上具有全局的感受野,并且输出的维度和输入的特征通道数相匹配。这种重标定的方式可以根据任务的需要来自动地增强或抑制不同的特征通道,从而使得网络能够更好地适应不同的任务。

2024-05-24 14:37:19 218

原创 手写一个训练流程-后续检查

【代码】手写一个训练流程-后续检查。

2024-05-22 15:15:45 64

原创 创建数据预处理函数

【代码】创建数据预处理函数。

2024-05-22 09:22:15 180

原创 TensorBoardX学习

它是 PyTorch 官方库的一部分,用于替代 TensorBoardX)中的一个核心类,它提供了一个高级的API来在指定的目录中创建事件文件,并向其中添加摘要(summaries)和事件(events)。,你可以在训练神经网络时记录各种信息,例如损失值、准确率、梯度直方图、模型结构图、图像样本等,并通过 TensorBoard 可视化工具来查看这些信息。类以异步的方式更新文件内容,这意味着训练程序可以直接从训练循环中调用它的方法来添加数据到文件中,而不需要减慢训练的速度。

2024-05-21 19:21:06 289 1

原创 python多进程

Python中的多进程(Multiprocessing)是一种并发编程技术,它允许程序同时运行多个进程,每个进程都有其自己的内存空间和系统资源。这与多线程(Multithreading)不同,多线程是多个线程共享同一个进程的内存空间。在Python中,由于全局解释器锁(GIL)的存在,多线程在CPU密集型任务上并不能实现真正的并行执行,但对于I/O密集型任务或者需要利用多核CPU资源的场景,多进程是一个很好的选择。

2024-05-20 15:15:21 190 1

原创 pnet网络完善

我们换一个图片进行图形的预处理还有归一化。建立BBOX为IOU进行准备。

2024-05-13 13:54:20 189

原创 算法——python

print(collatz_conjecture(110)) # 输出应该是某个整数,表示从 10 开始到 1 的迭代次数。x = (3 * x + 1) // 2 # 使用整数除法 // 来确保 x 是整数。x = x // 2 # 同样使用整数除法 //= 1: # 当 x 不等于 1 时继续循环。if x % 2!= 0: # 如果 x 是奇数。count += 1 # 每次迭代后增加计数。count = 0 # 用于计数迭代的次数。else: # 如果 x 是偶数。

2024-05-13 11:42:18 204

原创 BBOX_cv

物体检测中关于物体位置的信息输出通常是一组(x,y,w,h)数据,其中x,y代表着BBOX的左上角(或者其他固定点,可自定义),而w,h分别表示BBOX的宽和高。这一组(x,y,w,h)数据可以唯一地确定一个定位框。在深度学习的物体检测任务中,BBOX的预测是一个关键步骤。通过训练深度学习模型,如Faster R-CNN、YOLO、SSD等,模型可以学习如何从输入图像中预测出物体的BBOX,从而实现对物体的定位和识别。在深度学习中,特别是在物体检测领域,

2024-05-12 20:28:18 178

原创 nms_极大抑制

由于图像中的目标可能以不同的尺度和位置出现,这些候选框往往会有一定的重叠。NMS的目标就是从这些重叠的候选框中选择出最佳的框,即保留最具代表性的框,同时去除冗余的框。NMS算法在目标检测中有着广泛的应用,特别是在基于深度学习的目标检测算法中,如YOLO、Faster R-CNN、SSD等算法都采用了NMS算法来解决重叠问题。它的主要作用是从多个重叠的候选框中选择出最佳的框,以提高目标检测算法的准确性和效率。经过NMS处理后,保留下来的预测框列表就是最终的检测结果,即每个物体只对应一个预测框。

2024-05-12 19:46:03 143 2

原创 c++初步了解

【代码】c++初步了解。

2024-05-07 16:43:39 80

原创 MTCNN手动实现pnet-python

前文已经介绍了mtcnn算法通过训练一个分类器进行图片的修正。

2024-05-07 16:27:48 255 2

原创 MTCNN论文初读

在复杂且不受约束的环境中,人脸检测和人脸对齐是两项极具挑战性的任务。由于人脸的姿态、光照条件以及可能的遮挡等多种因素。本文提出了一种深度级联多任务框架,该框架充分利用了人脸检测和人脸对齐之间的内在关联性,旨在进一步提升两者的性能。作者设计了一个具有三个阶段的级联结构,每个阶段都包含精心设计的深度卷积网络,用于以由粗到细的方式预测人脸和特征点的位置。

2024-05-07 15:58:01 310

原创 一个c++的简单操作

ctrl r+“已经输入的内容” +找到需要输入的代码+tab。就可以在终端中找到需要的代码。

2024-04-24 16:08:09 376

原创 IEEE 754

这个示例展示了如何从一个 32 位的 IEEE 754 表示中提取符号位、指数和尾数,并根据这些信息计算出对应的浮点数。请注意,这个示例没有处理所有的边界情况(例如负无穷大、NaN 的不同表示等),你可能需要根据你的具体需求进行扩展。但是,如果你想要手动解析 IEEE 754 格式的浮点数,或者处理原始的二进制表示,你可以通过位操作来实现。)浮点数,其解析方式类似,但是位数和偏移量会有所不同。双精度浮点数使用 64 位来表示,其中 1 位用于符号,11 位用于指数(偏移量为 1023),52 位用于尾数。

2024-04-22 11:48:38 187

原创 一个图片标注的小工具实现

如果鼠标当前处于按下状态,程序会在图像的一个临时副本上,根据我鼠标移动的位置实时绘制一个动态的矩形。这个矩形会随着鼠标的移动而动态变化,显示出一个临时的、跟随鼠标移动的矩形框。如果程序检测到鼠标之前确实处于按下状态,它会在图像上从起始点到我松开鼠标时的当前位置绘制一个矩形。这个矩形框会覆盖在我选择的图像区域上,并且绘制完成后,更新后的图像会立即显示出来。事件发生时,我模拟了按下鼠标左键的行为。程序会记录下我按下鼠标时的坐标位置,作为绘制矩形的起始点。同时,程序会设置一个内部标记,表示鼠标当前处于按下状态。

2024-04-12 19:12:41 186

原创 深拷贝和浅拷贝

浅拷贝(Shallow Copy)是指创建一个新对象,但新对象中包含的是对原始对象中各个子对象的引用,而不是子对象本身。这意味着新对象和原始对象将引用相同的内存地址,因此,对其中一个对象的修改将影响到另一个对象。在深拷贝中,新对象会拥有自己独立的内存地址,其内部的所有子对象也都是全新复制的,而不是对原始子对象的引用。浅拷贝只是复制了对象的引用,而深拷贝则真正复制了对象及其所有子对象。深拷贝和浅拷贝是两种不同的对象复制方式,它们在处理对象及其子对象时有着显著的区别。函数,那么实际上进行的就是浅拷贝。

2024-04-08 12:24:07 223

原创 mnist改进加封装

这次将使用BP算法,adam优化器,softmax及其损失函数,动手实现层的封装,关于数据的inplace技术的使用用来缓解内存问题,#定义优化器的基类,遍历模型的layers和layers的参数#设定梯度清零#设定学习率#设定adam的类self.t = 0# 指数移动平均eps = 1e-8如果你在一个条件语句中(比如 if 语句)给 layer 赋值,然后在这个条件语句之外引用它,那么就会出现这个错误。

2024-04-06 16:40:25 277 1

原创 mnist算法实现(初版)

MNIST是一个广泛用于机器学习和深度学习领域的手写数字图像数据集。它包含了大量的手写数字图片和对应的标签,用于训练和测试图像识别算法。由于其数据规模适中且图像特征清晰,MNIST成为了初学者入门和实践深度学习技术的理想选择。通过训练模型来识别MNIST数据集中的手写数字,可以深入了解神经网络、卷积神经网络等算法的工作原理,为后续的复杂图像识别任务奠定坚实的基础。编写这段代码的历程对我来说是一次深入学习和实践机器学习原理的旅程。

2024-03-28 11:51:04 974

原创 余弦退火学习率+周期性重启

余弦退火学习率与周期性重启是深度学习训练中的两种优化策略,它们被广泛应用于提高模型的训练效果和收敛速度。这段代码通过实现余弦退火学习率调度策略,计算了不同训练轮次(epoch)下的学习率,并将学习率随着epoch的变化绘制成图表。通过这种方式,可以直观地展示学习率如何平滑地从最大值过渡到最小值,在每个周期结束时达到最低点,有助于理解并优化神经网络的训练过程。

2024-03-25 20:53:14 811

空空如也

空空如也

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

TA关注的人

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