@Nikronic  Thanks  for your  help  ,  friend .I  solve  it .
After  reading   your   posts   and  pytorch  doc    about   torch.clone()  ,
clone() → Tensor 
Returns a copy of the self tensor. The copy has the same size and data type as self.

NOTE

Unlike copy_(), this function is recorded in the computation graph. Gradients propagating to the cloned tensor will propagate to the original tensor.

I  changed  my   code  to   this ,  and  it  could   been     backward  well.
 c=a.clone()
c[5] = a[5]+b[3]
loss=  m-c
loss.backward()

emmmmmmmmm      if  there  is   a   function  in  tensor  I  can  do  it  directly    it    will  be  very  convenient .
Like
a[5].operation(torch.add , a[5] , b[3])
a[5].operation(torch.mm , a[5] , b[3])

And  function  `operation`  will   create  a   new   memory  to  a[5]  but  not  change  its  original  memory . So  it  could  be   backward .

Anyway ,  thanks for your  help .