96SEO 2026-02-20 00:50 16
。

…在上一节的情感分类当中有些评论是负面的但预测的结果是正面的比如this
shit这部电影是狗屎很明显就是对这部电影极不友好的评价属于负类评价给出的却是positive。
所以这节我们通过专门的“分词”和“扩大词向量维度”这两个途径来改进提高预测的准确率。
spaCy分词我们用spaCy分词工具来进行分词看是否能提高准确性。
推荐带上镜像站点来下载并安装。
pip
en这种方法我没有安装成功于是我选择直接下载安装感觉太慢选择迅雷下载https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-3.0.0/en_core_web_sm-3.0.0-py3-none-any.whl或者pip
https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-3.0.0/en_core_web_sm-3.0.0-py3-none-any.whl这里选择的是en_core_web_sm语言包所以也可以直接选择豆瓣镜像下载《推荐这种方法》pip
en_core_web_sm-3.0.0-py3-none-any.whl
pypi.douban.com安装好之后就可以通过spacy来加载这个英文包spacy_en
spacy.load(en_core_web_sm)spacy_en._path
WindowsPath(D:/Anaconda3/envs/pygpu/lib/site-packages/en_core_web_sm/en_core_web_sm-3.0.0)然后进行分词将上一节或者说自带的get_tokenized_imdb函数修改下使用修改的这个函数def
spacy_en.tokenizer(text)]return
data]我们训练看下效果如何print(d2l.predict_sentiment(net,
print(d2l.predict_sentiment(net,
print(d2l.predict_sentiment(net,
可以看到准确率有提高而且第一条影评在上一节预测是positive这里预测为negative正确识别了这条影评的负类评价。
第二条影评的预测错误了说明没有识别出not
good属于负类评价接下来我们再叠加一个方法来提高准确率。
300维度的词向量我们将预处理文件的词向量从100维度提高到300维度看下准确度有没有上升也就是选择glove.6B.300d.txt来替换glove.6B.100d.txtglove_embedding
pretrained_file_nameglove.6B.300d.txt,
)选择更高维度的词向量文档之后我们做下训练测试看下print(d2l.predict_sentiment(net,
print(d2l.predict_sentiment(net,
print(d2l.predict_sentiment(net,
print(d2l.predict_sentiment(net,
准确度再次有了提升四条影评都被正确识别了情绪。
全部代码import
spacy_en.tokenizer(text)]return
get_tokenized_imdb(data)counter
d2l.download_imdb(data_dirdata)
d2l.preprocess_imdb(train_data,
gdata.ArrayDataset(*d2l.preprocess_imdb(train_data,
gdata.ArrayDataset(*d2l.preprocess_imdb(test_data,
train_iter:print(X.shape,y.shape)break
nn.Embedding(input_dimlen(vocab),
bidirectional设为True就是双向循环神经网络self.encoder
rnn.LSTM(hidden_sizenum_hiddens,num_layersnum_layers,bidirectionalTrue,input_sizeembed_size,)self.decoder
LSTM需要序列长度(词数)作为第一维所以inputs[形状为(批量大小,词数)]需做转置#
100)-全连接层之后的形状(5,1,100)embeddings
双向循环所以乘以2(词数,批量大小,词向量维度*2)(500,
pretrained_file_nameglove.6B.300d.txt,
net.embedding.weight.set_data(glove_embedding.idx_to_vec)
net.embedding.collect_params().setattr(grad_req,
gluon.Trainer(net.collect_params(),
gloss.SoftmaxCrossEntropyLoss()
num_epochs)print(d2l.predict_sentiment(net,
print(d2l.predict_sentiment(net,
print(d2l.predict_sentiment(net,
print(d2l.predict_sentiment(net,
good]))其中需要注意的是embed_size的大小需设定为300跟新选择的文件的词向量维度保持一致。
小结从目前实验结果来看对词语的分词做的更好对于理解词义是很有帮助的另外将词映射成的向量维度越高准确度也在提升。
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback