96SEO 2026-02-19 22:17 22
https://gitee.com/dancheng-senior/postgraduate

手势识别在深度学习项目是算是比较简单的。
这里为了给大家会更好的训练。
其中的数据集如下
图像分类是根据图像的语义信息将不同类别图像区分开来是计算机视觉中重要的基本问题。
手势识别属于图像分类中的一个细分类问题。
虽然与NLP的内容其实没有多大的关系但是作为深度学习DNN是一个最为简单的深度学习的算法它是学习后序CNN、RNN、Lstm以及其他算法深度学习算法的基础。
实践环境Python3.7PaddlePaddle1.7.0。
notebook当然我们也可以用本地的pycharm。
不过这里需要提醒大家如果用的是jupyter
notebook作为试验训练在实验中会占用很大的内存jupyter
notebook默认路径在c盘时间久了我们的c盘会内存爆满希望我们将其默认路径修改为其他的路径网上有很多的修改方式这里限于篇幅就不做说明了。
这里需要给大家简要说明paddlepaddle是百度
Studio的一个开源框架类似于我们以前接触到的tensorflow、keras、caffe、pytorch等深度学习的框架。
首先在百度搜索paddle选择你对应的系统(Windows、macOs、Ubuntu、Centos)然后选择你的安装方式(pip、conda、docker、源码编译)最后选择python的版本(Python2、python3)但是一般选择python3。
左后先则版本(GPU、CPU)但是后期我们用到大量的数据集因此我们需要下载GPU版本。
然后将该命令复制到cmd终端点击安装这里用到了百度的镜像可以加快下载安装的速度。
https://mirror.baidu.com/pypi/simple学长电脑是window10系统用的是pip安装方式安装的版本是python3本人的CUDA版本是CUDA10因此选择的示意图以及安装命令如图所示。
这里前提是我们把GPU安装需要的环境配好网上有很多相关的文章这里篇幅有限就不进行展开叙述了。
Linear该数据集是学长自己收集标注的数据集(目前较小)包含0-9共就种数字手势共2073张手势图片。
图片一共有3100100张格式均为RGB格式文件。
在本次实验中我们选择其中的10%作为测试集90%作为训练集。
通过遍历图片根据文件夹名称生成label。
/home/aistudio/data/data23668/Dataset
这里填写自己的数据集的路径windows的默认路径是\要将其路径改为/。
(os.path.exists(./train_data.list)):os.remove(./train_data.list)
(os.path.exists(./test_data.list)):os.remove(./test_data.list)
.DS_Store:continuecharacter_imgs
os.listdir(os.path.join(data_path,
0:f_test.write(os.path.join(data_path,
\n)else:f_train.write(os.path.join(data_path,
按照train_list和test_list批量化读取图片。
train_reader():
用于训练的数据提供器乱序、按批次提供数据test_reader():用于测试的数据提供器
np.array(img).astype(float32)img
data_reader(data_list_path):def
paddle.reader.xmap_readers(data_mapper,
在深度学习中有一个关键的环节就是参数的配置这些参数设置的恰当程度直接影响这我们的模型训练的效果。
因此也有特别的一个岗位就叫调参岗专门用来调参的这里是通过自己积累的经验来调参数没有一定的理论支撑因此这一块是最耗时间的当然也是深度学习的瓶颈。
paddle.batch(readerpaddle.reader.shuffle(readerdata_reader(./train_data.list),
paddle.batch(readerdata_reader(./test_data.list),
MyLeNet(fluid.dygraph.Layer):def
y这里需要说明的是在forward方法中我们在每一步都给出了打印的print()函数就是为了方便大家如果不理解其中的步骤可以在实验中进行打印通过结果来帮助我们进一步理解DNN的每一步网络构成。
为了方便我观察实验中训练的结果学长引入了matplotlib第三方库直观的通过图来观察我们的训练结果具体训练网络代码实现如下
draw_train_process(iters,train_loss,train_accs):titletraining
accsplt.title(title,fontsize24)plt.xlabel(iter,fontsize14)plt.ylabel(loss/acc,fontsize14)plt.plot(iters,train_loss,colorred,labeltraining
loss)plt.plot(iters,train_accs,colorgreen,labeltraining
accs)plt.legend()plt.grid()plt.show()with
fluid.optimizer.SGDOptimizer(learning_rate0.01,parameter_listmodel.parameters())
优化器选用SGD随机梯度下降学习率为0.001.epochs_num
enumerate(train_reader()):images
fluid.dygraph.to_variable(images)label
fluid.dygraph.to_variable(labels)predict
fluid.layers.cross_entropy(predict,
32Iters.append(Iter)all_train_loss.append(loss.numpy()[0])all_train_accs.append(acc.numpy()[0])if
0:print(train_pass:{},batch_id:{},train_loss:{},train_acc:{}.format(pass_num,
acc.numpy()))avg_loss.backward()opt.minimize(avg_loss)model.clear_gradients()fluid.save_dygraph(model.state_dict(),
前面提到强烈建议大家安装gpu版的paddle框架因为就是在训练过程中paddle框架会利用英伟达的GP加速训练的速度会很快的而CPU则特别的慢。
因此CPU的paddle框架只是在学习的时候还可以一旦进行训练根本不行。
可能GPU需要几秒的训练在CPU可能需要十几分钟甚至高达半个小时。
其实不只是paddlepaddle框架建议大家安装GPU版本其他的类似tensorflow、keras、caffe等框架也是建议大家按安装GPU版本。
不过安装起来比较麻烦还需要大家认真安装。
fluid.load_dygraph(MyLeNet)model
MyLeNet()model.load_dict(model_dict)
fluid.dygraph.to_variable(images)label
fluid.dygraph.to_variable(labels)predict
label)accs.append(acc.numpy()[0])avg_acc
配置好了网络并且进行了一定的训练接下来就是对我们训练的模型进行评估具体实现如下
结果还可以这里说明的是刚开始我们的模型训练评估不可能这么好可能存在过拟合或者欠拟合的问题不过更常见的是过拟合这就需要我们调整我们的epoch、batchsize、激活函数的选择以及优化器、学习率等各种参数通过不断的调试、训练最好可以得到不错的结果但是如果还要更好的模型效果其实可以将DNN换为更为合适的CNN神经网络模型效果就会好很多关于CNN的相关知识以及实验我们下篇文章在为大家介绍。
最后就是我们的模型的预测。
https://gitee.com/dancheng-senior/postgraduate
作为专业的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