强化学习
Part 1:基本概念
概念
强化学习
强化学习关注与智能体(agent)如何与环境交互中不断学习以完成特定的目标;
与有监督学习相比,不需要告诉智能体数据以及对应的标签,学习相应的模型,而是需要智能体在环境中一次次学习(哪些数据对应哪些标签),从而学习规律知道策略;
强化学习是希望智能体在环境中根据当前状态,采取行动,转移到下一个状态,获得回报。不断进行这样的过程,从而学习到一个策略(状态到动作的映射,即当前状态下,采取什么样的行动,能使得我最终获得的回报最大【不仅只是当前状态的而回报,一个策略的长期影响才是至关重要的】)
交互对象
智能体(agent):可以感知外界环境的状态(state)和反馈的奖励(reward),并进行学习和决策.智能体的决策功能是指根据外界环境的状态来做出不同的动作(action),而学习功能是指根据外界环境的奖励来调整策略(policy);
环境(environment):是智能体外部的所有事物,并受智能体动作的影响而改变其状态,并反馈给智能体相应的奖励。
基本要素
状态(state):对环境的描述,sss
动作(action):对智能体 ...
变分自编码器(Variational AutoEncoder)
TL;DR
最近,AIGC是极火热的讨论话题,而文生图可以说是AIGC的代表性工作。目前,效果最好的文生图模型是基于扩散模型的,当进一步深入扩散模型时,又对他的损失函数产生了很大的疑问。通过查找各方资料,才发现扩散模型与变分自编码器在损失定义上同出一门,理解了变分自编码器的损失自然也能理解扩散模型的损失。
另外,变分自编码器已经作为基础模型,集成到许多后续工作中,例如:
Stable Diffusion用变分自编码器获取图片的潜在表征(latents)进行前向扩散,避免直接在像素空间中前向扩散,极大地提升了计算效率;
作为变分自编码器的拓展性工作,向量化离散变分自编码器(Vector Quantised-Variational AutoEncoder, VQ-VAE)已经被广泛用作图像分词器,如BEIT、DALL·E等。
可以说,变分自编码器是过不去的一个坎,极有必要对变分自编码器做细致的了解。
但是,查阅已有资料发现,有关变分自编码器的教程总是伴随复杂的公式推导,而实现的代码又难以与公式严格对应。另外,理论部分还涉及变分推断、ELBO、重参数等等多种技巧,让人摸不着头脑。本文将从 ...
transformers.generation.GenerationMixin
当谈到文本生成时,Transformer API是目前最受欢迎的NLP工具之一。 它提供了各种解码策略和参数,使用户可以自定义生成的文本。在本文中,我们将学习如何使用Transformer API生成文本。
基本使用
在使用Transformer API之前,需要安装PyTorch和Transformers包:
1$ pip install torch transformers
完成安装后,可以使用以下代码导入所需的模块:
1from transformers import pipeline, set_seed
其中pipeline模块提供了生成文本所需的所有功能,而set_seed允许我们设置随机种子以获得可重复的结果。
以下是一段文本生成的例子:
12345678910# 设置随机种子以获得可重复的结果set_seed(42)# 加载文本生成器pipelinegenerator = pipeline('text-generation', model='gpt2')# 生成文本text = generator('The quick b ...
升级深度学习开发环境全攻略
前言
配置过深度学习开发环境的同学都知道,这是一项繁琐工作,稍不注意就会发生问题。首先,要熟悉硬件配置以选择对应的软件版本。例如,RTX3090刚推出时,TensorFlow只支持CUDA10,但该显卡必须安装CUDA11,所以想要在RTX3090上使用TensorFlow,需安装nightly版本。其次,即使软件与硬件契合,在安装时也要考虑软件间的依赖问题。以PyTorch的torch-1.13.0-cp37-cp37m-manylinux1_x86_64.whl为例,该版本要求python为3.7.x、系统为32位或64位的linux,还要求计算机已安装对应版本的CUDA。
配置环境也是一项机械的工作,我相信每位同学安装环境前,都会在百度搜索框搜索“深度学习环境安装”,根据网上整理的博客、攻略,查找各软件的安装指令,磕磕碰碰地进行环境配置。有时候装的过程中才发现,资料内容是关于旧版本的,而新版本安装方式早已更新,想必此时各位内心有一万头X泥马奔腾而过……
所以,为了避免在配置环境上花费太多时间,我每次配置完环境后,很长一段时间不会更新(系统安装后自动更新就已被关闭)。但是随着技术 ...
2022全球人工智能技术创新大赛(GAIIC2022):商品标题实体识别(二等奖)
本方案由大华DahuaKG团队提供,在本次竞赛中本方案获二等奖。DahuaKG团队由来自浙江大华技术股份有限公司大数据研究院知识图谱团队的成员组成,大华知识图谱团队专注于行业知识图谱构建和自然语言处理等技术的研究与应用,并致力于相关技术在语义检索、信息提取、文本理解、图挖掘、智能交互等任务上完成产业落地,为大华数据智能解决方案提供NLP和知识图谱相关领域的算法支撑。
整体上,我们基于预训练语言模型NeZha构建商品标题实体识别模型,通过继续预训练加微调的训练范式学习模型参数,并有效结合数据增强、损失函数优化、对抗训练等手段逐步提升模型性能。该方案简单有效,复现流程不超过36小时,线上推断1万条样本仅需254秒(NVIDIA T4,单卡)。
赛题介绍
赛题链接:https://www.heywhale.com/home/competition/620b34ed28270b0017b823ad
本赛题要求选手用模型抽取出商品标题文本中的关键信息,是典型的命名实体识别任务。要求准确抽取商品标题中的相关实体,有助于提升检索、推荐等业务场景下的用户体验和平台效率,是电商平台一项核心的基础任务。
...
中国法律智能技术评测(CAIL2021):信息抽取(Rank2)
目录
目录
赛题介绍
赛题背景
赛题描述
赛题数据
提交要求
评估标准
数据分析
数据处理
数据划分
数据增强
模型训练
模型结构
训练策略
不要停止预训练
信息抽取任务微调
模型集成
后处理
消融对比
大赛结果
不足与展望
引用
附录
本项目是对2021年中国法律智能技术评测的信息抽取赛题第二名方案的总结复盘,本次比赛使用了新的模型和训练方法,出乎意料地取得了较好的结果,值得回顾一下。在调参、模型集成等方面尚有较大进步空间,再接再厉。
赛题介绍
赛题背景
信息抽取是自然语言处理中一类基础任务,涉及命名实体识别与关联抽取等多类子任务。在法律文本中主要体现为对于案件关键信息如嫌疑人、涉案物品、犯罪事实等关键信息的精确抽取。信息抽取对于实现“智慧司法”建设具有现实意义,其结果将辅助司法办案人员快速阅卷、厘清案件信息,也是知识图谱构建、相似案例推荐、自动量刑建议等一系列任务的重要基础。该任务需要参赛队伍从包含案件情节描述的陈述文本中识别出关键信息实体,并按照规定格式返回结果进行评测。
赛题描述
赛题数据
本次任务所使用的数据集主要来自于网络公开的若干罪名法律 ...
全球人工智能技术创新大赛【赛道一】:医学影像报告异常检测(三等奖)
目录
目录
赛题介绍
赛题背景
赛题描述
赛题数据
提交要求
评估标准
赛题思路
数据处理
探索分析
数据划分
样本重加权
数据增强
模型训练
模型结构
预训练
微调
模型集成
方案优化
大赛结果
Top方案
不足与展望
参考文献
附录
半监督学习
Blending
赛题介绍
赛题背景
影像科医生在工作时会观察医学影像(如CT、核磁共振影像),并对其作出描述,这些描述中包含了大量医学信息,对医疗AI具有重要意义。本任务需要参赛队伍根据医生对CT的影像描述文本数据,判断身体若干目标区域是否有异常以及异常的类型。初赛阶段仅需判断各区域是否有异常,复赛阶段除了判断有异常的区域外,还需判断异常的类型。判断的结果按照指定评价指标进行评测和排名,得分最优者获胜。
赛题链接:Link
赛题描述
赛题数据
大赛分为初赛A/B榜、复赛A/B榜以及决赛答辩,各时间点公布的数据文件及时间如下
数据文件
发布时间
备注
track1_round1_train_20210222.csv
2021.03.02(初赛A榜)
仅包含区域标注
track1_ ...
grep, sed, awk三剑客
grep: Globally search a Regular Expression and Print
基本用法
参数说明
sed: Stream Editor
基本用法
参数说明
编辑命令
实例
awk: Alfred Aho, Peter Weinberger, Brian Kernighan
基本用法
参数说明
常用内置变量
语法
运算符
BEGIN/END
分支、循环、数组
分支: if
循环: do while, for
数组
常用字符串函数
grep: Globally search a Regular Expression and Print
强大的文本搜索工具,它能使用特定模式匹配(包括正则表达式)查找文本,并默认输出匹配行到STDOUT。
基本用法
1$ grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>][-d<进行动作>][-e<范本样式>][-f<范本文件>][--help][范本样式][文 ...
Shell Programming
目录
目录
Shell基础
常用指令
父子shell
环境变量
输入/输出重定向
执行时重定向
输入重定向
输出重定向
错误重定向
脚本中重定向
输入/输出
自定义文件描述符
重定向到已有文件描述符
管道
变量
字符串
变量参数
数组参数
参数传递
位置参数
命名参数
用户输入
基本输入: read
文件输入: cat | read
脚本退出: exit
命令替换: ( command )
运算和测试
数学运算
$( expr expression )
$[ expression ]
let expression, $(( expression ))
内建计算器bc
测试命令: test expression, [ expression ]
数值测试: -eq, -ne, -gt, -ge, -lt, -le
字符测试: =, !=, <, >, -n -z
文件测试: -e, -d, -f, …
复合条件测试: !, -o / ||, -a / &&
结构化命令
分支
if-then-el ...
经典机器学习算法推导汇总
目录
目录
前言
MLE/MAP
最大似然估计(MLE)
最大后验概率估计(MAP)
线性回归/逻辑斯蒂回归
线性回归
逻辑斯蒂回归(LR)
朴素贝叶斯
PCA/LDA
PCA
计算步骤
证明
LDA
计算步骤
证明
EM/GMM
EM算法
GMM模型
SVM
KKT条件
核技巧
分类问题
线性可分
线性不可分
回归问题
求解优化问题
聚类
距离度量
KMeans
Spectral
决策树
ID3
C4.5
CART
RF
前言
本文只做复习使用,只给出关键算法描述和证明。
MLE/MAP
给定NNN个样本对{(X(i),y(i)),i=1,⋯ ,N}\{(X^{(i)}, y^{(i)}), i = 1, \cdots, N\}{(X(i),y(i)),i=1,⋯,N},其中y∈{Ck,k=1,⋯ ,K}y \in \{C_k, k = 1, \cdots, K\}y∈{Ck,k=1,⋯,K},要求估计参数模型P(X∣θ)P(X | \theta)P(X∣θ)的参数θ\thetaθ,使之最能描述给定数据分布。
最大似 ...