日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【Paddle 经验分享】利用PaddleHub 2.x 完成文本分类训练的坑

發布時間:2023/12/4 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Paddle 经验分享】利用PaddleHub 2.x 完成文本分类训练的坑 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

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-gpu==2.0.2.post110 -f https://paddlepaddle.org.cn/whl/stable.html

2.ERNIE 版本選擇

其實我本來想要ERNIE,但最后選擇ERNIE-TINY是因為他更小巧,更適應我的場景, 如果你想應用其他也是可以的,他支持多種語義模型。

3.TextClassificationDataset

因為我是做遷移學習的文本分類所以這里就需要去繼承原有的TextClassificationDataset,我一直覺得是一個簡單活,結果花了我一堆時間,因為這里對數據格式有要求,第一列必須是Label , 而且token是一個Bert+Custom , ?并且一定要做好測試集和訓練集,這里我真的花了5天去找,但最后還是追看TextClassificationDataset 找到答案,主要是文檔太少。

4.traindata

訓練這里細節也挺多的,特別最基本的一個traindata 這里要說,我發現是要補充上learning_rate ,否則有些東西奇奇怪怪。

這是我訓練的一些結果,還是不錯,這個過程我花了5個工作日,真是痛哭流涕。

三、一些工作還是要繼續的

1.? 部署,其實PaddleHub建議用PaddleServing 來部署的,但由于現在模型還在調整,數據在增加,所以臨時方案還是直接用PaddleHub去解釋模型,這里內存在服務器占用大,要改進?

2.? 調優,還有很多方法,還在學習中,希望日后可以填上?

3.? onnx , 還是想轉換為onnx ,但文檔很少,還是得花時間

4. 壓縮,模型壓縮就是技術活了,怎么樣能做到一個精度高,容量小的模型,又是我要考慮的了

學習是一步步的,經過1周多,終于有成果, PaddlePaddle是好東西,但文檔,例子欠缺,我希望利用自己項目的經驗分享給大家。

總結

以上是生活随笔為你收集整理的【Paddle 经验分享】利用PaddleHub 2.x 完成文本分类训练的坑的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。