Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
models
提交
fc03d622
M
models
项目概览
PaddlePaddle
/
models
大约 1 年 前同步成功
通知
222
Star
6828
Fork
2962
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
602
列表
看板
标记
里程碑
合并请求
255
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
M
models
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
602
Issue
602
列表
看板
标记
里程碑
合并请求
255
合并请求
255
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
fc03d622
编写于
3月 01, 2019
作者:
S
SunGaofeng
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
modify some words
上级
04918c45
变更
4
显示空白变更内容
内联
并排
Showing
4 changed file
with
25 addition
and
25 deletion
+25
-25
fluid/PaddleCV/video/README.md
fluid/PaddleCV/video/README.md
+1
-1
fluid/PaddleCV/video/dataset/README.md
fluid/PaddleCV/video/dataset/README.md
+21
-21
fluid/PaddleCV/video/models/attention_lstm/README.md
fluid/PaddleCV/video/models/attention_lstm/README.md
+1
-1
fluid/PaddleCV/video/models/stnet/README.md
fluid/PaddleCV/video/models/stnet/README.md
+2
-2
未找到文件。
fluid/PaddleCV/video/README.md
浏览文件 @
fc03d622
...
@@ -7,7 +7,7 @@
...
@@ -7,7 +7,7 @@
在当前模型库运行样例代码需要PadddlePaddle Fluid v.1.2.0或以上的版本。如果你的运行环境中的PaddlePaddle低于此版本,请根据
[
安装文档
](
http://www.paddlepaddle.org/documentation/docs/zh/1.3/beginners_guide/install/index_cn.html
)
中的说明来更新PaddlePaddle。
在当前模型库运行样例代码需要PadddlePaddle Fluid v.1.2.0或以上的版本。如果你的运行环境中的PaddlePaddle低于此版本,请根据
[
安装文档
](
http://www.paddlepaddle.org/documentation/docs/zh/1.3/beginners_guide/install/index_cn.html
)
中的说明来更新PaddlePaddle。
## 简介
## 简介
本教程期望给开发者提供基于PaddlePaddle的便捷、高效的使用深度学习算法解决视频理解、视频编辑、视频生成等一系列模型。目前
我们包含视频分类模型,后续我们
会不断的扩展到其他更多场景。
本教程期望给开发者提供基于PaddlePaddle的便捷、高效的使用深度学习算法解决视频理解、视频编辑、视频生成等一系列模型。目前
包含视频分类模型,后续
会不断的扩展到其他更多场景。
目前视频分类模型包括:
目前视频分类模型包括:
...
...
fluid/PaddleCV/video/dataset/README.md
浏览文件 @
fc03d622
...
@@ -4,11 +4,11 @@
...
@@ -4,11 +4,11 @@
-
[
Kinetics
](
#Kinetics数据集
)
-
[
Kinetics
](
#Kinetics数据集
)
## Youtube-8M数据集
## Youtube-8M数据集
这里
我们用到的是YouTube-8M 2018年更新之后的数据集。使用官方数据集,并将tfrecord文件转化为pickle文件以便paddle使用。Youtube-8M数据集官方提供了frame-level和video-level的特征,我们
这里只需使用到frame-level的特征。
这里
用到的是YouTube-8M 2018年更新之后的数据集。使用官方数据集,并将TFRecord文件转化为pickle文件以便PaddlePaddle使用。Youtube-8M数据集官方提供了frame-level和video-level的特征,
这里只需使用到frame-level的特征。
### 数据下载
### 数据下载
请使用Youtube-8M官方链接分别下载
[
训练集
](
http://us.data.yt8m.org/2/frame/train/index.html
)
和
[
验证集
](
http://us.data.yt8m.org/2/frame/validate/index.html
)
。每个链接里各提供了3844个文件的下载地址,用户也可以使用官方提供的
[
下载脚本
](
https://research.google.com/youtube8m/download.html
)
下载数据。数据下载完成后,将会得到3844个训练数据文件和3844个验证数据文件(
tfr
ecord格式)。
请使用Youtube-8M官方链接分别下载
[
训练集
](
http://us.data.yt8m.org/2/frame/train/index.html
)
和
[
验证集
](
http://us.data.yt8m.org/2/frame/validate/index.html
)
。每个链接里各提供了3844个文件的下载地址,用户也可以使用官方提供的
[
下载脚本
](
https://research.google.com/youtube8m/download.html
)
下载数据。数据下载完成后,将会得到3844个训练数据文件和3844个验证数据文件(
TFR
ecord格式)。
假设存放视频模型代码库的主目录为: Code
\_
Base
\_
Root,进入dataset/youtube8m目录
假设存放视频模型代码库的主目录为: Code
\_
Root,进入dataset/youtube8m目录
cd dataset/youtube8m
cd dataset/youtube8m
...
@@ -22,7 +22,7 @@
...
@@ -22,7 +22,7 @@
### 数据格式转化
### 数据格式转化
为了适用于
Fluid训练,我们离线将下载好的tfr
ecord文件格式转成了pickle格式,转换脚本请使用
[
dataset/youtube8m/tf2pkl.py
](
./youtube8m/tf2pkl.py
)
。
为了适用于
PaddlePaddle训练,需要离线将下载好的TFR
ecord文件格式转成了pickle格式,转换脚本请使用
[
dataset/youtube8m/tf2pkl.py
](
./youtube8m/tf2pkl.py
)
。
在dataset/youtube8m 目录下新建目录pkl/train和pkl/val
在dataset/youtube8m 目录下新建目录pkl/train和pkl/val
...
@@ -33,7 +33,7 @@
...
@@ -33,7 +33,7 @@
mkdir train && mkdir val
mkdir train && mkdir val
转化文件格式(
tfr
ecord -> pkl),进入dataset/youtube8m目录,运行脚本
转化文件格式(
TFR
ecord -> pkl),进入dataset/youtube8m目录,运行脚本
python tf2pkl.py ./tf/train ./pkl/train
python tf2pkl.py ./tf/train ./pkl/train
...
@@ -43,26 +43,26 @@
...
@@ -43,26 +43,26 @@
分别将train和validate数据集转化为pkl文件。tf2pkl.py文件运行时需要两个参数,分别是数据源tf文件存放路径和转化后的pkl文件存放路径。
分别将train和validate数据集转化为pkl文件。tf2pkl.py文件运行时需要两个参数,分别是数据源tf文件存放路径和转化后的pkl文件存放路径。
备注:由于
tfrecord文件的读取需要用到tensorflow,用户要先安装tensorflow,或者在安装有tensorflow的环境中转化完数据,再拷贝到dataset/youtube8m/pkl目录下。为了避免和paddle环境冲突,我们
建议先在其他地方转化完成再将数据拷贝过来。
备注:由于
TFRecord文件的读取需要用到Tensorflow,用户要先安装Tensorflow,或者在安装有Tensorflow的环境中转化完数据,再拷贝到dataset/youtube8m/pkl目录下。为了避免和PaddlePaddle环境冲突,
建议先在其他地方转化完成再将数据拷贝过来。
### 生成文件列表
### 生成文件列表
进入dataset/youtube8m目录
进入dataset/youtube8m目录
ls $Code_
Base_
Root/dataset/youtube8m/pkl/train/* > train.list
ls $Code_Root/dataset/youtube8m/pkl/train/* > train.list
ls $Code_
Base_
Root/dataset/youtube8m/pkl/val/* > val.list
ls $Code_Root/dataset/youtube8m/pkl/val/* > val.list
在dataset/youtube8m目录下将生成两个文件,train.list和val.list,每一行分别保存了一个pkl文件的绝对路径。
在dataset/youtube8m目录下将生成两个文件,train.list和val.list,每一行分别保存了一个pkl文件的绝对路径。
## Kinetics数据集
## Kinetics数据集
Kinetics数据集是DeepMind公开的大规模视频动作识别数据集,有Kinetics400与Kinetics600两个版本。这里
我们
使用Kinetics400数据集,具体的数据预处理过程如下。
Kinetics数据集是DeepMind公开的大规模视频动作识别数据集,有Kinetics400与Kinetics600两个版本。这里使用Kinetics400数据集,具体的数据预处理过程如下。
### mp4视频下载
### mp4视频下载
在Code
\_
Base
\_
Root目录下创建文件夹
在Code
\_
Root目录下创建文件夹
cd $Code_
Base_
Root/dataset && mkdir kinetics
cd $Code_Root/dataset && mkdir kinetics
cd kinetics && mkdir data_k400 && cd data_k400
cd kinetics && mkdir data_k400 && cd data_k400
...
@@ -72,15 +72,15 @@ ActivityNet官方提供了Kinetics的下载工具,具体参考其[官方repo ]
...
@@ -72,15 +72,15 @@ ActivityNet官方提供了Kinetics的下载工具,具体参考其[官方repo ]
### mp4文件预处理
### mp4文件预处理
为提高数据读取速度,
我们
提前将mp4文件解帧并打pickle包,dataloader从视频的pkl文件中读取数据(该方法耗费更多存储空间)。pkl文件里打包的内容为(video-id,[frame1, frame2,...,frameN],label)。
为提高数据读取速度,提前将mp4文件解帧并打pickle包,dataloader从视频的pkl文件中读取数据(该方法耗费更多存储空间)。pkl文件里打包的内容为(video-id,[frame1, frame2,...,frameN],label)。
在 dataset/kinetics/data
\_
k400目录下创建目录train
\_
pkl和val
\_
pkl
在 dataset/kinetics/data
\_
k400目录下创建目录train
\_
pkl和val
\_
pkl
cd $Code_
Base_
Root/dataset/kinetics/data_k400
cd $Code_Root/dataset/kinetics/data_k400
mkdir train_pkl && mkdir val_pkl
mkdir train_pkl && mkdir val_pkl
进入$Code
\_
Base
\_
Root/dataset/kinetics目录,使用video2pkl.py脚本进行数据转化。首先需要下载
[
train
](
https://github.com/activitynet/ActivityNet/tree/master/Crawler/Kinetics/data/kinetics-400_train.csv
)
和
[
validation
](
https://github.com/activitynet/ActivityNet/tree/master/Crawler/Kinetics/data/kinetics-400_val.csv
)
数据集的文件列表。
进入$Code
\_
Root/dataset/kinetics目录,使用video2pkl.py脚本进行数据转化。首先需要下载
[
train
](
https://github.com/activitynet/ActivityNet/tree/master/Crawler/Kinetics/data/kinetics-400_train.csv
)
和
[
validation
](
https://github.com/activitynet/ActivityNet/tree/master/Crawler/Kinetics/data/kinetics-400_val.csv
)
数据集的文件列表。
首先生成预处理需要的数据集标签文件
首先生成预处理需要的数据集标签文件
...
@@ -94,25 +94,25 @@ ActivityNet官方提供了Kinetics的下载工具,具体参考其[官方repo ]
...
@@ -94,25 +94,25 @@ ActivityNet官方提供了Kinetics的下载工具,具体参考其[官方repo ]
对于train数据,
对于train数据,
Source_dir = $Code_
Base_
Root/dataset/kinetics/data_k400/train_mp4
Source_dir = $Code_Root/dataset/kinetics/data_k400/train_mp4
Target_dir = $Code_
Base_
Root/dataset/kinetics/data_k400/train_pkl
Target_dir = $Code_Root/dataset/kinetics/data_k400/train_pkl
对于val数据,
对于val数据,
Source_dir = $Code_
Base_
Root/dataset/kinetics/data_k400/val_mp4
Source_dir = $Code_Root/dataset/kinetics/data_k400/val_mp4
Target_dir = $Code_
Base_
Root/dataset/kinetics/data_k400/val_pkl
Target_dir = $Code_Root/dataset/kinetics/data_k400/val_pkl
这样即可将mp4文件解码并保存为pkl文件。
这样即可将mp4文件解码并保存为pkl文件。
### 生成训练和验证集list
### 生成训练和验证集list
cd $Code_
Base_
Root/dataset/kinetics
cd $Code_Root/dataset/kinetics
ls $Code_
Base_
Root/dataset/kinetics/data_k400/train_pkl /* > train.list
ls $Code_Root/dataset/kinetics/data_k400/train_pkl /* > train.list
ls $Code_
Base_
Root/dataset/kinetics/data_k400/val_pkl /* > val.list
ls $Code_Root/dataset/kinetics/data_k400/val_pkl /* > val.list
即可生成相应的文件列表,train.list和val.list的每一行表示一个pkl文件的绝对路径。
即可生成相应的文件列表,train.list和val.list的每一行表示一个pkl文件的绝对路径。
...
...
fluid/PaddleCV/video/models/attention_lstm/README.md
浏览文件 @
fc03d622
...
@@ -37,7 +37,7 @@ AttentionLSTM模型使用2nd-Youtube-8M数据集,关于数据部分请参考[
...
@@ -37,7 +37,7 @@ AttentionLSTM模型使用2nd-Youtube-8M数据集,关于数据部分请参考[
-
AttentionLSTM模型使用8卡Nvidia Tesla P40来训练的,总的batch size数是1024。
-
AttentionLSTM模型使用8卡Nvidia Tesla P40来训练的,总的batch size数是1024。
### 使用预训练模型做finetune
### 使用预训练模型做finetune
请先将
我们
提供的
[
model
](
https://paddlemodels.bj.bcebos.com/video_classification/attention_lstm_youtube8m.tar.gz
)
下载到本地,并在上述脚本文件中添加
`--resume`
为所保存的预模型存放路径。
请先将提供的
[
model
](
https://paddlemodels.bj.bcebos.com/video_classification/attention_lstm_youtube8m.tar.gz
)
下载到本地,并在上述脚本文件中添加
`--resume`
为所保存的预模型存放路径。
## 模型评估
## 模型评估
可通过如下两种方式进行模型评估:
可通过如下两种方式进行模型评估:
...
...
fluid/PaddleCV/video/models/stnet/README.md
浏览文件 @
fc03d622
...
@@ -50,11 +50,11 @@ StNet的训练数据采用由DeepMind公布的Kinetics-400动作识别数据集
...
@@ -50,11 +50,11 @@ StNet的训练数据采用由DeepMind公布的Kinetics-400动作识别数据集
**备注:**
**备注:**
*
我们在训练stNet模型时使用fluid 1.3 + cudnn5.1。使用cudnn7.0以上版本时batchnorm计算moving mean和moving average会出现异常,此问题还在修复中。建议用户安装paddlep
addle时指定cudnn版本,
*
在训练StNet模型时使用PaddlePaddle Fluid 1.3 + cudnn5.1。使用cudnn7.0以上版本时batchnorm计算moving mean和moving average会出现异常,此问题还在修复中。建议用户安装PaddleP
addle时指定cudnn版本,
pip install paddlepaddle
\_
gpu==1.3.0.post85
pip install paddlepaddle
\_
gpu==1.3.0.post85
或者在
paddp
addle的whl包
[
下载页面
](
http://paddlepaddle.org/documentation/docs/zh/1.3/beginners_guide/install/Tables.html/#permalink-4--whl-release
)
选择下载cuda8.0
\_
cudnn5
\_
avx
\_
mkl对应的whl包安装。
或者在
PaddleP
addle的whl包
[
下载页面
](
http://paddlepaddle.org/documentation/docs/zh/1.3/beginners_guide/install/Tables.html/#permalink-4--whl-release
)
选择下载cuda8.0
\_
cudnn5
\_
avx
\_
mkl对应的whl包安装。
关于安装PaddlePaddle的详细操作请参考
[
安装文档
](
http://www.paddlepaddle.org/documentation/docs/zh/1.3/beginners_guide/install/index_cn.html
)
。
关于安装PaddlePaddle的详细操作请参考
[
安装文档
](
http://www.paddlepaddle.org/documentation/docs/zh/1.3/beginners_guide/install/index_cn.html
)
。
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录