Xin Luna Dong, a senior principal scientist at Amazon, leads research on Amazon’s product graph, a huge graphical representation of the products in the Amazon Store and their properties, such as brand, color, and flavor. The product graph can help organize product descriptions and suggest substitutes for out-of-stock items and complements to selected products, among other things.
As knowledge graph researchers, Dong and her team frequently publish at conferences on knowledge management and knowledge discovery. This year, they also have two papers at the Web Conference.
“It has a huge audience, and it has an audience from different communities,” Dong says. “It has people from the data mining community; it has people from the NLP [natural-language processing] and the information retrieval community; it has people from the Web community. It has a diverse audience, and we can learn a lot of different things from them. We can get different opinions. I also like the web perspective. Once you talk about the web, you have to scale; you won't survive with a small-scale solution.” And scalability is essential to a project that seeks to encode information about millions of products, which can be related to each other in millions of different ways.
The diversity of the audience at the Web Conference, Dong adds, reflects the diversity of techniques necessary to build the Amazon product graph.
“At the very beginning,” she says, “we need to collect knowledge from text, semi-structured data, et cetera, and this requires knowledge extraction. That comes from the NLP community and, because of this recent idea of multimodal knowledge extraction, it also draws on techniques from computer vision.
“Once we get knowledge from different sources, we want to integrate it. We want to align the knowledge — for example, to understand how different sources might use different names for the same entity. And that part is from the database data integration and the data-mining communities.
“Finally, after we get everything cleaned up and put in a knowledge graph, we want to use it to serve different applications. We want to use it to support IR [information retrieval]: that's the IR community. We want to use it to support question answering: that's the NLP and IR communities. We want to use it to support recommendation. That's the data mining and recommendation community. And so on and so forth. The whole process of building a knowledge graph and using that to help improve customer experience, it really is a cross-community project.”
Unstructured data
At first glance, it may not be obvious why building the Amazon product graph requires knowledge extraction: after all, the Amazon catalogue has dedicated fields for attributes like price, size, color, style, brand, and the like.
But the data in the Amazon catalogue is usually contributed by third-party retailers or manufacturers, who may not make use of those dedicated fields.
“As an example, they just put everything into the product title, into the product descriptions, and give us a bunch of bullets,” Dong says. “You often see that on the Amazon Detail Page. And then when you look at that big chunk of text, you try to understand, ‘What flavor is this?’ ‘What is the scent?’, et cetera. You don't immediately get it.”
Similarly, Dong explains, similar products may be sold in different volumes, or with different numbers of items per package. “When you try to compare the price per unit for similar products, again, you can't easily get it without the structured data,” she explains.
Much of the research conducted by Dong’s group involves trying to impose structure on that unstructured data, by extracting structured values from it and learning classification hierarchies. The group’s techniques often combine NLP with analysis of click behaviors.
“If people search for tea and then end up buying green-tea products, we infer that green tea is a subtype of tea,” she explains. “What is the hierarchy-subtype relationship? We published that last year in KDD. And then we want to assign the products to those product types. That's the publication this year for the WebConf.”
Graph neural networks
Dong first attended the Web Conference in 2014, and at the time, “there was definitely not that much of deep learning,” she says. “And now, everything is kind of deep-learning enabled.”
Around 2018, she says, she began to notice a new emphasis on graph neural networks (GNNs), deep-learning models that generalize the concept of embedding to graphs. Embeddings represent data as points in a multidimensional space, such that spatial relationships between the points carry information about the data. In a graph neural network, the embedding of each node is based on the node itself and on its immediate neighborhood — the nodes it’s directly connected to and the nature of those connections.
“You can do one-hop neighborhoods, or two-hop neighborhoods, but typically, you don't want to do too many hops, because then the information is diluted,” Dong explains. “For example, you can understand me by looking at my neighbors — the companies I’ve worked for, my fields, the people I'm interacting with. For every entity in the graph, you decide a representation according to the neighbors. And then according to that representation, you can make predictions.
“We use GNNs for information extraction, multimodal extraction. We use it for integration and data linkage. We use it for cleaning. That's definitely one of the most powerful tools we are using at this time.”