GENERATING AND PRESENTING AN INTERACTIVE AUDIT REPORT
20220309428 · 2022-09-29
Inventors
Cpc classification
G06F16/3328
PHYSICS
International classification
G06Q10/06
PHYSICS
Abstract
The present disclosure relates generally to systems and methods for generating and presenting a graphical representation of topic sentiment metrics with respect to an identified entity based on an evaluation of documents collected across one or more communication platforms (e.g., social networking platforms). In particular, systems disclosed herein involve collecting documents having text therein that identify one or more topics associated with an identified entity (e.g., organization, brand, product). The topics may be analyzed with respect to the individual users and/or relative to mentions by other individuals to determine sentiment metrics (e.g., importance, impact) for the corresponding documents and topics. The documents may be tagged with metadata indicating the topics, categories, and sentiment metrics to produce an interactive presentation that enables a user to navigate the topics and sub-topics, as well as easily identify original content from the collection of documents.
Claims
1. A method being implemented on a computer system having one or more processors, the method comprising: receiving a collection of documents including text content associated with one or more entities; tagging each document from the collection of documents with metadata indicating one or more identified categories of the document based on an analysis of the text content included within the document; determining, for a set of topics, metrics of importance and metrics of impact associated with the one or more entities; and providing a graphical representation including a plurality of interactive elements to be displayed on a graphical user interface based on a combination of the determined metrics of importance and the metrics of impact associated with respective topics from the set of topics.
2. The method of claim 1, wherein receiving the collection of documents including receiving a first set of documents from a first communication platform and a second set of documents from a second communication platform.
3. The method of claim 1, wherein the text content includes unstructured text, and wherein the method further comprises applying a machine learning model to each document from the collection of documents, the machine learning model being trained to analyze the unstructured data and output at least one identified topic of the document.
4. The method of claim 1, wherein the collection of documents includes one or more of: a plurality of digital content items shared via a social networking system; a plurality of user-composed social networking posts shared via the social networking system; or a plurality of digital content items shared across a plurality of social networking systems.
5. The method of claim 1, wherein receiving the collection of documents associated with the one or more entities includes identifying a set of documents that reference one or more of an organization, a product, or a brand associated with the one or more entities.
6. The method of claim 1, wherein tagging each document includes adding metadata to a document file for each of any number of identified topics referenced by text content included within the document.
7. The method of claim 1, further comprising identifying the set of topics from a plurality of topics associated with one or more documents from the collection of documents, the set of topics including a subset of topics from the plurality of topics.
8. The method of claim 7, wherein the subset of topics are identified based on the subset of topics corresponding to each topic from the subset of topics being associated with a threshold number of tagged documents from the collection of documents.
9. The method of claim 7, wherein the subset of topics are identified based on metrics of importance and metrics of impact for the subset of topics being higher than one or more threshold metrics of importance and impact.
10. The method of claim 1, wherein determining the metrics of importance for the set of topics includes: identifying the set of topics from a plurality of topics discussed within the collection of documents; ranking the set of topics based on a frequency with which the respective topics are discussed within the collection of documents; and calculating a metric for each topic from the set of topics based on a magnitude with which the topic is discussed relative to other topics within the set of topics.
11. The method of claim 10, wherein determining the metrics of impact for the set of topics includes, for each topic from the set of topics: determining an estimated cost associated with solving a problem associated with the topic; determining an estimated benefit associated with solving the problem associated with the topic; and calculating a benefit to cost ratio based on a comparison of the determined estimated benefit and the determined estimated cost.
12. The method of claim 1, further comprising identifying one or more categories including discrete groupings of topics from the set of topics, wherein providing the graphical representation includes displaying an interactive element for each category of the one or more categories based on a combination of metrics of importance and metrics of impact for topics included within the category.
13. The method of claim 12, further comprising: detecting a selection of a first interactive element from the plurality of interactive elements, the first interactive element being associated with a first category; in response to detecting the selection of the first interactive element, providing a second set of interactive elements associated with corresponding topics from a grouping of topics included within the first category, each interactive element from the second set of interactive elements being displayed at a location within the graphical representation based on a corresponding metric of importance and metric of impact for an associated topic.
14. The method of claim 13, further comprising: detecting a selection of an interactive element from the plurality of interactive elements being associated with a topic from the set of topics; in response to detecting the selection of the interactive element, providing a display of a plurality of snippets from respective documents of the collection of documents referencing the topic.
15. The method of claim 1, further comprising: receiving additional documents including additional text associated with the one or more entities; modifying the metrics of importance and metrics of impact based on additional instances of topics from the set of topics within the additional documents; and modifying a display of the graphical presentation based on the modified metrics of importance and the modified metrics of impact.
16. The method of claim 15, further comprising providing a visualization of one or more changes in the metrics of importance and the metrics of impact for respective topics from the set of topics over time in view of additional documents received over a period of time.
17. A system, comprising: one or more processors; memory in electronic communication with the one or more processors; and instructions stored in the memory, the instructions being executable by the one or more processors to: receive a collection of documents including text content associated with one or more entities; tag each document from the collection of documents with metadata indicating one or more identified categories of the document based on an analysis of the text content included within the document; determine, for a set of topics, metrics of importance and metrics of impact associated with the one or more entities; and provide a graphical representation including a plurality of interactive elements to be displayed on a graphical user interface based on a combination of the determined metrics of importance and the metrics of impact associated with respective topics from the set of topics.
18. The system of claim 17, wherein the text content includes unstructured data, and wherein the instructions are further executable to apply a machine learning model to each document from the collection of documents, the machine learning model being trained to analyze the unstructured data and output at least one identified topic of the document.
19. The system of claim 17, wherein the instructions that determine the metrics of importance for the set of topics include instructions for: identifying the set of topics from a plurality of topics discussed within the collection of documents; ranking the set of topics based on a frequency with which the respective topics are discussed within the collection of documents; and calculating a metric for each topic from the set of topics based on a magnitude with which the topic is discussed relative to other topics within the set of topics.
20. The system of claim 19, wherein the instructions that determine the metrics of impact for the set of topics includes instructions for: determining an estimated cost associated with solving a problem associated with a topic; determining an estimated benefit associated with solving the problem associated with the topic; and calculating a benefit to cost ratio based on a comparison of the determined estimated benefit and the determined estimated cost.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0004]
[0005]
[0006]
[0007]
[0008]
[0009]
[0010]
[0011]
[0012]
DETAILED DESCRIPTION
[0013] The present disclosure relates generally to systems and methods for training and implementing an audit generation model and generating a graphical representation showing metrics of importance and impact of topics identified within an audit report. In particular, as will be discussed in further detail below, one or more embodiments described herein involve analyzing a collection of documents to determine sentiment metrics (e.g., impact, importance) associated with various categories and sub-categories. Based on the determined sentiment metrics, the topic visualization system may generate and present a graphical representation showing the metrics of impact and important for various categories with respect to an identified entity (e.g., a business entity, a brand, a product, etc.)
[0014] As an illustrative example, one or more embodiments described herein involve a topic visualization system that receives a collection of documents including text content associated with one or more entities. The topic visualization system can further tag the documents with metadata indicating any number of identified topics or categories based on analysis of the text content included within the documents. The topic visualization system may further determine metrics of importance and metrics of impact associated with the one or more entities. The topic visualization system may further provide a graphical representation including interactive elements representative of various topics based on the determined metrics of importance and impact for the respective topics.
[0015] As will be discussed in further detail below, the present disclosure includes a number of practical applications having features described herein that provide benefits and/or solve problems associated with collecting documents and visualizing sentiment metrics associated with various topics with respect to an identified entity. Some example benefits are discussed herein in connection with features and functionalities provided by a topic visualization system. Nevertheless, it will be appreciated that benefits explicitly discussed in connection with one or more implementations herein are provided by way of example and are not intended to be an exhaustive list of all possible benefits of the topic visualization system.
[0016] For example, as will be discussed in further detail below the various systems implement features and functionality that provide a uniform and automated analysis of documents from a plurality of document sources. For instance, one or more embodiments described herein involve tracking mentions and instances of topics that are discussed with respect to a variety of entities (e.g., companies, organizations, brands, products) across multiple communication platforms. In addition to analyzing and visualizing sentiment metrics for various topics across multiple platforms, the topic visualization system facilitates analyzing text content of various formats, including non-structured text, structured text, or a combination of both.
[0017] As another example, the topic visualization system provides interactive tools that enable an individual to view and effectively navigate sentiment metrics (e.g., importance metrics, impact metrics) associated with various topics when discussed with respect to a particular entity. For example, as will be discussed in further detail below, the topic visualization system can general and provide a graphical representation in which selective topics that are determined to be most impactful are displayed and with which interaction is possible in a variety of formats. As will be further discussed, the topic visualization system enables an individual to drill down on respective categories to view sentiment metrics for topics or sub-categories as well as obtaining access to source documents that have metadata tagged to the corresponding topics/categories.
[0018] Moreover, in each of the above examples, the various systems utilize machine learning and other automation tools that facilitate accurate analysis as well as dynamic analysis based on an availability of new documents. For example, and as discussed below, the category audit system can implement feedback training features that enable users to further refine algorithms and models utilized in determining importance, impact, and other sentiment metrics with respect to the specific documents and/or various topics. This feedback, in addition to mechanisms for collecting additional documents and incorporating them into the analysis, further provides features and functionality that enable an individual to view changing trends over time as well as evaluate performance within a particular organization.
[0019] As illustrated in the foregoing discussion, the present disclosure utilizes a variety of terms to describe features and advantages of the systems disclosed herein. Additional detail is not provided regarding the meaning of some of these terms.
[0020] As used herein, a “document” or “electronic document” refers to any portion of digital content (e.g., a digital content item). For example, a document may refer to a defined portion of digital data (e.g., a data file) including, but not limited to, digital media, electronic document files, contact lists, folders, or other digital objects. In addition, in one or more embodiments described herein, a document refers to digital content shared via a social networking platform such as a post, message, comment, user-rating, or other digital content shared between users of the social networking platform. In addition to digital content provided by social networking platforms, documents may originate from any number of sources including, by way of example, blogs, news sites, forums, or other online sources. Documents may further include digital content originating from other sources such as call center logs, handwritten documents (e.g., a downloaded collection of physical documents), survey responses (e.g., including unstructured data and/or survey responses), etc. A document may refer to a user-composed document (e.g., a post or message including text composed by an individual) or a shared document (e.g., a post that is forwarded or shared to any number of recipients). As used herein, a “collection of documents” refers to a plurality of documents of similar or different types, which may include documents obtained from a single source (e.g., a single platform) or across multiple sources (e.g., third-party server devices, different platforms). It will be appreciated that while one or more embodiments described herein refer specifically to documents including text (e.g., structured or unstructured), it will be appreciated that documents may include other types of content including, by way of example, images, videos, and other structure or non-structured data.
[0021] As used herein, a “search query” refers to a query provided by a client device as part of a request to search for results from a collection of documents. A search query may include a user-composed text string including any number of terms. In addition, or as an alternative, a search query may include one or more selected terms (e.g., categories, keywords) to include in selectively identifying documents or portions of documents from the collection of documents in response to the search query. Further, a search query may include an indication of one or more terms or series of words to exclude or otherwise utilize to filter or exclude from prospective results (e.g., negative terms).
[0022] As used herein, a “refined search query” refers to a variation or modification of a search query received as part of a request to search a collection of documents. As will be discussed in further detail below, a refined search query may refer to a query generated by the category auditing system using an audit generation model in accordance with one or more embodiments described herein. The refined search query may include one or more latent terms or variables based on historical data associated with previously generated audit reports. For example, the category auditing system may identify one or more latent variables such as adding a new search term not included within an original search query, removing a term (e.g., an irrelevant search term) included within the original search query, and/or emphasizing one search term over other search terms included within the search query to more accurately navigate or identify results from within the collection of documents.
[0023] In one or more embodiments described herein, the category auditing system identifies or otherwise extracts portions from the collection of documents corresponding to the refined search query. As used herein, “extracted portions” or “query results” refer interchangeably to documents or portions of documents that match or otherwise correspond to the refined search query. For example, an extracted portion or query result may refer to a snippet (e.g., a text snippet) from a document determined to be relevant to the refined search query based on an analysis of the search query (e.g., using natural language processing or other query analysis methods) and application of the analysis to the collection of documents. In one or more implementations, an extracted portion or query result may include an image, video, or other portion of a source document other than text snippets. Indeed, an extracted portion of a source document or query result may include a combination of text, images, or other type of digital content that may be consumed via a client device.
[0024] As mentioned above, the category auditing system can generate and provide an audit report to a client device. As used herein, an “audit report” includes a file or documents including a representation of any number of results (e.g., extracted portions) of a search query. For example, the audit report may include a webpage, document file, or other data object including selected information from the collection of documents determined or otherwise predicted to be relevant based on the refined search query. In one or more embodiments, the audit report includes one or more selection options that enables an end-user to provide feedback indicating whether one or more results are more or less relevant to the search query than other results within the audit report. As will be discussed in further detail below, an audit report may include any information associated with a search query, refined search query, and/or results of the search query. Indeed, in one or more embodiments, an audit report may include information about an audit generation model used for generating the audit report. Additional detail with regard to information that may be included within an audit report is provided in further detail below.
[0025] In one or more embodiments, the category auditing system utilizes an audit generation model to generate the audit report. In particular, the category auditing system may implement an audit generation model trained to perform some or all of the acts described herein that make up the process of generating and providing the audit report. In one or more embodiments, the audit generation model includes algorithms and/or models that carry out statistical sensitivity analysis of driving factors that explain the variance in a forecast or quantify the elasticity of factors within a forecast. In one or more embodiments, the audit generation model may include one or more algorithms or discrete models trained to perform tasks including generating a refined search query, selectively identifying a subset of a collection of documents to preserve processing resources, extracting relevant portions of documents in response to a search query, and determining information to provide within an audit report. In one or more embodiments, the audit generation model includes one or multiple machine learning models. In addition, or as an alternative, the audit generation model may include various algorithms, filtering rules, or other algorithms to enable the audit generation model to more accurately identify relevant results in response to a search query.
[0026] In one or more implementations, an algorithm or model may be trained using a sample set of training data, which may further be used to process all original search results that have been returned to search for accuracy and determine whether a query should be changed. For example, while one or more embodiments described herein describe generating a refined search query prior to generating the audit report, the category audit system may alternatively generate an audit report based on the original search query and, based on result feedback, provide recommendations or additional terms or variables to consider in generating a new search query as part of a process of generating a new audit report for the same user or device (e.g., rather than or in addition to gradually refining the algorithms or models over time).
[0027] As used herein, a “topic” or “category” may refer interchangeably to an identified subject of a document or portion of a document. For example, a topic may refer to any adjective, noun, adverb, or any descriptor that is associated with a particular entity. A topic or category may be used to describe any number of entities, such as a brand, a product, a business, an organization, an individual, or any other entity. In one or more embodiments, a category may refer to a particular subject while a topic refers to a sub-category of one or more sub-categories that fall within the higher level category. Some embodiments may include multiple levels of sub-categories (or topics) under the umbrella of a higher level category.
[0028] As used herein, a “sentiment metric” may refer to any metric or value descriptive of a topic or category. In one or more embodiments, a sentiment metric may provide some indication about how one or more individuals associated with a collection of documents feel about a particular topic. In one or more embodiments, a sentiment metric refers to an importance metric and/or an impact metric (or a combination of both). The sentiment metric may be determined based on any number of factors. In one or more embodiments, the sentiment metric is determined by one or more models (e.g., audit generation model, importance model, impact model) implemented on one or across multiple systems described herein.
[0029] As used herein, a “graphical representation” may refer to a presentation including content showing sentiment metrics for corresponding topics and/or categories with respect to an entity. For example, a graphical representation may show plotted points on a graph showing sentiment metrics for various topics with respect to a business, organization, brand, or other entity. As another example, a graphical representation may refer to a pie chart, bar chart, or any representation that shows scales of sentiment metrics with respect to various topics. As will be discussed in further detail herein, a graphical representation may be displayable via a graphical user interface of a client device and include any number of interactive elements that enable an individual to manipulate a display of the presentation as well as view source documents and additional information about respective sentiment metrics and/or specific topics/categories.
[0030] Additional detail will now be provided regarding systems disclosed herein in relation to illustrative figures portraying example implementations. For example,
[0031] As shown in
[0032] The environment 100 may further include third-party server device(s) 110 and a client device 112, which may be associated with an end-user. As shown in
[0033] The client device 112 may refer to any computing device associated with a user for use in providing and receiving data from the category auditing system 104. For example, the client device 112 may refer to a consumer electronic device including, by way of example, mobile devices, desktop computers, or other types of computing devices. Moreover, as mentioned above, the client device 112 and server devices can communicate over the network 132, which may refer to one or multiple networks that use one or more communication protocols or technologies for transmitting data. For example, the network 132 may include the Internet or another data link that enables transport of electronic data between server device(s) 102 and any other devices of the environment 100.
[0034] As mentioned above, the category auditing system 104 facilitates accurate and efficient identification of portions of documents related to a given search query generated by a client device. For example, in at least one embodiment, the client device 112 provides a search query, which may include a user-generated search query composed by a user of the client device 112. The search query may include any number or combination of different search elements (e.g., text, categories, images, or other types of digital content) usable for identifying corresponding query results. In one or more implementations, the search query includes free-form text and/or one or more selected categories or search terms to include within a request to search a collection of documents to identify relevant portions of the documents associated with the search query. The client device 112 may transmit or otherwise provide the search query to the category auditing system 104.
[0035] Upon receiving the search query, the category auditing system 104 may utilize the audit generation model 106 to generate a refined search query based on one or more algorithms that make up the audit generation model 106. In particular, the category auditing system 104 may utilize the audit generation model 106 to determine one or more latent variables to consider in applying the audit generation model 106 to a collection of documents for identifying relevant results in response to the search query. For example, the category auditing system 104 may replace one or more search terms from the search query with more relevant or helpful search terms to use in extracting portions of documents from the collection of documents.
[0036] As another example, the category auditing system 104 may add or subtract search terms from the original query received from the client device 112. For example, the category auditing system 104 may identify one or more exclusion terms or variables that include negative limitations for search results. Indeed, the category auditing system 104 can generate any number of latent variables to apply to the documents and/or modify the search query in a number of ways to more accurately and efficiently identify relevant portions (e.g., snippets) of the collection of documents.
[0037] The category auditing system 104 can additionally identify a collection of documents to search based on the search query. The category auditing system 104 can identify collections of documents from a number of different sources and in a variety of ways. For example, the category auditing system 104 can identify documents from a particular social networking platform (from a collection of shared posts) or between multiple platforms (e.g., hosted by the third-party server device(s) 110). The category auditing system 104 can identify documents from a combination of social networking systems and other platforms (e.g., a document database).
[0038] In identifying or obtaining a collection of documents, the category auditing system 104 can identify any number of documents that are associated with a corresponding entity. For example, the category auditing system 104 can identify any tags, markers, or other indicator that the documents are associated with the entity. This may involve identifying specific keywords, hashtags, or evaluating where and how the document originated. This may be performed by scanning web content or performing a platform search to identify specific keywords, hashtags, or other identifiers of a corresponding entity.
[0039] In one or more embodiments, where a document refers to a post made while at a location of a particular business, that document may be associated with the business (or other entity) based on location metadata associated with the document corresponding to a known location of the business. In one or more embodiments, a set or collection of documents is collected by the entity itself, in which case the documents may be associated with the entity. In one or more embodiments, documents can be manually tagged or associated with an entity using a manual process. In one or more embodiments, documents may be associated with an entity by applying a machine learning model trained to identify associations or relevance with a particular entity. In one or more embodiments, one or more of the above mechanisms may be used in identifying a collection of documents associated with a corresponding entity (or in identifying results of a search that involves identifying documents (e.g., document snippets) associated with the entity.
[0040] The collection of documents 114 may be utilized in a number of ways. As will be discussed below, in one or more embodiments, the collection of documents 114 may be identified for the purpose of identifying results to a query. For instance, in response to a search query that identifies a particular entity, any number of documents may be identified based on relevance to the queried entity. Additional detail in connection with this implementation will be described in connection with
[0041] As shown in
[0042] Upon generating the refined search query, the category auditing system 104 can apply the audit generation model 106 to the collection of documents based on the refined search query to generate an audit report. In particular, the category auditing system 104 can apply the audit generation model 106 to identify or extract portions of the collection of documents determined to be relevant to the search query based on the algorithms, rules, and training of the audit generation model 106. In one or more embodiments, the category auditing system 104 identifies snippets of the collection of documents determined to be relevant to the search query.
[0043] The category auditing system 104 can additionally provide the audit report to the client device 112 for presentation via a graphical user interface on the client device 112. For example, the category auditing system 104 can provide the audit report directly to the client device 112 over the network 114 to enable the client device 112 to provide a navigable and/or interactive display of the audit report. In one or more embodiments, the category auditing system 104 provides the audit report by providing a presentation of the audit report via a web interface on the client device 112. For example, the category auditing system 104 can generate the audit report and provide online access to the client device 112 for display via a navigable web interface. In one or more embodiments described herein, the presentable audit report includes a graphical representation showing sentiment metrics associated with various topics and/or categories associated with an entity (e.g., a searched entity).
[0044] As will be discussed in further detail below, client device 112 can enable a user of the client device 112 to interact with the audit report and provide result feedback indicating which results are more or less relevant to the search query. In one or more embodiments, the category auditing system 104 (or client device 112) provides selectable options that enable a user to interact with a presentation of the audit report to manually indicate which entries of the audit report are relevant, not relevant, or unknown. Alternatively, the category auditing system 104 may dynamically learn relevance based on detected selections or other interactions by the user with respect to information presented within the audit report.
[0045] In addition to training and utilizing the audit generation model 106 to generate a refined search query and extract results from a collection of documents, the category auditing system 104 can additionally train and utilize the audit generation model 106 to selectively identify documents from a larger collection of documents to consider in generating the results.
[0046] For example, result feedback (described in further detail below) may be used to further expand or contract a collection of documents to broaden or narrow a search of relevant documents.
[0047] As further shown in
[0048] As mentioned above, and as shown in
[0049] In one or more embodiments, the topic assignment manager 118 associates a given document with one or multiple topics. Indeed, the topic assignment manager 118 may tag metadata for any number of topics with a corresponding document file. For example, where a document includes unstructured data (e.g., unstructured text), such as a paragraph or multiple paragraphs within the same document, the topic assignment manager 118 can tag the document with each of a plurality of topics that are references anywhere within the document.
[0050] The topic assignment manager 118 can associate the documents with corresponding topics in a variety of ways. For example, the topic assignment manager 118 can simply tag the documents based on mentions or explicit use of specific keywords or phrases that the topic assignment manager 118 has been trained to identify. For instance, in one or more embodiments, an individual or organization may identify any number of relevant topics for an entity and cause the topic assignment manager 118 to scan a collection of documents and tag each document that uses a particular word or phrase associated with the topic.
[0051] In one or more embodiments, the topic assignment manager 118 employs a natural language processing (NLP) engine trained to parse free-form text and determine whether the text references corresponding topics. This may involve parsing the text to identify explicit mentions of the topic(s) as well as implicit mentions (e.g., as determined by the NLP model).
[0052] In one or more embodiments, the topic assignment manager 118 tags the documents with one or multiple topics in addition to one or more categories within which the topics may belong. For example, in one or more embodiments, the topic assignment manager 118 determines or receives a set of categories and/or topics and effectively groups the documents within the respective topics and categories based on the identified mentions or references to the topics within the text portion of the documents. As an example, and as will be discussed in further detail below, where a document references a “rude manager,” the topic assignment manager 118 may tag the document with first metadata indicating a topic of “bad manager” as well as second metadata indicating a broader topic or category of “bad customer service.” The topic assignment manager 118 may additionally go a level further and add another category of “customer service” encompassing of “bad customer service,” “good customer service” and any additional sub-categories or topics that fall within the respective categories. In one or more embodiments, the topic assignment manager 118 tags the document with each of the relevant topics and associated categories.
[0053] As noted above, the topic assignment manager 118 may identify particular topics based on a set of pre-defined topics and/or based on identified topics based on an analysis of the documents. For example, in one or more embodiments, the topic assignment manager 118 may receive a set of pre-defined topics and/or categories that an owner of a business, brand, or other entity may want to analyze with respect to the identified entity. Alternatively, in one or more embodiments, the topic assignment manager 118 may identify topics based on an NLP analysis of the documents trained to identify any number of topics discussed based simply on the text contained within the documents themselves.
[0054] In one or more embodiments, the topic assignment manager 118 selectively identifies a set of topics from a plurality of topics representative of all topics identified within the respective documents. For example, in one or more embodiments, the topic assignment manager 118 identifies a set of topics including a subset of topics that are mentioned or referenced more frequently within the collection of documents than other topics. In one or more embodiments, the topic assignment manager 118 identifies a set of topics based on a selection of the set of topics from the plurality of identified topics based on domain knowledge or other considerations. In one or more embodiments, the topic assignment manager 118 identifies the set of topics based on further analysis of sentiment metrics, as discussed in further detail below.
[0055] As shown in
[0056] In one or more embodiments, the importance model 120 considers importance of a given topic to an individual that mentions the topic within one or more documents. For example, the importance model 120 may consider other comments or documents associated with a user and attribute a high measure of importance to a given topic if the individual mentions the topic with a higher level of frequency relative to other topics within the same document or across multiple documents. Accordingly, in one or more embodiments, the importance model 120 attributes different levels of importance to specific topics based on the individual user and a corresponding set of documents that are associated with the individual user.
[0057] The importance model 120 calculate the value of importance for a given topic in a variety of ways. In one or more embodiments, the importance model 120 associates a metric of importance to the topic for a given document. For example, the importance model 120 may associate a metric of importance for each topic mentioned within a specific document. In other implementations, the importance model 120 may simply associate a metric of importance to a document based on the topics discussed therein. In one or more embodiments, the importance model 120 determines a metric of importance for a topic based on a cumulation of mentions across the collection of documents.
[0058] In accordance with one or more embodiments described above, in one or more embodiments, the importance model 120 determines a metric of importance by identifying a set of topics from a plurality of topics discussed within the collection of documents. The importance model 120 can further rank the set of topics based on a frequency with which the respective topics are discussed with the collection of documents (e.g., frequency within the collection of documents generally, frequency among individuals within sets of documents associated with the respective individuals). The importance model 120 can further calculate a metric for each topic from the set of topics based on a magnitude with which the topic is discussed relative to other topics within the set of topics.
[0059] The importance model 120 may be trained and/or refined in a variety of ways. In one or more embodiments, the importance model 120 is trained using the category auditing system 104. For example, in one or more embodiments, the category auditing system 104 provides an indication of importance based on a machine learning model and enables a user of a client device 112 to provide further input to be provided as feedback to the importance model 120 in refining one or more algorithms used by the importance model 120 to determine importance metrics.
[0060] As further shown in
[0061] In one or more embodiments, the impact model 122 determines an estimated cost associated with implementing a change that would solve a problem or otherwise address an identified topic. The impact model 122 may then determine an estimated benefit associated with solving the problem or otherwise implementing the change. In one or more embodiments, the impact model 122 calculates a benefit to cost ratio based on a comparison of the determined estimated cost and estimated benefit. In one or more embodiments, the impact model 122 determines the impact metric as a function of the calculated ratio.
[0062] As further shown in
[0063] Each of the category auditing system 104 and the topic visualization system may have access to a data storage 126 including data thereon that enables the respective systems 104, 116 to provide features and functionalities described herein. For example, as shown in
[0064]
[0065] As shown in
[0066] In one or more embodiments, the document selection manager 206 further narrows the document collection 202 by selectively identifying a subset of documents based on one or more of the query inputs 204. For example, where the query inputs 204 include a keyword or selected category, the document selection manager 206 may perform a simple keyword filter algorithm to discard or exclude any number of irrelevant documents without performing any additional analysis. As another example, and as will be discussed further below, the document selection manger 206 may filter documents based on a selected platform (e.g., news platform, social networking platform) or document source. Accordingly, in one or more embodiments, the document selection manager 206 performs an initial filtering process to significantly narrow the document collection 202 to a relevant subset prior to applying one or more additional algorithms or models included within the audit generation model 106 to the subset of documents. In this way, the document selection manager 206 may significantly reduce processing resources needed when applying the audit generation model 106 to the document collection 202.
[0067] As shown in
[0068] As further shown in
[0069] The result extraction manager 210 may utilize any number of models or algorithms. For example, in one or more embodiments, the result extraction manager 210 implements or utilizes a machine learning model or algorithm(s) trained to identify or extract snippets of text (e.g., a single snippet or multiple snippets from the same document) from a set of documents based on an analysis of a search query (e.g., the refined search query) and content included within the document(s). The result extraction manager 210 may utilize any number of methods or techniques to analyze the documents in view of the search query including natural language processing, capture concepts, text or phrase classification, matching, vectorization, tracking, augmentation, or other forms of analysis.
[0070] As further shown, the audit generation model 106 includes a report generator 212 for generating the audit report 214. For example, the report generator 212 may compile any number of relevant results (e.g., all of the results, a subset of results) and compile the relevant results within a file or document to provide to the client device 112 for presentation via a graphical user interface of the client device 112. The report generator 212 can include all relevant results or snippets within the audit report 214. Alternatively, the report generator 212 can include a random sample or a predetermined number of the most relevant results within the audit report 214 based on the analysis performed by the result extraction manager 210.
[0071] The audit report 214 may include any information associated with the relevant results. For example, the audit report 214 may include extracted snippets from source documents (e.g., rather than including entire documents within the report). In addition, the audit report 214 may include an identification of the platform (e.g., social networking platform), an identification of the individual (e.g., a username) who shared or uploaded the file. The audit report 214 may include an indication of relevance as determined by the result extraction manager 210. Indeed, the audit report 214 may include any information associated with the results or documents within the audit report 214.
[0072] In addition to various types of information about the specific results and/or associated source documents, the audit report 214 may additionally include information about how the query results were generated. For instance, the audit report 214 may include an indication of how an original search query was modified to generate a refined search query. The audit report 214 may additionally include a history of interactions or user selections detected leading up to generation of the audit report 214. In one or more implementations, the audit report 214 includes operators, terms, weighted values, categories, or other data used by an algorithm or machine learning model in generating results of the audit report 214. In one or more embodiments, the audit report 214 includes one or more suggested modifications or related combinations of terms, words, or other search elements that may be better equipped to produce relevant results that align with the original search query.
[0073] While the audit report 214 may include any number of the example types of information mentioned above, the client device 212 may include a display of some or all of the information included within the audit report 214. For instance, the client device 112 may provide a display of a portion of the information included within the audit report 214 such as a list of relevant results and a display of extracted snippets of source documents, the client device 212 may hide or collapse certain portions of the information in example presentations of the audit report 214. Indeed, as will be discussed below in connection with
[0074] As mentioned above, and as will be discussed further, the audit report 214 can additionally include or otherwise provide interactive functionality that enables a user of the client device 112 to interact with the audit report 214 to generate result feedback 216. For example, the audit report 214, when presented via a graphical user interface of the client device 112, may include selectable options to enable a user of the client device 112 to interact with specific entries of the audit report 214 and manually indicate whether a particular entry is relevant to the search query. The user may select any number of entries to indicate classifications for the results including, for example, “relevant,” “not relevant,” “unknown” or other classification.
[0075] In addition to manual feedback, the result feedback 216 may include tracked feedback about the audit report 214. For example, the category auditing system 104 may track or otherwise observe interactions with one or more entries of the audit report 214 and determine, based on the observer interactions (or lack of interactions), that relevancy or non-relevancy of results included within the audit report 214. Examples of tracked activity may include views, downloaded cookies, clicks on specific entries or links, duration of time that a certain entry has been opened or viewed, etc.
[0076] As shown in
[0077] In addition to indicating additional terms that may further narrow or broaden the scope of a document search, the category auditing system 104 may additionally identify one or more negative correlations. For example, audit generation model 106 may learn that where a search query includes a first term, results often include a secondary term that significantly changes the meaning of a result and renders the result less related to other results that have a high relevance with the topic of the search query. Accordingly, the audit generation model 106 may learn to exclude, minimize, or otherwise discount the second term when query inputs 204 associated with the first term are received.
[0078] In one or more embodiments, upon receiving the result feedback 216, the audit generation model 106 can learn that a set of results includes multiple subcategories of results that have limited relevance. For example, where a search query includes a keyword of “pizza” and “quality,” the results from one or multiple audit reports 214 may initially include results about “cheese” and “meat,” where the results about cheese relate to a first type of pizza while the results about meat relate to a second type of pizza. Based on this identified trend or distinction (e.g., learned trend or distinction), the category auditing system 104 may provide one or more tools to an end-user to enable the user to further refine a search query. As an example, upon receiving a search query about pizza (or any time after the audit generation model 106 learns the category distinction), the category auditing system 104 may provide one or more selectable options for a user to indicate a subcategory. This provides a more accurate search query, which enables the category auditing system 104 to search a smaller quantity of documents when generating the refined search query and analyzing a subset of a larger collection of documents to extract search results.
[0079] In addition to utilizing the result feedback 216 to refine the process performed by the category query manager 208 to generate the refined search query, the result feedback 216 may additionally be used by the result extraction manager 210 to more accurately extract results from the documents over time. Indeed, the result feedback 216 may be used to hone or otherwise fine-tune algorithms or machine learning model(s) used by the result extraction manager 210 to selectively identify portions of documents to include within an audit report 214.
[0080] In one or more embodiments, the audit generation model 106 may utilize the result feedback 216 to facilitate creation of a refined audit report 218. For example, a user of the client device 112 may provide an indication of whether the data from the audit report 214 is satisfactory in view of additional training and refinement of the audit generation model 106. As shown in
[0081]
[0082] As shown in
[0083] The category audit system 104 may additionally perform an act 320 of receiving a query input. The query input may include free-form text that the category audit system 104 parses to limit the collection of documents. The query may additionally include one or more selected categories or topics presented to a user providing the search query. For example, based on training of the audit generation model 106, the category audit system 104 may provide one or more categories and sub-categories determined to be relevant to a particular topic. As mentioned above, the query may include other search elements, such as images, portions of images, videos, audio files, or other elements that may be used to search the collection of documents.
[0084] In one or more embodiments, the category audit system 104 presents a list of available categories or topics that the category audit system 104 has been tasked with monitoring by a client. For example, an individual or business may request a predefined number of topics or categories of interest that the category audit system 104 can develop and train the audit generation model 106 to consider in generating the audit report. The category audit system 104 may present any number of categories or selectable topics via a graphical user interface of a client device. This is discussed by way of example below in connection with
[0085] As shown in
[0086] The category audit system 104 can additionally perform an act 340 of generating a refined query for the documents. As discussed above, this may include adding one or more keywords to keywords identified from within the original search query. In addition, this may include identifying one or more categories which the audit generation model 106 is trained to analyze. In one or more embodiments, the category audit system 104 identified one or more latent variables including weights to apply to certain terms and/or terms to add or subtract from a refined search query that more accurately enable the category audit system 104 to identify relevant results within the selected subset of documents.
[0087] The category audit system 104 can additionally perform an act 350 of generating results for the refined query. In particular, the category audit system 104 can apply the refined query and a machine learning model to the identified subset of documents to identify snippets or other results from within the documents to include within an audit report. The category audit system 104 can identify any number of snippets or results from the collection of documents.
[0088] The category audit system 104 can additionally perform an act 360 of generating an audit report and provide the audit report to a client device. In generating the audit report, the category audit system 104 can identify any number of the results to include within the audit report. In one or more embodiments, the category audit system 104 identifies the most relevant results (e.g., predicts the most relevant results based on algorithms or instructions of the audit generation model 106). Alternatively, in one or more embodiments, the category audit system 104 identifies a random or pseudorandom set of results to include within the audit. By identifying random result or at least including some results of unknown relevance, the category audit system 104 facilitates receiving feedback to train the audit generation model 106 to more accurately or efficiently analyze a set of documents to identify relevant results.
[0089] As shown in
[0090] As shown in
[0091] As further shown, the result feedback may be utilized in subsequent instances of generating results (e.g., extracting portions of documents) in response to subsequently received query inputs. For example, the category audit system 104 can fine-tune algorithms or models used in analyzing documents and/or applying a refined query to a collection of documents (or subset of documents from a collection of documents) to determine relevant results that correspond to a received query input.
[0092] As shown in
[0093] Referring now to
[0094]
[0095] In the illustrated example, the listing of categories 406 includes categories such as food, clothing, pets, private brands, and competitor brands. As shown in
[0096] As mentioned above,
[0097] In accordance with one or more embodiments described above, the category audit system 104 can generate a refined query including one or more modifications to the typed query and/or latent variables to consider when performing a search of documents. This may include a string of Boolean operators (not shown), instructions for performing a hierarchical analysis of the documents, or simply a refined query including a slightly different combination of words more equipped to product relevant results that align with the original search query typed by the user.
[0098] As shown in
[0099]
[0100] As shown in
[0101] For example, as shown in
[0102] As indicated above, the category audit system 104 may utilize each of the selected indications of relevancy to further train or refine an audit generation model in accordance with one or more embodiments described above. For example, the category audit system 104 may provide positive feedback for the second and third entries to indicate types of entries to identify in the future. In addition, the category audit system 104 may provide the negative feedback for the fourth entry to indicate types of entries to not identify in the future. Further, the category audit system 104 may provide the neutral feedback for the first entry to determine any other refinements to the model to more accurately or efficiently identify results.
[0103] As further shown in
[0104] This expanded view including additional information would similarly be useful to enable the user of the client device 402 to further inform themselves on the relevancy of an entry prior to selecting a “no,” “yes,” or “unknown” indication of relevance. For example, the user could select the first entry to view additional information to accurately determine whether the entry is relevant or not relevant rather than “unknown,” as shown in
[0105] In accordance with one or more embodiments, the audit report can include additional information, such as an indication of how the query result was produced. This information may be included in the expanded view, which may present additional information from the audit report not initially displayed via a presentation of the audit report 412. The expanded view can display data relating to how the system refined the initial search query, such as displaying one or more modifications to the typed query and/or latent variables that were considered by a machine learning model. This displayed data may include a string of Boolean operators and terms, indications of selections used in performing a hierarchical analysis of the documents, indications of categories considered important and used by a machine learning model, or simply displaying of the refined query, for example that included a slightly different combination of words more equipped to produce relevant results that align with the original search query typed or input by the user.
[0106] Additional information will now be discussed in connection with generating and presenting a graphical representation showing importance and impacts of identified topics associated with example entities. For example,
[0107] In particular, and as shown in
[0108] In one or more embodiments, the topic icons 506 may include topics related to the restaurant entity that, upon analysis of the text from the collection of documents, effect whether an individual is likely to return to the restaurant. By way of example, the topic icons 506 include indicators of topics such as “poor customer service,” “poor cleanliness,” “allergy,” “bad food,” “catering,” “good cleanliness,” “good food,” and “good customer service.”
[0109] As shown in
[0110] It will be noted that certain topics are associated with significantly higher importance and/or impact than other topics. For example, analysis of the text of the collection of documents and determination of the sentiment metrics may show that poor customer service and good customer service are both important topics for a customer base of the restaurant entity. In addition, while less important, topics such as poor cleanliness, allergy considerations, and good food have high metrics of impact. As a further example, topics such as catering and good cleanliness may have relatively low importance and impact to the customers. In each of these cases, a user of the client device 502 may understand how a customer base is likely to react to changes or implementation of certain policies with respect to the restaurant. For instance, an owner of the restaurant may choose to focus additional efforts in customer service rather than building out a more robust catering element of the restaurant.
[0111] While
[0112] As shown in
[0113] In one or more embodiments, the topic visualization system 116 enables a user of the client device 502 to drill down and view information associated with additional sub-topics of a given category. For example, in response to selecting the poor customer service topic icon, the topic visualization system 116 may cause the client device 502 to present a drilled down view 510 of the graphical representation showing the sub-topics of the poor customer service topic and associated metrics of importance.
[0114] In particular, as shown in
[0115] As noted above, this drilled down view provides additional context with respect to specific topics. For example, in the context of poor customer service, a user of the client device 502 can see that “rude” customer service or a bad “manager” are much more important and impactful than topics such as “rushed” customer service or poor “accuracy” of customer orders. In this way, an owner of the restaurant entity may have additional actionable information in how best to address the topic of poor customer service that was mentioned in a high number of the collection of documents.
[0116] In one or more embodiments, the topic visualization system 116 enables a user of the client device 502 to further drill down into the respective sub-topics. For example,
[0117] In one or more embodiments, the topic visualization system 116 can further show snippet details 518 showing information about the corresponding snippets and/or source documents. For example, as shown in
[0118] In one or more embodiments, the topic visualization system 116 enables a user of the client device 502 to navigate to the source document itself and engage with the individual associated with the source document. In this case, the user of the client deice 502 may communicate with the author of the document via the identified communication platform to learn more about the specific experience and/or provide further incentives to return to the restaurant. In some instances, the topic visualization system 116 simply enables the user of the client device 502 to learn more about the indicated topic.
[0119] Referring now to
[0120] As shown in
[0121] As shown in the dynamic view 604, each of importance and impact metrics may change for the various topics based on additional documents collected over time. The dynamic view 604 may provide an indication of changing preferences of individuals over time associated with the documents (e.g., where “to-go” options may become more prevalent during 2020 or where “good cleanliness” is associated with a higher metric of impact and importance over the same period of time). In contrast, sentiment metrics for one or more topics may fall below a threshold (e.g., such as for the “catering” topic) and may no longer be included within the visualization for the second selected date.
[0122]
[0123] Similar to one or more embodiments described above, the visualization of the graphical representation includes selectable icons for the corresponding categories that enables a user of the client device 702 to drill down and view additional details with respect to the specific categories/topics. In this example, a user can select a first category icon 706 and, responsive to the selection, the topic visualization system 116 can provide a presentation of positive sub-categories 708 (or topics 708) and negative sub-categories 710 (or topics 710). In this example, the positive sub-categories 708 include topics such as “free-food,” “customer care,” “respect,” and “fun” while the negative sub-categories 710 include topics such as “rude,” “unprofessional,” “harassment,” and “bathroom duty.” Each of these topics may include corresponding metric visualization indicating a measure of sentiment metrics. In one or more embodiments, the metric may refer to a number of mentions of the corresponding topics within associated documents. In one or more embodiments, the metric may be representative of an importance and impact metric, similar to one or more embodiments described above.
[0124] It will be understood that while one or more embodiments described herein referred to specific example graphical representations in which topics associated with employment and restaurant entities were illustrated. It will be understood that other types of entities, such as brands, products, businesses, influencers, and other organizations may be used as an entity for identifying documents and associated topics referenced therein. For example, the representation may include a graph showing sentiment metrics with respect to features/functionality of a particular product or reception of specific topics that are discussed or referenced by influencers when publishing content. Moreover, in one or more embodiments, the identified entity may refer to a collection of multiple entities, such as a set of multiple businesses, multiple product, or any other identified entity that can be associated with a collection of documents and having topics associated therewith.
[0125] Many of the features and functionalities described herein are described in connection with specific examples or embodiments. It will be understood that different features and acts described in connection with a specific example or implementation may apply to other examples or implementations. Moreover, it will be understood that alternative implementations may omit, add to, reorder, and/or modify any of the acts or series of acts described herein. In addition, the category audit system 104 may perform acts described herein as part of a method, Alternatively, the category audit system 104 may implement a non-transitory computer readable medium including instructions that, when executed by one or more processors, cause a computing device (e.g., a server device) to perform features and functionality described herein. In still further embodiments, a system can perform the features and functionality described herein.
[0126] Turning now to
[0127] As shown in
[0128] In one or more embodiments, the collection of documents includes one or more of a plurality of digital content items shared via a social networking system, a plurality of user-composed social networking posts shared via the social networking system, or a plurality of digital content items shared across a plurality of social networking systems. In one or more embodiments, receiving the collection of documents associated with the one or more entities includes identifying a set of documents that reference one or more of an organization, a product, or a brand associated with the one or more entities.
[0129] As further shown, the series of acts 800 may include an act 820 of tagging the collection of documents with metadata indicating identified topics based on an analysis of the text content. For example, in one or more embodiments, the act 830 includes tagging each document from the collection of documents with metadata indicating one or more identified categories of the document based on an analysis of the text content included within the document. In one or more embodiments, tagging each document includes adding metadata to a document file for each of any number of identified topics referenced by text content included within the document.
[0130] As further shown, the series of acts 800 may include an act 830 of determining metrics of importance and impact for the identified topics. For example, in one or more embodiments, the act 830 includes determining, for a set of topics, metrics of importance and metrics of impact associated with the one or more entities.
[0131] In one or more embodiments, the series of acts includes identifying the set of topics from a plurality of topics associated with one or more documents from the collection of documents where the set of topics includes a subset of topics from the plurality of topics. In one or more embodiments, the subset of topics are identified based on the subset of topics corresponding to each topic from the subset of topics being associated with a threshold number of tagged documents from the collection of documents. In one or more embodiments, the subset of topics are identified based on metrics of importance and metrics of impact for the subset of topics being higher than one or more threshold metrics of importance and impact.
[0132] In one or more embodiments, determining the metrics of importance for the set of topics includes identifying the set of topics from a plurality of topics discussed within the collection of documents, ranking the set of topics based on a frequency with which the respective topics are discussed within the collection of documents, and calculating a metric for each topic from the set of topics based on a magnitude with which the topic is discussed relative to other topics within the set of topics. In one or more embodiments, determining the metrics of impact for the set of topics includes, for each topic from the set of topics, determining an estimated cost associated with solving a problem associated with the topic, determining an estimated benefit associated with solving the problem associated with the topic, and calculating a benefit to cost ratio based on a comparison of the determined estimated benefit and the determined estimated cost.
[0133] As further shown, the series of acts 800 may include an act 840 of providing a graphical representation including interactive elements that are displayed via a graphical user interface based on the determined metrics of importance and impact associated with the identified topics. For example, in one or more embodiments, the act 840 includes providing a graphical representation including a plurality of interactive elements to be displayed on a graphical user interface based on a combination of the determined metrics of importance and the metrics of impact associated with respective topics from the set of topics.
[0134] In one or more embodiments, the text content includes unstructured text (or other types of unstructured data). Further, the series of acts 800 may include applying a machine learning model to each document from the collection of documents, the machine learning model being trained to analyze the unstructured text and output at least one identified topic of the document.
[0135] In one or more embodiments, the series of acts 800 includes identifying one or more categories including discrete groupings of topics from the set of topics. In this example, providing the graphical representation may include displaying an interactive element for each category of the one or more categories based on a combination of metrics of importance and metrics of impact for topics included within the category. In one or more embodiments, the series of acts 800 includes detecting a selection of a first interactive element from the plurality of interactive elements, the first interactive element being associated with a first category. The series of acts 800 may further include in response to detecting the selection of the first interactive element, providing a second set of interactive elements associated with corresponding topics from a grouping of topics included within the first category, each interactive element from the second set of interactive elements being displayed at a location within the graphical representation based on a corresponding metric of importance and metric of impact for an associated topic.
[0136] In one or more embodiments, the series of acts 800 includes detecting a selection of an interactive element from the plurality of interactive elements being associated with a topic from the set of topics. The series of acts 800 may further include, in response to detecting the selection of the interactive element, providing a display of a plurality of snippets from respective documents of the collection of documents referencing the topic.
[0137] In one or more embodiments, the series of acts 800 may include receiving additional documents including additional text associated with the one or more entities, modifying the metrics of importance and metrics of impact based on additional instances of topics from the set of topics within the additional documents, and modifying a display of the graphical presentation based on the modified metrics of importance and the modified metrics of impact. In one or more embodiments, the series of acts 800 further includes providing a visualization of one or more changes in the metrics of importance and the metrics of impact for respective topics from the set of topics over time in view of additional documents received over a period of time.
[0138]
[0139] The computer system 900 includes a processor 901. The processor 901 may be a general purpose single- or multi-chip microprocessor (e.g., an Advanced RISC (Reduced Instruction Set Computer) Machine (ARM)), a special purpose microprocessor (e.g., a digital signal processor (DSP)), a microcontroller, a programmable gate array, etc. The processor 901 may be referred to as a central processing unit (CPU). Although just a single processor 901 is shown in the computer system 900 of
[0140] The computer system 900 also includes memory 903 in electronic communication with the processor 901. The memory 903 may be any electronic component capable of storing electronic information. For example, the memory 903 may be embodied as random access memory (RAM), read-only memory (ROM), magnetic disk storage media, optical storage media, flash memory devices in RAM, on-board memory included with the processor, erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM) memory, registers, and so forth, including combinations thereof.
[0141] Instructions 905 and data 907 may be stored in the memory 903. The instructions 905 may be executable by the processor 901 to implement some or all of the functionality disclosed herein. Executing the instructions 905 may involve the use of the data 907 that is stored in the memory 903. Any of the various examples of modules and components described herein may be implemented, partially or wholly, as instructions 905 stored in memory 903 and executed by the processor 901. Any of the various examples of data described herein may be among the data 907 that is stored in memory 903 and used during execution of the instructions 905 by the processor 901.
[0142] A computer system 900 may also include one or more communication interfaces 909 for communicating with other electronic devices. The communication interface(s) 909 may be based on wired communication technology, wireless communication technology, or both. Some examples of communication interfaces 909 include a Universal Serial Bus (USB), an Ethernet adapter, a wireless adapter that operates in accordance with an Institute of Electrical and Electronics Engineers (IEEE) 802.11 wireless communication protocol, a Bluetooth® wireless communication adapter, and an infrared (IR) communication port.
[0143] A computer system 900 may also include one or more input devices 911 and one or more output devices 913. Some examples of input devices 911 include a keyboard, mouse, microphone, remote control device, button, joystick, trackball, touchpad, and lightpen. Some examples of output devices 913 include a speaker and a printer. One specific type of output device that is typically included in a computer system 900 is a display device 915. Display devices 915 used with embodiments disclosed herein may utilize any suitable image projection technology, such as liquid crystal display (LCD), light-emitting diode (LED), gas plasma, electroluminescence, or the like. A display controller 917 may also be provided, for converting data 907 stored in the memory 903 into text, graphics, and/or moving images (as appropriate) shown on the display device 915.
[0144] The various components of the computer system 900 may be coupled together by one or more buses, which may include a power bus, a control signal bus, a status signal bus, a data bus, etc. For the sake of clarity, the various buses are illustrated in
[0145] The techniques described herein may be implemented in hardware, software, firmware, or any combination thereof, unless specifically described as being implemented in a specific manner. Any features described as modules, components, or the like may also be implemented together in an integrated logic device or separately as discrete but interoperable logic devices. If implemented in software, the techniques may be realized at least in part by a non-transitory processor-readable storage medium comprising instructions that, when executed by at least one processor, perform one or more of the methods described herein. The instructions may be organized into routines, programs, objects, components, data structures, etc., which may perform particular tasks and/or implement particular data types, and which may be combined or distributed as desired in various embodiments.
[0146] The steps and/or actions of the methods described herein may be interchanged with one another without departing from the scope of the claims. In other words, unless a specific order of steps or actions is required for proper operation of the method that is being described, the order and/or use of specific steps and/or actions may be modified without departing from the scope of the claims.
[0147] The term “determining” encompasses a wide variety of actions and, therefore, “determining” can include calculating, computing, processing, deriving, investigating, looking up (e.g., looking up in a table, a database or another data structure), ascertaining and the like. Also, “determining” can include receiving (e.g., receiving information), accessing (e.g., accessing data in a memory) and the like. Also, “determining” can include resolving, selecting, choosing, establishing and the like.
[0148] The terms “comprising,” “including,” and “having” are intended to be inclusive and mean that there may be additional elements other than the listed elements. Additionally, it should be understood that references to “one embodiment” or “an embodiment” of the present disclosure are not intended to be interpreted as excluding the existence of additional embodiments that also incorporate the recited features. For example, any element or feature described in relation to an embodiment herein may be combinable with any element or feature of any other embodiment described herein, where compatible.
[0149] The present disclosure may be embodied in other specific forms without departing from its spirit or characteristics. The described embodiments are to be considered as illustrative and not restrictive. The scope of the disclosure is, therefore, indicated by the appended claims rather than by the foregoing description. Changes that come within the meaning and range of equivalency of the claims are to be embraced within their scope.