自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 修行之路小记

记录一些小问题

2022-10-20 10:10:31 230 1

原创 如何加速计算?

当模型很大时,如何加速计算(一)python常见并行库DASKdask是python的一个并行计算库,可以动态调度资源提供并行计算,并行化的数据集成提供接口给numpy,pandas或者python迭代器,Task Graph 任务图非常清晰,使得开发人员和用户都可以自由地构建复杂的算法,并处理大多数数据工程框架中常见的map/filter/groupby范式难以处理的混乱情况。图片地址:官方手册dask示例我们测试一下在numpy和dask中数据计算的时间。import timeimpo

2021-11-11 00:15:27 5847

原创 文本分类炼丹实录(上篇)

文本分类炼丹实录在自然语言处理领域,文本分类是常见且基础的任务,并且很多任务如关系抽取等都有文本分类的影子。其中,本文旨在通过文本分类的例子,详述NLP任务常见流程,常见模型结构以及常见调参方法。数据清洗与分析正常我们在实际任务中,都是需要对NLP数据进行清洗的,包括标点处理,无意义的词,以及同义词的多种写法等。这里我不多赘述,这种处理与最后的结果关系极大,这类处理也是需要具体问题具体分析。而数据的分析却是有很多类似的地方,我们一般需要查看标签的分布,看看数据是否均衡,看看数据基本情况,如句子的最大长

2021-09-05 23:02:53 1305 3

原创 阿里云服务器展示静态网页

白嫖阿里云服务器展示静态网页阿里云服务器申请国内各个大厂均会提供服务器的租赁,其中阿里云的服务最全面,也是安全系数最高的一家,所以占有很大的市场份额。各个厂家对新人都是比较友好的,尤其是阿里对学生的优惠,可以申请免费使用一段时间。我们登陆阿里云官网就可以看到阿里云高校学生计划链接。经过实名认证,学生身份认证,我们就可以申请一个云服务器。当然领取的过程中还需要完成一些简单的学习教程和试题。该过程比较简单,我们就可以拿到实例了。我们选择了华北地区的一个实例,公网Ip我就不打码了。其中我们可以看到很多信息

2021-06-07 22:11:14 807

原创 递归与太极之道

递归——计算机的基础哲学易有太极,是生两仪。现代计算机所解决的四类问题不难发现,现代计算机所解决的问题不外乎四类,上个世纪计算机战胜国际象棋冠军使用的就是暴力穷举的方法;建造原子弹,计算复杂的弹道时,使用计算机随机模拟的方法;而当今人工智能的发展主要依靠逐步迭代的模型训练方法,当然其他方法也都会涉及到;笔者认为计算机算法的灵魂所在还是在于分而治之。简单来说,分而治之就是将复杂的问题简单化,逐步解决,这在计算机算法中极其常见。作为分治的重要典型,递归让许多抽象问题变得容易解决,也时刻出现在各种算法中。

2021-03-31 20:31:50 284

原创 Ubuntu20 安装mysql

Ubuntu20.04安装mysql更新相关库sudo apt update安装sudo apt install mysql-server安装成功后启动sudo systemctl status mysql成功启动

2021-03-23 14:47:47 163

原创 平安科技NLP实习面经

一面:0.自我介绍1.embedding(word2vec,elmo,Bert)2.集成学习(简历上有kaggle比赛)3.NER怎么做,详细一点(数据粒度,特征融合,模型构建,模型蒸馏)二面:0.自我介绍1.CRF与HMM区别2.CRF状态矩阵与转移矩阵3.为什么LSTM后要接CRF,LSTM如何接入CRF。4.讲一下BERT结构5.有没有看过BERT源码,BERT的输入是什么(三个形式)6.做过的生成式任务(seq2seq生成对联)7.有没有做过的生成图像任务(生成假人脸)8

2021-03-12 00:31:03 747 2

原创 Linux学习笔记之一

Linux学习笔记之一Linux中一切皆是文件。常用命令echo:在终端中输出字符串或变量提取后的值datarebootpoweroffwget:用于在终端中下载网络文件ps:查看系统进程状态top:动态监视进程活动和系统负载ifconfig:网卡配置和网络状态信息等。uname:系统内核和系统版本等。free:查看当前内存使用history:查看使用过的命令pwd:当前用户所处于的工作目录cd:切换工作路径,后面加文件夹ls:查看当前目录下的文件to

2021-02-28 21:37:18 111

原创 MYSQL安装

Mysql安装破解安装打开官网,选择downloads点击网页底部链接选择对应版本下载windows下载如图下载完毕后点击安装这里选择第二个另一个需要变化的地方如下图,其他操作默认。(整个过程需要有VC++环境)输入密码安装完成后,命令行输入mysql,确认密码:安装完成。破解关闭系统杀毒软件...

2020-06-29 08:25:19 194

原创 无处不在的Attention

概述之前的博客中,笔者都曾提到attention机制。这种考虑全局,关注重点的机制在深度学习中很常见,尤其是self-attention将自然语言处理带到一个新高度。attention增加了深度学习的可解释性,并且应用广泛,在自然语言处理,计算机视觉,推荐系统中到处可见。它克服了循环神经网络解决过长序列时的问题,并且也可以像卷积神经网络那样能够并行计算。本文就列举几个比较经典的attention...

2020-04-27 14:59:13 2078

原创 python算法笔记——二叉树

程序猿,是灵长类动物的近亲,瞎长类动物。······ 每只程序猿自诞生起,就习惯在两棵树间跳来跳去,一棵是二叉树,另一棵也是二叉树。——摘自《暴走大事件》...

2020-04-25 22:52:37 260 2

原创 浅谈自然语言处理中的word2vec

概述不管是人工智能,还是数据科学,其核心都是数学原理。机器学习中,如何将世间万物变成数字,以便使用数学方法解决问题尤为重要。图像普遍是以像素值为基础输入模型,而文本又该如何处理成数字呢?文本表示词袋模型最基础的文本表示模型是词袋模型。也就是把每篇文档看作是一袋子词,忽略每个词出现的顺序。每篇文档可以表示成一个长向量,向量中的每个维度代表一个单词,对该维度对应的权重也就反映了这个词在文章中的...

2020-04-23 08:31:09 1176

原创 BiLSTM-Attention文本分类

概述上一篇中使用BiLSTM-Attention模型进行关系抽取,因为只放出了较为核心的代码,所以看上去比较混乱。这篇以简单的文本分类为demo,基于pytorch,全面解读BiLSTM-Attention。文本分类实战整体构建首先,我们导入需要的包,包括模型,优化器,梯度求导等,将数据类型全部转化成tensor类型import numpy as npimport torchimpo...

2020-04-21 18:50:03 10296 9

原创 BiLSTM-Attention实现关系抽取(基于pytorch)

概述虽然tensorflow2.0发布以来还是收获了一批用户,但是在自然语言处理领域,似乎pytorch见的更多一点。关系抽取是目前自然语言处理的主流任务之一,遗憾没能找到较新能用的开源代码。一方面是因为关系抽取任务的复杂性,目前数据集较少,且标注的成本极高,尤其是中文数据集,所以针对该任务的数据集屈指可数,这也限制了这方面的研究。另一方面,关系抽取任务的复杂性,程序多数不可通用。github上...

2020-04-21 16:45:01 10596 9

原创 浅谈面向对象(python)

概述之前的博客里,不管是数据结构与算法,还是深度学习框架,到处都是面向对象编程。很多资料里都说面向对象是比较抽象的东西,但是我总觉得吧,这东西理解起来很容易,就是讲出来比较抽象。很多时候不必去深究面向对象的概念,我们可以从代码的角度去理解它。万事万物都是对象,都会属于某个类。类是抽象的,而对象是具体的。变量与对象a = 123dir(a)首先我们定义一个整型变量,使用dir()函数来查...

2020-04-20 11:44:12 159

原创 python算法笔记——链表与队列

链表链表是一种在物理上非连续,非顺序的数据结构,由若干个节点(node)组成。单向链表的每一个节点包含两部分,一部分存放数据data,另一部分是指向下一个节点的指针next。链表的第一个节点成为头节点,最后一个节点称为尾节点。尾节点的指针指向为空。而双向列表,就是比单项列表稍微复杂一点,它的每个节点除了有data和next指针外,还有指向前置节点的prev指针。上次我们说到的数组是在内存中顺序存...

2020-04-19 09:56:29 313

原创 python算法笔记——数组

概述数据是最基本,最简单也是最常见的数据结构,属于线性结构的一种。在python中实现数组非常容易。比如,我们创建一个数组并进行一些基本操作:数组的插入my_list = [1,2,3,4,5,4,3,2,1]print(my_list) #打印数组my_list[0] = 0 # 将第一个位置更新为0my_list.append(6) # 在最后一个位置添加元素6my_list.i...

2020-04-18 11:59:45 392

原创 Pytorch学习笔记之一

概述前段时间分享了一些tensorflow2.0入门的笔记,其实在学术界,pytorch的热门程度是高于tensorflow2.0的。不过这些深度学习的框架多是大同小异,所以这里我也更一更torch有关的入门笔记。与tensorflow入门笔记不同,我想按模块来写torch的入门笔记。之前也大概介绍了一下torch的数据加载方式,今天主要讲torch的模型构建。其实现有的深度学习开源框架基本都...

2020-04-16 19:12:18 674

原创 Tensorflow2.0自学笔记之五

概述其实本来不想写维度变换的相关内容,但它还是比较重要的,虽然简单,但是实际操作过程中需要时刻牢记于心。Tensorflow中的维度变化和numpy非常像,当然也包括pytorch等其他科学计算的包,维度变化大同小异,所用函数都是非常类似的。维度变化首先我们导包创建一下tensorflow中的各种数据结构(与numpy对比):import numpy as npimport tensor...

2020-04-12 12:39:02 147

原创 Tensorflow自学笔记之四

概述这两天写了两篇自学tensorflow2.0的教程,其实tensorflow2.0集成了keras的功能,所以相对来说很简单。正好看到一些pytorch的资料,也稍微整理整理相关的数据加载工作,大多是异曲同工。如果是学生,还是建议tf2跟pytorch都要学习,学术界中pytorch已经逐渐占据上风,工业界tf还是独占鳌头,毕竟涉及到各种部署,tf有很大的优势。tensorflow2.0数...

2020-04-11 13:59:59 185

原创 Tensorflow2.0学习笔记之三

概述上一篇博客中,我用电影评论分类的例子来展示了一下tensorflow2.0的使用流程。这篇稍微补充一下,在训练过程中的小细节。callbacks回调是非常好用且方便的工具,这里我们演示一下tensorboard,earlystoping和ModelCheckpoint。废话不多说,直接上代码。logdir = os.path.join("callbacks")if not os.pa...

2020-04-10 10:26:36 163

原创 Tensorflow2.0学习笔记之二

概述前一篇文章笔者用一个图像领域的例子来展示了一下使用tensorflow2.0进行图像分类的流程。与图像领域有点不同,自然语言处理在使用过程中有一些小的方面需要注意,这里笔者也使用两个NLP相关的实验来介绍一下。电影评论情感分类这是经典任务之一,不管是淘宝京东,还是美团豆瓣,对用户评论进行分类是必要的任务之一。这里我们使用的是电影评论的情感分类,使用keras自带的imdb数据集,虽然简单...

2020-04-09 10:06:05 186

原创 Tensorflow2.0学习笔记之一

概述tensorflow2.0发布已经一年多了,实在觉得tensorflow1.x比较难用,很多地方API混乱,对新手不太友好。但是感觉tf2.0版本的就很不错,融合了keras,相对来说比较容易上手。所以写下自学tf2.0的笔记。难免会有不足或是错误,李姐万岁。实例首先看一个简单的例子,实现一个分类任务,数据集是tf2.0中自带的fashion_minist。首先导入必要的模块impo...

2020-04-08 18:58:18 307

原创 支持向量机简单推导

概述支持向量机在机器学习的地位举足轻重,目前很多岗位的面试可能都需要手推SVM(尤其是算法岗)。本文尝试手写推导了一下硬间隔分类器。不喜勿喷。手写推导...

2020-04-05 12:04:26 132

原创 计算机的高速缓存

高速缓存的工作原理首先我们需要理解两个概念:字与子块。字:是指存放在一个存储单元中的二进制代码组合。字块:存储在连续的存储单元中而被看作是一个单元的一组字。例题:...

2020-03-14 17:34:54 209

原创 Python基础面试题总结

Python常见基础面试题Python基础Python的数据类型: 字符串,集合,数值,列表,字典,元组。lambda 函数:filter,map,reducefilter: 相当于过滤器,遍历序列中的每一个元素,返回值为true的元素。a = [1, 2, 3, 4, 5]b = filter(lambda x: x>2, a)print (b)>>>...

2020-03-11 16:24:10 615

原创 CRF++命名实体识别

CRF++命名实体识别我在大半年前,刚刚读研的时候,导师给我一篇文章(本科毕业论文),以及一些数据叫我把它实现。这是小导师指导的清华的一名本科生的毕设,也非常感谢他的那篇写得通俗易懂的文章,给我这个自然语言处理的门外汉入了门。其实也就一周时间,入门了自然语言处理,并且也很快用CRF++做了个命名实体识别的工作。不需要编程,而且效果还挺好,非常赞的开源工具。win10平台的操作指南在win10...

2020-03-11 00:16:13 399 3

原创 知识图谱系列之neo4j入门之二

知识图谱系列之neo4j入门之二给现有节点建立关系我们首先回顾一下上篇文章的内容,建立节点并建立他们之间的关系。我们做个实例:CREATE(n1:Person{name:"jack"})-[:couple{roles:"boyfriend"}]->(n2:Person{name:"rose"})return n1,n2这样我们创建了jack跟rose两个节点以及他们之间的关系。...

2020-03-04 15:35:03 205

原创 知识图谱系列之neo4j入门

neo4j入门最近需要搭一个小型的图数据库,neo4j自然是首选了,目前做知识图谱方面研究的自然都知道neo4j,但是neo4j目前的资料还比较少,这种数据库目前用户也不算多,好在neo4j比较简单,入门比较快。照着一些教程,我试了试,其实还是有一些坑要避开。作为新手,记录下我与neo4j的第一次。Python的APIneo4j是基于java开发的,安装比较简单,需要有java环境,这个教程...

2020-03-03 17:59:57 4127

原创 补充资料之numpy

Numpy学习之一前言最近发现不管是数据分析,还是人工智能,各个有python的地方都会有numpy的影子。在用 Python 对 n 维数组和矩阵进行运算时,Numpy 库提供了大量有用特征。Numpy 库数组有两种形式:向量和矩阵。严格地讲,向量是一维数组,矩阵是多维数组。在某些情况下,矩阵只有一行或一列。导入numpyimport numpy as np创建数组my_list ...

2020-02-28 13:27:45 96

原创 Tensorflow2.0系列之一

tensor是什么废话不多说,直接干货。tensor其实就是多维数组,tensorflow本质也就是数组运算,其实很多地方跟numpy还是比较相似的。import tensorflow as tfrandom_float = tf.random.uniform(shape = (2,3))print(random_float)zero_vector = tf.zeros(shape=(2...

2020-02-26 19:52:43 149

原创 LINUX之VIM

vim模式正常命令模式下,用户可以使用移动光标,文件存盘等命令,还可以设置vim的编辑环境。命令行模式存盘 ZZ 保存退出光标移动:移动光标 h j k l 左 下 上 右 光标移到本行开头home 移到本行末尾 end 光标移到末尾 G 光标移到开头gg 光标移动一个单词w粘贴复制:复制一行 yy 复制 n行 nyy粘贴 p删除:删除字符 x 向后删除 X 向前删除...

2020-02-24 09:28:37 71

原创 LINUX初识之文件操作

Linux的文件操作文件的新建:touch filename文件的改名:mv文件的查看:ls文件内容的查看:cat文件的删除:rm [-r -f]文件的拷贝:cp [-r -f -p]文件的移动:mv 文件夹的操作新建文件夹:mkdir文件夹改名:mv文件夹插卡:ls空文件夹的删除:rmdir不为空的文件夹的删除:rm -rf ...

2020-02-23 09:16:17 246

原创 LINUX初识

Linux初识Linux设计思想1) 程序应该小而专一,程序应该尽量的小,且只专注于一件事上,不要开发那些看起来有用但是90%的情况都用不到的特性;2) 程序不只要考虑性能, 程序的可移植性更重要,shell和perl,python等脚本相比c有更好的移植性;3) 一切皆文件,尽量使用文本文件来存储数据,避免使用二进制文件,因为文本文件可读性强,且已经有跟多的工具来处理,例如awk,sed...

2020-02-22 19:40:15 112

原创 计算机的主存储器与辅助存储器

内存相信大家都认识内存,在计算机断电的时候内存的数据会丢失,但是磁盘的数据并不会丢失。RAM(随机存取存储器)RAM是通过电容存储数据,必须每隔一段时间就刷新一下数据,而刷新的话需要有电的存在,所以断电后就会丢失数据。主存的构成不同位数的系统对内存的要求不同。如32位系统,它的地址总线只有32位,那么内存最大就是2的32次方,也就是4GB,而64位系统,地址总线有2的64次方,最大支...

2020-01-08 23:43:43 1055

原创 计算机组成原理之存储器

存储器的分类半导体存储器:如内存,U盘,固态硬盘;磁存储器:磁带,磁盘。随机存储器(RAM):随机读取,与位置无关;串行存储器(与位置有关,按顺序查找);只读存储器(ROM):只读不写。存储器的层次结构我们根据位价可以将存储器分为三个层次结构,如下图:当然也可以使用这样的图示表达:其中缓存-主存的层次原理是:局部性原理。在CPU与主存之间增加一层速度快(容量小)的Cache,目...

2020-01-08 23:14:54 582

原创 Gephi最详细安装教程没有之一

Gephi安装教程详解Gephi简介Gephi是一款用于网络分析的软件。何为网络呢?在Gephi里,会把网络抽象成节点和边的关系,类似于这样的图结构,也就是网络,是Gephi的专长。Gephi提供网络三维和四维的支持,且可以建立具有生命期的四维网络,这种动态网络也为网络科学这一新兴科学提供了基础。Gephi提供的分析主要分为两种,一种是通过不同的布局算法按照一定的方式排列节点在图中的位置,并...

2020-01-07 10:08:09 46619 22

原创 操作系统之进程实体

进程实体为什么需要进程在没有操作系统的时候,计算机每次只能执行一个程序,计算机资源属于当前运行的程序。配置了操作系统后,引入了多道程序设计的概念,这样合理地隔离资源,运行环境,有效得提升资源利用率。进程是操作系统进行资源分配和调度的基本单位,进程作为程序独立运行的载体保障程序的正常执行。进程的存在使得操作系统资源的利用率大幅提升。进程的实体主存中的进程形态标识符标识符唯一标记一个进...

2020-01-07 08:59:44 2283

原创 计算机的输入输出设备

常见的输入输出设备字符输入设备最常见的输入设备就是键盘了。键盘分为三类:薄膜键盘,多见于网吧;机械键盘,每个键都有独立的轴,程序员多喜欢用它。图形输入设备最常见的图形输入设备就是鼠标了,此外绘图工作者常常使用的数位板(输入板与压感笔),以及扫描仪等。图形输出设备显示器:CRT显示器,液晶显示器;打印机,投影仪等均是常见的图像输出设备。输入输出接口的通用设计该接口必须有读,写,判断是...

2020-01-06 00:01:06 2054 1

原创 操作系统概览

操作系统概览操作系统是管理计算机硬件和软件资源的计算机程序,管理配置内存,决定资源供需顺序,控制输入输出设备等,操作系统也提供让用户和系统交互的操作界面。操作系统的种类是多种多样的,不局限于计算机,从手机到超级计算机,操作系统可以很简单也可以很复杂,不同的设备上,操作系统可以向用户提供多种操作手段。手机操作系统手机操作系统主要是安卓阵营与苹果阵营,当然也有一些较为小众的操作系统,如曾经的塞...

2020-01-04 16:43:27 357 1

对联生成数据集及预处理代码

使用seq2seq模型与attention注意力机制生成对联,数据集中有预处理代码,其对应的工程代码github地址:https://github.com/zhangzhiqiangccm/NLP-project

2020-08-30

使用seq2seq生成对联的数据集

seq2seq对联生成的数据集,包含搜狗预训练数据,用于生成对联,相关代码上传github中,地址https://github.com/zhangzhiqiangccm/NLP-project

2020-08-29

NLPdataset.zip

数据集包含三个文件,一个是垃圾邮件的数据集,也包含一些基本的处理代码。一个是中文分词的数据集,还有一个是用于命名实体识别的数据集(分为训练集和测试集),来源于人命日报。

2020-04-16

空空如也

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

TA关注的人

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