我需要一些keras损失功能的帮助.我一直在使用Tensorflow后端在keras上实现自定义丢失功能.
我已经在numpy中实现了自定义丢失函数,但如果它可以转换为keras损失函数则会很棒.loss函数采用数据帧和一系列用户id.如果user_id不同,则相同user_id的欧几里德距离为正和负.该函数返回数据帧的标量距离的总和.
def custom_loss_numpy (encodings, user_id):
# user_id: a pandas series of users
# encodings: a pandas dataframe of encodings
batch_dist = 0
for i in range(len(user_id)):
first_row = encodings.iloc[i,:].values
first_user = user_id[i]
for j in range(i+1, len(user_id)):
second_user = user_id[j]
second_row = encodings.iloc[j,:].values
# compute distance: if the users are same then Euclidean distance is positive otherwise negative.
if first_user == second_user:
tmp_dist = np.linalg.norm(first_row - second_row)
else:
tmp_dist = -np.linalg.norm(first_row - second_row)
batch_dist += tmp_dist
return batch_dist
Run Code Online (Sandbox Code Playgroud)
我试图实现keras损失功能.我从y_true和y_pred张量对象中提取了numpy数组. …
是否可以从SAX解析器解析XML文件而无需在Java文件中定义标签名称?我想使我的代码通用,以便它可以解析任何类型的XML文件,而不是某些特定的XML文件。