- 博客(71)
- 资源 (1)
- 收藏
- 关注
原创 leetcode2730. 找到最长的半重复子字符串解题模板和分析
题目给你一个下标从 0 开始的字符串 s ,这个字符串只包含 0 到 9 的数字字符。如果一个字符串 t 中至多有一对相邻字符是相等的,那么称这个字符串 t 是 半重复的 。例如,“0010” 、“002020” 、“0123” 、“2002” 和 “54944” 是半重复字符串,而 “00101022” (相邻的相同数字对是 00 和 22)和 “1101234883” (相邻的相同数字对是 11 和 88)不是半重复字符串。请你返回 s 中最长 半重复子字符串的长度。示例 1:输入:s =
2024-10-20 22:37:04
849
原创 Transformer自注意力机制和多头注意力
自注意力机制通过对输入序列中所有元素的相关性进行建模,能够有效捕捉全局依赖关系。多头自注意力机制则通过并行计算多个注意力头来增强模型的多样性和表达能力,使得 Transformer 在处理复杂数据时更加灵活和强大。相较于 CNN,Transformer 更擅长处理长序列数据和全局依赖关系的建模,并且具备更强的并行处理能力和灵活性。
2024-10-16 22:24:47
1323
原创 leetcode中常用的enumerate用法和常用场景
是一种非常实用的工具,在遍历列表、字符串、数组等场景中经常用到,尤其是在需要同时处理元素及其索引的情况下。在 LeetCode 解题中,常用于遍历数组并处理索引的场景,能够简化代码,避免手动管理索引变量。常见的应用场景包括查找元素、更新数组、处理相邻元素、滑动窗口问题等。
2024-10-16 22:18:11
627
原创 leetcode中哈希的python解法:Counter()介绍
Counter非常适合用于需要频繁统计元素出现次数的场景,比如字符串字符计数、列表元素计数等。Counter的行为和字典类似,但它自动处理不存在的键,默认返回 0,不抛出异常。常见的操作包括计数、更新、获取最多的元素、合并等。
2024-10-16 22:12:09
544
原创 sql刷题笔记
IFNULL() 函数语法格式为:IFNULL(expression, alt_value)12如果第一个参数的表达式 expression 为 NULL,则返回第二个参数的备用值。解析:IFNULL() 函数用于判断第一个表达式是否为 NULL,如果为 NULL 则返回第二个参数的值,如果不为 NULL 则返回第一个参数的值。
2024-09-24 10:08:51
344
原创 vit-pytorch实现 MobileViT注意力可视化
项目链接 https://github.com/lucidrains/vit-pytorch。
2023-02-09 12:41:05
1858
原创 pytorch widedeep文档
value_counts( )函数value_counts()是一种查看表格某列中有多少个不同值的快捷方法,并计算每个不同值有在该列中有多少重复值。参数设置sort=True: 是否要进行排序;默认进行排序ascending=False: 默认降序排列;normalize=False: 是否要对计算结果进行标准化并显示标准化后的结果,默认是False。bins=None: 可以自定义分组区间,默认是否;dropna=True:是否删除缺失值nan,默认删除category_encoders是
2022-08-06 10:47:16
878
原创 tensor.eq() tensor.item() tensor.argmax()
return(返回值):返回一个Boolean类型的张量,对两个张量Tensor进行逐元素的比较,若相同位置的两个元素相同,则返回True;官方文档:https://pytorch.org/docs/stable/generated/torch.argmax.html。对两个张量Tensor进行逐元素的比较,若相同位置的两个元素相同,则返回True;只能用于只包含一个元素的张量.对于其他的张量,请查看方法tolist().该方法的功能是以标准的Python数字的形式来返回这个张量的值.这个方法。...
2022-08-06 10:46:16
1460
原创 shap库源码和代码实现
summary plot 为每个样本绘制其每个特征的SHAP值,这可以更好地理解整体模式,并允许发现预测异常值。每一行代表一个特征,横坐标为SHAP值。一个点代表一个样本,颜色表示特征值(红色高,蓝色低)。比如,这张图表明LSTAT特征较高的取值会降低预测的房价结合了特征重要度和特征的影响。摘要图上的每个点都是一个特征和一个实例的Shapley值,y轴上的位置由特征决定,x轴上的位置由Shapley值决定,颜色代表特征值从小到大,重叠点在y轴方向上抖动,因此我们可以了解每个特征的Shapley值的分布。..
2022-08-06 10:45:24
6068
原创 autogluon安装,使用指南,代码
安装教程:https://www.bilibili.com/video/BV1yL4y177hH?vd_source=89df2f1167217f99860c89a58a28438d安装Q&A:https://auto.gluon.ai/stable/install.html#installation-faq安装报错:Consider using the option or check the permissions.解决方法:https://www.cnblogs.com/wanghui-ga
2022-08-06 10:44:21
1499
原创 相关系数计算,热力图绘制,代码实现
两个变量(X, Y)的皮尔森相关性系数(ρX,Y)等于它们之间的协方差cov(X,Y)除以它们各自标准差的乘积(σX, σY)。公式的分母是变量的标准差,**这就意味着计算皮尔森相关性系数时,变量的标准差不能为0(分母不能为0),**也就是说你的两个变量中任何一个的值不能都是相同的。如果没有变化,用皮尔森相关系数是没办法算出这个变量与另一个变量之间是不是有相关性的。皮尔森系数对数据的要求比较高,............
2022-08-03 19:53:49
3483
原创 UMAP介绍和代码实例
基础概念:Uniform Manifold Approximation and Projection (UMAP)**流形Manifold:**流形(Manifold)是局部具有欧式空间性质的空间,包括各种纬度的曲线曲面,例如球体、弯曲的平面等。流形的局部和欧式空间是同构的。 把流形的局部假设为欧几里德空间,以方便研究。**黎曼流形:**以光滑的方式在每一点的切空间上指定了欧式内积的微分流形。与PCA,和t-SNE的区别:https://pair-code.github.io/understandin
2022-07-08 16:43:01
4170
1
原创 matplotlib.pyplot使用(subplots,gray
subplot() 方法:在绘图时需要指定位置subplots() 方法:可以一次生成多个,在调用时只需要调用生成对象的 ax 即可。参数说明:sharex, shareybool or {‘none’, ‘all’, ‘row’, ‘col’}控制x (sharex)或y (sharey)轴之间的属性共享默认:Falseplt.gray()函数用于将颜色映射设置为“gray”.........
2022-07-08 12:14:01
678
原创 集成学习bagging,boosting,gbdt,xgboost比较和代码实现
集成学习根据各个弱分类器之间有无依赖关系,分为Boosting和Bagging两大流派:1. Boosting流派,各分类器之间有依赖关系,必须串行,比Adaboost、GBDT(Gradient Boosting Decision Tree)、Xgboost2. Bagging流派,各分类器之间没有依赖关系,可各自并行,比如随机森林(Random Forest)3.特点:* 有放回的随机采样,(每次大概会采样63%的样本)* 不稳定—>适合作为基分类器目标:降低方差bagging的扩展变体,样
2022-06-09 22:27:37
408
原创 np.random.normal()与 np.matmul()与numpy.random.choice()
np.random.normal()np.random.normal()的意思是一个正态分布,normal这里是正态的意思。我在看孪生网络的时候看到这样的一个例子:numpy.random.normal(loc=0,scale=1e-2,size=shape) ,意义如下:**参数loc(float):**正态分布的均值,对应着这个分布的中心。loc=0说明这一个以Y轴为对称轴的正态分布,**参数scale(float):**正态分布的标准差,对应分布的宽度,scale越大,正态分布的曲线越矮胖,s
2022-05-04 15:04:03
1852
原创 streamlit库安装和使用示例
一、安装安装: pip install streamlit测试: 在cmd输入 streamlit hello运行的时候报错:找不到attr库解决方法:conda install attrs成功安装:二、查看使用这个查看 页面Local URL: http://localhost:XXXXNetwork URL: http://XXXXXXXXX三、运行本地demostreamlit run E:\XXXXX\XXXX.py...
2022-04-09 00:45:41
2990
原创 pytorch实现卷积
1.常用APItorch.nn神经网络库,包括网络层与损失函数torch.nn.functional神经网络基本函数torch.Tensor 基本数据结构torch.autograd自动微分计算梯度torch.optim 通用优化算法包(SGD,Adam)torchvision2.
2022-04-07 10:10:54
2973
转载 dropout方法pytorch版本代码实现
一、原理介绍(比权重衰退效果更好),在数据里面加入随机噪音。dropout是在层之间,加入噪音,1.【方法如下】E[x’]=x 保证期望不变,p的概率下,取值改为0.其他情况下:改为 x/(1-p)2.【用法】对隐藏层的输出h,做dropout,得到h’常用于多层感知机(全连接层的隐藏层 )的隐藏层输出上,丢弃概率,是一个超参数【常用值有: 0.5 0.9 0.1】3.【dropout只在训练中用】dropout是一个正则项,正则项只在训练过程中用,正则项只会对权重产生影响
2022-03-27 16:42:29
4140
原创 命令行参数argparse用法
1.基础框架argparse 是python自带的命令行参数解析包,可以用来方便地读取命令行参数,当你的代码需要频繁地修改参数的时候,使用这个工具可以将参数和代码分离开来,让你的代码更简洁,适用范围更广。# file-name:test.pyimport argparsedef main(): # 创建ArgumentParser对象,生成一个参数解析器 parser = argparse.ArgumentParser(description='Demo of argparse'
2022-03-24 11:10:17
961
原创 对比excel,轻松学习python数据分析(15)
15Numpy数组1数组生成2Numpy数组的基本属性Numpy数组的基本属性主要包括数组的形状、大小、类型和维数3Numpy数组的数据获取4Numpy数组的数据预处理5Numpy数组重塑6Numpy数组合并
2022-01-26 23:35:18
1785
原创 对比excel,轻松学习python数据分析(14:典型数据分析案例)
为什么要报表自动化提高工作效率减少错误什么样的报表适合自动化使用频率高开发时间短需求变更频率低流程标准自动发送电子邮件smtplb用来建立和断开与服务器连接的工作email设置与邮件本身相关的内容,比如收件人、发件人、主题...
2022-01-24 23:47:25
1990
原创 对比excel,轻松学习python数据分析(11:多表连接、12:时间序列)
11.1表的横向拼接表的横向拼接就是在横向将两个表依据公共列拼接在一起。merge()11.2表的纵向拼接表的纵向拼接是与横向拼接相对应的,横向拼接是两个表依据公共列在水平方向上进行拼接,而纵向拼接是在垂直方向进行拼接。12 结果导出1.导出为.xlsx文件2.导出为csv文件3.将文件导出到多个sheet...
2022-01-20 22:47:34
578
原创 对比excel,轻松学习python数据分析(8:数据运算、9:时间序列)
第八章 数据运算1.算术运算两列相加两列相减两列相乘两列相除任意一列加/减一个常数值,这一列中的所有值都加/减这个常数值任意一列乘/除一个常数值,这一列中的所有值都乘/除这一常数值2.比较运算比较是在列与列之间进行3.汇总运算count 非空值计算1.某一个区域中非空(单元格)数值的个数2.直接在整个数据表上调用 count()函数,返回的结果为该数据表中每列的非空值的个数3.默认求每一列的非空数值的个数4.当axis参数等于1时,求取每一行的非空数值的个数5.也可以
2022-01-18 23:25:29
1307
原创 对比excel,轻松学习python数据分析(6:数据选择、7:数值操作)
第六章 数据选择1.列选择a)普通索引# 列选择# 普通索引df_01 = df_0[['时间','会员收入(万元)']]b)位置索引用iloc# 位置索引 使用iloc,选中的列要用[]框起来df_02 = df_0.iloc[:,[0,6]]c)切片索引iloc 后的方括号中逗号之前的部分表示要获取的行的位置,只输入一个冒号,不输入任何数值表示获取所有的行;逗号之后的方括号表示要获取的列的位置,列的位置同样是也是从0开始计数。# 切片索引 iloc[A:B,C:D]df_
2022-01-16 17:07:47
618
原创 对比excel,轻松学习python数据分析(读书笔记4-5章)
第四章1.导入数据a)导入.xlsx 格式excelread_excel( )导入指定sheet: 设定sheet_name参数,来指定要导入哪个Sheet的文件。行索引index_col:表示用.xlsx文件中的第几列做行索引,从0开始计数。列索引header:将本地文件导入DataFrame时,默认使用源数据表第一行作为列索引,也可以通过设置header参数来设置列索引指定导入列usecols: 本地文件列数太多,又不需要那么多列时,就可以通过设定usecols参数来指定要导入的列b
2022-01-14 11:57:13
600
1
原创 对比excel,轻松学习python数据分析(读书笔记1-3章)
利用合适的工具,在统计学理论的支撑下,对数据进行一定程度的预处理,结合具体业务分析数据,帮助相关业务部门监控、定位、分析、解决问题,从而帮助企业高效决策,提高经营效率,发现业务机会点。
2022-01-11 17:20:18
1268
转载 python判断一个字符串中是否存在多个子串中的一个
在使用python的开发过程中,常常需要判断,字符串中是否存在子串的问题,但判断一个字符串中是否存在多个字串中的一个时,如if (a or b) in c或者if x contains a|b|c|d…,似乎就需要借助for做循环判断,那么这种情况有没有更pythonic的方法呢?判断一个字符串中是否存在某一个子串判断一个字符串中是否存在子串通常使用in关键词,如下:>>> a = "I Love Crystal!And I Hate Tom!">>> b = "
2021-12-08 16:10:16
683
原创 图数据库neo4j使用
零、预备备:启动数据库本机数据库版本 Neo4j 3.5.13以管理员身份运行控制台(win+A+X),在命令窗口切入到主目录%NEO4J_HOME%\bin执行neo4j.bat console进入网址 http://localhost:7474/browser/一、图数据库介绍图数据库存储各种数据只用了几个简单的概念:1)节点 - 图数据记录相似的节点可以有不同的属性,属性可以是字符串、数字或布尔2)关系 - 连接节点关系总是有方向的3)属性 - 命名的数值属性是简单的名/值对
2021-11-01 16:05:35
1006
原创 迁移学习入门(一)
迁移学习(Transfer Learning,TL)能让现有的模型算法稍加调整即可应用于一个新的领域和功能的一项技术。微调如图所示,微调由以下4步构成。1.在源数据集(如ImageNet数据集)上预训练一个神经网络模型,即源模型。2.创建一个新的神经网络模型,即目标模型。它复制了源模型上除了输出层外的所有模型设计及其参数。我们假设这些模型参数包含了源数据集上学习到的知识,且这些知识同样适用于目标数据集。我们还假设源模型的输出层与源数据集的标签紧密相关,因此在目标模型中不予采用。3.为目标模型添
2021-07-29 21:52:23
264
原创 预训练模型简介和使用方法
ELMo的出现开创了一种上下文相关的文本表示方法,很好地处理了一词多义问题,并在多个典型任务上有了显著的效果提升。 其后,GPT和BERT等预训练语言模型相继被提出,自此便进入了动态预训练技术的时代。尤其是BERT的出现,横扫了自然语言处理领域的多个典型任务,极大地推动了自然语言处理领域的发展,成为预训练史上一个重要的里程碑模型。此后,基于BERT的改进模型、XLNet等大量新式预训练语言模型涌出,预训练技术在自然语言处理领域蓬勃发展。 在预训练模型的基础上,针对下游任务进行微...
2021-07-29 21:32:40
8005
原创 Python多重继承和菱形继承问题
多重继承继承是面向对象编程的一个重要的方式,通过继承,子类就可以扩展父类的功能。和c++一样,在python中一个类能继承自不止一个父类,这叫做python的多重继承(Multiple Inheritance )。多重继承的语法与单继承类似:class SubclassName(BaseClass1, BaseClass2, BaseClass3, ...): pass方法解析顺序(Method Resolution Order,MRO)比如针对如下的代码:>>> c
2021-06-29 17:43:05
396
原创 CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://repo.anaconda.com/pkg使用conda安装tensorflow
关于使用anaconda出现CondaHTTPError问题的解决:更换为清华镜像网址http://www.lqkweb.com/blog.php?id=18下面的方法非常方便,不需要安装虚拟环境anaconda 中如何安装TensorFlow(超级方便)https://blog.youkuaiyun.com/weixin_47059145/article/details/106864136?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefaul
2021-06-07 18:47:50
313
原创 数字图像 - 边缘检测原理 - Sobel, Laplace, Canny算子
看到一篇讲解的很好的文章https://www.jianshu.com/p/2334bee37de5
2021-04-10 23:38:15
209
转载 论文数据统计笔记
导入package并读取原始数据import seaborn as sns #用于画图from bs4 import BeautifulSoup #用于爬取arxiv的数据import re #用于正则表达式,匹配字符串的模式import requests #用于网络连接,发送网络请求,使用域名获取对应信息import json #读取数据,我们的数据为json格式的import pandas as pd #数据处理,数据分析import matplotlib.pyplot as plt #画
2021-01-14 00:54:31
192
原创 Python中的yield关键字的用法
yield 是一个类似 return 的关键字,只是这个函数返回的是个生成器。>>> def createGenerator() :... mylist = range(3)... for i in mylist :... yield i*i...>>> mygenerator = createGenerator() # create a generator>>> print(mygenerator) # myge
2020-11-10 19:16:19
338
原创 一些用法for _ in range () 中’_‘的意思 enumerate() 函数
产生一个含有3个相同二维数组的列表A = [np.identity(2) for i in range(3)]结果:[array([[1., 0.], [0., 1.]]), array([[1., 0.], [0., 1.]]), array([[1., 0.], [0., 1.]])]...
2020-11-08 12:29:58
873
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人