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

有关网站建设的图片百度seo搜索引擎优化培训

有关网站建设的图片,百度seo搜索引擎优化培训,免费域名注册工具,北京网站建设公司如何选python-pytorch使用日志 1. optimizer.zero_grad()和model.zero_grad()的区别2. cbow和skip-gram的训练数据格式3. 获取cbow和skip-gram训练后的中文词向量4. 获取到词向量后可以做什么5. 余弦相似度结果的解释 1. optimizer.zero_grad()和model.zero_grad()的区别 都是清空模… python-pytorch使用日志 1. optimizer.zero_grad()和model.zero_grad()的区别2. cbow和skip-gram的训练数据格式3. 获取cbow和skip-gram训练后的中文词向量4. 获取到词向量后可以做什么5. 余弦相似度结果的解释 1. optimizer.zero_grad()和model.zero_grad()的区别 都是清空模型的梯度参数如果模型中有多个model训练时建议使用model.zero_grad()如果只有一个模型训练optimizer.zero_grad()和model.zero_grad()意义都一样 2. cbow和skip-gram的训练数据格式 cbow格式 data1 [] for i in range(2, len(raw_text) - 2):context [raw_text[i - 2], raw_text[i - 1],raw_text[i 1], raw_text[i 2]]target raw_text[i]data1.append((context, target))cbow最终格式 [([‘从零开始’, ‘Zookeeper’, ‘高’, ‘可靠’], ‘开源’), ([‘Zookeeper’, ‘开源’, ‘可靠’, ‘分布式’], ‘高’), ([‘开源’, ‘高’, ‘分布式’, ‘一致性’], ‘可靠’), ([‘高’, ‘可靠’, ‘一致性’, ‘协调’], ‘分布式’), ([‘可靠’, ‘分布式’, ‘协调’, ‘服务’], ‘一致性’)] skip-gram格式 data3 [] window_size12 for i,word in enumerate(raw_text):target raw_text[i]contextsraw_text[max(i - window_size1, 0): min(i window_size1 1, len(raw_text))]for context in contexts:if target!context:data3.append((context,target)) data3,len(data3)或者类似于def create_skipgram_dataset(sentences, window_size4):data [] # 初始化数据for sentence in sentences: # 遍历句子sentence sentence.split() # 将句子分割成单词列表for idx, word in enumerate(sentence): # 遍历单词及其索引# 获取相邻的单词将当前单词前后各 N 个单词作为相邻单词for neighbor in sentence[max(idx - window_size, 0): min(idx window_size 1, len(sentence))]:if neighbor ! word: # 排除当前单词本身# 将相邻单词与当前单词作为一组训练数据data.append((neighbor, word))return dataskip-gram最终格式 ([(‘Zookeeper’, ‘从零开始’), (‘开源’, ‘从零开始’), (‘从零开始’, ‘Zookeeper’), (‘开源’, ‘Zookeeper’), (‘高’, ‘Zookeeper’), (‘从零开始’, ‘开源’), (‘Zookeeper’, ‘开源’), (‘高’, ‘开源’), (‘可靠’, ‘开源’), (‘Zookeeper’, ‘高’), (‘开源’, ‘高’), (‘可靠’, ‘高’), (‘分布式’, ‘高’), (‘开源’, ‘可靠’)] 3. 获取cbow和skip-gram训练后的中文词向量 前提是需要使用中文去训练搭建的模型可以参考 https://blog.csdn.net/Metal1/article/details/132886936 https://blog.csdn.net/L_goodboy/article/details/136347947 如果使用pytorch的Embeding的模型获取的就是embeding层 class SkipGramModel(nn.Module):def __init__(self, vocab_size, embedding_dim):super(SkipGramModel, self).__init__()self.embedding nn.Embedding(vocab_size, embedding_dim)self.linear nn.Linear(embedding_dim, vocab_size)def forward(self, center_word):embedded self.embedding(center_word)output self.linear(embedded)输出每个词的嵌入向量 for word, idx in word_to_idx.items(): print(f{word}: {model.embedding.weight[:,idx].detach().numpy()})如果使用原生的写的模型获取的就是第一层的线性层 import torch.nn as nn # 导入 neural network class SkipGram(nn.Module):def __init__(self, voc_size, embedding_size):super(SkipGram, self).__init__()# 从词汇表大小到嵌入层大小维度的线性层权重矩阵self.input_to_hidden nn.Linear(voc_size, embedding_size, biasFalse) # 从嵌入层大小维度到词汇表大小的线性层权重矩阵self.hidden_to_output nn.Linear(embedding_size, voc_size, biasFalse) def forward(self, X): # 前向传播的方式X 形状为 (batch_size, voc_size) # 通过隐藏层hidden 形状为 (batch_size, embedding_size)hidden self.input_to_hidden(X) # 通过输出层output_layer 形状为 (batch_size, voc_size)output self.hidden_to_output(hidden) return output 输出每个词的嵌入向量 for word, idx in word_to_idx.items(): print(f{word}: {model.input_to_hidden .weight[:,idx].detach().numpy()})4. 获取到词向量后可以做什么 “具有相同上下文的词语包含相似的语义”使得语义相近的词在映射到欧式空间后中具有较高的余弦相似度。 语义相似性度量词向量能够将语义上相近的词映射到向量空间中相近的位置。因此可以通过计算两个词向量的余弦相似度或欧氏距离来度量它们之间的语义相似性。这在诸如词义消歧、同义词替换等任务中非常有用。 文本分类与情感分析在文本分类任务如新闻分类、电影评论情感分析中词向量可以作为特征输入到分类器中。通过将文本中的每个词表示为向量并聚合这些向量例如通过取平均值或求和可以得到整个文本的向量表示进而用于分类或情感分析。 命名实体识别在命名实体识别NER任务中词向量可以帮助模型识别文本中的特定类型实体如人名、地名、组织机构名等。通过将词向量与序列标注模型如BiLSTM-CRF结合使用可以提高NER的性能。 问答系统在问答系统中词向量可以用于表示问题和答案的语义信息。通过计算问题和答案的词向量之间的相似度可以找出与问题最匹配的答案。 机器翻译在机器翻译任务中词向量可以用于捕捉源语言和目标语言之间的语义对应关系。通过训练跨语言的词向量表示如跨语言词嵌入可以实现更准确的翻译结果。 文本生成在文本生成任务如文本摘要、对话生成等中词向量可以作为生成模型的输入或隐层表示。通过利用词向量中的语义信息模型可以生成更自然、更相关的文本内容。 知识图谱与实体链接在知识图谱构建和实体链接任务中词向量可以用于表示实体和概念之间的语义关系。通过将实体和概念映射到向量空间可以方便地进行实体识别和关系推理。 5. 余弦相似度结果的解释 余弦相似度的结果范围通常在-1到1之间这个范围可以用来解释两个向量之间的相似程度 值为1当余弦相似度为1时表示两个向量完全重合即它们指向的方向完全相同这意味着两个向量代表的文本或概念在语义上几乎完全相同。 值为-1当余弦相似度为-1时表示两个向量完全相反即它们指向的方向完全相反。在文本相似度的上下文中这通常意味着两个文本在语义上非常对立或相反。 值为0当余弦相似度为0时表示两个向量正交即它们之间的夹角为90度。在文本相似度的语境中这通常意味着两个文本在语义上没有直接的联系或相似性。 值在0到1之间当余弦相似度在0和1之间时表示两个向量之间的夹角小于90度但不完全重合。数值越接近1表示两个向量在方向上的相似性越高即两个文本在语义上的相似性越高。 值在-1到0之间当余弦相似度在-1和0之间时表示两个向量之间的夹角大于90度但小于180度。数值越接近-1表示两个向量在方向上的对立性越高即两个文本在语义上的对立性越高 如 其中trained_vector_dic是通过模型获取的词向量字典 余弦相似度 trained_vector_dic{} for word, idx in word_to_idx.items(): # 输出每个词的嵌入向量trained_vector_dic[word]model.embedding.weight[idx]import torch import torch.nn.functional as F cosine_similarity1 F.cosine_similarity(torch.tensor(trained_vector_dic[保持数据].unsqueeze(0)), torch.tensor(trained_vector_dic[打印信息]).unsqueeze(0)) print(cosine_similarity1)结果如下表名不相似 tensor([-0.0029])点积相似度 dot_product torch.dot(torch.tensor(trained_vector_dic[保持数据]), torch.tensor(trained_vector_dic[打印信息])) x_length torch.norm(torch.tensor(trained_vector_dic[保持数据])) y_length torch.norm(torch.tensor(trained_vector_dic[打印信息])) similarity dot_product / (x_length * y_length) print(similarity)结果如下表名不相似与余弦结果一致 tensor([-0.0029])
http://www.w-s-a.com/news/977791/

相关文章:

  • 城乡建设主管部门官方网站公司简介模板ppt范文
  • 网站认证必须做么cc0图片素材网站
  • net域名 著名网站国外设计案例网站
  • 淘宝客网站哪里可以做app地推网
  • 宜昌建设厅网站中国最新时事新闻
  • 微网站怎么开发wordpress 发表评论
  • 山东网站建设是什么一页网站首页图如何做
  • 游戏开发与网站开发哪个难万网影
  • 做网站编程语言建筑施工特种证书查询
  • 找人做网站内容自己编辑吗修改wordpress登陆界面
  • 登陆建设银行wap网站湖南网站建设磐石网络答疑
  • 58网站怎么做浏览度才高论坛网站怎么做排名
  • wordpress 手机网站支付京东网站建设的经费预算
  • 自己怎么样做游戏网站做海外贸易网站
  • 建立什么样的网站好制作网页网站代码
  • 岳麓区专业的建设网站公司尚一网常德论坛
  • 电商网站建设实训报告360站长平台链接提交
  • 个性化网站建设公司个人网站备案类型
  • 腾讯建站模板上海网站开发有限公司
  • 网站和小程序的区别请问做网站怎么赚钱
  • 网站logo设计免费版在线网站开发建设准备工作
  • wordpress多站点 主题南京做网站好的公司
  • 广州 门户seo到底是做什么的
  • 可以登录国外网站吗如何用家用电脑做网站
  • 吉安建站公司wordpress企业
  • 河北住房和城乡建设厅网站6thinkphp做视频网站
  • 遵义网站制作一般需要多少钱深圳全国网站制作哪个好
  • 公众平台网站价格哪个网站做餐饮推广最好
  • 深圳 公司网站设计重庆的网站设计公司价格
  • 网站开发市场分析餐饮平台app有哪些