Quantifying and Reducing Controversy in Social Media

Quantifying and Reducing Controversy in Social Media


  1. Quantifying and Reducing Controversy in Social Media Gianmarco De Francisci

 with Kiran Garimella, Aristides Gionis, Michael Mathioudakis
  2. Controversy: from Latin contra (against) vertere (turn) “turned against, disputed”

  3. None
  4. None
  5. None
  6. There are two sides to every story

  7. The gap grows

  8. The gap grows

  9. Goal Detect and quantify controversies automatically Use social media data

    as sensors Design methods to reduce controversy By exposing people to contrarian points of view
  10. Quantifying Controversy In the wild Not necessarily political

  11. Black/Blue or White/Gold?

  12. Quantifying Controversy In the wild Not necessarily political No domain

    knowledge Language independent Allows comparison
  13. Problem Formulation Graph-based unsupervised formulation Conversation graph for a topic

    (posts, endorsements) Find partition of graph (represents 2 sides) Measure distance between partitions (random walks)
  14. Example

  15. Example #beefban #марш #sxsw #germanwings

  16. Example #beefban #марш #sxsw #germanwings Controversial Non controversial

  17. Pipeline • Retweets • Follow • Mentions • Content •

    METIS • Spectral • Label 
 propagation • Random walk • Edge betweenness • 2d embedding • Sentiment variance
  18. Single #hashtag is not sufficient Given a #seed, find top-k

    most similar #hashtags Similarity based on co-occurrence [Feng2015], corrects for popularity
 Topic as a means to express their opinion. Using a single hashtag may thus miss part of th relevant posts. To address this limitation, we extend the definition of topic to be more encompassin Given a seed hashtag, we define a topic as a set of related hashtags, which co-occur wit the seed hashtag. To find related hashtags, we employ (and improve upon) a recen clustering algorithm tailored for the purpose [Feng et al. 2015]. Feng et al. [2015] develop a simple measure to compute the similarity between tw hashtags, which relies on co-occurring words and hashtags. The authors then use th similarity measure to find closely related hashtags and define clusters. However, th simple approach presents one drawback, in that very popular hashtags such as #ff o #follow co-occur with a large number of hashtags. Hence, directly applying the origina approach results in extremely noisy clusters. Since the quality of the topic affect critically the entire pipeline, we want to avert this issue and ensure minimal noise introduced in the expanded set of hashtags. Therefore, we improve the basic approach by taking into account and normalizin for the popularity of the hashtags. Specifically, we compute the document frequenc of all hashtags on a random 1% sample of the Twitter stream, and normalize th original similarity score between two hashtags by the inverse document frequency. Th similarity score is formally defined as sim ( h s , h t) = 1 1 + log( df ( h t)) ( ↵ cos( W s , W t) + (1 ↵ ) cos( H s , H t)) , (1 where h s is the seed tag, h t is the candidate tag, W x and H x are the sets of word and hashtags that co-occur with hashtag h x , respectively, cos is the cosine similarit between two vectors, df is the document frequency of a tag, and ↵ is a parameter tha
  19. Example A:7 (a) (b) Fig. 2: Sets of related hashtags

    for the topics (a) #baltimoreriots and (b) #netanyahuspeech. 4.2. Data aspects For each topic, we retrieve all tweets that contain one of its hashtags and that are generated during the observation window. We also ensure that the selected hashtags #baltimoreriots #netanyahuspeech
  20. Endorsement Graph Topic specific Vertex = user Edge = endorsement

    for the topic At least τ retweets
  21. A:9 (a) (b) (c) (d) (e) (f) (g) (h) Fig.

    3: Sample conversation graphs with retweet (top) and follow (bottom) aspects (visualized using the force-directed layout algorithm in Gephi). The left side is controversial, (a,e) #beefban, (b,f) #russia march, while the right side is non-controversial, (c,g) #sxsw, (d,h) #germanwings.
  22. RWC Rationale Random Walk Controversy score Zaller's RAS model (Receive,

    Accept, Sample) 
 "The Nature and Origins of Mass Opinion" Response Axiom: "Individuals form opinions by averaging across the considerations that are immediately salient or accessible to them" Authoritative (influential) users with high degree set opinions Measure likelihood a user to be exposed to opinions from influential users on either side
  23. Random Walk

  24. Random Walk

  25. Random Walk X Y

  26. Random Walk X Y

  27. RWC Definition we select one partition at random (each with

    walk that starts from a random vertex in tha visits any high-degree vertex (from either sid dom Walk Controversy (RWC) measure as fo ending in partition X and one ending in par obabilities of two events: (i) both random wa in and (ii) both random walks started in a pa The measure is quantified as RWC = P XX P Y Y P Y X P XY , X, Y } is the conditional probability AB = Pr [ start in partition A | end in partition probabilities have the following desirable prop Consider two random walks, one ending in partition X and one ending in partition Y , RWC is the difference of the probabilities of two events: (i) both random walks started from the partition they ended in and (ii) both random walks started in a partition other than the one they ended in (a) (b) Partitions obtained for (a) #beefban, (b) #russia march by using the hybrid graph ch. The partitions are more noisy than those in Figures 3(a,b). Subsequently, we select one partition at random (each with probability 0 er a random walk that starts from a random vertex in that partition. Th nates when it visits any high-degree vertex (from either side). define the Random Walk Controversy (RWC) measure as follows. “Consi m walks, one ending in partition X and one ending in partition Y , RWC nce of the probabilities of two events: (i) both random walks started fr on they ended in and (ii) both random walks started in a partition other t ey ended in.” The measure is quantified as RWC = P XX P Y Y P Y X P XY , P AB , A, B 2 { X, Y } is the conditional probability P AB = Pr [ start in partition A | end in partition B ] . orementioned probabilities have the following desirable properties: (i) they d by the size of each partition, as the random walk starts with equal pro ach partition, and (ii) they are not skewed by the total degree of vertices
  28. RWC Properties Probabilities are conditional on ending in either partition

    Random walks end on either side with equal probability Not skewed by size of each partition Not skewed by total degree of vertices in each partition Close to 1 when probability of crossing sides low (high controversy) Close to 0 when probability of crossing comparable to that of staying (low controversy)
  29. RWC Computation Monte Carlo sampling (slow) Efficient implementation as random

    walk with restart (RWR) As a byproduct, possible to compute polarization score for each user Expected hitting time for a user to an influencer
  30. Datasets A:5 Table I: Datasets statistics: hashtag, sizes of the

    follow and retweet graphs, and description of the event. The top group represent controversial topics, while the bottom one represent non-controversial ones. Hashtag # Tweets Retweet graph Follow graph Description and collection period (2015) |V | |E| |V | |E| #beefban 422 908 21 590 30 180 9525 204 332 Government of India bans beef, Mar 2–5 #nemtsov 371 732 43 114 77 330 17 717 155 904 Death of Boris Nemtsov, Feb 28–Mar 2 #netanyahuspeech 1 196 215 122 884 280 375 49 081 2 009 277 Netanyahu’s speech at U.S. Congress, Mar 3–5 #russia march 317 885 10 883 17 662 4844 42 553 Protests after death of Boris Nemtsov (“march”), Mar 1–2 #indiasdaughter 776 109 68 608 144 935 38 302 131 566 Controversial Indian documentary, Mar 1–5 #baltimoreriots 1 989 360 289 483 432 621 214 552 690 944 Riots in Baltimore after police kills a black man, Apr 28–30 #indiana 972 585 43 252 74 214 21 909 880 814 Indiana pizzeria refuses to cater gay wedding, Apr 2–5 #ukraine 514 074 50 191 91 764 31 225 286 603 Ukraine conflict, Feb 27–Mar 2 #gunsense 1 022 541 30 096 58 514 17 335 841 466 Gun violence in U.S., Jun 1–30 #leadersdebate 2 099 478 54 102 136 290 22 498 1 211 956 Debate during the U.K. national elections, May 3 #sxsw 343 652 9304 11 003 4558 91 356 SXSW conference, Mar 13–22 #1dfamheretostay 501 960 15 292 26 819 3151 20 275 Last OneDirection concert, Mar 27–29 #germanwings 907 510 29 763 39 075 2111 7329 Germanwings flight crash, Mar 24–26 #mothersday 1 798 018 155 599 176 915 2225 14 160 Mother’s day, May 8 #nepal 1 297 995 40 579 57 544 4242 42 833 Nepal earthquake, Apr 26–29 #ultralive 364 236 9261 15 544 2113 16 070 Ultra Music Festival, Mar 18–20 #FF 408 326 5401 7646 3899 63 672 Follow Friday, Jun 19 #jurassicworld 724 782 26 407 32 515 4395 31 802 Jurassic World movie, Jun 12-15 #wcw 156 243 10 674 11 809 3264 23 414 Women crush Wednesdays, Jun 17 #nationalkissingday 165 172 4638 4816 790 5927 National kissing day, Jun 19 separated the two partitions are. We test several such measures, including ones based
  31. Controversy Detection

  32. Controversy Over Time

  33. A:19 (a) (b) Fig. 10: RWC scores for synthetic Erd¨

    os-R´ enyi graphs planted with two communities. p1 is the intra-community edge probability, while p2 is the inter-community edge probability. generate random Erd¨ os-R´ enyi graphs with varying community structure, and compute the RWC score on them. Specifically, to mimic community structure, we plant two separate communities with intra-community edge probability p1 . That is, p1 defines how dense these communities are within themselves. We then add random edges between these two communities with probability p2 . Therefore, p2 defines how connected the two communities are. A higher value of p1 and a lower value of p2 create a clearer two-community structure. Figure 10 shows the RWC score for random graphs of 2000 vertices for two different settings: plotting the score as a function of p1 while fixing p2 (Figure 10a), and vice-versa Planted Synthetic Graphs
  34. Limitations Twitter only Manual choice of data Reliance on graph

    partitioning Multisided controversies
  35. Reducing Controversy Given a graph, partitioned in two sides, and

    its RWC score Find the top-k edges to add to the graph that minimize the RWC score Semantic: recommend people or content to endorse
  36. Side 1 Side 2 Example

  37. Baseline Greedy heuristic Compute RWC reduction for each pair of

    nodes Pick the best, repeat k times O(n2) complexity
  38. Intuition The best edges are between the highest-degree nodes Proven

    mathematically for simple case O(p2) complexity, p << n Side 1 Side 2
  39. Modeling Acceptance Influencers are not likely to retweet contrarian views

    We cannot recommend @realDonaldTrump to endorse @BarackObama Acceptance probability = probabilistic graph Each edge has a probability to materialize
  40. Given a graph, partitioned in two sides, and its RWC

    score Find the top-k edges to add to the graph that minimize the expected RWC score, under a specified acceptance model Reducing Controversy v2
  41. Acceptance Model Based on polarity scores of the users Ru,

    computed as described before (expected hitting time) Intuition: large difference between polarities Ru and Rv → low acceptance probability p(u,v) Based on retweets
 and connections Scores bucketed to smooth probabilities p(u, v) = N endorsed (R u , R v ) N exposed (R u , R v )
  42. Fagin's Algorithm [Fagin2003] Input: 2 lists of ranked edges By

    decreasing reduction in RWC δRWCu→v By decreasing acceptance probability p(u,v) Scan lists in parallel to find edges that maximize 
 p(u,v) · δRWCu→v
  43. Incremental RWC Efficient way to compute δRWCu→v No need to

    recompute the RWR Use Sherman-Morrison formula 1 order of magnitude improvement in runtime e by using Fagin’s algorithm [10]. Specif- ut two ranked lists of edges ( u, v ), one g RWC u ! v (as currently produced in hm 1) and another one ranked by de- of acceptance p ( u, v ). Fagin’s algorithm parallel to find the edges that optimize E ( u, v ). We refer the interested reader for details [10]. NTAL COMPUTATION OF RWC defined in Section 3 can be computed Rank, which is usually implemented by wever, since we are only interested in mental change in RWC after adding an ew way to e ciently compute it. sition probability matrix P . After the ted) edge from vertex a to vertex b , only ↵ected: the column that corresponds to of the directed edge. Let q be the out lly, before the addition of the edge, the atrix has the following form. Lemma 1 (Sherman-Morrison Formula [14]). be a square n ⇥ n invertible matrix and M 1 its inverse. M over, let a and b be any two column vectors of size n . T the following equation holds (M + abT ) 1 = M 1 M 1abT M 1 / (1 + bT M 1 Now, from Equation (3), the updated RWC, RWC0 RWC0 = (1 ↵ )( cx cy )T( M 0 1 x ex M 0 1 y ey ) , and update in RWC can be written as (RWC) = RWC 0 RWC = (1 ↵ )( cx cy )T ( M 0 1 x ex M 1 x ex ) +( M 1 y ey M 0 1 y ey ) = (1 ↵ )( cx cy )T ✓ ↵M 1 x zxu T M 1 x 1 + ↵u T M 1 x zx ex + ↵M 1 y zyu T M 1 y 1 + ↵u T M 1 y zy ey ◆ .
  44. ect on he he use Table 2: Algorithms explored for

    link prediction. Algorithm Summary AUC Vertex polarity Link recommendation based on 0.79 vertex polarity Adamic-Adar [1] Link prediction based on number 0.60 of common neighbors Reliability [41] Block stochastic model 0.66 RAI [35] Using community detection to 0.60 improve link prediction SLIM [29] Collaborative filtering 0.71 recommendation FISM [20] Content-based recommendation 0.66 which indicates that endorsement graphs across di↵erent datasets have similar edge-formation criteria. We compare our approach with existing link-recommendation methods. The implementations are obtained from Librec [18]. Table 2 reports the results. As we can see, our approach, which uses vertex polarity scores for predicting links, works Acceptance Model
  45. Figure 2: Comparison of the proposed methods (ROV and ROV-AP)

    with related approaches (NetGel, MioBi, Shortcut) for 2% of the total edges added. The Greedy algorithm considers all possible edges. Figure 3: Comparison of di↵erent edge-addition strategies after the addition of 50 edges. 50 edges, drawn at random from the sampled vertices, and corresponding to the 4 possible combinations (high/non-high to high/non-high edges). Figure 3 shows the results of these simulations. We see that, despite the fact that high-degree vertices are selected at random, connecting such vertices gives the highest decrease in polarity score (blue line). 6.5 Case study In order to provide qualitative evidence on the functioning of our algorithms on real-world datasets, we conduct a case study on three datasets. The datasets are chosen for the ease of the interpretation of the results, since they represent topics of wider interest (compared to beefban, for example, which is specific to India). sides, they might be hard to materialize in the real world. This issue is mitigated by ROV-AP, which recommends edges between less popular users, yet connects opposing viewpoints. Examples include the edge (csgv, dloesch) for guncontrol, which connects a pro-gun-control organization to a conservative radio host, or the edge (farhankvirk, pame- lageller), which connects an islamist blogger with a user who wants to “Stop the Islamization of America.”2 Additionally, we provide a quantitative comparison of the output of the two algorithms, ROV and ROV-AP, by ex- tracting several statistics regarding the recommended edges. In particular we consider: ( i ) Total number of followers. We compute the median number of followers from all edges sug- gested by ROV and ROV-AP. A high value indicates that Connecting Influencers
  46. Figure 2: Comparison of the proposed methods (ROV and ROV-AP)

    with related approaches (NetGel, MioBi, Shortcut) for 2% of the total edges added. The Greedy algorithm considers all possible edges. Comparison
  47. oposed algorithms AP almost overlap. milarity between the ded by

    the algorithm. r each recommended ho retweeted users x ty of the two sets. As by taking the median cates that there is a sers x, y on the topic. 4. We observe that r example, ROV-AP of followers (not ex- re common retweets, Speed−up netanyahu nem tsov ukraine baltim ore indiasdaughter indiana russia_m arch beefban obam acare guncontrol 0 10 20 30 40 50 60 Figure 5: Relative Speed-up produced by using our proposed method in Section 5 Future work. Our approach relies on a random walk- based optimization function [11]. Although this measure has been proven to be e↵ective it has a few drawbacks. In particular, the measure is applicable to controversies having Speed-up
  48. Table 3: Twitter handles of the top edges picked by

    our algorithms for di↵erent datasets. obamacare guncontrol #netanyahuspeech vertex1 vertex2 vertex1 vertex2 vertex1 vertex2 ROV mittromney barackobama ghostpanther barackobama maxblumenthal netanyahu realdonaldtrump truthteam2012 mmflint robdelaney bipartisanism lindasuhler barackobama drudge report miafarrow chuckwoolery harryslaststand rednationrising barackobama paulryanvp realalexjones barackobama lindasuhler marwanbishara michelebachmann barackobama goldiehawn jedediahbila thebaxterbean worldnetdaily ROV-AP kksheld ezraklein chuckwoolery csgv farhankvirk pamelageller lolgop romneyresponse liamkfisher miafarrow medeabenjamin annebayefsky irritatedwoman motherjones csgv dloesch 2afight sttbs73 hcan romneyresponse jonlovett spreadbutter rednationrising palsjustice klsouth dennisdmz drmartyfox hu↵postpol jvplive chucknellis Table 4: Quantitative comparison of recommenda- tions from ROV and ROV-AP. ⇤ indicates that the result is statistically significant with p < 0 . 1, and ⇤⇤ with p < 0 . 001. Significance is tested using Welch’s t -test for inequality of means. ROV ROV-AP NumFollowers 50729 36160⇤ ContentOverlap 0.054 0.073⇤⇤ CommonRetweets 0.029 0.063⇤⇤ [7] M. Conover, J. Ratkiewicz, M. Francisco, B. Gon¸ calves, F. Menczer, and A. Flammini. Political Polarization on Twitter. In ICWSM, 2011. Adaptation and Personalization, 2015. [19] D. J. Isenberg. Group polarization: A critical review and meta-analysis. Journal of personality and social psychology, 50(6):1141, 1986. [20] S. Kabbur, X. Ning, and G. Karypis. Fism: factored item similarity models for top-n recommender systems. In Proceedings of the 19th ACM SIGKDD international conference on Knowledge discovery and data mining, pages 659–667. ACM, 2013. [21] Q. V. Liao and W.-T. Fu. Beyond the filter bubble: interactive e↵ects of perceived threat and topic involvement on selective exposure to information. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, pages 2359–2368. ACM, 2013. [22] Q. V. Liao and W.-T. Fu. Can you hear me now?: mitigating the echo chamber e↵ect by source position indicators. In Proceedings of the 17th ACM conference on Case Study
  49. Conclusion We know how to quantify controversy of a topic

    discussed in social media We know how to quantify the polarization of a user on a given topic We have a model for acceptance probability of a link in an endorsement graph We have a way to select which link to recommend to reduce controversy
  50. References Garimella, Kiran, Gianmarco De Francisci Morales, Aristides Gionis, and

    Michael Mathioudakis. "Quantifying Controversy in Social Media." WSDM 2016. Garimella, Kiran, Gianmarco De Francisci Morales, Aristides Gionis, and Michael Mathioudakis. "Reducing Controversy by Connecting Opposing Views." WSDM 2017. [best student paper] Garimella, Kiran, Michael Mathioudakis, Gianmarco De Francisci Morales, and Aristides Gionis. "Exploring Controversy in Twitter." CSCW 2016. Garimella, Kiran, Gianmarco De Francisci Morales, Aristides Gionis, and Michael Mathioudakis. "Mary, Mary, Quite Contrary: Exposing Twitter Users to Contrarian News." WWW 2017. Garimella, Kiran, Gianmarco De Francisci Morales, Aristides Gionis, and Michael Mathioudakis. "The Ebb and Flow of Controversial Debates on Social Media." ICWSM 2017. Garimella, Kiran, Gianmarco De Francisci Morales, Aristides Gionis, and Michael Mathioudakis. "Quantifying Controversy in Social Media." ACM TSC 2017.
  51. [Feng2015] W. Feng, J. Han, J. Wang, C. Aggarwal, and

    J. Huang. "STREAMCUBE: Hierarchical Spatio-temporal Hashtag Clustering for Event Exploration over the Twitter Stream". ICDE 2015. [Fagin2003] R. Fagin, A. Lotem, and M. Naor. "Optimal aggregation algorithms for middleware." Journal of computer and system sciences, 2003.