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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

基于paddlehub的粉圈微博生成

發布時間:2024/1/1 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于paddlehub的粉圈微博生成 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

基于paddlehub的粉圈微博生成

一-前言

靈感來源于中文互聯網中的大量垃圾信息與“僵尸粉”,以及大量的粉絲打榜內容。

在自然語言處理的幫助下,我們是否可以創造出能自主行動,甚至與真人用戶互動的虛擬用戶?人們能否識別ta是人還是ai?會與ta討論、甚至爭斗嗎?

本項目以某明星的粉絲為例,嘗試生成粉圈微博,并在微博上回復他人,觀察人類用戶的回復。

希望能將本項目作為一種嘗試,引起更多人對社交媒體的反思。

  • 輸入:話題,如[XX電視劇],[XX晚安]
  • 輸出:對應話題的粉圈微博

Github地址: https://github.com/sunyuqian1997/ghost-on-web

二-模型簡介

ERNIE-GEN 是面向生成任務的預訓練-微調框架,首次在預訓練階段加入span-by-span 生成任務,讓模型每次能夠生成一個語義完整的片段。在預訓練和微調中通過填充式生成機制和噪聲感知機制來緩解曝光偏差問題。此外, ERNIE-GEN 采樣多片段-多粒度目標文本采樣策略, 增強源文本和目標文本的關聯性,加強了編碼器和解碼器的交互。ernie_gen module是一個具備微調功能的module,可以快速完成特定場景module的制作。

https://www.paddlepaddle.org.cn/hubdetail?name=ernie_gen&en_category=TextGeneration

三-安裝環境

! pip install xlrd ! pip install paddlehub==1.8.0 ! pip install paddle-ernie==0.0.4.dev1

四-準備數據集

我們使用Weibo-spider爬取了約1w條該明星的粉絲微博,并整理成“話題-正文”的格式。

Ernie-gen要求的格式為"序號\t輸入文本\t標簽",因此我們按要求處理.xlsx格式的文件,生成數據與驗證集。

import pandas as pd #xlsx數據格式:標簽/內容 df = pd.read_excel("train(1).xlsx") Keys = df["label"].values Txts = df["text_a"].valueswith open("train.txt", "w") as f:for i, k in enumerate(Keys):t = Txts[i]f.write("{}\t{}\t{}\n".format(i, k, t))df = pd.read_excel("dev.xlsx") Keys = df["label"].values Txts = df["text_a"].valueswith open("dev.txt", "w") as f:for i, k in enumerate(Keys):t = Txts[i]f.write("{}\t{}\t{}\n".format(i, k, t))

五-Finetune并訓練

  • train_path(str): 訓練集路徑。
  • dev_path(str): 驗證集路徑。
  • save_dir(str): 模型保存以及驗證集預測輸出路徑。
  • max_steps(int): 最大訓練步數。
  • noise_prob(float): 噪聲概率,詳見ernie gen論文。
  • save_interval(int): 訓練時的模型保存間隔部署。驗證集將在模型保存完畢后進行預測。
  • max_encode_len(int): 最長編碼長度。
  • max_decode_len(int): 最長解碼長度。
import paddlehub as hub !hub install Versaillesmodule = hub.Module(name="ernie_gen")#finetune參考:https://aistudio.baidu.com/aistudio/projectdetail/1456984?channelType=0&channel=0 result = module.finetune(train_path='train.txt',dev_path='dev.txt',save_dir="Versailles_param",max_steps=1500,noise_prob=0.1,save_interval=500,max_encode_len=200,max_decode_len=200 ) # 將訓練參數打包為hub model module.export(params_path=result['last_save_path'], module_name="Versailles_8", author="lyp")

六- 運行預測

import paddlehub as hubmodule = hub.Module(directory="/home/aistudio/Versailles_8/")test_texts = ['關鍵詞'] results = module.generate(texts=test_texts, use_gpu=True, beam_width=5) for result in results:print(result)

七- 微博回復測試

待補充

參考鏈接

手把手教你使用預訓練模型ernie_gen進行finetune自己想要的場景

用Paddlepaddle做一個凡爾賽文學生成器

Weibo-spider

總結

以上是生活随笔為你收集整理的基于paddlehub的粉圈微博生成的全部內容,希望文章能夠幫你解決所遇到的問題。

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