شما اینجا هستید: خانه » آموزش ux » بهترین روش برای مرتب سازی و نمایش نظرات در یک اجتماع، براساس امتیازهای کاربران چیست؟

بهترین روش برای مرتب سازی و نمایش نظرات در یک اجتماع، براساس امتیازهای کاربران چیست؟

برای بسیاری از طراحان تجربه کاربری، دانستن روش صحیح برای مرتب سازی نظرات کاربران در یک اجتماع یک دغدغه به حساب می آید اینکه چطور بتوانند نظرات را امتیاز بندی کنند که نظرات برتر بالاتر از سایر دیگر نظرها دیده شود و کاربران به بالا بردن این امتیاز راغب شوند
در این مقاله چند روش نامناسب برای امتیاز دهی به کاربران و روش بهتر را بررسی میکنیم البته طراحان برای تحلیل این الگوریتم نیاز به کمی دانش فنی و یا کمک یک عضو فنی دارند.

روش اشتباه اول:

Score = Positive ratings – Negative ratings
فرض کنید کامنتی ۶۰۰ رای مثبت و ۴۰۰ رای منفی دارد و کامنت دیگری ۵۵۰۰ رای مثبت و ۴۵۰۰ رای منفی دارد براساس این روش کامنت اول که ۶۰٪ رای مثبت دارد امتیاز ۲۰۰ و کامنتی که ۵۵٪ رای مثبت دارد امتیاز ۱۰۰۰ می گیرد پس کامنت دوم با آرای مثبت کمتر در بالای کامنت اول قرار می گیرد که این ضعف این الگوریتم می باشد و در حال حاضر Urban Dictionary از این روش استفاده می کند

طراحی امتیازدهی

روش اشتباه دوم:

Score = Average rating = Positive ratings / Total ratings
این روش در صورتی مناسب است که شما فقط رای مثبت داشته باشید اما اگر در سیستم امتیاز دهی رای منفی هم داشته باشید این روش مناسب نیستبرای مثال فرض کنید کامنت اول دارای ۲ رای مثبت و ۰ رای منفی باشد و کامنت دوم ۱۰۰ رای مثبت و ۱ رای منفی، مطابق این روش امتیاز کامنت اول ۱ و امتیاز کامنت دوم ۰.۹۹ است پس کامنت دوم با وجود رای مثبت بیشتر پایین کامنت اول قرار می گیرد
در حال حاضر سایت آمازون از این سیستم امتیاز دهی استفاده می کند

طراحی امتیاز دهی

 

شاید روش های دیگری هم برای سیستم امتیاز دهی وجودد داشته باشد اما بهترین روشی که در حال حاضر وجود دارد استفاده از الگوریتمی مرسوم به Lower bound of Wilson score است
Score = Lower bound of Wilson score confidence interval for a Bernoulli parameter
برای تحلیل این الگوریتم نیاز به کمک یک برنامه نویس یا عضو فنی دارید با این حال ساختار الگوریتم مطابق فرمول پایین است که به زبان های مختلف قابل پیاده سازی است

طراحی امتیاز دهی

پیاده سازی به زبان PHP
روش دیگری که بسیار شبیه به این الگوریتم عمل می کند اما از پیچیدگی پیاده سازی کمتری بر خوردار است الگوریتم پایین است
score = positive/total – sqrt(positive*negative/total)/total

همچنین می توانید برای دیدین مرجع این مقاله به این لینک مراجعه نمایید.