自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(55)
  • 资源 (1)
  • 收藏
  • 关注

原创 大模型嘛,先玩起来再研究

编程作为一个实践性很强的学科,业务李需要用到的跑一跑、试一试、用一用还是必须的,还要知道业务需要什么、现在能满足什么、需要怎么优化。这样整个调研的链路就通顺了。大模型是在是太火爆了,正在非常多的场景中重构着业务生态,想入手学习的的话其实我们是有很多的后发优势的,各种版本模型、教程、甚至培训班都已经在路上了。如果你已经把模型下载到了本地,把这个from_pretrained函数的模型路径改称本地路径就可以了。我这的测试就换成了本地的路径,运行成功。接下来就可以进行各种调侃了。上搜索发现你想尝试的模型。

2023-08-02 15:40:06 140

原创 标签传播的基本原理

图算法应用场景简单实现

2021-01-26 16:54:05 557

原创 记录协同过滤相关的系列实验(2)

(一)基于物品端的协同过滤2019-Large-scale Collaborative Filtering with Product Embeddings(二)数据构建训练集构建上, 样本是用户历史的交互数据(正向交互)+ 当前交互数据 + 当前交互数据类型(正向/负向)目的就是找出用户喜欢了什么, 来预测其将喜欢什么。(三)算法实现 def build_model(self): """""" input_seq = layer..

2021-01-25 18:21:51 196

原创 记录协同过滤相关的系列实验

推荐的本质:推荐的最终目的就是找到相似的人、相似的物品。进而再进行基于user、item的推荐。未达到这个目的,可以对用户的行为分析(相似行为的人当作相似的人)、基于内容的分析(如用户的各种标签,根据标签匹配度查看相似的人)。但一个推荐系统可能是一个多策略、多场景方法结合体。协同过滤:主要是基于用户和物品的交互行为,进行分析。 传统的协同过滤是基于矩阵分解的。当用户和物品的数据级大了以后,这个方法相当耗时。所以采用了deep的方法。(1)直接dot, 对交互矩阵进行拟合..

2021-01-25 18:19:05 171

原创 命名实体识别实践(albert + crf)

该项目是识别query中实体的项目, 由于业务特点,query中实体较密集且连续。该项目是Albert在该项目的一个测试方案, 效果上还可以。但应该注意的有:(1)albert的中文向量版本要看仔细, 要和代码需要的版本相匹配。(2)在使用的时候,注意编码时添加的前缀后缀。代码完整版:#! -*- coding:utf-8 -*-# 情感分析例子,加载albert_zh权重(https://github.com/brightmart/albert_zh)im...

2021-01-25 18:16:37 931 1

原创 命名实体识别实践(魔改)

该方案依然是对query的命名实体识别任务,针对该任务设计的实验方案。针对该任务的一些思考:(1)训练时,将字随机unk, 增加泛化性。(2)字向量、句向量相结合,学习联合分布。(3)深度堆叠,使特征更加丰富。# coding: utf-8from keras import layersfrom keras.models import Model, save_model, load_model, model_from_jsonfrom keras_contrib.l..

2021-01-25 18:05:14 191

原创 基于划分的新词发现

该新词发现是在query中的新词。主要的技术点:(1)左右熵、凝固度(2)直接基于划分部分效果(对query的直接划分):目前问题: 对英文不好 , 对低频词不好。processing line : 办公室主任[1, 4, 6]办公室主任processing line : 私家车司机[1, 4, 6]私家车司机processing line : 土建预算员[1, 3, 6]土建预算员processing line : 医院挂号员[1, 3, 6]医院.

2021-01-25 17:58:11 130

原创 多标签分类的一次实践

多标签分类是NLP领域的常见任务, 最常用的是sigmoid + BCE , 根据标签数量和特点不同,可能有不同的变形和优化。本文实践的是一个25w标签词的标签体系。由于标签数量巨大,将标签进行全量表示将难以训练。基于该任务的若干思考:(1)使用负采样的方式减少结果向量的表示(2)标签具有相关性,负采样的量不是越大越好(3)在loss上,采用margin loss 优化正负样本的间隔# coding=utf-8"""负彩阳版本 - 加快迭代训练效率"""impor.

2021-01-25 17:49:30 276

原创 文档标签化的几种方案

前言:文档标签化, 就是从文档中抽取若干标签,来定义和表示文本,使文档更容易的进行计算、索引、表示。当然前提是已经有了一个标签词库。量少的话可以人工进行编写业务相关词典、量大的话可以用机器生成然后进行人工审核。方案一:直接词典匹配这里主要借助于像字典数、多摸匹配等方案,对文档中的标签进行识别。优点是速度快, 缺点是容易对一些超短的tag进行误识别(语境中可能不是一个tag);不能识别意思相近的tag。方案二:使用NER进行识别NER的模型较多,这里就不再赘述,在数据构造...

2021-01-25 17:34:55 1212

原创 最近邻逼近搜索

说明由于业务中需要用到向量之间的相似索引,其实向量相思索引在很多的业务场景中都有非常高的应用价值。我们已经有把词、句子、图片、等信息处理成响亮的方法。这样在一些相关性检索方面就有了应用价值。本文中搭建了annoy和nmslib两种方式。下面提供了两种方式的的索引构建方式:annoy索引构建:f = 200tc_index = AnnoyIndex(f,metric='angular')...

2019-10-05 12:03:10 423

原创 大量字符串快速匹配-字典树匹配

说明:在本人的工作中遇到了这样的一个问题。需要用到字符串匹配的功能。一边是300字左右的句子,另一边是几个到几十个词的短语,然后过滤出包含短语的句子。数量都在千万级别,最直接的想法肯定是两层for循环两两匹配,但是有点low。在这实现了基于多叉树的树形匹配方式。(如果有问题,欢迎指正)class Trie(): def __init__(self): self...

2019-10-04 16:34:57 1363

原创 hnswlib库在windows系统中的安装

安装过程:先说明本人在安装该模块时遇到的问题。直接pip安装报错。在git上下载代码依然报错。缺少 h文件。原因是编译环境找不到h文件所在的路径。查看本机编译调用的命令为:所以就把缺少的h文件目录添加到了该编译环境依赖的include中接下来在去下载的git安装包中去执行,python setup.py install 便可以成功安装了。线上结果:可以看到,安装完成可以正...

2019-10-04 15:53:30 2519

原创 神经网络实验心得(持续更新)

(1)当预测类别比较多时,各层测参数应该数量相当,否则会出现一个特征会影响多个类别的情况,出现一对多,模型不好训练。(2)其实神经网络的本质还是特征提取和空间映射,观察数据的特征和分布是非常有必要的。(3)attention 在词特征影响比较大的任务中真的有效,如一些翻译或者分类任务。(4)relu激活适合用在特征维度逐渐减少的层中,并且能增加模型的鲁棒性。(5)...

2019-07-20 22:15:02 4372 1

原创 再谈语言模型之应用

语言模型的形式上文介绍的语言模型在效果上得到了非常好的效果,但是在生产环境速度偏慢,因此本文的目的有两个,意识较轻量级的语言模型的实验, 二是语言模型在下游任务中应用,语言模型本质上还是去发现语言文法中的潜在的关联关系,应用该方法理论上在文本的语义方面判断的任务会有很大帮助。模型的应用 VAE这里展示的是VAE在文本生成过程中加入了,lm_loss用来辅助文本生成,关于VAE的一些东西就不在...

2019-07-20 22:14:11 969

原创 再谈语言模型

标题:语言模型再自然语言处理任务中有极其重要的作用,大家较为熟悉的是n-gram类型的语言模型,无论是传统的方法还是基于NN的方法,都是根据前N个词 预测当前词,或者求当前词的概率。需要求整个序列的概率时需要对序列进行遍历然后进行累乘操作。其实自然语言的语言模型可以不这样玩,哈哈。下面对一些新型的语言模型加以介绍,并探讨一下其应用。(稍后讲解求编码、求损失等操作)新型语言模型:bert预训练...

2019-07-20 18:23:32 334

原创 seq2seq 实现数字加法

标题这是用简单的seq2seq实现的数字加法,原理就是想用一个循环网络编码Query,然后将其复制到Answer的的长度。后接多层循环神经网络。最后softmax加交叉熵损失。model = Sequential()# "Encode" the input sequence using an RNN, producing an output of HIDDEN_SIZE.# Note: I...

2019-06-20 22:28:14 361

原创 Layer concatenate_1 was called with an input that isn't a symbolic tensor

问题如题目所述,编写代码时遇到Layer concatenate_1 was called with an input that isn’t a symbolic tensor的问题,查看 concatenate的对象确实时tensor对象,为什么会有这样的问题呢?解决方法查看代码是否 concatenate的参数传错了。注意参数是放在【】里面的,不是 ()。emb_all = layer...

2019-06-15 22:34:33 8887 2

原创 意图分析及斯坦福NLP服务搭建

标题应用范围和场景在自然语言处理的应用中,经常会用到分词,词性分析、句法分析、英体识别等应用,斯坦福NLP在中文支持方面还算不错,方便我们更快的支持和验证应用的可行性。环境配值和搭建过程下载 stanford-corenlp-full-2017-06-09.zip ,然后在系统中解压,下载该包支持的中文模型 stanford-chinese-corenlp-2017-06-09...

2019-06-02 21:17:10 570

原创 keras自定义层对自定义参数进行保存

问题描述在使用keras的过程中,有时会在自定义层中定义自己的参数,然而调用 json_model = model.to_json() 后发现自定义的参数并没有保存到模型中,造成模型加载时报错。解决方案需要在该层中实现 get_config(self) 方法,将自定义的参数保存到一个map中。聚义可以参考本人的《Keras 实现对bert编码的封装实现》中的具体写法。...

2019-05-19 23:51:51 2885 2

原创 Keras 实现对bert编码的封装实现

bert编码突袭了NLP各大榜单,为了让大家更方便的在自己的数据集合上测试bert的威力,在此分享一下,keras版本的nert编码层。直接上代码了。class b_embeding_layer_b(keras.layers.Layer): """自定义层""" def __init__(self, max_seq_len=50,model_dir = r"F:\glove.6...

2019-05-19 23:39:29 1879

原创 Bert编码训练NER实体偏移的问题

在这里记录一下踩过的坑在训练样本中几乎没有前面一大串英文或者数字,然后后面跟实体的情况,所以训练起来还挺平稳的。但是在预测的时候遇到了这种情况,造成实体可以识别出来,但是实体的预测结果下标错了(表现为下标提前了)造成这一问题的原因是在给bert传文本得到文本特征的时候,可以穿字符串的文本,也可以自己token完成后传一个token后的list。如果传递的是字符串,默认系统的token,对于...

2019-05-19 23:30:32 1365 5

原创 keras 问题汇总

(1)cub segmented reduce errorinvalid configuration argumentLSTM——CRF 框架中,初始化crf时,检查类别是否赋值正确。(2)attributeerror ‘tensor’ object has no attribute ‘assign’Embeding层,检查输入的字符数是否正确,生成的batch数据是否正确。...

2019-04-08 20:35:16 521

原创 java版本phash算法优化

phash本文的参考实现是:https://blog.csdn.net/sunhuaqiang1/article/details/70232679原有代码中有一个四重for循环:private double[][] applyDCT(double[][] f) { int N = size; double[][] F = new double[N][N];...

2019-04-08 20:30:21 1174 3

原创 seq2seq的实现方式(3)

书接上文这里实现的是方式(4),采用attention的方式。 def build_model(self): """""" encoder_input = layers.Input(shape=(self.input_seq_len,)) encoder_embeding = layers.Embedding(input_dim=len(...

2019-03-10 10:53:24 315

原创 seq2seq的实现方式(2)

书接上文:本篇实现的是(3)的方式,Encoder的隐层和Embeding的集合方式是sum,当然也可以改成其他的方式。下面就直接上代码了: def build_model(self): encoder_input = layers.Input(shape=(self.input_seq_len,)) encoder_embeding = layer...

2019-03-10 10:44:25 360

原创 seq2seq的实现方式(1)

应用场景seq2seq是自然语言处理应用中的常用模型,一般的机器翻译,文本摘要,对话生成(虽然之前实现过基于语言模型+关键词的生成方式,但这才是正道),文本摘要等任务。更高级的模型也是从基础的模型进行迭代的模型架构相对统一。其具体的模型原理就不讲了,有很多博客已经有很好的说明,在这里只是趁着周末更新一下seq2seq在机器翻译方面的实验,更新上来供同行们参考。嗯,seq2seq有几种模式:...

2019-03-10 10:39:39 461

原创 命名实体识别实践(bert+微调)

bert

2019-03-09 21:51:22 5970 7

原创 命名实体识别实践(LSTM+CRF)

LSTM

2019-03-09 21:38:51 2733 2

原创 命名实体识别实践(词典匹配)

使用词典

2019-03-09 21:24:09 5735 1

原创 新浪微博第三方授权

在开放平台的应用中设置授权网址(一般有默认)使用APP_KEY, APP_SECRET, REDIRECT_URL 去请求授权接口。这里可以参考别人已经写好的demohttps://github.com/olwolf/sinaweibopy3/blob/master/sinaweibopy3.py请求后在打开的网页中填写用户名密码:将网址上的code复制下,添加到需要的位置即可:...

2019-03-06 22:57:31 538

原创 keras-contrib库的安装

安装 keras-contribpip install git+https://www.github.com/keras-team/keras-contrib.git转自:https://blog.csdn.net/jdzwanghao/article/details/80274696

2019-03-05 10:33:21 3902 2

转载 keras 多任务多loss

# Three loss functionscategory_predict1 = Dense(100, activation='softmax', name='ctg_out_1')( Dropout(0.5)(feature1))category_predict2 = Dense(100, activation='softmax', name='ctg_out_2')( ...

2019-03-01 23:16:56 4713 6

原创 文本相似度计算与检索

前言:文本的检索和相似度计算在nlp的应用中有很重要的作用,本文介绍了一种简单方法对问答匹配进行一种实现,即在所有的query中找到和用户输入query罪匹配的一项。本方法比较适合细粒度的匹配。主要技术:(1)关键词分析:提取出Query中主要的关键词,作为检索源。(2)全文检索:如mysql、ELsearch等均可。 作为召回。(3)在召回数据中进行相似度计算找到最高匹配项。完成匹配。...

2019-03-01 23:05:31 2030

原创 tensorflow-gpu DLL问题解决

前提:NVIDIA 驱动程序下载。CUDA下载,现在到了v10.0了。cudnn下载,并将相应文件拷贝到NVIDIA GPU Computing Toolkit\CUDA\v10.0对应目录下。环境:安装C++编译程序。05版本即可。Anaconda3 下载,最先版的即可。pip install tensorflowpip install tensorflow-gpu调整:如...

2019-03-01 14:36:34 1799

原创 序列相似性比对(1)

序列的相似索引和相似度计算直接代码: def seq_match_pattern_2(self, list_char, list_char_other): """基于字符序列的比对 @:param list_char 对比序列1 @:param list_char_other 对比序列2 """ d = diffl...

2019-02-28 23:24:45 2599

原创 mdb文件内容导出

使用命令(ubuntu系统):mdb-export test.mdb tablename > /home/test/tablename.csv

2019-02-28 23:06:12 1989

原创 AipNlp测试

AipNlpAipNlp是百度家的自然语言接口,功能呢个挺全的,在系统构建之初已有的功能可以先取之应急,把系统搭建起来,然后再相应的改成自有实现。(当然要在百度平台申请帐号,获取相应的KEY,这里就略去了)from aip import AipNlpclass baidu_nlp_ts(object): """对百度的自然语言api进行使用和测试""" def __init...

2019-02-28 22:50:20 3285

原创 自定义层多输出时需要list包装

def compute_output_shape(self, input_shape): if self.data_format == 'channels_first': rows = input_shape[2] cols = input_shape[3] elif self.data_format == 'cha...

2019-02-28 10:58:15 140

原创 LSTM计算过程推导

LSTM 计算过程推导(1) LSTM简介(2)LSTM笔记(3)LSTM变体(4)LSTM代码(1) LSTM简介LSTM是常用的循环神经网络(即带有LSTMcell的循环网络),使用的时候也非常方便,在这里想结合论文和代码对LSTM的计算过程做一下介绍。(2)LSTM笔记先放一张图(摘自大牛的笔记)(1)Ct-1 -> Ct (最上面横线,该细胞状态state)只经历了小的线...

2019-02-18 23:32:33 3846

原创 文本表示概览

文本表示文本表示在最近的研究领域非常火热,因为自己在做文本分类的一些工作(这一部分计划在另一篇博文中进行阐述),所以对文本表示的一些方式进行了一些调研,对于问题了解的同时也产生了一些疑问概论 如何描述一个句子...

2019-02-17 18:26:54 296

srilm-1.7.2

语言模型训练工具,可以进行统计翻译项目,亲测可用。

2018-03-21

空空如也

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

TA关注的人

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