提交 86da02ba 编写于 作者: K kinghuin 提交者: wuzewu

fix paddle1.6 unpad and log handler (#243)

* fix unpad
上级 ff5907aa
...@@ -261,6 +261,10 @@ class BasicTask(object): ...@@ -261,6 +261,10 @@ class BasicTask(object):
var = self.env.main_program.global_block().vars[var_name] var = self.env.main_program.global_block().vars[var_name]
var.persistable = True var.persistable = True
# to avoid to print logger two times in result of the logger usage of paddle-fluid
for handler in logging.root.handlers[:]:
logging.root.removeHandler(handler)
if self.is_train_phase: if self.is_train_phase:
with fluid.program_guard(self.env.main_program, with fluid.program_guard(self.env.main_program,
self._base_startup_program): self._base_startup_program):
...@@ -287,10 +291,6 @@ class BasicTask(object): ...@@ -287,10 +291,6 @@ class BasicTask(object):
self.exe.run(self.env.startup_program) self.exe.run(self.env.startup_program)
# to avoid to print logger two times in result of the logger usage of paddle-fluid
for handler in logging.root.handlers[:]:
logging.root.removeHandler(handler)
self._build_env_end_event() self._build_env_end_event()
@property @property
......
...@@ -19,9 +19,12 @@ from __future__ import print_function ...@@ -19,9 +19,12 @@ from __future__ import print_function
import time import time
from collections import OrderedDict from collections import OrderedDict
import numpy as np import numpy as np
import paddle
import paddle.fluid as fluid import paddle.fluid as fluid
from paddlehub.finetune.evaluate import chunk_eval, calculate_f1 from paddlehub.finetune.evaluate import chunk_eval, calculate_f1
from paddlehub.common.utils import version_compare
from .basic_task import BasicTask from .basic_task import BasicTask
...@@ -61,6 +64,10 @@ class SequenceLabelTask(BasicTask): ...@@ -61,6 +64,10 @@ class SequenceLabelTask(BasicTask):
return True return True
def _build_net(self): def _build_net(self):
if version_compare(paddle.__version__, "1.6"):
self.seq_len = fluid.layers.data(
name="seq_len", shape=[-1], dtype='int64')
else:
self.seq_len = fluid.layers.data( self.seq_len = fluid.layers.data(
name="seq_len", shape=[1], dtype='int64') name="seq_len", shape=[1], dtype='int64')
seq_len = fluid.layers.assign(self.seq_len) seq_len = fluid.layers.assign(self.seq_len)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册