WO2016206099A1 - Latent topic determination - Google Patents

Latent topic determination Download PDF

Info

Publication number
WO2016206099A1
WO2016206099A1 PCT/CN2015/082512 CN2015082512W WO2016206099A1 WO 2016206099 A1 WO2016206099 A1 WO 2016206099A1 CN 2015082512 W CN2015082512 W CN 2015082512W WO 2016206099 A1 WO2016206099 A1 WO 2016206099A1
Authority
WO
WIPO (PCT)
Prior art keywords
social
latent topic
processor
social action
hidden variable
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.)
Ceased
Application number
PCT/CN2015/082512
Other languages
French (fr)
Inventor
Xiao-feng YU
Jun-Qing Xie
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Priority to PCT/CN2015/082512 priority Critical patent/WO2016206099A1/en
Publication of WO2016206099A1 publication Critical patent/WO2016206099A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • G06Q10/00Administration; Management
    • G06Q10/40Business processes related to social networking or social networking services
    • G06Q10/42Determination of affinities or common interests between users

Definitions

  • Social networks provide an environment for users to perform a variety of social actions such as generating content, communicating with other users, reviewing products, publishing papers, etc.
  • the exponential growth of social media and online social networking services worldwide has generated increased importance in predicting and understanding users’ behaviors and activities in socially connected networks.
  • Social action prediction can provide insights into the behaviors and experiences for users as well as market demand analysis and product improvement.
  • FIG. 1 is a block diagram of an example computing environment in which latent topic determination may be useful
  • FIG. 2 is a graphical representation of an example latent topic graph
  • FIG. 3 is a flowchart of an example method for latent topic determination
  • FIG. 4 is a flowchart of an example method for latent topic determination
  • FIG. 5 is a flowchart of an example method for latent topic determination
  • FIG. 6 is a block diagram of an example system for latent topic determination.
  • FIG. 7 is a block diagram of an example system for latent topic determination.
  • a topic may be defined as a set of fine-grained expressions that essentially captures a user’s preferences or interests.
  • the topic ⁇ AI, intelligence, artificial, machine ⁇ intrinsically illustrates a user’s interest of AI related areas.
  • a user interested in AI may be more likely to publish AI related papers than to publish software engineering papers.
  • the topic ⁇ Software, Hardware, PC ⁇ intrinsically illustrates a user’s interest of PC related areas.
  • a user interested in PCs may be more likely to review and purchase computer related products.
  • multiple topics can be utilized to explore a user’s diverse range of interests.
  • topics can be partially overlapped to exhibit related interests.
  • These topics are usually implicit and/or hidden, meaning that such topics are unobservable and unavailable in the majority of currently popular and predominant online social networking sites and are thus referred to as latent topics. Because the latent topics are hidden, the latent topics are not labeled. Labeling a latent topic may include associating a keyword or other descriptor to identify the latent topic. Labeling, or annotating, latent topics manually requires considerable engineering and human labor effort, which is time-consuming and ineffective.
  • Example systems for latent topic determination address these challenges by utilizing a latent topic graph (LTG) model to automatically learn intermediate interdependencies and dynamics between users’ social action and observable content.
  • Social actions may include any action taken on a social network, such as generating content, communicating with other users, reviewing products, publishing papers, etc.
  • Social networks may include any platforms that allow a user to generate content viewable by other users, such as a communication network, an academic network, a product review network, etc.
  • Observable content is content generated by a social action of the user, such as a paper, a post, a product review, a message, etc.
  • Observable content may be any data (text, images, video, etc. ) accessible on the social network. variables in terms of latent topics.
  • the intermediate interdependencies and dynamics between users’ social action and observable content are expressed in terms of latent topics.
  • the latent topics are represented in the LTG by a set of hidden variables.
  • LTG captures flexible interactions between the set of hidden variables and users’ social action variables to make these hidden variables interpretable for meaningful latent topic discovery.
  • LTG can also incorporate a variety of factors and evidences for accurate social action prediction.
  • the LTG model allows natural incorporation of unlabeled data for semi-supervised learning and scalable parallel and distributed computing of big social data.
  • An example method for determining latent topics may include determining, by a processor, a social action performed by a user in a social network. The method may also include extracting, by the processor, a hidden variable, corresponding to a user characteristic, from an observable content on the social network. The method may also include determining, by the processor, a latent topic based on the hidden variable, wherein the latent topic influences the social action of the user.
  • FIG. 1 is an example environment 100 in which various examples may be implemented as a latent topic determination system 110.
  • Latent topic determination system 110 may comprise various components, including a social action engine 112, an observable content engine 114, a hidden variable engine 116, a latent topic engine 118, a social action engine 120, and/or other components.
  • Environment 100 may also include various components including a server computing device 130 and a client computing device 132.
  • the client computing device 132 may communicate requests to and/or receive responses from the server computing device 130.
  • the server computing device 130 may receive and/or respond to requests from the client computing device 132.
  • the client computing device 132 may be any type of computing device providing a user interface through which a user can interact with a software application.
  • the client computing device 132 may include a laptop computing device, a desktop computing device, an all-in-one computing device, a tablet computing device, a mobile phone, and/or other electronic device suitable for displaying a user interface and processing user interactions with the displayed interface.
  • the server computing device 130 is depicted as a single computing device, the server computing device 130 may include any number of integrated or distributed computing devices serving at least one software application for consumption by the client computing device 132.
  • Network 134 may comprise any infrastructure or combination of infrastructures that enable electronic communication between the components.
  • the network 134 may include at least one of the Internet, an intranet, a PAN (Personal Area Network) , a LAN (Local Area Network) , a WAN (Wide Area Network) , a SAN (Storage Area Network) , a MAN (Metropolitan Area Network) , a wireless network, a cellular communications network, a Public Switched Telephone Network, and/or other network.
  • latent topic determination system 110 and the various components described herein may be implemented in hardware and/or a combination of hardware and programming that configures hardware. Furthermore, in FIG. 1 and other Figures described herein, different numbers of components or entities than depicted may be used.
  • latent topic determination system 110 may comprise various components, including a social action engine 112, an observable content engine 114, a hidden variable engine 116, a latent topic engine 118, a social action engine 120, and/or other components.
  • the components of the latent topic determination system 110 as described herein, may refer to a hardware or a combination of hardware and instructions that performs a designated function.
  • the hardware of the various components of latent topic determination system 110 may include one or both of a processor and a machine-readable storage medium, while the instructions are code stored on the machine-readable storage medium and executable by the processor to perform the designated function.
  • Social action engine 112 may determine a social action performed by a user in a social network.
  • Example social actions may include publishing a paper, citing a paper, creating a review, creating a user-user relationship, etc.
  • Social networks may include any platforms that allow a user to generate content viewable by other users, such as a communication network, an academic network, a product review network, etc.
  • Observable content engine 114 may identify an observable content on the social network.
  • the observable content may be generated by the social action of the user, such as a paper, a post, a product review, a message, etc.
  • Observable content may be any data (text, images, video, etc. ) accessible on the social network.
  • Hidden variable engine 116 may extract a hidden variable from the observable content on the social network.
  • the hidden variable may correspond to a user characteristic.
  • the user characteristics may include user preferences corresponding to a user of a social network, such as topics, products, etc.
  • a topic may be defined as a set of fine-grained expressions that essentially captures a user’s preferences or interests.
  • Example topics may include topics for research papers, topics for online product reviews, etc.
  • User characteristics may also include prior impressions from a first user of a social network on a second user of the social network. For example, a first user may have influence on a second user in creating a relationship, creating content, etc. In other examples, the user characteristics may include additional and/or alternate elements associated with a user.
  • Hidden variable engine 116 may extract a key word from an observable content on the social network, associate the key word with the latent topic and create a group of related latent topics.
  • the hidden variable engine 116 may incorporate one or more models, formulas, equations and/or algorithms in extracting the hidden variable.
  • the hidden variable engine 116 may incorporate a latent topic graph (LTG) model.
  • FIG. 2 shows a graphical representation of a model 200 of a latent topic graph (LTG) .
  • the model 200 includes a social action portion 202, a user portion 204 and a hidden variable portion 206.
  • the social action portion 202 captures dependencies P (y
  • the user potion 204 captures dependencies P (h
  • Hidden variable engine 116 may optimize and find the most likely types of social actions y * that have the maximum a posterior (MAP) probability P (y
  • MAP maximum a posterior
  • the model 200 uses a set of hidden variables as n latent topics of users’ interests, since h are not observable in social data s, where is the finite set of all possible hidden variable values.
  • the number of latent topics n may vary from 10 to 50 with an incremental step of 10, although this is only a sample value and a variety of values and increments may be used for the number of latent topics.
  • a hidden dynamic probabilistic model may be expressed as:
  • s) models probabilistic dependencies between observable social data s and hidden variables h
  • h) models probabilistic dependencies between hidden variables h and social action variables y.
  • distributions may be specified for these dependencies.
  • the LTG may be defined based on exponential-family random graph models (ERGMs) . If ⁇ c ⁇ and ⁇ d ⁇ are two sets of factors in s, the dependencies can be factorized as a product of factors over all cliques as:
  • g k (y, h) and f k (h, s) are feature functions for user behaviors, hidden variables, and observable social data. These feature functions capture the hidden-dynamic dependencies in LTG. y is a member of and h is a member of respectively.
  • the vector of model parameters is Z (h) and Z (s) are corresponding normalization functions defined as:
  • the model 200 captures intermediate interdependencies and dynamics between observable data and users’ social action variables in terms of hidden variables for latent topics of users’ preferences.
  • a benefit of LTG is its ability to represent rich and dynamic interdependencies and interactions between observable social data and hidden variables, and between hidden variables and social actions.
  • an entropy based regularization term may be used in the LTG model. Since -regularization typically leads the objective function to be nondifferentiable, -regularization may be more suitable for probabilistic models such as LTG. In view of such considerations, the objective function in LTG may be defined to optimize the model parameters ⁇ as:
  • the first term is the expectation of P (y, s) given the data distribution in the input network.
  • the second term is a - regularization term to avoid over-fitting.
  • s) represent empirical distribution and conditional distribution, respectively.
  • the third term aims to minimize the conditional entropy between hidden variables and social action labels, and ⁇ is a balance parameter to weight
  • the balance parameter may be set to a variety of values, such as ⁇ 0, 0.001, 0.005, 0.01, 0.05, 0.1 ⁇ .
  • the conditional entropy is the conditional probability distribution of social action labels given hidden variables. More importantly, the dynamics and flexibility are ensured between hidden variables and social action labels in order to make the hidden variables explainable to discover meaningful latent topics of users’ interests.
  • Conditional entropy may be defined as:
  • the model parameters ⁇ can be efficiently learned by maximizing the objective function. This can be expressed as:
  • s i simplifies the notation and denotes all information related to user u i , including all other users and dyads connected to u i in s.
  • s i is a subgraph of s characterized by user u i . Since the LTG model contains a hidden layer, the objective function O ( ⁇ ) is no longer convex, and a closed form solution may not exist because optimization procedures typically only find local optima. Taking the partial derivatives of the objective function with respect to the parameters ⁇ k and ⁇ k yields:
  • both formula (10) and formula (11) contain expectations of the fully-observed gradient, where the expectations are taken over the hidden variables h′. is a set of factors, P ⁇ (h′
  • s i ) is the same marginal probability required in a fully-observed LTG and thus can be computed in a similar fashion.
  • the marginal probabilities can be calculated as:
  • the gradient of the objective function could be calculated via formula (10) and formula (11) , and O ( ⁇ ) can be maximized by standard techniques such as L-BFGS (Limited Memory Broyden–Fletcher–Goldfarb–Shanno) and loopy belief propagation (LBP) .
  • L-BFGS Lited Memory Broyden–Fletcher–Goldfarb–Shanno
  • LBP loopy belief propagation
  • L-BFGS may not be efficient for large social graphs, since L-BFGS needs to scan the entire training set for normalization function computation and parameter update.
  • LBP loopy belief propagation
  • LBP loopy belief propagation
  • LBP loopy belief propagation
  • LBP loopy belief propagation
  • LBP loopy belief propagation
  • LBP loopy belief propagation
  • SGD stochastic gradient descent
  • SGD stochastic gradient descent
  • SGD can be decomposed into sessions and parallelized using one or more frameworks for distributed processing, such as the MapReduce framework.
  • Labeling users’ behaviors may be infeasible and expensive in large-scale networks. Accordingly, semi-supervised learning can be of great practical value.
  • the LTG model allows natural incorporation of unlabeled data for this technology.
  • the objective function O ( ⁇ ) is only optimized by using the labeled data.
  • the computation of empirical distributions and conditional probabilities can be naturally extended.
  • the expectations of feature functions f k (h, s) and g k (y, h) can be computed on the labeled data and are a good estimation of expectations of feature functions based on the whole dataset.
  • Scalability issue in dealing with large-scale social networks may also present a challenge.
  • This challenge may be addressed through the distributed implementation of the SGD learning algorithm based on a framework for distributed processing, such as the MapReduce framework for big social data.
  • SGD computes the gradient over a few training instances, it is straightforward to implement it in a parallel manner under the master-slave architecture of such a framework.
  • the gradient of the objective function can be computed distributively and independently on each computing data node in the map stage, and all gradient values and update model parameters on the name node can be merged in the reduce stage. The two stages are repeated until convergence.
  • social action engine 120 may predict a future social action based on the hidden variable and/or latent topic.
  • one problem of social action prediction is to find the most probable social action labels y * that have the maximum a posterior (MAP) probability P ⁇ (y
  • formula (16) the parameters ⁇ are estimated from the training dataset. Since the conditional probability P ⁇ (y
  • Latent topic determination system 110 may also include a latent topic engine 118.
  • the latent topic engine 118 may determine a latent topic based on the hidden variable.
  • the latent topic may influence the social action of the user.
  • the latent topics may also demonstrate a user’s interests for social action prediction.
  • the most likely latent topics h * can be obtained via maximizing the conditional probability P ⁇ (h
  • LTG learns an intermediate interdependencies and dynamics between social data s and social actions y in terms of latent topics h, the explainable latent topics should have flexible and reasonable dependencies with users’ social actions to capture users’ interests or preferences.
  • This nature of LTG modeling allows latent topics to be inferred as approximated most likely latent topics h * .
  • the social action is predicted, the corresponding values of hidden variables are also inferred. That is, when the most likely social action label y * is estimated using formula (17) , latent topics can be obtained such that P ⁇ (y
  • FIG. 3 is a flowchart of an example method 300 for latent topic determination.
  • Method 300 may be described below as being executed or performed by a system, for example, system 110 of FIG. 1, system 600 of FIG. 6 or system 700 of FIG. 7. Other suitable systems and/or computing devices may be used as well.
  • Method 300 may be implemented in the form of executable instructions stored on at least one machine-readable storage medium of the system and executed by at least one processor of the system.
  • method 300 may be implemented in the form of electronic circuitry (e.g., hardware) .
  • one or more steps of method 300 may be executed substantially concurrently or in a different order than shown in FIG. 3.
  • method 300 may include more or less steps than shown in FIG. 3.
  • one or more of the steps of method 300 may, at certain times, be ongoing and/or may repeat.
  • Method 300 may start at step 302 and continue to step 304 where the method may include determining a social action performed by a user in a social network.
  • the techniques in block 304 may be performed similarly to the techniques described in relation to social action engine 112 discussed above in reference to FIG. 1.
  • the method may include extracting a hidden variable from an observable content on the social network.
  • the techniques in block 306 may be performed similarly to the techniques described in relation to hidden variable engine 116 discussed above in reference to FIG. 1.
  • the hidden variable may correspond to a user characteristic.
  • the observable content may be generated by the social action of the user.
  • the method may include determining a latent topic based on the hidden variable.
  • the techniques in block 308 may be performed similarly to the techniques described in relation to latent topic engine 118 discussed above in reference to FIG. 1.
  • the latent topic may influence the social action of the user.
  • Method 300 may eventually continue to step 310, where method 300 may stop.
  • FIG. 4 is a flowchart of an example method 400 for latent topic determination.
  • Method 400 may be described below as being executed or performed by a system, for example, system 110 of FIG. 1, system 600 of FIG. 6 or system 700 of FIG. 7. Other suitable systems and/or computing devices may be used as well.
  • Method 400 may be implemented in the form of executable instructions stored on at least one machine-readable storage medium of the system and executed by at least one processor of the system.
  • method 400 may be implemented in the form of electronic circuitry (e.g., hardware) .
  • one or more steps of method 400 may be executed substantially concurrently or in a different order than shown in FIG. 4.
  • method 400 may include more or less steps than shown in FIG. 4.
  • one or more of the steps of method 400 may, at certain times, be ongoing and/or may repeat.
  • Method 400 may start at step 402 and continue to step 404 where the method may include determining a first probability that the social action depends on a hidden variable.
  • the techniques in block 404 may be performed similarly to the techniques described in relation to hidden variable engine 116 discussed above in reference to FIG. 1 and may incorporate one or more formulas described in relation to hidden variable engine 116, such as formulas (1) , (2) and (3) .
  • the method may include determining a second probability that the hidden variable depends on the observable content.
  • the techniques in block 406 may be performed similarly to the techniques described in relation to hidden variable engine 116 discussed above in reference to FIG. 1 and may incorporate one or more formulas described in relation to hidden variable engine 116, such as formulas (1) , (2) and (4) .
  • the method may include determining the latent topic based on the first probability and the second probability.
  • the latent topic may influence the social action of the user.
  • the techniques in block 408 may be performed similarly to the techniques described in relation to latent topic 118 discussed above in reference to FIG. 1 and may incorporate one or more formulas described in relation to latent topic 118, such as formulas (17) and (18) .
  • the method may include determining a balance parameter to weight the first probability that the social action depends on the hidden variable.
  • the techniques in block 410 may be performed similarly to the techniques described in relation to hidden variable engine 116 discussed above in reference to FIG. 1 and may incorporate one or more formulas described in relation to hidden variable engine 116, such as formula (7) .
  • the method may include determining a probability that the social action will occur on the social network.
  • the method may include optimizing a posterior probability that the social action will occur on the social network.
  • the posterior probability may be optimized by determining the most likely types of social actions that have the maximum a posterior (MAP) probability in the social network.
  • the techniques in block 412 may be performed similarly to the techniques described in relation to hidden variable engine 116 and/or social action engine 120 discussed above in reference to FIG. 1.
  • the techniques in block 306 may also incorporate one or more formulas described in relation to hidden variable engine 116 and/or social action engine 120, such as formula (16) and formula (17) .
  • Method 400 may eventually continue to step 414, where method 400 may stop.
  • FIG. 5 is a flowchart of an example method 500 for latent topic determination.
  • Method 500 may be described below as being executed or performed by a system, for example, system 110 of FIG. 1, system 600 of FIG. 6 or system 700 of FIG. 7. Other suitable systems and/or computing devices may be used as well.
  • Method 500 may be implemented in the form of executable instructions stored on at least one machine-readable storage medium of the system and executed by at least one processor of the system.
  • method 500 may be implemented in the form of electronic circuitry (e.g., hardware) .
  • one or more steps of method 500 may be executed substantially concurrently or in a different order than shown in FIG. 5.
  • method 500 may include more or less steps than shown in FIG. 5.
  • one or more of the steps of method 500 may, at certain times, be ongoing and/or may repeat.
  • Method 500 may start at step 502 and continue to step 504 where the method may include labeling the social action to create a labeled social action data. Labeling a latent topic may include associating a keyword or other descriptor to identify the latent topic.
  • the techniques in block 504 may be performed similarly to the techniques described in relation to hidden variable engine 116 discussed above in reference to FIG. 1 and may incorporate one or more formulas described in relation to hidden variable engine 116.
  • the method may include determining a first marginal probability that the latent topic influences the labeled social action data on the social network.
  • the techniques in block 506 may be performed similarly to the techniques described in relation to hidden variable engine 116 discussed above in reference to FIG.
  • the method may include determining a second marginal probability that the observable content influences the latent topic on the social network.
  • the techniques in block 508 may be performed similarly to the techniques described in relation to hidden variable engine 116 discussed above in reference to FIG. 1 and may incorporate one or more formulas described in relation to hidden variable engine 116, such as formula (14) .
  • the method may include determining a parameter for the latent topic based on the first marginal probability and the second marginal probability.
  • the techniques in block 510 may be performed similarly to the techniques described in relation to hidden variable engine 116 discussed above in reference to FIG.
  • the method may include determining a label for an unlabeled social action. Labels for the unknown social actions can be inferred from the social action labeled data. The label for the unlabeled social action may also be determined using a latent topic graph model, such as the LTG model 200 discussed above in reference to FIG. 2.
  • the techniques in block 512 may be performed similarly to the techniques described in relation to hidden variable engine 116 discussed above in reference to FIG. 1 and may incorporate one or more formulas described in relation to hidden variable engine 116, such as formula (15) .
  • An example latent topic graph model is discussed above in reference to FIG. 2. Method 500 may eventually continue to step 514, where method 500 may stop.
  • FIG. 6 is a block diagram of an example latent topic determination system 600.
  • System 600 may be similar to system 110 of FIG. 1, for example.
  • system 600 includes social action handler 602, observable content identifier 604, hidden variable extractor 606 and latent topic handler 608.
  • Social action handler 602 may determine a social action performed by a user in a social network.
  • Social action handler 602 may be implemented in the form of executable instructions stored on at least one machine-readable storage medium of system 600 and executed by at least one processor of system 600.
  • social action handler 602 may be implemented in the form of one or more hardware devices including electronic circuitry for implementing the functionality of social action handler 602.
  • Observable content identifier 604 may identify an observable content on the social network generated by the social action. Observable content identifier 604 may be implemented in the form of executable instructions stored on at least one machine-readable storage medium of system 600 and executed by at least one processor of system 600. Alternatively or in addition, observable content identifier 604 may be implemented in the form of one or more hardware devices including electronic circuitry for implementing the functionality of observable content identifier 604.
  • Hidden variable extractor 606 may extract a hidden variable from the observable content on the social network.
  • the hidden variable may correspond to a user characteristic.
  • Hidden variable extractor 606 may be implemented in the form of executable instructions stored on at least one machine-readable storage medium of system 600 and executed by at least one processor of system 600.
  • hidden variable extractor 606 may be implemented in the form of one or more hardware devices including electronic circuitry for implementing the functionality of hidden variable extractor 606.
  • Latent topic handler 608 may determine a latent topic based on the hidden variable.
  • the latent topic may define an interdependency between the social action and the observable content.
  • Latent topic handler 608 may be implemented in the form of executable instructions stored on at least one machine-readable storage medium of system 600 and executed by at least one processor of system 600.
  • latent topic handler 608 may be implemented in the form of one or more hardware devices including electronic circuitry for implementing the functionality of latent topic handler 608.
  • FIG. 7 is a block diagram of an example system 700 for latent topic determination.
  • System 700 may be similar to system 110 of FIG. 1, for example.
  • system 700 includes a processor 702 and a machine-readable storage medium 704.
  • the following descriptions refer to a single processor and a single machine-readable storage medium, the descriptions may also apply to a system with multiple processors and multiple machine-readable storage mediums.
  • the instructions may be distributed (e.g., stored) across multiple machine-readable storage mediums and the instructions may be distributed (e.g., executed by) across multiple processors.
  • Processor 702 may be one or more central processing units (CPUs) , microprocessors, and/or other hardware devices suitable for retrieval and execution of instructions stored in machine-readable storage medium 704. In the particular embodiment shown in FIG. 7, processor 702 may fetch, decode, and execute instructions 706, 708 and 710 to perform latent topic determination. As an alternative or in addition to retrieving and executing instructions, processor 702 may include one or more electronic circuits comprising a number of electronic components for performing the functionality of one or more of the instructions in machine-readable storage medium 704.
  • CPUs central processing units
  • microprocessors and/or other hardware devices suitable for retrieval and execution of instructions stored in machine-readable storage medium 704.
  • processor 702 may fetch, decode, and execute instructions 706, 708 and 710 to perform latent topic determination.
  • processor 702 may include one or more electronic circuits comprising a number of electronic components for performing the functionality of one or more of the instructions in machine-readable storage medium 704.
  • executable instruction representations e.g., boxes
  • executable instructions and/or electronic circuits included within one box may, in alternate embodiments, be included in a different box shown in the figures or in a different box not shown.
  • Machine-readable storage medium 704 may be any electronic, magnetic, optical, or other physical storage device that stores executable instructions.
  • machine-readable storage medium 704 may be, for example, Random Access Memory (RAM) , an Electrically-Erasable Programmable Read-Only Memory (EEPROM) , a storage drive, an optical disc, and the like.
  • Machine-readable storage medium 704 may be disposed within system 700, as shown in FIG. 7. In this situation, the executable instructions may be “installed” on the system 700.
  • machine-readable storage medium 704 may be a portable, external or remote storage medium, for example, that allows system 700 to download the instructions from the portable/external/remote storage medium. In this situation, the executable instructions may be part of an “installation package” .
  • machine-readable storage medium 704 may be encoded with executable instructions for a web technology responsive to mixtures of emotions.
  • social action instructions 706, when executed by a processor (e.g., 702) may cause system 700 to determine a social action performed by a user in a social network.
  • Hidden variable instructions 708, when executed by a processor (e.g., 702) may cause system 700 to extract a hidden variable from an observable content on the social network, wherein the hidden variable defines a set of expressions that identify a user interest.
  • the observable content may be generated by the social action of the user.
  • Latent topic instructions 710 when executed by a processor (e.g., 702) , may cause system 700 to determine a latent topic based on the hidden variable.
  • the latent topic may influence the social action of the user.
  • the social action may correspond to the user interest.
  • the foregoing disclosure describes a number of examples for latent topic determination.
  • the disclosed examples may include systems, devices, computer-readable storage media, and methods for latent topic determination.
  • certain examples are described with reference to the components illustrated in FIGS. 1-7.
  • the functionality of the illustrated components may overlap, however, and may be present in a fewer or greater number of elements and components. Further, all or part of the functionality of illustrated elements may co-exist or be distributed among several geographically dispersed locations. Further, the disclosed examples may be implemented in various environments and are not limited to the illustrated examples.
  • sequence of operations described in connection with FIGS. 1-7 are examples and are not intended to be limiting. Additional or fewer operations or combinations of operations may be used or may vary without departing from the scope of the disclosed examples. Furthermore, implementations consistent with the disclosed examples need not perform the sequence of operations in any particular order. Thus, the present disclosure merely sets forth possible examples of implementations, and many variations and modifications may be made to the described examples.

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

In one example in accordance with the present disclosure, a method for latent topic determination includes determining a social action performed by a user in a social network. The method includes extracting a hidden variable from an observable content on the social network. The hidden variable corresponds to a user characteristic. The method also includes determining a latent topic based on the hidden variable, wherein the latent topic influences the social action of the user.

Description

LATENT TOPIC DETERMINATION BACKGROUND
Social networks provide an environment for users to perform a variety of social actions such as generating content, communicating with other users, reviewing products, publishing papers, etc. The exponential growth of social media and online social networking services worldwide has generated increased importance in predicting and understanding users’ behaviors and activities in socially connected networks. Social action prediction can provide insights into the behaviors and experiences for users as well as market demand analysis and product improvement.
BRIEF DESCRIPTION OF THE DRAWINGS
The following detailed description references the drawings, wherein:
FIG. 1 is a block diagram of an example computing environment in which latent topic determination may be useful;
FIG. 2 is a graphical representation of an example latent topic graph;
FIG. 3 is a flowchart of an example method for latent topic determination;
FIG. 4 is a flowchart of an example method for latent topic determination;
FIG. 5 is a flowchart of an example method for latent topic determination;
FIG. 6 is a block diagram of an example system for latent topic determination; and
FIG. 7 is a block diagram of an example system for latent topic determination.
DETAILED DESCRIPTION
Social actions performed on social networks may be greatly influenced by user characteristics defining user preferences and user interests. Accordingly, modeling users’ topics of interest may play an important role in predicting social behaviors. As used herein, a topic may be defined as a set of fine-grained expressions that essentially captures a user’s preferences or interests. For example, in an academic social network, the topic {AI, intelligence, artificial, machine} intrinsically illustrates a user’s interest of AI related areas. A user interested in AI may be more likely to publish AI related papers than to publish software engineering papers. As another example, in a consumer reviewing site, the topic {Software, Hardware, PC} intrinsically illustrates a user’s interest of PC related areas. A user interested in PCs may be more likely to review and purchase computer related products.
As shown in the preceding examples, multiple topics can be utilized to explore a user’s diverse range of interests. In addition, topics can be partially overlapped to exhibit related interests. These topics are usually implicit and/or hidden, meaning that such topics are unobservable and unavailable in the majority of currently popular and predominant online social networking sites and are thus referred to as latent topics. Because the latent topics are hidden, the latent topics are not labeled. Labeling a latent topic may include associating a keyword or other descriptor to identify the latent topic. Labeling, or annotating, latent topics manually requires considerable engineering and human labor effort, which is time-consuming and ineffective.
Example systems for latent topic determination address these challenges by utilizing a latent topic graph (LTG) model to automatically  learn intermediate interdependencies and dynamics between users’ social action and observable content. Social actions may include any action taken on a social network, such as generating content, communicating with other users, reviewing products, publishing papers, etc. Social networks may include any platforms that allow a user to generate content viewable by other users, such as a communication network, an academic network, a product review network, etc. Observable content is content generated by a social action of the user, such as a paper, a post, a product review, a message, etc. Observable content may be any data (text, images, video, etc. ) accessible on the social network. variables in terms of latent topics.
The intermediate interdependencies and dynamics between users’ social action and observable content are expressed in terms of latent topics. The latent topics are represented in the LTG by a set of hidden variables. Through efficient training and inference algorithms, LTG captures flexible interactions between the set of hidden variables and users’ social action variables to make these hidden variables interpretable for meaningful latent topic discovery. LTG can also incorporate a variety of factors and evidences for accurate social action prediction. In addition, the LTG model allows natural incorporation of unlabeled data for semi-supervised learning and scalable parallel and distributed computing of big social data.
An example method for determining latent topics may include determining, by a processor, a social action performed by a user in a social network. The method may also include extracting, by the processor, a hidden variable, corresponding to a user characteristic, from an observable content on the social network. The method may also include determining, by the processor, a latent topic based on the hidden variable, wherein the latent topic influences the social action of the user.
FIG. 1 is an example environment 100 in which various examples may be implemented as a latent topic determination system 110. Latent topic determination system 110 may comprise various components, including a social action engine 112, an observable content engine 114, a hidden variable engine 116, a latent topic engine 118, a social action engine 120, and/or  other components. Environment 100 may also include various components including a server computing device 130 and a client computing device 132. The client computing device 132 may communicate requests to and/or receive responses from the server computing device 130. The server computing device 130 may receive and/or respond to requests from the client computing device 132. The client computing device 132 may be any type of computing device providing a user interface through which a user can interact with a software application. For example, the client computing device 132 may include a laptop computing device, a desktop computing device, an all-in-one computing device, a tablet computing device, a mobile phone, and/or other electronic device suitable for displaying a user interface and processing user interactions with the displayed interface. While the server computing device 130 is depicted as a single computing device, the server computing device 130 may include any number of integrated or distributed computing devices serving at least one software application for consumption by the client computing device 132.
The various components (e.g., components 130 and/or 132) depicted in FIG. 1 may be coupled to at least one other component via a network 134. Network 134 may comprise any infrastructure or combination of infrastructures that enable electronic communication between the components. For example, the network 134 may include at least one of the Internet, an intranet, a PAN (Personal Area Network) , a LAN (Local Area Network) , a WAN (Wide Area Network) , a SAN (Storage Area Network) , a MAN (Metropolitan Area Network) , a wireless network, a cellular communications network, a Public Switched Telephone Network, and/or other network. According to various implementations, latent topic determination system 110 and the various components described herein may be implemented in hardware and/or a combination of hardware and programming that configures hardware. Furthermore, in FIG. 1 and other Figures described herein, different numbers of components or entities than depicted may be used.
As described above, latent topic determination system 110 may comprise various components, including a social action engine 112, an observable content engine 114, a hidden variable engine 116, a latent topic  engine 118, a social action engine 120, and/or other components. The components of the latent topic determination system 110 as described herein, may refer to a hardware or a combination of hardware and instructions that performs a designated function. As is illustrated with respect to FIG. 7, the hardware of the various components of latent topic determination system 110, for example, may include one or both of a processor and a machine-readable storage medium, while the instructions are code stored on the machine-readable storage medium and executable by the processor to perform the designated function.
Social action engine 112 may determine a social action performed by a user in a social network. Example social actions may include publishing a paper, citing a paper, creating a review, creating a user-user relationship, etc. Social networks may include any platforms that allow a user to generate content viewable by other users, such as a communication network, an academic network, a product review network, etc.
Observable content engine 114 may identify an observable content on the social network. The observable content may be generated by the social action of the user, such as a paper, a post, a product review, a message, etc. Observable content may be any data (text, images, video, etc. ) accessible on the social network.
Hidden variable engine 116 may extract a hidden variable from the observable content on the social network. The hidden variable may correspond to a user characteristic.
The user characteristics may include user preferences corresponding to a user of a social network, such as topics, products, etc. A topic may be defined as a set of fine-grained expressions that essentially captures a user’s preferences or interests. Example topics may include topics for research papers, topics for online product reviews, etc. User characteristics may also include prior impressions from a first user of a social network on a second user of the social network. For example, a first user may have influence on a second user in creating a relationship, creating content, etc. In other examples, the user characteristics may include additional and/or alternate elements associated with a user. Hidden variable engine 116 may extract a key  word from an observable content on the social network, associate the key word with the latent topic and create a group of related latent topics. The hidden variable engine 116 may incorporate one or more models, formulas, equations and/or algorithms in extracting the hidden variable. For example, the hidden variable engine 116 may incorporate a latent topic graph (LTG) model.
FIG. 2 shows a graphical representation of a model 200 of a latent topic graph (LTG) . The model 200 includes a social action portion 202, a user portion 204 and a hidden variable portion 206. Although the model 200 illustrates five social actions, five users and three hidden variables, this is for example only and any number of social actions, users and/or hidden variables may be represented in the LTG model. The social action portion 202 captures dependencies P (y|h) between hidden variables h and social action variables y by feature functions g (. ) . The user potion 204 captures dependencies P (h|s) between observable social data s and hidden variables h by feature functions f (. ) .
In an attribute augmented social network 
Figure PCTCN2015082512-appb-000001
 representing 
Figure PCTCN2015082512-appb-000002
 users 
Figure PCTCN2015082512-appb-000003
 |ε| = M dyads or relationships between users 
Figure PCTCN2015082512-appb-000004
 and 
Figure PCTCN2015082512-appb-000005
 and attributes 
Figure PCTCN2015082512-appb-000006
 1 ≤ r ≤ L for all users and dyads, 
Figure PCTCN2015082512-appb-000007
 may represent N users’ behaviors and activities, and 
Figure PCTCN2015082512-appb-000008
 may represent n latent topics of users’ interests. Hidden variable engine 116 may optimize and find the most likely types of social actions y that have the maximum a posterior (MAP) probability P (y|s) given the social network s. Hidden variable engine 116 may also determine the most likely latent topics h* such that P (h|s) is optimized.
The model 200 uses a set of hidden variables 
Figure PCTCN2015082512-appb-000009
Figure PCTCN2015082512-appb-000010
 as n latent topics of users’ interests, since h are not observable in social data s, where 
Figure PCTCN2015082512-appb-000011
 is the finite set of all possible hidden variable values. In one example, the number of latent topics n may vary from 10 to 50 with an incremental step of 10, although this is only a sample value and a variety of values and increments may be used for the number of latent topics. A hidden dynamic probabilistic model may be expressed as:
Formula (1) :
Figure PCTCN2015082512-appb-000012
In formula (1) , P (h|s) models probabilistic dependencies between observable social data s and hidden variables h, while P (y|h) models probabilistic dependencies between hidden variables h and social action variables y. For the concrete modeling, distributions may be specified for these dependencies. The LTG may be defined based on exponential-family random graph models (ERGMs) . If {φc} and {ψd} are two sets of factors in s, the dependencies can be factorized as a product of factors over all cliques as:
Formula (2) :
Figure PCTCN2015082512-appb-000013
Each factor is instantiated as the exponential family of an inner product over sufficient statistics (feature functions) and corresponding parameters. The dependencies can be expressed as:
Formula (3) :
Figure PCTCN2015082512-appb-000014
Formula (4) :
Figure PCTCN2015082512-appb-000015
In formulas (3) and (4) , gk (y, h) and fk (h, s) are feature functions for user behaviors, hidden variables, and observable social data. These feature functions capture the hidden-dynamic dependencies in LTG. y is a member of 
Figure PCTCN2015082512-appb-000016
 and h is a member of 
Figure PCTCN2015082512-appb-000017
 respectively. The vector of model parameters is 
Figure PCTCN2015082512-appb-000018
 Z (h) and Z (s) are corresponding normalization functions defined as:
Formula (5) :
Figure PCTCN2015082512-appb-000019
Formula (6) :
Figure PCTCN2015082512-appb-000020
The model 200 captures intermediate interdependencies and dynamics between observable data and users’ social action variables in terms of hidden variables for latent topics of users’ preferences. A benefit of LTG is its ability to represent rich and dynamic interdependencies and interactions between observable social data and hidden variables, and between hidden variables and social actions.
Although exploiting an intermediate layer of hidden variables could model topics of users’ interests, it also makes the likelihood function non-convex. Noticeably, to avoid bad locally optimal solutions and yield flexible and interpretable interactions between hidden variables and desired social actions, an entropy based regularization term may be used in the LTG model. Since 
Figure PCTCN2015082512-appb-000021
-regularization typically leads the objective function to be nondifferentiable, 
Figure PCTCN2015082512-appb-000022
-regularization may be more suitable for probabilistic models such as LTG. In view of such considerations, the objective function in LTG may be defined to optimize the model parameters θ as:
Formula (7) :
Figure PCTCN2015082512-appb-000023
In formula (7) , the first term 
Figure PCTCN2015082512-appb-000024
 is the expectation of P (y, s) given the data distribution in the input network. The second term is a 
Figure PCTCN2015082512-appb-000025
- regularization term to avoid over-fitting. 
Figure PCTCN2015082512-appb-000026
 and Pθ (y|s) represent empirical distribution and conditional distribution, respectively. The third term 
Figure PCTCN2015082512-appb-000027
 aims to minimize the conditional entropy between hidden variables and social action labels, and η is a balance parameter to weight 
Figure PCTCN2015082512-appb-000028
 The balance parameter may be set to a variety of values, such as {0, 0.001, 0.005, 0.01, 0.05, 0.1} . The conditional entropy is the conditional probability distribution of social action labels given hidden variables. More importantly, the dynamics and flexibility are ensured between hidden variables and social action labels in order to make the hidden variables explainable to discover meaningful latent topics of users’ interests. Conditional entropy may be defined as:
Formula (8) :
Figure PCTCN2015082512-appb-000029
The model parameters θ can be efficiently learned by maximizing the objective function. This can be expressed as:
Formula (9) : 
Figure PCTCN2015082512-appb-000030
In the training set consisting of N users’ behavior labels 
Figure PCTCN2015082512-appb-000031
 of social graph s, si simplifies the notation and denotes all information related to user ui, including all other users and dyads connected to ui in s. In other words, si is a subgraph of s characterized by user ui. Since the LTG model contains a hidden layer, the objective function O (θ) is no longer convex, and a closed form solution may not exist because optimization procedures typically only find local optima. Taking the partial derivatives of the objective function with respect to the parameters λk and μk yields:
Formula (10) :
Figure PCTCN2015082512-appb-000032
Formula (11) :
Figure PCTCN2015082512-appb-000033
In the above formulas, both 
Figure PCTCN2015082512-appb-000034
 and 
Figure PCTCN2015082512-appb-000035
 are empirical distributions given the training data. y′ is a member of 
Figure PCTCN2015082512-appb-000036
 and h′ is a member of 
Figure PCTCN2015082512-appb-000037
 and similarly for y" and 
Figure PCTCN2015082512-appb-000038
 In formula (11) , k (y″, 
Figure PCTCN2015082512-appb-000039
) equals to the unique 
Figure PCTCN2015082512-appb-000040
 given 
Figure PCTCN2015082512-appb-000041
 and 
Figure PCTCN2015082512-appb-000042
 Both formula (10) and formula (11) require computing two different kinds of marginal probabilities: Pθ (h′|yi, si) and Pθ (y′, h′|si) .
In order to compute these two probabilities, the factor theory of ERGMs and the graphical structure of LTGs can be used (e.g., repeated structure and parameter tying) . Note that both formula (10) and formula (11) contain expectations of the fully-observed gradient, where the expectations are taken over the hidden variables h′. 
Figure PCTCN2015082512-appb-000043
 is a set of factors, Pθ (h′|yi, si) is exactly a marginal distribution of the clamped LTG defined as:
Formula (12) : 
Figure PCTCN2015082512-appb-000044
Another marginal probability Pθ (y′, h′|si) is the same marginal probability required in a fully-observed LTG and thus can be computed in a similar fashion. In summary, the marginal probabilities can be calculated as:
Formula (13) :
Figure PCTCN2015082512-appb-000045
Formula (14) :
Figure PCTCN2015082512-appb-000046
Now the gradient of the objective function could be calculated via formula (10) and formula (11) , and O (θ) can be maximized by standard techniques such as L-BFGS (Limited Memory Broyden–Fletcher–Goldfarb–Shanno) and loopy belief propagation (LBP) . However, L-BFGS may not be efficient for large social graphs, since L-BFGS needs to scan the entire training set for normalization function computation and parameter update. On the other hand, the approximation technique LBP is unstable and may cause convergence problems. To this end, stochastic gradient descent (SGD) may be exploited for optimization, which is much more computationally efficient than both L-BFGS and LBP. In addition, SGD can be decomposed into sessions and parallelized using one or more frameworks for distributed processing, such as the 
Figure PCTCN2015082512-appb-000047
 MapReduce framework.
Labeling users’ behaviors, however, may be infeasible and expensive in large-scale networks. Accordingly, semi-supervised learning can be of great practical value. The LTG model allows natural incorporation of unlabeled data for this technology. In the supervised learning setting described above, the objective function O (θ) is only optimized by using the labeled data. By involving unlabeled data, the computation of empirical distributions and conditional probabilities can be naturally extended. Given the independently and identically distributed (iid) social data, the expectations of feature functions fk (h, s) and gk (y, h) can be computed on the labeled data and are a good estimation of expectations of feature functions based on the whole dataset. To do this, the social action labeled data may be used to infer the unknown social action labels. If yla represents the labeling configuration inferred from the known social action labels y, and yall = y ∪ yla, the first term in O (θ) can be rewritten as:
Formula (15) : 
Figure PCTCN2015082512-appb-000048
Scalability issue in dealing with large-scale social networks may also present a challenge. This challenge may be addressed through the distributed implementation of the SGD learning algorithm based on a framework for distributed processing, such as the 
Figure PCTCN2015082512-appb-000049
 MapReduce framework for big social data. Since SGD computes the gradient over a few training instances, it is straightforward to implement it in a parallel manner under the master-slave architecture of such a framework. The gradient of the objective function can be computed distributively and independently on each computing data node in the map stage, and all gradient values and update model parameters on the name node can be merged in the reduce stage. The two stages are repeated until convergence.
Turning back to FIG. 1, social action engine 120 may predict a future social action based on the hidden variable and/or latent topic. As discussed above, one problem of social action prediction is to find the most probable social action labels y* that have the maximum a posterior (MAP) probability Pθ (y|s) for the new testing social data s. This could be inferred via maximizing the conditional model straightforwardly as:
Formula (16) : 
Figure PCTCN2015082512-appb-000050
In formula (16) , the parameters θ are estimated from the training dataset. Since the conditional probability Pθ (y|s) is defined in formula (1) , formula (16) can be rewritten as:
Formula (17) : 
Figure PCTCN2015082512-appb-000051
Both Pθ (y|s) and Pθ (h|s) can be estimated using formula (3) and formula (4) , respectively. Thus, the most likely social action labels y* can be computed using formula (17) .
Latent topic determination system 110 may also include a latent topic engine 118. The latent topic engine 118 may determine a latent topic based on the hidden variable. The latent topic may influence the social action of the user. The latent topics may also demonstrate a user’s interests  for social action prediction. The most likely latent topics h* can be obtained via maximizing the conditional probability Pθ (h|s) :
Formula (18) : 
Figure PCTCN2015082512-appb-000052
Since LTG learns an intermediate interdependencies and dynamics between social data s and social actions y in terms of latent topics h, the explainable latent topics should have flexible and reasonable dependencies with users’ social actions to capture users’ interests or preferences. This nature of LTG modeling allows latent topics 
Figure PCTCN2015082512-appb-000053
 to be inferred as approximated most likely latent topics h*. When the social action is predicted, the corresponding values of hidden variables are also inferred. That is, when the most likely social action label y* is estimated using formula (17) , latent topics 
Figure PCTCN2015082512-appb-000054
 can be obtained such that Pθ (y|s) and Pθ (h|s) are maximized as:
Formula 19: 
Figure PCTCN2015082512-appb-000055
FIG. 3 is a flowchart of an example method 300 for latent topic determination. Method 300 may be described below as being executed or performed by a system, for example, system 110 of FIG. 1, system 600 of FIG. 6 or system 700 of FIG. 7. Other suitable systems and/or computing devices may be used as well. Method 300 may be implemented in the form of executable instructions stored on at least one machine-readable storage medium of the system and executed by at least one processor of the system. Alternatively or in addition, method 300 may be implemented in the form of electronic circuitry (e.g., hardware) . In alternate embodiments of the present disclosure, one or more steps of method 300 may be executed substantially concurrently or in a different order than shown in FIG. 3. In alternate embodiments of the present disclosure, method 300 may include more or less steps than shown in FIG. 3. In some embodiments, one or more of the steps of method 300 may, at certain times, be ongoing and/or may repeat.
Method 300 may start at step 302 and continue to step 304 where the method may include determining a social action performed by a user in a social network. The techniques in block 304 may be performed similarly to the techniques described in relation to social action engine 112 discussed above in  reference to FIG. 1. At step 306, the method may include extracting a hidden variable from an observable content on the social network. The techniques in block 306 may be performed similarly to the techniques described in relation to hidden variable engine 116 discussed above in reference to FIG. 1. The hidden variable may correspond to a user characteristic. The observable content may be generated by the social action of the user. At step 308, the method may include determining a latent topic based on the hidden variable. The techniques in block 308 may be performed similarly to the techniques described in relation to latent topic engine 118 discussed above in reference to FIG. 1. The latent topic may influence the social action of the user. Method 300 may eventually continue to step 310, where method 300 may stop.
FIG. 4 is a flowchart of an example method 400 for latent topic determination. Method 400 may be described below as being executed or performed by a system, for example, system 110 of FIG. 1, system 600 of FIG. 6 or system 700 of FIG. 7. Other suitable systems and/or computing devices may be used as well. Method 400 may be implemented in the form of executable instructions stored on at least one machine-readable storage medium of the system and executed by at least one processor of the system. Alternatively or in addition, method 400 may be implemented in the form of electronic circuitry (e.g., hardware) . In alternate embodiments of the present disclosure, one or more steps of method 400 may be executed substantially concurrently or in a different order than shown in FIG. 4. In alternate embodiments of the present disclosure, method 400 may include more or less steps than shown in FIG. 4. In some embodiments, one or more of the steps of method 400 may, at certain times, be ongoing and/or may repeat.
Method 400 may start at step 402 and continue to step 404 where the method may include determining a first probability that the social action depends on a hidden variable. The techniques in block 404 may be performed similarly to the techniques described in relation to hidden variable engine 116 discussed above in reference to FIG. 1 and may incorporate one or more formulas described in relation to hidden variable engine 116, such as formulas (1) , (2) and (3) . At step 406, the method may include determining a  second probability that the hidden variable depends on the observable content. The techniques in block 406 may be performed similarly to the techniques described in relation to hidden variable engine 116 discussed above in reference to FIG. 1 and may incorporate one or more formulas described in relation to hidden variable engine 116, such as formulas (1) , (2) and (4) . At step 408, the method may include determining the latent topic based on the first probability and the second probability. The latent topic may influence the social action of the user. The techniques in block 408 may be performed similarly to the techniques described in relation to latent topic 118 discussed above in reference to FIG. 1 and may incorporate one or more formulas described in relation to latent topic 118, such as formulas (17) and (18) . At step 410, the method may include determining a balance parameter to weight the first probability that the social action depends on the hidden variable. The techniques in block 410 may be performed similarly to the techniques described in relation to hidden variable engine 116 discussed above in reference to FIG. 1 and may incorporate one or more formulas described in relation to hidden variable engine 116, such as formula (7) . At step 412, the method may include determining a probability that the social action will occur on the social network. For example, the method may include optimizing a posterior probability that the social action will occur on the social network. The posterior probability may be optimized by determining the most likely types of social actions that have the maximum a posterior (MAP) probability in the social network. The techniques in block 412 may be performed similarly to the techniques described in relation to hidden variable engine 116 and/or social action engine 120 discussed above in reference to FIG. 1. The techniques in block 306 may also incorporate one or more formulas described in relation to hidden variable engine 116 and/or social action engine 120, such as formula (16) and formula (17) . Method 400 may eventually continue to step 414, where method 400 may stop.
FIG. 5 is a flowchart of an example method 500 for latent topic determination. Method 500 may be described below as being executed or performed by a system, for example, system 110 of FIG. 1, system 600 of FIG. 6 or system 700 of FIG. 7. Other suitable systems and/or computing devices may  be used as well. Method 500 may be implemented in the form of executable instructions stored on at least one machine-readable storage medium of the system and executed by at least one processor of the system. Alternatively or in addition, method 500 may be implemented in the form of electronic circuitry (e.g., hardware) . In alternate embodiments of the present disclosure, one or more steps of method 500 may be executed substantially concurrently or in a different order than shown in FIG. 5. In alternate embodiments of the present disclosure, method 500 may include more or less steps than shown in FIG. 5. In some embodiments, one or more of the steps of method 500 may, at certain times, be ongoing and/or may repeat.
Method 500 may start at step 502 and continue to step 504 where the method may include labeling the social action to create a labeled social action data. Labeling a latent topic may include associating a keyword or other descriptor to identify the latent topic. The techniques in block 504 may be performed similarly to the techniques described in relation to hidden variable engine 116 discussed above in reference to FIG. 1 and may incorporate one or more formulas described in relation to hidden variable engine 116. At step 506, the method may include determining a first marginal probability that the latent topic influences the labeled social action data on the social network. The techniques in block 506 may be performed similarly to the techniques described in relation to hidden variable engine 116 discussed above in reference to FIG. 1 and may incorporate one or more formulas described in relation to hidden variable engine 116, such as formulas (12) and (13) . At step 508, the method may include determining a second marginal probability that the observable content influences the latent topic on the social network. The techniques in block 508 may be performed similarly to the techniques described in relation to hidden variable engine 116 discussed above in reference to FIG. 1 and may incorporate one or more formulas described in relation to hidden variable engine 116, such as formula (14) . At step 510, the method may include determining a parameter for the latent topic based on the first marginal probability and the second marginal probability. The techniques in block 510 may be performed similarly to the techniques described in relation to hidden variable engine 116  discussed above in reference to FIG. 1 and may incorporate one or more formulas described in relation to hidden variable engine 116. At step 512, the method may include determining a label for an unlabeled social action. Labels for the unknown social actions can be inferred from the social action labeled data. The label for the unlabeled social action may also be determined using a latent topic graph model, such as the LTG model 200 discussed above in reference to FIG. 2. The techniques in block 512 may be performed similarly to the techniques described in relation to hidden variable engine 116 discussed above in reference to FIG. 1 and may incorporate one or more formulas described in relation to hidden variable engine 116, such as formula (15) . An example latent topic graph model is discussed above in reference to FIG. 2. Method 500 may eventually continue to step 514, where method 500 may stop.
FIG. 6 is a block diagram of an example latent topic determination system 600. System 600 may be similar to system 110 of FIG. 1, for example. In the embodiment of FIG. 6, system 600 includes social action handler 602, observable content identifier 604, hidden variable extractor 606 and latent topic handler 608.
Social action handler 602 may determine a social action performed by a user in a social network. Social action handler 602 may be implemented in the form of executable instructions stored on at least one machine-readable storage medium of system 600 and executed by at least one processor of system 600. Alternatively or in addition, social action handler 602 may be implemented in the form of one or more hardware devices including electronic circuitry for implementing the functionality of social action handler 602.
Observable content identifier 604 may identify an observable content on the social network generated by the social action. Observable content identifier 604 may be implemented in the form of executable instructions stored on at least one machine-readable storage medium of system 600 and executed by at least one processor of system 600. Alternatively or in addition, observable content identifier 604 may be implemented in the form of one or more hardware devices including electronic circuitry for implementing the functionality of observable content identifier 604.
Hidden variable extractor 606 may extract a hidden variable from the observable content on the social network. The hidden variable may correspond to a user characteristic. Hidden variable extractor 606 may be implemented in the form of executable instructions stored on at least one machine-readable storage medium of system 600 and executed by at least one processor of system 600. Alternatively or in addition, hidden variable extractor 606 may be implemented in the form of one or more hardware devices including electronic circuitry for implementing the functionality of hidden variable extractor 606.
Latent topic handler 608 may determine a latent topic based on the hidden variable. The latent topic may define an interdependency between the social action and the observable content. Latent topic handler 608 may be implemented in the form of executable instructions stored on at least one machine-readable storage medium of system 600 and executed by at least one processor of system 600. Alternatively or in addition, latent topic handler 608 may be implemented in the form of one or more hardware devices including electronic circuitry for implementing the functionality of latent topic handler 608.
FIG. 7 is a block diagram of an example system 700 for latent topic determination. System 700 may be similar to system 110 of FIG. 1, for example. In the embodiment of FIG. 7, system 700 includes a processor 702 and a machine-readable storage medium 704. Although the following descriptions refer to a single processor and a single machine-readable storage medium, the descriptions may also apply to a system with multiple processors and multiple machine-readable storage mediums. In such examples, the instructions may be distributed (e.g., stored) across multiple machine-readable storage mediums and the instructions may be distributed (e.g., executed by) across multiple processors.
Processor 702 may be one or more central processing units (CPUs) , microprocessors, and/or other hardware devices suitable for retrieval and execution of instructions stored in machine-readable storage medium 704. In the particular embodiment shown in FIG. 7, processor 702 may fetch, decode, and execute  instructions  706, 708 and 710 to perform latent topic determination. As an alternative or in addition to retrieving and executing instructions, processor 702  may include one or more electronic circuits comprising a number of electronic components for performing the functionality of one or more of the instructions in machine-readable storage medium 704. With respect to the executable instruction representations (e.g., boxes) described and shown herein, it should be understood that part or all of the executable instructions and/or electronic circuits included within one box may, in alternate embodiments, be included in a different box shown in the figures or in a different box not shown.
Machine-readable storage medium 704 may be any electronic, magnetic, optical, or other physical storage device that stores executable instructions. Thus, machine-readable storage medium 704 may be, for example, Random Access Memory (RAM) , an Electrically-Erasable Programmable Read-Only Memory (EEPROM) , a storage drive, an optical disc, and the like. Machine-readable storage medium 704 may be disposed within system 700, as shown in FIG. 7. In this situation, the executable instructions may be “installed” on the system 700. Alternatively, machine-readable storage medium 704 may be a portable, external or remote storage medium, for example, that allows system 700 to download the instructions from the portable/external/remote storage medium. In this situation, the executable instructions may be part of an “installation package” . As described herein, machine-readable storage medium 704 may be encoded with executable instructions for a web technology responsive to mixtures of emotions.
Referring to FIG. 7, social action instructions 706, when executed by a processor (e.g., 702) , may cause system 700 to determine a social action performed by a user in a social network. Hidden variable instructions 708, when executed by a processor (e.g., 702) , may cause system 700 to extract a hidden variable from an observable content on the social network, wherein the hidden variable defines a set of expressions that identify a user interest. The observable content may be generated by the social action of the user.
Latent topic instructions 710, when executed by a processor (e.g., 702) , may cause system 700 to determine a latent topic based on the hidden variable. The latent topic may influence the social action of the user. The social action may correspond to the user interest.
The foregoing disclosure describes a number of examples for latent topic determination. The disclosed examples may include systems, devices, computer-readable storage media, and methods for latent topic determination. For purposes of explanation, certain examples are described with reference to the components illustrated in FIGS. 1-7. The functionality of the illustrated components may overlap, however, and may be present in a fewer or greater number of elements and components. Further, all or part of the functionality of illustrated elements may co-exist or be distributed among several geographically dispersed locations. Further, the disclosed examples may be implemented in various environments and are not limited to the illustrated examples.
Further, the sequence of operations described in connection with FIGS. 1-7 are examples and are not intended to be limiting. Additional or fewer operations or combinations of operations may be used or may vary without departing from the scope of the disclosed examples. Furthermore, implementations consistent with the disclosed examples need not perform the sequence of operations in any particular order. Thus, the present disclosure merely sets forth possible examples of implementations, and many variations and modifications may be made to the described examples.
What is claimed is:

Claims (15)

  1. A method for determining latent topics, the method comprising:
    determining, by a processor, a social action performed by a user in a social network;
    extracting, by the processor, a hidden variable from an observable content on the social network, wherein the hidden variable corresponds to a user characteristic; and
    determining, by the processor, a latent topic based on the hidden variable, wherein the latent topic influences the social action of the user.
  2. The method of claim 1 further comprising:
    determining, by the processor, a first probability that the social action depends on the hidden variable;
    determining, by the processor, a second probability that the hidden variable depends on the observable content; and
    determining, by the processor, the latent topic based on the first probability and the second probability.
  3. The method of claim 2 further comprising:
    determining, by the processor, a balance parameter to weight the first probability that the social action depends on the hidden variable.
  4. The method of claim 1 further comprising:
    predicting, by the processor, a future social action based on the latent topic.
  5. The method of claim 1 further comprising:
    extracting, by the processor, a key word from the observable content;
    associating, by the processor, the key word with the latent topic; and
    creating, by the processor, a group of related latent topics.
  6. The method of claim 1 further comprising:
    labeling, by the processor, the social action to create a labeled social action data;
    determining, by the processor, a first marginal probability that the latent topic influences the labeled social action data on the social network;
    determining, by the processor, a second marginal probability that the observable content influences the latent topic on the social network; and
    determining, by the processor, a parameter for the latent topic based on the first marginal probability and the second marginal probability.
  7. The method of claim 6 further comprising:
    determining, by the processor, a label for an unlabeled social action using a latent topic graph model.
  8. The method of claim 1 further comprising:
    optimizing a posterior probability that the social action will occur on the social network.
  9. A system for determining latent topics, the system comprising:
    a social action handler to determine a social action performed by a user in a social network;
    an observable content identifier to identify an observable content on the social network generated by the social action;
    a hidden variable extractor to extract a hidden variable from the observable content on the social network, wherein the hidden variable corresponds to a user characteristic; and
    a latent topic handler to determine a latent topic based on the hidden variable, wherein the latent topic defines an interdependency between the social action and the observable content.
  10. The system of claim 9 wherein the latent topic handler is further to:
    determine a first probability that the social action depends on the hidden variable; determine a second probability that the hidden variable depends on the
    observable content; and
    determine the latent topic based on the first probability and the second probability.
  11. The system of claim 9 further comprising:
    a social action predictor to predict a future social action based on the latent topic.
  12. A non-transitory machine-readable storage medium comprising instructions executable by a processor of a computing device for determining latent topics, the machine-readable storage medium comprising:
    instructions to determine a social action performed by a user in a social network;
    instructions to extract a hidden variable from an observable content on the social network, wherein the hidden variable defines a set of expressions that identify a user interest; and
    instructions to determine a latent topic based on the hidden variable, wherein the latent topic influences the social action of the user and the social action corresponds to the user interest.
  13. The non-transitory machine-readable storage medium of claim 12, wherein the observable content is generated by the social action.
  14. The non-transitory machine-readable storage medium of claim 12 further comprising:
    instructions to predict a future social action based on the latent topic.
  15. The non-transitory machine-readable storage medium of claim 12 further comprising:
    instructions to label the social action to create a labeled social action data;
    instructions to determine a first marginal probability that the latent topic influences the labeled social action data on the social network;
    instructions to determine a second marginal probability that the observable content action data influences the latent topic on the social network; and
    instructions to determine a parameter for the latent topic based on the first marginal probability and the second marginal probability.
PCT/CN2015/082512 2015-06-26 2015-06-26 Latent topic determination Ceased WO2016206099A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2015/082512 WO2016206099A1 (en) 2015-06-26 2015-06-26 Latent topic determination

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2015/082512 WO2016206099A1 (en) 2015-06-26 2015-06-26 Latent topic determination

Publications (1)

Publication Number Publication Date
WO2016206099A1 true WO2016206099A1 (en) 2016-12-29

Family

ID=57584590

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/082512 Ceased WO2016206099A1 (en) 2015-06-26 2015-06-26 Latent topic determination

Country Status (1)

Country Link
WO (1) WO2016206099A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11544462B2 (en) 2018-12-07 2023-01-03 International Business Machines Corporation Processing electronic communications to promote achievement

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102687166A (en) * 2009-12-31 2012-09-19 诺基亚公司 Methods and apparatuses for user interest modeling
CN103812872A (en) * 2014-02-28 2014-05-21 中国科学院信息工程研究所 Network water army behavior detection method and system based on mixed Dirichlet process
CN104077417A (en) * 2014-07-18 2014-10-01 中国科学院计算技术研究所 Figure tag recommendation method and system in social network
WO2014193424A1 (en) * 2013-05-31 2014-12-04 Intel Corporation Online social persona management

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102687166A (en) * 2009-12-31 2012-09-19 诺基亚公司 Methods and apparatuses for user interest modeling
WO2014193424A1 (en) * 2013-05-31 2014-12-04 Intel Corporation Online social persona management
CN103812872A (en) * 2014-02-28 2014-05-21 中国科学院信息工程研究所 Network water army behavior detection method and system based on mixed Dirichlet process
CN104077417A (en) * 2014-07-18 2014-10-01 中国科学院计算技术研究所 Figure tag recommendation method and system in social network

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11544462B2 (en) 2018-12-07 2023-01-03 International Business Machines Corporation Processing electronic communications to promote achievement

Similar Documents

Publication Publication Date Title
Guo et al. Promptfl: Let federated participants cooperatively learn prompts instead of models–federated learning in age of foundation model
Shi et al. A multimodal hybrid parallel network intrusion detection model
CN118093801B (en) Information interaction method and device based on large language model and electronic equipment
US20240386202A1 (en) Tuning generative models using latent-variable inference
Liang et al. Modeling user exposure in recommendation
US10606910B2 (en) Ranking search results using machine learning based models
CN111651671A (en) User object recommendation method and device, computer equipment and storage medium
CN115510313A (en) Information recommendation method and device, storage medium and computer equipment
US20250259047A1 (en) Computing platform for neuro-symbolic artificial intelligence applications
CN117194771A (en) A dynamic knowledge graph service recommendation method based on graph model representation learning
Chamoso et al. Social computing for image matching
Munikoti et al. GraMeR: Graph meta reinforcement learning for multi-objective influence maximization
CN114926192A (en) Information processing method and device and computer readable storage medium
US20250384346A1 (en) Generation and Processing of Reduced Dimensionality Embeddings
Nahar et al. Collaborative Learning based Recommendation System for Content Streaming Platform using Non-Negative Matrix Factorization Clustering
Yuan et al. Sign prediction on unlabeled social networks using branch and bound optimized transfer learning
WO2016206099A1 (en) Latent topic determination
Lombardo et al. ActorNode2Vec: An Actor-based solution for Node Embedding over large networks
US20250209308A1 (en) Risk Analysis and Visualization for Sequence Processing Models
US20160042277A1 (en) Social action and social tie prediction
CN116578774A (en) Method, device, computer equipment and storage medium for predictive sorting
Mohammed et al. Location-aware deep learning-based framework for optimizing cloud consumer quality of service-based service composition
CN114637926A (en) Content recommendation method and device, electronic equipment and storage medium
CN113988932A (en) User activation promoting method, device, equipment and storage medium based on feature matching
CN116521884A (en) Object information extraction method and device, storage medium and electronic equipment

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15895997

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15895997

Country of ref document: EP

Kind code of ref document: A1