自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 相似向量检索库-Faiss-简介及原理

前言由于项目需要,需要对某些种子用户进行look-alike,找到相似用户,所以近期对相似向量检索库Faiss进行一定的了解,接下来,结合相关资料,把我对这个库的了解记录在这里,也希望对你有所帮助!一:Faiss简介Faiss全称(Facebook AI Similarity Search)是Facebook AI团队开源的针对聚类和相似性搜索库,为稠密向量提供高效相似度搜索和聚类,支持十亿级别向量的搜索,是目前较成熟的近似近邻搜索库。它包含多种搜索任意大小向量集(备注:向量集大小由RAM内存决定)

2022-01-15 18:36:34 30260 4

原创 MacBook21-m1 pro芯片安装Anaconda及TensorFlow的GPU版本(提供全部所需文件)

前言许久没有写博客了,一方面毕业季忙于毕设以及一篇论文,另一个方面是开始工作了,事情就多了起来,最主要的还是自己变懒了。。。 导致九个月没有写过博客了,甚是惭愧。希望自己坚持分享自己遇到的问题,也希望能帮助到别人。好了闲言少叙,切入正题,由于工作需要,使用mac办公,但是mac使用的是Arm架构的芯片,在不少方面都有着限制。近期就遇到了需要本地安装python环境以及GPU支持的问题。1:问题背景环境:需求:使用Anaconda安装python环境,安装TensorFlow- GPU库,跑通样

2022-01-08 22:14:33 4390 13

原创 VScode突然无法连接远程服务器(WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED)

前言昨天还好好的,今天突然就连接不上远程服务器了,以为是远程ssh配置有有问题,但是神奇的是使用Xshell是可以访问的,上网查了半天,终于解决了,现在记录一下吧。输出日志[21:25:49.335] Terminal shell path: C:\WINDOWS\System32\cmd.exe[21:25:52.814] > @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@> ]0;C:\WINDOWS\Sys

2021-03-18 21:59:20 9942 17

原创 NLP相关知识点问答总结(三)

前言这些知识点基本是本人在准备春招和秋招时做的笔记,东西比较杂,有的是自己总结,有的是参考网上博客,可能不是很准确,还望各位批评指正,多多交流。问-1:L1和L2正则化的联系和区别?答:相同点:1:都可以用来防止过拟合2:其主要思想都是结构风险最小化:在经验风险最小化的基础上(也就是训练误差最小化,原有的损失),尽可能采用简单的模型,以此提高泛化预测精度。不同点:1:L1正则化(L1范数,Lasso回归)是各个参数绝对值的和,L2正则化(L2范数,Ridge回归,岭回归)是各个参数的平方和

2021-03-01 09:41:26 2868

原创 NLP相关知识点问答总结(二)

前言这些知识点基本是本人在准备春招和秋招时做的笔记,东西比较杂,有的是自己总结,有的是参考网上博客,可能不是很准确,还望各位批评指正,多多交流。问-31:GloVe相对于word2vec有哪些优缺点?答:优点:1:统计全局信息: 考虑了全局的统计信息,在小数据集上也能有不错的效果,word2vec只使用局部的信息2:训练速度更快: 从其实现上来说,更容易实现并行化,所以训练速度更快,相对于Co-Occurence Vector进行矩阵分解,速度要更快3:可拓展性强: 如果加入新的语料,由于之前

2021-02-28 10:09:36 2244

原创 NLP相关知识点问答总结(一)

前言这些知识点基本是本人在准备春招和秋招时做的笔记,东西比较杂,有的是自己总结,有的是参考网上博客,可能不是很准确,还望各位批评指正,多多交流。问-1:对于NLP任务来说,特征提取器需要满足什么能力?答:1:保留位置信息 ,对于文本数据来说,不同的位置信息可能会带来较大的影响2:具备长距离特征捕获能力问-2:NLP的主要有哪些任务任务?答:1:序列标注:中文分词,词性标注,命名实体识别,语义角色标注等2:分类任务:文本分类,情感计算3:句子关系判断:问答(QA),语义改写(这个不太明白)

2021-02-27 11:42:17 1347 3

原创 chrome被hao123劫持网页

问题描述不知道时候开始,打开chrome后就会直接打开hao123的导航网页,即使在设置中把启动时打开特定网页修改成别的网页也还是不行,它会在打开特定网页后,再打开这个hao123的导航页,简直烦死人,这玩意像狗皮膏药一样。。。解决方案1 修改名字直接找到chrome的运行程序chrome.exe,然后把chrome.exe的文件名修改成其他的名字如chrome_temp.exe然后再重新创建快捷方式即可。这是因为chrome.exe这个程序被恶意劫持了,劫持的方式是用文件名进行匹配的,所以改了文件

2021-02-25 14:04:54 571

原创 Python中单双引号的字符串有啥不同???

奇怪的单双引号字符串对于下面这样的两个字符串你觉得有啥区别?str1 = 'Hello, I am python'str2 = "Hello, I am python"没啥区别,两个表示相同的意思。既然表示相同的意思,为啥还要多此一举呢?原来是python考虑到了人性化设计,有些字符串内可能需要使用到转义字符,看起来不是那么好看,所以就设计了这样一种方法。如下例:str1 = 'Hello, I\'m “python”'str2 = "Hello, I'm \"python\""Hello

2021-01-20 17:01:57 292

原创 运行时出现 RuntimeError: CUDA error: device-side assert triggered 错误提示

问题描述原本运行时正确的,但是更换了分词器后突然就出现下面的错误提示:RuntimeError: CUDA error: device-side assert triggered问题原因很可能是数据越界问题,在NLP中很可能出现在词嵌入那块,比如词表一共有1000个词,那么输入的token id 的范围应该是0-999,如果你的输入token id 包含了1001,或者更大的值,那么在进行词嵌入的时候,嵌入矩阵无法索引到这么大的位置,就会出现越界问题。这个问题还可能出现在输出上,比如你的输出标签只有

2020-12-22 10:58:57 2460 3

原创 win10+jupyter+闪退+出现ImportError: cannot import name ‘secure_write‘ from ‘jupyter_core.paths‘错误

问题描述jupyter打开后闪退,什么都没提示。然后使用Anaconda prompt 运行指令jupyter notebook,可以发现出现如下错误:(base) C:\Users\XuHR>jupyter notebookTraceback (most recent call last): File "C:\Users\XuHR\Anaconda3\Scripts\jupyter-notebook-script.py", line 6, in <module> fro

2020-11-09 20:29:36 1590 2

原创 Python-实现快排

前言快排作为一个经典的算法,基本上是大家耳熟能详的。它的基本思想也挺简单的,利用二分法,不断将给定的数划分为两组,比目标值大的和比目标值小的。第一次用它就是大一学C语言时书上的一个实现,写的有点绕,而且当时还不是太懂递归,看的迷迷糊糊,只是知道它的大致思想,但是直接写代码,却是各种问题不断。后面就基本都是用写好的库函数,也不太关心它的内部实现,但直到再次刷题要明确实现它时,还是卡了壳,所以这里就记录一下它的实现吧。代码实现def qsort(nums,begin,end): if begin&

2020-08-17 14:10:01 1768

原创 Beam Search Python实现及复杂度分析

前言NLP的生成式任务的解码过程,经常会用到Beam Search的算法。之前也大概明白它是啥意思,但是具体实现细节还是不太清楚,这次就按照自己的理解把模拟代码实现一下,如果有啥错误,还望指出哇。分析机器翻译任务或者别的文本生成式任务,在解码的过程中,我们希望输出一句出现概率最高的句子,在每个Token生成的时候都有V(词典大小)个选择,每个选择有不同的概率,假设输出的这一句话一共有L个token,通过概率分解,我们可以假设这一句话出现的概率是所有token出现概率的乘积。那么此时,就会有朋友(无中生

2020-08-16 22:49:01 2206

原创 对话系统论文阅读-SOLOIST: Few-shot Task-Oriented Dialog with A Single Pre-trained Auto-regressive Model

简介2020年六月 微软发布,还不清楚那个会议。论文下载链接这篇论文和上篇7月份发布那篇论文很像很像。并且SOLOIST引用了七月份这篇论文,这个有点迷。Motivation构建一个任务导向型的对话系统是很困难的事情,需要在该任务领域内积累大量知识,如果更换领域的话,基本得从头开始进行所有的积累工作。所以借鉴一下NLP中的预训练模型的思想,如果能够先在有大量语料的领域内训练出一个通用的模型,然后再不同的领域或者任务上进行微调,这样可以快速地在不同的领域内构件任务导向型的对话系统。Contribu

2020-08-14 18:04:56 820

原创 对话系统论文阅读-A Simple Language Model for Task-Oriented Dialogue

简介2020七月,salesforce 发布的,还不知道在哪个会议,先一睹为快吧。论文下载链接Motivation传统任务导向的对话系统,单独对每个模块进行处理,即使所有模块性能都很好,但如果其中一个模块出现错误,那么错误会传播到其他的模块,影响整个对话系统的性能。Contribution提出了使用end2end的模型,同时对多个任务进行处理,把整个pipeline当做一个序列预测问题。整个模型是一个因果模型(单向模型)。Method训练过程模型输入包括五个部分,上下文,状态值,数据库查

2020-08-14 17:03:26 1000

原创 最小堆-Python代码实现

前言好久没写博客了,这篇内容还是很久之前就写好的,现在想想还是把它贴出来吧,也算是贡献一点代码。另外想直接获取代码的直接拷贝即可,分析过程写的不是很有逻辑性,大家将就着看吧。分析过程最小堆和最大堆结构图如下:堆需要满足的条件:必须是二叉树,且必须是完全二叉树各个父节点必须大于或小于左右结点, 其中最顶层的根结点必须是最大或者最小的实现这样的堆可以采用list或者数组来实现,将这样的二叉树以层序遍历存储在数组中,对于这个list或者数组中的第K个节点其:父节点的下标为:par

2020-07-05 23:24:57 1866

原创 NLP模型卡-ALBert

一:模型简介其全称:A lite Bert,小模型。顾名思义该模型主要用于解决现有模型参数过多,训练速度过慢的问题,实际上做的类似模型压缩的工作。主要通过对词嵌入矩阵进行因式分解,使得其词典打下V和隐藏层大小H分离开来,这样模型参数不会随着词典的增大而急剧增大。同时使用跨层参数共享(Cross-layers parameter sharing),使得模型参数量不随模型层数而增加,进一步减小模型大小和训练时间。二:论文ALBert:A lite bert for self-supervised lear

2020-05-23 20:27:01 478

原创 NLP模型卡-RoBERTa

一:模型简介许多Bert+的模型基本都会对Bert的模型结构进行修修补补,然后跑出一个SOTA值,但是RoBerta并没有提出一个新的模型结构,其全名是A Robustly Optimized BERT Pretraining Approach,一种鲁棒的Bert预训练方法(按理说应该叫RoBERTpa,估计是不太好读吧,事实证明起个易于上口的名字有利于企业的发展,比如巴依尔是哪个车名的前身?)而是对Bert的预训练方法进行了改进,除了改变Mask的方式之外,其他各个改进基本都是上演着大力出奇迹的事情。

2020-05-21 22:26:01 1160

原创 NLP模型卡-XLNet

一:模型简介在Bert模型中,由于Mask符号只在预训练的过程中出现和使用,但是在后续微调或下游任务中不出现,这就会导致这两个阶段出现不一致的问题,同时这个设置还会造成训练数据利用率不高的问题。而对于AR(Auto regression)模型来说其能获取更长距离的依赖,但是却不如Bert类AE(Auto Encoding)的模型具有捕获双向信息的能力。因此XLNet整合了这两个模型的优点同时解决了Bert中Mask符合的问题,也使得模型更加适用于生成式的任务。二:来至论文XLNet:Generaliz

2020-05-21 17:58:31 340

原创 NLP模型卡-Transformer-XL

一:模型简介全名是 Transfomer extra long,顾名思义,主要是为了解决Bert或Transformer中只能在固定的长度的上下文中学习依赖关系的问题,主要提出了segment-level recurrence和relative positonal encoding两个方案。二:论文Transformer-XL:Attentive Language Models Beyond a Fixed-Length Context发布者:CMU, Google Brain 2019-ACL三

2020-05-21 00:40:59 333

原创 NLP模型卡-Bert

模型简介BERT的全称为Bidirectional Encoder Representations from Transformers,即双向Transformer的Encoder。Bert模型算是Transformer模型(encoder)的一种堆栈,不同的是把其改造成双向模型,同时完成单词补全(Masked model)和句子关系预测(sentence prediction)两个任务,提高了模型的特征提取能力。论文:Bert:Pre-training of Deep Bidirectional T

2020-05-21 00:34:33 735

原创 Windows10+QT5.11+openCV3.4.4超简洁配置安装(无需安装VS,无需编译opencv,提供全部所需文件)

前言在给QT配置opencv的时候有麻烦的一个环节就是要编译opencv,中间有很多步骤和坑,搞得我也是很头疼,看到网上对于编译opencv的帖子,大家还都有点不一样,有的人很顺利就成功了,有的人就死活也搞不定。。。我算是累死累活才编译成功的,其中的辛酸就不与外人言了。这里就直接把我编译好的文件分享给大家,你只需要下载下来,然后配置一下环境变量,在需要的时候引用一下头文件就可以了,完美避开编译o...

2020-04-16 22:20:23 1139 4

原创 ParlAI+ubuntu18.0+python3.6+pytorch配置问题

前言最近在研究对话系统,所以就尝试学习一下Facebook的对话系统框架,配置了我一天了。。。出了不少问题,好在算是解决了,简单记录一下吧,或许对你有用。问题描述在运行测试命令python examples/display_data.py -t babi:task1k:1时出现下面的错误提示:Traceback (most recent call last): File "exampl...

2019-12-19 23:15:56 304

原创 win10+vscode+texlive 配置latex编辑环境

前言再也不能只用word写文档了,是时候用一下latex了,以后写论文啥的也都可以使用,多学一项技能也是极好的。但是呢,如何配置latex的开发环境着实头疼了一把,不过好在解决了,下面记录一下解决方案,希望能够帮助到你。开发环境win10操作系统,编辑器是vscode,texlive(这个很大,但是功能很全,推荐用这个)操作流程1:安装texlive下载地址1:清华镜像源下载地址2:...

2019-12-19 15:03:58 1478

原创 LeetCode-38. Count and Say

前言改用c++写了,之前用python,语法啥的算是熟悉了一些吧,现在用c++,也希望能熟悉一下,主要还是算法思想之类的吧。问题描述大概的意思是需要把一个字符串读出来,读的规则是有k个1就输出k1,有n个2就输出n2,然后这样循环读下去,问第n次循环应该输出什么?解决方案我的解决方案依然是很笨重,基本没啥可借鉴的地方,同时由于对c++不太熟悉,string和char之间的转换做的很难受...

2019-12-02 20:41:40 102

原创 LeetCode-37. Sudoku Solver

前言最近太懒了,先把LeetCode的题更新上面吧。问题描述解决方案我的解决方案非常简单,就是递归遍历各个方格,填入1-9,然后判断是否合法,如果合法则判断下一个,直到判断到最高一个方格仍然合法,则当前结果就是一个合法的结果,返回该结果即可。用python写的,感觉写的很费事,将就着看吧,而且这样写的效率也不是很高,以后有时间再提升一下吧(估计以后没有心情改了。。。。)class S...

2019-12-02 20:27:27 92

原创 ubuntu18.0+python3.6+安装distribute模块出错(可能已解决)

前言这个问题整了好久了,甚至到我写这篇博客额时候还没有解决,但是我相信应该能解决的,所以就先写下来,免得自己以后忘了写。问题描述由于需要运行一个开源的代码,在安装requirements时,中间应该是需要安装distribute模块,然后出现了下面额错误信息:ERROR: Command errored out with exit status 1: command: /home...

2019-11-18 17:21:45 947 3

原创 Win10+python3.6+git运行出现问题

问题描述这个问题有点迷,基本就是因为python无法调用git,很可能是环境变量的问题,设置了一下,还是不行,如下了下面的错误提示:ImportError: Bad git executable.The git executable must be specified in one of the following ways: - be included in your $PATH...

2019-10-31 18:41:32 6684 15

原创 Win10+PL2030HXA或Prolific USB-to-Serial Comm Port驱动错误或者串口无法打开问题

前言咳咳,这回是一个月没有刷题和写博客了,原因不太想多找,如果肯挤时间的话一定会有时间写的,还是因为一个字“懒”。(读论文读到想吐。。。)不仅要读论文还要做老师的项目,做项目就会遇到各种问题吧,今天就遇到了,刚好还有点时间所以就给记录一下吧。问题描述win10的系统上,有时要使用串口调试,但是以前买的串口芯片很多好像是PL2303HXA的,但是这种芯片是比较老的芯片了,各种支持都很难找到了...

2019-10-30 17:27:56 4289

原创 LeetCode-36. Valid Sudoku

前言两周没有更新博客了,一个是赶上中秋放假,一个是最近再参加一个比赛,忙的一批,也就没有刷题和写博客。。。这个排名的规则好像变了,我的排名一下子从130W+变到了10W+,简直是羞愧难当呀,就发这么几篇水博客还能这样,以后要勤发博客了,要不然都对不起这个排名了。。。问题描述解决方案这个只是让验证当前是否合法,那就按照数独的规则一行,一列,一个九宫格地验证呗,可以使用hash表也可以...

2019-09-29 18:02:15 102

原创 QT5:出现 error: ‘class QString‘ has no member named ‘toAscii‘ 错误

前言原来的一个串口代码可以运行,但是今天突然不能运行了,崩溃。。。。。问题描述window10QT5串口通信原来能够编译运行的代码现在突然不能运行了,出现了error: ‘class QString’ has no member named 'toAscii’的错误提示。解决方案这个问题是由于QT版本不兼容的原因,原来的**toAscii()函数在QT4中是有的,但是在QT5中没有...

2019-09-11 15:33:36 11240 2

原创 LeetCode-35. Search Insert Position

前言很简单的一道题,但是我却好像发现了一个BUG,后面会有讲到。。。问题描述解法这个题基本上没有别的方法了吧,二分法。连着好几道都是二分法了,当然也可以采用O(n)的方法,但这也是最大的疑惑呀。。。直接给我的代码吧class Solution: def searchInsert(self, nums: List[int], target: int) -> int: ...

2019-09-09 19:25:54 121

原创 Python 获取当前路径并列出当前路径下的所有文件

问题描述因为需要读取多个文件,但是如果一个一个地输入名字和读取,效率就会异常地低,作为程序员,怎么能忍受这样的折磨呢???所以,现在问题是如何获取当前路径,并获取指定目录下的所有文件,然后对每一文件进行单独处理呢?解决方案首先获取当前路径,使用下面的代码:import ospath = os.getcwd()#获取当前路径print(path)输出:'/home'然后获取当...

2019-09-09 15:08:43 16884

原创 LeetCode-34. Find First and Last Position of Element in Sorted Array

前言又一次深夜博客,今天室友睡得很早,十二点半不到就上床了(已经是很早了。。。),但是我这边却刚刚开始写,所以也一下子停不下来,就只能写晚再睡了。。。问题描述解法一我的解法应该是最容易想到的一种解法吧,首先使用二分法,这个肯定是确定的。然后在找到目标值的位置后,分别向目标位置两边进行遍历,直到找到第一个与其不同的值,然后分别记录下其左右边界即可。下面就是俺的代码:class Solut...

2019-09-09 00:51:52 128

原创 LeetCode-33. Search in Rotated Sorted Array

前言这个点写博客,真的是有点被逼无奈呀,室友每天晚上都睡得很晚(不是打游戏,是在学习),我是基本全黑的情况下还要酝酿很久才能睡着的人,所以更别提有光和有鼠标键盘声的环境下了,既然睡不着就起来刷题写博客吧,总比在床上玩手机来的好!所以这应该算是我的第一篇深夜博客吧,以后估计还会有更多吧。。。问题描述解法一看到这个问题第一个想法肯定就是二分法呀,又要求了时间复杂度在log(n),所以二分法没...

2019-09-07 01:19:20 94

原创 LeetCode-32. Longest Valid Parentheses

前言用了一个小时,想了一种O(n)的算法,结果发现才超过百分之十几的人。。。但是后来看了solution,基本也都是这种复杂度呀,为啥我的运行的这么慢呢?可能是代码写的太烂了吧,又参考了别人的思想,写了动态规划的解法,如果有时间就写下来,大家也可以去看官方给的解法。问题描述解法一下面的解法就是我的垃圾解法,首先通过一个list来实现堆栈,对整个数组进行遍历,找到所有可以配对的括号,记录在...

2019-09-05 20:43:09 133

原创 LeetCode-31. Next Permutation

前言一道题想了两天才想出来,刚开始想法很复杂,后来终于想出了一种O(n)的做法。但是并没有超过90的人,以为自己的解法不是最佳的,但是看了官方给的solution,原来就是我的这种做法,看来英雄所见略同呀,哈哈!问题描述解法解题方法是从后往前,直到找到一个下降沿的值,然后将这个值和后面的第一个比它大的值互换,最后再把这个值后面的所有数按照升序重新排列一下,这样就得到了比原来的数更大的下...

2019-09-04 19:50:55 83

原创 LeetCode-30. Substring with Concatenation of All Words

前言突然一周没刷过题了,有点时间就刷一下题吧,顺便把解题思路记录下来,一个是自己做笔记,一个是给大家一点思路。前面的二十多道以后有时间再补吧,现在刷到了30题,就从这个开始吧!问题描述解法一首先是一种暴力解法,直接遍历所有可能的list,然后看这个list是否满足要求,在验证该list是否满足要求的时候需要使用到类似hash的数据结构,保证words中的每个元素都被用到过一次,由于其中...

2019-09-02 20:05:09 155

原创 Windows10+TensorFlow GPU+GTX1060 完全安装版本(所需全部文件均已给出)

前言之前配过一次,但没有配好,o(╯□╰)o,所以这次又重新进行配置了一遍,现记录如下,希望和我情况相同的同学能够少点障碍。环境及问题描述环境Windows10 64 位系统GTX1060 6G问题需要在windows系统配置TensorFlow的GPU版本,本方案应该可行,只要和我情况一样(别的系统没试过,不过把win10的部分换成win7应该也差不多能行吧),本文用到的所有文件...

2019-09-02 13:22:08 1712 1

原创 《机器学习基石》 课后作业-Homework0

《机器学习基石》课后作业-Homework0前言Probability and Statistics1combinatorics2 counting3 conditional probability未完待续。。。前言果然自己还是一个十足的拖延症患者,虽然有很多次想写博客,但是都觉得没有时间,或者觉得太麻烦,但是后面自己会多写一点的,现在把学习台湾大学林轩田的《机器学习基石》的习题放在博客上,以...

2019-08-27 21:39:25 804

空空如也

空空如也

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

TA关注的人

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