自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)

原创 提升汉字文本纠正性能的经验总结

经过我前段时间的研究和验证,在仅使用bert模型下做到以下几点,可以帮助大量提升文本纠正性能:1.放弃nsp任务,仅针对mlm任务;2.强化数据,对每个汉字均要mask;3.数据均衡,对训练集中每个训练单字进行数量统计,数量过低的冷僻字要进行补足,例如:“血清肌酐偏高”,“酐”是一个冷门字,可以生成若干随机字均替换该字,这种方式对于OCR识别结果的纠正有显著效果。...

2020-10-01 10:14:08 16

原创 无炫技:纯粹的Bert和Roberta

项目连接:https://github.com/whgaara/pytorch-roberta项目概述bert作为当代NLP的基石型模型,熟练掌握是至关重要的。笔者阅读了很多大牛的代码,发现很多内容过于反锁,考虑的范畴与功能也非常的复杂,本着让更多小伙伴能通过代码直击bert精髓因此自己一行行纯手工敲出这个项目,尽可能做到的是纯粹。因为roberta和bert极其相似,因此这里顺便给出了两种训练模式,其主要区别就是预训练数据的区别。此外,考虑到应用场景,此处bert也放弃了NSP任务,大家阅读时..

2020-09-16 09:40:40 46

原创 关于Faspell的使用经验分享

faspell是2019年由爱奇艺发表的错别字检测纠错sota算法。因为工作原因,涉及到一些错别字的检测纠错技术,因此对相关内容做了点研究。从技术的原理来说,错别字显然是一个经验型的技术,输入的一句话怎么排?每个字出现的概率概率高低?都是依靠训练样本给出足够的场景数据得出的。从这方面来讲,LSTM+CRF的经典组合必然是首先考虑的。但是又考虑到bert的MLM任务是如此的符合错别字检测纠错场景,因此也关注到基于bert的ctc(Chinese text correction)算法。最终选择bert体

2020-07-26 14:26:40 141 3

原创 原生Bert的训练和使用总结

bert诞生至今已经有2年了,其产生的影响和一直延伸至今的衍生模型固然是不用我来赘述,为了积累下以往的学习内容防止忘记,就把笔记整理下。本文的主要从模型运行过程的视角来介绍下google的原生bert是怎么运作和调用的。首先还是上图:这是一张transformer的模型框架,这个框架左边一半你就可以理解是一个bert的主干网络,真正的bert是由左边这一小块一小块堆叠而成的,所谓的bert(即双向Transformer编码器)就是指这一部分。我们本文中所有的举例参数都是基于google的

2020-07-24 11:27:22 182

原创 Bert的训练数据生成和解读

生成MLM任务需要的mask数据用于训练的文本材料是以行排列的句子。首先读取一行句子,以:“工时填写。”为例,该句子会被认为是一个document和一个chunk,认定只有一个句子后,会随机从其他行的句子中挑一个出来,与该句组合成如下的结构:[‘[CLS]’, ‘工’, ‘时’, ‘填’, ‘写’, ‘[SEP]’, ‘平’, ‘安’, ‘好’, ‘医’, ‘生’, ‘非, ‘常’, ‘优’, ‘秀’, ‘[SEP]’]当然,在组合数据的过程中,会随机有如下的调整:在mask的个数.

2020-07-08 15:49:07 164

原创 ELMO

ELMOELMO的每层计算中,通过一个正向RNN得到每个词的embedding,再通过一个反向的RNN得到每个词的embedding,再将同一个词的两个embedding进行contact,因此每个词在不同的上下文中,词向量就不同了。ELMO实际上是一个多层的组合,假设一个两层的ELMO计算后,每个词会得到两个embedding,那么ELMO会使用两个权重相乘再累加的方式求到最后该字的embedding。那么α1和α2如何获取呢?这两者是在任务中作为参数一并学习得到的(类似于一.

2020-06-10 18:46:09 99

原创 Linux Opencv编译安装手册

1.概述这次因项目需求编译安装了一下opencv3,查阅了网上很多资料,发现大多写的还是比较随意的,这里对此全部流程做了一次整合。opencv在linux环境下的编译安装需要按照依赖关系顺序安装多个依赖库,依次为:yum依赖包——yasm——ffmpeg——ant——ippcv——opencv,以下安装将依照该次序进行。2.编译安装流程2.1 yum依赖包l配置epel...

2019-10-10 17:55:24 66

原创 基于TensorFlow的多机多卡分布式训练搭建方法

1.概述TensorFlow分布式是基于GRPC库实现的高性能集群训练框架,能有效的利用多机多卡资源,将大型的模型或者代码拆分到各个节点分别完成,从而实现高速的模型训练。如下图所示,tensorflow的分布式集群中存在的节点主要有两种:ps节点和worker节点,ps节点是用于保存和计算训练参数的节点;worker节点是用于训练的节点。由于ps和worker节点都有可能存在多个,因此ps...

2019-06-28 17:17:03 3926 4

原创 TFX实例的环境搭建及可能涉及的问题

大家好,我是隔壁小王。本文主要是讲述在使用tfx实现官方案例的可能会遇到的一些报错及解决方法。在学习tfx的使用时,首先接触的是一个官方给出的案例,案例讲的是一个关于芝加哥出租车的模型:https://github.com/tensorflow/tfx/tree/master/examples/chicago_taxi_pipeline。在这个github项目中,chicago_taxi_pi...

2019-04-12 11:18:25 1007

原创 朴素贝叶斯模型的简单实现

# coding: utf-8from numpy import *def loadDataSet(): postingList = [ ['my', 'dog', 'has', 'flea', 'problems', 'help', 'please'], ['maybe', 'not', 'take', 'him', 'to', 'dog', ...

2019-03-28 17:07:04 92

原创 对CRF的原理理解

无线网络,又称贝叶斯网络或信念网络;有向网络,又称马尔科夫网络。针对于两者,尤其是无向网络的CRF的理解我做了一些随笔。由于公式较为复杂,使用手写版。...

2019-03-27 22:00:26 256

原创 用python实现ID3算法

# coding: utf-8from math import logimport operator"""数据样本:编号 用腮呼吸 是否有脚蹼 属于鱼类1 是 是 是2 是 否 ...

2019-03-27 21:31:00 718

原创 维特比算法解决HMM的应用实例

因为内容涉及到比较复杂的图形和公式,因此这里用自己的手写版来展示,这次的内容是基于维特比算法来处理一个HMM问题的案例,方便大家能完整的体会维特比算法作为一种动态规划算法的属性。本人的案例也许很多人在网上是见过的,但是我加入了更加详细的注解,便于大家理解。...

2019-03-27 21:20:56 272 2

原创 MySQL学习手册--进阶篇

致力于性能稳定、执行高效的Mysql语句!大家好,我是隔壁小王~这次发布的是Mysql的进阶版,可以搭配之前发布的基础版一起观看。 1.修改linux版本mysql密码/user/bin/mysqladmin -u root password ****** 2.Linux的Mysql自启动服务chkconfig mysql on检查:chkconfig --list...

2019-02-27 10:56:03 136

原创 python的numpy库常用方法整理

感谢大家的阅读,毕竟是隔壁小王一笔一划打出来的,可转勿抄,多谢支持~1.概述numpy是用来操作矩阵的python库。在需要查阅官方文档时,可以通过print(help(模块名.函数名))来查看官方的注释。 2.基本功能简介2.1 genfromtxt(args)用于打开txt文档,读出的结果均是矩阵的格式。 2.2 核心结构array通过numpy.arr...

2018-08-12 23:35:17 579

原创 MySQL学习手册--基础篇

对于很多mysql的初学者,或者平时工作接触数据库较少的朋友,可能对mysql的概念较为生疏,这里总结了一篇mysql的基本语法手册,可以满足于基础sql语句的查询。后续有时间会更新更加高级,旨在编写优质sql语句的高级教程,敬请期待。PS:本文属于隔壁小王的原创,若觉得有用,可转勿盗,谢谢看官对在下劳动成果的珍惜和支持。1.MySql基本语句链接数据库mysql -h localho...

2018-08-08 00:19:51 1111

原创 一套完整的scrapy爬取微博的新手教材

大家好,我是隔壁小王,上次给大家讲了简单易懂的selenium,完全模拟人的行为来爬取网站的方法,但是巨慢,那这次就说一下爬虫必学的经典:scrapy。可能你会问,为什么scrapy资料这么多,这么成熟,还要费事去说一下呢?我希望我的帖子是通过一个完整的项目可以让一个新手快速了解掌握这个框架,唯一的要求,就是你会python的基本语法。ok,废话不多说。所谓代码未动,需求先行:爬取某个微博...

2018-03-28 16:41:20 5175 16

原创 初谈爬虫之selenium

    大家好,我是隔壁小王~如果你只是一个爬虫 或者python的新手,我相信本文会对于你的学习有一点宏观的引导作用。    其实我并不是一个专业的python爬虫人员,至今为止,python主要cover的五个方向:云计算,运维,爬虫,web后台,人工智能中,我主要接触的是云计算,AI和web后台这三部分。但是由于最近突发爬虫需求,要2天出结果。。。好吧,2天,从学习到开发到得出数据并进行...

2018-03-19 17:00:03 860

原创 利用python实现ftp和远程操作linux

    Hello,大家好,我是隔壁小王,最近在工作中初次接触了使用python进行远程的操作的模块,觉得蛮实用的,这里也跟大家分享下,当然大神就绕道吧。    这个库叫paramiko,这个库就是实现了一些远程协议的库,简单好用,功能能强大哦。    先介绍一下sftp的实现流程,假设我们的要下载一个目录下的所有文件,大体的实现流程是:链接目标主机;创建sftp对象;得到远程目录里的所有目标文件...

2018-03-08 14:37:53 1838

原创 Python的super()原理

在面向对象的语言中,super这个词表示的一般都是“父”的意思。在python中更是常见一个子类的__init__方法中时不时来一个super()。Good,那是不是就可以单纯的将其理解为是当前该类型的父类呢?我只能告诉你:单一继承的时候是这样的,但是多继承的时候不是的。 当然,对于常使用的py的朋友来说,super一定是耳熟能详的方法,这里就不多赘述用法,只聊原理。 在py中 ,每个

2018-01-31 14:38:54 591

原创 关于区块链的解读和简单Python实现

概念解读区块链几乎是数日间成为人尽皆知的名词,这个名词也勾起了我强烈的兴趣,但是通过在网上搜罗资料,多方阅读,发现很多介绍区块链的文献要么模棱两可,要么作者本身的理解也很有限,导致很多关键的问题叙述不清。本人花了一些时间总结归纳,希望可以给读者一个比较全面清晰的认识。区块链的官方定义是:一个分布式账本,一种通过去中心化、去信任的方式集体维护一个可靠数据库的技术方案。那么对于圈外人该如何理解...

2018-01-18 17:53:21 32243 16

空空如也

空空如也

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