高大上的企业网站欣赏,wordpress的评论,网站功能介绍,上海公司注册代理公司注册CSDN原文链接#xff1a;https://blog.csdn.net/kinfey/article/details/117254781基于项目选择了PaddlePaddle 作为文本分类的基础#xff0c;经过一周多的使用终于有所进展#xff0c;把文本分类的相关工作做了一个简单模型。首先说说PaddlePaddle , 现在做深度学习#… CSDN原文链接https://blog.csdn.net/kinfey/article/details/117254781基于项目选择了PaddlePaddle 作为文本分类的基础经过一周多的使用终于有所进展把文本分类的相关工作做了一个简单模型。首先说说PaddlePaddle , 现在做深度学习更多用户使用的是TensorFlow / PyTorch 但其实还有很多类似的框架PaddlePaddle就是其中之一。有人会说TensorFlow / PyTorch 已经这么优秀了为何还用 PaddlePaddle 呢 我这里也想结合一周多的使用说说 。当初使用 Paddle Paddle框架我看中的是他在自然语言中文领域有很多现成的模型举个例子如情感分类如阅读理解还有自动问答等而且在使用上也是非常简单。我就是奔着这个去的至于其他像内存占用小啊API易用这些用过就知道其实是一个场景相对的工作。如果我们使用自然语言相关我是建议使用但在计算机视觉或者其他的都差不多。PaddlePaddle 在设计初期就兼顾了动态图和静态图所以还是不错的。 PaddlePaddle 有不少预训练的模型基于预训练组建了一个PaddleHub , 可以让你快速调用并完成模型的管理你还可以基于自有的模型做迁移学习更好地服务应用场景。这里做文本分类我就直接用了PaddleHub 自有的 ERNIE 进行迁移学习。就这样我就开始了一段神奇之旅。一.ERNIE在中文领域这是一个非常非常棒的自然语言模型和BERT 比采用了先知Mask机制和随机Mask 的BERT比能更有效对中文常用词进行判断。更多可以参考 https://github.com/PaddlePaddle/ERNIE。二. 具体使用遇到的一些问题PaddlePaddle 在网上搜索的例子都是有问题的因为基于原来的例子基本是按照1.x 版本(https://aistudio.baidu.com/aistudio/projectdetail/186443)改的只能自己碰。1.环境问题我现在的Cuda 环境是11.1 但是无论最新的2.1 还是2.0.2 其实都没有支持的开始我自己也慌了第一步就放弃么但我认真看了下其实2.0.2 是支持11.0 也是可以在11.1的CUDA上跑所以安装环境就变成了pip install paddlepaddle-gpu2.0.2.post110 -f https://paddlepaddle.org.cn/whl/stable.html2.ERNIE 版本选择其实我本来想要ERNIE但最后选择ERNIE-TINY是因为他更小巧更适应我的场景, 如果你想应用其他也是可以的他支持多种语义模型。3.TextClassificationDataset因为我是做迁移学习的文本分类所以这里就需要去继承原有的TextClassificationDataset我一直觉得是一个简单活结果花了我一堆时间因为这里对数据格式有要求第一列必须是Label , 而且token是一个BertCustom , 并且一定要做好测试集和训练集这里我真的花了5天去找但最后还是追看TextClassificationDataset 找到答案主要是文档太少。4.traindata训练这里细节也挺多的特别最基本的一个traindata 这里要说我发现是要补充上learning_rate 否则有些东西奇奇怪怪。这是我训练的一些结果还是不错这个过程我花了5个工作日真是痛哭流涕。三、一些工作还是要继续的1. 部署其实PaddleHub建议用PaddleServing 来部署的但由于现在模型还在调整数据在增加所以临时方案还是直接用PaddleHub去解释模型这里内存在服务器占用大要改进 2. 调优还有很多方法还在学习中希望日后可以填上 3. onnx , 还是想转换为onnx 但文档很少还是得花时间4. 压缩模型压缩就是技术活了怎么样能做到一个精度高容量小的模型又是我要考虑的了学习是一步步的经过1周多终于有成果 PaddlePaddle是好东西但文档例子欠缺我希望利用自己项目的经验分享给大家。