The Character Network
and Sentiment in an Epic Story
For my final project of this A to Z class, I am going to analyze the importance of characters, relationships between them and sentiment in those relationships in an epic story and visualize the result.
I am interested in text analyzing stuff such as word2vec, and sentiment analysis and have been wondered how I can apply them for a fiction novel that has a lot of characters and complex relationships in it.
Then, I found a great, inspiring project related to this subject: Network of Thrones
The project authors analyzed the series of Game of Thrones and visualized the importance of its characters and their relationships in graphs.
According to them, they built the character network by adding a link between two characters whenever their names appeared within 15 words of one another in the book.
It seems like the more times the character appears or is mentioned in the story, the bigger the name is in the graph.
They also analyzed the importance of each character in different views like below:
That’s also pretty interesting, though I’m not gonna analyze in as much detail like this.
Instead, I’m planning to analyze the sentiment of each character or each relationship.
My current idea for doing this is to analyze the sentiment of a phrase that has the characters in it using AFINN-based sentiment analysis.
(I considered of using Aylien, the sentiment analysis API that I used for my midterm project, however, this API seems a bit biased by product review data, so I ended up choosing AFINN)
The challenges I expect are:
- I need an epic story(like The Lord of the Rings or Harry Potter series at least) How do I get the data?
- How long will it take to analyze all the characters in the story?
- Network graph structure. I can imagine how the node size and the links are determined by the text analysis, but how do I decide the x, y position of each node?