自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(82)
  • 资源 (3)
  • 收藏
  • 关注

原创 Go语言接口使用

类型选择与一般的 switch 语句相似,不过类型选择中的 case 为类型(而非值), 它们针对给定接口值所存储的值的类型进行比较。一个接口值是否保存了一个特定的类型,类型断言可返回两个值:其底层值以及一个报告断言是否成功的布尔值。为 nil 接口调用方法会产生运行时错误,因为接口的元组内并未包含能够指明该调用哪个具体方法的类型。空接口可保存任何类型的值。保存了 nil 具体值的接口其自身并不为 nil。为 nil 时表示成功;类型断言提供了访问接口值底层具体值的方式。类型的值,该语句就会触发一个恐慌。

2024-04-23 11:49:38 341

原创 golang多协程

golang代码。

2024-04-23 11:49:17 182

原创 如何写好SQL

split函数返回的结果是一个数组类型,因此在进行一些操作时需要将其转换为其他适合的数据类型,例如字符串或结构体等。使用Hive中的LATERAL VIEW关键字来进行表的展开操作,并将展开的结果作为一列结果集中的元素。【解析 json 的字符串 json_string, 同时指定多个 json 数据中的 column,返回对应的 value。如果输入的 json 字符串无效,结果返回 NULL】在 Hive 中,array_join 函数用于将一个数组中的元素按照指定的分隔符连接成一个字符串。

2024-04-23 11:48:19 1127 2

原创 Pandas使用

df_perception = df_perception.drop(df_perception[df_perception['useful_list'] == 0].index) 选择对应的数据删除。df = df.drop_duplicates(inplace = True) 删除数据框中所有重复的行【即删除所有列均相同的行】df = df.drop_duplicates(subset = []) 使用subset参数指定需要删除重复行的列。

2024-03-14 12:07:36 206

原创 CV预处理方式

CV对于图片预处理方式种类繁多, 如果使用不同的图片预处理方式经过模型推理后,得到的结果差距较大。如何能训练好CV模型,首先需要对齐CV模型训练、推理过程的预处理方式。

2023-09-28 14:55:43 239

原创 Python并发执行(未完待续)

Queue的使用主要是一边put(),一边get();但是Queue可以是多个Process进行put操作,也可以是多个Process进行get操作。Pipe的方法包含 send()、recv()、close();当pipe的输入端被关闭,且无法接受接收到输入端的值,则会抛出EOFError。调用Pipe()返回管道两端的Connection;新建Pipe(duplex)的时候。Queue是基于Pipe实现的。

2023-09-26 21:11:58 229

原创 预训练模型分词方式

tokenize的目标是将输入的文本流, 切分成一个个子串,使得每个子串具有相对完整的语义,便于学习embedding表达和后续模型的使用。word/词:最自然的语言单元,中文需要分词算法。由于词汇表较大,存在长尾现象,词汇表可能超大。常规的词汇表,一般大小不超过5万。char/字符:最基本的字符。字符的数量是少量有限的,由于字符数量太小,在为每个字符学习嵌入向量表示的时候,每个向量容纳太多的语义信息,学习困难。subword/子词级别:介于字符和单词之间,。。

2022-11-24 20:19:25 774 1

原创 论文研读--Masked Generative Distillation

但当使用MGD蒸馏后,学生与教师差异很大,学生对于背景的响应大幅减小,对于目标的响应得到了增强,学生的最终表现也好于FGD蒸馏。之前的知识蒸馏方法着力于使学生去模仿更强的教师的特征,以使学生特征具有更强的表征能力。从这点出发,我们把模仿任务修改成了。在蒸馏过程中,我们对学生特征进行了随机mask,强制学生仅用自己的部分特征去生成教师的所有特征,以提升学生的表征能力。通常的做法,使得学生的特征去模仿教师的特征,使用KL散度或者MSE来对齐学生的特征以及教师的特征,但是学生模仿的效果必然差于教师模型。.....

2022-07-24 17:55:33 1118

原创 贪心搜索(greedy search)、集束搜索(beam search)、随机采样(random sample)

当我们训练完成一个自然语言生成模型后,需要使用这个模型生成新的语言(句子),如何生成这些句子,使用如下的方法:贪心搜索,集束搜索,随机搜索。贪心搜索(greedy search)/采样(Sampling)贪心搜索最为简单,直接选择每个输出的最大概率,直到出现终结符或最大句子长度。在每个阶段都选择分值最高的项。此方法经常奏效,但显然不是最优的。​集束搜索(beam search)集束搜索是一种启发式图搜索算法,在图的解空间比较大的情况下,为了减少搜索所占用的空间和时间,在每一步深度扩展

2022-05-24 23:26:34 4127

原创 NLP数据增强

同义词替换 回译回译调用百度API接口实现回译数据增强代码实现如下:import http.clientimport hashlibimport jsonimport urllibimport randomimport time #调用百度翻译API将中文翻译成英文def baidu_translate(content, from_, to_): appid = '' #个人申请后的id号 secretKey = '' #个人申请后的密码 .

2022-05-24 12:08:56 230

原创 通过微信聊天记录生成词云

对于微信聊天记录,可以通过采集聊天记录,通过聊天数据生成词云两步实现一、聊天记录数据采集整个任务中最困难的即为聊天数据采集。由于QQ和微信的聊天记录提取难度不同,对于QQ聊天数据,简单的导出即可。对于微信聊天数据,微信将聊天数据保存在EnMicroMsg.db数据库中,通过MD5加密,所以我们通过获取db数据库中的文件,再对数据解密即可成功获取和某人的聊天记录啦。下面开始正式介绍如何采集聊天数据。工具:蓝叠模拟器(通过将微信数据由手机导入到电脑, 再将数据从电脑导入蓝叠模拟器) sqlci

2022-05-20 00:04:37 3143 1

原创 机器学习--决策树、随机森林、GBDT、XGBoost

参考:机器学习的熵:机器学习各种熵:从入门到全面掌握 - 知乎 (zhihu.com)相对熵(KL散度):相对熵(KL散度)信息熵、条件熵、交叉熵、相对熵互信息什么是「互信息」 - 知乎 (zhihu.com)信息增益信息增益表示得知特征的信息而使得类的信息不确定性减少的程度。信息增益是决策树ID3算法在进行特征切割时使用的划分准则,其物理意义和互信息完全相同,并且公式也是完全相同。其公式如下:其中D表示数据集,A表示特征,信息增益表示得到A的信息而使得类X的不确定度

2022-04-23 14:34:31 2257

原创 机器学习--降维

降维(Dimensionality Reduction)视频参考:【机器学习】【白板推导系列】【合集 1~33】_哔哩哔哩_bilibili笔记参考:降维 · 语雀 (yuque.com)过拟合增加数据 正则化 降维 直接降维(特征选择) 线性降维(PCA、MDS) 非线性降维(流形学习(Isomap、LLE)) 维度灾难(数据稀疏性):几何角度对于高维空间而言, 维度越高,球形体的体积越小样本均值 & 样本方差矩阵表示存在N个数据,其中每个数.

2022-04-21 17:16:25 2508

原创 中文文本纠错论文

PLOME: Pre-training with Misspelled Knowledge for Chinese Spelling Correction论文地址:https://aclanthology.org/2021.acl-long.233.pdf仓库地址:https://github.com/liushulinle/PLOME使用困惑集中相似单词遮盖选择的单词 通过使用拼音来预测单词 使用GRU网络根据字符的语音和笔划对这些知识进行建模中文错误(近音字、近形字)使用拼音以及笔

2022-04-11 00:02:22 2675

原创 NLP之文本分类任务

文本分类任务参考:NLP-Interview-Notes/NLPinterview/textclassifier/TextClassification at main · km1994/NLP-Interview-Notes (github.com)数据预处理1.文本分类任务数据预处理方法分词:将句子分割成独立的语义单元组成的序列过程 去停用词:识别并删除对分类意义不大且出现频率较高的词 词性标注:在分词后判断词性来添加特征2.中文文本分词的方法基于字符串匹配的分词方法 基于统计语

2022-03-31 15:08:03 3225

原创 C++的内存泄漏

C++内存泄漏的情况C++中内存泄漏的几种情况1. 在类的构造函数和析构函数中没有匹配的调用new和delete函数在堆里创建对象占用了内存,但是没有显示地释放对象占用的内存 在类的构造函数中动态地分配了内存,但是在析构函数中没有释放内存或者没有正确地释放内存2. 没有正确地清除嵌套的对象指针3. 在释放对象数组时delete没有使用方括号4. 指向对象的指针数组不等同于对象数组5. 缺少拷贝构造函数6. 缺少重载赋值运算符7. 关于nonmodifying运算符重载的常

2022-03-29 18:03:33 1053

原创 预训练模型及其变种

参考:关于Bert压缩模型压缩的方法低秩因式分解 & 跨层参数共享(计算量没有下降、参数量下降) 蒸馏 量化 剪枝(直接降低模型拟合能力)ALBERT参考:解读ALBERT嵌入向量参数因式分解(减少参数量) 跨层参数共享(减少参数量) 句间连贯性损失(增加任务学习难度)其他的方法:(弃用dropout 、masked-ngram-LM)词向量矩阵分解论文:用深度矩阵分解给词向量矩阵瘦身TinyBERT知识蒸馏原理:知识蒸馏(Knowledge Distil.

2022-03-28 22:57:49 692

原创 多进程和锁机制

进程:进程是正在执行程序的实例,是资源分配最小的单位,每个进程都有自己单独的资源区域。进程在一定的环境下,把静态的程序代码运行起来,通过使用不同的资源,来完成一定的任务。进程的环境包括环境变量,进程所掌控的资源,有打开的中央处理器,有内存,文件,映射的网络端口等。守护进程:守护进程就是在后台运行,不与任何终端关联的进程,通常情况下守护进程在系统启动时就在运行,它们以root用户或者其他特殊用户(apache和postfix)运行,并能处理一些系统级的任务.习惯上守护进程的名字通常以d结尾(sshd),但

2022-03-18 16:12:02 1938

原创 有关python知识点学习

Python的装饰器与闭包闭包是Python装饰器的基础。要理解闭包,需要先了解Python中的变量作用域规则变量作用域规则函数能访问全局变量 在一个嵌套函数中,内层函数能够访问在外层函数中定义的局部变量闭包嵌套函数就是闭包。闭包是指延伸了作用域的函数,在其中能够访问未在函数定义体中定义的非全局变量。未在函数定义体中定义的非全局变量一般都是在嵌套函数中出现的。当Python函数中的全局变量或者自由变量是不可变对象(数字、字符串、元组等)时,是只能读取,无法更新的。装饰器(尚未

2022-03-13 22:09:12 283

原创 机器学习与深度学习

采样、反卷积(下采样就是抽取、上采样就是插值)通常所说的采样指的是下采样,也就是对信号的抽取。其实,上采样和下采样都是对数字信号进行重采,重采的采样率与原来获得该数字信号(比如从模拟信号采样而来)的采样率比较,大于原信号的称为上采样,小于的则称为下采样。上采样的实质也就是内插或插值。下采样的定义:对于一个样值序列间隔几个样值取样一次,这样得到新序列就是原序列的下采样。下采样就是抽取,是多速率信号处理中的基本内容之一。上采样是下采样的逆过程,也称增取样(Upsampling)或内插(Inter

2022-03-06 23:28:37 418

原创 机器学习(白板推导学习)

感知机参考:什么是感知机?机器学习感知机证明感知机原始形式的收敛性(略)感知机的原始形式以及对偶形式的对比:如何理解感知机学习算法的对偶形式?SVM凸函数凹凸函数本质是描述函数斜率增加减少的。语义上的凸为正,代表斜率在增加(单调不减)。凹为负,代表斜率在减少(单调不增)。凸函数的二阶导数为正。凸优化(待学习)凸优化笔记10:凸优化问题KTTKarush-Kuhn-Tucker (KKT)条件 - 知乎 (zhihu.com).......

2022-03-06 22:55:15 318

原创 C++函数值的调用 & C++语法

无返回值函数(void函数)void函数的定义不带返回值的return语句只能用于返回类型是void的函数。在返回类型为void的函数中,return返回语句不是必需的,隐式的return发生在函数的最后一个语句完成时。一般情况下,返回类型是void的函数使用return语句是为了引起函数的强制结束,这种return的用法类似于循环结构中的break语句的作用。void函数的示例示例一:交换两个整形变量数值的函数void swap(int & a, int & b)

2022-02-28 11:47:29 3749

原创 C++(指针、引用、STL)

对象的定义:对象是指一块能存储数据并具有某种类型的内存空间一个对象a,它有值和地址;运行程序时,计算机会为该对象分配存储空间,来存储该对象的值,通过该对象的地址,来访问存储空间中的值。指针、引用指针类型名 * 指针变量名;每个变量都被存放在从某个内存地址(以字节为单位)开始的若干个字节中;"指针",也称作"指针变量",大小为4个字节(或8个字节)的变量,其内容代表一个内存地址;通过指针,能够对该指针指向的内存区域进行读写。int * p; //p是一个指针,变量p的类型是in

2022-02-23 16:36:03 937

原创 他安息,只因天使离去

他活着,尽管命运多舛;他安息,只因天使离去。生来死去,那是大自然的秩序;犹如昼去夜来,白日西沉。2022年的第一篇博客,不是记录学习笔记的技术博客,而是记录伟大的维克多·雨果和他的《悲惨世界》。一篇讲述了人类苦难和折磨,同时揭示了人间大爱。书中讲述了公平、正义、善良、爱情、奉献、命运。书中那大爱仁慈,善良正直的卞福汝主教用他的切身行动深深地感染了冉阿让。只因偷窃了一块面包而遭受了19年牢狱之灾的冉阿让,因为卞福汝主教的感化,又找回了当年的自己,并且变得更加的聪明善良。一位善良朴实,勇敢果

2022-01-26 14:55:20 395

原创 深度神经网络损失函数和反向传导

之前对于深度神经网络的学习,主要集中于如何更改模型结构,以及了解模型结构不同部分所起到的作用和原理。虽然对于注意力机制、GAT、LSTM、Transformer等不同结构的实现原理有了很好的了解,但是对于神经网络的损失函数和反向传导过程的理解程度较为差劲,如何设计损失函数可以更好地适应任务以及Max Pooling如何反向传导等问题一时语塞不知如何作答。回想起正好一年前看的吴恩达老师的视频,虽然对理论基础有了一定的了解,但是了解程度较为浅薄,并且由于时间紧迫并未将老师全部的视频看完吃透,现如今...

2021-12-22 22:30:32 4612

原创 图神经网络及其Pytorch实现

图结构一般而言是十分不规则的,可以认为是无限维的一种数据,因此不存在平移不变性。每一个结点周围的结构都是独一无二的,因此针对该结构的数据。涌现出GNN、DeepWalk、node2vec等等方法。GCN,即图卷积神经网络图卷积神经网络(GCN)tkipf/pygcn (github.com)Graph Convolutional Networks |Thomas Kipf | University of Amsterdam (tkipf.github.io)图卷积网络(GCN)数学.

2021-12-13 23:45:43 8599

原创 预训练模型

从Word Embedding到Bert模型—自然语言处理中的预训练技术发展史​​​​​​Bert模型详解BERT模型精讲BERT模型训练BERT是一个双向模型编码器 -> 获得token的语义信息(1)pre-training + fine tuning(MLM、NSP + Softmax)(2)pre-training + prompt预训练任务NSP做Zero ShotBERT模型参数量计算(1)Embedding层vocab_size * hidden_

2021-12-06 12:13:44 839

原创 NLP学习路线规划

必备编程技能:C语言、(C++ or JAVA or go)、python必备数学技能:高等数学、线性代数、概率论参考链接:NLP综述(思维导图)自然语言处理怎么最快入门?2021年NLP入门书籍推荐NLP任务分类NLP任务分类分为自然语言理解(NLU)、自然语言生成(NLG)文本分类 文本摘要 信息抽取 文本生成 机器翻译和多语言 情感分析和文体分析 预训练语言模型及应用 问答系统及检索 对话系统及阅读理解 语法、标记和解析 语音和多模态 ...

2021-11-23 15:49:49 815

原创 transformer及动手学习transformer

注意力机制卷积、全连接、池化层只考虑不随意线索注意力机制则显示的考虑随意线索随意线索被称之为查询(query)每个输入是一个值(value)和不随意线索(key)的对,可以相等也可以不相等通过注意力池化层来有偏向性的选择某些输入非参注意力池化层平均池化是最简单的方案Nadaraya-Watson核回归参数化的注意力机制注意力机制中,通过query(随意线索)和key(不随意线索)来有偏向性的选择输入注意力机制拓展到高维度假设query, m对key..

2021-11-09 17:34:33 1929 4

原创 循环神经网络(RNN、LSTM、GRU)以及Pytorch的使用

RNN循环神经网络的结构, 它由一个输入层、一个隐藏层和一个输出层组成。语言模型:给定一个一句话前面的部分,预测接下来最有可能的一个词是什么在使用RNN之前,语言模型主要采用n-gram, n是一个自然数,假设一个词出现的频率只与前面N个词相关。RNN理论上可以往前(往后看)任意多个词。参考:循环神经网络在计算时, 每一time step中使用的参数是一样的,也就是说每个步骤的参数都是共享的,这是RNN的重要特点。网络在每个时刻接收到输入之后,隐藏层的值是, 输出层的值是。..

2021-10-27 23:04:29 2394

原创 Linux系统shell脚本、python脚本编写

GPU排队脚本GPU排队脚本 ---- GPU一旦空闲触发脚本执行程序参考:GPU排队脚本(python脚本)cmd = 'bash run.sh' 该句设置要执行的python脚本import osimport sysimport timecmd = 'bash run.sh' #设置运行的脚本def gpu_info(): gpu_status = os.popen('nvidia-smi | grep %').read().split('|') gpu_.

2021-10-20 20:19:19 3070 3

原创 匹配网络(Learning to Rank、单双塔模型)

参考:Learning to RankLearning to Rank: pointwise、pairwise、listwiseLTR(Learning to rank)是一种监督学习(SupervisedLearning)的排序方法,已经被广泛应用到推荐与搜索等领域。传统的排序方法通过构造相关度函数,按照相关度进行排序。然而,影响相关度的因素很多,比如tf,idf等。传统的排序方法,很难融合多种因数,比如向量空间模型以tf*idf作为权重构建相关度函数,就很难利用其他信息了,并且如果模型中参数比较

2021-10-12 11:20:05 3949

原创 神经网络搭建(一、正则化)

神经网络中的正则化层神经网络中的正则化层在神经网络的搭建中,正则化层非常重要,包括BN、LN、IN和GN等。正则化层一般应用在卷积层或者全连接层之后,在激活函数层之前。正则化层稳定了深层网络的训练。正则化用来解决函数过拟合的问题。为了防止过拟合。我们需要让损失函数和正则化项最小。满足两者最小,可以尝试让损失函数和正则化项的和较小。L1正则化, 所有特征绝对值之和,记为。L2正则化,通常意义上的模,记为。L1正则化具备稀疏性。L2正则化可以很好的解决过拟合问题。拟合过程通常都倾

2021-09-24 22:56:21 2149

原创 机器学习中的优化器的方法

深度神经网络中的优化器有各种各样的方法梯度下降梯度下降法(gradient descent)或最速下降法(steepest descent),是求解无约束最优化问题的一种最常用的方法。梯度下降法是一种迭代算法, 每一步会求解目标函数的梯度向量。梯度的本意是一个向量, 表示某一函数在该点处的方向导数沿着该方向取得最大值,即函数在该点处沿着该方向的变化最快, 变化率最大(梯度的模)对于函数来说, 其梯度就是。对于给定点的附近处, 它在方向变化率最大。在点附近处, 其梯度方向就是, 朝着这个方向移

2021-09-18 17:35:48 302

原创 机器学习问题中精确率、召回率、准确率

一、精确率、召回率、准确率混淆矩阵 Positive Negative True True Positive(TP) True Negative(TN) False False Positive(FP) False Negative(FN) True Positive(真正, TP):将正类预测为正类数True Negative(真负, TN):将负类预测为负类数False Positive(假正, FP):将负类预测为正类数--误报(Type

2021-09-06 22:46:59 6247

原创 论文写作总结 & Latex语法总结

英文科技论文写作:检查论文排版可以使用工具:Paper X-Ray (acemap.info)检查论文中是否存在语法错误的工具:GrammarlyLatex的使用技巧:Latex的使用技巧

2021-09-04 20:48:26 534

原创 2021 年百度之星·程序设计大赛 - 初赛三

网址:Contest Problem List (hdu.edu.cn)1001 签到题 判断取得的平均数是否在最大值和最小值之间,但是题目并未保证输入最大值一定比最小值大,并且未发现该问题,导致不断的WA,需要加以判断。 1002 DFS深搜模板提 就是简单的表格路径深度搜索,只需要将走过的路径设置为不可通过,调用两次深度搜索的方法即可,并且行进的路径只能是向右以及向下。问题中居然未保证起始点和终止点一定是可以行走的。 1003 1004 DF

2021-08-07 17:53:26 563

原创 2021 年百度之星·程序设计大赛 - 初赛一

题目链接网址:Contest Problem List (hdu.edu.cn)1001 是一道图上操作问题,求概率,比赛时未读题,日后有时间再补题,图上操作代码水平下降极为厉害 1003 全场第四easy题目,读完题发现未DP题,果断放弃,DP一直处于弱项,需要不断加强训练学习 1004 签到题,推导一下后即为求一个数的除1以外的最小因子, 但是未考虑到给出a, b两个数字可能出现相同的情况,T掉1次,WA掉2次后才解决问题 1006 一道贪心的算法题,维护最左侧的

2021-08-02 13:04:46 623

原创 2021 年百度之星·程序设计大赛 - 初赛二

网址:Contest Problem List (hdu.edu.cn)1001 签到题 对于文中的坑点,取模后不能为负数,导致迟迟未AC掉,签到题WA掉3次, 浪费了多次罚时 1002 签到题 一次遍历贪心解决即可, 1A 1003 使用并查集解决欧拉路的问题 该问题可以转换为欧拉路的问题,同时使用并查集将整个图分为多个连通图,判断每个连通图是否为欧拉路,若均为欧拉图,则将每个图的度数以及各个图的联通加和即可,其中单个点的连通图未做单独处理导致迟迟不能AC,

2021-08-02 12:27:14 361

原创 NLP词性分析,实体分析,句法树构造(依存句法树分析)

使用scipy库 和 nltk库进行抽取单词的 词性信息 和 实体信息

2021-07-30 11:36:27 13053

ACL_2019_模型预训练_2020_01_26.pptx

个人学习记录——MRC_02

2021-03-02

MRC调研_2020_01_19.pptx

个人学习记录——MRC_01

2021-03-02

Machine Reading Comprehension 调研.docx

个人学习记录——MRC_03

2021-03-02

空空如也

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

TA关注的人

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