- 博客(55)
- 收藏
- 关注
原创 python环境变量的配置
之前每次在windows配置环境都是打开面板里的高级设置来添加,今天学习到了新方法 直接通过cmd进入命令行格式path=%path%;C:\Program Files\Python36 #配置pythonpath=%path%;C:\Program Files\Python36\Scripts #配置pip将后面的路径改为自己的安装路径即可...
2019-12-30 11:09:38
348
原创 python2——python3的华丽转身
最近Python2已经进入倒计时了,为了防止之前的代码出现混乱,尽快进行移植是很有必要的一、为什么Python3会产生1.str与byte的问题在python2 中是不区分bytes和str类型的,Python2分别用str和unicode表示字符序列在python3中bytes和str中是区分的,bytes由str通过encode方法转化得到的,str也可以通过bytes 通...
2019-09-12 19:26:02
258
原创 vim编辑器中 inconsitent use of tabs and spaces
在服务器上使用Linux的vim编辑器一直给我一个很大的困扰那就是 每次遇到自己需要修改的地方 总会报错inconsitent use of tabs and spaces然后只能再download到本地的IDE中调整,再upload,很费时间也有想过一劳永逸的方法,参考了网上几篇修改vimrc文件的博客都不奏效,类似下面这种终于找到一种work的方法,记录下来注意:...
2019-07-26 15:30:00
561
原创 Ubuntu上TensorFlow的cpu与gpu版本共存问题
1.默认选择一直比较疑惑,当Ubuntu上TensorFlow的cpu与gpu版本共存时,他会自动选择哪个呢?测试当前使用cpu还是gpu方法,下面两种方法都可以from tensorflow.python.client import device_libprint(device_lib.list_local_devices())import tensorflow a...
2019-07-04 20:34:14
4838
4
原创 Ubuntu 18.04上安装cuda
一、准备工作参照官网上资料,进行准备工作1. 验证自己的电脑是否有一个可以支持CUDA的GPU$ lspci | grep -i nvidia 我的显示为Tesla P800if it is listed inhttp://developer.nvidia.com/cuda-gpus, your GPU is CUDA-capable2.验证自己的Linux版本是否支持 ...
2019-06-12 11:33:44
88728
9
原创 ELMo运用到下游任务中
1.通过allennlp来跑elmo其中需要下载训练好的参数和模型:options_file和weight_file可在官网下载,其中cuda_service是设置GPU的参数。(1)在12号节点上(centos)失败的尝试我在centos运行此程序时,在第一行import就报错了,原因是说glibc_2.14 not found,我看了下本机上最高的glibc版本是2.12(...
2019-05-24 19:19:52
1537
2
原创 计算机网络与JAVA网络编程
目录一、计算机网络1.分层模型2.传输层(提供端到端的交换数据的机制)(1)TCP与UDP的区别(2)TCP与UDP的应用场景(3)TCP三次握手(4)TCP四次挥手3.网络层(1)ICMP控制报文协议(2)ARP协议(3)路由器和交换机的区别4.应用层(1)超文本传输协议HTTP与HTTPS(2)DNS域名解析协议(3)简单邮件传送协议...
2019-04-11 11:36:40
1110
原创 经典词向量模型总结
目录一.Word2vec二、GloVe三、ELMo四、openAI GPT五、BERT一.Word2vec(详见我的另一篇博客)1.skip-gram和CBOW的区别Word2Vec主要有skip-gram和CBOW两种模型。skip-gram是给定input word来预测上下文,比较适合用于大规模的数据集上。cbow是给定上下文,来预测input word,比较...
2019-04-01 17:40:22
2230
原创 JAVA面试常见问题总结
java基础重载与重写String 和StringBuffer ,StringBuilder的区别接口和抽象类的区别,什么时候用接口,什么时候用抽象类深复制与浅复制:需要一个和A完全相同新对象B,并且此后对B任何改动都不会影响到A中的值浅复制表示复制目标对象本身,并不会复制目标对象的引用,所以B对A的引用C更改会影响到A中C的值 深复制表示复制目标对象本身,并且复制目标对象的...
2019-03-19 11:48:06
176
原创 分类方法总结
对机器学习中常用的分类算法进行总结目录1.逻辑回归(1)LR思想(2)损失函数(3)参数更新(4)如何应用于多分类2.naive byeis(1)NB原理(2)NB优缺点3.SVM(1)划分超平面(2)支持向量(3)拉格朗日求解(4)非线性支持向量机和核函数(5)软间隔最大化(6)与LR的区别(面试常考)4.KNN(1)KNN...
2019-03-12 14:29:22
4554
原创 数据结构——排序方法总结
《剑指》里面说,面试官着重考察二分查找、快速排序和归并排序。故来总结下排序问题啦!目录排序问题总结1.快速排序(1)快排思想(2)快排java代码2.归并排序(1)归并排序思想(2)归并排序步骤(3)归并排序java代码3.堆排序(1)堆排序思想(2)堆排序步骤(3)堆排序java代码排序问题总结上图中:注意普通的排序算法(冒泡、简单...
2019-03-12 10:57:21
3046
原创 决策树与集成学习的结合——GBDT和XGBoost
这两个算法在面经中提到较多,故而整理一下。1.集成学习(将多个弱学习器组合成为强学习器)串行:Boosting,后一个学习器依赖于前一个,故为串行比较有名的是AdaBoost,每次迭代训练一个学习器,并提高前一轮学习器分类错误样本的权值,降低分类正确的权值并行:bagging(样本扰动)、随机森林(样本扰动和属性扰动)Bagging和Boosting的区别:1)样本选择...
2019-03-08 10:37:14
948
原创 深度学习框架(TensorFlow、keras、PyTorch)
一、TensorFlow(参见中文文档)TensorFlow其命名基于工作原理,tensor意为张量(即多维数组),flow意为流动。即多维数组从数据流图一端流动到另一端。TensorFlow 让我们可以先绘制计算结构图, 也可以称是一系列可人机交互的计算操作, 然后把编辑好的Python文件转换成更高效的C++, 并在后端进行计算。TensorFlow主要是由计算图、张量以及模型会话...
2019-03-07 10:20:44
2324
原创 python调试
今天在《剑指offer》上看到,面试官特别注重代码的调试能力,如果能够先做单元测试再写代码,那就更叫人另眼相看了。我的这方面能力确实很缺乏,在不明确错误起源时,我一般都是加print来调试,看看到底是哪一行、哪个变量出了问题。这个方法很慢,而且要回过头来再删掉print语句,很麻烦。1.python中的调试(1)logging方式(和print原理类似)import loggin...
2019-03-04 17:33:40
795
原创 深度学习的基础知识(RNN、LSTM等模型、梯度消失与爆炸、正则化、优化方式)
今天在看迁移学习中的一个模型COVE,里面用到了LSTM(ELMo也是),故而想回顾一下深度学习中的一些基础知识。一、网络结构1.RNN在此之前先介绍fully connected、CNN、RNN等重要architecture(参见台大李宏毅老师的教程)RNN与传统的feedward的区别在于:允许信息的持久化,即基于原始的信息去处理新的信息。2.LSTM...
2019-03-04 14:28:14
2544
原创 手撕word2vec
最近看了一些招聘的面经,深感面试官问的问题很多都是理论基础,但是如果只是浅尝辄止,了解不深入的话一般很可能回答不上来。譬如说机器学习里的一些算法细节、深度学习里的一些优化,只会调包而没有透彻理解原理是万万不行的。我感觉我之前学习方式的对找工作有很大弊端,一般都是对原理稍作了解就开始运用代码,实则并没有将理论消化吸收。比如说接触了很久的word embedding,经典模型word2vec的原理...
2019-02-15 18:49:38
529
原创 python编程初级进阶
最近看一篇论文的源码,正巧是用python写的,看的我羞愧难当...因为是从今年暑假才开始自学python,写的经验不够多,每次的代码都很冗余。看看大佬,各种包和特殊语法用的得心应手,看来我还需要多看多编才能进阶..1.python是一门面向对象语言我几乎是忽略了它这个特性,从未创建过class,把代码几乎写成了面向过程的样子。不过,值得注意的是python中一切皆为对象。如果自己...
2019-01-23 17:25:02
316
原创 NLP神器——gensim工具使用
gensim包作为基础工具使用可以大大提高我们的效率。先简单概括下gensim:Gensim is a Python library for topic modelling, document indexing(LSA/LDA/SVD/TF-IDF等) and similarity retrieval with large corpora(word2vec/doc2vec/fasttext...
2019-01-16 17:21:07
585
原创 Linux——常用命令集合
这里记录下Linux小白常用的命令吧:1.目录、文件等操作rm -rf 删除某目录 mv 源文件 目标文件 类似于搬家或者重命名cd .. 返回上一级目录ssh 从12号登陆18号 ssh txz@11.11.11.18或者ssh txz@node18 【在/etc/hosts里有对应关系】scp 文件传送(如果要传送目录则用-r)将本地文件...
2018-12-12 17:57:54
216
原创 python编码问题
今天遇到一个字符串问题,比较xml文件中读出的字符串,打印出来一样,用==比较(==在python中就是值比较)却是false,百思不得其解debug时,思考可能产生原因1.首尾字符譬如有的字符串末尾有空格、换行符,就会导致不相等解决办法:str1 = str1.strip()2.编码问题我担心是因为编码方式不一样所以比较出来不一样,特意去查了一下 XML中间...
2018-12-07 17:43:00
164
原创 词向量——openAI GPT 1.0与2.0
一、1.0openAI GPT(Generative Pre-trained Transformer)词向量模型,2018年在《Improving Language Understanding by Generative Pre-Training》这篇论文中被提出,下面从几个方面来介绍。1.产生场景将训练好的词向量应用到特定任务中有两个主要挑战:(1)it is unclear w...
2018-11-26 17:01:36
6563
原创 词向量——BERT
BERT(Bidirectional Encoder Representations from Transformers)词向量模型,2018年10月在《BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding》这篇论文中被Google提出,在11种不同nlp测试中创出最佳成绩,包括将glue基...
2018-11-25 15:43:59
6270
原创 词向量——ELMo
ELMo(Embeddings from Language Models)词向量模型,2018年3月在Deep contextualized word representations(语境化的词向量)这篇论文中被提出,下面就几个方面来介绍ELMo模型。1.产生场景(为什么产生)word2vec、glove等词向量模型有以下缺点:(1)没有捕捉到词性等语法信息,比如glove中...
2018-11-23 19:47:56
2424
原创 Hadoop——跑wordcount demo
wordcount有自带的jar,也可以自己写了上传一、跑自带的example 1.创建输入文件 touch /usr/hadoop/tmp/words 然后vim修改内容,我写了两行 hello world hello zzm 2.在 HDFS 上创建目录,并上传到hdfs分布式中(1)[hadoop@Mmaster hadoop]$ bin/h...
2018-11-22 17:37:36
582
原创 glove词向量
一、模型介绍1.产生背景Wordvec对每个local context window单独训练,没有利用包含在global co-corrence矩阵中的统计信息2.推导Pij = P(j | i) =Xij/Xi :the probability that word j appear in thecontext of word i例子:i = ice and j = stea...
2018-11-05 16:54:53
914
原创 分布式集群搭建
在B站找的搭建Hadoop的视频,以下是步骤感觉很简练,有一篇博客讲的更加详细1.准备好jar包和Hadoop包兼容情况如下:hadoop版本>=2.7:要求Java 7(openjdk/oracle)hadoop版本<=2.6:要求Java 6(openjdk/oracle)2.上传jar包以及配置环境变量我的在安装系统时勾选了安装java,通过java ...
2018-10-22 20:10:34
519
原创 Hadoop--1.虚拟机安装与配置
1.第一台虚拟机(master) 上了两节Hadoop课,老师撺掇我们自己课下搞几个虚拟机建个集群试试。 首先就是安装vmware软件,我将安装包和安装教程博客都已经存入了d盘安装包对应虚拟机目录下 安装教程:https://blog.youkuaiyun.com/qq_35206244/article/details/79339453 然后开机之后发现报错说没有操作系统,大概...
2018-09-15 16:43:57
286
原创 spacy包使用
从52nlp官网上截取了这段话:spaCy是一个Python自然语言处理工具包,诞生于2014年年中,号称“Industrial-Strength Natural Language Processing in Python”,是具有工业级强度的Python NLP工具包。spaCy里大量使用了 Cython 来提高相关模块的性能,这个区别于学术性质更浓的Python NLTK,因此具有了业...
2018-09-14 11:36:29
3586
1
原创 sklearn学习笔记
1.接口 首先我们就要知道sklearn里面有哪些接口可以使用,主要分为分类、回归、聚类、降维四类 我用sklearn应该主要还是聚类(降维也可能用到),放大来看有如下这些: 2.dataset sklearn的dataset里面内置了很多可用的数据,可以load一些已有的data,也可以generate一些你想要的data 3.数据标准化norma...
2018-09-11 11:30:38
304
原创 服务器上运行Python项目
直接在笔记本里跑Python项目实在是太慢了,师兄给了实验室服务器一个节点,安排上了! 首先下载了师兄给的bitvise安装包,其实我之前用的是Xshell5,我也不造有什么区别,就又安装了一个。对比之后我发现bitvise上传文件似乎方便些,可以直接在可视化窗口完成,之前在Xshell里还要用rz -be命令。 进入终端之后在/home路径下创建了一个自己文件夹...
2018-09-07 09:19:03
51212
5
原创 Python模块
开始建立Python工程,考虑到在不同层次间导入自定义函数的问题,顾参照别人博客将Python模块总结整理如下: 1.模块的概念 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式。在Python中,一个.py文件就称之为一个模块(Module)。举个例子,一个abc...
2018-08-28 14:46:57
265
转载 NLP---1.学术资料搜集
从别人的博客里搬运过来简洁版1. 国际学术组织、学术会议与学术论文NLP/CL有一个属于自己的最权威的国际专业学会,叫做The Association for Computational Linguistics(http://aclweb.org/)。其中比较有名的诸如SIGDAT(Linguistic data and corpus-based approaches to NL...
2018-07-27 19:46:59
257
原创 python爬虫-基础用法总结
近期在学习爬虫,前面自己在网上找博客看,也自己写了一些简单的代码,感觉知识不够系统。故从网上找了视频来学习,下面是对一些基础知识的总结。一.urllib库使用(还是requests库方便,所以不列举用法了)二.requests库使用(比urllib库更方便)1.请求(1)get与post请求这是添加data和headers的post请求,get请求只能传url和hea...
2018-07-26 19:34:58
368
原创 机器学习---1.聚类算法纲领总结
近期定了研究生毕设的课题,有种一锤定两年的赶脚。心里还是有点方,只好催眠自己现在的选择就是最好的选择。 其中一块应该会用到聚类算法,这就需要我对各种种类的适用条件、参数摸清楚了,到时候再选出效果最好的聚类方式。想想算法十来种,参数无穷种调法,这个组合起来工作量也是真的大,微笑活下去...微笑着学习...参考了一些博客,总结如下:目录一、聚类步骤 二、聚类算...
2018-07-23 18:36:03
672
原创 天人合一之毕设——实践阶段11——测试多组benchmark产生的问题
之前师兄就说一个benchmark太少,拿差不多四个进行比较结果会丰厚一些。 从一开始的迷茫疑惑,到终于改好了剩下3个benchmark,分别是bsearch/bfs/heapsort 听上去还是比较有代表性吧。。。到时候老师问这是什么标准程序我就直接说是师兄给我的,甩锅 果然,全面的测试之后还是能发现一些问题 1.插桩阶段:循环体里包含if或else等其他语句体的},不能将...
2018-04-18 10:23:22
271
1
原创 天人合一之毕设——实践阶段10-寻找其他的benchmark
为了让实验结果有说服力,用一个benchmark(伪)是不够的。 4个差不多,也就意味着我要再找3个。 要求是: 1.较为简短和符合较常见语法 2.程序中较多malloc(虽然可以手动调整) 首先就要搞清楚malloc大家一般是什么时候用,总结我看论坛和帖子里面写的,大概是这样 要去分配一块不太清楚大小的内存,比如结构体,动态数组(数组无法事先确定大小),链表...
2018-04-18 08:43:42
240
原创 天人合一之毕设——实践阶段9—— 幂律定律
师兄上次看到我跑的结果,说少部分对象占用大多数的访问次数,很符合幂律定律(本质上是二八定律) copy了一段背景,了解下: 自然界与社会生活中存在各种各样性质迥异的幂律分布现象。1932年,哈佛大学的语言学专家Zipf在研究英文单词出现的频率时,发现如果把单词出现的频率按由大到小的顺序排列,则每个单词出现的频率与它的名次的常数次幂存在简单的反比关系,这种分布就称为Zipf定律,它表明...
2018-04-05 20:38:02
1280
原创 天人合一之毕设——实践阶段8—— 全面测试、优化策略的测试与实施
上次去找师兄聊了聊,首先对前期工作他回答了我不用考虑库函数 其次,对象大小开的有点小,可以尝试开到1G左右 而且只用一个程序不够丰满,让我在网上再找3个较简单的程序进行全面测试 要找肯定尽量找那些有访存特性的程序,增删改查、搜索之类的 目前觉得可能可以去试试找:二分查找、链表的增删改查、二叉树遍历、图遍历等程序 对于下一步的工作 1.设计优化策略 ...
2018-04-02 10:11:20
198
原创 天人合一之毕设——实践阶段7—— 画图
1.因为得到了一个对象的访问顺序,如果以更加直观的形式来体现的话,那就是画成时序图 目前想到的就是以顺序为横坐标,访问的对象编号为纵坐标,画折线图 优点是:比较直观,尤其是局部热的情况,会连续保持一段直线 缺点是:横坐标会很长很长,如果分段的话做成几条折线感觉又不那么直观,而且说不定就直线截断了 2.对于整体访问次数,可以用柱...
2018-03-28 09:21:01
365
原创 天人合一之毕设——实践阶段—— 6 尚未解决的问题
目前为止,功能应该算是大体完备 我的思路是: 首先将代码过一遍,进行局部插桩,比如if else等分支插{print 当前行},将所有的当前行按序构造成一个数组 循环体思想也是类似,插计数器,用数组按序记载所有循环次数 接下来扫描代码,提取出所有函数的起始位置和结束位置 现在开始正式的遍历,以main函数为入口...
2018-03-26 20:27:01
278
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人