- 博客(252)
- 资源 (3)
- 收藏
- 关注
原创 一句话+一张图说清楚——银行家算法
本文试图用一句话+一张图说清楚操作系统中的银行家算法。我相信用一句话可以讲清楚一个算法的核心思想,一张图可以描述整个算法的操作步骤。但本人能力有限,错误之处望大家指出,多谢。一句话:当一个进程申请使用资源的时候,银行家算法通过先 试探 分配给该进程资源,然后通过安全性算法判断分配后的系统是否处于安全状态,若不安全则试探分配作废,让该进程继续等待。 那么此时会有一个问题,...
2018-05-08 21:10:44 166160 85
原创 贯穿时域与频域的方法——傅立叶分析(直观理解+Matlab实现)
Q1:时域与频域是什么?时域故名思议就是随着时间的推移,我们所能直观感受的东西或事物,比如说音乐,我们听到动听的音乐,这是在时域上发生的事情。而对于演奏者来说音乐是一些固定的音符,我们听到的音乐在频域内是一个永恒的音符,音符的个数是有限且固定的,但可以组合出无限多的乐曲。傅立叶也告诉我们,任何周期函数都可以看作不同振幅,不同相位的正弦波的叠加。就像用音符组合出音乐一样。贯穿时域和频
2018-01-21 14:16:59 68917 39
原创 python两个数值互换(浅析a,b=b,a原理)
python交换两个值得方法非常简单,即a,b=b,a,一步操作就交换了两个值,那么这是为什么呢?真相:Python的变量并不直接存储值,而只是引用一个内存地址,交换变量时,只是交换了引用的地址。先看下面这段程序:import disdef func(a,b): a,b=b,a print(a,b)a=10b=20func(a,b)dis.dis(func) 一般来说一个P
2017-11-13 17:02:18 76439 1
原创 滤波反投影重建算法(FBP)实现及应用(matlab)
滤波反投影重建算法实现及应用(matlab)1. 滤波反投影重建算法原理 滤波反投影重建算法常用在CT成像重建中,背后的数学原理是傅立叶变换:对投影的一维傅立叶变换等效于对原图像进行二维的傅立叶变换。(傅立叶中心切片定理)CT重建算法大致分为解析重建算法和迭代重建算法,随着CT技术的发展,重建算法也变得多种多样,各有各的有特点。本文使用目前应用最广泛的重建算法——滤波反投影算
2017-09-28 22:24:31 89081 178
原创 【TaskMatrix.AI - Visual ChatGPT】连接超大模型和超多API来完成任务
Github项目地址:https://github.com/microsoft/TaskMatrix。 目前大规模预训练模型(比如ChatGPT)已经能够完成多个任务。然而,对于特定领域的特殊问题,由于大模型没有见过类似数据的原因导致在这些任务上表现的较差。另外,对于特定领域的问题,目前也已经有现成的模型或系统做的比较好了,但这些解决特定问题的模型并不容易和大模型适配。
2023-06-05 23:22:33 916
原创 【论文阅读-TPAMI2021】Curriculum Learning(课程学习)综述
Curriculum learning (CL,课程学习)是一种模型训练策略,通过先让模型学习简单数据后再学习困难数据的方式模拟学生进行课程学习的场景。通用的课程学习框架为Difficulty Measurer (困难程度评估)+ Training Scheduler(训练计划) 两部分,具体也可将课程学习方法分为如下几种策略:Self-paced Learning, Transfer Teacher, RL Teacher, and Other Automatic CL。
2023-05-16 17:56:55 3038 1
原创 【论文阅读-Low-code LLM】使用LLM进行可视化编程
大规模预训练模型(LLMs)在解决困难问题仍具有很大的挑战。这篇文章提出了可以与人进行交互的低代码大模型框架,Low-code LLM。通过人类的反馈和编辑可以是LLMs输出更可控和更稳定的输出。该框架主要包括两个模块:对复杂任务设计一个结构化的计划流程图用户可以进一步对该计划进行编辑和修改根据用户确定后的计划流程产生对应的输出。这个工作放在了微软的TaskMatrix仓库下。TaskMatrix旨在连接ChatGPT和一系列基本的可视化模块,并以此实现在对话过程中处理图片内容。
2023-05-08 16:53:36 1221
原创 【论文阅读-ICSE2023】预训练目标对代码相关任务的影响
1Abstract:尽管现在很多研究能够证明预训练可以提升模型性能,但很少有研究解释预训练目标的影响。耳熟能详的MLM只是NLP领域的常见的文本预训练任务,而且NLP领域近期的研究也表明专门为下游任务设计预训练目标能进一步提升模型性能。例如,在代码摘要任务中,预训练目标可以是为方法生成一个合适的方法名。
2023-04-26 15:09:36 770 2
原创 自然语言处理中的Character Embedding技术
在2013年的时候,Tomas Mikolov提出了word embedding技术来更好的表示一个单词的向量,也就是word2vec,在当时也获得了语法和语义相似度上最好的结果。之后关于doc2vec也被提出来,由此word和doc都有了相应的embedding的方法。如果换个角度想,在比word更细粒度的角度,还有character。这篇文章就来探讨关于character embedding的相关内容。什么是character embedding?《Text Understanding from S
2021-04-26 10:59:18 2852
原创 【论文阅读-ICSE-2021】CodeShovel: 构造方法级别上的源代码历史信息 Constructing Method-Level Source Code Histories
CodeShovel: Constructing Method-Level Source Code HistoriesConference: ICSE 2021Github:https://github.com/ataraxie/codeshovel/工具展示页面:https://se.cs.ubc.ca/CodeShovel/index.html下图是这篇文章所提出工具的一个展示网页。这个工具的一个亮点是,在修改文件名,修改文件路径后依然能够在很大准确率下追踪源代码方法级别上完整的修改历史。
2021-04-23 11:07:00 666
原创 【论文阅读-NeurIPS-2019】Coda: An End-to-End Neural Program Decompiler
Coda: An End-to-End Neural Program DecompilerConference: NeurIPS 2019这篇文章提出了一个新的反编译框架Coda,分为code sketch generation 和 error correction两部分。在第一部分使用了Tree-LSTM,AST generation 和 Attention机制,第二部分使用了迭代式的纠错方法改正第一部分可能出现的错误。因为包含了指令类型感知型的Encoder和AST生成,所以Coda也可以容易地推
2021-04-22 13:14:11 585
原创 【论文阅读-EMNLP-2019】JuICe代码生成数据集
JuICe: A Large Scale Distantly Supervised Dataset for Open Domain Context-based Code GenerationConference: EMNLP-2019Rajas Agashe, Srinivasan Iyer and Luke ZettlemoyerPaul G. Allen School of Computer Science and Engineering, Univ. of Washington, Seattle
2021-04-21 18:42:11 432 1
原创 Transformer常见坑与注意事项
Transformer Mask进行Attention的时候进行mask分为2种:第一种:进行self attention的时候使用Encoder:padding maskDecoder:下三角的mask 和padding的mask进行与运算第二种:进行Encoder-Decoder的时候使用使用的是src_mask的padding mask,因为enc_output作为key和value,不要query关注到哪些key偷答案的常见方式和解决办法1、 decode的inpu
2021-04-17 12:17:32 841 1
原创 常见神经网络结构拓扑图
神经网络的结构呈指数型增长的趋势,下图展示了多部分神经网络经典的拓扑结构。P --> FF : 增加了一层隐藏层,所有节点为全连接FF --> RBF : 使用径向基函数(Radical Basis Function,RBF)作为激活函数,而不是逻辑函数。这使得神经网络可以处理连续的值。FF --> DFF : 使用了多层隐藏层,开启了深度学习的纪元。DFF --> RNN : 在神经网络中传递状态等信息,适用于上下文非常重要的情况。例如当过去的迭代或样本的决策会影响
2021-03-19 11:42:14 6473
原创 【论文阅读 EMNLP-2019】Text Summarization with Pretrained Encoders
Text Summarization with Pretrained EncodersYang Liu and Mirella LapataInstitute for Language, Cognition and Computation School of Informatics, University of Edinburgh yang.liu2@ed.ac.uk, mlap@inf.ed.ac.ukEMNLP 2019link: https://arxiv.org/abs/1908.08345
2021-03-02 12:34:45 710
原创 【论文阅读-IJCAI-2020】NLocalSAT: Boosting Local Search with Solution Prediction
NLocalSAT: Boosting Local Search with Solution PredictionIJCAI-2020Wenjie Zhang1 , Zeyu Sun1 , Qihao Zhu1 , Ge Li1 , Shaowei Cai2,3 , Yingfei Xiong1 and Lu Zhang1∗1Key Laboratory of High Confidence Software Technologies (Peking University), MoE; Softwar
2021-02-08 15:35:03 904 2
原创 【论文阅读 - AAAI 2020】Order Matters:Semantic-Aware Neural Networks for Binary Code Similarity Detection
Order Matters: Semantic-Aware Neural Networks for Binary Code Similarity DetectionAuthors:Zeping Yu,1∗ Rui Cao,1∗ Qiyi Tang,1 Sen Nie,1 Junzhou Huang,2 Shi Wu1† 1Tencent Security Keen Lab, Shanghai, China2Tencent AI Lab, Shenzhen, China{zepingyu, ruich
2020-11-04 17:32:39 1508 1
原创 做研究与写论文【周志华教授】
本文内容来自于周志华老师在2007年的报告《做研究与写论文》首先讲到研究与研发的区别,其主要区别在于“新”:研究:发现新知识、发明新技术研发:根据已有知识和技术进行研制、开发科学研究可以扩展人类的知识,没有科学研究就没有技术进步如何做研究?研究的基本过成可以分为TPIC,即Topic -> Problem -> Idea -> Concrete work (theoretical analysis, experiments).1、Topic计算机科学发展到今天,已经是一
2020-11-02 13:49:13 679
原创 ROUGE的理解
ROUGE的理解ROUGE表示Recall-Oriented Understudy for Gisting Evaluation,这是在文本摘要以及机器翻译中重要的评价指标。它通过将自动产生的摘要或翻译与一组参考摘要(通常是人工产生的)进行比较来工作。目前在文本摘要任务中最常用的评价方法是ROUGE(Recall-Oriented Understudy for Gisting Evaluation,来源于2003的paper Automatic Evaluation of Summaries Using
2020-10-24 09:49:45 2115
原创 【论文阅读 - AAAI 2020】TreeGen: A Tree-Based Transformer Architecture for Code Generation
TreeGen: A Tree-Based Transformer Architecture for Code GenerationConference: AAAI 2020Autors:Zeyu Sun,† Qihao Zhu,† Yingfei Xiong,∗† Yican Sun,† Lili Mou,‡ Lu Zhang† †Key Laboratory of High Confidence Software Technologies (Peking University), MoE; Sof
2020-10-15 16:49:59 1294 2
原创 【Posts阅读】关于 Deep Sets 和 Neural Processes的简单介绍
A Gentle Introduction to Deep Sets and Neural Processes关于 Deep Sets个 Neural Processes的简单介绍Link: https://gordonjo.github.io/post/deepsets_nps/Author:Jonathan GordonMachine Learning PhD StudentMy research interests include probabilistic machine learni
2020-10-06 19:36:18 4013 1
原创 【论文阅读-ASE 2020】利用单词重叠信息的代码检索 OCoR: An Overlapping-Aware Code Retriever
OCoR: An Overlapping-Aware Code RetrieverConference: ASE 2020Authors:摘要代码搜索任务是通过给出一段自然语言描述,模型能够找到一系列最相关的代码片段,由此来帮助开发人员重用代码。然而现有的方法都无法来专门捕获一个重要的特征:单词重叠(overlaps)。有不同的开发人员写的使用的不同名称可能是相关联的,比如“message”和“msg”它们表达的意思很可能是相同的。而且对于程序语言的变量名称和相应的自然语言描述之间的overl
2020-10-06 15:33:01 553
原创 【论文阅读 - AAAI 2019】Abstractive Summarization: A Survey of the State of the Art
Abstractive Summarization: A Survey of the State of the ArtConference: AAAI 2019Authors:Hui Lin, Vincent NgHuman Language Technology Research Institute University of Texas at Dallas Richardson, TX 75083–0688 {hui,vince}@.hlt.utdallas.edu论文链接:https://ww
2020-09-26 22:28:24 727
原创 C程序在内存中的布局与常见的漏洞
1. C程序员通用的漏洞指南C语言中大多数漏洞都与缓冲区溢出和字符串操作相关,在大多数情况下,都会导致段错误(segmentation fault),但仅过精心设计的输入值,但是,根据体系结构和环境特别设计的恶意输入值可能会导致任意代码的执行。下面列出了最常见的错误和建议的修复/解决方案。gets函数gets()函数不会检查缓冲区的长度,常常会成为一个漏洞。有漏洞的代码:#include...
2020-06-16 21:32:43 1142
原创 使用tf.data 加载文件夹下的图片集合并分类
Tensorflow原始教程链接在官网:https://tensorflow.google.cn/tutorials/load_data/images简化版:https://colab.research.google.com/drive/146IoL0nVN7HOA3sUJ08zAGbngmwTArDp?usp=sharing但原始教程中比较繁琐,对于想要直接使用的情况的话,本文将如下要点提炼出来。1、数据假设你有如下形式的数据:每一个类别的名称就是文件夹名称,每个文件夹下面放置该类的图片。
2020-06-16 21:17:01 1410
转载 【转载】linux screen 命令详解
转载:David_Tanglinux screen 命令详解https://www.cnblogs.com/mchina/archive/2013/01/30/2880680.html一、背景系统管理员经常需要SSH 或者telent 远程登录到Linux 服务器,经常运行一些需要很长时间才能完成的任务,比如系统备份、ftp 传输等等。通常情况下我们都是为每一个这样的任务开一个远程终...
2020-05-02 13:18:18 429
原创 联邦学习(Federated Learning)白皮书
联邦学习白皮书下载地址:https://cn.fedai.orghttps://img.fedai.org.cn/wp-content/uploads/pdf/联邦学习白皮书_v2.0.pdf2020年4月8日,微众银行人工智能部联合电子商务与电子支付国家工程实验室(中国银联)、鹏城实验室、平安科技、腾讯研究院、中国信通院云大所、招商金融科技等多家企业和机构发布了《联邦学习白皮书V 2....
2020-04-28 11:56:34 4366
原创 联邦学习(Federated Learning)介绍
参考资料:Tensorflow官网教程:https://www.tensorflow.org/federated/联邦学(federated learning)习生态:https://cn.fedai.orgfederated learning/联邦学习:https://daiwk.github.io/posts/dl-federated-learning.htmlFederated ...
2020-04-21 13:44:16 5829
原创 NLP从Seq2Seq到ALBERT模型理解与实践
今天来推荐一下自己开源的一个小项目,主要包括NLP中一些经典模型的理解与相关实践,从最初的Seq2Seq到目前比较流行的BERT模型,以及BERT模型改进——ALBERT模型等。链接地址:https://github.com/LIANGQINGYUAN/NLP-Notebook下面包含这个仓库的基本学习路线、目录和示例。基本学习路线下面是模型实践的基本学习路线:图片内年分为对应模型的...
2020-04-19 00:15:23 770 4
原创 【科研】经典演讲“You and Your Research”
在贝尔通讯研究研讨会系列的一次研讨会上,加利福尼亚蒙特雷海军研究生院教授,贝尔实验室退休科学家Richard W. Hamming博士作了一个非常有趣且令人振奋的演讲,“You and Your Research” 。这次演讲的重点是Hamming对以下问题的观察和研究:“为什么只有少部分的科学家做出了巨大的贡献,而大多数科学家的贡献都在历史中被遗忘了?”。根据他40多年的经验(其中30年在贝尔实...
2020-03-20 21:54:29 3370
原创 【NLP】ALBERT:瘦身版的BERT模型
引言BERT是一种预训练模型,有很多预训练模型,例如skip-gram,cbow可以用在embedding的时候的预训练模型,但参数比较少,我们得在加上很多其他层来训练。ALBERT也是一种预训练模型。在深度学习中,我们知道把网络变深可以增加模型的效果,但将BERT模型的网络变深,hiddne size变大之后将会很大训练,因为参数的量级达到了十几G。所以就引出了ALBERT的核心研究问题:...
2020-03-17 13:59:05 841
原创 【NLP】李宏毅老师ELMO, BERT, GPT讲解【笔记】
零、引例首先来看一个例子,下面有四句话,每一句话中都有“bank”这个单词:1、Have you paid that money to the bank yet ?2、It is safest to deposit your money in the bank .3、The victim was found lying dead on the river bank .4、They sto...
2020-03-07 19:33:48 1716 1
原创 【NLP】Transformer机制与实战(Tensoflow2.x)
一、基本框架Transformer模型是Google在2017年的论文《Attention is all you need》中提出的一种模型。Transformer之前的Seq2Seq的模型中,Encoder和Decoder中的基本单元结构是RNN系列(如LSTM,GRU等)的单元。但在Transformer中并没有使用这些单元结构。首先来说一下transformer和LSTM的最大区别, ...
2020-03-06 21:48:19 1187
原创 【NLP】Attention机制与实战(Tensoflow2.x)
Attention是一种用于提升基于RNN(LSTM或GRU)的Encoder + Decoder模型效果的机制(Mechanism),一般称为Attention Mechanism。Attention给模型赋予了区分辨别的能力,例如,在机器翻译、语音识别应用中,为句子中的每个词赋予不同的权重,使神经网络模型的学习变得更加灵活(soft),同时Attention本身可以做为一种对齐关系,解释翻译输...
2020-03-03 22:09:01 1753
原创 PRML《模式识别与机器学习》的Python3代码实现
项目地址:Python实现:https://github.com/ctgk/PRMLMatlab实现:https://github.com/PRML/PRMLTPRML是一本有关机器学习的入门必备书籍,与“西瓜书”齐名,目前豆瓣评分9.5分:书籍评价引用网友对PRML的评价:“个人认为这是机器学习领域必读的一本书,甚至是目前最好的书。但这本书太过于 Bayesian, 作者对任何...
2020-03-03 21:04:38 2008
原创 【NLP】Seq2Seq模型与实战(Tensoflow2.x、Keras)
一、从RNN到Seq2Seq根据输出和输入序列不同数量rnn可以有多种不同的结构,不同结构自然就有不同的引用场合。如下图,one to one 结构,仅仅只是简单的给一个输入得到一个输出,此处并未体现序列的特征,例如图像分类场景。one to many 结构,给一个输入得到一系列输出,这种结构可用于生产图片描述的场景。many to one 结构,给一系列输入得到一个输出,这种结构可用...
2020-02-20 18:11:47 2319 1
原创 第4章(4.4~4.6节)自定义层与计算【深度学习计算】--动手学深度学习【Tensorflow2.0版本】
项目地址:https://github.com/TrickyGo/Dive-into-DL-TensorFlow2.0UC 伯克利李沐的《动手学深度学习》开源书一经推出便广受好评。很多开发者使用了书的内容,并采用各种各样的深度学习框架将其复现。现在,《动手学深度学习》书又有了一个新的复现代码版本——TensorFlow2.0 版,短时间内成为了github上千star项目,欢迎关注。文章...
2020-01-31 22:31:50 548
原创 第4章(4.1~4.2节)模型构造与参数【深度学习计算】--动手学深度学习【Tensorflow2.0版本】
项目地址:https://github.com/TrickyGo/Dive-into-DL-TensorFlow2.0UC 伯克利李沐的《动手学深度学习》开源书一经推出便广受好评。很多开发者使用了书的内容,并采用各种各样的深度学习框架将其复现。现在,《动手学深度学习》书又有了一个新的复现代码版本——TensorFlow2.0 版,短时间内成为了github上千star项目,欢迎关注。文章...
2020-01-31 16:17:23 621
原创 第3章(3.11~3.16节)模型细节/Kaggle实战【深度学习基础】--动手学深度学习【Tensorflow2.0版本】
项目地址:https://github.com/TrickyGo/Dive-into-DL-TensorFlow2.0UC 伯克利李沐的《动手学深度学习》开源书一经推出便广受好评。很多开发者使用了书的内容,并采用各种各样的深度学习框架将其复现。现在,《动手学深度学习》书又有了一个新的复现代码版本——TensorFlow2.0 版,短时间内成为了github上千star项目,欢迎关注。3....
2020-01-31 14:47:07 1484
原创 第3章(3.8~3.10节)多层感知机实现【深度学习基础】--动手学深度学习【Tensorflow2.0版本】
项目地址:https://github.com/TrickyGo/Dive-into-DL-TensorFlow2.0UC 伯克利李沐的《动手学深度学习》开源书一经推出便广受好评。很多开发者使用了书的内容,并采用各种各样的深度学习框架将其复现。现在,《动手学深度学习》书又有了一个新的复现代码版本——TensorFlow2.0 版,短时间内成为了github上千star项目,欢迎关注。文章...
2020-01-30 20:51:20 2342
64位msvcp120d&msvcr120d;
2018-02-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人