How to vectorize this loop process
Hi guys I want to ask if anyone knows how to vectorize this code to make it more optimal and faster.
loss = 0
total_steps = 0
for i in range(len(distances)):
for j in range(len(distances)):
for k in range(len(distances)):
if not ((i == j) | (i == k) | ( j==k )):
if similarities[i][j] = similarities[i][k]:
loss += (distances[i][j] - distances[i][k]).clip(min=0)
else:
loss += (distances[i][k] - distances[i][j]).clip(min=0)
total_steps +=1
return (loss/total_steps)
Topic pytorch loss-function python parallel
Category Data Science