当前位置: 首页 > news >正文

珠海低价网站建设青岛建设网站的公司

珠海低价网站建设,青岛建设网站的公司,常用设计资源网站,北京百姓网文章目录目录1.什么是textCNN1.1 textCNN 提出的背景1.2 textCNN 合理性分析2.textCNN相比于传统图像领域的CNN有什么特点#xff1f;3.textCNN例子讲解3.1 参数和超参数3.2 textCNN的数据3.3 textCNN的网络结构定义3.4 代码目录 1.什么是textCNN 1.1 textCNN 提出的背景 我… 文章目录目录1.什么是textCNN1.1 textCNN 提出的背景1.2 textCNN 合理性分析2.textCNN相比于传统图像领域的CNN有什么特点3.textCNN例子讲解3.1 参数和超参数3.2 textCNN的数据3.3 textCNN的网络结构定义3.4 代码目录 1.什么是textCNN 1.1 textCNN 提出的背景 我们知道CNN在图像领域应用的比较好了那么CNN能不能用于文本分析呢答案是肯定的。在2014年Yoon Kim在其论文“Convolutional Neural Networks for Sentence Classification”就提出了使用CNN对文本进行分类。这应该是最早将CNN用于文本分类中的文章了。所以我们称将用于文本分析的CNN网络叫做textCNN。 textCNN的变种 1.2 textCNN 合理性分析 深度学习模型在计算机视觉与语音识别方面取得了卓越的成就. 在 NLP 也是可以的.卷积具有局部特征提取的功能, 所以可用 CNN 来提取句子中类似 n-gram 的关键信息. 2.textCNN相比于传统图像领域的CNN有什么特点 1.相同点 textCNN和传统的CNN的结构非常类似都是包含输入层卷积层池化层和最后的输出层softmax等可用于CNN防止过拟合的措施如dropout , BN early_stop , L1/L2正则化等也都是通用的全连接层全连接层跟其他模型一样假设有两层全连接层第一层可以上’relu’作为激活函数第二层则使用softmax激活函数得到属于每个类的概率。如果处理的数据集为二分类问题如情感分析的正负面时第二层也可以使用sigmoid作为激活函数然后损失函数使用对数损失函数’binary_crossentropy’。 2.创新点 卷积层 在处理图像数据时CNN使用的卷积核的宽度和高度的一样的但是在text-CNN中卷积核的宽度是与词向量的维度一致这是因为我们输入的每一行向量代表一个词在抽取特征的过程中词做为文本的最小粒度如果我们使用卷积核的宽度小于词向量的维度就已经不是以词作为最小粒度了。而高度和CNN一样可以自行设置通常取值2,3,4,5高度就类似于n-gram了。由于我们的输入是一个句子句子中相邻的词之间关联性很高因此当我们用卷积核进行卷积时不仅考虑了词义而且考虑了词序及其上下文。类似于skip-gram和CBOW模型的思想。 池化层 因为在卷积层过程中我们使用了不同高度的卷积核使得我们通过卷积层后得到的向量维度会不一致所以在池化层中我们使用1-Max-pooling对每个特征向量池化成一个值即抽取每个特征向量的最大值表示该特征而且认为这个最大值表示的是最重要的特征。当我们对所有特征向量进行1-Max-Pooling之后还需要将每个值给拼接起来。得到池化层最终的特征向量。在池化层到全连接层之前可以加上dropout防止过拟合。 3.textCNN例子讲解 3.1 参数和超参数 3.2 textCNN的数据 打标签分类对每句话进行分类jieba分词可以选取的操作自己添加词库和停用词。 使用jieba分词得到想要的分词后进行word2id操作获取文本特征shuf 制作好训练、测试、验证数据集 3.3 textCNN的网络结构定义 3.4 代码 import tensorflow as tf import numpy as npclass TextCNN(object):A CNN for text classification.Uses an embedding layer, followed by a convolutional, max-pooling and softmax layer.sequence_length def __init__(self, sequence_length, num_classes, vocab_size,embedding_size, filter_sizes, num_filters, l2_reg_lambda0.0):# 定义模型数据输出结构 定长的sequence_lengthself.input_x tf.placeholder(tf.int32, [None, sequence_length], nameinput_x)self.input_y tf.placeholder(tf.float32, [None, num_classes], nameinput_y)self.dropout_keep_prob tf.placeholder(tf.float32, namedropout_keep_prob)# Keeping track of l2 regularization loss (optional)l2_loss tf.constant(0.0)# Embedding layerwith tf.device(/cpu:0), tf.name_scope(embedding):self.W tf.Variable(# 每一个词都是embedding_size长度的特征向量 (18758,128)tf.random_uniform([vocab_size, embedding_size], -1.0, 1.0),nameW)#根据词的下标获取它们的word2vec。#embedded_chars的shape[sequence_length, embedding_size]# (none,56,128) sequence_length 56self.embedded_chars tf.nn.embedding_lookup(self.W, self.input_x)#扩充维度 相当于一个1维的通道数# [None,56,128,1]self.embedded_chars_expanded tf.expand_dims(self.embedded_chars, -1)# Create a convolution maxpool layer for each filter sizepooled_outputs []for i, filter_size in enumerate(filter_sizes):with tf.name_scope(conv-maxpool-%s % filter_size):# Convolution Layer# filter_size 分别为3 4 5filter_shape [filter_size, embedding_size, 1, num_filters]W tf.Variable(tf.truncated_normal(filter_shape, stddev0.1), nameW)b tf.Variable(tf.constant(0.1, shape[num_filters]), nameb)conv tf.nn.conv2d( # [None,56-31,1,128] [None,56-41,1,128] [None,56-51,1,128]self.embedded_chars_expanded,W,strides[1, 1, 1, 1],paddingVALID,nameconv)# Apply nonlinearityh tf.nn.relu(tf.nn.bias_add(conv, b), namerelu)# Maxpooling over the outputspooled tf.nn.max_pool( #[None,1,1,128]h,ksize[1, sequence_length - filter_size 1, 1, 1], #[1,54,1,1] [1,53,1,1] [1,52,1,1]strides[1, 1, 1, 1],paddingVALID,namepool)print(pooled)pooled_outputs.append(pooled)# Combine all the pooled featuresnum_filters_total num_filters * len(filter_sizes)self.h_pool tf.concat(pooled_outputs, 3)self.h_pool_flat tf.reshape(self.h_pool, [-1, num_filters_total])# 全连接dropoutwith tf.name_scope(dropout):self.h_drop tf.nn.dropout(self.h_pool_flat, self.dropout_keep_prob)# Final (unnormalized) scores and predictionswith tf.name_scope(output):W tf.get_variable(W,shape[num_filters_total, num_classes],initializertf.contrib.layers.xavier_initializer())b tf.Variable(tf.constant(0.1, shape[num_classes]), nameb)l2_loss tf.nn.l2_loss(W)l2_loss tf.nn.l2_loss(b)self.scores tf.nn.xw_plus_b(self.h_drop, W, b, namescores)self.predictions tf.argmax(self.scores, 1, namepredictions)# Calculate mean cross-entropy losswith tf.name_scope(loss):losses tf.nn.softmax_cross_entropy_with_logits(logitsself.scores, labelsself.input_y)self.loss tf.reduce_mean(losses) l2_reg_lambda * l2_loss# Accuracywith tf.name_scope(accuracy):correct_predictions tf.equal(self.predictions, tf.argmax(self.input_y, 1))self.accuracy tf.reduce_mean(tf.cast(correct_predictions, float), nameaccuracy)
http://www.zqtcl.cn/news/541824/

相关文章:

  • 扬州市网站建设工作室免费模板网站建设
  • 网站大全全部优秀网站设计流程
  • 授权网站系统网站标题如何修改
  • 商城网站大概多少钱考证培训机构报名网站
  • 马鞍山做网站怎么看网站谁做的
  • 网站建设捌金手指专业7网站如何设置广告
  • 做网站用什么浏览器好工程公司工作总结
  • 温州做网站哪家好为wordpress移动端
  • 温州平阳县企业网站搭建推荐建立网站的技术路径
  • php c2c网站开发的 书营销型网站sempk
  • 网站建设专业网站设计公司物格网陕西建省级执法人才库
  • 网站后台管理密码忘了建设网站简单吗
  • 做网站在哪里网站开发平台有哪些
  • 网站域名的建立推荐一个两学一做的网站
  • 网站开发开源框架企业影视广告制作公司
  • 网站建设人员的组织音乐网站建设目标
  • 动画制作软件下载安装网站seo置顶
  • 怎么做网站推广的步骤关闭评论 WordPress
  • 合肥建站费用学生做兼职去哪个网站
  • 万户网络做网站如何做网站的企业排名
  • 天猫网站左侧菜单向右滑出的导航菜单阜阳h5网站建设公司
  • 凡科做网站的方法wordpress备份如何安装
  • 网站备案依据四川省广安建设局网站
  • 网站后台管理系统模板品牌营销和品牌推广
  • 网站建设的整个流程图wordpress标题去重
  • 网站手机版模板做拼货商城网站
  • wordpress建自己的网站吗c2c网站的特点
  • 建设网站的成本有哪些龙岩做网站哪家最好
  • wordpress 多站点 子目录安徽望江县城乡建设局官方网站
  • 电子政务网站建设的步骤一般为俱乐部logo免费设计在线生成