自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(64)
  • 收藏
  • 关注

原创 FastText文本分类代码

import jiebaimport pandas as pdimport randomimport fasttextcate_dic = {'technology':1, 'car':2, 'entertainment':3, 'military':4, 'sports':5}df_technology = pd.read_csv("./data/technology_news.csv", encoding='utf-8')df_technology = df_technology.dro

2020-10-17 22:46:25 1323 1

原创 VQA聊天机器人课程笔记

VQA用来替代图灵测试测试人工智能的程度:给定一些图片,及关于图片的一些问题,智能系统给出答案判断系统的智能程度。VQA模型的思路:第一步,生成答案(做成文本的分类问题。)将句子里常见的前20%的答案作为所有答案,通过softmax进行问题判断,差不多可以得到80%左右的问题的正确答案。也就说准确率能达到80%。第二步,处理数据源(图片)...

2020-10-14 16:55:14 276

原创 word2vec实战部分-情感分析方法和TextCNN及FastText进行股票预测

情感分析方法:1.最简单的方法:sentiment dictionary 类似于关键词打分机制http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6010sentiment_dictionary = {} for line in open('data/AFINN-111.txt') word, score = line.split('\t') sentiment_dictionary[word...

2020-10-13 23:37:13 1108 1

原创 word2vec做情感分析

摘要:本文旨在对情感分类任务的工作流程做一个简单的梳理,总结了大体框架,及一些需要注意的细节问题,作为总结。目录标题1.文本预处理标题2.词带模型做文本表征标题3.word2vec做词表征标题4.用处理好的表征训练模型进行分类标题1.文本预处理无论用哪种模型进行文本表征或分类,第一步肯定是对数据进行预处理,做特征工程。对影评数据做预处理,大概有以下环节:1.用pandas读入数据,理解数据(可视化分析/统计信息)对数据的理解是任何AI工作的第一步,需要充分对手上的数

2020-10-11 11:23:48 2426

原创 word2vec实战第一节

2020-10-04 16:32:25 43

原创 Bert训练过程

word2vec存在问题:语言模型如rnn、lstm最后输出的是整个句子的向量,而我们需要预测的是其中某个词的向量,所以用其做为词向量训练不合适,有了双向lstm,即ELMo。Bert的预训练过程:bert:两个句子如果相连则输出0,不相连则输出1,然后将所有句子两两组合输入模型,开头加【cls】第一句【sep】第二句【sep】损失函数为mask单词和句子间关系损失之和。bert作为预训练模型的使用:两种将cls层输出的向量作为句子的向量,外接一个分类器...

2020-10-04 15:18:20 2583 1

原创 self-attention结构

decoder端输入训练时是对应的句子和encoder的output,那生成时不知道翻译的结果输入的是什么呢关于位置信息:提前在训练的词向量里加了一个表示位置的向量进入模型进行训练,解决词序问题。词向量与位置向量是加法不是拼接。每个位置的向量是人为定的。...

2020-10-03 22:00:40 434

原创 Seq2Seq的attention

Seq2Seq模型存在的问题:梯度问题,decoding只依赖于context vector,句子开始部分的信息容易丢失。(即梯度消失问题)实际应用中,翻译某个词可能只需要关注C中的某一部分即可(如翻译weather时只需关注天气这个词),但seq2seq的C是整个句子的向量,所以在翻译weather时可能会出现副作用。解决方法:引入attention进入attention的好处:可解释性增强,更容易找bug。attention原理:下文中汉语的每个词的向量与翻译的每个词进行相.

2020-09-30 18:45:49 72

原创 attention在看图说话里的应用

attention:针对图像识别针对机器翻译针对自注意力机制三类

2020-09-29 16:22:40 96

原创 Seq2Seq模型

神经机器翻译:端到端的学习,先encoding 再decoding。多模态模型学习实例:seq2seq模型:先用RN/LSTM编码,生成meaning vector 然后再输入RNN/LSTM解码生成句子seq2seq模型参数已知,生成新句子的过程:...

2020-09-29 14:33:25 77

原创 神经网络作深原因及dropout防止过拟合原因

网络加深原因:深度学习不是模型,更像是一个框架,加上各种模型,构成新的模型。与单层神经网络相比,深层次神经网络可在具有相同表示能力的前提下,具有更低的时间复杂度。简化模型深层神经网络难以训练:因为存在梯度消失问题,底层的神经元可能就训练不到了解决方法:...

2020-09-29 11:49:16 291

原创 表示学习介绍

表示学习即做各种特征工程评估表示学习的方法:有以下几点A.平滑性,损失函数最好是平滑函数可求导优化B.多特征表示: 可以把输出层分成若干类,每一类表示一个特征,这样通过只改变其中的部分参数就可改变指定的输出结果。可解释性增强。C. 层次结构:底层的信息可以迁移学习另一个神经网络。D. 迁移学习:有迁移能力E. 低维性特征:时间空间一致性:即随着时间推移,变化不要太大。比如用户的购买商品的种类,稀疏...

2020-09-29 11:13:34 1105

原创 RNN原理介绍

RNN介绍:RNN与HMM的区别:主要是隐状态,HMM相当于是onehot编码,每个观测状态是由某一个隐状态决定的,其他都为0.属于局部最优解,稀疏。而RNN的隐状态相当于词向量表示(分布式表示),每个观测状态是由好多隐状态作用生成的,密集。递归神经网络适合语言模型,因为后边的输出会受前边输入的影响,所以一个句子后边的词的生成是联合概率。但存在的问题是梯度消失,随着句子加长,生成后边的词时,越远的词的作用会越来越小,所以有了LSTM。每一个时间点的输出都是一个长度为V(词典.

2020-09-28 23:19:06 1268

原创 反向传播算法推导

神经元的工作机理:分为两部分,下半部分是一个线性函数,用变量生成一个线性函数;上半部分是将a(x)装入一个激活函数将激活函数结果输出。输出层的激活函数、损失函数:反向传播算法:反向传播算法总结:神经网络优化过程:(1) 先前向过程,计算出初始的f(x) a(x) h(x)(2) 反向传播优化(即梯度下降法)(3)更新参数梯度下降检查:...

2020-09-23 13:55:06 35

原创 词向量表示总结

1、Word2vec Skipgram总结:存在缺点:(1) 可解释性差(2) 无法有效学习低频词向量(3)上下文的考虑不多(4) 窗口长度有限(5) 无法考虑全局(6) 严格意义的语序信息没有学到对应的解决模型:对于低频词和未登录词的向量学习可用subword模型(但中文不好使,英文可以),即把一个单词向量分解成子向量相加的形式, 计算出子单词的向量表示,再用子单词拼接成低频词,把低频词表示出来。2、ELMO算法:用神经网络(LSTM)计算.

2020-09-20 15:01:17 194

原创 word2vec训练的词向量评估方法

对于词向量的评估方法有三种:(1)降维到二维结合常识看词分布是否同类的聚集等等。(2) 结合人工标记的词库的词向量进行比对,计算余弦相似度评估。(3) 用类比的方法,看两组相同词构成的向量是否平行。...

2020-09-19 19:12:07 766

原创 CRF参数推导及 word2vec公式推导

CRF中参数w的推到过程:与HMM中的参数估计类似,都是用了F/B算法单词的分布式表示方法: word2vec, onehot比较, onhot缺点, 分布式表示方法概念。...

2020-09-17 23:26:33 268

原创 CRF引入知识基础

2020-09-17 17:01:58 61

原创 EM算法及用EM估计HMM的参数

EM算法推到:有两个变量隐变量及转移概率都未知,解决方法是先把转移概率看成已知量,求隐变量期望,然后再把期望看成已知,求让目标函数最大化的转移概率。...

2020-09-17 11:49:50 561

原创 实体统一,实体消歧, 指代消解

指代消解:比较难,目前还没有得到很好的结果。

2020-09-16 10:27:56 503

原创 HMM复习

一种HMM的情景: 词性为隐变量Z,单词为状态序列X 。在 A,B,π已知的情况下,求一个句子的隐状态Z的最优路径。VITERBI算法前向-后项算法:这个算法的主要作用是用来预测模型的参数 A B π前向-后项算法的作用:计算模型参数结构改变的探测数据表示:有些特征是冗余的,还有些是噪声,有些特征对建模是无关所以需要特征提取等操作,如降维来提高模型准确率。神经网络实质也是一种降维。...

2020-09-15 16:25:02 78

原创 句法分析

2020-09-13 15:14:24 119

原创 关系抽取之snowball算法

snowball基础之bootstrap原理:注:seed tuple 为初始时人工标注的表格数据。bootstrap算法缺点:每一步得到的规则和tuple好多是错误的,导致准确率下降很快。针对此缺点,snowball进行了改进,加了3,4步,即对新生成的规则和tuple进行了筛选,过滤掉准确率低的。引入评分机制,根据分数来过滤掉错误的。此处词向量为onehot编码。此处第三步规则的分数如何得到的有些没明白。...

2020-09-12 20:18:09 1159

原创 信息抽取(一)

2020-09-11 19:56:40 72

原创 知识图谱特征抽取

基于规则信息抽取:监督学习关系抽取:

2020-09-10 19:17:10 867

原创 SVM相关笔记

优化问题思路: 拿到目标函数后看1 平滑or 非平滑 2,凸函数or 非凸函数 3,连续 or 非连续(如定义域为整数集) 4, 约束or 非约束然后再找对应的优化算法。SVM 推到:的含义:即犯了多大的错误,越大,错误越严重,目标函数里乘法越多。...

2020-09-10 14:40:55 46

原创 set cover problem 解决方法总结

set cover problem1.exhausitive search 穷举法2. greedy search 贪心算法3. math formulationconstrained 约束的

2020-09-07 13:25:02 2331

原创 AI构建目标函数思路

构建目标函数解决最大流问题的思路:

2020-09-07 10:48:53 204

原创 LASSO具有特征选择性原因及MAP vs MLE比较

拉格朗日惩罚项业务上解决一个问题的思路:step1.首先拿到一个问题:比如购买率不高step2. AI工程师提出解决方法:比如需要提高点击购买率(ctr)step3. 构建目标函数 比如MLE,MAP(最大后验概率),baysim(贝叶斯派)选一个方向 构建逻辑回归,svm,线性回归等step4. 优化目标函数 如 SGD, adam, 拟牛顿法,closed form(求导),等等逻辑回归是线性分类器线性分类器: 根据判断模型决策...

2020-09-06 22:51:48 712

原创 logistics regression 进行 emotion_analysis

import numpy as npimport pandas as pddata = pd.read_csv('./ISEAR.csv',header=None)data.head() 0 1 2 0 joy On days when I feel close to my partner and ot... NaN

2020-09-04 21:51:32 130

原创 L1-L2正则比较

L1正则有特征选择能力的几何解释:L1-L2各自的优缺点 及存在问题

2020-09-03 21:52:41 56

原创 NLP基础之词性标注代码实现

# 数据集已对每个词进行了标注#生成 词库,词标签,词性标签word2id, id2word = {},{}tag2id, id2tag = {}, {}for line in open('traindata.txt'): item = line.split('/') word, tag = item[0], item[1].rstrip() if word not in word2id: word2id[word] = len(word2id)

2020-09-01 16:03:06 753

原创 python 高阶函数介绍

生成模型:可以生成一些数据 联合概率去训练判别模型: 判定类型 条件概率的方式核心区别:训练算法不同。

2020-08-29 22:50:46 60

原创 NLP基础之专家系统介绍

1.专家系统即基于大量规则形式做的AI系统专家系统:目前在金融风控领域应用仍然十分广泛,因为其有自身的一些优点。金融风控知识图谱搭建流程如下:step1:需要金融专家将金融领域的一些经验整理出来step2: 知识图谱工程师将专家的经验构造成知识图谱(计算机可识别),生成图数据库。step3:NLP工程师构建推理层step4:业务人员通过API接口调用程序进行应用。2. 专家系统优缺点:优点:1. 可解释性强。2.不需要很多数据。缺点:1. 需要设计大量的

2020-08-29 11:05:12 1625

原创 NLP基础之拼写纠错代码实现

# 第一步:构建词库 vocab网上搜,自己爬都行vocab = set([line.rstrip() for line in open('./vocab.txt')])vocab输出:{ ‘widths’, ‘truer’, …}# 第二步: 生成编辑距离为1的有效单词# 定义函数生成所有编辑距离为1的候选单词def generate_candidates(word): """ word: 给定的输入(错误的输入) 返回所有(valid)候选集合 """

2020-08-28 20:54:18 439

原创 NLP基础之语言模型及其评估方法

1. Noisy Channel Model2. 语言模型即判断一句话是不是人话。是计算上文noisy channel model 模型中的P(text)。方法是用markov假设。即一个词出现概率只与它前边的一个词有关,与再往前的词无关(bigram)2.1 Markov Assumption(马尔科夫假设) 与 Unigram(词相互独立)、Bigram(每个词只与前1个词相关联)、trigram(每个词只与前2个词相关联)、N-gram(每个词与前n-1个词相关联)...

2020-08-22 20:59:38 644

原创 NLP基础之问答系统如何降低时间复杂度

问答系统中如何进行过滤来降低时间复杂度:核心思路是层次过滤,先用复杂度低的模型过滤掉大部分语料库中的问答。然后用复杂度高的过滤器(如计算夹角余弦相似度)进行精确计算排序。即倒排表: 把语料库里的每个词都建一个列表,语料库里的文档包含该词的都放到一块。然后再看输入的问题含有的词语。有该词的文档都写出来,然后进行过滤。常用于搜索系统...

2020-08-22 15:54:45 153

原创 NLP基础之词过滤及词转向量的相关方法

少于10次或20次的可以作为低频次去掉。词的标准化操作(主要是英文)stemming:将类似词转换成统一格式,但词不一定是实际词。如 fli, deni。。。lemmazation:与stemming区别是转换成统一格式的词,该词是真实存在的。...

2020-08-21 22:24:56 898

原创 NLP基础之分词和纠错原理

1. 最大匹配前项最大匹配(forward-max matching )需要先设置一个最大匹配长度(通常max_len 为5-10),然后从左到右圈出这些字。看一下这五个字的词有没有在词库里,若有,则分词,若无,则把最右边一个字去掉,看剩下4个字是否为一个词。以此循环。直到完成。小点:贪心和动态规划的区别贪心为选择当前最优解,局部最优可能会得到全局最优动态规划为能看到全局最优的条件下进行优化。得到的是全局最优解。后项最大匹配算法与前项原理相同,只是从右往左删除字符。小点.

2020-08-21 14:49:33 616

原创 NLP基础之常规处理流程

P VS NP VS NP hard VS NP complete 区别:P: 可解决问题。多项式复杂度NP: 验证给出答案符不符合条件。属于多项式问题,可解决NP hard : 指数复杂度, 不可解决。 NP Complete 属于NP hard.指数级复杂度: 不可解决的问题, 需要使用近似的算法多项式复杂度: 可以解决的问题(即使为N^100次方 次数很大)搭建智能客服系统首先需要一个语料库正则:适合没有语料的时候。一个问题 ----...

2020-08-20 14:53:43 137

空空如也

空空如也

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

TA关注的人

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