文本训练生成模型之gpt-2-simple

gpt-2-simple:基于gpt_2的一款强大的文本训练生成模型

安装使用教程如下:

github地址:https://github.com/minimaxir/gpt-2-simple
操作系统:ubuntu16.04
tensorflow: gpu版本

第一步,使用anaconda创建虚拟环境,命名为gpt_2:

  1. 退出base环境:
conda deactivate
  1. 创建新环境,命名为gpt_2
conda create -n gpt_test python=3.6
  1. 进入conda环境
conda activate gpt_test

第二步,安装tensorflow-gpu版本

  1. 升级pip
 pip install --upgrade pip
  1. 利用anaconda源安装tensorflow-gpu(目前最好是1.14或1.15版本)
conda install --channel https://conda.anaconda.org/anaconda tensorflow=1.15.0
  1. 升级setuptools和wheel,否则会报错:
pip install --upgrade setuptools wheel
  1. 安装gpt-2-simple
pip install gpt-2-simple
  1. 测试
gpt_2_simple --help

显示:

optional arguments:
  -h, --help        show this help message and exit
  等等

第三步,下载预训练模型

import gpt_2_simple as gpt2
import os
import requests

model_name = "124M"
if not os.path.isdir(os.path.join("models", model_name)):
	print(f"Downloading {model_name} model...")
	gpt2.download_gpt2(model_name=model_name)
	
model_name = "355M"
if not os.path.isdir(os.path.join("models", model_name)):
	print(f"Downloading {model_name} model...")
	gpt2.download_gpt2(model_name=model_name)
	
file_name = "shakespeare.txt"
if not os.path.isfile(file_name):
	url = "https://raw.githubusercontent.com/karpathy/char-rnn/master/data/tinyshakespeare/input.txt"
	data = requests.get(url)
	
	with open(file_name, 'w') as f:
		f.write(data.text)

下载完成后,当前目录下会有一个models文件夹和shakespeare.txt文件,models文件下为预训练模型,shakespeare.txt第四步会用到。

第四步,训练生成测试
命令行输入

CUDA_VISIBLE_DEVICES=gpu_name gpt_2_simple finetune --dataset=shakespeare.txt --model_name=124M --sample_every=10000

说明:

  1. gpu_name处设置你的第几块gpu,gpu信息可用nvidia-smi查看
  2. dataset处设置你的训练语料库
  3. model_name为预训练模型,分为124M和355M
  4. 其余参数可使用gpt_2_simple --help命令查看
  5. 训练好的模型存放在checkpoint文件夹中,默认为run1

第五步,可以使用自己的训练集并设置模型参数进行训练生成了。

你可能感兴趣的:(文本训练生成模型之gpt-2-simple)