ฉันต้องการมีบรรทัดฐานของอาร์เรย์ NumPy หนึ่งชุด โดยเฉพาะอย่างยิ่งฉันกำลังมองหารุ่นที่เทียบเท่าของฟังก์ชั่นนี้
def normalize(v):
norm = np.linalg.norm(v)
if norm == 0:
return v
return v / norm
มีอะไรแบบนั้นในskearn
หรือnumpy
เปล่า?
ฟังก์ชันนี้ทำงานในสถานการณ์ที่v
เป็น 0 เวกเตอร์
raise
ยกเว้น!
x/np.linalg.norm(x)
ไม่ช้ากว่านี้สักเท่าไหร่ (ประมาณ 15-20%) กว่าx/np.sqrt((x**2).sum())
ในจำนวน 1.15.1 บน CPU