Professional Documents
Culture Documents
Estimating The Prevalence of Deception in Online Business Reviews
Estimating The Prevalence of Deception in Online Business Reviews
=
1
N
test
N
test
i=1
yi. (3)
3. PREVALENCE MODELS
In Section 2, we propose a framework to estimate the
prevalence of deception in a group of reviews using only
the output of a noisy deception classier. Central to this
framework is the Prevalence Model, which models the un-
certainty of the deception classier, and ultimately produces
the desired prevalence estimate. In this section, we propose
two competing Prevalence Models, which can be used inter-
changeably in our framework.
3.1 Nave Prevalence Model
The Nave Prevalence Model (nave) estimates the preva-
lence of deception in a corpus of reviews by correcting the
output of a noisy deception classier according to the clas-
siers known performance characteristics.
Formally, for a given deception classier, f, let
f
be the
number of reviews in D
test
for which f makes a positive
prediction, i.e., the number of reviews for which f predicts
deceptive. Also, let the sensitivity (deceptive recall) and
be known precisely. However, imprecise estimates can often
be obtained, especially in cases where it is feasible to perform
gold-standard testing on a small subpopulation.
N
test
!
!
*
y
i
f (x
i
)
!
*
!
*
!
!
Figure 1: The Bayesian Prevalence Model in plate
notation. Shaded nodes represent observed vari-
ables, and arrows denote dependence. For example,
f(xi) is observed, and depends on
, and yi.
specicity (truthful recall) of f be given by and , respec-
tively. Then, we can write the expectation of
f
as:
E[
f
] = E
1
N
test
xD
test
[f(x) = 1]
=
1
N
test
xD
test
E[ [f(x) = 1]]
=
+ (1 )(1
), (4)
where
nave
=
f
(1 )
(1 )
. (5)
Intuitively, Equation 5 corrects the raw classier output,
given by
f
, by subtracting from it the false positive rate,
given by 1 , and dividing the result by the dierence
between the true and false positive rates, given by (1).
Notice that when f is an oracle,
5
i.e., when = = 1, the
Nave Prevalence Model estimate correctly reduces to the
oracle rate given by f, i.e.,
nave
=
f
=
.
3.2 Bayesian Prevalence Model
Unfortunately, the Nave Prevalence Model estimate,
nave
,
is not restricted to the range [0, 1]. Specically, it is negative
when
f
< 1 , and greater than 1 when
f
> . Further-
more, the Nave Prevalence Model makes the unrealistic as-
sumption that the estimates of the classiers sensitivity ()
and specicity (), obtained using the procedure discussed
in Section 4.2 and Appendix B, are exact.
5
An oracle is a classier that does not make mistakes, and
always predicts the true, gold-standard label.
WWW 2012 Session: Fraud and Bias in User Ratings April 1620, 2012, Lyon, France
203
The Bayesian Prevalence Model (bayes) addresses these
limitations by modeling the generative process through which
deception occurs, or, equivalently, the joint probability dis-
tribution of the observed and latent data. In particular,
bayes models the observed classier output, the true (la-
tent) rate of deception (
) and specicity (
). Formally, bayes
assumes that our data was generated according to the fol-
lowing generative story:
Sample the true rate of deception:
Beta()
Sample the classiers true sensitivity:
Beta()
Sample the classiers true specicity:
Beta()
For each review i:
Sample the ground-truth deception label:
yi Bernoulli(
)
Sample the classiers output:
f(xi)
Bernoulli(
) if yi = 1
Bernoulli(1
) if yi = 0
The corresponding graphical model is given in plate nota-
tion in Figure 1. Notice that by placing Beta prior distribu-
tions on
, and
; , , ) = Pr(f(x) | y,
)
Pr(y |
) Pr(
| ) Pr(
| ) Pr(
| ), (6)
Table 1: Reference 5-fold cross-validated perfor-
mance of an SVM deception detection classier in
a balanced dataset of TripAdvisor reviews, given by
Ott et al. [15]. F-score corresponds to the harmonic
mean of precision and recall.
metric performance
Accuracy 89.6%
Deceptive Precision 89.1%
Deceptive Recall 90.3%
Deceptive F-score 89.7%
Truthful Precision 90.1%
Truthful Recall 89.0%
Truthful F-score 89.6%
Baseline Accuracy 50%
where each term is given according to the sampling distri-
butions specied in the generative story in Section 3.2.
A common technique to simplify the joint distribution,
and the sampling process, is to integrate out (collapse) vari-
ables that do not need to be sampled. If we integrate out
, and
), i.e.,
truthful recall rate. While it is not possible to obtain gold-
standard values for these parameters, we can obtain rough
estimates of their values (denoted and , respectively)
through a combination of cross-validation, and evaluation
on a labeled development set. For the Nave Prevalence
WWW 2012 Session: Fraud and Bias in User Ratings April 1620, 2012, Lyon, France
204
Table 2: Corpus statistics for unlabeled test reviews
from six online review communities.
community # hotels # reviews
Expedia 100 4,341
Hotels.com 103 6,792
Orbitz 97 1,777
Priceline 98 4,027
TripAdvisor 104 9,602
Yelp 103 1,537
Mechanical Turk 20 400
Model, the estimates are used directly, and are assumed to
be exact.
For the Bayesian Prevalence Model, we adopt an empiri-
cal Bayesian approach and use the estimates to inform the
corresponding Beta priors via their hyperparameters, and
, respectively. The full procedure is given in Appendix B.
5. DATA
In this section, we briey discuss each of the three kinds of
data used by our framework introduced in Section 2. Corpus
statistics are given in Table 2. Following Ott et al. [15], we
excluded all reviews with fewer than 150 characters, as well
as all non-English reviews.
6
5.1 Training Reviews (D
train
)
Training a supervised deception classier requires labeled
training data. Following Ott et al. [15], we build a balanced
set of 800 training reviews, containing 400 truthful reviews
from six online review communities, and 400 gold-standard
deceptive reviews from Amazon Mechanical Turk.
Deceptive Reviews: In Section 1, we discuss some of the
diculties associated with obtaining gold-standard labels of
deception, including the inaccuracy of human judgements,
and the problems with self-reports of deception. To avoid
these diculties, Ott et al. [15] have recently created 400
gold-standard deceptive reviews using Amazons Mechan-
ical Turk service. In particular, they paid one US dol-
lar ($1) to each of 400 unique Mechanical Turk workers
to write a fake positive (5-star) review for one of the 20
most heavily-reviewed Chicago hotels on TripAdvisor. Each
worker was given a link to the hotels website, and instructed
to write a convincing review from the perspective of a satis-
ed customer. Any submission found to be plagiarized was
rejected. Any submission with fewer than 150 characters
was discarded. To date, this is the only publicly-available
7
gold-standard deceptive opinion spam dataset. As such, we
choose it to be our sole source of labeled deceptive reviews
for training our supervised deception classiers. Note that
these same reviews are used to estimate the resulting clas-
sier sensitivity (deceptive recall), via the cross-validation
procedure given in Appendix B.
Truthful Reviews: Many of the same challenges that make
it dicult to obtain gold-standard deceptive reviews, also
apply to obtaining truthful reviews. Related work [8, 11]
has hypothesized that the relative impact of spam reviews
6
Language was identied by the Language Detection Li-
brary: http://code.google.com/p/language-detection/.
7
http://www.cs.cornell.edu/~myleott/op_spam
Table 3: Signal costs associated with six online re-
view communities, sorted approximately from high-
est signal cost to lowest. Posting cost is High if users
are required to purchase a product before review-
ing it, and Low otherwise. Exposure benet is Low,
Medium, or High based on the number of reviews in
the community (see Table 2).
community posting cost exposure benefit
Orbitz High Low
Priceline High Medium
Expedia High Medium
Hotels.com High Medium
Yelp Low Low
TripAdvisor Low High
is smaller for heavily-reviewed products, and that therefore
spam should be less common among them. For consistency
with our labeled deceptive review data, we simply label as
truthful all positive (5-star) reviews of the 20 previously
chosen Chicago hotels. We then draw a random sample of
size 400, and take that to be our labeled truthful training
data.
5.2 Development Reviews (D
dev
)
By training on deceptive and truthful reviews from the
same 20 hotels, we are eectively controlling our classier
for topic. However, because this training data is not repre-
sentative of Chicago hotel reviews in general, it is important
that we do not use it to estimate the resulting classiers
specicity (truthful recall). Accordingly, as specied in our
framework (Section 2), classier specicity is instead esti-
mated on a separate, labeled truthful development set, which
we draw uniformly at random from the unlabeled reviews in
each review community. For consistency with the sensitivity
estimate, the size of the draw is always 400 reviews.
5.3 Test Reviews (D
test
)
The last data component of our framework is the set of
test reviews, among which to estimate the prevalence of de-
ception. To avoid evaluating reviews that are too dierent
from our training data in either sentiment (due to negative
reviews), or topic (due to reviews of hotels outside Chicago),
we constrain each communitys test set to contain only pos-
itive (5-star) Chicago hotel reviews. This unfortunately dis-
qualies our estimates of each communitys prevalence of
deception from being representative of all hotel reviews. No-
tably, estimates of the prevalence of deception among nega-
tive reviews might be very dierent from our estimates, due
to the distinct motives of posting deceptive positive vs. neg-
ative reviews. We discuss this further in Section 9.
6. SIGNAL THEORY
In terms of economic theory, the role of review commu-
nities is to reduce the inherent information asymmetry [18]
between buyers and sellers in online marketplaces, by provid-
ing buyers with a priori knowledge of the underlying quality
of the products being sold [7]. It follows that if reviews regu-
larly failed to reduce this information asymmetry, or, worse,
convey false information, then they would cease to be of
WWW 2012 Session: Fraud and Bias in User Ratings April 1620, 2012, Lyon, France
205
!"#
!%#
!&#
'#
&#
%#
"#
()*!'+ (,-!'+ ()*!.' (,-!.' ()*!.. (,-!..
(a) Orbitz
!"#
!%#
!&#
'#
&#
%#
"#
()*!'+ (,-!'+ ()*!.' (,-!.' ()*!.. (,-!..
(b) Priceline
!"#
!%#
!&#
'#
&#
%#
"#
()*!'+ (,-!'+ ()*!.' (,-!.' ()*!.. (,-!..
(c) Expedia
!"#
!%#
!&#
'#
&#
%#
"#
()*!'+ (,-!'+ ()*!.' (,-!.' ()*!.. (,-!..
(d) Hotels.com
!"#
!%#
!&#
'#
&#
%#
"#
()*!'+ (,-!'+ ()*!.' (,-!.' ()*!.. (,-!..
(e) Yelp
!"#
!%#
!&#
'#
&#
%#
"#
()*!'+ (,-!'+ ()*!.' (,-!.' ()*!.. (,-!..
(f) TripAdvisor
Figure 2: Graph of Nave estimates of deception prevalence versus time, for six online review communities.
Blue (ad) and red (ef ) graphs correspond to high and low posting cost communities, respectively.
value to the user. Given that review communities are, in
fact, valued by users [3], it seems unlikely that the preva-
lence of deception among them is large.
Nonetheless, there is widespread concern about the preva-
lence of deception in online reviews, rightly or wrongly, and
further, deceptive reviews can be cause for concern even in
small quantities, e.g., if they are concentrated in a single
review community. We propose that by framing reviews as
signalsvoluntary communications that serve to convey in-
formation about the signaler [18], we can reason about the
factors underlying deception by manipulating the distinct
signal costs associated with truthful vs. deceptive reviews.
Specically, we claim that for a positive review to be
posted in a given review community, there must be an in-
curred signal cost, that is increased by:
1. The posting cost for posting the review in a given
review community, i.e., whether users are required to
purchase a product prior to reviewing it (high cost) or
not (low cost). Some sites, for example, allow anyone
to post reviews about any hotel, making the review
cost eectively zero. Other sites, however, require the
purchase of the hotel room before a review can be writ-
ten, raising the cost from zero to the price of the room.
and decreased by:
2. The exposure benet of posting the review in that
review community, i.e., the benet derived from other
users reading the review, which is proportional to the
size of the review communitys audience. Review sites
with more trac have greater exposure benet.
Observe that both the posting cost and the exposure benet
depend entirely on the review community. An overview of
these factors for each of the six review communities is given
in Table 3.
Based on the signal cost function just dened, we propose
two hypotheses:
Hypothesis 1: Review communities that have low sig-
nal costs (low posting requirements, high exposure),
e.g., TripAdvisor and Yelp, will have more deception
than communities with high signal costs, e.g., Orbitz.
Hypothesis 2: Increasing the signal cost will decrease
the prevalence of deception.
7. EXPERIMENTAL SETUP
The framework described in Section 2 is instantiated for
the six review communities introduced in Section 5. In par-
ticular, we rst train our SVM deception classier following
the procedure outlined in Section 4.1. An important step
when training SVM classiers is setting the cost parameter,
C. We set C using a nested 5-fold cross-validation pro-
cedure, and choose the value that gives the best average
balanced accuracy, dened as
1
2
(sensitivity + specicity).
We then estimate the classiers sensitivity, specicity,
and hyperparameters, using the procedure outlined in Sec-
tion 4.2 and Appendix B. Based on those estimates, we then
estimate the prevalence of deception among reviews in our
test set using the Nave and the Bayesian Prevalence Models.
Gibbs sampling for the Bayesian Prevalence Model is per-
formed using Equations 7 and 8 (given in Appendix A) for
70,000 iterations, with a burn-in of 20,000 iterations, and
a sampling lag of 50. We use an uninformative (uniform)
prior for
f(x
i
)
+ X
(i)
f(x
i
)
+ N
(i)
1
, (7)
and,
Pr(yi = 0 | f(x), y
(i)
; , , )
(0 + N
(i)
0
)
1f(x
i
)
+ Y
(i)
f(x
i
)
+ N
(i)
0
, (8)
where,
X
(i)
k
=
j=i
[yj = 1] [f(xj) = k],
Y
(i)
k
=
j=i
[yj = 0] [f(xj) = k],
N
(i)
1
= X
(i)
0
+ X
(i)
1
,
N
(i)
0
= Y
(i)
0
+ Y
(i)
1
.
After sampling, we reconstruct the collapsed variables to
yield the Bayesian Prevalence Model estimate of the preva-
lence of deception:
bayes =
1 + N1
+ N
test
. (9)
Estimates of the classiers sensitivity and specicity are
similarly given by:
bayes =
1
+ X1
+ N1
, (10)
bayes =
1
+ Y0
+ N0
. (11)
B. ESTIMATING CLASSIFIER SENSITIV-
ITY AND SPECIFICITY
We estimate the sensitivity and specicity of our deception
classier via the following procedure:
1. Assume given a labeled training set, D
train
, containing
N
train
reviews of n hotels. Also assume given a devel-
opment set, D
dev
, containing labeled truthful reviews.
2. Split D
train
into n folds, D
train
1
, . . . , D
train
n
, of sizes given
by, N
train
1
, . . . , N
train
n
, respectively, such that D
train
j
con-
tains all (and only) reviews of hotel j. Let D
train
(j)
con-
tain all reviews except those of hotel j.
3. Then, for each hotel j:
(a) Train a classier, fj, from reviews in D
train
(j)
, and
use it to classify reviews in D
train
j
.
(b) Let |TP|j correspond to the observed number of
true positives, i.e.:
|TP|j =
(x,y)D
train
j
[y = 1] [fj(x) = 1]. (12)
(c) Similarly, let |FN|j correspond to the observed
number of false negatives.
4. Calculate the aggregate number of true positives (|TP|)
and false negatives (|FN|), and compute the sensitivity
(deceptive recall) as:
=
|TP|
|TP| + |FN|
. (13)
5. Train a classier using all reviews in D
train
, and use it
to classify reviews in D
dev
.
6. Let the resulting number of true negative and false
positive predictions in D
dev
be given by |TN|
dev
and
|FP|
dev
, respectively, and compute the specicity (truth-
ful recall) as:
=
|TN|
dev
|TN|
dev
+ |FP|
dev
. (14)
For the Bayesian Prevalence Model, we observe that the
posterior distribution of a variable with an uninformative
(uniform) Beta prior, after observing a successes and b fail-
ures, is just Beta(a+1, b+1), i.e., a and b are pseudo counts.
Based on this observation, we set the hyperparameters and
, corresponding to the classiers sensitivity (deceptive re-
call) and specicity (truthful recall), respectively, to:
= |FN| + 1, |TP| + 1 ,
= |FP|
dev
+ 1, |TN|
dev
+ 1 .
WWW 2012 Session: Fraud and Bias in User Ratings April 1620, 2012, Lyon, France
210