排序数组中寻找指定的数所对应的起止索引 给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。你的算法时间复杂度必须是O(log n) 级别。如果数组中不存在目标值,返回[-1, -1]。示例 1:输入: nums = [5,7,7,8,8,10], target = 8输出: [3,4]示例2:输入: nums = [5,7,7,8,8,10], target = 6输出:[-1,-1]...
下一个更大的排列 实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。必须原地修改,只允许使用额外常数空间。以下是一些例子,输入位于左侧列,其相应输出位于右侧列。1,2,3 → 1,3,23,2,1 → 1,2,31,1,5 → 1,5,1...
Python安装mysql报错EnvironmentError: mysql_config not found 报错信息如下: raise EnvironmentError("%s not found" % (mysql_config.path,)) EnvironmentError: mysql_config not found ----------------------------------------ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs f...
elasticsearch.exceptions.AuthenticationException: AuthenticationException(401, u‘{“status“:401,“mess 报错信息如上:第一种原因:用户的search权限没有开通第二种原因:es.search() 方法默认的是post请求,而我们只允许get的权限。因此需要给post请求授权
Python统计数据的区间分布 通过itertools中的groupby进行统计,区间可以自定义,我定义的是10.from itertools import groupbylst=[]with open(path,'r',encoding='utf-8') as f: lines=f.readlines() for i,line in enumerate(lines): cnt=int(line.strip()) lst.append(cnt)print(len(lst))
去掉字符串两端的引号 用sql查询下载的数据带了多个引号,数据格式如:'"顶楼漏雨维修由谁承担费用?","6"'去掉两边的引号对数据进行分割:tmp=eval(line.strip())query=tmp[0]label=tmp[1]通过eval()分割后的数据是元组类型,直接按索引即可取出字段。...
TypeError:‘dict‘ object is not callable 报这个错是因为在取字典的某个key对应的value时错误的使用了mydict('key'),正确的是mydict['key']
Linux文本处理之sort,uniq 准备文本:test.txt按列分别是学号 姓名 年龄 语文 数学 英语成绩一、sort1. sort默认:以行为单位对文件进行排序,按ASCII码值进行比较升序输出。 cat test.txt sort test.txt2. sort -u test.txt 对test.txt按默认规则进行排序后去除重复行可以看出重复行“李明”对应的这一...
TypeError: a bytes-like object is required, not 'str' matplotlib画注意力机制的图时,中文坐标不显示,与是加了下载中文字体的代码:def get_matplot_zh_font(): fm = FontManager() mat_fonts = set(f.name for f in fm.ttflist) output = subprocess.check_output('fc-list :lang=zh -...
Linux下用parallel并行处理大文件 parallel官网文档:https://www.gnu.org/software/parallel/parallel_tutorial.html安装parallel(wget -O - pi.dk/3 || curl pi.dk/3/) | bash使用:并行化处理文件awk-F"\t"'{print$1}'~/download/20190916|iconv...
安装kenlm依赖时报Tomcat错误 报错信息如下:sudo apt-get install aptitude正在读取软件包列表... 完成正在分析软件包的依赖关系树 正在读取状态信息... 完成 将会同时安装下列软件: aptitude-common libcwidget3v5建议安装: apt-xapian-index aptitude-doc-en | aptitude-doc de...
numpy-np.where np.where()用于三目运算:如果A%2==0成立,则执行A+1,否则执行A-1a=array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])>>> np.where(a < 5, a, 10*a)array([ 0,1,2,3,4, 50, 60, 70, 80, 90]) 小于5的,保持不变,不满足小于5这个...
git 工程太大,clone失败的解决办法 设置:git config --global http.postBuffer 524288000git clone https://XXX.git --depth 1git clone 是克隆所有历史版本而 --depth 1 是克隆最近一次的commit, 1 代表克隆深度...
利用GIZA++和Moses生成双向对齐文件 踩了两周的坑今天终于解决了,本来觉得晚上关于GIZA++生成对齐文件的教程已经很多了没准备写,但是因为我的这个坑我不得不记录一下。利用GIZA++获得单向对齐文件的同时会获得双语词表,但是我从始至终都没看到哪里有什么双语词表。然后研究了三四天的moses,关于moses的整体步骤分为以下几步: Prepare data Run GIZA++ Align words ...
使用GIZA++进行词对齐 GIZA++的github地址:https://github.com/moses-smt/giza-pp准备双语语料zh.txt:源语言海洋 是 一个 非常 复杂 的 事物 。人类 的 健康 也 是 一 件 非常 复杂 的 事情 。将 两者 统一 起来 看 起来 是 一 件 艰巨 的 任务 。 但 我 想 要 试图 去 说明 的 是 即使 是 如此 复杂 的 情况 , 也 存在 ...
统计语言模型工具-kenlm的安装 在最近的工作到需要一个语言模型,为句子打分,本来准备用srilm来做,后来调研发现kenlm无论在内存还是速度上都比srilm好很多。srilm很好安装,安装过程中基本没遇到什么问题,kenlm的安装就是一个大坑,至今自己都觉得是玄学安装,这边记录下安装过程。源码地址:https://github.com/kpu/kenlm在安装kenlm之前需要先安装很多依赖包,主要有:1.去b...
使用mosesdecoder对机器翻译语料进行处理 之前在进行机器翻译时,一般除了与句子长度做了长度限制外,几乎没有做任何额外的操作,直接暴力的使用BPE算法对语料进行预处理。接触的都是BPE子词级别的,我们都知道,bpe算法的强大性,30000个子词几乎可以表示词典中所有的单词。但是如果我们要用词级别的翻译,那词典太大了,在机器翻译中词典受限的情况下,很多词就会变为未登录词。为了让词典尽可能的能囊括更多的单词,必须对双语语料进行预处理操作。关...
中英文维基百科语料上的word2vec实验 在做的实验中需要使用词向量,由于是特定的方法对比,需要自己训练词向量。中英文除了自己已有的语料外,需要下载更多的单语语料数据来扩充数据集,于是选择了维基百科语料。其中英文语料下载地址:https://dumps.wikimedia.org/enwiki/latest/enwiki-latest-pages-articles.xml.bz2获取的数据是xml格式的,需要自己处理下,使...
NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the lat 在服务器上跑代码时指定了GPU,但程序运行完提示我指定的GPU不存在,然后还报了如题的错误,解决方法:方法一:cd /usr/src 查看驱动版本号(我的是410.93)sudo apt-get install dkmssudo dkms install -m nvidia -v 410.93无需重启即可成功看到输入nvidia-smi后熟悉的界面我用了上面方法就解决了,如果...