环境准备

1.pytorch 的安装

由情况选择版本安装,安装CPU版本梢简单

# 安装时官方源下载比较慢,要换源
conda install pytorch torchvision cpuonly -c pytorch # 如果cnda装不了 选择pip的方式进行安装
# pip也要指定源
pip install torch==1.5.1+cpu torchvision==0.6.1+cpu -f https://download.pytorch.org/whl/torch_stable.html

Anacoda 换源

onda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
# 设置搜索时显示通道地址
conda config --set show_channel_urls yes

使用后在用户-username-.condarc可进行编辑

如果要建立自己的词表的话,要安装tensorflow,版本要对上,否则可能会出错

# Current stable release for CPU and GPU
pip install transformers==2.1.1

安装成后,执行以下验证安装效果

python -c "import tensorflow as tf;print(tf.reduce_sum(tf.random.normal([1000, 1000])))"
#报错
DLL load failed: 找不到指定模块
Failed to load the native TensorFlow runtime.

安装VC++2019就能解决问题了

  • 64位地址:x64
  • 32位地址:x86

如要在cmd或GitBash中使用conda 命令要配置Anaconda的环境变量,

conda env list #列出已有环境
conda info -e #列出已有环境 conda create -n env_name python=version #创建一个新的虚拟环境
conda activate env_name #激活并进入虚拟环境 conda deactivate #退出虚拟环境 进入标准环境中
conda env remove -n env_name #删除一个已有的虚拟环境 conda install package_name #下载安装包
conda install package_name=version #下载包同时指定版本 conda remove package_name #删除包 conda list #列出已经安装的包
codna search package_name #查找包的版本信息
codna install package_name -n env_name #管理指定虚拟环境的包 pip freeze > d:\superset.txt #导出本虚拟环境
pip install -r d:\superset.txt #导入虚拟环境
conda env export --file d:\superset.yml #导出虚拟环境
conda env create -f d:\superset.yml #导入虚拟环境
conda create -n superset2 --clone superset #虚拟环境备份

来源:Anaconda与windows cmd环境的使用与基本命令

如此在GitBash中可能还是会遇到一个问题,Anaconda虚拟环境激活不了,报错:

CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.

可以执行以下命令后就能激活环境了:

# 激活环境
source activate
# 退出环境
source deactivate

来源:Git Bash使用conda命令activate env

开始训练

刚开始遇到的问题就是编码的问题,我的语料是放在train.json中是UTF8的编码

如果要执行.sh的脚本要使用Gitbash

如果样本的量比较小的时候,可以自己生成词库,减少乱码的可能。

同样遇到了这个问题,是词库导致的,默认使用的是cache/vocab_small.txt,里面13317个单词,包括各种符号,当样本量小的时候,结果就会有很多乱码。可以根据自己的data,生成vocab文件(当然这样的话,单词来源受限于样本了) 步骤如下:

# 生成vocab_user.txt文件
cd cache/
bash make_vocab.sh
# 根据vocab_user.txt内单词个数,调整配置文件config/model_config_small.json的vocab_size字段 # train
python train.py --raw --min_length 4 --tokenizer_path cache/vocab_user.txt
# generate
python ./generate.py --length=50 --nsamples=4 --prefix=你好 --fast_pattern --tokenizer_path cache/vocab_user.txt

来源:生成的文本都是乱码

issue#88

注:自己的机器,特别是只要CPU跑的话,即使语料很小,也要很久,推荐有能力的朋友在Colab上跑比较方便,基本环境都有,训练的速度也会快很多。

Anaconda环境下GPT2-Chinese的基本使用记录的更多相关文章

  1. Anaconda环境下安装库

    使用anaconda环境下使用pycharm后,有些其他库也想安装,但开始在python.exe目录下安装没成功,因为pycharm用的环境已经不是原始的python.exe解释器了.就总结了一些安装 ...

  2. 在Anaconda环境下使用Jupyter Notebook

    !!!Anaconda 和 Jupyter Notebook 在 zsh 环境下不能正常使用! 启动建立的 Anaconda 环境 安装 nb_conda:conda install nb_conda ...

  3. win10下 anaconda 环境下python2和python3版本转换

    在cmd的环境下,输入以下命令安装Python2.7的环境 conda create -n python27 python=2.7 anaconda 上面的代码创建了一个名为python27的pyth ...

  4. win10+anaconda环境下pyqt5+qt tools+eric6.18安装及汉化过程

    最近需要用python编写一个小程序的界面,选择了pyqt5+eric6的配套组合,安装过程中遇到一些坑,特此记录.参考书籍是电子工业出版社的<PyQt5快速开发与实战>. 因为我使用an ...

  5. 在Anaconda环境下安装Tensorflow

    安装Anaconda 下载Anaconda 个人版Individual Edition.如果下载速度慢,可以复制下载链接到迅雷或者在清华大学开源镜像站TUNA中找合适的版本. 注意在安装过程中的&qu ...

  6. 监控Mysql主从环境下Slave延迟状态的操作记录

    在MySQL主从环境下,通常会根据Seconds_Behind_Master的值来判断slave的延迟状态,这么做在大部分情况下尚可接受,但其实是并不够准确的.对于Slave延迟状态的监控,应该考虑多 ...

  7. Win10上Anaconda环境下python3.6安装和使用pyinstaller

    一.安装步骤 1. 电脑是win10,安装的Python3.6 2. 在Scripts文件夹下执行pip install pyinstaller, 安装成功后下载pyinstaller安装包,解压之后 ...

  8. RHEL5.6环境下Oracle10g单主机安装步骤记录

    操作环境:RedHat Enterprise Linux 5.6 安装版本:Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64 ...

  9. 编写第一个Linux环境下程序的编译,下载记录

    跟着韦东山学习Linux: 今天系统系统性的学了代码的编译下载,条记录一下: 一,代码:001_led_on.S,就把下面代码编译后Bin文件下载进2440处理器. /* * 点亮LED1: gpf4 ...

  10. Anaconda3+python3环境下如何创建python2环境(win+Linux下适用,同一个anaconda下py2/3共存)

    本人之前已经在anaconda环境下已经安装了python3的环境,现在因为一些需求,要安装python2环境 1.打开anaconda的anaconda prompt查看当前环境: conda in ...

随机推荐

  1. Jmeter前言

    前言 为什么要撰写这样一个教程呢? 深入学习Jmeter 温故而知新.尽管我已经使用JMeter很长时间,但还有许多元件我并不十分了解,因此,编写教程的过程成为了我的学习过程,通过反复回顾和整理知识, ...

  2. hacker守则

    hacker守则 永远不要相信用户的输入,任何输入数据在证明其无害之前,都是有害的 不在任何场景下谈论hacker 学习时,养成做笔记的好习惯 不谈论所有与hack相关的文章/ 电脑 / 电脑不要说 ...

  3. 《Effective Java》笔记

    2. 创建和销毁对象 1. 静态工厂方法替代构造器 优点: 名称清晰 每次调用不必new对象 可以返回原返回类型任意子类型对象 返回的对象可以随着调用而发生改变 返回的对象所属的类,在编写该静态工厂方 ...

  4. C# 调用C++DLL时释放非托管内存

    方法一 改变非托管内存的分配方法,将其修改成采用COM的内存分配方法CoTaskMemAlloc来分配内存.这样封送拆收器在释放非托管内存时,就能自动调用COM的内存释放方法CoTaskMemFree ...

  5. AXI4协议的物理模型

    AXI4的物理传输模型 1.AXI4的组成部分 首先说一下文章是学习<基于AXI4的IP核互联的设计与验证>莫锦辉的学习笔记.文中大部分的知识都是来源于这篇论文,这里学习以便理解AXI4协 ...

  6. .NET Core WebApi 多语言本地化,动态切换多语言

    .NET Core WebApi 多语言本地化,动态切换多语言 原生的.net core webapi 动态多语言本地话 具体更多详细内容,可以参考官方文档 首先看效果图 整体项目结构图 开始前需要讲 ...

  7. Jetty的模块

    查看模块的列表,执行如下命令: java -jar $JETTY_HOME/start.jar --list-modules 启用模块,比如http模块,执行如下命令: java -jar $JETT ...

  8. 修复HTTP动词篡改导致的认证旁路问题的方法

    本文于2016年4月完成,发布在个人博客网站上. 考虑个人博客因某种原因无法修复,于是在博客园安家,之前发布的文章逐步搬迁过来. 诡异的问题 分析AppScan扫描报告的时候,发现报告里提示" ...

  9. Python生成唯一ID----UUID

    # UUID 生成唯一ID # uuid 是Python内置模块,主要有五种算法. import uuid # uuid1() 基于时间戳 a1 = uuid.uuid1() print('uuid1 ...

  10. IIS 部署到服务器上出现数据库连接失败

    前言 以前遇到过本地运行没有任何问题,部署到服务器上却出现数据库连接失败. 正文 排查顺序: 数据库权限 我们的sql的账号决定了我们的权限,那么要观察下是否我们的账号有该数据库的读写权限,先把权限归 ...