首页 > 其他分享 >使用卷积神经网络实现影评数据的分类

使用卷积神经网络实现影评数据的分类

时间:2023-05-26 17:24:06浏览次数:38  
标签:acc 训练 卷积 神经网络 train 影评 model data 精度

一、实验目的

熟悉循环神经网络在文本分析和分类上的应用

 

二、实验原理或实验内容

从keras的数据集中加载影评数据,注意需要填充(截断)数据,并转成数组的形式。

构建一个神经网络模型,要求使用词嵌入和循环层,并使用划分好的训练集数据训练模型,使用划分好的测试集的数据验证模型,训练迭代20次。

获取训练过程中的训练精度、验证精度,并使用matplotlib来绘制精度变化曲线,要求模型的验证精度达到85%以上(注意不是训练精度)。

写实验报告,将实验代码和绘制精度变化曲线截图粘贴到实验报告中。

 

三、实验器材及实验条件

windows11

jupyter notebook

 

四、实验步骤与结果

    1、导入相关库

    from keras.preprocessing.sequence import data_utils

    from keras.datasets import imdb

    from keras.models import Sequential

    from keras.layers import Embedding,LSTM,Dense   2、加载数据

 

 

    2、加载数据

    maxlen=500

    feature_num=10000

    (train_x,train_y),(test_x,test_y)=imdb.load_data(num_words=feature_num)

   

    train_x=data_utils.pad_sequences(train_x,maxlen=maxlen)

    test_x=data_utils.pad_sequences(test_x,maxlen=maxlen)

 

    3、构建模型

    model=Sequential()

    model.add(Embedding(feature_num,32,input_length=maxlen))

    model.add(LSTM(32))

    model.add(Dense(1,activation='sigmoid'))

    model.compile(optimizer='rmsprop',loss='binary_crossentropy',metrics=['acc'])

    model.summary()

   

    4、编译模型

    # 编译模型

    model.compile(optimizer='rmsprop',loss='binary_crossentropy',metrics=['acc'])

    model.summary()

 

    5、训练模型

    history = model.fit(

    train_dataset,epochs=30,validation_data=validation_dataset,steps_per_epoch=100,val    idation_steps=50)

    6、训练精度,验证精度的可视化,绘制折线图

    history = model.fit(train_x,train_y,epochs=10,batch_size=128,validation_split=0.2)

    predict_y=model.predict(test_x)

 

    5、进行可视化,可视化结果

    import matplotlib.pyplot as plt

 

    plt.rcParams['font.sans-serif'] = ['SimHei']

    train_acc = history.history.get('acc')

    valid_acc = history.history.get('val_acc')

    data_x = range(1, len(train_acc) + 1)

    plt.plot(data_x, train_acc, color='red', label='训练精度')

    plt.plot(data_x, valid_acc, color='green', label='验证精度')

 

    plt.legend()

 

五、    实验分析与结论

    总体而言,使用RNN训练的处理IMDB影评分类的神经网络,在最终精确度上并不比密集连接层高多少,可能的原因如下:

l   训练RNN使用的数据较少,500个时间步之后就截断了序列,而Dense层模型则读取了整个序列

l   没有精细地调用LSTM的超参数,如嵌入维度、输出维度等

l   缺少正则化,可能会过拟合

l   对于情感分析问题,LSTM并不是最擅长的。对于这样的基本问题,观察每条评论中出现了哪些词以及它们出现的频率就可以很好地解决

l   对于更加困难的自然语言理解问题,如问答和机器翻译等,LSTM应该会表现更突出

 

标签:acc,训练,卷积,神经网络,train,影评,model,data,精度
From: https://www.cnblogs.com/beichens/p/17435300.html

相关文章

  • 使用 TensorFlow 自动微分和神经网络功能估算线性回归的参数(Estimate parameters for
    大多数的深度学习框架至少都会具备以下功能:(1)张量运算(2)自动微分(3)神经网络及各种神经层TensorFlow框架亦是如此。在《深度学习全书公式+推导+代码+TensorFlow全程案例》——洪锦魁主编清华大学出版社ISBN978-7-302-61030-4这本书第3章《TensorFlow架构与主要功能》这一......
  • C++ 手搓 CNN 卷积神经网络
    代码请自取https://github.com/xoslh/CNN-MNIST-CPP-1卷积神经网络-CNN的基本原理​ 卷积神经网络(ConvolutionalNeuralNetworks,CNNs)是一种深度学习算法,特别适用于图像处理和分析。其设计灵感来源于生物学中视觉皮层的机制,是一种强大的特征提取和分类工具。1.1Layers......
  • m基于GRNN广义回顾神经网络的车牌字符分割和识别算法matlab仿真
    1.算法仿真效果matlab2022a仿真结果如下:2.算法涉及理论知识概要车牌识别系统(VehicleLicensePlateRecognition,VLPR)是计算机视频图像识别技术在车辆牌照识别中的一种应用。车牌识别在高速公路车辆管理中得到广泛应用,电子收费(ETC)系统中,也是结合DSRC技术识别车辆身份的主要手......
  • m基于GRNN广义回顾神经网络的车牌字符分割和识别算法matlab仿真
    1.算法仿真效果matlab2022a仿真结果如下:    2.算法涉及理论知识概要        车牌识别系统(VehicleLicensePlateRecognition,VLPR)是计算机视频图像识别技术在车辆牌照识别中的一种应用。车牌识别在高速公路车辆管理中得到广泛应用,电子收费(ETC)系统中,也是......
  • 使用卷积神经网络实现猫和狗的预测
    1、将图片数据分为训练集和验证集,训练集中猫和狗各300张图片,验证集中猫和狗各200张图片。2、构建一个神经网络模型,并使用划分好的训练集数据训练模型,使用验证集的数据验证模型,训练迭代30次,建议使用生成器。3、获取训练过程中的训练精度、验证精度,并使用matplotlib来绘制精度变化......
  • 对《第一次》影评吐槽
    第一次电影改编韩国疼爱这是某影评: ***故事简介***妈妈为了让生病(绝不能剧烈运动)的女儿活的开心点,出钱让赵又廷扮演女儿曾暗恋过但死去的高中同学。但没想到男方假戏真做,和姑娘搞了第一次后,姑娘跳了个舞(算具体运动)然后就挂了。某人的影评:***剧本***......
  • 基于pytorch搭建AlexNet神经网络用于花类识别
     ......
  • 跟姥爷深度学习6 卷积网络的数学计算
    一、前言前面简单用TensorFlow的全连接网络做了气温预测然后深入了解了一下全连接网络的数学计算,接着用CNN(卷积)网络做了手写数字识别,本篇就接着这个节奏来看卷积网络的数学计算。二、卷积网络回顾前面我们使用卷积网络时并没有说太明白,特别是一些参数的含义,这里先补一下功课。......
  • 利用卷积神经网络的Text-CNN 文本分类
    访问【WRITE-BUG数字空间】_[内附完整源码和文档]TextCNN是利用卷积神经网络对文本进行分类的算法,由YoonKim在“ConvolutionalNeuralNetworksforSentenceClassification”一文(见参考[1])中提出.TextCNN是利用卷积神经网络对文本进行分类的算法,由YoonKim在“Conv......
  • CVPR 2023 | 神经网络超体?新国立LV lab提出全新网络克隆技术
    前言 神经网络开发到100%会发生什么?神经网络的究极形态又是什么?何为网络超体?上述问题的答案可能可以在电影超体(Lucy)中找到。本文转载自机器之心仅用于学术分享,若侵权请联系删除欢迎关注公众号CV技术指南,专注于计算机视觉的技术总结、最新技术跟踪、经典论文解读、CV招聘信息......