# What would be the best approach to get rid of fake reviews given sentiment analysis vectors?

I manage a relatively large eCommerce site which has several vendors. Each vendor is given a star rating (on a $1-5$ score) review at the end of each transaction with a customers. In addition, each review has to be accompanied with a justification text which I then run sentiment analysis on to get two values: sentiment score $s$ and sentiment magnitude $m$.

$s$ ranges between $-1.0$ (negative) and $1.0$ (positive) and corresponds to the overall emotional leaning of the text. $m$ indicates the overall strength of emotion (both positive and negative) within the given text and ranges $[0, + \infty]$.

Hence, for each vendor $v$, I have a collection of feature vectors $f \in \mathbb{R}^3 = (r, s, m)$.

I am making an assumption that each vendor will have a $2\%$ fake reviews (We think it is a reasonable estimate).

Now, given $v$ and the collection of $f$, how do I get rid of $2\%$ of $f$ so as to make the data as close as possible? I am basically looking to remove extremes to keep the data more cohesive. What would be the best approach here?