This is a preserved archival copy of the original application. External links may not resolve at this point. Send any questions or comments to James Ryan.



Go back



What is this?

GameGlobs is a visualization suite that can be used to discover new games, learn about the videogame medium, or learn about the field of machine learning. More specifically, it is a series of videogame clustering visualizations, where each clustering is a partitioning of 11,829 games into discrete groups, called clusters. The tool was built using techniques from machine learning, as well as natural language processing. We think it offers interesting comparisons to conventional ways of partitioning games into groups, for instance in commercial game genre. GameGlobs is not currently optimized for mobile viewing.


How do I use it?

Click one of the buttons to indicate which visualization you'd like to see first. After some loading, this will take you to a new screen with your selected visualization on display. Here, you'll see a number of circles of various sizes; these are the clusters for that visualization. Bigger clusters will include more games, and you can click on any cluster to see which games it comprises. When doing this, the games will be listed as hyperlinks to their entries in another tool we have created, called GameNet. When viewing a visualization, you can zoom and pan using conventional mouse controls.


Why doesn't it include the game I want to start at?

GameGlobs includes 11,829 games. If the game you're looking for was released after mid-2014, then it will not be in the system (due to the its underlying model being constructed at that time). We are planning to update GameGlobs to add in these recent games. Second, if your game does not have a Wikipedia article about it, or if its Wikipedia article is a stub, then it will not be included in the current version of GameGlobs. The model that currently underpins system was constructed by processing Wikipedia articles about games, as we explain below, and so only games with such articles are featured at this time.


Who made it?

It was created at the UC Santa Cruz Center for Games and Playable Media by undergraduate student Timothy Hong and graduate students James Ryan and Eric Kaltman and professors Noah Wardrip-Fruin and Michael Mateas. We made it as part of the larger Game Metadata and Citation Project (GAMECIP), a multi-year joint initiative between UC Santa Cruz and Stanford that is funded by the Institute of Museum and Library Services (grant LG-06-13-0205-13).


How does it work?

We built GameGlobs by submitting Wikipedia articles about games to a technique from natural language processing called latent semantic analysis (LSA). LSA works from the premises that words that occur in similar contexts will tend to have similar meanings and that texts that are composed of similar words will tend to be topically similar. By the technique, words get attributed computable representations that are determined by the contexts in which they appear (in our case, the Wikipedia articles) and the contexts themselves (those Wikipedia articles) likewise get attributed computable representations according to which words appear in them. The cool thing about LSA is that it may be able to infer that two words that do not appear together in any context (perhaps dialectal variants that denote the same thing, like 'gas' and 'petrol') are in fact highly semantically related. By the same token, it may infer the semantic relatedness of two contexts that have no terms in common. This ability to learn global associations from local co-occurrences is the achievement of LSA and what led to it becoming one of the major natural language processing techniques of the last twenty years. For this project, we extracted 11,829 Wikipedia articles that describe individual games and submitted these to LSA. By taking the computable representation that LSA gave to the games' Wikipedia articles and using them as a way of representing the games themselves, we can automatically determine how related any game is to any other game among the 11,829 included in our model. Having this ability, we proceeded to cluster games using the classic k-means algorithm. For more information about GameGlobs, see this short paper that accompanied a demo of the tool at a recent academic conference.


Can you say more about LSA and your model?

From a corpus of text, a co-occurrence matrix of its words and documents (the individual texts that make up the corpus) is built; this matrix specifies which words occurred in which documents (and thereby which documents words occurred in). The columns and rows in this matrix can be thought of as vectors that represent the meanings, in an approximate sense, of the words and documents that they correspond to; this is called a vector space model of semantics. LSA is an example of such a model, but its hallmark is that it reduces the dimensionality of these vectors by a matrix-factorization algorithm called singular value decomposition. Remarkably, doing this allows the model to, as we've said above, infer semantic associations that are not encoded in the full co-occurrence matrix. Having an LSA model, one can easily calculate how semantically related any of its documents are by taking the cosine between their LSA vectors. In corpora in which each document pertains to a specific individual concept, such as a corpus comprising encyclopedia entries, these relatedness scores can reasonably be utilized as a measure of the relatedness of the concepts themselves. Crucially, we relied on this notion in training our LSA model on the corpus comprising Wikipedia articles for 11,829 videogames, which we mentioned above. By this model, we can quantify how related any two of these games are by taking the cosine between their LSA vectors. If this isn't detailed enough, check out this conference paper in which we explain our implementation in greater depth. Feel free to shoot us an email too.


What languages and tools did you use to build it?

Python, gensim, scikit-learn, Flask, JavaScript, jQuery, D3.