US20160203137A1 - Imputing knowledge graph attributes to digital multimedia based on image and video metadata - Google Patents

Imputing knowledge graph attributes to digital multimedia based on image and video metadata Download PDF

Info

Publication number
US20160203137A1
US20160203137A1 US14/616,197 US201514616197A US2016203137A1 US 20160203137 A1 US20160203137 A1 US 20160203137A1 US 201514616197 A US201514616197 A US 201514616197A US 2016203137 A1 US2016203137 A1 US 2016203137A1
Authority
US
United States
Prior art keywords
location
content
attributes
metadata
knowledge graph
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US14/616,197
Inventor
Mohammad Sabah
Mohammad Iman SADREDDIN
Shafaq Abdullah
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honest Company Inc
Original Assignee
Honest Company Inc
Insnap Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honest Company Inc, Insnap Inc filed Critical Honest Company Inc
Priority to US14/616,197 priority Critical patent/US20160203137A1/en
Assigned to InSnap, Inc. reassignment InSnap, Inc. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: ABDULLAH, SHAFAQ, SABAH, MOHAMMAD, SADREDDIN, MOHAMMAD IMAN
Publication of US20160203137A1 publication Critical patent/US20160203137A1/en
Assigned to THE HONEST COMPANY, INC. reassignment THE HONEST COMPANY, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: INSNAP INC.
Assigned to JPMORGAN CHASE BANK, N.A. reassignment JPMORGAN CHASE BANK, N.A. PATENT SECURITY AGREEMENT Assignors: THE HONEST COMPANY, INC.
Abandoned legal-status Critical Current

Links

Images

Classifications

    • G06F17/30038
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/048Fuzzy inferencing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/48Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • G06F17/30377
    • G06F17/30958
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0269Targeted advertisements based on user profile or attribute
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/51Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/53Querying
    • G06F16/532Query formulation, e.g. graphical querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5838Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9038Presentation of query results

Definitions

  • Embodiments of the present disclosure generally relate to data analytics. More specifically, to imputing information from a knowledge graph to an image based on image metadata.
  • the images can represent mementos of various times and places experienced in an individual's life.
  • mobile devices e.g., smart phones, tablets, etc.
  • mobile devices allow individuals to easily capture both digital images as well as record video.
  • cameras in mobile devices have steadily improved in quality and are can capture high-resolution images.
  • mobile devices now commonly have a storage capacity that can store thousands of images. And because individuals carry smart phones around with them, they can capture images and videos virtually anywhere.
  • One embodiment presented herein describes a method for imputing attributes to multimedia content based on the metadata of the content.
  • the method generally includes evaluating content metadata to identify at least a time and a first location at which the content was captured.
  • the method also includes correlating the time and the first location with a knowledge graph.
  • the knowledge graph stores information describing a plurality of locations, including the first location.
  • the knowledge graph also describes events scheduled to occur at one or more of the plurality of locations.
  • the method also includes identifying, from the correlated information, one or more of the attributes of the first location to impute to the content. The identified attributes are imputed to the content.
  • inventions include, without limitation, a computer-readable medium that includes instructions that enable a processing unit to implement one or more aspects of the disclosed methods as well as a system having a processor, memory, and application programs configured to implement one or more aspects of the disclosed methods.
  • FIG. 1 illustrates an example computing environment, according to one embodiment.
  • FIG. 2 further illustrates the mobile application described relative to FIG. 1 , according to one embodiment.
  • FIG. 3 further illustrates the analysis tool described relative to FIG. 1 , according to one embodiment.
  • FIG. 4 illustrates a method for building a knowledge graph used to impute attributes onto image metadata, according to one embodiment.
  • FIG. 5 illustrates a method for imputing knowledge graph attributes onto image metadata, according to one embodiment.
  • FIG. 6 illustrates an application server computing system configured to impute knowledge graph attributes onto image metadata, according to one embodiment.
  • Embodiments presented herein describe techniques for inferring user interests from metadata associated with digital multimedia (e.g., images and video).
  • Digital multimedia provides a wealth of information valuable to third parties (e.g., advertisers, marketers, and the like). For example, assume an individual takes pictures at a golf course using a mobile device (e.g., a smart phone, tablet, etc.). Further, assume that the pictures are the only indication the individual was at the golf course (e.g., because the individual made only cash purchases and signed no registers). Metadata associated with this image can place the individual at the golf course at a specific time. Further, event data could be used to correlate whether there was going on at that time (e.g., a specific tournament). Such information may be useful to third parties, e.g., for targeted advertising and recommendations.
  • an advertiser might not be able to identify an effective audience for targeting a given product or service based on such information alone. Even if image metadata places an individual at a golf course at a particular point of time, the advertiser might draw inaccurate inferences about the individual. For example, the advertiser might assume that because the metadata places the individual at a high-end golf course, the individual is interested in high-end golf equipment. The advertiser might then recommend other high-end equipment or other golf courses to that individual. If the individual rarely plays golf or does not usually spend money at high-end locations. Such recommendations may lead to low conversion rates for the advertiser. Historically, advertisers have been generally forced to accept low conversation rates, as techniques for identifying individuals likely to be receptive to or interested in a given product or service are often ineffective.
  • Embodiments presented herein describe techniques for inferring user interests based on metadata of digital multimedia. Specifically, embodiments describe techniques for imputing knowledge graph attributes to digital images and videos using metadata.
  • a multimedia service platform provides a software development kit (SDK) that third parties may use in mobile applications of third parties (e.g., retailers, marketers, etc.) to access an application programming interface (API) of the platform.
  • SDK software development kit
  • the mobile application can use the API to upload images and videos to the platform from a mobile device of a user.
  • the multimedia service platform may identify patterns from metadata extracted from images and videos.
  • the metadata may describe where and when a given image or video was taken. Further, in many cases, embodiments presented herein can identify latent relationships between user interests from collections of image metadata from multiple users.
  • the system disclosed herein can discover a relationship between the interests. Thereafter, advertising related to golfing products and services could be targeted to individuals who publish pictures of the travelling museum exhibit, regardless of any other known interest in golf.
  • the multimedia service platform evaluates metadata corresponding to each image or video submitted to the platform against a knowledge graph.
  • the knowledge graph provides a variety of information about events, places, dates, times, etc. that may be compared with metadata.
  • the knowledge graph may include weather data, location data, event data, and online encyclopedia data.
  • attributes associated with an event may include a name, location, start time, end time, price range, etc.
  • the multimedia service platform correlates spatiotemporal metadata from a digital image with a specific event in the knowledge graph. That is, the knowledge graph is used to impute attributes related to events, places, dates, times, etc., to a given digital multimedia file based on the metadata provided with that file.
  • a tool extracts unstructured and structured text data from external sources, such as local news and media websites, online event schedules for performance venues, calendars published by schools, government, or private enterprises, online schedules and ticket sales, etc.
  • the tool applies pattern matching and Natural Language Processing (NLP) techniques to recognize relevant content from the text.
  • NLP Natural Language Processing
  • pattern matching and NLP techniques may be used to identify location, performer, ticket price range, genre, from a calendar of events at a particular venue.
  • NLP techniques may be used to derive information about a given location, e.g., that a given physical location is a park, a school, or a ski resort, irrespective of any particular event.
  • the multimedia service platform imputes attributes related to events, locations, etc to images captured by users. That is, the multimedia service platform associates attributes of the knowledge graph with images uploaded to the platform by a user.
  • an analysis tool may retrieve metadata associated with an image or video published to the platform. The analysis tool compares this metadata to identify attributes to associate with the image or video. For example, the analysis tool may determine (from the knowledge graph) that an image was taken during a performance concert hall based on the time and location metadata of the image.
  • the knowledge graph may impute a variety of attributes associated with the event to the image, e.g., a price range for the performance, weather conditions, an audience size, a description of a music or other genera related to the performance (e.g., a rock concert or a Broadway musical), number of users in attendance, etc.
  • the location of an image metadata may indicate a given activity apart from any scheduled event (e.g., a picture taken on the grounds of a golf course or ski resort).
  • other inferences and therefore attributes form the knowledge graph
  • attributes related to snow sports could be imputed to this image.
  • attributes related to hiking or mountain biking could be imputed.
  • the analysis tool represents attributes imputed to images and videos from a user base in a user-attribute matrix, where each row of the matrix represents a distinct user and each column represents an attribute from the knowledge graph that can be imputed to an image or video.
  • the analysis tool may add columns to the user-attribute matrix as additional attributes are identified.
  • the cells of a given row indicate how many times a given attribute has been imputed to an image or video published by a user corresponding to that row. Accordingly, when the analysis tool imputes an attribute to an image or video (based on the metadata), a value for that attribute is incremented in the user-attribute matrix.
  • Imputing information from the knowledge graph to a collection of images of a given user allows the multimedia service platform to identify useful information about that user.
  • the analysis tool may identify that a user often attends sporting events, movies, participates in a particular recreational event (e.g., skiing or golf), etc.
  • the analysis tool may identify information about events that the user attends, such as whether the events are related to a given sports team, whether the events are related to flights from an airport, a range specifying how much the event may cost, etc.
  • the analysis tool may identify concepts to associate with a user based on the attributes (or attribute counts) reflected in the user-attribute matrix.
  • a concept may be associated with a set of attributes in the knowledge graph. For example, attributes of “Wrigley Field,” “Chicago Cubs,” “game,” and “Sammy Sosa” may be associated with a “baseball” concept.
  • the analysis tool may determine what concepts to associate with a user. That is, the analysis tool may identify that a user has an interest in a given concept from the attributes in the user-attribute matrix.
  • an interest taxonomy is a hierarchical representation of user interests based on the concepts.
  • the interest taxonomy can identify general groups (e.g., sports, music, and travel) and sub-groups (e.g., basketball, rock music, and discount airlines) of interest identified from the concepts.
  • the multimedia service platform may use the interest taxonomy to discover latent relationships between concepts. For example, the multimedia service platform may build a predictive learning model using the interest taxonomy. The multimedia service platform could train the predictive learning model using existing user-to-concept associations. Doing so would allow the multimedia service platform use the model to predict associations for users to other concepts that the user is not currently associated with. Further, the multimedia service platform may map product feeds of third party systems to the user interest taxonomy to identify products to recommend to a given user. Doing so allows advertisers to improve recommendations presented to a given user.
  • FIG. 1 illustrates an example computing environment 100 , according to one embodiment.
  • the computing environment 100 includes one or more mobile devices 105 , an extract, transform, and load (ETL) server 110 , an application server 115 , and a third party system 120 , connected to a network 125 (e.g., the Internet).
  • ETL extract, transform, and load
  • the mobile devices 105 include a mobile application 106 which allows users to interact with a multimedia service platform (represented by the ETL server 110 and the application server 115 ).
  • the mobile application 106 is developed by a third-party organization (e.g., a retailer, social network provider, fitness tracker developer, etc.).
  • the mobile application 106 may send images 108 and associated metadata to the multimedia service platform.
  • the mobile application 106 may access APIs exposed by a software development kit (SDK) distinct to the platform.
  • SDK software development kit
  • the mobile application 106 may access a social media service (application service 116 ) provided by the multimedia service platform.
  • the social media service allows users to capture, share, and comment on images 108 as a part of existing social networks (or in conjunction) with those social networks.
  • a user can link a social network account to the multimedia service platform through application 106 . Thereafter, the user may capture a number of images and submit the images 108 to the social network.
  • the application 106 retrieves the metadata from the submitted images. Further, the mobile application 106 can send images 108 and metadata to the multimedia service platform.
  • the image service platform uses the metadata to infer latent interests of the user.
  • the mobile application 106 extracts Exchangeable Image Format (EXIF) metadata from each image 108 .
  • the mobile application 106 can also extract other metadata (e.g., PHAsset metadata in Apple iOS devices) describing additional information, such as GPS data.
  • the mobile application 106 may perform extract, transform, and load (ETL) operations on the metadata to format the metadata for use by components of the image service platform. For example, the mobile application 106 may determine additional information based on the metadata, such as whether a given image was taken during daytime or nighttime, whether the image was taken indoors or outdoors, whether the image is a “selfie,” etc. Further, the mobile application 106 also retrieves metadata describing application use.
  • Such metadata includes activity by the user on the mobile application 106 , such as image views, tagging, etc. Further, as described below, the mobile application 106 provides functionality that allows a user to search through a collection of images by the additional metadata, e.g., searching a collection of images that are “selfies” and taken in the morning.
  • the ETL server 110 includes an ETL application 112 .
  • the ETL application 112 receives streams of image metadata 114 (e.g., the EXIF metadata, PHAsset metadata, and additional metadata) from mobile devices 105 . Further, the ETL application 112 cleans, stores, and indexes the image metadata 114 for use by the application server 115 . Once processed, the ETL application 112 may store the image metadata 114 in a data store (e.g., such as in a database) for access by the application server 115 .
  • image metadata 114 e.g., the EXIF metadata, PHAsset metadata, and additional metadata
  • the ETL application 112 may store the image metadata 114 in a data store (e.g., such as in a database) for access by the application server 115 .
  • an application service 116 communicates with the mobile application 106 .
  • the application server 115 may be a physical computing system or a virtual machine computing instance in the cloud. Although depicted as a single server, the application server 115 may comprise multiple servers configured as a cluster (e.g., via the Apache Spark framework). This architecture allows the application servers 115 to process large amounts of images and image metadata sent from mobile applications 106 .
  • the application server 115 includes an analysis tool 117 , a knowledge graph 118 , and a user interest taxonomy 119 .
  • the analysis tool 117 generates the user interest taxonomy 119 based on image metadata 114 from image collections of multiple users.
  • the user interest taxonomy 119 represents interests inferred from image attributes identified from the knowledge graph 118 .
  • the knowledge graph 118 includes a collection of attributes which may be imputed to an image. Examples of attributes include time and location information, event information, genres, price ranges, weather, subject matter, and the like.
  • the analysis tool 117 builds the knowledge graph 118 using weather data, location data, events data, encyclopedia data, and the like from a variety of data sources.
  • the analysis tool 117 imputes attributes from the knowledge graph 118 to the images 108 based on the metadata 114 . That is, the analysis tool 117 may correlate time and location information in image metadata 114 to attributes in the knowledge graph 118 . For example, assume that a user captures an image 108 of a baseball game. Metadata 114 for that image 108 may include a GPS, a date, and a time when the image 108 was captured. The analysis tool 117 can correlate this information to attributes such as weather conditions at that time and location (e.g., “sunny”), an event name (e.g., “Dodgers Game”), teams playing at that game (e.g., “Dodgers” and “Cardinals”), etc.
  • weather conditions at that time and location e.g., “sunny”
  • an event name e.g., “Dodgers Game”
  • teams playing at that game e.g., “Dodgers” and “Cardinals”
  • the analysis tool 117 associates the imputed attributes with the user who took the image. As noted, e.g., a row in a user attribute matrix may be updated to reflect the imputed attributes of each new image taken by that user. Further, the analysis tool 117 may perform machine learning techniques, such as latent Dirichlet analysis (LDA), to decompose the user-attribute matrix into sub-matrices. Doing so allows the analysis tool 117 to identify concepts, i.e., clusters of attributes. The analysis tool 117 may use the user interest taxonomy 119 to generate product recommendations. The analysis tool 117 may also use the interest taxonomy 119 identify one or more users that may be interested in a product or service.
  • LDA latent Dirichlet analysis
  • the analysis tool 117 may extract information from a product feed 121 of a third party system 120 .
  • the product feed 121 is a listing of products or services of a third party, such as a retailer.
  • the analysis tool 117 may identify, from the product feed 121 , one or more attributes describing each product.
  • a product of a shoe retailer may have attributes such as “shoe,” “running,” “menswear,” and so on.
  • the analysis tool 117 can map the attributes of the product feed 121 with the interest taxonomy 119 . Doing so allows the analysis tool 117 to identify products and services from the feed 121 that align with interests in the interest taxonomy.
  • third parties can target users who may be interested in the identified products and services.
  • FIG. 2 illustrates mobile application 106 , according to one embodiment.
  • mobile application 106 includes a SDK component 200 with APIs configured to send image and metadata information to the multimedia service platform.
  • the SDK component 200 further includes an extraction component 205 , a search and similarity component 210 , and a log component 215 .
  • the extraction component 205 extracts metadata (e.g., EXIF metadata, PHAsset metadata, and the like) from images captured using a mobile device 105 .
  • the extraction component 205 may perform ETL preprocessing operations on the metadata.
  • the extraction component 205 may format the metadata for the search and similarity component 210 and the log component 215 .
  • the search and similarity component 210 infers additional metadata from an image based on the metadata (e.g., spatiotemporal metadata) retrieved by the extraction component 205 .
  • additional metadata include whether a given image was captured at daytime or nighttime, whether the image was captured indoors or outdoors, whether the image was edited, weather conditions when the image was captured, etc.
  • the search and similarity component 210 generates a two-dimensional image feature map from a collection of images captured on a given mobile device 105 , where each row represents an image and columns represent metadata attributes. Cells of the map indicate whether an image has a particular attribute.
  • the image feature map allows the search and similarity component 210 to provide analytics and search features for the collection of images captured by a mobile device.
  • a user of the mobile application 106 may search for images on their mobile device which have a given attribute, such as images taken during daytime or taken from a particular location.
  • the search and similarity component 210 may evaluate the image map to identify photos having such an attribute.
  • the log component 215 evaluates the image metadata. For example, the log component 215 records metadata sent to the ETL server 110 . Once received, the application 112 performs ETL operations, e.g., loading the metadata into a data store (such as a database). The metadata is accessible by the analysis tool 117 .
  • FIG. 3 illustrates an example of components of the analysis tool, according to one embodiment.
  • the analysis tool 117 includes an aggregation component 305 , a scraping component 310 , a correlation component 315 , and a taxonomy component 320 .
  • the aggregation component 305 receives streams of image metadata corresponding to images captured by users of application 106 by users from the ETL server 110 . Once received, the aggregation component 305 organizes images and metadata by user.
  • the metadata may include both raw image metadata (e.g., time and GPS information) and inferred metadata (e.g., daytime or nighttime image, indoor or outdoor image, “selfie” image, etc.).
  • the aggregation component 305 evaluates log data from the ETL server 110 to identify image metadata from different devices (and presumably different users) and metadata type (e.g., whether the metadata corresponds to image metadata or application usage data).
  • the scraping component 310 builds (and later maintains) the knowledge graph 118 using any suitable data source, such as local news and media websites, online event schedules for performance venues, calendars published by schools, government, or private enterprises, online schedules and ticket sales.
  • the scraping component 310 may evaluate event websites (e.g., such as calendar and event pages on news and media sites) to identify events that are scheduled to occur in a given area or location.
  • the scraping component 310 also identifies information about the event, such as event headliner (e.g., name of person, team, or group), time of the event, location of the event, price range of the event, and the like.
  • event headliner e.g., name of person, team, or group
  • time of the event e.g., time of the event
  • location of the event e.g., location of the event
  • price range of the event e.g., time of the event, location of the event, price range of the event, and the like.
  • the scraping component 310 uses NLP techniques to tokenize raw text from the data sources and perform pattern matching on the tokenized data. For example, pattern matching techniques may be used to identify words and phrases that correspond to event information, e.g., by determining patterns that likely correspond to fields in an event listing (e.g., “Name,” “Date,” etc.).
  • the scraping component 310 determines a set of attributes related to each event to store in the knowledge graph 118 .
  • the scraping component 310 can evaluate sources relating to a location, e.g., public parks, landmarks, museums, and the like.
  • the scraping component 310 may evaluate an art museum website to identify information about the art museum, such as a location, schedule of events, genres of art on display, and the like.
  • the scraping component 310 can evaluate sources relating to travel, such as websites of airlines and tourist agencies.
  • the scraping component 310 may identify information such as arrival and departure times, schedules, airport names, train station names, and the like.
  • the correlation component 315 receives new images taken by a given user.
  • the correlation component 315 compares the image metadata associated with the user with information in the knowledge graph 118 .
  • the component 315 imputes attributes from the knowledge graph 118 to an image based on the time and location information metadata of that image.
  • the correlation component 315 may update a user-to-attribute matrix reflecting what attributes have been imputed to the image.
  • each row in the user-attribute matrix represents a user and columns represent attributes of the knowledge graph 118 . Cells in a row reflect how many times an attribute has been imputed to images taken by the corresponding user.
  • the correlation component 315 evaluates time and location metadata of the image against the knowledge graph 118 .
  • the correlation component 315 determines whether the image metadata matches a location and/or event in the knowledge graph.
  • the information may be matched using a specified spatiotemporal range, e.g., within a time period of the event, within a set of GPS coordinate range, etc.
  • the component 315 may further match the information based on a similarity of metadata of other user photos that have been matched to that event.
  • the correlation component 315 may evaluate such metadata against the knowledge graph 118 to identify a sporting event occurring at that time and place.
  • the knowledge graph 118 may specify attributes associated with that event, such as names, date, time, price range, weather, venue, and the like. Further, the correlation component 315 may correlate event information based on similarity of images captured by other users.
  • the correlation component 315 may identify a location where the image was captured (if listed in the knowledge graph 118 ) and information related to that location. For example, the correlation component 315 may determine that a given image was captured at an art museum. The correlation component 315 may impute the name of the museum, genres of art exhibited at the museum, as attributes for that image.
  • the correlation component 315 maintains a user-attribute matrix.
  • the correlation component 315 populates rows of the matrix with users and columns of the matrix with attributes imputed from the knowledge graph 118 to images captured by that user. As noted, each row represents a user, and each column represents an attribute. Cells of the matrix include a value representing the number of times a given attribute has been observed in the images. When the correlation component 315 identifies an attribute in a given image, the correlation component 315 increments the cell value.
  • the taxonomy component 320 evaluates the user-attribute matrix to determine concepts to associate with a given user. As stated, a concept is a cluster of related attributes.
  • the taxonomy component 320 may perform machine learning techniques, such as latent Dirichlet analysis (LDA) to decompose the user-attribute matrix into sub-matrices and derive concepts from user attributes. Such techniques also allow the taxonomy component 320 to identify concept hierarchies and build a user interest taxonomy.
  • LDA latent Dirichlet analysis
  • FIG. 4 illustrates a method 400 for building a knowledge graph used to impute attributes onto images, according to one embodiment.
  • method 400 begins at step 405 , where the scraping component 310 extracts raw text from a collection of data sources to identify events and other external information provided by the data sources.
  • the external sources may include local news and media websites, online event schedules for performance venues, calendars published by schools, government, or private enterprises, online schedules and ticket sales, and the like.
  • the scraping component 310 tokenizes the raw text obtained from the external sources to generate word and phrase tokens. To do so, the knowledge scraping component 310 may use any suitable NLP or pattern matching techniques.
  • the scraping component 310 identifies relevant terms in the tokenized text.
  • relevant terms for an event may include an event name, a date, time, location, key words in a description, and the like.
  • relevant terms for an event related to a flight schedule would include a departing airport, arrival airport, departure time, arrival time, and the like.
  • the knowledge scraping component 310 may perform NLP pattern matching techniques to do so.
  • the knowledge scraping component 310 builds the knowledge graph 118 from the attributes and event data.
  • FIG. 5 illustrates a method 500 for imputing knowledge graph attributes onto a given image, according to one embodiment.
  • the aggregation component 305 maintains metadata collections images by user.
  • Method 500 begins at step 505 , where the correlation component 315 accesses image metadata corresponding to an image captured by a user. In particular, the correlation component 315 evaluates time and location metadata of the image.
  • the correlation component 315 compares time and location metadata with the event information stored in the knowledge graph 118 . That is, the correlation component 315 correlates the time and location metadata to a given location in the knowledge graph 118 . Doing so allows the correlation component 315 to identify information associated with that location. For example, for an image captured at a golf course, the correlation component may identify information such as the name of the golf course, type of offerings provided by the golf course, and any information about events taking place at the time the image was taken. The correlation component 315 then determines which attributes to impute to the image based on the information. Once determined, at step 515 , the correlation component 315 performs the following for each attribute.
  • the correlation component 315 determines whether the attribute is present in the user-attribute matrix. As stated, the correlation component 315 maintains a two-dimensional user-attribute matrix, where each row represents a user and each column represents an attribute. If a column corresponding to an attribute imputed to an image is not present, then the correlation component 315 adds a column for that attribute to the matrix (step 525 ). If the corresponding column is present, then at step 530 , the correlation component 315 increments the value of that attribute in the row of the given user.
  • the analysis tool 117 may learn one or more concepts by evaluating the user-attribute matrix, e.g., by performing machine learning techniques (e.g., latent Dirichlet allocation, non-negative matrix factorization, etc.) over the user-attribute matrix.
  • the learned concepts form an interest taxonomy, which the analysis tool may use to identify latent interests of a given user.
  • FIG. 6 illustrates an application server computing system 600 configured to impute knowledge graph attributes onto image metadata, according to one embodiment.
  • the computing system 600 includes, without limitation, a central processing unit (CPU) 605 , a network interface 615 , a memory 620 , and storage 630 , each connected to a bus 617 .
  • the computing system 600 may also include an I/O device interface 610 connecting I/O devices 612 (e.g., keyboard, mouse, and display devices) to the computing system 600 .
  • I/O device interface 610 connecting I/O devices 612 (e.g., keyboard, mouse, and display devices) to the computing system 600 .
  • the computing elements shown in computing system 600 may correspond to a physical computing system (e.g., a system in a data center) or may be a virtual computing instance executing within a computing cloud.
  • the CPU 605 retrieves and executes programming instructions stored in the memory 620 as well as stores and retrieves application data residing in the memory 620 .
  • the interconnect 617 is used to transmit programming instructions and application data between the CPU 605 , I/O devices interface 610 , storage 630 , network interface 615 , and memory 620 .
  • CPU 605 is included to be representative of a single CPU, multiple CPUs, a single CPU having multiple processing cores, and the like.
  • the memory 620 is generally included to be representative of a random access memory.
  • the storage 630 may be a disk drive storage device. Although shown as a single unit, the storage 630 may be a combination of fixed and/or removable storage devices, such as fixed disc drives, removable memory cards, or optical storage, network attached storage (NAS), or a storage area-network (SAN).
  • NAS network attached storage
  • SAN storage area-network
  • the memory 620 includes an application service 622 and an analysis tool 624 .
  • the storage 630 includes a knowledge graph 634 , and one or more user interest taxonomies 636 .
  • the application service 622 provides access to various services of a multimedia service platform to mobile devices.
  • the analysis tool 624 generates a user interest taxonomy 636 based on image metadata of images taken by users.
  • the analysis tool 624 builds the knowledge graph 634 from external data sources. To do so, the analysis tool 624 performs NLP techniques on the raw text obtained from the data sources to identify relevant terms related to events, moments, weather, etc. Further, the analysis tool 624 may impute information from the knowledge graph 634 images submitted to the multimedia service platform, i.e., associate one or more attributes of the knowledge graph 634 to each image. To do so, the analysis tool 624 may correlate image metadata, e.g., metadata describing spatiotemporal features of the image, with attributes provided in the knowledge graph 634 , such as event information, weather, and the like. In addition, the analysis tool 624 generates a user interest taxonomy 636 inferred from the attributes.
  • image metadata e.g., metadata describing spatiotemporal features of the image
  • embodiments may be embodied as a system, method or computer program product. Accordingly, embodiments may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Furthermore, embodiments may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
  • the computer readable medium may be a computer readable signal medium or a computer readable storage medium.
  • a computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing.
  • a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus or device.
  • each block in the flowchart or block diagrams may represent a module, segment or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s).
  • the functions noted in the block may occur out of the order noted in the figures.
  • two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved.
  • Each block of the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations can be implemented by special-purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Library & Information Science (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Game Theory and Decision Science (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Multimedia (AREA)
  • Automation & Control Theory (AREA)
  • Fuzzy Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Techniques are disclosed herein for imputing attributes to multimedia content (e.g., an image or a video) based on metadata of the multimedia content. An analysis tool of a multimedia service platform evaluates content metadata to identify at least a time and a first location at which the content was captured. The time and first location is correlated with a knowledge graph. The knowledge graph stores information describing a plurality of locations, including the first location. The knowledge graph also stores information describing events scheduled to occur at one or more of the plurality of locations. The analysis tool identifies, from the correlated information, one or more of the attributes of the first location to impute to the content. Thereafter, the analysis tool imputes the identified attributes to the content.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • This application claims priority to U.S. Provisional Application No. 62/093,372, filed Dec. 19, 2014. The content of the aforementioned application is incorporated by reference in its entirety.
  • BACKGROUND
  • 1. Field
  • Embodiments of the present disclosure generally relate to data analytics. More specifically, to imputing information from a knowledge graph to an image based on image metadata.
  • 2. Description of the Related Art
  • Individuals take images to capture personal experiences and events. The images can represent mementos of various times and places experienced in an individual's life.
  • In addition, mobile devices (e.g., smart phones, tablets, etc.) allow individuals to easily capture both digital images as well as record video. For instance, cameras in mobile devices have steadily improved in quality and are can capture high-resolution images. Further, mobile devices now commonly have a storage capacity that can store thousands of images. And because individuals carry smart phones around with them, they can capture images and videos virtually anywhere.
  • This has resulted in an explosion of multimedia content, as virtually anyone can capture and share digital images and videos via text message, image services, social media, video services, and the like. This volume of digital multimedia, now readily available, provides a variety of information.
  • SUMMARY
  • One embodiment presented herein describes a method for imputing attributes to multimedia content based on the metadata of the content. The method generally includes evaluating content metadata to identify at least a time and a first location at which the content was captured. The method also includes correlating the time and the first location with a knowledge graph. The knowledge graph stores information describing a plurality of locations, including the first location. The knowledge graph also describes events scheduled to occur at one or more of the plurality of locations. The method also includes identifying, from the correlated information, one or more of the attributes of the first location to impute to the content. The identified attributes are imputed to the content.
  • Other embodiments include, without limitation, a computer-readable medium that includes instructions that enable a processing unit to implement one or more aspects of the disclosed methods as well as a system having a processor, memory, and application programs configured to implement one or more aspects of the disclosed methods.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • So that the manner in which the above recited features of the present disclosure can be understood in detail, a more particular description of the disclosure, briefly summarized above, may be had by reference to embodiments, some of which are illustrated in the appended drawings. It is to be noted, however, that the appended drawings illustrate only exemplary embodiments and are therefore not to be considered limiting of its scope, may admit to other equally effective embodiments.
  • FIG. 1 illustrates an example computing environment, according to one embodiment.
  • FIG. 2 further illustrates the mobile application described relative to FIG. 1, according to one embodiment.
  • FIG. 3 further illustrates the analysis tool described relative to FIG. 1, according to one embodiment.
  • FIG. 4 illustrates a method for building a knowledge graph used to impute attributes onto image metadata, according to one embodiment.
  • FIG. 5 illustrates a method for imputing knowledge graph attributes onto image metadata, according to one embodiment.
  • FIG. 6 illustrates an application server computing system configured to impute knowledge graph attributes onto image metadata, according to one embodiment.
  • To facilitate understanding, identical reference numerals have been used, where possible, to designate identical elements that are common to the figures. It is contemplated that elements and features of one embodiment may be beneficially incorporated in other embodiments without further recitation.
  • DETAILED DESCRIPTION
  • Embodiments presented herein describe techniques for inferring user interests from metadata associated with digital multimedia (e.g., images and video). Digital multimedia provides a wealth of information valuable to third parties (e.g., advertisers, marketers, and the like). For example, assume an individual takes pictures at a golf course using a mobile device (e.g., a smart phone, tablet, etc.). Further, assume that the pictures are the only indication the individual was at the golf course (e.g., because the individual made only cash purchases and signed no registers). Metadata associated with this image can place the individual at the golf course at a specific time. Further, event data could be used to correlate whether there was going on at that time (e.g., a specific tournament). Such information may be useful to third parties, e.g., for targeted advertising and recommendations.
  • However, an advertiser might not be able to identify an effective audience for targeting a given product or service based on such information alone. Even if image metadata places an individual at a golf course at a particular point of time, the advertiser might draw inaccurate inferences about the individual. For example, the advertiser might assume that because the metadata places the individual at a high-end golf course, the individual is interested in high-end golf equipment. The advertiser might then recommend other high-end equipment or other golf courses to that individual. If the individual rarely plays golf or does not usually spend money at high-end locations. Such recommendations may lead to low conversion rates for the advertiser. Historically, advertisers have been generally forced to accept low conversation rates, as techniques for identifying individuals likely to be receptive to or interested in a given product or service are often ineffective.
  • Embodiments presented herein describe techniques for inferring user interests based on metadata of digital multimedia. Specifically, embodiments describe techniques for imputing knowledge graph attributes to digital images and videos using metadata. In one embodiment, a multimedia service platform provides a software development kit (SDK) that third parties may use in mobile applications of third parties (e.g., retailers, marketers, etc.) to access an application programming interface (API) of the platform. The mobile application can use the API to upload images and videos to the platform from a mobile device of a user. Further, the multimedia service platform may identify patterns from metadata extracted from images and videos. The metadata may describe where and when a given image or video was taken. Further, in many cases, embodiments presented herein can identify latent relationships between user interests from collections of image metadata from multiple users. For example, if many users who take pictures at golf courses also take pictures at an unrelated event (e.g., take pictures of a traveling museum exhibit) then the system disclosed herein can discover a relationship between the interests. Thereafter, advertising related to golfing products and services could be targeted to individuals who publish pictures of the travelling museum exhibit, regardless of any other known interest in golf.
  • In one embodiment, the multimedia service platform evaluates metadata corresponding to each image or video submitted to the platform against a knowledge graph. The knowledge graph provides a variety of information about events, places, dates, times, etc. that may be compared with metadata. For example, the knowledge graph may include weather data, location data, event data, and online encyclopedia data. For instance, attributes associated with an event may include a name, location, start time, end time, price range, etc. The multimedia service platform correlates spatiotemporal metadata from a digital image with a specific event in the knowledge graph. That is, the knowledge graph is used to impute attributes related to events, places, dates, times, etc., to a given digital multimedia file based on the metadata provided with that file.
  • To build the knowledge graph, a tool extracts unstructured and structured text data from external sources, such as local news and media websites, online event schedules for performance venues, calendars published by schools, government, or private enterprises, online schedules and ticket sales, etc. The tool applies pattern matching and Natural Language Processing (NLP) techniques to recognize relevant content from the text. For example, pattern matching and NLP techniques may be used to identify location, performer, ticket price range, genre, from a calendar of events at a particular venue. In other cases, NLP techniques may be used to derive information about a given location, e.g., that a given physical location is a park, a school, or a ski resort, irrespective of any particular event.
  • In one embodiment, the multimedia service platform imputes attributes related to events, locations, etc to images captured by users. That is, the multimedia service platform associates attributes of the knowledge graph with images uploaded to the platform by a user. To do so, an analysis tool may retrieve metadata associated with an image or video published to the platform. The analysis tool compares this metadata to identify attributes to associate with the image or video. For example, the analysis tool may determine (from the knowledge graph) that an image was taken during a performance concert hall based on the time and location metadata of the image. The knowledge graph may impute a variety of attributes associated with the event to the image, e.g., a price range for the performance, weather conditions, an audience size, a description of a music or other genera related to the performance (e.g., a rock concert or a Broadway musical), number of users in attendance, etc. In a simpler case, the location of an image metadata may indicate a given activity apart from any scheduled event (e.g., a picture taken on the grounds of a golf course or ski resort). Even in such cases, other inferences (and therefore attributes form the knowledge graph) may be imputed to an image. For example, consider an image with location metadata matching the location of a ski resort. In such a case, different attributes could be imputed depending on the date an image was taken. Thus, in the winter, attributes related to snow sports could be imputed to this image. In contrast, in the summer, attributes related to hiking or mountain biking could be imputed.
  • In one embodiment, the analysis tool represents attributes imputed to images and videos from a user base in a user-attribute matrix, where each row of the matrix represents a distinct user and each column represents an attribute from the knowledge graph that can be imputed to an image or video. The analysis tool may add columns to the user-attribute matrix as additional attributes are identified. The cells of a given row indicate how many times a given attribute has been imputed to an image or video published by a user corresponding to that row. Accordingly, when the analysis tool imputes an attribute to an image or video (based on the metadata), a value for that attribute is incremented in the user-attribute matrix. Imputing information from the knowledge graph to a collection of images of a given user allows the multimedia service platform to identify useful information about that user. For instance, the analysis tool may identify that a user often attends sporting events, movies, participates in a particular recreational event (e.g., skiing or golf), etc. In addition, the analysis tool may identify information about events that the user attends, such as whether the events are related to a given sports team, whether the events are related to flights from an airport, a range specifying how much the event may cost, etc.
  • In one embodiment, the analysis tool may identify concepts to associate with a user based on the attributes (or attribute counts) reflected in the user-attribute matrix. A concept may be associated with a set of attributes in the knowledge graph. For example, attributes of “Wrigley Field,” “Chicago Cubs,” “game,” and “Sammy Sosa” may be associated with a “baseball” concept. The analysis tool may determine what concepts to associate with a user. That is, the analysis tool may identify that a user has an interest in a given concept from the attributes in the user-attribute matrix.
  • Further, the analysis tool may generate an interest taxonomy based on the user-attribute matrix. In one embodiment, an interest taxonomy is a hierarchical representation of user interests based on the concepts. For example, the interest taxonomy can identify general groups (e.g., sports, music, and travel) and sub-groups (e.g., basketball, rock music, and discount airlines) of interest identified from the concepts.
  • The multimedia service platform may use the interest taxonomy to discover latent relationships between concepts. For example, the multimedia service platform may build a predictive learning model using the interest taxonomy. The multimedia service platform could train the predictive learning model using existing user-to-concept associations. Doing so would allow the multimedia service platform use the model to predict associations for users to other concepts that the user is not currently associated with. Further, the multimedia service platform may map product feeds of third party systems to the user interest taxonomy to identify products to recommend to a given user. Doing so allows advertisers to improve recommendations presented to a given user.
  • Note, the following description relies on digital images captured by a user and metadata as a reference example of imputing knowledge graph attributes onto those images based on the metadata. However, one of skill in the art will recognize that the embodiments presented herein may be adapted to other digital multimedia that include time and location metadata, such as digital video recorded on a mobile device. Further, an analysis tool may be able to extract additional metadata features from such videos, such as the length of the video, which can be used relative to the techniques described herein.
  • FIG. 1 illustrates an example computing environment 100, according to one embodiment. As shown, the computing environment 100 includes one or more mobile devices 105, an extract, transform, and load (ETL) server 110, an application server 115, and a third party system 120, connected to a network 125 (e.g., the Internet).
  • In one embodiment, the mobile devices 105 include a mobile application 106 which allows users to interact with a multimedia service platform (represented by the ETL server 110 and the application server 115). In one embodiment, the mobile application 106 is developed by a third-party organization (e.g., a retailer, social network provider, fitness tracker developer, etc.). The mobile application 106 may send images 108 and associated metadata to the multimedia service platform. In one embodiment, the mobile application 106 may access APIs exposed by a software development kit (SDK) distinct to the platform.
  • In another embodiment, the mobile application 106 may access a social media service (application service 116) provided by the multimedia service platform. The social media service allows users to capture, share, and comment on images 108 as a part of existing social networks (or in conjunction) with those social networks. For example, a user can link a social network account to the multimedia service platform through application 106. Thereafter, the user may capture a number of images and submit the images 108 to the social network. In turn, the application 106 retrieves the metadata from the submitted images. Further, the mobile application 106 can send images 108 and metadata to the multimedia service platform. The image service platform uses the metadata to infer latent interests of the user.
  • In any case, the mobile application 106 extracts Exchangeable Image Format (EXIF) metadata from each image 108. The mobile application 106 can also extract other metadata (e.g., PHAsset metadata in Apple iOS devices) describing additional information, such as GPS data. In addition, the mobile application 106 may perform extract, transform, and load (ETL) operations on the metadata to format the metadata for use by components of the image service platform. For example, the mobile application 106 may determine additional information based on the metadata, such as whether a given image was taken during daytime or nighttime, whether the image was taken indoors or outdoors, whether the image is a “selfie,” etc. Further, the mobile application 106 also retrieves metadata describing application use. Such metadata includes activity by the user on the mobile application 106, such as image views, tagging, etc. Further, as described below, the mobile application 106 provides functionality that allows a user to search through a collection of images by the additional metadata, e.g., searching a collection of images that are “selfies” and taken in the morning.
  • In one embodiment, the ETL server 110 includes an ETL application 112. The ETL application 112 receives streams of image metadata 114 (e.g., the EXIF metadata, PHAsset metadata, and additional metadata) from mobile devices 105. Further, the ETL application 112 cleans, stores, and indexes the image metadata 114 for use by the application server 115. Once processed, the ETL application 112 may store the image metadata 114 in a data store (e.g., such as in a database) for access by the application server 115.
  • In one embodiment, an application service 116 communicates with the mobile application 106. In one embodiment, the application server 115 may be a physical computing system or a virtual machine computing instance in the cloud. Although depicted as a single server, the application server 115 may comprise multiple servers configured as a cluster (e.g., via the Apache Spark framework). This architecture allows the application servers 115 to process large amounts of images and image metadata sent from mobile applications 106.
  • As shown, the application server 115 includes an analysis tool 117, a knowledge graph 118, and a user interest taxonomy 119. In one embodiment, the analysis tool 117 generates the user interest taxonomy 119 based on image metadata 114 from image collections of multiple users. As described below, the user interest taxonomy 119 represents interests inferred from image attributes identified from the knowledge graph 118.
  • In one embodiment, the knowledge graph 118 includes a collection of attributes which may be imputed to an image. Examples of attributes include time and location information, event information, genres, price ranges, weather, subject matter, and the like. The analysis tool 117 builds the knowledge graph 118 using weather data, location data, events data, encyclopedia data, and the like from a variety of data sources.
  • In one embodiment, the analysis tool 117 imputes attributes from the knowledge graph 118 to the images 108 based on the metadata 114. That is, the analysis tool 117 may correlate time and location information in image metadata 114 to attributes in the knowledge graph 118. For example, assume that a user captures an image 108 of a baseball game. Metadata 114 for that image 108 may include a GPS, a date, and a time when the image 108 was captured. The analysis tool 117 can correlate this information to attributes such as weather conditions at that time and location (e.g., “sunny”), an event name (e.g., “Dodgers Game”), teams playing at that game (e.g., “Dodgers” and “Cardinals”), etc. The analysis tool 117 associates the imputed attributes with the user who took the image. As noted, e.g., a row in a user attribute matrix may be updated to reflect the imputed attributes of each new image taken by that user. Further, the analysis tool 117 may perform machine learning techniques, such as latent Dirichlet analysis (LDA), to decompose the user-attribute matrix into sub-matrices. Doing so allows the analysis tool 117 to identify concepts, i.e., clusters of attributes. The analysis tool 117 may use the user interest taxonomy 119 to generate product recommendations. The analysis tool 117 may also use the interest taxonomy 119 identify one or more users that may be interested in a product or service. For example, the analysis tool 117 may extract information from a product feed 121 of a third party system 120. In one embodiment, the product feed 121 is a listing of products or services of a third party, such as a retailer. The analysis tool 117 may identify, from the product feed 121, one or more attributes describing each product. For example, a product of a shoe retailer may have attributes such as “shoe,” “running,” “menswear,” and so on. The analysis tool 117 can map the attributes of the product feed 121 with the interest taxonomy 119. Doing so allows the analysis tool 117 to identify products and services from the feed 121 that align with interests in the interest taxonomy. In turn, third parties can target users who may be interested in the identified products and services.
  • FIG. 2 illustrates mobile application 106, according to one embodiment. As shown, mobile application 106 includes a SDK component 200 with APIs configured to send image and metadata information to the multimedia service platform. The SDK component 200 further includes an extraction component 205, a search and similarity component 210, and a log component 215. In one embodiment, the extraction component 205 extracts metadata (e.g., EXIF metadata, PHAsset metadata, and the like) from images captured using a mobile device 105. Further, the extraction component 205 may perform ETL preprocessing operations on the metadata. For example, the extraction component 205 may format the metadata for the search and similarity component 210 and the log component 215.
  • In one embodiment, the search and similarity component 210 infers additional metadata from an image based on the metadata (e.g., spatiotemporal metadata) retrieved by the extraction component 205. Examples of additional metadata include whether a given image was captured at daytime or nighttime, whether the image was captured indoors or outdoors, whether the image was edited, weather conditions when the image was captured, etc. Further, the search and similarity component 210 generates a two-dimensional image feature map from a collection of images captured on a given mobile device 105, where each row represents an image and columns represent metadata attributes. Cells of the map indicate whether an image has a particular attribute. The image feature map allows the search and similarity component 210 to provide analytics and search features for the collection of images captured by a mobile device. For example, a user of the mobile application 106 may search for images on their mobile device which have a given attribute, such as images taken during daytime or taken from a particular location. In turn, the search and similarity component 210 may evaluate the image map to identify photos having such an attribute.
  • In one embodiment, the log component 215 evaluates the image metadata. For example, the log component 215 records metadata sent to the ETL server 110. Once received, the application 112 performs ETL operations, e.g., loading the metadata into a data store (such as a database). The metadata is accessible by the analysis tool 117.
  • FIG. 3 illustrates an example of components of the analysis tool, according to one embodiment. As shown, the analysis tool 117 includes an aggregation component 305, a scraping component 310, a correlation component 315, and a taxonomy component 320.
  • In one embodiment, the aggregation component 305 receives streams of image metadata corresponding to images captured by users of application 106 by users from the ETL server 110. Once received, the aggregation component 305 organizes images and metadata by user. The metadata may include both raw image metadata (e.g., time and GPS information) and inferred metadata (e.g., daytime or nighttime image, indoor or outdoor image, “selfie” image, etc.). To organize metadata by user, the aggregation component 305 evaluates log data from the ETL server 110 to identify image metadata from different devices (and presumably different users) and metadata type (e.g., whether the metadata corresponds to image metadata or application usage data).
  • In one embodiment, the scraping component 310 builds (and later maintains) the knowledge graph 118 using any suitable data source, such as local news and media websites, online event schedules for performance venues, calendars published by schools, government, or private enterprises, online schedules and ticket sales. For example, the scraping component 310 may evaluate event websites (e.g., such as calendar and event pages on news and media sites) to identify events that are scheduled to occur in a given area or location.
  • The scraping component 310 also identifies information about the event, such as event headliner (e.g., name of person, team, or group), time of the event, location of the event, price range of the event, and the like. In one embodiment, the scraping component 310 uses NLP techniques to tokenize raw text from the data sources and perform pattern matching on the tokenized data. For example, pattern matching techniques may be used to identify words and phrases that correspond to event information, e.g., by determining patterns that likely correspond to fields in an event listing (e.g., “Name,” “Date,” etc.). The scraping component 310 determines a set of attributes related to each event to store in the knowledge graph 118.
  • Further, the scraping component 310 can evaluate sources relating to a location, e.g., public parks, landmarks, museums, and the like. For example, the scraping component 310 may evaluate an art museum website to identify information about the art museum, such as a location, schedule of events, genres of art on display, and the like. In addition, the scraping component 310 can evaluate sources relating to travel, such as websites of airlines and tourist agencies. The scraping component 310 may identify information such as arrival and departure times, schedules, airport names, train station names, and the like.
  • In one embodiment, the correlation component 315 receives new images taken by a given user. The correlation component 315 compares the image metadata associated with the user with information in the knowledge graph 118. In particular, the component 315 imputes attributes from the knowledge graph 118 to an image based on the time and location information metadata of that image. The correlation component 315 may update a user-to-attribute matrix reflecting what attributes have been imputed to the image. As noted, each row in the user-attribute matrix represents a user and columns represent attributes of the knowledge graph 118. Cells in a row reflect how many times an attribute has been imputed to images taken by the corresponding user.
  • In one embodiment, to impute attributes from the knowledge graph 118 to a given image, the correlation component 315 evaluates time and location metadata of the image against the knowledge graph 118. The correlation component 315 determines whether the image metadata matches a location and/or event in the knowledge graph. The information may be matched using a specified spatiotemporal range, e.g., within a time period of the event, within a set of GPS coordinate range, etc. In one embodiment, the component 315 may further match the information based on a similarity of metadata of other user photos that have been matched to that event.
  • For example, assume image metadata indicates the image was taken at 7:14 PM at GPS coordinates generally matching a baseball stadium. The correlation component 315 may evaluate such metadata against the knowledge graph 118 to identify a sporting event occurring at that time and place. The knowledge graph 118 may specify attributes associated with that event, such as names, date, time, price range, weather, venue, and the like. Further, the correlation component 315 may correlate event information based on similarity of images captured by other users.
  • In one embodiment, if the metadata does not match an event in the knowledge graph 118, the correlation component 315 may identify a location where the image was captured (if listed in the knowledge graph 118) and information related to that location. For example, the correlation component 315 may determine that a given image was captured at an art museum. The correlation component 315 may impute the name of the museum, genres of art exhibited at the museum, as attributes for that image.
  • In one embodiment, the correlation component 315 maintains a user-attribute matrix. The correlation component 315 populates rows of the matrix with users and columns of the matrix with attributes imputed from the knowledge graph 118 to images captured by that user. As noted, each row represents a user, and each column represents an attribute. Cells of the matrix include a value representing the number of times a given attribute has been observed in the images. When the correlation component 315 identifies an attribute in a given image, the correlation component 315 increments the cell value.
  • In one embodiment, the taxonomy component 320 evaluates the user-attribute matrix to determine concepts to associate with a given user. As stated, a concept is a cluster of related attributes. The taxonomy component 320 may perform machine learning techniques, such as latent Dirichlet analysis (LDA) to decompose the user-attribute matrix into sub-matrices and derive concepts from user attributes. Such techniques also allow the taxonomy component 320 to identify concept hierarchies and build a user interest taxonomy.
  • FIG. 4 illustrates a method 400 for building a knowledge graph used to impute attributes onto images, according to one embodiment. As shown, method 400 begins at step 405, where the scraping component 310 extracts raw text from a collection of data sources to identify events and other external information provided by the data sources. As stated, the external sources may include local news and media websites, online event schedules for performance venues, calendars published by schools, government, or private enterprises, online schedules and ticket sales, and the like. At step 410, the scraping component 310 tokenizes the raw text obtained from the external sources to generate word and phrase tokens. To do so, the knowledge scraping component 310 may use any suitable NLP or pattern matching techniques.
  • At step 415, the scraping component 310 identifies relevant terms in the tokenized text. For example, relevant terms for an event may include an event name, a date, time, location, key words in a description, and the like. As another example, relevant terms for an event related to a flight schedule would include a departing airport, arrival airport, departure time, arrival time, and the like. The knowledge scraping component 310 may perform NLP pattern matching techniques to do so. The knowledge scraping component 310 builds the knowledge graph 118 from the attributes and event data.
  • FIG. 5 illustrates a method 500 for imputing knowledge graph attributes onto a given image, according to one embodiment. As noted, the aggregation component 305 maintains metadata collections images by user. Method 500 begins at step 505, where the correlation component 315 accesses image metadata corresponding to an image captured by a user. In particular, the correlation component 315 evaluates time and location metadata of the image.
  • At step 510, the correlation component 315 compares time and location metadata with the event information stored in the knowledge graph 118. That is, the correlation component 315 correlates the time and location metadata to a given location in the knowledge graph 118. Doing so allows the correlation component 315 to identify information associated with that location. For example, for an image captured at a golf course, the correlation component may identify information such as the name of the golf course, type of offerings provided by the golf course, and any information about events taking place at the time the image was taken. The correlation component 315 then determines which attributes to impute to the image based on the information. Once determined, at step 515, the correlation component 315 performs the following for each attribute. At step 520, the correlation component 315 determines whether the attribute is present in the user-attribute matrix. As stated, the correlation component 315 maintains a two-dimensional user-attribute matrix, where each row represents a user and each column represents an attribute. If a column corresponding to an attribute imputed to an image is not present, then the correlation component 315 adds a column for that attribute to the matrix (step 525). If the corresponding column is present, then at step 530, the correlation component 315 increments the value of that attribute in the row of the given user. As stated, the analysis tool 117 may learn one or more concepts by evaluating the user-attribute matrix, e.g., by performing machine learning techniques (e.g., latent Dirichlet allocation, non-negative matrix factorization, etc.) over the user-attribute matrix. The learned concepts form an interest taxonomy, which the analysis tool may use to identify latent interests of a given user.
  • FIG. 6 illustrates an application server computing system 600 configured to impute knowledge graph attributes onto image metadata, according to one embodiment. As shown, the computing system 600 includes, without limitation, a central processing unit (CPU) 605, a network interface 615, a memory 620, and storage 630, each connected to a bus 617. The computing system 600 may also include an I/O device interface 610 connecting I/O devices 612 (e.g., keyboard, mouse, and display devices) to the computing system 600. Further, in context of this disclosure, the computing elements shown in computing system 600 may correspond to a physical computing system (e.g., a system in a data center) or may be a virtual computing instance executing within a computing cloud.
  • The CPU 605 retrieves and executes programming instructions stored in the memory 620 as well as stores and retrieves application data residing in the memory 620. The interconnect 617 is used to transmit programming instructions and application data between the CPU 605, I/O devices interface 610, storage 630, network interface 615, and memory 620. Note, CPU 605 is included to be representative of a single CPU, multiple CPUs, a single CPU having multiple processing cores, and the like. And the memory 620 is generally included to be representative of a random access memory. The storage 630 may be a disk drive storage device. Although shown as a single unit, the storage 630 may be a combination of fixed and/or removable storage devices, such as fixed disc drives, removable memory cards, or optical storage, network attached storage (NAS), or a storage area-network (SAN).
  • Illustratively, the memory 620 includes an application service 622 and an analysis tool 624. The storage 630 includes a knowledge graph 634, and one or more user interest taxonomies 636. The application service 622 provides access to various services of a multimedia service platform to mobile devices. The analysis tool 624 generates a user interest taxonomy 636 based on image metadata of images taken by users.
  • Further, the analysis tool 624 builds the knowledge graph 634 from external data sources. To do so, the analysis tool 624 performs NLP techniques on the raw text obtained from the data sources to identify relevant terms related to events, moments, weather, etc. Further, the analysis tool 624 may impute information from the knowledge graph 634 images submitted to the multimedia service platform, i.e., associate one or more attributes of the knowledge graph 634 to each image. To do so, the analysis tool 624 may correlate image metadata, e.g., metadata describing spatiotemporal features of the image, with attributes provided in the knowledge graph 634, such as event information, weather, and the like. In addition, the analysis tool 624 generates a user interest taxonomy 636 inferred from the attributes.
  • The preceding discussion presents a variety of embodiments. However, the present disclosure is not limited to the specifically described embodiments. Instead, any combination of the following features and elements, whether related to different embodiments or not, is contemplated to implement and practice the techniques described herein. Furthermore, although embodiments of the present disclosure may achieve advantages over other possible solutions and/or over the prior art, whether or not a particular advantage is achieved by a given embodiment is not limiting of the present disclosure. Thus, the following aspects, features, embodiments and advantages are merely illustrative and are not considered elements or limitations of the appended claims except where explicitly recited in a claim(s).
  • Aspects may be embodied as a system, method or computer program product. Accordingly, embodiments may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Furthermore, embodiments may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
  • Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus or device.
  • The flowchart and block diagrams in the figures illustrate the architecture, functionality and operation of possible implementations of systems, methods and computer program products according to various embodiments presented herein. In this regard, each block in the flowchart or block diagrams may represent a module, segment or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. Each block of the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations can be implemented by special-purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
  • While the foregoing is directed to embodiments of the present disclosure, other and further embodiments of the disclosure may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow.

Claims (23)

What is claimed is:
1. A method for imputing attributes to multimedia content based on metadata of the content, the method comprising:
evaluating content metadata to identify at least a time and a first location at which the content was captured;
correlating the time and the first location with a knowledge graph, wherein the knowledge graph stores information describing a plurality of locations, including the first location, and describes events scheduled to occur at one or more of the plurality of locations;
identifying, from the correlated information, one or more of the attributes of the first location to impute to the content; and
imputing the identified attributes to the content.
2. The method of claim 1, wherein identified attributes include a name of the first location, an event scheduled to occur at the first location during the time.
3. The method of claim 2, wherein the identified attributes further include at least one of a name of the event, a start time of the event, and a price range of the event.
4. The method of claim 1, further comprising:
for each attribute imputed to the content, updating a user-attribute matrix to reflect the attribute imputed to the content.
5. The method of claim 3, further comprising:
evaluating the user-attribute matrix to determine at least a first concept, wherein the first concept is determined based on a co-occurrence between one or more attributes in the user-attribute matrix.
6. The method of claim 1, wherein the data sources includes at least one of an events source, an online encyclopedia source, and a weather source.
7. The method of claim 1, wherein the time and first location are correlated with the knowledge graph within a specified spatiotemporal range.
8. The method of claim 1, wherein the multimedia content is one of an image or a video.
9. A non-transitory computer-readable storage medium storing instructions, which, when executed on a processor, performs an operation for imputing attributes to multimedia content based on metadata of the image, the operation comprising:
evaluating content metadata to identify at least a time and a first location at which the content was captured;
correlating the time and the first location with a knowledge graph, wherein the knowledge graph stores information describing a plurality of locations, including the first location, and describes events scheduled to occur at one or more of the plurality of locations;
identifying, from the correlated information, one or more of the attributes of the first location to impute to the content; and
imputing the identified attributes to the content.
10. The computer-readable storage medium of claim 9, wherein identified attributes include a name of the first location, an event scheduled to occur at the first location during the time.
11. The computer-readable storage medium of claim 10, wherein the identified attributes further include at least one of a name of the event, a start time of the event, and a price range of the event.
12. The computer-readable storage medium of claim 9, wherein the operation further comprises:
for each attribute imputed to the content, updating a user-attribute matrix to reflect the attribute imputed to the content.
13. The computer-readable storage medium of claim 12, wherein the operation further comprises:
evaluating the user-attribute matrix to determine at least a first concept, wherein the first concept is determined based on a co-occurrence between one or more attributes in the user-attribute matrix.
14. The computer-readable storage medium of claim 9, wherein the data sources includes at least one of an events source, an online encyclopedia source, and a weather source.
15. The computer-readable storage medium of claim 9, wherein the time and first location are correlated with the knowledge graph within a specified spatiotemporal range.
16. The computer-readable storage medium of claim 9, wherein the multimedia content is one of an image or a video.
17. A system, comprising:
a processor; and
a memory storing one or more application programs configured to perform an operation for imputing attributes to multimedia content based on metadata of the content, the operation comprising:
evaluating content metadata to identify at least a time and a first location at which the content was captured;
correlating the time and the first location with a knowledge graph, wherein the knowledge graph stores information describing a plurality of locations, including the first location, and describes events scheduled to occur at one or more of the plurality of locations;
identifying, from the correlated information, one or more of the attributes of the first location to impute to the content; and
imputing the identified attributes to the content.
18. The system of claim 17, wherein identified attributes include a name of the first location, an event scheduled to occur at the first location during the time.
19. The system of claim 18, wherein the identified attributes further include at least one of a name of the event, a start time of the event, and a price range of the event.
20. The system of claim 17, wherein the operation further comprises:
for each attribute imputed to the content, updating a user-attribute matrix to reflect the attribute imputed to the content.
21. The system of claim 17, wherein the data sources includes at least one of an events source, an online encyclopedia source, and a weather source.
22. The system of claim 17, wherein the time and first location are correlated with the knowledge graph within a specified spatiotemporal range.
23. The system of claim 17, wherein the multimedia content is one of an image or a video.
US14/616,197 2014-12-17 2015-02-06 Imputing knowledge graph attributes to digital multimedia based on image and video metadata Abandoned US20160203137A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/616,197 US20160203137A1 (en) 2014-12-17 2015-02-06 Imputing knowledge graph attributes to digital multimedia based on image and video metadata

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201462093372P 2014-12-17 2014-12-17
US14/616,197 US20160203137A1 (en) 2014-12-17 2015-02-06 Imputing knowledge graph attributes to digital multimedia based on image and video metadata

Publications (1)

Publication Number Publication Date
US20160203137A1 true US20160203137A1 (en) 2016-07-14

Family

ID=56129838

Family Applications (6)

Application Number Title Priority Date Filing Date
US14/616,197 Abandoned US20160203137A1 (en) 2014-12-17 2015-02-06 Imputing knowledge graph attributes to digital multimedia based on image and video metadata
US14/618,859 Active 2036-02-28 US9805098B2 (en) 2014-12-17 2015-02-10 Method for learning a latent interest taxonomy from multimedia metadata
US14/627,264 Abandoned US20160180402A1 (en) 2014-12-17 2015-02-20 Method for recommending products based on a user profile derived from metadata of multimedia content
US14/627,064 Active 2036-03-18 US9798980B2 (en) 2014-12-17 2015-02-20 Method for inferring latent user interests based on image metadata
US15/792,308 Abandoned US20180082200A1 (en) 2014-12-17 2017-10-24 Method for inferring latent user interests based on image metadata
US15/798,700 Abandoned US20180052855A1 (en) 2014-12-17 2017-10-31 Method for learning a latent interest taxonomy from multimedia metadata

Family Applications After (5)

Application Number Title Priority Date Filing Date
US14/618,859 Active 2036-02-28 US9805098B2 (en) 2014-12-17 2015-02-10 Method for learning a latent interest taxonomy from multimedia metadata
US14/627,264 Abandoned US20160180402A1 (en) 2014-12-17 2015-02-20 Method for recommending products based on a user profile derived from metadata of multimedia content
US14/627,064 Active 2036-03-18 US9798980B2 (en) 2014-12-17 2015-02-20 Method for inferring latent user interests based on image metadata
US15/792,308 Abandoned US20180082200A1 (en) 2014-12-17 2017-10-24 Method for inferring latent user interests based on image metadata
US15/798,700 Abandoned US20180052855A1 (en) 2014-12-17 2017-10-31 Method for learning a latent interest taxonomy from multimedia metadata

Country Status (1)

Country Link
US (6) US20160203137A1 (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160180235A1 (en) * 2014-12-17 2016-06-23 InSnap, Inc. Method for inferring latent user interests based on image metadata
CN106227820A (en) * 2016-07-22 2016-12-14 北京科技大学 A kind of construction method of Basic Theories of Chinese Medicine knowledge picture library
CN106934032A (en) * 2017-03-14 2017-07-07 软通动力信息技术(集团)有限公司 A kind of city knowledge mapping construction method and device
US10083162B2 (en) 2016-11-28 2018-09-25 Microsoft Technology Licensing, Llc Constructing a narrative based on a collection of images
CN109558018A (en) * 2017-09-27 2019-04-02 腾讯科技(深圳)有限公司 A kind of content displaying method, device and storage medium
US20190356620A1 (en) * 2018-05-18 2019-11-21 International Business Machines Corporation Social media integration for events
US10902573B2 (en) 2018-05-31 2021-01-26 International Business Machines Corporation Cognitive validation of date/time information corresponding to a photo based on weather information
CN113297392A (en) * 2021-06-02 2021-08-24 江苏数兑科技有限公司 Intelligent data service method based on knowledge graph
US11403328B2 (en) 2019-03-08 2022-08-02 International Business Machines Corporation Linking and processing different knowledge graphs
WO2023024098A1 (en) * 2021-08-27 2023-03-02 西门子股份公司 Knowledge graph generation method and apparatus and computer readable medium

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10331733B2 (en) * 2013-04-25 2019-06-25 Google Llc System and method for presenting condition-specific geographic imagery
US10891653B1 (en) * 2015-03-13 2021-01-12 A9.Com, Inc. Approaches for retrieval of electronic advertisements
US10255628B2 (en) * 2015-11-06 2019-04-09 Adobe Inc. Item recommendations via deep collaborative filtering
US20180032882A1 (en) * 2016-07-27 2018-02-01 Fuji Xerox Co., Ltd. Method and system for generating recommendations based on visual data and associated tags
CN106597439A (en) * 2016-12-12 2017-04-26 电子科技大学 Synthetic aperture radar target identification method based on incremental learning
US20190138943A1 (en) * 2017-11-08 2019-05-09 International Business Machines Corporation Cognitive visual conversation
US10762153B2 (en) 2017-11-27 2020-09-01 Adobe Inc. Collaborative-filtered content recommendations with justification in real-time
US10884769B2 (en) * 2018-02-17 2021-01-05 Adobe Inc. Photo-editing application recommendations
US11036811B2 (en) 2018-03-16 2021-06-15 Adobe Inc. Categorical data transformation and clustering for machine learning using data repository systems
US20190311416A1 (en) * 2018-04-10 2019-10-10 International Business Machines Corporation Trend identification and modification recommendations based on influencer media content analysis
US20210174367A1 (en) * 2018-05-02 2021-06-10 Visa International Service Association System and method including accurate scoring and response
US10339420B1 (en) * 2018-08-30 2019-07-02 Accenture Global Solutions Limited Entity recognition using multiple data streams to supplement missing information associated with an entity
US11341207B2 (en) 2018-12-10 2022-05-24 Ebay Inc. Generating app or web pages via extracting interest from images
CN109840268A (en) * 2018-12-23 2019-06-04 国网浙江省电力有限公司 A kind of universe data map construction method based on enterprise information model
US11373231B2 (en) 2019-01-31 2022-06-28 Walmart Apollo, Llc System and method for determining substitutes for a requested product and the order to provide the substitutes
US11373228B2 (en) 2019-01-31 2022-06-28 Walmart Apollo, Llc System and method for determining substitutes for a requested product
JP7098579B2 (en) * 2019-06-28 2022-07-11 富士フイルム株式会社 Information processing equipment and methods and programs
JP7129383B2 (en) * 2019-07-03 2022-09-01 富士フイルム株式会社 Image processing device, image processing method, image processing program, and recording medium storing the program
US11281734B2 (en) 2019-07-03 2022-03-22 International Business Machines Corporation Personalized recommender with limited data availability
BR112022012092A2 (en) * 2020-01-22 2022-08-30 Nestle Sa SOCIAL MEDIA INFLUENCER PLATFORM
CN111931069B (en) * 2020-09-25 2021-01-22 浙江口碑网络技术有限公司 User interest determination method and device and computer equipment
CN113656589B (en) * 2021-04-19 2023-07-04 腾讯科技(深圳)有限公司 Object attribute determining method, device, computer equipment and storage medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8359314B2 (en) * 2005-11-18 2013-01-22 Quiro Holdings, Inc. System and method for tagging images based on positional information
US20130085858A1 (en) * 2011-10-04 2013-04-04 Richard Bill Sim Targeting advertisements based on user interactions
US20140372102A1 (en) * 2013-06-18 2014-12-18 Xerox Corporation Combining temporal processing and textual entailment to detect temporally anchored events
US20150095303A1 (en) * 2013-09-27 2015-04-02 Futurewei Technologies, Inc. Knowledge Graph Generator Enabled by Diagonal Search
US20150363509A1 (en) * 2014-06-13 2015-12-17 Yahoo! Inc. Entity Generation Using Queries
US20160055409A1 (en) * 2014-08-19 2016-02-25 Qualcomm Incorporated Knowledge-graph biased classification for data

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6411724B1 (en) * 1999-07-02 2002-06-25 Koninklijke Philips Electronics N.V. Using meta-descriptors to represent multimedia information
WO2004008348A1 (en) * 2002-07-16 2004-01-22 Horn Bruce L Computer system for automatic organization, indexing and viewing of information from multiple sources
US7548929B2 (en) * 2005-07-29 2009-06-16 Yahoo! Inc. System and method for determining semantically related terms
US8145677B2 (en) * 2007-03-27 2012-03-27 Faleh Jassem Al-Shameri Automated generation of metadata for mining image and text data
US8055708B2 (en) * 2007-06-01 2011-11-08 Microsoft Corporation Multimedia spaces
US8611677B2 (en) * 2008-11-19 2013-12-17 Intellectual Ventures Fund 83 Llc Method for event-based semantic classification
US8458115B2 (en) * 2010-06-08 2013-06-04 Microsoft Corporation Mining topic-related aspects from user generated content
US8832080B2 (en) * 2011-05-25 2014-09-09 Hewlett-Packard Development Company, L.P. System and method for determining dynamic relations from images
JP5830784B2 (en) * 2011-06-23 2015-12-09 サイバーアイ・エンタテインメント株式会社 Interest graph collection system by relevance search with image recognition system
US9143530B2 (en) * 2011-10-11 2015-09-22 Citrix Systems, Inc. Secure container for protecting enterprise data on a mobile device
WO2014024043A2 (en) * 2012-08-06 2014-02-13 See-Out Pty. Ltd. System and method for determining graph relationships using images
US9454530B2 (en) * 2012-10-04 2016-09-27 Netflix, Inc. Relationship-based search and recommendations
US9218439B2 (en) * 2013-06-04 2015-12-22 Battelle Memorial Institute Search systems and computer-implemented search methods
WO2015017865A1 (en) * 2013-08-02 2015-02-05 Shoto, Inc. Discovery and sharing of photos between devices
US9864758B2 (en) * 2013-12-12 2018-01-09 Nant Holdings Ip, Llc Image recognition verification
US10074013B2 (en) * 2014-07-23 2018-09-11 Gopro, Inc. Scene and activity identification in video summary generation
US9652685B2 (en) * 2014-09-30 2017-05-16 Disney Enterprises, Inc. Generating story graphs with large collections of online images
US9412043B2 (en) * 2014-10-03 2016-08-09 EyeEm Mobile GmbH Systems, methods, and computer program products for searching and sorting images by aesthetic quality
US9754188B2 (en) * 2014-10-23 2017-09-05 Microsoft Technology Licensing, Llc Tagging personal photos with deep networks
US20160203137A1 (en) * 2014-12-17 2016-07-14 InSnap, Inc. Imputing knowledge graph attributes to digital multimedia based on image and video metadata
US9501466B1 (en) * 2015-06-03 2016-11-22 Workday, Inc. Address parsing system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8359314B2 (en) * 2005-11-18 2013-01-22 Quiro Holdings, Inc. System and method for tagging images based on positional information
US20130085858A1 (en) * 2011-10-04 2013-04-04 Richard Bill Sim Targeting advertisements based on user interactions
US20140372102A1 (en) * 2013-06-18 2014-12-18 Xerox Corporation Combining temporal processing and textual entailment to detect temporally anchored events
US20150095303A1 (en) * 2013-09-27 2015-04-02 Futurewei Technologies, Inc. Knowledge Graph Generator Enabled by Diagonal Search
US20150363509A1 (en) * 2014-06-13 2015-12-17 Yahoo! Inc. Entity Generation Using Queries
US20160055409A1 (en) * 2014-08-19 2016-02-25 Qualcomm Incorporated Knowledge-graph biased classification for data

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160180235A1 (en) * 2014-12-17 2016-06-23 InSnap, Inc. Method for inferring latent user interests based on image metadata
US9798980B2 (en) * 2014-12-17 2017-10-24 The Honest Company, Inc. Method for inferring latent user interests based on image metadata
CN106227820A (en) * 2016-07-22 2016-12-14 北京科技大学 A kind of construction method of Basic Theories of Chinese Medicine knowledge picture library
US10083162B2 (en) 2016-11-28 2018-09-25 Microsoft Technology Licensing, Llc Constructing a narrative based on a collection of images
CN106934032A (en) * 2017-03-14 2017-07-07 软通动力信息技术(集团)有限公司 A kind of city knowledge mapping construction method and device
CN109558018A (en) * 2017-09-27 2019-04-02 腾讯科技(深圳)有限公司 A kind of content displaying method, device and storage medium
US20190356620A1 (en) * 2018-05-18 2019-11-21 International Business Machines Corporation Social media integration for events
US10897442B2 (en) * 2018-05-18 2021-01-19 International Business Machines Corporation Social media integration for events
US10902573B2 (en) 2018-05-31 2021-01-26 International Business Machines Corporation Cognitive validation of date/time information corresponding to a photo based on weather information
US11403328B2 (en) 2019-03-08 2022-08-02 International Business Machines Corporation Linking and processing different knowledge graphs
CN113297392A (en) * 2021-06-02 2021-08-24 江苏数兑科技有限公司 Intelligent data service method based on knowledge graph
WO2023024098A1 (en) * 2021-08-27 2023-03-02 西门子股份公司 Knowledge graph generation method and apparatus and computer readable medium

Also Published As

Publication number Publication date
US20180082200A1 (en) 2018-03-22
US20160203141A1 (en) 2016-07-14
US20180052855A1 (en) 2018-02-22
US9805098B2 (en) 2017-10-31
US20160180235A1 (en) 2016-06-23
US9798980B2 (en) 2017-10-24
US20160180402A1 (en) 2016-06-23

Similar Documents

Publication Publication Date Title
US20160203137A1 (en) Imputing knowledge graph attributes to digital multimedia based on image and video metadata
US20240119086A1 (en) Media comsumption history
US10346929B2 (en) Computer-vision content detection for connecting objects in media to users
US10296525B2 (en) Providing geographic locations related to user interests
CN107667389B (en) System, method and apparatus for identifying targeted advertisements
US9754288B2 (en) Recommendation of media content items based on geolocation and venue
US9471936B2 (en) Web identity to social media identity correlation
US8181197B2 (en) System and method for voting on popular video intervals
US11308155B2 (en) Intelligent selection of images to create image narratives
US10579675B2 (en) Content-based video recommendation
US10846333B1 (en) Dynamically altering shared content
Choi et al. The placing task: A large-scale geo-estimation challenge for social-media videos and images
US20110196888A1 (en) Correlating Digital Media with Complementary Content
CN109511015B (en) Multimedia resource recommendation method, device, storage medium and equipment
WO2014090034A1 (en) Method and device for achieving augmented reality application
JP2012533803A (en) Estimating and displaying social interests in time-based media
US20170039264A1 (en) Area modeling by geographic photo label analysis
US20130232435A1 (en) Map based event navigation and venue recommendation system
CN108476336B (en) Identifying viewing characteristics of an audience of a content channel
Kaneko et al. Visual event mining from geo-tweet photos
US11544339B2 (en) Automated sentiment analysis and/or geotagging of social network posts
US10482105B1 (en) External verification of content popularity
Gray et al. Advances in crowdsourcing: Surveys, social media and geospatial analysis: Towards a big data toolkit
Lashari et al. Predicting Influence of User’s Twitter Activity

Legal Events

Date Code Title Description
AS Assignment

Owner name: INSNAP, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SABAH, MOHAMMAD;SADREDDIN, MOHAMMAD IMAN;ABDULLAH, SHAFAQ;REEL/FRAME:034909/0675

Effective date: 20150204

AS Assignment

Owner name: THE HONEST COMPANY, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:INSNAP INC.;REEL/FRAME:039988/0317

Effective date: 20160203

AS Assignment

Owner name: JPMORGAN CHASE BANK, N.A., CALIFORNIA

Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:THE HONEST COMPANY, INC.;REEL/FRAME:043017/0441

Effective date: 20170525

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION