diff --git a/research/cv/metric_learn/README_CN.md b/research/cv/metric_learn/README_CN.md
index 1588e0afaa800b983dbf6664caf2eaa0c79df58b..702278b9d5aa7f050bd1932d9e12b18d63300f08 100644
--- a/research/cv/metric_learn/README_CN.md
+++ b/research/cv/metric_learn/README_CN.md
@@ -30,7 +30,7 @@
 
 濡備笅涓篗indSpore浣跨敤Triplet loss鍜孮uadruptlet loss鍦⊿OP鏁版嵁闆嗚皟浼楻esNet50鐨勭ず渚嬶紝Triplet loss鍙弬鑰僛璁烘枃1](https://arxiv.org/abs/1503.03832)锛孮uadruptlet loss鏄疶riplet loss鐨勪竴涓彉浣擄紝鍙弬鑰僛璁烘枃2](https://arxiv.org/abs/1704.01719)銆�
 
-涓轰簡璁粌搴﹂噺瀛︿範妯″瀷锛屾垜浠渶瑕佷竴涓缁忕綉缁滄ā鍨嬩綔涓洪鏋舵ā鍨嬶紙ResNet50锛夊拰搴﹂噺瀛︿範浠d环鍑芥暟鏉ヨ繘琛屼紭鍖栥€傛畫宸缁忕綉缁滐紙ResNet锛夌敱寰蒋鐮旂┒闄綍鍑槑绛変簲浣嶅崕浜烘彁鍑猴紝鏁堟灉闈炲父鏄捐憲銆傛暣涓綉缁滃彧闇€瑕佸涔犺緭鍏ュ拰杈撳嚭鐨勫樊寮傞儴鍒嗭紝绠€鍖栦簡瀛︿範鐩爣鍜岄毦搴︺€俁esNet鐨勭粨鏋勫ぇ骞呮彁楂樹簡绁炵粡缃戠粶璁粌鐨勯€熷害锛屽苟涓斿ぇ澶ф彁楂樹簡妯″瀷鐨勫噯纭巼銆傛鍥犲姝わ紝ResNet鍗佸垎鍙楁杩庯紝缁忓父琚悇涓鍩熺敤浣渂ackbone缃戠粶锛屽湪杩欓€夋嫨ResNet-50缁撴瀯浣滀负搴﹂噺瀛︿範鐨勪富骞茬綉缁溿€傛垜浠鍏堜娇鐢╯oftmax鏉ヨ繘琛岄璁粌锛岀劧鍚庝娇鐢ㄥ叾瀹冪殑浠d环鍑芥暟鏉ヨ繘琛屽井璋冿紝渚嬪锛歵riplet锛宷uadruplet銆備笅闈㈠氨鏄厛鍦⊿OP鏁版嵁闆嗕笂棰勮缁冧釜pretrain妯″瀷锛岀劧鍚庣敤triplet锛宷uadruplet浠d环鍑芥暟鏉ュ井璋冧粠softmax寰楀埌鐨刾retrain妯″瀷锛屼娇鐢�8鍗scend 910璁粌缃戠粶妯″瀷锛屼粎闇€30涓懆鏈燂紝灏卞彲浠ュ湪SOP鏁版嵁闆嗙殑5184绉嶇被鍒笂锛孴OP1鍑嗙‘鐜囪揪鍒颁簡73.9%鍜�74.3%銆�
+涓轰簡璁粌搴﹂噺瀛︿範妯″瀷锛屾垜浠渶瑕佷竴涓缁忕綉缁滄ā鍨嬩綔涓洪鏋舵ā鍨嬶紙ResNet50锛夊拰搴﹂噺瀛︿範浠d环鍑芥暟鏉ヨ繘琛屼紭鍖栥€傛畫宸缁忕綉缁滐紙ResNet锛夌敱寰蒋鐮旂┒闄綍鍑槑绛変簲浣嶅崕浜烘彁鍑猴紝鏁堟灉闈炲父鏄捐憲銆傛暣涓綉缁滃彧闇€瑕佸涔犺緭鍏ュ拰杈撳嚭鐨勫樊寮傞儴鍒嗭紝绠€鍖栦簡瀛︿範鐩爣鍜岄毦搴︺€俁esNet鐨勭粨鏋勫ぇ骞呮彁楂樹簡绁炵粡缃戠粶璁粌鐨勯€熷害锛屽苟涓斿ぇ澶ф彁楂樹簡妯″瀷鐨勫噯纭巼銆傛鍥犲姝わ紝ResNet鍗佸垎鍙楁杩庯紝缁忓父琚悇涓鍩熺敤浣渂ackbone缃戠粶锛屽湪杩欓€夋嫨ResNet-50缁撴瀯浣滀负搴﹂噺瀛︿範鐨勪富骞茬綉缁溿€傛垜浠鍏堝姞杞絉esNet-50-ImageNet[妯″瀷鏉冮噸](https://www.mindspore.cn/resources/hub/details/en?MindSpore/ascend/1.3/resnet50_v1.3_imagenet2012)浣滀负棰勮缁冩ā鍨嬶紝鐒跺悗淇敼鍒嗙被灞備娇鐢╯oftmax鍑芥暟鍦⊿OP鏁版嵁闆嗕笂瀵规ā鍨嬭繘琛屽井璋冿紝鏈€鍚庡埄鐢ㄥ害閲忓涔犳崯澶憋紙渚嬪锛歵riplet锛宷uadruplet锛夎繘涓€姝inetune妯″瀷銆備笅闈㈠氨鏄湪SOP鏁版嵁闆嗕笂鍒嗗埆浣跨敤softmax銆乼riplet鍜宷uadruplet浠d环鍑芥暟寰皟鐨勭粨鏋滐紝浣跨敤8鍗scend 910璁粌缃戠粶妯″瀷锛屼粎闇€30涓懆鏈燂紝灏卞彲浠ュ湪SOP鏁版嵁闆嗙殑5184绉嶇被鍒笂锛孴OP1鍑嗙‘鐜囪揪鍒颁簡73.9%鍜�74.3%銆�
 
 ## 璁烘枃
 
diff --git a/research/cv/metric_learn/src/loss.py b/research/cv/metric_learn/src/loss.py
index a2902ddc27d3f877271bd33dbf8f94b20c0f2a31..93c244a626149ca07e909d2ccfd92109ca10cb8f 100644
--- a/research/cv/metric_learn/src/loss.py
+++ b/research/cv/metric_learn/src/loss.py
@@ -18,10 +18,11 @@ import mindspore
 import mindspore.nn as nn
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import operations as P
 from mindspore.ops import functional as F
 
-class Softmaxloss():
+class Softmaxloss(LossBase):
     """Softmaxloss"""
     def __init__(self, sparse=True, smooth_factor=0.1, num_classes=5184):
         super(Softmaxloss, self).__init__()
@@ -37,7 +38,7 @@ class Softmaxloss():
         loss = self.ce(logit, label)
         return loss
 
-class Tripletloss():
+class Tripletloss(LossBase):
     """Tripletloss"""
     def __init__(self, margin=0.1):
         super(Tripletloss, self).__init__()
@@ -92,7 +93,7 @@ def generate_index(batch_size, samples_each_class):
     res = np.array(res).astype(np.int32)
     return res
 
-class Quadrupletloss():
+class Quadrupletloss(LossBase):
     """Quadrupletloss"""
     def __init__(self, train_batch_size=30, samples_each_class=2, margin=0.1):
         super(Quadrupletloss, self).__init__()