Interactive Movie Recommendation Through Latent Semantic Analysis and Storytelling
aa r X i v : . [ c s . I R ] J a n Interactive Movie Recommendation Through Latent Semantic Analysisand Storytelling
Kodzo Wegba , Aidong Lu , Yuemeng Li , and Wencheng Wang University of North Carolina at Charlotte, USA, { kwegba1, aidong.lu, yli19 } @uncc.edu Chinese Academy of Sciences, China, [email protected]
Figure 1: An example from our latent semantic model for interactive recommendation and abstraction of user preferences. Our approach iden-tifies a 2D visualization domain, where the horizontal axis layouts recommendable movies on a latent dimension between two combined moviefeatures that are selected based on the user’s watch history, and the vertical axis uses recommendation degrees to move highly recommendablemovies to the top. This example demonstrates the preference of a user on drama/documentary/biography movies (green zone toward the right)over comedy/music genres (orange zone toward the left). The movies selected to recommend are enlarged as blue circles, recommendablemovies are shown as purple nodes, watched and liked movies as green nodes, and disliked movies as orange nodes. Two example movieposters, one liked movie “Casino” and one disliked movie “Airheads”, are also provided to demonstrate the latent dimension. For illustrationpurpose, we also add the arrowed line at the bottom and several movie titles to confirm the movie distributions on the visualization domain. A BSTRACT
Recommendation has become one of the most important compo-nents of online services for improving sale records, however visu-alization work for online recommendation is still very limited. Thispaper presents an interactive recommendation approach with thefollowing two components. First, rating records are the most widelyused data for online recommendation, but they are often processedin high-dimensional spaces that can not be easily understood or in-teracted with. We propose a Latent Semantic Model (LSM) thatcaptures the statistical features of semantic concepts on 2D domainsand abstracts user preferences for personal recommendation. Sec-ond, we propose an interactive recommendation approach through astorytelling mechanism for promoting the communication betweenthe user and the recommendation system. Our approach emphasizesinteractivity, explicit user input, and semantic information convey;thus it can be used by general users without any knowledge of rec-ommendation or visualization algorithms. We validate our modelwith data statistics and demonstrate our approach with case studiesfrom the MovieLens100K dataset. Our approaches of latent seman-tic analysis and interactive recommendation can also be extended toother network-based visualization applications, including variousonline recommendation systems.
NTRODUCTION
Recommendation systems have been reported as key pillars of on-line services [14] for significantly improving sale records [26].Nowadays, online retailers and content providers offer a hugeamount of products or services, which are often overwhelming for consumers. To improve user satisfaction and loyalty, Internet lead-ers like Amazon, Google, and Yahoo are all using recommendationsystems to provide personalized suggestions. However, matchingconsumers with the most appropriate products is not trivial. Whilemany recommendation algorithms have been developed, includingthe prevailing top-N recommendation approaches [7], effective in-teraction mechanisms for consumers to adjust search preferences orrecommendation results are still lacking [28].The challenges for improving user satisfaction of interactive rec-ommendation systems come from several aspects. First, the satis-faction of consumers vary obviously with other factors such as emo-tions and situations, which require explicit input from users. Sec-ond, useful information for assisting users to find the right movies,such as the similarities between recommended and rated movies, isoften completely hidden from users. Third, complex recommenda-tion algorithms and visualization systems are often too complicatedfor general consumers to use. To the best of our knowledge, thereare no previous work on addressing all above challenges.In this work, we present an interactive recommendation ap-proach that simulates the scenario of an expert recommendingmovies to a user – an expert generally selects movies for a userbased on his or her watch history, makes recommendations, lis-tens to the feedback, and continues to recommend more moviesuntil the user finds a movie to watch. Similarly, our approachadopts such a continuous and interactive recommendation processthat allows the user to orientate search results actively and explic-itly. For efficiency, we recommend movies in groups, with eachgroup containing movies selected from combined movie featuresthat are extracted from watch history. As shown in Figure 1, fora user who likes a number of drama, documentary, and biographymovies, we visualize the movie distributions on the dimension be-tween the liked and disliked movie features, and make recommen-dations based on important criteria such as user preference and va-iety. This requires us to study the personal movie features fromrating statistics and present recommended movies with both usefulinformation and connections with user-rated movies in a succinct,user-friendly manner.Our work consists of two components, a model of latent seman-tic analysis and an approach of interactive recommendation. Wefirst present a latent semantic model (LSM) built upon the high-dimensional latent space factorized from the movie rating records,as they are the most commonly used data for online recommenda-tion. Our model collects a set of semantic concepts, including like,dislike, familiarity, diversity, typicality, and un-typicality, that canbe used for two purposes: one is to help a user to correlate newrecommended movies to the movies the user has watched, the otheris to allow the user to specify the preferences of recommendationresults explicitly. We abstract the statistical features of semanticconcepts among the high-dimensional latent space and automati-cally identify suitable 2D domains for interactive visualization. Wevalidate LSM with a real-life dataset to show that our model is ap-plicable to various users for recommendation.We then present an interactive recommendation system that rec-ommend movies in a storytelling style to promote the communica-tion between the user and recommendation system. We employ theLSM to generate recommendation stories by assigning movies withsuitable characters, roles, and narrative structures for describing agroup of recommended movies. The recommendation stories areconstructed automatically to attract user attention, supported withmulti-level visualization and animation effects, and can be adjustedflexibly during the interactive recommendation process. Differentfrom previous online recommendation systems, our approach re-veals information that is generally hidden from users and allowsinteractive exploration of movie similarities. We also provide sev-eral case studies to demonstrate the usage of LSM and interactiverecommendation on different recommendation tasks.The remainder of this paper is organized as follows. We startwith related work in Section 2. We then describe our LSM in Sec-tion 3 and interactive recommendation approach in Section 4. Wepresent the recommendation system in Section 5 and results in Sec-tion 6. Section 7 concludes the work and presents future work.
ELATED W ORK
This section presents the previous works on interactive recommen-dation, storytelling and narrative visualization approaches.
Different from the topic of visualization recommendation that sug-gests suitable visualization formats given data or tasks, we focus onvisualization approaches for recommender systems, where graphvisualizations are often adopted. For example, Luo et al. [29] usedhyperbolic and multi-modal view to visualize a recommendationlist. Kermarrec et al. [20] used SVD-like matrix factorization andPCA for global mapping of movie ratings from high dimensions toa two-dimensional space. Crnovrsanin et al. [5] proposed a task-based and information-based network representation for users tointeract and visualize a recommendation list. Vlachos et al. [38]used bipartite graphs and minimum spanning trees to explore andvisualize recommendation results of a movie-actor dataset.Interactive recommendation approaches have also been devel-oped. Gretarsson et al. [15] visualized recommended users in so-cial networks with node-link diagram and grouped relevant nodeson the recommendation list in parallel layers. Loepp et al. pre-sented an interactive recommendation approach by having users tochoose between two sets of sample items iteratively and extractinglatent factors [28]. Recently, Loepp et al. [27] presented My-MovieMixer for interactively expressing user preferences over thehybrid recommendation process. Our approach dynamically recommends suitable movies to userswith the support of interactive storytelling methods. A key featureof semantic storytelling is that users do not need to understand com-plex recommendation algorithms or visualization techniques. “Storytelling” has a long history and it has become a visualizationtechnique [13, 34, 30, 22, 24, 41]. While the term of narrative visu-alization is relatively new [36], it also refers to using data stories toimprove visual communication [17, 19, 35].We focus on techniques of narrative structure, which is a keyconcept in storytelling and narrative visualization. It refers to “aseries of events, facts, etc., given in order and with the establishingof connections between them” from the Oxford English Dictionaryand it is often simplified to structures like beginning, middle, andend in visualization systems [36]. Studies from journalism [36] andpolitical messaging and decision-making [17] have been performedto understand useful narrative structures for visualization.Several interactive or automatic storytelling approaches havebeen developed for applications ranging from general visualizationprocess [6, 12] to specific domains. For example, Wohlfart andHauser [40] used storytelling as a guided and interactive visual-ization presentation approach for medical visualization. Eccles etal. [9] detected geo-temporal patterns and integrates story narra-tion to increase analytic sense-making cohesion in GeoTime. Yuet al. [42] generated automatic animations with narrative structuresextracted from event graphs for time-varying scientific visualiza-tion. Hullman et al. [19] presented a graph-driven approach forautomatically identifying effective sequences in a set of visualiza-tions to be presented linearly. Lee et al. [23] presented a storytellingprocess with steps involved in finding insights, turning insights intoa narrative, and communicating to an audience. Satyanarayan andHeer [35] developed a model of storytelling abstractions and in-stantiate the model in Ellipsis with a graphical interface for storyauthoring. Wang et al. presented a narrative visualization systemthat presents literature review as interactive slides with three levelsof narrative structures [39]. Bryan et al. [4] generated textual anno-tations with a temporal layout and comic strip-style data snapshotsfor visualizing multidimensional and time-varying data.Storytelling has been shown to be effective on conveying data ina number of applications [8, 37]. For visualization tasks, whilestorytelling did not seem to increase user-engagement in explo-ration [3], annotated visualizations were proven to be better in bal-ancing graphical salience and relevance [18] and graph comics wereuseful to help a general audience understand complex temporalchanges quickly [2]. Nonetheless, it is clear that a flexible creationprocess should be provided and adjusted according to applicationrequirements [31, 11, 1].Different from other storytelling techniques, we present a highlyinteractive storytelling approach that simulates human communica-tion with two features - continuous updating stories with or withoutuser inputs and allowing interaction in all stages of exploring data,making a story, and telling a story.
ATENT S EMANTIC M ODEL FOR I NTERACTIVE R ECOM - MENDATION AND M OVIE E XPLORATION
Our interactive recommendation approach for general users is con-sisted of two components: LSM for abstracting personal moviepreferences (Section 3) and interactive recommendation with sto-rytelling (Section 4). In this section, we start by introducing the la-tent space from collaborative filtering algorithms. We then describeour recommendation approach and measurement of recommenda-tion degrees. At the end, we present the LSM, which transformshigh-dimensional data statistics into recommendation domains ac-cording to a set of semantic concepts. The LSM is also used toesign the recommendation storytelling and user interaction in Sec-tion 4. During this work, the designs of LSM and interactive rec-ommendation system are simultaneously proceeded to ensure thatthe same set of semantic concepts can be used for both interactiverecommendation and exploration of movies.
To provide an effective interactive recommendation system, weneed to integrate a recommendation algorithm into the visualizationmechanism. The latent factor models are the primary approaches ofCollaborative Filtering (CF) techniques, which have been success-fully adopted by a number of commercial systems [21]. The latentfactor models based on Singular Value Decomposition (SVD) es-tablish recommendations by transforming both movies and users tothe same latent factor space, thus making them directly comparable.We choose this latent space as it can be used to explore not only rec-ommended movies, but also the distribution patterns of movies andusers from the aspect of semantic analysis.The latent space can be used to interpret a number of preference/ relevance features. For example, a dimension from comedy todrama can be used to represent the taste of a user favoring thesetwo movie genres. In majority of cases, the latent space capturesstatistical distribution of rating records that combine features fromall users, which are often hard to describe or understand directly. Todistinguish users from movies, we reserve special indexing lettersof u and v for users and i and j for movies. A rating r ui indicates thepreference of a user u on a movie i , where rating values are in theset of { , ,..., } with 1 for no interests to 5 for strong interests.We generate the latent space with the factorization of user-movierating matrix using SVD. For a user-movie matrix M with m usersand n movies, the SVD algorithm factorizes M into three matricessuch that M = USV T . It is common to truncate these matrices toyield U k , S k , and V k , in order to decrease the dimensionality of thevector space, and only leave the strongest effects in the model bydropping dimensions with small singular values [10]. Specifically,the rows of the U k are the interests of users in each of the k in-ferred features, and the columns of the matrix V k are the relevanceof movies for each feature. The diagonal matrix S k contains the k biggest singular values of M , which are the weights for the prefer-ences, representing the influence of a particular topic on user-moviepreferences. In a recommendation approach, we are interested in two things themost: recommendable movies and recommendation degrees for in-terpreting how likely we would recommend a movie. We follow atypical recommendation algorithm by adjusting rating history withthe normalization of global effects. This step balances the tenden-cies that some users like to give higher ratings than others and somemovies receive higher ratings than others, therefore the adjusted rat-ings ˆ r ui are more accurate to compare different users or differentmovies. Denote a u as the average rating given by user u , a i as theaverage rating of movie i , and A and B as the averages of all usersand all movies respectively.ˆ r ui = r ui − ( a u − A ) − ( a i − B ) (1)Our recommendation algorithm starts by mapping each user intothe latent space by multiplying the adjacency matrix M and the V k component of SVD. We denote this product as C = M × V k , where C u represents a row vector for user u from the matrix C . We thencompute the cosine similarity s uv between users u and v with the C u LSM mode (a) – Variations based on the Like/Dislike groupsLSM mode (b)
Figure 2: The LSM maps the distribution of a set of semantic con-cepts in the latent space. We separate the two modes of LSM forclarity – (a) includes concepts of like, dislike, familiarity and diversityand (b) includes concepts of typicality and un-typicality. The movienodes are colored based on the groups – liked in green, disliked inorange, recommendable in blue, and not recommendable in black. and C v coordinates [25]. s uv = k (cid:229) l = C ul × C vl s k (cid:229) l = ( C ul ) × s k (cid:229) l = ( C vl ) (2)Next, we select a list of similar users with positive similaritycoefficients, as recommendable movies are generally selected basedon ratings from similar users. We denote this set as S u = { v | s uv ≥ } for user u . For a new user with no rating record, all the similaritycoefficients s uv are zero and the set S u contains all the users.We further select the list of recommendable movies L u for theuser u by choosing movies that have not been watched by u , butreceived positive ratings from similar users as follows, where thepositive rating threshold w c is initialized as 3 and can be adjustedfor different numbers of recommendable movies. L u = { i | v ∈ S u , ˆ r vi ≥ w c and r ui = } . (3)In addition, we measure the recommendation degree of a movie i for user u by b ui . The movies with high b ui degrees are more likelyto be recommended during the interactive recommendation process.It is calculated as the average rating from similar users with positivecosine similarities. For any i ∈ L u , b ui = (cid:229) v ∈ S u and r vi = { r vi × s uv } / (cid:229) v ∈ S u and r vi = { r vi } (4)We normalize the s uv and b ui values to range of [ − , ] and [ , ] respectively to balance the differences among users. While the latent space has been widely used in recommendationalgorithms, it is a high-dimensional space and not directly suitablefor visualization or interaction. Our goal of the LSM is to identifysemantic concepts and visualization domains that can be used ininteractive recommendation and exploration of movie similarities.Our approach is consisted of the following three steps: separatingmovie groups, identifying a set of semantic concepts, and selectingsuitable latent dimensions for interactive recommendation. .3.1 Separating Movie Groups
To identify recommendable movies, we separate all the movies inthe database to five groups based on the rating history of the userand our estimation of recommendation degrees. For any user u ,each movie belongs to one and only one of the following groups. • Like (with positive ratings from u ): G + = { i | r ui ≥ t + } • Dislike (with negative ratings from u ): G − = { i | < r ui < t − } • Neutral: G neu = { i | t − ≤ r ui < t + } • Recommendable (with positive recommendation degrees): G r = { i | b ui ≥ t r } and not specified as “thumb-down” by theuser during interaction recommendation process • Not recommendable (with negative recommendation de-grees): G n = { i | b ui < t r } or specified as “thumb-down” bythe user during interaction recommendation processThe thresholds of positive rating t + and negative rating t − areset to value 3, and the threshold of recommendation degree t r tovalue 0 initially. The values can be adjusted to control the numberof movies in each group. In everyday life, we often describe an object with several terms,such as families, friends, and enemies for a person. Similarly, a setof semantic concepts can be used to describe movies for a quickimpression, which may assist users to find movies effectively.In addition to “like” and “dislike”, we have identified the fol-lowing four semantic concepts for recommendation based on twocriteria – concepts that are often used in recommendation for thegeneral public; and concepts with clear distribution features in thelatent space. • Familiarity – movie styles that the user has already watched; • Diversity – movie styles that the user is not familiar with; • Typicality – movie styles that can be well defined based oncombined movie features; • Un-typicality – movie styles that are unclear to a feature.Next, we describe the distribution features of semantic conceptsin the latent space. As illustrated in Figure 2, we can identify thefamiliar zone by including both the like and dislike groups – all themovies that have been watched by the user u . The diverse zones areregions outside the familiar zone and there are generally two diversezones on each side of a latent dimension. Figure 3 uses examplesfrom real scenarios to show the variations of the LSM mode (a).The LSM mode (b) between typicality and un-typicality utilizesthe distance of a movie to the Origin of the latent space. Sinceboth the U k and V k from the latent space demonstrate clusteringfeatures of similar users and movies [32], the distances in the latentspace can interpret the similarity degrees. For example, on a latentdimension which contains comedy movies on one side and dramamovies on the other, the movies with combined comedy/drama orother genres are distributed near the Origin. This feature is sim-ilar to spectral spaces that nodes with few connections are oftenlocated close to the Origin [16]. What’s important is that this fea-ture preserves for general latent dimensions describing combinedmovie features or styles, with only un-typical movies correspond-ing to the latent dimension located close to the Origin. As shown inFigure 2 mode (b), any latent dimension can be modeled as typicalto untypical to typical zones. The two typical zones correspond totwo opposite features represented by the latent dimension.While the distribution features of semantic concepts on the la-tent dimensions are clear, the relative locations among the semanticzones vary depending on the Origin and the familiar zone. For ex-ample, the Like and Dislike zones can appear on either side of the Good latent dimensions for visualization and interactionBad latent dimensions as visualization and interaction Figure 3: Good and bad example latent dimensions that are selectedbased on criteria described in Section 3.3.3. The liked and dislikedzones are highlighted with shaded rectangles in green and orange re-spectively. The recommendable movies are colored in purple, “liked”movies in green, and “disliked” movies in orange.
Origin or Overlap with the Origin. Nonetheless, they all providevaluable semantic information for interactive recommendation. Wegenerally adjust thresholds of t + , t − , and t r to make sure that allthe semantic zones contain recommendable movies. In the latent space, each dimension describes certain joint statisti-cal features of movies and users. We are interested in searchingfor dimensions that can help users understand movie relationshipsand are suitable for visualization and interaction. We need to selectnot only one, but also a set of suitable dimensions, so that multi-ple aspects of recommendable movies can be covered. However,not all the dimensions in the k -dimensional latent space are suitablefor recommendation, as they may represent features of irrelevantmovies or users, repeated features from other dimensions, or fea-tures that are hard to understand. Therefore, we go through thefollowing process of selection based upon the distribution of thesemantic concepts.The selection is based on the combined information of user his-tory, recommendation degrees, and explicit information from userinteraction – thumb up/down for specific movies, which is de-scribed in the section 4. We prefer to choose the dimensions thatseparate the semantic zones with the following three factors: Group sizes.
For each dimension, we measure the region of thelike group as R + , the dislike group as R − , the overlapped regionas R o , and the combined range as R . It is ideal that R + occupies alarge portion of R , as majority recommendable movies are selectedwithin or close to this region. We also prefer that R + and R − do notcover the entire dimension, so that there is room for diverse zones.This factor is simplified as R + / R . The overlapping region.
We try to avoid the third and fourth casesof LSM mode (a) in Figure 2, which happens when one group islocated inside another. They are less desirable as the meanings ofsuch dimensions are hard to describe and understand. We set largepenalty to avoid large overlapping ratios for R o / R + and R o / R − . The distribution of recommendable movies.
Inside R + , it is idealthat the recommendable movies are evenly distributed. This factorelps to remove the dimensions with many movies mapping to asmall range, which indicates that these movie features and differ-ences are not well represented on the dimensions. We measure thisfactor with standard deviation q + of recommendable movies in R + .Specifically, we use the following D v equation to measure if alatent dimension v is suitable as a visualization domain, where w + , w o and w q are the weights for the three factors described above. D v = ( R + R ) w + × ( − R o R + ) w o × ( − R o R − ) w o × ( R + q + ) w q (5)Next, we filter the set S d = { v | D v > t v } , composed of latent di-mensions with high D v values, by removing similar dimensions.This is achieved by comparing the locations of movies to the groupson the two dimensions. Among the similar dimensions with high D s values, only the dimension with the highest D v value is kept in S d . D s ( p , q ) = (cid:229) i ∈ L u w i × [( i ∈ R + p ) M ( i ∈ R + q )+( i ∈ R − p ) M ( i ∈ R − q )] (6)where, p ∈ S d and q ∈ S d are latent dimensions, w i is the weightfor each movie to incorporate user preference, R + p and R − p arethe ranges of like and dislike groups on p . We set w i = We validate LSM with a real dataset from two aspects. First, wetest LSM on all the users in the MovieLens 100K dataset [33]. Forall the results in this paper, we use 4 for t + , 2 for t − , 5 for w + ,and 10 for w o and w q . The best latent dimensions are automaticallyselected and used to measure how well LSM can distinguish thelike and dislike regions. The results show that the best dimensionsfor all the users contain ideal group distributions in either case 1 orcase 2 of Figure 2 (a), indicating that LSM can be applied to userswith various rating histories.Second, we observe the distributions of recommendable movieson the best latent dimensions. Since every recommendable moviecan be in the search results, we collect the total amount of b ui forall movies in a group. It is worth mentioning that the dislike regionmay also contain recommendable movies, as the choices of recom-mendation come from multiple aspects. Also, cases like two usersrated one movie similarly while rating another movie very differ-ently can complicate the statistical distributions. As shown in thetable 1, the average in R + of all users is significantly higher thanthat of R − . If we remove the overlapping regions from R + and R − ,the difference is more significant. We also compute the Pearsoncorrelation to compare the values from two pairs in statistics. Byremoving the overlapping regions, the second pair is very close tono correlation. This result shows that LSM captures the majorityrecommendable movies in the like region for making recommenda-tions. Table 1: Comparison of the sum of b ui in different regions (cid:229) i ∈ R + (cid:229) i ∈ R − Pearson (cid:229) i ∈ R + T R o (cid:229) i ∈ R − T R o Pearson151.0 101.7 0.54 62.5 13.1 -0.05
NTERACTIVE R ECOMMENDATION THROUGH S TORY - TELLING
We start this section by describing how we connect the process ofrecommendation to storytelling. Then, we present our strategies toconstruct recommendation stories automatically through the LSMfrom the aspects of characters, roles, user interaction and narrativestructures respectively.
Figure 4: Pipeline of storytelling with continuous communication be-tween the user and our interactive recommendation system. Userscan interact with the system at any time to indicate preferences andexplore movie information to accelerate recommendation process.
As described in the introduction, we propose interactive recommen-dation to simulate the scenario of an expert recommending moviesto a user. During recommendation, the expert generally presentsone or several movies and provides reasons of recommendation,such as high popularity, high similarity to a movie the user likes, orspecial features. The user may respond by indicating his or her pref-erences on the recommended movies, such as “recommend moremovies like this” or “no more movies like that”. This process con-tinues until the user finds an interesting movie to watch.To simulate this communication process, we present a sto-rytelling mechanism that treats the procedure of recommendingmovies as telling a story. We design a recommendation story asa set of recommendable movies and brief reasons of recommenda-tion and an interactive recommendation approach as a continuousstorytelling process, which can be adjusted promptly with user in-teraction. As shown in Figure 4, the interactive storytelling pipelinestarts with exploring movie database for a user, selecting recom-mendable movies, and collecting necessary information using LSMdescribed in Section 3. Then, the second step of “make a story” is togenerate a recommendation story automatically with the approachdescribed in this section. The third step “tell a story” is to present astory as an animation sequence described in Section 5.The loop among “make a story”, “tell a story”, and “user” pro-vides the proposed continuous and interactive process of recom-mendation until a desirable movie is identified. The arrow from“user” to “make a story” indicates that the user can provide feed-back to request new recommendation stories that reflect user inputs.The arrow from “user” to “tell a story” indicates that the user canadjust the storytelling animation interactively, such as replaying arecommended movie or finishing the story immediately. If the userdoes not provide an input, the loop continues to different recom-mendation stories to achieve the effect of “how about some othertypes of movies you may like?” The automatic switch between dif-ferent recommendation stories can avoid users getting bored fromsimilar movies. During the process, the user can also use our inter-action tools to explore additional information of movies.Different from the previous storytelling processes [24] that aremainly an ordered sequence of the three components - explore data,make and tell a story, our interactive recommendation approach issupported by 1) interaction functions that allow a user to interactwith the storytelling pipeline at any time during the process, 2)automatic construction of narrative structure that allows new andadjusted recommendation stories to be generated continuously.
The character in an ordinary story is generally a person. In our rec-ommendation stories, the characters are movies. Similar to the hu-man characters, each movie character maintains a different relation-ship with the user, such as a rated movie, a favorite movie, or a rec-ommendable movie. The movie characters are also related to eachother, such as being rated by the same users or have similar ratingaverages. Since our focus is recommendation, the leading charac-ters are recommendable movies, whose relationships with the usercan be represented with LSM and recommendation degrees. .3 Role
A role describes what function each character serves in the story.The roles of recommendable movies provide a mechanism for usersto explore the movie database. Before going through the moviedetails, the roles of a movie provide a quick catch of the moviefeatures, such as a typical drama movie which is very similar to oneof the user’s favorite movies. This provides the user a quick way tofind several interested movies to explore.In recommendation stories, we use the semantic concepts fromLSM to describe the roles, such as a “liked” movie that the userrated high or a “typical” movie that has strong features of certainmovie genres. Each movie character can play multiple roles, suchas familiarity and un-typicality, just like a human character can beboth a colleague and a friend. The actual roles of a movie charac-ter are determined by the locations among the semantic zones onselected latent dimensions, as shown in Figure 2.
For interactive recommendation, the user interaction becomes animportant component of the storytelling pipeline. To allow activeuser interaction with the storytelling pipeline shown in Figure 4, weprovide three groups of explicit interaction functions as follows:The first group of interaction functions is from “user” to ”makea story”. Corresponding to the roles of a movie, users can specifythe preferred movie types between options of familiar ( f ) / diverseand typical ( t ) / untypical movies. The parameter values becomeeffective immediately on generating the new recommendation sto-ries. For a specific movie, the user can click thumbs-up (like) andthumbs-down (dislike) buttons, so that the specified movie is movedto the like or dislike groups (and the group of not recommendable,so that it is removed from the recommendation process). We alsoincrease the w i value (a parameter to control the effects of userselection) of the movie in equations 5 and 6 for choosing latentdimensions for new stories. For each dimension v , the new mea-surement D ′ v contains components from both data distribution by D v and user interaction. We detect if the user preference is alignedwith LSM, especially if a liked movie is in the like range and if adisliked movie is in the disliked range. D ′ v = D v + w i × ( (cid:229) i ∈ ( U + ∩ R + ) ∪ ( U − ∩ R − ) b ui − (cid:229) i ∈ ( U + ∩ R − ) ∪ ( U − ∩ R + ) b ui ) (7)where U + and U − are the sets containing all liked or dislikedmovies specified by the user.The second group of interaction functions is from “user” to ”tella story”. To control the animated storytelling, the users can replay,pause, and stop the current recommendation story, or play morestories (the default is continuing to recommend additional movies).The third group is to explore movie details. If finding an inter-esting movie, the user can click the movie poster or movie nodeon the interface to view details. The users can also mouse over amovie node anytime to reveal a set of basic information, includinguser rating, average rating, popularity, title and genres. A narrative structure refers to the sequence of events in a story.In recommendation stories, each event is a recommendable movieand brief reasons of recommendation. The sequence of a set ofrecommendable movies in a narrative structure is crucial to improveusers’ understanding of the movies effectively.Considering the short attention of users in online recommenda-tion, we prefer simple stories that can finish in a very short dura-tion. Therefore, we generate each recommendation story only withone latent dimension selected with LSM. As each latent dimensionreflects one combined movie / user feature, such recommendationstories simulate the effect that we recommend movies from one
Figure 5: The four linear narrative structures based on the user pref-erences of t – typical, u=1-t – un-typical, f – familiar, and d=1-f –diverse. combined movie feature to another, such as popular drama/comedymovies to unpopular documentary movies. Other designs of rec-ommendation stories using our LSM are also feasible. For exam-ple, long stories can be generated by connecting different latentdimensions. Due to the focus of our interactive recommendationapproach, we only use short stories in this work.Based on a latent dimension, we try to maintain smooth storytransitions by generating linear narrative structures among thefour semantic concepts: familiarity, diversity, typicality, and un-typicality. This is achieved by identifying a starting point, choosingnarrative structures based on user preferences, and selecting recom-mendable movies.The starting point of a story is determined according to userpreferences of f and p . The default values are 0 . f and p ,although we favor typical over un-typical and familiar over diversemovies, which is consistent with the preferences of majority users.The following list is the order we set as default.High familiarity: starting from the like groupHigh diversity: starting from the diverse zone closer to like groupHigh typicality: starting from the typical zone closer to like groupHigh un-typicality: starting from the un-typical zoneThe order of recommended movies also considers user prefer-ences. As shown in Figure 5, we use the four narrative structuresto cover all combinations of the two user preferences of f and t .The narrative structures are designed to be linear sequences, so thatusers can expect very similar narrative visualization during the in-teractive recommendation process. Since the narrative structure ison one latent dimension each time, two zones from the LSM are in-volved. The ranges of the latent dimension to select recommendedmovies are also shown in Figure 5. During the interactive story-telling process, we switch narrative structures between the two op-tions randomly to avoid simply repeated stories.The selection of recommended movies is based on the sam-ple rates computed according to user preferences of f and t . As-sume a set G T of T recommended movies is selected for each nar-rative structure. When the structure is between typicality and un-typicality, we determine the number of recommended movies fromthe typical zone as s t and un-typical zone as s u : s t = ⌈ t ∗ T ⌉ ; s u = T − s t (8)Similarly, when the structure is between familiarity and diversity,the sampling numbers for familiar zone s f and diverse zone s d are: s f = ⌈ f ∗ T ⌉ ; s d = T − s f (9)Inside each zone, we select recommended movies with the fol-lowing procedure that is composed of a local sampling and a ran-dom test procedure. We first randomly pick a location l and choosehe best candidate within a local window by combining all threefactors: the recommendation degree b ui of a candidate movie i , thedistance of movie i to location l , and the similarity of movie i tothe set of q movies that are specified by the user. On the latent di-mension V p , assume the location of movie i is V p ( i ) . The effect ofa user specified movie is set to be within a location window d witha truncated Gaussian function G q () , with high weights for thumb-up movies and low weights for thumb-down movies. The movie i with the highest value from the following combined measurementis selected as the best candidate. b ui × q = | U + ∪ U − | z }| { G ( | V p ( u ) − V p ( i ) | ) × ... × G q ( | V p ( u q ) − V p ( i ) | ) / | V p ( i ) − l | (10)The purpose of an additional random test is to ensure that ourselections of recommendable movies are consistent with both userpreferences of f and t , although only one factor is used to determinethe narrative order. If the selected movie i passes the random test,we add it to the selected set G T ; otherwise we pick another randomlocation and perform the local sampling again. For example, forthe narrative structure between familiarity and diversity, we try tomaintain an average typicality value close to the user preference t .We measure the typicality value of a movie i as t ( i ) = | V p ( i ) | . Thetest is determined by if the movie i can make the average typicalityvalue closer to t . | ( (cid:229) i ∈ G T t ( i )) + t ( i ) | G T | + − t | < | (cid:229) i ∈ G T t ( i ) | G T | − t | (11)Similarly, for the narrative structure between typicality and un-typicality, we measure the familiarity value of a movie i given thecenter location of the like group c + as f ( i ) = | V p ( i ) − c + | . The ran-dom test is performed by replacing the t ( i ) with f ( i ) in the aboveequation.Since the movie database is generally large, we can assume thatthere are always enough movies to recommend. In the cases thatthe recommendable movies run out, we can adjust the parameters t + and t − to include additional movies. NTERACTIVE R ECOMMENDATION S YSTEM
The interface of our system is designed to be consistent with popu-lar commercial recommendation systems, such as Youtube, Netflixand Amazon Movie. As shown in Figure 6, our system containsthree common components – an enlarged movie poster with infor-mation (a), the list of top-N recommended movies (c), and addi-tional information at the bottom (e). We add a small area for userinteraction (b) and a visualization domain (d) to support interactiverecommendation and exploration of movie database. Our systemalso supports the following features of interactive recommendation.
The visualization of the latent dimension plays an important rolein illustrating the recommendable movies and the movie distribu-tions. To describe the narrative structure visually, we design anexample-based approach shown in Figures 1, 3, 6, which uses twomovies that have been watched by the user, one on each side of thefamiliar zone, to describe the combined features of that latent di-mension. Since the combined features are generated simply fromdata statistics, they generally cannot be described with languagesor equations. The example movies help the users to understand theoverall trend of the latent dimension and provide a quick impres-sion of a new movie by the distances to the two examples. All therecommendable movies are located on the 2D domain of latent di-mension and recommendation degree, providing additional visualcues for recommendation reasons.
Figure 6: The interface of our recommendation system. Similar to on-line movie recommendation systems, our interface includes (a) basicinformation of a selected movie, (c) a list of recommendable movies,and (e) watch history. We also add (b) for explicit input of user pref-erences and (d) visualization for exploring recommendable movies.
The reasons to recommend a movie can be multifold. While thereasons supported by LSM mainly come from the aspects of sta-tistical similarity and semantic analysis, we can provide a varietyof information as the “brief” reasons of a recommendation, suchas a typical drama movie in the familiar zone of a user, which issimilar to an example movie shown with the poster. We organizethe information on the visualization domain at three levels, so thatthe storytelling animation can follow the levels to achieve the effectthat additional information is introduced gradually. Users can stopat any time if they are not interested in the movie and continue tothe next recommendation.As shown in image (i) of Figure 7, the level one provides the ba-sic information of a latent dimension with the liked and disliked re-gions, where the nodes of movies being recommended are drawn ascircles. The nodes of movies that the user has watched are coloredgreen and the nodes of recommendable movies are colored basedon their genres. Two example movies are provided for illustratingthe latent dimension and making correlations to other movies.The level two introduces the recommendation degrees to the ver-tical locations of recommendable movies. As shown in images (j)and (k) of Figure 7, the movies with higher recommendation de-grees are placed on the top to attract user attention. The scaling canbe automatically done in an animation or interactively adjusted bythe user when exploring the movie database.The level three provides the richest information for exploringmovies. For the movie being recommended, we reveal the top foursimilar movies that the user has watched and liked to strengthenthe reasons of recommendation, as shown in images (l) and (m) ofFigure 7. All the four movies have high user ratings and they areclose to the movie being recommended on the latent dimension. Wealso color all the movie nodes based on the genres and add coloredlinks to connect posters to the movie nodes.
Our system provides fully automatic animations to “tell” a recom-mendation story with the following three sets of animation effects.The first animation set is to introduce the system components.Step by step, each component is highlighted with a brief descriptiona) (b) (c) (d)(e) (f) (g) (h)(i) (j) (k) (l)(m) (n) (o)
Figure 7: Example snapshots of the storytelling animation. We start by introducing the system interface to a new user, such as the use of ratinghistory (a), color code (b), recommendation degree (c) and the liked zone (d). We also use example movies to illustrate the latent dimension andattract user attention with poster transitions (e-h). Next, we introduce the first recommended movie by animating the movie node and showinga green line under its poster (i). The visualization domain is animated from level one (i), level two (j-k), to level three (l-m) gradually. The sameprocedure (i-m) is used to animate the second (n) to the last (o) recommended movies respectively. as shown in images (a-d) in Figure 7. The user can replay or skipto the next animation set anytime.The second animation set is to present the narrative structure ofa recommendation story. We use our example-based approach toanimate the recommended movies for user attention and the twoexample movies from left to right for providing the impression ofdimension meanings. Specifically, each example movie poster isanimated by changing its size and the movie node is also animatedsimultaneously, as shown in Figure 7 (e-h).The third animation set is to present a recommendation story, asshown in images (i-o) in Figure 7. We start to highlight the selectedmovie by flashing the movie node in the visualization panel whenits poster in the recommendation list is animated. A green line un-der the movie poster also indicates the focused movie. Then, weswitch the visualization from level one to level three gradually toprovide detailed information of a selected movie. Specifically, afterthe level one is shown, the movie nodes in the visualization panelare progressively scaled to their maximum recommendation degreein the level two. From level two to level three, the set of similarmovies are animated. We use the same animation procedure for allthe selected movies in the story to avoid confusion. The user canobserve all the information or switch anytime to the next recom-mended movie.When the animation of a recommendation story ends or the userselects a movie for further exploration, a new story is generatedautomatically. The system re-introduces the new narrative structureand repeats the animation sequences to convey the story behind thenew selected movies.
ESULTS AND C ASE S TUDIES
This section describes three case studies using the MovieLens100Kdataset [33]. The dataset has 100K ratings from 1 to 5 and 1682movies from different categories rated by 943 users. We have selectusers with different backgrounds and rating histories to demonstrate our approach.
The first user is a 21 year old male working in entertainment.As shown in Figure 6, a latent dimension is identified between com-edy movies toward the right and drama/romance/biography genrestoward the left. As the default preference settings of 0.5/0.5 fortypicality/un-typicality and familiarity/diversity, our recommenda-tion system starts with movies of drama genre in the familiar zoneand continues to drama and romance types for diversity. The rec-ommended movies are: When a Man Loves a Woman (1994, Dramaand Romance), Meet John Doe (1941, Drama, Romance and Com-edy), Nobodys Fool (1994, Drama and Comedy), Ref The (1994,Comedy and Drama), and Rebel Without a Cause (1995, Drama).We compare the recommendation results with the user’s watchhistory. The user has rated 44 movies. Among which, about 68%of the movies are drama or a combination of drama and romancegenres. Their average rating is high (4.30). The movies of othergenres received lower ratings, especially comedy movies. There-fore, our result captures the user’s preference of drama movies overcomedy types.
The second user is a 28 year old male student. Figure 8 showsthe first recommendation results for the user. The latent dimen-sion spreads out movies in drama, documentary and comedy genres,with the combined features of positive influence (such as love anddrama) toward the left direction and negative influence (such as hor-ror) toward the right. Five movies are recommended from diverse tofamiliar zones: Wonderland (1997, Documentary), Fearless (1993,Drama), Man Without a Face (The 1993, Drama), Everest (1998,Documentary), and Miracle on 34th Street (1994, Drama).Without user input, our system continues to an additional storywith a new set of movies as shown in the first row of Figure 9.The user can also adjust the recommendation preferences and se-lect their interested movies, shown on the second and third rows ofFigure 9.We compare the recommendation results with the user’s watchhistory. He has an average rating of 3.64 for 34 movies from com-dy, drama, horror, and romance genres. The rating records suggestthat he likes drama and romance movies. Our recommendation re-sults recommend majority movies in the familiar zone of the userand also introduce mixed adventure/documentary/drama movies fordiversity.
Figure 8: The result of the second user describes the user prefer-ence of love/drama movies he liked toward the left to horror/comedymovies he disliked toward the right.Figure 9: Interaction examples for the second user. The first rowshows another story piece describing a different aspect of user’spreference on Groundhog Day (1993, Comedy and Romance) overSon in Law (1993, Comedy). The second row shows that all recom-mended movies come from the familiar zone when the user switchthe familiar preference to 1. The bottom row shows the result whenboth the typical and diverse preferences are set to 1 and the movie“One Fine Day (1996)” from the recommended list is selected.
The third user is a 26 year old male executive. As shown in Fig-ure 10, the latent dimension is delimited by drama-comedy movie“Sabrina (1996)” with a high rating on the left and the comedymovie “Down Periscope (1996)” with a low rating on the right.Our system recommends five movies from drama movies com-bined with other genres in the familiar zone, such as Cool HandLuke (1967, Comedy and Drama), Philadelphia Story (1940, com-edy romance), Private Part (1997, Comedy and Drama), SophiesChoice (1982, Drama and Romance) and Friday (1995, Comedyand Drama).We compare the recommendation results with the user’s watchhistory. He has rated 120 movies of several genres, such as comedy,drama, and horror. Most of his ratings were 1 or 2 stars and heonly rated six movies with 4 or 5 stars. Our result reflects his lowrating records with a large dislike region and a small like region.The latent dimension describes movie types from drama-comedy movies toward the left, to various other movie genres that the userhas rated low toward the right. Such users are generally picky onmovie selections, but our model still captures his favorite movietypes and creates a matching recommendation story.
Figure 10: The result of the third user demonstrates a picky userwho has rated many movies low. Our approach identifies the user’spreference on comedy-drama movies (toward the left) over the othergenres (toward the right).
The preprocess of our system includes the computation describedin Section 3, including process of rating records, construction ofSVD space, selection of recommendable movies and latent dimen-sions for the user. The performance of this stage is depended on thesizes of movie database and rating records. The preprocess takes3-10 seconds for 30,000 ratings from 940 users for 370 movies andseveral minutes for the Movie100K dataset on a desktop computerwith Intel Core i7 2.93 GHz processor.During interactive recommendation stage, all the visualization,interaction, and storytelling processes described in Section 4 and 5are interactive. This is essential for providing smooth user interac-tion in an online system. It is achieved by only keeping the relevantdata to the user during run time. The performance is the main rea-son that rating records are used in our approach and many otherpopular online systems.
ONCLUSIONS AND F UTURE W ORK
This paper presents an interactive recommendation approach for thepopular application of online movie recommendation with the gen-eral public as end users. We have studied LSM, which enablesus to translate abstract data and complex recommendation algo-rithms to a set of semantic concepts, provide explicit interactionof search preferences, and construct meaningful recommendationstories. The LSM can be easily combined with other recommen-dation algorithms, as we separate the estimation of recommenda-tion degrees and the latent space. The interactive recommendationapproach automatically generates storytelling animations for rec-ommendation, with the supports of several interactive explorationfunctions for users to adjust the search results explicitly. Differentfrom traditional recommendation algorithms, the interactive rec-ommendation approach emphasizes the visual communication be-tween users and recommendation systems for engaging users andimproving search experiences. Both of our results can also be ex-tended to recommend other online products or services.As future work, we plan to perform formal evaluations on theeffectiveness of interactive recommendation. We are interested instudying the suitable amount of information for different users,such as the general public and movie experts, so that different ver-sions of narrative visualization can be developed to suit for differ-ent needs. We also plan to develop variations of recommendationstories, such as long versions that can combine multiple latent di-mensions, for different recommendation tasks. At the end, we areinterested in integrating other techniques for movie recommenda-tion, such as text analysis approaches for mining useful informa-tion from the movie reviews. The results will enrich the contents ofnarrative visualization and may provide better search experiences.
EFERENCES [1] F. Amini, N. Henry Riche, B. Lee, C. Hurter, and P. Irani. Under-standing data videos: Looking at narrative visualization through thecinematography lens. In
Proceedings of the 33rd Annual ACM Con-ference on Human Factors in Computing Systems , pages 1459–1468.ACM, 2015.[2] B. Bach, N. Kerracher, K. W. Hall, S. Carpendale, J. Kennedy, andN. H. Riche. Telling stories about dynamic networks with graphcomics. In
Proceedings of the Conference on Human Factors in Infor-mation Systems (CHI) . ACM, New York, United States, 2016.[3] J. Boy, F. Detienne, and J.-D. Fekete. Storytelling in information vi-sualizations: Does it engage users to explore data? In
Proceedings ofthe ACM Conference on Human Factors in Computing Systems , CHI’15, pages 1449–1458, 2015.[4] C. Bryan, K. L. Ma, and J. Woodring. Temporal summary images:An approach to narrative visualization via interactive annotation gen-eration and placement.
IEEE Transactions on Visualization and Com-puter Graphics , 2016.[5] T. Crnovrsanin, I. Liao, Y. Wuy, and K.-L. Ma. Visual recommenda-tions for network navigation. In
Proceedings of the 13th Eurographics/ IEEE - VGTC Conference on Visualization , EuroVis’11, pages 1081–1090, 2011.[6] P. Cruz and P. Machado. Generative storytelling for information vi-sualization.
IEEE computer graphics and applications , 31(2):80–85,2011.[7] M. Deshpande and G. Karypis. Item-based top-n recommendationalgorithms.
ACM Trans. Inf. Syst. , 22(1):143–177, Jan. 2004.[8] P. Dragicevic, A. Bezerianos, W. Javed, N. Elmqvist, and J.-D. Fekete.Temporal distortion for animated transitions. In
Proceedings of theSIGCHI Conference on Human Factors in Computing Systems , pages2009–2018. ACM, 2011.[9] R. Eccles, T. Kapler, R. Harper, and W. Wright. Stories in geotime.In
Visual Analytics Science and Technology, 2007. VAST 2007. IEEESymposium on , pages 19–26, 2007.[10] M. D. Ekstrand, J. T. Riedl, and J. A. Konstan. Collaborative filter-ing recommender systems.
Found. Trends Hum.-Comput. Interact. ,4(2):81–173, Feb. 2011.[11] A. Figueiras. How to tell stories using visualization. In
InformationVisualisation (IV), 2014 18th International Conference on , pages 18–26, 2014.[12] D. Fisher, A. Hoff, G. Robertson, and M. Hurst. Narratives: A visual-ization to track narrative events as they develop. In
IEEE Symposiumon Visual Analytics Science and Technology , pages 115–122, 2008.[13] N. Gershon and W. Page. What storytelling can do for informationvisualization.
Commun. ACM , 44(8):31–37, Aug. 2001.[14] C. A. Gomez-Uribe and N. Hunt. The netflix recommender system:Algorithms, business value, and innovation.
ACM Trans. Manage. Inf.Syst. , 6(4):13:1–13:19, Dec. 2015.[15] B. Gretarsson, J. O’Donovan, S. Bostandjiev, C. Hall, and T. H¨ollerer.Smallworlds: Visualizing social recommendations.
Computer Graph-ics Forum , 29(3):833–842, 2010.[16] X. Hu, A. Lu, and X. Wu. Spectrum-based network visualizationfor topology analysis.
Computer Graphics and Applications, IEEE ,33(1):58–68, Jan 2013.[17] J. Hullman and N. Diakopoulos. Visualization rhetoric: Framing ef-fects in narrative visualization.
Visualization and Computer Graphics,IEEE Transactions on , 17(12):2231–2240, 2011.[18] J. Hullman, N. Diakopoulos, and E. Adar. Contextifier: Automaticgeneration of annotated stock visualizations. In
Proceedings of theSIGCHI Conference on Human Factors in Computing Systems , CHI’13, pages 2707–2716, 2013.[19] J. Hullman, S. Drucker, N. Henry Riche, B. Lee, D. Fisher, andE. Adar. A deeper understanding of sequence in narrative visualiza-tion.
IEEE Transactions on Visualization and Computer Graphics ,19(12):2406–2415, 2013.[20] A.-M. Kermarrec and A. Moin. Data Visualization Via CollaborativeFiltering. Research report, Inria, Feb. 2012.[21] Y. Koren. Factorization meets the neighborhood: A multifaceted col-laborative filtering model. In
Proceedings of the 14th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining ,KDD ’08, pages 426–434, 2008.[22] R. Kosara and J. Mackinlay. Storytelling: The next step for visualiza-tion.
Computer , 46(5):44–50, 2013.[23] B. Lee, R. H. Kazi, and G. Smith. Sketchstory: Telling more engagingstories with data through freeform sketching.
IEEE Transactions onVisualization and Computer Graphics , 19(12):2416–2425, Dec. 2013.[24] B. Lee, N. Riche, P. Isenberg, and S. Carpendale. More than tellinga story: Transforming data into visually shared stories.
ComputerGraphics and Applications, IEEE , 35(5):84–90, 2015.[25] J. Leskovec, A. Rajaraman, and J. D. Ullman.
Mining of massivedatasets . Cambridge University Press, 2014.[26] G. Linden, B. Smith, and J. York. Amazon.com recommenda-tions: item-to-item collaborative filtering.
IEEE Internet Computing ,7(1):76–80, 2003.[27] B. Loepp, K. Herrmanny, and J. Ziegler. Blended recommending:Integrating interactive information filtering and algorithmic recom-mender techniques. In
Proceedings of ACM Conference on HumanFactors in Computing Systems , pages 975–984. ACM, 2015.[28] B. Loepp, T. Hussein, and J. Ziegler. Choice-based preference elicita-tion for collaborative filtering recommender systems. In
Proceedingsof the SIGCHI Conference on Human Factors in Computing Systems ,pages 3085–3094. ACM, 2014.[29] H. Luo, J. Fan, D. A. Keim, and S. Satoh. Personalized news videorecommendation. In
Advances in Multimedia Modeling , pages 459–471. Springer, 2009.[30] K.-L. Ma, I. Liao, J. Frazier, H. Hauser, and H.-N. Kostis. Scientificstorytelling using visualization.
Computer Graphics and Applications,IEEE , 32(1):12–19, 2012.[31] A. Mitchell and K. McGee. Limits of rereadability in procedural in-teractive stories. In
Proceedings of the SIGCHI Conference on HumanFactors in Computing Systems , pages 1939–1948. ACM, 2011.[32] L. Pu and B. Faltings. Understanding and improving relational ma-trix factorization in recommender systems. In
Proceedings of the 7thACM Conference on Recommender Systems , RecSys ’13, pages 41–48, 2013.[33] G. Research. Movielens100k: Movie rating dataset.[34] M. Riedl and R. Young. From linear story generation to branchingstory graphs.
Computer Graphics and Applications, IEEE , 26(3):23–31, 2006.[35] A. Satyanarayan and J. Heer. Authoring narrative visualizations withellipsis.
Comput. Graph. Forum , 33(3):361–370, 2014.[36] E. Segel and J. Heer. Narrative visualization: Telling stories withdata.
Visualization and Computer Graphics, IEEE Transactions on ,16(6):1139–1148, 2010.[37] E. Spaulding and H. Faste. Design-driven narrative: using stories toprototype and build immersive design worlds. In
Proceedings of theSIGCHI Conference on Human Factors in Computing Systems , pages2843–2852. ACM, 2013.[38] M. Vlachos and D. Svonava. Recommendation and visualization ofsimilar movies using minimum spanning dendrograms.
InformationVisualization , 2012.[39] Y. Wang, D. Liu, H. Qu, Q. Luo, and X. Ma. A guided tour of lit-erature review: Facilitating academic paper reading with narrative vi-sualization. In
Proceedings of the International Symposium on VisualInformation Communication and Interaction , pages 17–24, 2016.[40] M. Wohlfart and H. Hauser. Story telling for presentation in vol-ume visualization. In
Proceedings of the 9th Joint Eurographics /IEEE VGTC Conference on Visualization , EUROVIS’07, pages 91–98, 2007.[41] W. Wojtkowski and W. G. Wojtkowski. Storytelling: its role in infor-mation visualization. In
European Systems Science Congress . Cite-seer, 2002.[42] L. Yu, A. Lu, W. Ribarsky, and W. Chen. Automatic animationfor time-varying data visualization.