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

品牌形象网站建设优秀的字体设计网站

品牌形象网站建设,优秀的字体设计网站,公司变更经营范围,wordpress 端口 跳转数据准备 AclImdb – v1 Dataset 是用于二进制情绪分类的大型电影评论数据集#xff0c;其涵盖比基准数据集更多的数据#xff0c;其中有 25,000 条电影评论用于训练#xff0c;25,000 条用于测试#xff0c;还有其他未经标记的数据可供使用。 数据预处理和数据装载 imp…数据准备 AclImdb – v1 Dataset 是用于二进制情绪分类的大型电影评论数据集其涵盖比基准数据集更多的数据其中有 25,000 条电影评论用于训练25,000 条用于测试还有其他未经标记的数据可供使用。 数据预处理和数据装载 import refrom torch.utils.data import DataLoader from torch.utils.data import Dataset import osdef tokenization(content):content re.sub(.*?, ,content)fileters [\t,\n,\x97,\x96,#,%,$,,\.,\?,!,\,]content re.sub(|.join(fileters), ,content)tokens [i.strip().lower() for i in content.split()]return tokensdef collate_fn(batch)::param batch:( [tokens, labels], [tokens, labels]):return:content, label list(zip(*batch))return content,labelclass ImdbDataset(Dataset):def __init__(self, trainTrue):self.train_data_path ..\\aclImdb\\train\\self.test_data_path ..\\aclImdb\\test\\data_path self.train_data_path if train else self.test_data_path#把所有文件名放入列表temp_data_path [os.path.join(data_path,pos), os.path.join(data_pathneg)]print(temp_data_path)self.total_file_path [] #所有评论文件路径for path in temp_data_path:file_name_list os.listdir(path)file_path_list [os.path.join(path, i) for i in file_name_list if i.endswith(.txt)]self.total_file_path.extend(file_path_list)def __len__(self):return len(self.total_file_path)def __getitem__(self, index):file_path self.total_file_path[index]# 获取labellabelstr file_path.split(\\)[-2]label 0 if labelstr neg else 1# 获取内容content open(file_path).read()tokens tokenization(content)return tokens, labeldef get_data(trainTrue):imbd_dataset ImdbDataset(train)data_loader DataLoader(imbd_dataset, batch_size2, shuffleTrue,collate_fncollate_fn)return data_loader文本序列化 把文本里每个词语和其对应数字使用字典保存 即句子—数字列表 思路 句子进行分词tokenization)词语存入字典统计出现次数根据出现次数对齐进行过滤把文本 转 数字序列把 数字序列 转 文本 遇到新出现的字符再词典里没有可以用特殊字符替代 预保持每个batch里的序列大小一致使用填充方法 构建词典 把句子转换成序列 再把序列转成句子 class Word2Sequence:UNK_TAG UNKPAD_TAG PADUNK 0PAD 1def __init__(self):self.dict {self.UNK_TAG: self.UNK,self.PAD_TAG: self.PAD}self.count {}def fit(self, sentence):# 把单个句子保存到dictfor word in sentence:self.count[word] self.count.get(word, 0)1def build_vocab(self, min5, maxNone, max_featuresNone)::param min::param max::param max_features: 一共保留多少个词语:return:# 删除count中词频小于min的词语self.count {word:value for word, value in self.count.items() if valuemin}# 删除count中词频大于max的词语if max is not None:self.count {word: value for word, value in self.count.items() if value max}# 限制保留的词语数if max_features is not None:temp sorted(self.cout.items(), keylambda x:x[-1], reverseTrue)[:max_features]self.count dict(temp)# 把 词语 ——数字for word in self.count:self.dict[word] len(self.dict)# 得到一个反转的dict字典self.inverse_dict dict(zip(self.dict.values(), self.dict.keys()))def transform(self, sentence, max_lenNone):把句子 转成 序列:param sentence: [word1, word2, ..]:param max_len: 对句子进行填充或者裁剪:return:if max_len is not None:if max_len len(sentence):sentence sentence [self.PAD_TAG] * (max_len - len(sentence)) # 填充if max_len len(sentence):sentence sentence[:max_len] # 裁剪return [self.dict.get(word, self.UNK) for word in sentence]def inverse_transform(self, indices):# 把 序列 ——句子return [self.inverse_dict.get(idx) for idx in indices]if __name__ __main__:ws Word2Sequence()ws.fit([我,是,你,的,爸爸])ws.fit([我,是,我,的,人])ws.build_vocab(min0)print(ws.dict)re ws.transform([我,爱,人],max_len10)print(re)ret ws.inverse_transform(re)print(ret) 模型构建简单全连接 注意 word_embedding的使用 定义模型import torch import torch.nn as nn import torch.nn.functional as F from lib import ws,max_len from dataset import get_data class MyModel(nn.Module):def __init__(self):super(MyModel, self).__init__()self.embedding nn.Embedding(len(ws), 100)self.fc nn.Linear(100*max_len, 2)def forward(self, input)::param input: [batch_size, max_len]:return:x self.embedding(input) # [batch_size, max_len, 100]x x.view([-1, 100*max_len])output self.fc(x)return F.log_softmax(output,dim-1)model MyModel() optimizer torch.optim.Adam(model.parameters(),lr0.001) def train(epoch):for idx,(input,target) in enumerate(get_data(trainTrue)):# 梯度清零optimizer.zero_grad()output model(input)loss F.nll_loss(output,target)loss.backward()optimizer.step()print(loss.item())if __name__ __main__:for i in range(1):train(epochi)
http://www.zqtcl.cn/news/759007/

相关文章:

  • 西安网站开发的未来发展易企网络网站建设
  • 贵州做网站怎么推广vs2012 做网站教程
  • 完全菜鸟七天学会建网站网络营销的四大基础理论
  • 东莞网站优化案例网站职业技术培训学校
  • 银川网站建设公司电话公司在百度做网站找谁
  • 交换链接适用于哪些网站网络规划与设计的目的
  • 网站做标签寺院网站模板
  • 高端h5网站柳州建站
  • 百度商桥网站郑州有做网站的公司没
  • 做专业网站济南品牌网站建设低价
  • 网站制作客户寻找数据中台厂商
  • 免费找图片素材的网站西安企业seo
  • 网站建设 名词解释国内网站建设建设
  • 文山州建设局网站域名查询seo
  • php网站模块修改太原小店区最新消息今天
  • 苏州网站优化公司seo服务合同
  • vip影视网站怎么做的辽宁建设厅网站什么时候换的
  • 搭建个网站网站维护合同模板
  • 优盖网logo在线设计南通做网站优化的公司
  • 做百度糯米网站的团队新媒体营销推广公司
  • 个人做网站的时代已经过去大连男科医院排名表
  • 天津餐饮网站建设贵港做网站化司
  • 昆山哪家做网站好猪八戒网站建设
  • 网站的静态资源服务器怎么做河北网站备案
  • php儿童摄影网站源码东莞做网站的公司哪家最好
  • 金融投资网站建设wordpress九宫格主题
  • 玉田县网站建设手机网站建设西安
  • 高质量外链网站请大学生做网站
  • 2021能看的网站不要app贴吧网站以前在百度能搜索不到了
  • 个人做网站时不要做什么样的网站百度网站排名全掉