未验证 提交 7dcefc40 编写于 作者: K kangguangli 提交者: GitHub

[remove fluid.layers.cross_entropy] remove unit tests (part 1) (#48726)

* replace layers.cross_entropy with paddle.entropy

* fix args

* fix codestyle
上级 364b0b0a
...@@ -70,7 +70,9 @@ def train_lenet(lenet, reader, optimizer): ...@@ -70,7 +70,9 @@ def train_lenet(lenet, reader, optimizer):
label = paddle.to_tensor(y_data) label = paddle.to_tensor(y_data)
out = lenet(img) out = lenet(img)
loss = fluid.layers.cross_entropy(out, label) loss = paddle.nn.functional.cross_entropy(
out, label, reduction='none', use_softmax=False
)
avg_loss = paddle.mean(loss) avg_loss = paddle.mean(loss)
avg_loss.backward() avg_loss.backward()
......
...@@ -47,7 +47,9 @@ def conv_block(): ...@@ -47,7 +47,9 @@ def conv_block():
act="relu", act="relu",
) )
prediction = fluid.layers.fc(input=conv_pool_2, size=10, act='softmax') prediction = fluid.layers.fc(input=conv_pool_2, size=10, act='softmax')
loss = fluid.layers.cross_entropy(input=prediction, label=label) loss = paddle.nn.functional.cross_entropy(
input=prediction, label=label, reduction='none', use_softmax=False
)
avg_loss = paddle.mean(loss) avg_loss = paddle.mean(loss)
return [img, label], avg_loss return [img, label], avg_loss
......
...@@ -130,7 +130,9 @@ class TestImperativeQat(unittest.TestCase): ...@@ -130,7 +130,9 @@ class TestImperativeQat(unittest.TestCase):
label = fluid.dygraph.to_variable(y_data) label = fluid.dygraph.to_variable(y_data)
out = lenet(img) out = lenet(img)
acc = paddle.static.accuracy(out, label) acc = paddle.static.accuracy(out, label)
loss = fluid.layers.cross_entropy(out, label) loss = paddle.nn.functional.cross_entropy(
out, label, reduction='none', use_softmax=False
)
avg_loss = paddle.mean(loss) avg_loss = paddle.mean(loss)
avg_loss.backward() avg_loss.backward()
adam.minimize(avg_loss) adam.minimize(avg_loss)
......
...@@ -119,7 +119,9 @@ class TestImperativeQatAmp(unittest.TestCase): ...@@ -119,7 +119,9 @@ class TestImperativeQatAmp(unittest.TestCase):
with paddle.amp.auto_cast(): with paddle.amp.auto_cast():
out = model(img) out = model(img)
acc = paddle.static.accuracy(out, label) acc = paddle.static.accuracy(out, label)
loss = fluid.layers.cross_entropy(out, label) loss = paddle.nn.functional.cross_entropy(
out, label, reduction='none', use_softmax=False
)
avg_loss = paddle.mean(loss) avg_loss = paddle.mean(loss)
scaled_loss = scaler.scale(avg_loss) scaled_loss = scaler.scale(avg_loss)
scaled_loss.backward() scaled_loss.backward()
...@@ -129,7 +131,9 @@ class TestImperativeQatAmp(unittest.TestCase): ...@@ -129,7 +131,9 @@ class TestImperativeQatAmp(unittest.TestCase):
else: else:
out = model(img) out = model(img)
acc = paddle.static.accuracy(out, label) acc = paddle.static.accuracy(out, label)
loss = fluid.layers.cross_entropy(out, label) loss = paddle.nn.functional.cross_entropy(
out, label, reduction='none', use_softmax=False
)
avg_loss = paddle.mean(loss) avg_loss = paddle.mean(loss)
avg_loss.backward() avg_loss.backward()
......
...@@ -171,7 +171,9 @@ class TestImperativeQatLSQ(unittest.TestCase): ...@@ -171,7 +171,9 @@ class TestImperativeQatLSQ(unittest.TestCase):
label = fluid.dygraph.to_variable(y_data) label = fluid.dygraph.to_variable(y_data)
out = lenet(img) out = lenet(img)
acc = paddle.static.accuracy(out, label) acc = paddle.static.accuracy(out, label)
loss = fluid.layers.cross_entropy(out, label) loss = paddle.nn.functional.cross_entropy(
out, label, reduction='none', use_softmax=False
)
avg_loss = paddle.mean(loss) avg_loss = paddle.mean(loss)
avg_loss.backward() avg_loss.backward()
......
...@@ -47,7 +47,9 @@ def conv_net(img, label): ...@@ -47,7 +47,9 @@ def conv_net(img, label):
act="relu", act="relu",
) )
prediction = fluid.layers.fc(input=conv_pool_2, size=10, act='softmax') prediction = fluid.layers.fc(input=conv_pool_2, size=10, act='softmax')
loss = fluid.layers.cross_entropy(input=prediction, label=label) loss = paddle.nn.functional.cross_entropy(
input=prediction, label=label, reduction='none', use_softmax=False
)
avg_loss = paddle.mean(loss) avg_loss = paddle.mean(loss)
return avg_loss return avg_loss
......
...@@ -39,7 +39,9 @@ def linear_fc(num): ...@@ -39,7 +39,9 @@ def linear_fc(num):
hidden = data hidden = data
for _ in range(num): for _ in range(num):
hidden = fluid.layers.fc(hidden, size=128, act='relu') hidden = fluid.layers.fc(hidden, size=128, act='relu')
loss = fluid.layers.cross_entropy(input=hidden, label=label) loss = paddle.nn.functional.cross_entropy(
input=hidden, label=label, reduction='none', use_softmax=False
)
loss = paddle.mean(loss) loss = paddle.mean(loss)
return loss return loss
...@@ -87,7 +89,9 @@ def residual_block(num, quant_skip_pattern=None): ...@@ -87,7 +89,9 @@ def residual_block(num, quant_skip_pattern=None):
input=hidden, pool_size=2, pool_type='avg', pool_stride=2 input=hidden, pool_size=2, pool_type='avg', pool_stride=2
) )
fc = fluid.layers.fc(input=pool, size=10) fc = fluid.layers.fc(input=pool, size=10)
loss = fluid.layers.cross_entropy(input=fc, label=label) loss = paddle.nn.functional.cross_entropy(
input=fc, label=label, reduction='none', use_softmax=False
)
loss = paddle.mean(loss) loss = paddle.mean(loss)
return loss return loss
...@@ -115,7 +119,9 @@ def conv_net(img, label, quant_skip_pattern): ...@@ -115,7 +119,9 @@ def conv_net(img, label, quant_skip_pattern):
hidden = fluid.layers.fc(input=conv_pool_2, size=100, act='relu') hidden = fluid.layers.fc(input=conv_pool_2, size=100, act='relu')
with fluid.name_scope(quant_skip_pattern): with fluid.name_scope(quant_skip_pattern):
prediction = fluid.layers.fc(input=hidden, size=10, act='softmax') prediction = fluid.layers.fc(input=hidden, size=10, act='softmax')
loss = fluid.layers.cross_entropy(input=prediction, label=label) loss = paddle.nn.functional.cross_entropy(
input=prediction, label=label, reduction='none', use_softmax=False
)
avg_loss = paddle.mean(loss) avg_loss = paddle.mean(loss)
return avg_loss return avg_loss
...@@ -756,7 +762,9 @@ def quant_dequant_residual_block(num, quant_skip_pattern=None): ...@@ -756,7 +762,9 @@ def quant_dequant_residual_block(num, quant_skip_pattern=None):
) )
pool_add = paddle.nn.functional.relu(paddle.add(x=pool1, y=pool2)) pool_add = paddle.nn.functional.relu(paddle.add(x=pool1, y=pool2))
fc = fluid.layers.fc(input=pool_add, size=10) fc = fluid.layers.fc(input=pool_add, size=10)
loss = fluid.layers.cross_entropy(input=fc, label=label) loss = paddle.nn.functional.cross_entropy(
input=fc, label=label, reduction='none', use_softmax=False
)
loss = paddle.mean(loss) loss = paddle.mean(loss)
return loss return loss
......
...@@ -55,7 +55,9 @@ def conv_net(img, label): ...@@ -55,7 +55,9 @@ def conv_net(img, label):
) )
hidden = fluid.layers.fc(input=conv_pool_2, size=100, act='relu') hidden = fluid.layers.fc(input=conv_pool_2, size=100, act='relu')
prediction = fluid.layers.fc(input=hidden, size=10, act='softmax') prediction = fluid.layers.fc(input=hidden, size=10, act='softmax')
loss = fluid.layers.cross_entropy(input=prediction, label=label) loss = paddle.nn.functional.cross_entropy(
input=prediction, label=label, reduction='none', use_softmax=False
)
avg_loss = paddle.mean(loss) avg_loss = paddle.mean(loss)
return avg_loss return avg_loss
......
...@@ -52,7 +52,9 @@ def conv_net(img, label): ...@@ -52,7 +52,9 @@ def conv_net(img, label):
with fluid.name_scope("skip_quant"): with fluid.name_scope("skip_quant"):
hidden = fluid.layers.fc(input=conv_pool_1, size=100, act='relu') hidden = fluid.layers.fc(input=conv_pool_1, size=100, act='relu')
prediction = fluid.layers.fc(input=hidden, size=10, act='softmax') prediction = fluid.layers.fc(input=hidden, size=10, act='softmax')
loss = fluid.layers.cross_entropy(input=prediction, label=label) loss = paddle.nn.functional.cross_entropy(
input=prediction, label=label, reduction='none', use_softmax=False
)
avg_loss = paddle.mean(loss) avg_loss = paddle.mean(loss)
return avg_loss return avg_loss
......
...@@ -57,7 +57,9 @@ def conv_net(img, label): ...@@ -57,7 +57,9 @@ def conv_net(img, label):
) )
hidden = fluid.layers.fc(input=conv_pool_2, size=100, act='relu') hidden = fluid.layers.fc(input=conv_pool_2, size=100, act='relu')
prediction = fluid.layers.fc(input=hidden, size=10, act='softmax') prediction = fluid.layers.fc(input=hidden, size=10, act='softmax')
loss = fluid.layers.cross_entropy(input=prediction, label=label) loss = paddle.nn.functional.cross_entropy(
input=prediction, label=label, reduction='none', use_softmax=False
)
avg_loss = paddle.mean(loss) avg_loss = paddle.mean(loss)
return avg_loss return avg_loss
......
...@@ -30,7 +30,9 @@ def linear_fc(num): ...@@ -30,7 +30,9 @@ def linear_fc(num):
hidden = data hidden = data
for _ in range(num): for _ in range(num):
hidden = fluid.layers.fc(hidden, size=128, act='relu') hidden = fluid.layers.fc(hidden, size=128, act='relu')
loss = fluid.layers.cross_entropy(input=hidden, label=label) loss = paddle.nn.functional.cross_entropy(
input=hidden, label=label, reduction='none', use_softmax=False
)
loss = paddle.mean(loss) loss = paddle.mean(loss)
return loss return loss
...@@ -58,7 +60,9 @@ def residual_block(num): ...@@ -58,7 +60,9 @@ def residual_block(num):
short = conv_bn_layer(hidden, 16, 1, 1, 0, act=None) short = conv_bn_layer(hidden, 16, 1, 1, 0, act=None)
hidden = paddle.nn.functional.relu(paddle.add(x=conv, y=short)) hidden = paddle.nn.functional.relu(paddle.add(x=conv, y=short))
fc = fluid.layers.fc(input=hidden, size=10) fc = fluid.layers.fc(input=hidden, size=10)
loss = fluid.layers.cross_entropy(input=fc, label=label) loss = paddle.nn.functional.cross_entropy(
input=fc, label=label, reduction='none', use_softmax=False
)
loss = paddle.mean(loss) loss = paddle.mean(loss)
return loss return loss
...@@ -82,7 +86,9 @@ def conv_net(img, label): ...@@ -82,7 +86,9 @@ def conv_net(img, label):
act="relu", act="relu",
) )
prediction = fluid.layers.fc(input=conv_pool_2, size=10, act='softmax') prediction = fluid.layers.fc(input=conv_pool_2, size=10, act='softmax')
loss = fluid.layers.cross_entropy(input=prediction, label=label) loss = paddle.nn.functional.cross_entropy(
input=prediction, label=label, reduction='none', use_softmax=False
)
avg_loss = paddle.mean(loss) avg_loss = paddle.mean(loss)
return avg_loss return avg_loss
......
...@@ -86,7 +86,9 @@ def bow_net( ...@@ -86,7 +86,9 @@ def bow_net(
fc_1 = fluid.layers.fc(input=bow_tanh, size=hid_dim, act="tanh") fc_1 = fluid.layers.fc(input=bow_tanh, size=hid_dim, act="tanh")
fc_2 = fluid.layers.fc(input=fc_1, size=hid_dim2, act="tanh") fc_2 = fluid.layers.fc(input=fc_1, size=hid_dim2, act="tanh")
prediction = fluid.layers.fc(input=[fc_2], size=class_dim, act="softmax") prediction = fluid.layers.fc(input=[fc_2], size=class_dim, act="softmax")
cost = fluid.layers.cross_entropy(input=prediction, label=label) cost = paddle.nn.functional.cross_entropy(
input=prediction, label=label, reduction='none', use_softmax=False
)
avg_cost = paddle.mean(x=cost) avg_cost = paddle.mean(x=cost)
return avg_cost return avg_cost
......
...@@ -150,7 +150,9 @@ def model(): ...@@ -150,7 +150,9 @@ def model():
auc_var, batch_auc_var, auc_states = paddle.static.auc( auc_var, batch_auc_var, auc_states = paddle.static.auc(
input=predict, label=label input=predict, label=label
) )
cost = fluid.layers.cross_entropy(input=predict, label=label) cost = paddle.nn.functional.cross_entropy(
input=predict, label=label, reduction='none', use_softmax=False
)
avg_cost = paddle.mean(x=cost) avg_cost = paddle.mean(x=cost)
return datas, avg_cost, predict, train_file_path return datas, avg_cost, predict, train_file_path
......
...@@ -47,7 +47,9 @@ def convolution_net( ...@@ -47,7 +47,9 @@ def convolution_net(
prediction = fluid.layers.fc( prediction = fluid.layers.fc(
input=[conv_3, conv_4], size=class_dim, act="softmax" input=[conv_3, conv_4], size=class_dim, act="softmax"
) )
cost = fluid.layers.cross_entropy(input=prediction, label=label) cost = paddle.nn.functional.cross_entropy(
input=prediction, label=label, reduction='none', use_softmax=False
)
avg_cost = paddle.mean(cost) avg_cost = paddle.mean(cost)
accuracy = paddle.static.accuracy(input=prediction, label=label) accuracy = paddle.static.accuracy(input=prediction, label=label)
return avg_cost, accuracy, prediction return avg_cost, accuracy, prediction
...@@ -82,7 +84,9 @@ def stacked_lstm_net( ...@@ -82,7 +84,9 @@ def stacked_lstm_net(
prediction = fluid.layers.fc( prediction = fluid.layers.fc(
input=[fc_last, lstm_last], size=class_dim, act='softmax' input=[fc_last, lstm_last], size=class_dim, act='softmax'
) )
cost = fluid.layers.cross_entropy(input=prediction, label=label) cost = paddle.nn.functional.cross_entropy(
input=prediction, label=label, reduction='none', use_softmax=False
)
avg_cost = paddle.mean(cost) avg_cost = paddle.mean(cost)
accuracy = paddle.static.accuracy(input=prediction, label=label) accuracy = paddle.static.accuracy(input=prediction, label=label)
return avg_cost, accuracy, prediction return avg_cost, accuracy, prediction
......
...@@ -119,7 +119,9 @@ def train(net_type, use_cuda, save_dirname, is_local): ...@@ -119,7 +119,9 @@ def train(net_type, use_cuda, save_dirname, is_local):
raise ValueError("%s network is not supported" % net_type) raise ValueError("%s network is not supported" % net_type)
predict = fluid.layers.fc(input=net, size=classdim, act='softmax') predict = fluid.layers.fc(input=net, size=classdim, act='softmax')
cost = fluid.layers.cross_entropy(input=predict, label=label) cost = paddle.nn.functional.cross_entropy(
input=predict, label=label, reduction='none', use_softmax=False
)
avg_cost = paddle.mean(cost) avg_cost = paddle.mean(cost)
acc = paddle.static.accuracy(input=predict, label=label) acc = paddle.static.accuracy(input=predict, label=label)
......
...@@ -30,7 +30,9 @@ BATCH_SIZE = 64 ...@@ -30,7 +30,9 @@ BATCH_SIZE = 64
def loss_net(hidden, label): def loss_net(hidden, label):
prediction = fluid.layers.fc(input=hidden, size=10, act='softmax') prediction = fluid.layers.fc(input=hidden, size=10, act='softmax')
loss = fluid.layers.cross_entropy(input=prediction, label=label) loss = paddle.nn.functional.cross_entropy(
input=prediction, label=label, reduction='none', use_softmax=False
)
avg_loss = paddle.mean(loss) avg_loss = paddle.mean(loss)
acc = paddle.static.accuracy(input=prediction, label=label) acc = paddle.static.accuracy(input=prediction, label=label)
return prediction, avg_loss, acc return prediction, avg_loss, acc
......
...@@ -96,7 +96,12 @@ def train( ...@@ -96,7 +96,12 @@ def train(
predict_word = fluid.layers.fc( predict_word = fluid.layers.fc(
input=hidden1, size=dict_size, act='softmax' input=hidden1, size=dict_size, act='softmax'
) )
cost = fluid.layers.cross_entropy(input=predict_word, label=words[4]) cost = paddle.nn.functional.cross_entropy(
input=predict_word,
label=words[4],
reduction='none',
use_softmax=False,
)
avg_cost = paddle.mean(cost) avg_cost = paddle.mean(cost)
return avg_cost, predict_word return avg_cost, predict_word
......
...@@ -31,7 +31,9 @@ with fluid.program_guard(main_program=prog): ...@@ -31,7 +31,9 @@ with fluid.program_guard(main_program=prog):
label = fluid.layers.data(name='y', shape=[1], dtype='int64') label = fluid.layers.data(name='y', shape=[1], dtype='int64')
cost = fluid.layers.cross_entropy(input=predict, label=label) cost = paddle.nn.functional.cross_entropy(
input=predict, label=label, reduction='none', use_softmax=False
)
avg_cost = paddle.mean(cost) avg_cost = paddle.mean(cost)
prog_clip = prog.clone() prog_clip = prog.clone()
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册