Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
BaiXuePrincess
Paddle
提交
03889bab
P
Paddle
项目概览
BaiXuePrincess
/
Paddle
与 Fork 源项目一致
Fork自
PaddlePaddle / Paddle
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
Paddle
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
03889bab
编写于
3月 13, 2017
作者:
P
Peng Li
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'develop' into fix-crf-weight-and-coeff-bug
上级
bf838034
b07be67e
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
39 addition
and
62 deletion
+39
-62
cmake/external/protobuf.cmake
cmake/external/protobuf.cmake
+8
-0
python/paddle/trainer/config_parser.py
python/paddle/trainer/config_parser.py
+31
-62
未找到文件。
cmake/external/protobuf.cmake
浏览文件 @
03889bab
...
...
@@ -16,6 +16,14 @@ INCLUDE(ExternalProject)
FIND_PACKAGE
(
Protobuf 3.1
)
IF
(
PROTOBUF_FOUND
)
EXEC_PROGRAM
(
${
PROTOBUF_PROTOC_EXECUTABLE
}
ARGS --version OUTPUT_VARIABLE PROTOBUF_VERSION
)
STRING
(
REGEX MATCH
"[0-9]+.[0-9]+"
PROTOBUF_VERSION
"
${
PROTOBUF_VERSION
}
"
)
IF
(
${
PROTOBUF_VERSION
}
VERSION_LESS
"3.1.0"
)
SET
(
PROTOBUF_FOUND OFF
)
ENDIF
()
ENDIF
(
PROTOBUF_FOUND
)
IF
(
NOT PROTOBUF_FOUND
)
SET
(
PROTOBUF_SOURCES_DIR
${
THIRD_PARTY_PATH
}
/protobuf
)
SET
(
PROTOBUF_INSTALL_DIR
${
THIRD_PARTY_PATH
}
/install/protobuf
)
...
...
python/paddle/trainer/config_parser.py
浏览文件 @
03889bab
...
...
@@ -2301,14 +2301,9 @@ def Generator(
@
config_layer
(
'expand'
)
class
ExpandLayer
(
LayerBase
):
def
__init__
(
self
,
name
,
inputs
,
trans_type
=
'non-seq'
,
device
=
None
,
bias
=
False
):
def
__init__
(
self
,
name
,
inputs
,
trans_type
=
'non-seq'
,
bias
=
False
,
**
xargs
):
super
(
ExpandLayer
,
self
).
__init__
(
name
,
'expand'
,
0
,
inputs
=
inputs
,
device
=
device
)
name
,
'expand'
,
0
,
inputs
=
inputs
,
**
xargs
)
config_assert
(
len
(
self
.
inputs
)
==
2
,
'ExpandLayer takes 2 and only 2 inputs'
)
self
.
config
.
trans_type
=
trans_type
...
...
@@ -2339,11 +2334,10 @@ class MaxLayer(LayerBase):
inputs
,
trans_type
=
'non-seq'
,
active_type
=
'linear'
,
device
=
None
,
bias
=
False
,
output_max_index
=
None
):
super
(
MaxLayer
,
self
).
__init__
(
name
,
'max'
,
0
,
inputs
=
inputs
,
device
=
device
)
output_max_index
=
None
,
**
xargs
):
super
(
MaxLayer
,
self
).
__init__
(
name
,
'max'
,
0
,
inputs
=
inputs
,
**
xargs
)
config_assert
(
len
(
self
.
inputs
)
==
1
,
'MaxLayer must have 1 input'
)
self
.
config
.
trans_type
=
trans_type
self
.
config
.
active_type
=
active_type
...
...
@@ -2390,15 +2384,15 @@ class SequenceLastInstanceLayer(LayerBase):
inputs
,
active_type
=
'linear'
,
trans_type
=
'non-seq'
,
device
=
Non
e
,
bias
=
False
):
bias
=
Fals
e
,
**
xargs
):
super
(
SequenceLastInstanceLayer
,
self
).
__init__
(
name
,
'seqlastins'
,
0
,
inputs
=
inputs
,
device
=
devic
e
,
active_type
=
active_type
)
active_type
=
active_typ
e
,
**
xargs
)
config_assert
(
len
(
inputs
)
==
1
,
'SequenceLastInstanceLayer must have 1 input'
)
self
.
config
.
trans_type
=
trans_type
...
...
@@ -2410,39 +2404,29 @@ class SequenceLastInstanceLayer(LayerBase):
@
config_layer
(
'seqfirstins'
)
class
SequenceFirstInstanceLayer
(
SequenceLastInstanceLayer
):
def
__init__
(
self
,
def
__init__
(
self
,
name
,
inputs
,
active_type
=
'linear'
,
trans_type
=
'non-seq'
,
device
=
Non
e
,
bias
=
False
,
):
bias
=
Fals
e
,
**
xargs
):
super
(
SequenceFirstInstanceLayer
,
self
).
__init__
(
name
,
inputs
=
inputs
,
active_type
=
active_type
,
device
=
device
,
bias
=
bias
)
name
,
inputs
=
inputs
,
active_type
=
active_type
,
bias
=
bias
,
**
xargs
)
self
.
config
.
trans_type
=
trans_type
self
.
config
.
select_first
=
True
@
config_layer
(
'seqconcat'
)
class
SequenceConcatLayer
(
LayerBase
):
def
__init__
(
self
,
name
,
inputs
,
active_type
=
'linear'
,
device
=
None
,
bias
=
False
):
def
__init__
(
self
,
name
,
inputs
,
active_type
=
'linear'
,
bias
=
False
,
**
xargs
):
super
(
SequenceConcatLayer
,
self
).
__init__
(
name
,
'seqconcat'
,
0
,
inputs
=
inputs
,
device
=
devic
e
,
active_type
=
active_type
)
active_type
=
active_typ
e
,
**
xargs
)
config_assert
(
len
(
inputs
)
==
2
,
'SequenceConcatLayer must have 2 inputs'
)
for
input_index
in
xrange
(
len
(
self
.
inputs
)):
...
...
@@ -2458,15 +2442,15 @@ class SequenceReshapeLayer(LayerBase):
size
,
inputs
,
active_type
=
'linear'
,
device
=
Non
e
,
bias
=
False
):
bias
=
Fals
e
,
**
xargs
):
super
(
SequenceReshapeLayer
,
self
).
__init__
(
name
,
'seqreshape'
,
size
,
inputs
=
inputs
,
device
=
devic
e
,
active_type
=
active_type
)
active_type
=
active_typ
e
,
**
xargs
)
config_assert
(
len
(
inputs
)
==
1
,
'SequenceReshapeLayer must have 1 inputs'
)
self
.
set_layer_size
(
size
)
...
...
@@ -2475,19 +2459,9 @@ class SequenceReshapeLayer(LayerBase):
@
config_layer
(
'subseq'
)
class
SubSequenceLayer
(
LayerBase
):
def
__init__
(
self
,
name
,
inputs
,
active_type
=
'linear'
,
device
=
None
,
bias
=
False
):
def
__init__
(
self
,
name
,
inputs
,
active_type
=
'linear'
,
bias
=
False
,
**
xargs
):
super
(
SubSequenceLayer
,
self
).
__init__
(
name
,
'subseq'
,
0
,
inputs
=
inputs
,
device
=
device
,
active_type
=
active_type
)
name
,
'subseq'
,
0
,
inputs
=
inputs
,
active_type
=
active_type
,
**
xargs
)
config_assert
(
len
(
inputs
)
==
3
,
'SubSequenceLayer must have 3 inputs'
)
input_layer0
=
self
.
get_input_layer
(
0
)
size
=
input_layer0
.
size
...
...
@@ -2644,15 +2618,10 @@ class AverageLayer(LayerBase):
average_strategy
=
'average'
,
trans_type
=
'non-seq'
,
active_type
=
'linear'
,
device
=
Non
e
,
bias
=
False
):
bias
=
Fals
e
,
**
xargs
):
super
(
AverageLayer
,
self
).
__init__
(
name
,
'average'
,
0
,
inputs
=
inputs
,
device
=
device
,
active_type
=
active_type
)
name
,
'average'
,
0
,
inputs
=
inputs
,
active_type
=
active_type
,
**
xargs
)
self
.
config
.
average_strategy
=
average_strategy
self
.
config
.
trans_type
=
trans_type
config_assert
(
len
(
inputs
)
==
1
,
'AverageLayer must have 1 input'
)
...
...
@@ -2676,9 +2645,9 @@ class CosSimLayer(LayerBase):
@
config_layer
(
'tensor'
)
class
TensorLayer
(
LayerBase
):
def
__init__
(
self
,
name
,
size
,
inputs
,
device
=
None
,
bias
=
True
,
**
xargs
):
def
__init__
(
self
,
name
,
size
,
inputs
,
bias
=
True
,
**
xargs
):
super
(
TensorLayer
,
self
).
__init__
(
name
,
'tensor'
,
size
,
inputs
=
inputs
,
device
=
device
,
**
xargs
)
name
,
'tensor'
,
size
,
inputs
=
inputs
,
**
xargs
)
config_assert
(
len
(
self
.
inputs
)
==
2
,
'TensorLayer must have 2 inputs'
)
config_assert
(
size
>
0
,
'size must be positive'
)
config_assert
(
inputs
[
1
].
parameter_name
==
None
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录