راه
۶ کیو· متوسطمتوسطPYTHON۴ ثانیه · ۲۵۶ مگابایت

نزدیک‌ترین واژه‌ها در فضای تعبیه

در یک تعبیه (embedding) هر واژه یک بردار است — سطری از ماتریس EE با VV سطر (واژه) و mm ستون. شباهت دو واژه را با کسینوس زاویه‌ی بردارهایشان می‌سنجند:

sim(a,b)=a⋅b∥a∥ ∥b∥\text{sim}(a, b) = \frac{a \cdot b}{\lVert a\rVert\,\lVert b\rVert}

که فقط به جهت بستگی دارد، نه طول.

تابع most_similar(E, i, k) شباهت کسینوسی واژه‌ی ii را با همه‌ی واژه‌های دیگر حساب می‌کند و kk واژه‌ی شبیه‌تر را برمی‌گرداند: اول شماره‌هایشان (از شبیه‌ترین)، بعد شباهت‌هایشان، پشت‌سرهم. (در ورودی‌ها شباهت‌ها برابر نمی‌شوند.)

نمونه‌ها

ورودی نمونه ۱
[[[0.35, 0.82, 0.33], [-1.3, 0.91, 0.45], [-0.54, 0.58, 0.36], [0.29, 0.03, 0.55], [-0.74, -0.16, -0.48], [0.6, 0.04, -0.29]], 5, 2]
خروجی نمونه ۱
[0.0, 3.0, 0.2318, 0.0378]

برای نوشتن پاسخ و دریافت امتیاز، ابتدا وارد حساب شوید.

ورود