Overview of Twitter• Discuss over the same topic through Hashtag
Overview of Twitter• Top Trending• Deficiency – User can only customize trending based on locations. – Many of them are not interesting to users.
Motivation• Allow user to see the top trending of friends• How to define “Hot” topics among friends? – Term Frequency – Tweet Rank • Hashtag • Replies
Tweet Rank• Create a Tweet Graph – Reply: like citation Tweet 2 Tweet 1
Tweet Rank• Create a Tweet Graph – Hashtag: implies the same topic
Tweet Rank• Create a Tweet Graph• Rank tweets using Tweet Graph – Similar to PageRank algorithm – Outcome: Rank Vector of all tweets
Tweet Rank• Every tweet has a score – Between 0 to 1 – This’s Tweet Rank• The random walk 33% 33% T1 33% – Start at a random tweet – Follow an out edge with equal probability• Calculate Tweet Rank, such that each tweet has a real-time (in 24 hours) popularity rate
Teleport• Isolated tweet – Not replied; not reply to others; no hashtag – Still possible this tweet is related to some hot topic.• Assign a random probability for isolated tweet to all other tweets
Retweet• Send an existing tweet (of others) around – Can be considered as a new tweet of a user
Term Rank• Intuition: terms in a tweet with higher rank is more important• Adjacency list: terms and term frequency in each tweet. – Term List<<tweet_id, term-frequency>>• Scoring Scheme for each term: The sum of the multiplication of the logarithm of each Term Frequency (tf>0) and its TweetRank score (1 log TermFrequency ) * (TweetRank ), i TweetList i n
Top Trending• Terms with top ranking are Top Trending (i.e. hot topic) – More frequently appear in User and user’s friends tweets/retweets – Hot Hashtag may be cited by many tweets. – Replied by many people.
Use of Twitter API• Jtwitter A small library providing easy access to the Twitter API http://www.winterwell.com/software/jtwitter.php• Twitter – getFriendsTimeline()• Twitter.Status – id – inReplyToStatusId
Demo• Scenario: Ye 1. Hello, I am fresh. Aries Jane 1. #Finalexam is 2. @Aries Good 1. Welcome, fresh~ coming. Luck on your finals 2. @Ye I took a long 3. On, My 2. Yes, I am. So to prepare Algorithm #finalexam is where are you from? 3. @Ye Dijkstra coming too, sad~ 3. Tomorrow go to Algorithm is important! 4. @Jane Tks, Jane. DisneyLand! 4. Reviewing Prim’s Are you fresh,too? 4. DisneyLand is a Algorithm 5. @Jane I am a magical place!! 5. Reviewing Bread- Chinese, you? First Algorithm 5. @Ye I am also a 6. @Jane I am glad Chinese. 6. Reviewing Depth- to! See you~ 6. @Ye All Chinese will go Firest Algorithm 7. @Aries How do to play in Disneyland, 7. Reviewing NP- wanna join us? you prepare? Any complete tips? 7. Doing Homework~
Limitation• Twitter Limit Rate – Twitter API only allows clients to make a limited number of calls in a given hour. – API Requests: 150 per hour.• Common Words Elimination Small corpus for Common Words (60)• Top Treading is based on single words. – Better use phrase
Conclusion• Propose a concept of Tweet Rank• Implement this concept with Tweet Graph• Rank terms with term frequency and Tweet Rank• Calculate Top Trending of friends for a particular user – A feature that current Twitter doesn’t have – Potential business: show relevant ad based on top trending of friends