US20140249785A1 - Modeling social behavior - Google Patents

Modeling social behavior Download PDF

Info

Publication number
US20140249785A1
US20140249785A1 US14/148,164 US201414148164A US2014249785A1 US 20140249785 A1 US20140249785 A1 US 20140249785A1 US 201414148164 A US201414148164 A US 201414148164A US 2014249785 A1 US2014249785 A1 US 2014249785A1
Authority
US
United States
Prior art keywords
relational
events
event history
data
actors
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US14/148,164
Inventor
Josh Lospinoso
Guy Louis Filippelli
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.)
RedOwl Analytics Inc
Original Assignee
RedOwl Analytics Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by RedOwl Analytics Inc filed Critical RedOwl Analytics Inc
Priority to US14/148,164 priority Critical patent/US20140249785A1/en
Assigned to RedOwl Analytics, Inc. reassignment RedOwl Analytics, Inc. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: FILIPPELLI, GUY LOUIS, LOSPINOSO, Josh
Priority to GB1517306.5A priority patent/GB2526501A/en
Priority to PCT/US2014/020043 priority patent/WO2014134630A1/en
Publication of US20140249785A1 publication Critical patent/US20140249785A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • G06N7/005
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/048Fuzzy inferencing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models

Definitions

  • the present application relates to statistically modeling social behavior.
  • Descriptive statistics may be used to quantitatively describe a collection of data gathered from several sources, in order summarize features of the data, and electronic communications generate data trails that can be used to formulate statistics.
  • Email records for example, may be parsed to identify a sender of an email, a topic or subject of the email, and one or more recipients of the email.
  • phone records provide information that may be used to identify a caller and a recipient of a phone call.
  • Descriptive statistics are not developed on the basis of probability theory and, as such, are not used to draw conclusions from data arising from systems affected by random variation.
  • Inferential statistics are based on probability theory and are used to draw conclusions from data that is subject to random variation.
  • Social behavior such as communications behavior
  • inferential statistics either alone or in combination with descriptive statistics, may therefore be applied to data reflecting the social behavior to draw inferences about such behavior.
  • a relational event history is determined based on a data set, the relational event history including a set of relational events that occurred in time among a set of actors.
  • Data is populated in a probability model based on the relational event history, where the probability model is formulated as a series of conditional probabilities that correspond to a set of sequential decisions by an actor for each relational event, the probability model including one or more statistical parameters and corresponding statistics that relate to one or more of senders of relational events, modes of relational events, topics of relational events, or recipients of relational events.
  • a baseline communications behavior for the relational event history is determined based on the populated probability model, where the baseline comprises a first set of values for the one or more statistical parameters, and departures from the baseline communications behavior are determined within the relational event history.
  • determining departures from the baseline communications behavior within the relational event history includes determining a second set of values for the statistical parameters based on one or more subsets of the relational events included in the relational event history, and comparing the second set of values for the statistical parameters to the first set of values. Comparing the second set of values for the statistical parameters to the first set of values may include determining a hypothesis regarding communications behavior within the relational event history, and testing the hypothesis using the second set of values.
  • the set of sequential decisions may include a decision to send a communication, a decision as to a mode of the communication, a decision as to a topic of the communication, and one or more decisions as to recipients of the communication.
  • determining the relational event history based on the data set may include identifying, for each relational event in a set of relational events included in the data set, a sender, a topic, a mode, and one or more recipients.
  • generating the relational event history may include extracting data from the data set, transforming the extracted data, loading the transformed data, and enriching the loaded data.
  • one or more covariates may be determined based on the data set, where the probability model includes the one or more covariates.
  • the one or more covariates may include one or more global covariates, actor covariates, or dyadic covariates, where a global covariate has a single value for all actors or pairs of actors that are included in the set of actors, where an actor covariate has a different value for each actor that is included in the set of actors, and where a dyadic covariate has a different value for each pair of actors that is included in the set of actors.
  • the baseline communications behavior for the relational event history may be determined using a maximum-likelihood method.
  • the baseline communications behavior for the relational event history may be determined using a distributed computing platform.
  • FIG. 1 is a diagram of an example of a system that analyzes a relational event history.
  • FIG. 2 is a flowchart of an example of a process for analyzing a relational event history.
  • FIG. 3 is a flowchart of an example of a process for determining a baseline communications behavior for a relational event history.
  • FIG. 4 is a flowchart of another example of a process for determining a baseline communications behavior for a relational event history.
  • FIG. 5 is a flowchart of an example of a process for modeling a set of sequential decisions made by a sender of a communication in determining recipients of the communication.
  • FIG. 6 is a flowchart of an example of a process for determining a statistic using a decay function.
  • FIG. 7 is a flowchart of an example of a process for analyzing social behavior.
  • FIGS. 8-23 provide examples of user interfaces and of data visualizations that may be output to user.
  • One way to approach modeling of communications between actors is to formulate a probability density function as a series of conditional probabilities that can be represented by decisions made sequentially. More specifically, for each relational event (e.g., a communications event occurring at a moment in time among a finite set of actors) in a set of relational events, the probability of the event's occurrence can be decomposed such that it is the product of the probabilities of each of at least four sequential decisions made by the event's initiating actor: (1) a decision to send a communication at a point in time; (2) a decision as to a mode or channel of the communication; (3) a decision as to a topic or content of the communication; and (4) one or more decisions as to one or more recipients of the communication.
  • the sequence of sender, mode, topic, and recipient(s) can be useful, in appropriate cases, from a computational standpoint.
  • a proportional hazards model similar to the Cox model, may be employed, so that the “risk” of a specific relational event occurring is relative to other possible relational events, which allows for the prediction of which events are most likely to occur next, but not specifically when.
  • the decisions of an actor to send a communication, and as to the mode, topic, and recipient(s) of the communication may depend on any relational event that occurred prior to the communication, as well as on covariates that can take exogenous information (e.g., data other than communications data) into account.
  • a multinomial logit distribution may be used to model the probabilities of the discrete choice problem presented by the decision, where the primary factors affecting the probability of an event's occurrence are a set of statistics (also referred to as effects) that describe the event in question.
  • An arbitrary number of statistics can be included in the model, and the types of statistics included may form the basis for the kinds of inferences that can be drawn from the model.
  • the statistics may be based in social network theory, and may relate to one or more of senders, modes, topics, or recipients of relational events.
  • a “trigger” effect for example, relates to the tendency of an actor to communicate based on the recency of a received communication, while a “broken record” effect relates to an overall tendency to communicate about a topic.
  • the statistics (or effects) may be a scalar value. In some cases, a coefficient (referred to as a statistical parameter or effect value) is multiplied by these statistic values within the model. The statistical parameter may therefore indicate the statistic's effect on event probabilities.
  • the model can be populated based on a relational event history that is determined from a data set. Using the populated model, a baselining process may be employed to determine communications behavior that is “normal” for a given relational event history. This baseline includes a set of effect values (statistical parameters) that correspond to the statistics included in the model. This baseline and the populated model can be used to determine departures from the normal communications behavior.
  • a probability model fitted to a relational event history derived from event and other data may be used to identify patterns, changes, and anomalies within the relational event history, and to draw sophisticated inferences regarding a variety of communications behaviors.
  • FIG. 1 is a diagram of an example of a system that analyzes a relational event history.
  • the system 100 includes data sources 101 and 102 , data normalizer 103 , inference engine 107 , and user interface (“UI”) 108 .
  • the data normalizer 103 may be used to determine relational event history 104 and covariate data 105
  • the inference engine 107 may be used to determine model 106 , and to draw inferences from the model.
  • Data sources 101 and 102 may be connected to data normalizer 103 through a network, and normalizer 103 , inference engine 107 , and UI 108 may interface with other computers through the network.
  • the data sources 101 and 102 may be implemented using a single computer, or may instead be implemented using two or more computers that interface through the network.
  • normalizer 103 , inference engine 107 , and UI 108 may implemented using a single computer, or may instead be implemented using two or more computers that interface through the network.
  • Inference engine 107 may, for example, be implemented on a distributing computing platform in which various processes involved in drawing inferences from a relational event history and a set of covariates are distributed to a plurality of computers.
  • one or more computers associated with the inference engine 107 may access a relational event history, a set of covariates that have been formatted by normalizer 103 , and a set of focal actors whose communications behavior will be the subject of analysis.
  • Each of the computers may use the accessed data to perform a portion of the computations involved in populating the model 106 , determining a baseline, and/or determining departures from the baseline.
  • the model may include a set of event statistics, or effects, that impact the probability of events.
  • each of the computers may perform a portion of the computations involved in determining these event statistics, as well as determining the probabilities of the events.
  • determining a baseline may involve determining a set of effect values, which are coefficients that are multiplied by the event statistics in the model 106 , and accordingly describe the impact of each effect on event probabilities.
  • the process of determining the effect values may involve a maximum likelihood estimation in which each of the computers perform a portion of the computations involved.
  • Data source 101 may contain data that relates to communications events. The data may have originated from one or more sources, may relate to one or more modes of communication, and may be stored in one or more formats. Data source 101 may, for example, store email records, phone logs, chat logs, and/or server logs. Data source 101 may be, for example, a digital archive of electronic communications that is maintained by an organization, the archive containing data related to communications involving actors associated with the organization.
  • Data source 102 may contain additional data that, although not directly related to communications events, may nevertheless prove valuable in drawing inferences from a relational event history.
  • Data source 102 may, for example, store information relating to an organization and its personnel, such as organizational charts, staff directories, profit and loss records, and/or employment records.
  • Data source 102 may be, for example, a digital archive that is maintained by an organization, the archive containing data relating to the operations of the organization.
  • Data normalizer 103 may be used to load, extract, parse, filter, enrich, adapt, and/or publish event data and other data accessed through one or more data sources, such as data sources 101 and 102 .
  • event data that is received from data source 101 may be normalized to determine a relational event history 104 , the normalization process resulting in clean, parsed relational data with disambiguated actors that maps to the categories of decisions included in a probability model 106 .
  • An email for example, may be parsed to reveal the sender, topic, mode, recipient(s), and timestamp of the email, and that data may be used to generate a relational event that corresponds to the email in relational event history 104 .
  • Normalization of the data accessed from data source 101 may involve processing the data so as to produce a relational event history 104 in which, to the extent possible, each event is described using a uniform set of characteristics, regardless of the mode of communication involved in the event and the format in which the event data is stored in data source 101 .
  • Each event in the event history may be include a “sender” (otherwise referred to as an ego below), which is the actor responsible for initiating the event, a “recipient(s)” (otherwise referred to as an alter below), which is the actor(s) that received the event, a mode identifying the mode of the event, and a timestamp indicating the time that the occurred.
  • a phone record may result in a relational event that includes the actor responsible for initiating the call (sender), the actor that received the call (recipient), the mode identifying the event as a phone call, and a timestamp indicating the time that the call was made.
  • Other characteristics used to describe an event in relational event history 104 may include, for example, a unique identifier for the event, a duration indicating a length of the event, a type indicating the manner in which data relating to the event was formatted in data source 101 , a unique identifier for a digital archive from which the event was accessed, and one or more fields related to enrichment attributes (e.g., additional data describing an actors involved in the event, such as job titles).
  • Data that is received from data source 102 may be normalized by data normalizer 103 in order to produce covariate data 105 .
  • Covariates are exogenous variables that may be involved in effects and that may be included in probability model 106 .
  • a public company using a probability model to analyze communication patterns might, for example, include the company's daily stock price as a covariate in the model, in order to shed light on the relationship between the price and communications between employees and outsiders.
  • An individual covariate may be a global variable that occurred at or during a particular time for all actors in a relational event history (e.g., relating to an audit), may instead be a dyadic variable that occurred at or during a particular time for a pair of actors in the model (e.g., a supervisor-staff member relationship that existed between two employees), or may be an actor variable that occurred at or during a particular time for a specific actor (e.g., a salary).
  • the inference engine 107 populates probability model 106 based on relational event history 104 and covariate data 105 , the model having been formulated as a series of conditional probabilities that correspond to sequential decisions by actors, and including one or more statistical parameters and corresponding statistics that may relate to one or more of senders, modes, topics, or recipients of relational events.
  • Inference engine 107 may also determine a baseline communications behavior for the model 106 , based on the populated model Inference engine 107 may, for example, determine a set of effect values through a maximum likelihood process, the determined values indicating the impact of the effects on event probabilities. The inference engine 107 may also determine departures from the baseline by determining a second set of values for the effects based on one or more subsets of the relational events included in relational event history 104 , and comparing the second set of effect values to the first set of values.
  • UI 108 may be used to receive inputs from a user of system 100 , and may be used to output data to the user.
  • a user of the system may, for example, specify data sources to be used by normalizer 103 in determining relational history 104 and covariate data 105 .
  • the user may also provide inputs indicating which actors, modes, topics, covariates, and/or effects to include in model 106 , as well as which subsets of the relational event history should be analyzed in determining departures from the baseline.
  • UI 108 may provide the user with outputs indicating a formulation of model 106 , a determined baseline for the model 106 , and one or more determinations as to whether and how the subsets of relational event history being analyzed differ from the baseline.
  • UI 108 may also provide the user with additional views and analyses of data so as to allow the user to draw additional inferences from the model 106 .
  • UI 108 may provide to the user, based on probability model 106 , a determined baseline, and/or one or more determined departures from the baseline, textual and/or graphical analyses of data that uncover patterns, trends, anomalies, and change in the data.
  • UI 108 may, for example, enable a user to form a hypothesis regarding the data by selecting one or more effects, covariates, and/or sets of focal actors, and curves may be displayed based on the user's hypothesis, where the curves indicate periods of time in which communications behavior is normal, as well as periods of time in which communications behavior is abnormal.
  • Other visualizations of the data such as summations of communications behavior involving particular actors, modes, and/or topics, may be provided by UI 108
  • Curves displayed to the user through UI 108 may correspond to an actor, to a subset of actors, and/or to all actors in the relational event history. Color coding may be used to indicate periods of time in which communications behavior is normal, and periods of time in which communications behavior is abnormal. A user may be able to select between varying levels of sensitivity through which normality and abnormality are determined, and UI 108 may dynamically update as selection of sensitivity occurs.
  • curves each representing different effects or covariates, may be displayed by UI 108 in an overlapping fashion, and the curves may be normalized and smoothed.
  • the curves may be displayed in two dimensions, where the x axis is associated with time, and where the y axis is associated with properties of effects and/or covariates.
  • UI 108 may display icons and/or labels to indicate effects, covariates, or actors to which curves correspond.
  • UI 108 may further display labels within the two dimensional field in which the curves are plotted, the labels indicating exogenous events or providing other information.
  • UI 108 may also enable a user to zoom in to the displayed curves in order to view a display of events at a more granular level, with information pertaining to the displayed events being presented through icons that may be color-coded according to mode, and that may be sized to indicate, for example, a word count or length of conversation.
  • UI 108 may also provide access to individual communications related to events. UI 108 may, for example, display an individual email in response to a user selection or zoom.
  • UI 108 may also display, for a particular actor, behavioral activity over time.
  • the behavioral activity may be displayed, for example, in a polar coordinate system, where the radial coordinates of points in the plane correspond to days, and where angular coordinates correspond to time slices within a particular day.
  • each point plotted in the plane may correspond to a particular communications event, and may be color coded to indicate a mode of communication or other information.
  • Points plotted in the plane may be located on one of several concentric circles displayed on the graph, and the circle on which a point is located may indicate a day on which the communication took place, while the position of the point on the circle may indicate a time slice (e.g., the hour) in which the communication took place.
  • a user may be able to select a communication event that is plotted on the graph to obtain content. For example, a user may click or hover over a point that indicates an SMS message in order to retrieve the text of the SMS message.
  • a polar graph indicating behavioral activity over time may be animated, enabling a user to “fly through” a visual representation of behavioral activity over particular periods of time, where the circles and events presented for a particular period of time correspond to the days within that period, and where the period displayed dynamically shifts in response to user input.
  • FIG. 2 is a flowchart of an example of a process 200 for analyzing a relational event history.
  • the process 200 may be implemented, for example, using system 100 , although other systems or configurations may be used.
  • one or more parts of the process may be executed by data normalizer 103 or inference engine 107 , which may interface with other computers through a network.
  • Data normalizer 103 may retrieve data involved in the process, such as data used in determining a relational event history or covariates, from one or more local or remote data sources, such as data sources 101 and 102 .
  • Process 200 begins when data normalizer 103 accesses event and/or other data from data sources 101 and 102 ( 201 ). After accessing the event and/or other data, the data normalizer 103 normalizes the accessed data, determining a relational event history 104 and covariate data 105 ( 203 ).
  • the process of normalizing event and other data and determining a relational event history and covariates may involve, among other things, extracting event data from accessed data, transforming the extracted data to a state suitable for populating the probability model 106 , and enriching the transformed data with additional information gathered from other data sources.
  • the accessed event data may, for example, include an email sent by one actor to two others, the email relating to a topic specified in the probability model 106 .
  • the data normalizer 103 may parse the email to extract a time stamp, a sender, a topic, and recipients. Extracted data may then be transformed by data normalizer 103 , resulting in relational data with disambiguated actors that maps to the categories of decisions included in a probability model 106 .
  • the data normalizer 103 may then enrich the transformed data by, for example, scraping one or more websites to obtain additional data relating to the sender or recipients.
  • the enriched data representing a relational event corresponding to the email may then be added to relational event history 104 .
  • the data normalizer 103 may perform similar operations in the process of producing covariate data 105 .
  • a probability model 106 may be populated by inference engine 107 based on the relational event history 104 and covariate data 105 ( 205 ).
  • the probability model 106 is formulated as a series of conditional probabilities that correspond to a set of sequential decisions by an actor. For each event, the set of sequential decisions includes a decision to send a communication, a decision as to amode of the communication, a decision as to a topic of the communication, and one or more decisions as to recipients of the communication.
  • a multinomial logit distribution can be used to model the probabilities of the discrete choice problem presented by each decision, with the primary factors affecting the probability of an event occurring are a set of event statistics (also referred to as effects), which are based in social network theory.
  • a woman's probability of emailing her boss may be different if she has received 4 emails from clients within the past 24 hours than if she has received none.
  • a man may be more or less likely to make a phone call depending on the number of people who have called him recently.
  • the model's multinomial logit distribution may include a coefficient that is multiplied by these event statistic values and therefore describes the statistic's effect on event probabilities. This coefficient may be referred to as an effect value or a statistical parameter. Effects may be formulated using backward looking statistics, such as time-decayed sums of recent events of certain types, or the last event that was received by the ego (sender) in question, which may be referred to as participation shifts.
  • a relational event history N such as relational event history 104
  • the composition of this set of actors may depend on time t, and is denoted N(t).
  • Any ordered pair of actors is called a dyad, and relational events are denoted as tuples, where:
  • relational event history A strictly ordered set of these relational events constitutes a relational event history, which may be represented through use of the shorthand notation:
  • ⁇ t ⁇ e ⁇ : ⁇ ( e ) ⁇ t ⁇ .
  • the event history is an endogenous variable
  • exogenous variables i.e., covariates
  • covariates may also be included in the probability model, and these covariates may be partitioned into three types:
  • covariates will have a time domain equal to the relational event history.
  • the combination of the relational event history and the covariates constitutes a dataset that may be denoted:
  • a probability density representing the probability of the occurrence of each relational event in the relational event history and based on the dataset may be denoted:
  • f ⁇ ( ⁇ ⁇ W , X , Y , Z 0 , ⁇ ) ⁇ e ⁇ ⁇ ⁇ ⁇ f ⁇ ( e ⁇ ⁇ ⁇ ⁇ ( e ) , W , X , Y , Z 0 , ⁇ )
  • the probability density can be simplified by requiring that:
  • the probability density may be decomposed into a series of conditional probabilities that correspond to a set of sequential decisions by an actor:
  • f ⁇ ( e ⁇ Z ⁇ ⁇ ( e ) , ⁇ ) f ⁇ ( i ⁇ ( e ) , ⁇ ⁇ ( e ) ⁇ Z ⁇ ⁇ ( e ) , ⁇ ) ⁇ f ⁇ ( m ⁇ ( e ) ⁇ i ⁇ ( e ) , ⁇ ⁇ ( e ) , Z ⁇ ⁇ ( e ) , ⁇ ) ⁇ f ⁇ ( b ⁇ ( e ) ⁇ i ⁇ ( e ) , ⁇ ⁇ ( e ) , m ⁇ ( e ) , Z ⁇ ⁇ ( e ) , ⁇ ) ⁇ f ⁇ ( ⁇ ⁇ ( e ) ⁇ i ⁇ ( e ) , ⁇ ⁇ ( e ) , m ⁇ ( e ) , Z ⁇ ⁇ ( e ) ,
  • conditional probabilities included in this version of the model consist of:
  • the ego/interarrival density which describes a process by which an ego chooses to initiate an event following a most-recent event, can be modeled using a semi-parametric approach in the spirit of the Cox proportional hazards model:
  • the function ⁇ t which models the probability density that the next event to occur after t * entails ego i sending an event after a holding time of t, does not depend on the interarrival time t, and therefore cannot incorporate information accumulated since the last event.
  • the baseline hazard rate ⁇ 0 (t) depends on neither ego i nor the interarrival time t. As such, the hazards between all candidate egos are proportional:
  • the optimal parameter ⁇ can be found by maximizing, over the relational event history, the probability density that the ego for each event would send an event, as opposed to the other actors:
  • Ego effects that evaluate an actor's decision to initiate a communication may be referred to as “ego effects.” It possible to develop effects that depend on either or both of the relational event history and covariates. Ego effects that depend on the relational event history may include the activity ego selection effect and the popularity ego selection effect, both of which quantify the amount of communications that have recently been sent to (popularity) or sent by (activity) the candidate ego i*, where recency is determined by specifying the effects through predicates:
  • the mode density which describes the process of the ego choosing one of a finite set of modes, can be represented through a conditional distribution:
  • a model for the selection of a mode by the ego is the multinomial logit, or discrete choice distribution:
  • ⁇ M For convenience, a linear form for ⁇ M may be used:
  • ⁇ M ( m*, . . . ) ⁇ T s M ( m*, . . . )
  • Mode effects may include the relay mode selection effect, which quantifies a selected ego i's tendency to contact other actors through a candidate mode m* that was recently used by other actors to contact i, and the habit mode selection effect, which quantifies a selected ego i's tendency to contact other actors through a candidate mode m* that i that recently used to contact other actors:
  • the topic density which describes the process of the ego choosing one of a finite set of topics, given a previous choice of mode, can be represented through a conditional distribution:
  • the selection of a topic by the ego can be modeled using a multinomial logit, or discrete choice distribution, the selected mode being introduced into the topic distribution as a covariate:
  • ⁇ B For convenience, a linear form for ⁇ B may be used:
  • ⁇ B ( b, . . . ) ⁇ T s B ( b, . . . )
  • Topic effects may include the relay topic selection effect, which quantifies a selected ego i's tendency to communicate with other actors about a candidate topic b* that recently appeared in communications sent to i by other actors, and the habit mode selection effect, which quantifies a selected ego i's tendency to communicate with other actors about a candidate topic b* that recently appeared in communications sent by i to other actors:
  • the alter density which describes the process of the ego choosing to communicate with a set of alters, given previous choices of mode and topic, can be represented through a conditional distribution:
  • the size of the outcome space of possible alter sets J(e) can be enormous, even for a small N.
  • is stochastic and lies on the interval [1,N ⁇ (e) ). For each size
  • the dimensionality of the outcome space is:
  • ⁇ a 1 N ⁇ ⁇ ( e ) - 1 ⁇ ⁇ ( ⁇ ⁇ N ⁇ ⁇ ( e ) ⁇ - 1 a )
  • J may be modeled as an ordered set, such that the ego adds actors into the alter set alter-by-alter:
  • Each element in the decomposition of the density may be modeled using a multinomial logit, or discrete choice distribution:
  • alter risk set R(a) defines the choices of alter available to an ego for the alter selection decision at hand.
  • One way of characterizing the alter risk set is:
  • Alter effects Effects that evaluate the ego's decision(s) as to the recipient(s) of a communication may be referred to as “alter effects.” It possible to develop alter effects that depend on either or both of the relational event history and covariates. Alter effects that depend on the relational event history may include the fellowship alter effect and
  • f ⁇ ( ⁇ F ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ F , W , X , Y , Z 0 , ⁇ ) ⁇ e ⁇ F ⁇ ( ⁇ ⁇ ( e ) ) ⁇ ⁇ f ⁇ ( e ⁇ ⁇ ⁇ ⁇ ( e ) , W , X , Y , Z 0 , ⁇ )
  • a baseline of communications behavior is determined ( 207 ). For example, in a situation in which the model described with respect to operation 205 is used, a baseline may be determined by estimating the effect values (statistical parameters). The estimated effect values represent the baseline communications behavior because they indicate the impact of the corresponding effect (statistic) on the event probabilities.
  • the effect values may be estimated, for instance, through maximum likelihood methods.
  • the Newton-Raphson algorithm for example, may be used.
  • the Newton-Raphson algorithm is a method of determining a maximum likelihood through iterative optimization of parameter values that, given a current set of estimates, uses the first and second derivatives of the log likelihood function about these estimates to intelligently select the next, more likely set of estimates.
  • a converged estimate of each effect value included in the probability model may be obtained.
  • Departures from the baseline of communications behavior may be determined ( 209 ).
  • the baseline can be considered normal communications behavior, and deviations from the baseline can be considered abnormal, or anomalous behaviors.
  • anomalous behaviors may be detected by comparing effect values for subsets (also referred to as pivots) of the relational event history to the baseline values in order to determine whether, when, or where behavior deviates from the norm.
  • a pivot may, for example, include only events involving a specific actor during a specific time period, only events involving a specific set of topics, or only events involving a specific subset of actors. If, for example, the baseline reveals that actors in the relational event history typically do not communicate between midnight and 6:00 AM, a particular actor initiating 30 events during those hours over a particular period of time might be considered anomalous. As another example, if one subset of actors typically communicates by email, but the majority of communications between actors in the subset during a specific time frame are phone calls, the switch in mode might be considered anomalous.
  • Effect values may be determined for a pivot using the same methods employed in determining the baseline, for example, through use of the Newton-Raphson method. Pivot-specific effect values may be referred to as “fixed effects.”
  • Comparison of the fixed effects to the baseline may allow for estimation of the degree to which the communications behavior described by a particular pivot departs from normality. Other, more involved inferences may also be drawn. For example, it is possible to determine whether a fixed effect has high or low values, is increasing or decreasing, or is accelerating or decelerating. Further, it is possible to determine whether or how these features hang together between multiple fixed effects. Analyses of this nature may be performed through a hypothesis-testing framework that, for example, employs a score test to compare an alternative hypothesis for one or more effect values to a null hypothesis (i.e., the baseline).
  • FIG. 3 is a flowchart of an example of a process for determining a baseline communications behavior for a relational event history.
  • the process 300 may be implemented, for example, using system 100 .
  • one or more parts of the process may be executed by inference engine 107 , which may interface with other computers through a network.
  • Inference engine 107 may, for example, send or receive data involved in the process to and from one or more local or remote computers.
  • estimation of the baseline may be performed using a maximum likelihood method.
  • Newton-Raphson is a method of iterative optimization of parameter values that, given a current set of estimates, uses the first and second derivatives of the log likelihood function about these estimates to intelligently select the next, more likely set of estimates.
  • the Newton-Raphson method may use the first and second derivatives of the log likelihood function about a set of estimated effect values in order to select the next, more likely set of estimated effect values, with the goal of maximizing the “agreement” of the probability model 106 with the relational event history 104 and covariate data 105 on which the model 106 is based.
  • Convergence of a set of effect values may be considered to have occurred when a summation across all events of the first derivative of the log likelihood function about the currently estimated effect values is approximately zero, and when the summation across all events of the second derivative of the log likelihood function about the currently estimated effect values meets or exceeds a threshold of negativity.
  • the joint probability of the relational event history may be adapted into a log likelihood that can be maximized numerically via Newton-Raphson:
  • the method begins with an initial parameter estimate ⁇ circumflex over ( ⁇ ) ⁇ 0 ( 301 ).
  • First and second derivatives of the log likelihood with respect to ⁇ may be derived ( 303 ):
  • the initial parameter estimate ⁇ circumflex over ( ⁇ ) ⁇ 0 may be refined iteratively through update steps, in which first and second derivatives are evaluated at ⁇ circumflex over ( ⁇ ) ⁇ 0 for each event ( 305 ) and then summed across all events ( 307 ) in order to arrive at a new parameter estimate ⁇ circumflex over ( ⁇ ) ⁇ s+1 ( 309 ):
  • ⁇ circumflex over ( ⁇ ) ⁇ i+1 ⁇ circumflex over ( ⁇ ) ⁇ i +V ⁇ circumflex over ( ⁇ ) ⁇ i T ( ⁇
  • Update steps may continue until optimization converges on a value ( 311 ).
  • the converged value is the maximum likelihood estimate ⁇ circumflex over ( ⁇ ) ⁇ , which has an estimated covariance matrix that is the inverse of the second derivative matrix evaluated at ⁇ circumflex over ( ⁇ ) ⁇ 0 :
  • the process of determining a baseline may involve distribution of the model 106 to a plurality of computers associated with inference engine 107 , each of which is involved in computing the maximum likelihood estimate ⁇ circumflex over ( ⁇ ) ⁇ through the Newton-Raphson algorithm.
  • Different computers may, for example, evaluate first and second derivative values for different events, with those evaluated derivatives then being summed.
  • an individual computer to which the model is distributed may evaluate first and second derivatives for a single event ( 305 ) during each update of Newton-Raphson, and may report the evaluations to a central computer that sums the first and second derivatives across all events ( 307 ), and that forms a new parameter estimate based on the result of summing the first and second derivatives ( 309 ).
  • each of the conditional distributions in the probability model 106 may be formulated as a multinomial logit.
  • the following multinomial distribution featuring a random variable X with an outcome space X and an arbitrary statistic s(x), may be considered:
  • the first derivative of g is:
  • FIG. 4 is a flowchart of another example of a process 400 for determining a baseline communications behavior for a relational event history.
  • the process 400 may be implemented, for example, using system 100 .
  • one or more parts of the process may be executed by inference engine 107 , which may interface with other computers through a network.
  • Inference engine 107 may, for example, send or receive data involved in the process to and from one or more local or remote computers.
  • the process 400 may be used when the order in which recipients are selected by the sender is unknown.
  • the sender's choice of which recipients to include may be best modeled as a set of sequential decisions involving an order in which recipients are added by the sender to the communication, rather than a single decision.
  • a single email for example, may be addressed to multiple recipients, and the sender of the email may add each recipient in sequence.
  • a model such as the one described with respect to operation 205 above, may model the choice of recipients as a sequential set of decisions.
  • the model may be used without issue when the order of the selection of the recipients is known.
  • the recipients may be known, but not the order, which may present a missing data problem if the model is to be employed.
  • the expectation maximization (EM) algorithm may be employed.
  • the algorithm consists of two steps that may be executed iteratively until ⁇ circumflex over ( ⁇ ) ⁇ converges.
  • Performing EM using probability model 106 involves calculation of expectations of quantities that depend on the missing sequences of alter choices.
  • evaluation of the expectation of a function h(J(e),Z ⁇ (e) , ⁇ ) may be performed using:
  • A(e),Z ⁇ (e) , ⁇ ) is the probably of the alter selection sequence J (e) given that the set A(e) is ultimately chosen.
  • a single update of the Newton-Raphson algorithm is conducted by summing the expected first and second derivatives across all events:
  • New parameter estimates can be formed based on the result of summing the first and second derivatives, and the EM process may be repeated until convergence of ⁇ circumflex over ( ⁇ ) ⁇ i is achieved.
  • f ⁇ ( ⁇ ⁇ ( e ) ⁇ ⁇ ⁇ ( e ) , ⁇ ⁇ ( e ) , ⁇ ) f ⁇ ( ⁇ ⁇ ( e ) , ⁇ ⁇ ( e ) ⁇ ⁇ ⁇ ( e ) , ⁇ ) f ⁇ ( ⁇ ⁇ ( e ) ⁇ ⁇ ⁇ ( e ) , ⁇ )
  • f ⁇ ( ⁇ ⁇ ( e ) ⁇ ⁇ ⁇ ( e ) , ⁇ ⁇ ( e ) , ⁇ ) f ⁇ ( ⁇ ⁇ ( e ) ⁇ ⁇ ⁇ ( e ) , ⁇ ) f ⁇ ( ⁇ ⁇ ( e ) ⁇ ⁇ ⁇ ( e ) , ⁇ )
  • MCMC Markov chain Monte Carlo
  • an initial parameter estimate ⁇ circumflex over ( ⁇ ) ⁇ 0 is made ( 401 ), and first and second derivatives are derived ( 403 ).
  • a determination may be made as to whether the number of possible ordered alter sets,
  • expected first and second derivatives (E ⁇ circumflex over ( ⁇ ) ⁇ ⁇ V( ⁇
  • a single update of the Newton-Raphson algorithm is conducted by summing the expected first and second derivatives across all events ( 407 ), and new parameter estimates are formed based on the result of summing the first and second derivatives ( 409 ). The EM process may then be repeated until convergence of ⁇ circumflex over ( ⁇ ) ⁇ i is achieved ( 411 ).
  • the expected first and second derivatives are determined for each event through simulation.
  • a numerical technique such as MCMC may be employed to conduct the simulation ( 406 ).
  • a Markov chain is a stochastic process involving transitions between states, where the conditional probability distribution of future states of the process depends only on the present state, and not on the preceeding sequence of states. For example, given a process with a set of two possible states i and j, the process is a Markov chain if the probability that the process will transition from a present state i to a next state j depends only on the present state i, and not on the states that preceded the present state. Many Markov chains feature what is called an equilibrium distribution, such that, from the present state, the probability that, after a sufficient number of transitions, the process will be in a specific state no longer changes from one transition to the next. If, for example, the probability of the process being in state i after n transitions is p, and the probability of the process being in state i after any number of transitions after n is also p, then the Markov chain can be said to have an equilibrium distribution.
  • Monte Carlo methods are computational algorithms that randomly sample from a process, and Markov chain Monte Carlo methods involve sampling from a Markov chain constructed such that the target distribution is the Markov chain's equilibrium distribution. After a sufficient number of transitions, draws taken from the Markov chain will appear as if they resulted from the target distribution. By taking the sample average of draws, values for quantities of interest can be approximated.
  • MCMC may be used to approximate expectations of quantities that depend on a missing sequence of alter choices.
  • MCMC may be used to sample draws of possible ordered sets of alters, J(e), from the density f(J(e)
  • Draws may be sampled in the following way:
  • sample sets J (i) are approximately distributed f(J(e)
  • expected first and second derivatives can be determined for all events ( 406 ).
  • a single update of the Newton-Raphson algorithm is conducted by summing the expected first and second derivatives across all events ( 408 ), and new parameter estimates are formed based on the result of summing the first and second derivatives ( 410 ).
  • the EM process may then be repeated until convergence of ⁇ circumflex over ( ⁇ ) ⁇ i is achieved ( 412 ).
  • FIG. 5 is a flowchart of an example of a process 500 for modeling a set of sequential decisions made by a sender of a communication in determining recipients of the communication.
  • the process 500 may be implemented, for example, using system 100 .
  • one or more parts of the process may be executed by inference engine 107 , which may interface with other computers through a network.
  • Inference engine 107 may, for example, send or receive data involved in the process to and from one or more local or remote computers.
  • the alter risk set introduced earlier which defines the choices of alter available to an ego for the alter selection decision at hand, can become extremely large, leading to computational complexity.
  • the sender's choice of which recipients to include may be best modeled as a set of sequential decisions involving an order in which recipients are added by the sender to the communication, rather than as a single decision.
  • the model may be further refined by considering the sender's choice of which recipients to include as involving a two-stage decision process, whereby the sender first considers a social context in which to communicate, and then chooses recipients of the communication from a set of actors belonging to the social context. For example, in a situation in which potential recipients of the sender's communication appear in multiple social contexts or settings, the set of sequential decisions described above may include, for at least some of the events, one or more social context selection decisions, and one or more additional decisions as to which recipients in a selected social context(s) to include.
  • a sender of a communication may interact with other actors in a variety of contexts, and both the sender and the other actors with whom the sender interacts may be categorized as belonging to specific social contexts or settings.
  • a primary setting may include actors who belong to an organization or who engage in related activities, while another setting may include actors who have interacted, or who have the potential to interact, at a specific time and/or place.
  • a sender of a communication may, for example, choose to communicate with actors in a primary setting or in a meeting setting, with one set of potential recipients (e.g., a set including the sender's coworkers and clients) corresponding to the primary setting, and another set of potential recipients (e.g., a set including meeting attendees) corresponding to the meeting setting.
  • social contexts or settings may be mutually exclusive, with each potential recipient being modeled as belonging to only one context or setting.
  • actors categorized as belonging to one social context or setting may be categorized as belonging to others as well (e.g., a potential recipient may be both a coworker of the sender and a meeting attendee, in which case the potential recipient could be categorized as belonging to both the primary and meeting settings).
  • a sender of the communication corresponding to the event may select a social context in which to communicate, prior to determining which potential recipients to communicate with, and the model may be formulated such that the calculation of probabilities associated with the sender's decisions takes this selection into account ( 501 ).
  • a primary alter risk set R P consisting of potential recipients belonging to a primary social context, and a meeting alter risk set R M consisting of potential recipients belonging to a meeting social context may be defined differently, and the sender of the communication may select one of the primary or meeting social contexts prior to sending a communication. If, for example, the primary social context involves actors with whom the sender has recently been in contact, the primary alter risk set R P may be defined using a sliding window ⁇ .
  • the primary alter risk set R P can be defined, given some sliding window ⁇ , as:
  • the meeting alter risk set R M may be defined such that the primary and meeting settings are mutually exclusive and collectively exhaustive:
  • the sender may make one or more additional decisions as to which recipients within the selected social context with whom to communicate.
  • the sender may determine a set of recipients for the communication by selecting one or more potential recipients from the primary alter risk set R P , using a primary evaluation function ( 503 ).
  • the sender may determine a set of recipients for the communication by selecting one or more potential recipients from within the other social context, using another evaluation function ( 505 ).
  • the evaluation functions used to calculate probabilities associated with the sender's decisions as to recipients may differ depending on the selected social context, the differences reflecting the different ways in which the actor scrutinizes potential recipients in each setting.
  • alter selection may occur in the same way described above with reference to FIG. 2
  • a different evaluation function may be used for alter selection in the meeting setting.
  • Alter selection in the meeting setting may involve, for example, choosing at uniform random a potential recipient who is in the meeting setting but who is not in the primary setting or the current alter set, and then evaluating whether to include the chosen potential recipient in the current alter set using an evaluation function that is specific to the meeting setting.
  • f ( ⁇ ⁇ ( e ) ⁇ ⁇ ⁇ ( e ) , ... ⁇ ) ⁇ j * ⁇ ⁇ ⁇ ( e ) ⁇ ⁇ ⁇ ⁇ f P ( j * ⁇ ⁇ * ⁇ ( a ) , ⁇ ⁇ ( c ) , ... ⁇ ) j * ⁇ ⁇ P ⁇ ( i , ⁇ * ⁇ ( a ) , ⁇ ⁇ ( e ) ) ( 1 - ⁇ ) ⁇ f M ( j * ⁇ ⁇ * ⁇ ( a ) , ⁇ ⁇ ( e ) , ... ⁇ ) j * ⁇ ⁇ M ⁇ ( i , ⁇ * ⁇ ( a ) , ⁇ ⁇ ( e ) )
  • the primary alter selection distribution f P included in the probability density function may differ in only minor ways from the alter selection distribution presented above. Specifically, the primary alter evaluation function ⁇ JP may be used, and the alters available for selection may be limited to those belonging to the primary alter risk set R P , such that the primary alter selection distribution f P may be written:
  • f P ( j * ⁇ ... ⁇ ) exp ⁇ ⁇ ⁇ JP ( j * , ⁇ * ⁇ ( a ) , ... ⁇ ) ⁇ j ⁇ ⁇ JP ⁇ ( i ⁇ ( e ) , ⁇ * ⁇ ( a ) , ⁇ ⁇ ( e ) ) ⁇ exp ⁇ ⁇ ⁇ JP ( j , ⁇ * ⁇ ( a ) , ... ⁇ )
  • the meeting alter selection distribution f M may differ from the primary alter selection distribution j P .
  • the meeting alter selection distribution f M may, for example, include two conditionally independent probabilities: a first probability that a member j* of the meeting setting is selected for evaluation, and a second probability that, conditioned on j* being selected for evaluation, j* is added into the alter set.
  • a probability that a member j* of the meeting setting is selected for evaluation for inclusion in the alter risk set, where selection between members of the meeting setting is at uniform random, may take the form:
  • the probability that a selected member j* is added into the alter set may take the form of a simple logit, where there are only two alternatives (to add j* to the alter set, or to not to add j* to the alter set):
  • the meeting alter selection distribution f M may be written:
  • f M ( j * ⁇ ... ⁇ ) ⁇ ⁇ JM ⁇ ( i ⁇ ( e ) , ⁇ * ⁇ ( a ) , ⁇ ⁇ ( e ) ) ⁇ - 1 ⁇ exp ⁇ ⁇ ⁇ JM ⁇ ( j * , ... ⁇ ) 1 + exp ⁇ ⁇ ⁇ JM ( j * , ... ⁇ )
  • FIG. 6 is a flowchart of an example of a process 600 for determining a statistic using a decay function.
  • the process 600 may be implemented, for example, using system 100 .
  • one or more parts of the process may be executed by inference engine 107 , which may interface with other computers through a network.
  • Inference engine 107 may, for example, send or receive data involved in the process to and from one or more local or remote computers.
  • the likelihood of an event's occurrence may depend on other events that have occurred in the past.
  • the likelihood of a child calling her mother may increase if the mother recently attempted to call the child.
  • the impact of past events on the likelihood of a future event may vary, however, depending on the relative distance of the events in terms of time. For example, a man may be more likely to respond to a voicemail left one day ago, than to a voicemail left one year ago.
  • the impact of past relational events on the probability of a future relational event may be taken into account, and the reliability of the probability model may be enhanced by taking into account only those relational events that occurred within a certain time frame, and/or by discounting the impact of past relational events in proportion to their distance from the future relational event in terms of time.
  • the concept of time may be considered in terms of, for example, clock time and/or social time. For example, when clock time is used, the amount of time since a previous event may be used to weight the relevance of the prior event. As another example, when social time is used, a number of relational events occurring between a past relational event and a future relational event may be used, for example, to weight the relevance of the past relational event.
  • a decay function may be used within a model, or within a statistic included in a model, to incorporate the idea that relational events that occurred far in the past are less relevant for purposes of prediction than relational events that occurred recently.
  • a statistic s may be determined based on a selected subset of relational events, where the subset of relational events is selected according to a predicate ⁇ ( 601 ). Each selected event may then be weighted using a decay function ⁇ ( 603 ), and the statistic s may be determined based on the weighted events by, for example, summing the weighted events ( 605 ).
  • the predicate ⁇ describing criteria by which the subset of events is selected may vary depending on the statistic s.
  • the activity ego selection effect for example, is a statistic that is defined through its predicate, where the predicate indicates that only those relational events e that have been sent by the ego i will be selected for inclusion in the subset.
  • the predicate of another statistic, the popularity ego selection effect instead specifies that only those relational events that have been sent to the ego i will be selected for inclusion in the subset.
  • the form of the decay function ⁇ used to determine a statistic s determines the manner in which the relational events contained within the selected subset of relational events are weighted, where the weight of a relational event indicates the impact of the relational event on the probability of a future relational event's occurrence.
  • An exponential decay function may be used, for example, to model the relevance of a first relational event for purposes of predicting the occurrence of a second relational event when the relevance is inversely proportional to the time that has passed since the first relational event's occurrence. Given some increasing value ⁇ , the value of an exponentially decaying quantity ⁇ may be determined, for example, using the following exponential decay function:
  • the value of the quantity ⁇ monotonically decreases in ⁇ when is ⁇ >0.
  • values that decay in this way include masses of radioactive materials.
  • the rate of decay is linear in the amount of quantity ⁇ remaining:
  • When modeling the relevance of a relational event to the occurrence of a future relational event, ⁇ can be considered to be an abstract representation of the passage of time:
  • can be used in different ways to model the passage of time from one event occurring at time t 0 to another event occurring at time t 1 >t 0 .
  • the simplest way to operationalize the passage of time through ⁇ is to use clock time, i.e. t 1 ⁇ t 0 , which yields a time decay function:
  • the relevance of a relational event will decay, for example, at the same rate in the middle of the night as it will during the middle of the workday.
  • the concept of social time that progresses only when communications occur, rather than based on the passage of clock time, can be incorporated into the model by focusing on events occurring after t 0 and at or before t 1 , events in the set:
  • ⁇ (t 0 ,t 1 ] ⁇ e ⁇ : ⁇ ( e )> t 0 , ⁇ e ⁇ t 1 ⁇
  • the event-wise decay function When used to determine a statistic s based on a selected subset of relational events, the event-wise decay function renders the amount of clock time occurring between selected events irrelevant: instead of assigning weights to the selected events based on the passage of clock time, the event-wise decay function assigns weights to events based on the order in which they occurred. Specifically, the weights assigned by the event-wise decay function to a series of selected events vary such that each selected event has a higher weight than the event occurring after it in time, and a lower weight than the event occurring before it in time. Thus, when the event-wise decay function is used, it is the occurrence of events, rather than the passage of time, that matters for purposes of determining the relevance of a relational event.
  • the criteria for determining relevance may also be restricted to focus on the social time of a particular actor, i.
  • a participating event-wise decay function for example, may be formulated:
  • the participating event-wise decay function renders the amount of clock time occurring between selected events irrelevant, because the weights assigned to events by the participating event-wise decay function vary based on the order in which events occurred.
  • the weight assigned to a first selected event will match the weight assigned to a second selected event occurring after the first selected event in time, if the particular actor i did not participate in the second selected event. If, on the other hand, the actor i did participate in the second selected event (as, e.g., a sender or a receiver), the first selected event will have a higher weight than the second selected event.
  • the participating event-wise decay function it is the occurrence of events involving the actor i, rather than the passage of time, that matters for purposes of determining the relevance of a relational event.
  • a sending event-wise decay function may be formulated:
  • the weights assigned to events vary based on the order in which events occurred. However, a weight assigned to a first selected event by the sending event-wise decay function will match the weight assigned to a second selected event occurring after the first selected event in time, if the actor i did not send the second selected event. Alternatively, if the actor i did send the second selected event, the first selected event will have a higher weight than the second selected event.
  • the sending event-wise decay function it is the occurrence of events sent by the actor i, rather than the passage of time, that matters for purposes of determining the relevance of a relational event.
  • the statistic s may be determined, for example, based on a selected subset of relational events, where the subset of relational events is selected according to a predicate ⁇ that is specific to the statistic s ( 601 ). Each selected event may then be weighted using a decay function ( 603 ), and the statistic s may be determined based on the weighted events ( 605 ). The weighted events may be summed, for example, in order to produce a value for s.
  • FIG. 7 is a flowchart of an example of a process for analyzing social behavior.
  • the process 700 may be implemented, for example, using system 100 .
  • one or more parts of the process may be executed by inference engine 107 , which may interface with other computers through a network.
  • Inference engine 107 may, for example, send or receive data involved in the process to and from one or more local or remote computers.
  • a probability model that is populated based on a relational event history may be used to identify patterns, changes, and anomalies within the relational event history, and to draw sophisticated inferences regarding a variety of communications behaviors.
  • a baselining process may be used with a model to determine communications behavior that is “normal” for a given relational event history.
  • the resulting baseline includes a set of effect values (statistical parameters) that correspond to the statistics included in the model. Once determined, the baseline can be employed to detect departures from normal communications behavior.
  • the statistical parameters obtained through the baselining process can form the basis for follow on analysis; in practical terms, pinning down normality during the baselining process makes it possible to detect abnormality, or anomalous behaviors, in the form of deviations from the baseline.
  • Effect values for subsets of the relational event history (“pivots”) may be compared to the baseline values in order to determine whether, when, and/or how behavior deviates from the norm.
  • a pivot may, for example, include only relational events involving a specific actor during a specific time period, and effect values for a pivot (“fixed effects”) may be used to create an alternative hypothesis that can be compared with a null hypothesis, the baseline, through a hypothesis-testing framework that, for example, employs a score test.
  • Hypothesis testing may allow for estimation of the degree to which the communications behavior described by a particular pivot departs from normality. Other, more involved inferences may also be drawn. For example, it is possible to determine whether a fixed effect has high or low values, is increasing or decreasing, or is accelerating or decelerating. Further, it is possible to determine whether or how these features hang together between multiple fixed effects.
  • social behavior may be analyzed by selecting a subset of relational events, the subset containing pivots ( 701 ), estimating values for corresponding fixed effects ( 703 ), determining an alternative hypothesis ( 705 ), and testing the alternative hypothesis against the null hypothesis, the baseline ( 707 ).
  • Selection of subsets of relational events ( 701 ) may be arbitrary, or may instead be driven by the particular individuals and/or behaviors that are the subjects of analysis. Recalling the popularity ego selection effect described above, an analyst may wish to determine based on a relational event history, for example, whether a particular actor's popularity increased over a particular period of time, in which case the relational events selected for inclusion in the subset of relational events may include relational events that occurred during the particular period of time, and in which the particular actor was a participant.
  • the model may be elaborated, to allow a set of statistical parameters ⁇ to vary across events.
  • An i-th level pivot may, for example, contain a subset of relational events in which a particular actor i was a participant. Parameters may depend on events, such that:
  • ⁇ i ⁇ ( e ) ⁇ ⁇ i e ⁇ ⁇ i ⁇ 0 else
  • parameter estimation may be performed ( 703 ). Although it is possible to estimate effect values for a pivot using the same methods employed in determining the baseline, doing so may be computationally costly and ultimately unnecessary. As such, a single step of the Newton-Raphson algorithm may be employed, starting from the baseline values, and calculating the next, more likely effect values for the pivot. These pivot-specific next, most likely effect values are the fixed effects.
  • fitting the restricted model results in a maximum likelihood estimate ⁇ circumflex over ( ⁇ ) ⁇ 0 for the restricted model, a score contribution for each event V ⁇ circumflex over ( ⁇ ) ⁇ 0 ( ⁇
  • the maximum likelihood estimate, score contributions, and Fisher information contributions may be used to execute a single Newton-Raphson step, to estimate ⁇ i .
  • Pivots may be indexed by i and, for each pivot, a score contribution V ⁇ circumflex over ( ⁇ ) ⁇ 0 ( ⁇
  • Estimates for fixed effects can be used to infer departures from usual behavior by constructing hypotheses about them, and each fixed effect value may correspond to a particular relational event included in the subset of relational events.
  • a hypothesis may include predictions regarding heterogeneity of fixed effects over pivots, as well as temporal differencing of fixed effects.
  • Temporal differencing of a fixed effect may be defined over three levels: ⁇ it , the value of the fixed effect over a particular time period, velocity, ⁇ ′ it , the first difference of the fixed effect with respect to time, and acceleration, ⁇ ′′ it , the second difference of the fixed effect with respect to time. Predictions may be made regarding, for example, the popularity of a particular individual within a particular time period, a rate at which the popularity of the individual increased or decreased over the particular time period, and as to whether the rate of change in popularity increased or decreased over the particular time period.
  • may be defined as a set of pivots ⁇ it , where each ⁇ it is a subset of events pertaining to a particular actor i that occurred during a particular time period t. If ⁇ it ⁇ is a fixed effect for the i-th pivot level over the t-th time interval, the levels of temporal differencing may be defined:
  • a one-side null hypothesis H 0 predicting homoegeneity of effects over the pivots
  • H 1 predicting heterogeneity
  • the weighting vector q enables discretion over the kinds of behavioral anomalies that may be detected through hypothesis testing, where values in the vector q reflect predictions regarding temporal differencing.
  • a negative value for the velocity of an effect that is included in the weighting vector q indicates a prediction that the effect decreased over the time interval, while a positive value indicates a prediction that the effect increased over the interval.
  • a value of zero would indicate a prediction that no change in the effect occurred over the time interval.
  • hypotheses may be tested in order to determine departures from baseline communications behavior using a scalar test statistic ⁇ , which may be computed based on the fixed effect values ( 707 ):
  • test statistic ⁇ has an approximately standard normal null distribution, which permits easy testing of the null hypothesis H 0 . Evaluations of expectiations within the covariances are performed using the maximum likelihood estimate ⁇ circumflex over ( ⁇ ) ⁇ .
  • Cov ⁇ D it ⁇ may be estimated by partitioning Cov ⁇ D it ⁇ into blocks that may be derived separately and that are expressed in terms of covariances of the fixed effects estimates (i.e., Cov ⁇ acute over ( ⁇ ) ⁇ it ⁇ ):
  • Cov ⁇ ( D it ) [ Cov ⁇ ⁇ ⁇ it ⁇ Cov ⁇ ⁇ ⁇ it , ⁇ it ′ ⁇ T Cov ⁇ ⁇ ⁇ it , ⁇ it ′′ ⁇ T Cov ⁇ ⁇ ⁇ it , ⁇ it ′ ⁇ Cov ⁇ ⁇ ⁇ it ′ ⁇ Cov ⁇ ⁇ ⁇ it ′ , ⁇ it ′′ ⁇ T Cov ⁇ ⁇ ⁇ it , ⁇ it ′′ ⁇ Cov ⁇ ⁇ ⁇ it ′ , ⁇ it ′′ ⁇ Cov ⁇ ⁇ ⁇ it ′ , ⁇ it ′′ ⁇ Cov ⁇ ⁇ ⁇ it ′′ ⁇ ]
  • the scalar test statistic ⁇ may be calculated and used to test the null hypothesis H 0 through a simple score test, in which the value of the scalar test statistic is compared to the null hypothesis. If the result of the simple score test is equal to or less than zero, there is no confidence in the alternative hypothesis, indicating that the predictions with regard to the heterogeneity that are reflected in the weighting vector q may be wrong. Alternatively, if the result of the simple score test is positive, then there is some level of confidence that the predictions are correct, with a larger positive values indicating a greater degree of confidence.
  • the alternative hypothesis will have been confirmed with some degree of confidence, which in turn indicates that communications behavior varied from the baseline with regard to the selected pivots and effects, and that the predictions regarding the anomolous communication behavior that underlie the alternative hypothesis are correct.
  • FIGS. 8-23 provide examples of interfaces and data visualizations that may be output to a user, for example, using UI 108 of system 100 .
  • UI 108 may be used to receive inputs from a user of system 100 , and may be used to output data to the user.
  • a user of the system may, for example, specify data sources to be used by normalizer 103 in determining relational history 104 and covariate data 105 .
  • the user may also provide inputs indicating which actors, modes, topics, covariates, and/or effects to include in model 106 , as well as which subsets of the relational event history should be analyzed in determining departures from the baseline.
  • UI 108 may provide the user with outputs indicating a formulation of model 106 , a determined baseline for the model 106 , and one or more determinations as to whether and how the subsets of relational event history being analyzed differ from the baseline. UI 108 may also provide the user with additional views and analyses of data so as to allow the user to draw additional inferences from the model 106 .
  • UI 108 may provide to the user, based on probability model 106 , a determined baseline, and/or one or more determined departures from the baseline, textual and/or graphical analyses of data that uncover patterns, trends, anomalies, and change in the data.
  • FIG. 8 includes an example interface 801 that enables a user to translate business questions into hypotheses for testing data in a relational event history.
  • a hypothesis dashboard 802 may enable a user to form a hypothesis regarding communications behavior by selecting one or more effects from a list of possible effects, and one or more covariates from a list of possible covariates. The selection may occur by dragging and dropping the effects and covariates from one or more windows or spaces listing possible effects and/or covariates into a window or space defining the hypothesis, and a user may be able to further select properties of a selected effect or covariate by interacting with buttons or text corresponding to the desired properties.
  • Descriptions of the effects, covariates, and properties may be displayed for the user in response to detection of hovering, and a textual description 803 of the hypothesis may be dynamically formed and displayed to the user as effects, covariates, and properties are selected by the user. Alternatively, or in addition, the user may manually enter a textual description of the hypothesis being formed.
  • FIG. 9 includes example visualizations 901 and 902 , which include, respectively, curves 903 and 904 that may be generated based on statistical analysis of data in a relational event history and then displayed to a user.
  • the displayed curves may be formed, for example, based on the effects and covariates included in the user's hypothesis, and the effects included in the hypothesis may be used in a baselining process that results in a determination of normality.
  • anomalous (i.e. abnormal) behavior may be inferred in the form of deviations from the baseline over period of time.
  • the curves displayed to the user may correspond to an actor, to a pair of actors, and/or to all actors in a relational event history, and may indicate periods of time in which communications behavior is normal, and periods of time in which communications behavior is abnormal.
  • the indication may be provided, for example, through color coding, in which periods of normal behavior are assigned one color, and in which periods of abnormal behavior are assigned another color.
  • UI 108 may enable a user to select between varying levels of sensitivity through which normality and abnormality are determined, and the visualizations displayed to the user may dynamically update as selection of sensitivity occurs.
  • curves each representing a different effect or covariate, may be displayed in an overlapping fashion, and the curves may be normalized and smoothed.
  • the curves may be displayed in two dimensions, where the x axis is associated with time, and where the y axis is associated with properties of the effects.
  • UI 108 may display icons and/or labels to indicate effects, covariates, or actors to which a curve corresponds, as well as text identifying effects, covariates, or actors to which a curve corresponds.
  • the user interface may further display labels within the two dimensional field in which the curves are plotted, the labels indicating exogenous events or providing other information.
  • a user may select an actor or actors, and the selection may result in curves corresponding to individual effects and/or covariates being displayed for the selected actor or actors, and lines corresponding to multiple effects and/or covariates being displayed for unselected actors.
  • a user may also be able to “zoom in” to the displayed curves in order to view a display of events at a more granular level, with information pertaining to the displayed events being presented through icons that are color-coded according to mode, and that are sized to indicate, for example, a word count or length of conversation.
  • UI 108 may also provide access to individual communications related to events. UI 108 may, for example, display an individual email in response to a user selection or zoom.
  • FIG. 10 includes an example visualization in which, in response to a user selection, UI 108 displays, for a particular actor, behavioral activity over time.
  • the behavioral activity may be displayed, for example, in a polar coordinate system, where the radial coordinates of points in the plane correspond to days, and where angular coordinates correspond to time slices within a particular day.
  • each point plotted in the plane may correspond to a particular communications event, and may be color coded to indicate a mode of communication or other information.
  • Points plotted in the plane may be located on one of several concentric circles displayed on the graph, and the circle on which a point is located may indicate a day on which the communication took place, while the position of the point on the circle may indicate a time slice (e.g., the hour) in which the communication took place.
  • a user may be able to select a communication event that is plotted on the graph to obtain content. For example, a user may click or hover over a point that, like 1002 , indicates an email message in order to retrieve the text of the email message.
  • a polar graph indicating behavioral activity over time may be animated, enabling a user to “fly through” a visual representation of behavioral activity over particular periods of time, where the circles and events presented for a particular period of time correspond to the days within that period, and where the period displayed dynamically shifts in response to user input.
  • FIG. 11 includes example visualizations 1101 , 1102 , and 1103 in which UI 108 displays, for a plurality of actors, behavioral activity over time.
  • UI 108 may display, for a particular actor or for a combination of actors, communications information in a matrix.
  • an icon may represent the communication or communications that took place, with the size of the icon indicating communications volume.
  • Icon 1104 for example, is larger than icon 1105 , and therefore indicates a greater volume of communications.
  • Multiple modes of communication may be displayed at a particular point in the matrix. This may be accomplished through the use of a color coding system in which each mode of communication is assigned a color, and in which icons of varying size and color are generated based on the number of communications of each mode that occurred during a given period of time. When color coding is used, the generated icons may be displayed in overlapping fashion, providing the user with a visual representation of the number and type of communications that occurred at a particular data and period of time.
  • UI 108 may enable a user to select a communication event that is shown in the matrix to obtain content, and the matrix may be animated to show different days and time periods in response to user input.
  • a user may, for example, “scroll through” the matrix.
  • FIG. 12 includes example visualizations 1201 , 1202 , and 1203 in which UI 108 displays, for a particular actor or for a combination of actors, data corresponding to multiple modes of communication, where icons of varying size or bars of varying length are generated based on the number of communications of each mode that occurred during a given period of time.
  • the particular modes that are displayed and the granularity of the display may be determined by a user, as shown at 1204 .
  • UI 108 may enable a user to interact with an icon to obtain additional information regarding communications events that occurred during a given period of time, and the user may interact with a displayed communication event in order to obtain content. Selection of a particular email, for example, may result in display of the email's text, as depicted in visualization 1202 .
  • FIG. 13 depicts example visualizations 1301 , 1302 , and 1303 , in which UI 108 displays, for a particular actor, a summary of communications of various modes over a period time, as well bibliographic information and information pertaining the actor's relationships with other actors in the relational event history.
  • the summary of communications may be provided as in visualization 1301 , for example, in which multiple two-dimensional curves that correspond to different modes of communication are plotted in graph 1304 , in which the x axis is associated with time, and in which the y axis is associated with a number of communications events.
  • UI 108 may display information pertaining to the actor's relationships in the form of a quad chart, such as chart 1305 , where points that represent individual relationship dyads including the actor are plotted on the chart, and where one axis of the chart is associated with numbers of communications sent to the actor by the other actors in each dyad, and where the other axis of the chart is associated with numbers of communications sent by the actor to the other actors in each dyad.
  • a listing of strong relationships (e.g., relationships involving the highest amount of communications activity) may also be included.
  • FIG. 14 includes example visualizations 1401 and 1402 , in which UI 108 displays, for a particular actor, a comprehensive view of the actor's communications and other behavior over a particular period of time.
  • UI 108 may display, as in 1401 , a view of communications and transactions over a period of time, provided with context and with user-specified filters.
  • UI 108 may include, as in 1402 , a “crosshair” 1403 that provides context with regard to a relational event's position within a relational event history, and with regard to trends and other factors.
  • the user may interact with the crosshair 1403 through, for example, side-to-side and up-and-down swiping.
  • Content may be updated as the crosshair is moved, the content including key and calendar events, trends, and geospatial locations.
  • FIG. 15 provides example visualization 1501 , in which UI 108 displays, for a corpus of communications data corresponding to a relational event history, a multimodal synthesis of relational and other events involving a particular actor.
  • UI 108 may present information pertaining to communications and to other events, and may chart the occurrence of the events over time.
  • UI 108 may provide, for example, a detailed “replay” 1502 of information pertaining to events that involved the actor and that took place on a particular day.
  • FIG. 16 provides example visualization 1601 , in which UI 108 displays radial graphs of behavioral characteristics pertaining to an actor. Characteristics that may be graphed include, for example, relationships, key words used, and modes of communication. Graph 1602 , for example, displays percentages of communications that occurred through each of three modes, while graph 1603 displays percentages of communications that are characterized as either incoming or outgoing. Radial graphs may also measure and compare elements relating to an actor's position in a network and/or to overall communication tendencies.
  • FIG. 17 includes example visualization 1701 , in which UI 108 displays a comprehensive view 1702 of the history and attributes of stock data and performance, for comparison with an actor's activity. Like stock data, other external data may be compared to relational events or to the relational history of a particular actor, for purposes of correlation and investigation.
  • FIG. 18 includes example visualizations 1801 , 1802 , and 1803 , in which UI 108 displays, for a corpus of communications data corresponding to a relational event history, a frequency of usage of a particular word or phrase.
  • UI 108 may, for example, plot word usage with respect to time, and may indicate individual communications in which the word was used.
  • the interface may further identify actors who used the word, and through what mode, as indicated at 1804 .
  • FIG. 19 provides example visualization 1901 , in which UI 108 combines graphics with an interactive word-tree 1902 that acts as a search filter.
  • the interactive word-tree may be used, for example, to sift through a corpus of communications data for instances of the use of a particular word or phrase.
  • FIG. 20 includes example visualizations 2001 and 2002 .
  • 2001 depicts a particular interface of UI 108 in which line graphs are displayed overlaid with word trending based on frequency counts of numbers of documents containing a user-specified word. The frequency counts may be taken over a period of time (e.g., daily).
  • 2002 depicts a particular interface of UI 108 in which each relational event appears in a plot that enables a user to scroll through email or other relational event content. Distinct coloration may be used to indicate the particular event to which presently-viewed content corresponds, and colors of events may change as the user scrolls from event to event.
  • FIG. 21 provides example visualization 2101 , in which UI 108 pairs a display of a network diagram 2102 , the diagram being produced based on communication thresholds, with a communications quad chart 2103 and with corresponding measures of strengths of relationships that include directionality of communication.
  • FIG. 22 includes example visualizations 2201 , 2202 , and 2203 , which indicate analyses of a corpus of communications data that may be performed using system 100 .
  • system 100 may be used to pose a question, and to create a hypothesis that might indicate an answer to that question.
  • the hypothesis may be expressed in terms of a language of behavioral effects, and hypothesis testing may identify individuals who have exhibited behavior that relates to the hypothesis.
  • UI 108 has employed shading to illustrate a degree to which each the behavior of each identified individual deviates from the norm.
  • graphs are used to illustrate variance in an individual's behavior, in contrast to the norm, over time.
  • Events may be represented in a graph by a vertical line, such as line 2205 , providing context for behavioral changes.
  • Quarterly earnings for a company for example, may be indicated in a graph.
  • Communications content may be overlaid in a graph, as in 2203 , with each communication event represented as icon.
  • Each email sent or received by an individual in question may be represented, for example, by a blue or brown dot, the color indicating whether the email was sent or received.
  • a user may be able to click on or otherwise interact with a dot to view additional information relating to the corresponding communication. For example, a user may be able to view the textual content of an email that was sent by a particular actor.
  • FIG. 23 includes example visualizations 2301 , 2302 , and 2303 , which indicate further analyses of a corpus of communications data that may be performed using system 100 .
  • Irregularity Heat Map Abnormal content and communications activity, aggregated by day, may be visualized, and shading may be used to indicate a degree or an amount of abnormal or irregular activity that occurred on a given day.
  • Tendencies of individual actors to contact other actors may also be visualized, as in 2302 .
  • a tendency of internal actors to email external individuals may be visualized for a given time period, with actors ranked in order of number of emails sent to the actor, or received by the actor, involving external contacts.
  • a count of external emails for each actor may be expressed in the graph, and an event may be overlaid to provide context.
  • the popularity of terms in a corpus of communications, and their frequency of use over time, may also be presented by UI 108 , as shown in 2303 .
  • a table 2304 identifying the first times at which words were used in a collection of emails may be paired, for example, with an illustration of usage trends for the words.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Computational Linguistics (AREA)
  • General Business, Economics & Management (AREA)
  • Game Theory and Decision Science (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Automation & Control Theory (AREA)
  • Fuzzy Systems (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Algebra (AREA)
  • Telephonic Communication Services (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

A relational event history is determined based on a data set, where the relational event history includes a set of relational events that occurred in time among a set of actors. Data is populated in a probability model based on the relational event history, where the probability model is formulated as a series of conditional probabilities that correspond to a set of sequential decisions by an actor for each relational event, the probability model including one or more statistical parameters and corresponding statistics that relate to one or more of senders of relational events, modes of relational events, topics of relational events, or recipients of relational events. A baseline communications behavior for the relational event history is determined, the baseline including a first set of values for the one or more statistical parameters, and departures from the baseline communications behavior are determined.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • The present application claims priority from U.S. Provisional Application No. 61/771,611, filed Mar. 1, 2013, U.S. Provisional Application No. 61/771,625, filed Mar. 1, 2013, and U.S. Provisional Application No. 61/803,876, filed Mar. 21, 2013. All of these prior applications are incorporated by reference in their entirety.
  • FIELD
  • The present application relates to statistically modeling social behavior.
  • BACKGROUND
  • Descriptive statistics may be used to quantitatively describe a collection of data gathered from several sources, in order summarize features of the data, and electronic communications generate data trails that can be used to formulate statistics. Email records, for example, may be parsed to identify a sender of an email, a topic or subject of the email, and one or more recipients of the email. Similarly, phone records provide information that may be used to identify a caller and a recipient of a phone call.
  • Descriptive statistics are not developed on the basis of probability theory and, as such, are not used to draw conclusions from data arising from systems affected by random variation. Inferential statistics, on the other hand, are based on probability theory and are used to draw conclusions from data that is subject to random variation.
  • Social behavior, such as communications behavior, may involve uncertainty. In this case, inferential statistics, either alone or in combination with descriptive statistics, may therefore be applied to data reflecting the social behavior to draw inferences about such behavior.
  • SUMMARY
  • According to one general implementation, a relational event history is determined based on a data set, the relational event history including a set of relational events that occurred in time among a set of actors. Data is populated in a probability model based on the relational event history, where the probability model is formulated as a series of conditional probabilities that correspond to a set of sequential decisions by an actor for each relational event, the probability model including one or more statistical parameters and corresponding statistics that relate to one or more of senders of relational events, modes of relational events, topics of relational events, or recipients of relational events. A baseline communications behavior for the relational event history is determined based on the populated probability model, where the baseline comprises a first set of values for the one or more statistical parameters, and departures from the baseline communications behavior are determined within the relational event history.
  • In one aspect determining departures from the baseline communications behavior within the relational event history includes determining a second set of values for the statistical parameters based on one or more subsets of the relational events included in the relational event history, and comparing the second set of values for the statistical parameters to the first set of values. Comparing the second set of values for the statistical parameters to the first set of values may include determining a hypothesis regarding communications behavior within the relational event history, and testing the hypothesis using the second set of values.
  • In another aspect, the set of sequential decisions may include a decision to send a communication, a decision as to a mode of the communication, a decision as to a topic of the communication, and one or more decisions as to recipients of the communication.
  • In a further aspect, determining the relational event history based on the data set may include identifying, for each relational event in a set of relational events included in the data set, a sender, a topic, a mode, and one or more recipients.
  • In another aspect, generating the relational event history may include extracting data from the data set, transforming the extracted data, loading the transformed data, and enriching the loaded data.
  • In a further aspect, one or more covariates may be determined based on the data set, where the probability model includes the one or more covariates. The one or more covariates may include one or more global covariates, actor covariates, or dyadic covariates, where a global covariate has a single value for all actors or pairs of actors that are included in the set of actors, where an actor covariate has a different value for each actor that is included in the set of actors, and where a dyadic covariate has a different value for each pair of actors that is included in the set of actors.
  • In another aspect, the baseline communications behavior for the relational event history may be determined using a maximum-likelihood method.
  • In a further aspect, the baseline communications behavior for the relational event history may be determined using a distributed computing platform.
  • Other implementations of these aspects include corresponding systems, apparatus, and computer programs, configured to perform the described techniques, encoded on computer storage devices.
  • The details of one or more implementations of the subject matter described in this specification are set forth in the accompanying drawings and the description below. Other potential features, aspects, and advantages of the subject matter will become apparent from the description, the drawings, and the claims.
  • DESCRIPTION OF DRAWINGS
  • FIG. 1 is a diagram of an example of a system that analyzes a relational event history.
  • FIG. 2 is a flowchart of an example of a process for analyzing a relational event history.
  • FIG. 3 is a flowchart of an example of a process for determining a baseline communications behavior for a relational event history.
  • FIG. 4 is a flowchart of another example of a process for determining a baseline communications behavior for a relational event history.
  • FIG. 5 is a flowchart of an example of a process for modeling a set of sequential decisions made by a sender of a communication in determining recipients of the communication.
  • FIG. 6 is a flowchart of an example of a process for determining a statistic using a decay function.
  • FIG. 7 is a flowchart of an example of a process for analyzing social behavior.
  • FIGS. 8-23 provide examples of user interfaces and of data visualizations that may be output to user.
  • Like reference symbols in the various drawings indicate like elements.
  • DETAILED DESCRIPTION
  • Because communications behavior is complex, and because the decisions involved in one actor sending a communication to another are typically not predictable in advance, the drawing of intelligent inferences from a set of communications-related data can benefit from the development and fitting of a probability model (a mathematical model that is probabilistic in nature). Once a model is developed and fit to a data set, statistical methods can be used to detect patterns, changes, and anomalies in communications behavior, and to test related hypotheses.
  • One way to approach modeling of communications between actors is to formulate a probability density function as a series of conditional probabilities that can be represented by decisions made sequentially. More specifically, for each relational event (e.g., a communications event occurring at a moment in time among a finite set of actors) in a set of relational events, the probability of the event's occurrence can be decomposed such that it is the product of the probabilities of each of at least four sequential decisions made by the event's initiating actor: (1) a decision to send a communication at a point in time; (2) a decision as to a mode or channel of the communication; (3) a decision as to a topic or content of the communication; and (4) one or more decisions as to one or more recipients of the communication. Although other sequences are possible (e.g., omitting consideration of the topic of the communication, or considering the recipient in advance of the mode), the sequence of sender, mode, topic, and recipient(s) can be useful, in appropriate cases, from a computational standpoint.
  • Due to the heterogeneity of time-related aspects of communications modeling (e.g., communication patterns differ between work days and weekends), modeling time directly may be difficult. As such, a proportional hazards model, similar to the Cox model, may be employed, so that the “risk” of a specific relational event occurring is relative to other possible relational events, which allows for the prediction of which events are most likely to occur next, but not specifically when. Within the model, the decisions of an actor to send a communication, and as to the mode, topic, and recipient(s) of the communication, may depend on any relational event that occurred prior to the communication, as well as on covariates that can take exogenous information (e.g., data other than communications data) into account. As such, for each sequential decision related to an event, a multinomial logit distribution may be used to model the probabilities of the discrete choice problem presented by the decision, where the primary factors affecting the probability of an event's occurrence are a set of statistics (also referred to as effects) that describe the event in question.
  • An arbitrary number of statistics can be included in the model, and the types of statistics included may form the basis for the kinds of inferences that can be drawn from the model. The statistics may be based in social network theory, and may relate to one or more of senders, modes, topics, or recipients of relational events. A “trigger” effect, for example, relates to the tendency of an actor to communicate based on the recency of a received communication, while a “broken record” effect relates to an overall tendency to communicate about a topic. The statistics (or effects) may be a scalar value. In some cases, a coefficient (referred to as a statistical parameter or effect value) is multiplied by these statistic values within the model. The statistical parameter may therefore indicate the statistic's effect on event probabilities.
  • Once the statistics to include in the model have been chosen, the model can be populated based on a relational event history that is determined from a data set. Using the populated model, a baselining process may be employed to determine communications behavior that is “normal” for a given relational event history. This baseline includes a set of effect values (statistical parameters) that correspond to the statistics included in the model. This baseline and the populated model can be used to determine departures from the normal communications behavior.
  • In this way, a probability model fitted to a relational event history derived from event and other data may be used to identify patterns, changes, and anomalies within the relational event history, and to draw sophisticated inferences regarding a variety of communications behaviors.
  • FIG. 1 is a diagram of an example of a system that analyzes a relational event history. The system 100 includes data sources 101 and 102, data normalizer 103, inference engine 107, and user interface (“UI”) 108. The data normalizer 103 may be used to determine relational event history 104 and covariate data 105, and the inference engine 107 may be used to determine model 106, and to draw inferences from the model. Data sources 101 and 102 may be connected to data normalizer 103 through a network, and normalizer 103, inference engine 107, and UI 108 may interface with other computers through the network. The data sources 101 and 102 may be implemented using a single computer, or may instead be implemented using two or more computers that interface through the network. Similarly, normalizer 103, inference engine 107, and UI 108 may implemented using a single computer, or may instead be implemented using two or more computers that interface through the network.
  • Inference engine 107 may, for example, be implemented on a distributing computing platform in which various processes involved in drawing inferences from a relational event history and a set of covariates are distributed to a plurality of computers. In such an implementation, one or more computers associated with the inference engine 107 may access a relational event history, a set of covariates that have been formatted by normalizer 103, and a set of focal actors whose communications behavior will be the subject of analysis. Each of the computers may use the accessed data to perform a portion of the computations involved in populating the model 106, determining a baseline, and/or determining departures from the baseline.
  • For example, in some implementations, the model may include a set of event statistics, or effects, that impact the probability of events. In this case, to populate the model, each of the computers may perform a portion of the computations involved in determining these event statistics, as well as determining the probabilities of the events. Also, for example, in some implementations determining a baseline may involve determining a set of effect values, which are coefficients that are multiplied by the event statistics in the model 106, and accordingly describe the impact of each effect on event probabilities. The process of determining the effect values may involve a maximum likelihood estimation in which each of the computers perform a portion of the computations involved.
  • Data source 101 may contain data that relates to communications events. The data may have originated from one or more sources, may relate to one or more modes of communication, and may be stored in one or more formats. Data source 101 may, for example, store email records, phone logs, chat logs, and/or server logs. Data source 101 may be, for example, a digital archive of electronic communications that is maintained by an organization, the archive containing data related to communications involving actors associated with the organization.
  • Data source 102 may contain additional data that, although not directly related to communications events, may nevertheless prove valuable in drawing inferences from a relational event history. Data source 102 may, for example, store information relating to an organization and its personnel, such as organizational charts, staff directories, profit and loss records, and/or employment records. Data source 102 may be, for example, a digital archive that is maintained by an organization, the archive containing data relating to the operations of the organization.
  • Data normalizer 103 may be used to load, extract, parse, filter, enrich, adapt, and/or publish event data and other data accessed through one or more data sources, such as data sources 101 and 102. Specifically, event data that is received from data source 101 may be normalized to determine a relational event history 104, the normalization process resulting in clean, parsed relational data with disambiguated actors that maps to the categories of decisions included in a probability model 106. An email, for example, may be parsed to reveal the sender, topic, mode, recipient(s), and timestamp of the email, and that data may be used to generate a relational event that corresponds to the email in relational event history 104.
  • Normalization of the data accessed from data source 101 may involve processing the data so as to produce a relational event history 104 in which, to the extent possible, each event is described using a uniform set of characteristics, regardless of the mode of communication involved in the event and the format in which the event data is stored in data source 101. Each event in the event history may be include a “sender” (otherwise referred to as an ego below), which is the actor responsible for initiating the event, a “recipient(s)” (otherwise referred to as an alter below), which is the actor(s) that received the event, a mode identifying the mode of the event, and a timestamp indicating the time that the occurred. For example, a phone record may result in a relational event that includes the actor responsible for initiating the call (sender), the actor that received the call (recipient), the mode identifying the event as a phone call, and a timestamp indicating the time that the call was made. Other characteristics used to describe an event in relational event history 104 may include, for example, a unique identifier for the event, a duration indicating a length of the event, a type indicating the manner in which data relating to the event was formatted in data source 101, a unique identifier for a digital archive from which the event was accessed, and one or more fields related to enrichment attributes (e.g., additional data describing an actors involved in the event, such as job titles).
  • Data that is received from data source 102 may be normalized by data normalizer 103 in order to produce covariate data 105. Covariates are exogenous variables that may be involved in effects and that may be included in probability model 106. A public company using a probability model to analyze communication patterns might, for example, include the company's daily stock price as a covariate in the model, in order to shed light on the relationship between the price and communications between employees and outsiders. An individual covariate may be a global variable that occurred at or during a particular time for all actors in a relational event history (e.g., relating to an audit), may instead be a dyadic variable that occurred at or during a particular time for a pair of actors in the model (e.g., a supervisor-staff member relationship that existed between two employees), or may be an actor variable that occurred at or during a particular time for a specific actor (e.g., a salary).
  • As explained above, the inference engine 107 populates probability model 106 based on relational event history 104 and covariate data 105, the model having been formulated as a series of conditional probabilities that correspond to sequential decisions by actors, and including one or more statistical parameters and corresponding statistics that may relate to one or more of senders, modes, topics, or recipients of relational events.
  • Inference engine 107 may also determine a baseline communications behavior for the model 106, based on the populated model Inference engine 107 may, for example, determine a set of effect values through a maximum likelihood process, the determined values indicating the impact of the effects on event probabilities. The inference engine 107 may also determine departures from the baseline by determining a second set of values for the effects based on one or more subsets of the relational events included in relational event history 104, and comparing the second set of effect values to the first set of values.
  • UI 108 may be used to receive inputs from a user of system 100, and may be used to output data to the user. A user of the system may, for example, specify data sources to be used by normalizer 103 in determining relational history 104 and covariate data 105. The user may also provide inputs indicating which actors, modes, topics, covariates, and/or effects to include in model 106, as well as which subsets of the relational event history should be analyzed in determining departures from the baseline. UI 108 may provide the user with outputs indicating a formulation of model 106, a determined baseline for the model 106, and one or more determinations as to whether and how the subsets of relational event history being analyzed differ from the baseline. UI 108 may also provide the user with additional views and analyses of data so as to allow the user to draw additional inferences from the model 106.
  • In more detail, UI 108 may provide to the user, based on probability model 106, a determined baseline, and/or one or more determined departures from the baseline, textual and/or graphical analyses of data that uncover patterns, trends, anomalies, and change in the data. UI 108 may, for example, enable a user to form a hypothesis regarding the data by selecting one or more effects, covariates, and/or sets of focal actors, and curves may be displayed based on the user's hypothesis, where the curves indicate periods of time in which communications behavior is normal, as well as periods of time in which communications behavior is abnormal. Other visualizations of the data, such as summations of communications behavior involving particular actors, modes, and/or topics, may be provided by UI 108
  • Curves displayed to the user through UI 108 may correspond to an actor, to a subset of actors, and/or to all actors in the relational event history. Color coding may be used to indicate periods of time in which communications behavior is normal, and periods of time in which communications behavior is abnormal. A user may be able to select between varying levels of sensitivity through which normality and abnormality are determined, and UI 108 may dynamically update as selection of sensitivity occurs.
  • Multiple curves, each representing different effects or covariates, may be displayed by UI 108 in an overlapping fashion, and the curves may be normalized and smoothed. The curves may be displayed in two dimensions, where the x axis is associated with time, and where the y axis is associated with properties of effects and/or covariates. UI 108 may display icons and/or labels to indicate effects, covariates, or actors to which curves correspond. UI 108 may further display labels within the two dimensional field in which the curves are plotted, the labels indicating exogenous events or providing other information.
  • UI 108 may also enable a user to zoom in to the displayed curves in order to view a display of events at a more granular level, with information pertaining to the displayed events being presented through icons that may be color-coded according to mode, and that may be sized to indicate, for example, a word count or length of conversation. UI 108 may also provide access to individual communications related to events. UI 108 may, for example, display an individual email in response to a user selection or zoom.
  • In response to a user selection, UI 108 may also display, for a particular actor, behavioral activity over time. The behavioral activity may be displayed, for example, in a polar coordinate system, where the radial coordinates of points in the plane correspond to days, and where angular coordinates correspond to time slices within a particular day.
  • In more detail, each point plotted in the plane may correspond to a particular communications event, and may be color coded to indicate a mode of communication or other information. Points plotted in the plane may be located on one of several concentric circles displayed on the graph, and the circle on which a point is located may indicate a day on which the communication took place, while the position of the point on the circle may indicate a time slice (e.g., the hour) in which the communication took place. A user may be able to select a communication event that is plotted on the graph to obtain content. For example, a user may click or hover over a point that indicates an SMS message in order to retrieve the text of the SMS message.
  • In some implementations of UI 108, a polar graph indicating behavioral activity over time may be animated, enabling a user to “fly through” a visual representation of behavioral activity over particular periods of time, where the circles and events presented for a particular period of time correspond to the days within that period, and where the period displayed dynamically shifts in response to user input.
  • FIG. 2 is a flowchart of an example of a process 200 for analyzing a relational event history. The process 200 may be implemented, for example, using system 100, although other systems or configurations may be used. In such an implementation, one or more parts of the process may be executed by data normalizer 103 or inference engine 107, which may interface with other computers through a network. Data normalizer 103 may retrieve data involved in the process, such as data used in determining a relational event history or covariates, from one or more local or remote data sources, such as data sources 101 and 102.
  • Process 200 begins when data normalizer 103 accesses event and/or other data from data sources 101 and 102 (201). After accessing the event and/or other data, the data normalizer 103 normalizes the accessed data, determining a relational event history 104 and covariate data 105 (203).
  • The process of normalizing event and other data and determining a relational event history and covariates may involve, among other things, extracting event data from accessed data, transforming the extracted data to a state suitable for populating the probability model 106, and enriching the transformed data with additional information gathered from other data sources. The accessed event data may, for example, include an email sent by one actor to two others, the email relating to a topic specified in the probability model 106. The data normalizer 103 may parse the email to extract a time stamp, a sender, a topic, and recipients. Extracted data may then be transformed by data normalizer 103, resulting in relational data with disambiguated actors that maps to the categories of decisions included in a probability model 106. The data normalizer 103 may then enrich the transformed data by, for example, scraping one or more websites to obtain additional data relating to the sender or recipients. The enriched data representing a relational event corresponding to the email may then be added to relational event history 104. The data normalizer 103 may perform similar operations in the process of producing covariate data 105.
  • A probability model 106 may be populated by inference engine 107 based on the relational event history 104 and covariate data 105 (205). In some implementations, the probability model 106 is formulated as a series of conditional probabilities that correspond to a set of sequential decisions by an actor. For each event, the set of sequential decisions includes a decision to send a communication, a decision as to amode of the communication, a decision as to a topic of the communication, and one or more decisions as to recipients of the communication. A multinomial logit distribution can be used to model the probabilities of the discrete choice problem presented by each decision, with the primary factors affecting the probability of an event occurring are a set of event statistics (also referred to as effects), which are based in social network theory. For example, a woman's probability of emailing her boss may be different if she has received 4 emails from clients within the past 24 hours than if she has received none. Likewise, a man may be more or less likely to make a phone call depending on the number of people who have called him recently.
  • The model's multinomial logit distribution may include a coefficient that is multiplied by these event statistic values and therefore describes the statistic's effect on event probabilities. This coefficient may be referred to as an effect value or a statistical parameter. Effects may be formulated using backward looking statistics, such as time-decayed sums of recent events of certain types, or the last event that was received by the ego (sender) in question, which may be referred to as participation shifts.
  • In more detail, a relational event history N, such as relational event history 104, may include relational events that occur at moments in time among a finite set of actors. The composition of this set of actors may depend on time t, and is denoted N(t). Any ordered pair of actors is called a dyad, and relational events are denoted as tuples, where:
      • the sender of the event, also called the ego, is represented by iεN(t)
      • the mode of the event is represented by m∈M,
      • the topic of the event is represented by b∈B.
      • the recipients of the event, also called the alters, are represented by the set of j∈J⊂N(t), and
      • the timestamp of the event is represented by t∈[0,∞).
  • For notational convenience, a number of functions are defined for an event e:
      • m(e) refers to the mode of event e,
      • b(e) refers to the topic of event e,
      • J(e) refers to the alters of event e, and
      • τ(e) refers to the timestamp of event e,
      • i(e) refers to the ego of event e,
  • A strictly ordered set of these relational events constitutes a relational event history, which may be represented through use of the shorthand notation:

  • εt ={e∈ε:τ(e)<t}.
  • The event history is an endogenous variable Other, exogenous variables (i.e., covariates) may also be included in the probability model, and these covariates may be partitioned into three types:
      • global covariates that have the same value for all actors and relationships. The global covariates are denoted by the set W. A covariate Wa∈W is a function that maps a timestamp t to a real value Wa(t).
      • actor covariates that are permitted different values for each actor. The actor covariates are denoted by the set X covariate Xa∈X is a function that maps a timestamp/actor pair (i.t) to a real value Xa(i,t).
      • dyadic covariates that are permitted different values for each dyad. The dyadic covariates are denoted by the set Y. A covariate Ya∈Y is a function that maps a timestamp/dyad pair (i,j,t) to a real value Ya(i,j,t).
  • Typically, covariates will have a time domain equal to the relational event history. The combination of the relational event history and the covariates constitutes a dataset that may be denoted:

  • Z=(E,W,X,Y)
  • A probability density representing the probability of the occurrence of each relational event in the relational event history and based on the dataset may be denoted:

  • f(ε|W,X,Y,Z 0,θ)
  • where Z0 denotes all information before t=0 and θ is a statistical parameter
  • The probabilities may be conditioned on all prior events and information, including an initial state t=0, such that the probability density may be rewritten:
  • f ( ɛ W , X , Y , Z 0 , θ ) = e ɛ f ( e ɛ τ ( e ) , W , X , Y , Z 0 , θ )
  • For practical reasons, it may be beneficial to restrict the conditional densities such that only covariate information known at time t can influence the probabilities of event occurrence. Accordingly, the probability density can be simplified by requiring that:

  • f(e|ε τ(e) ,W,X,Y,Z 0,θ)=f(e|Z τ(e),θ)
  • The probability density may be decomposed into a series of conditional probabilities that correspond to a set of sequential decisions by an actor:
  • f ( e Z τ ( e ) , θ ) = f ( i ( e ) , τ ( e ) Z τ ( e ) , θ ) × f ( m ( e ) i ( e ) , τ ( e ) , Z τ ( e ) , θ ) × f ( b ( e ) i ( e ) , τ ( e ) , m ( e ) , Z τ ( e ) , θ ) × f ( ( e ) i ( e ) , τ ( e ) , m ( e ) , b ( e ) , Z τ ( e ) , θ )
  • The conditional probabilities included in this version of the model consist of:
      • the joint ego/interarrival density f(i(e),τ(e)| . . . ), which describes the process by which the go (i.e. sender) of an event waits some time and then decides to send an email,
      • the mode density f(m(e)| . . . ), which describes the process of the ego choosing to communicate (e.g. by email or by phone),
      • the topic density f(b(e)| . . . ), which describes the process of the ego deciding to communicate about one of some finite set of topics,
      • and the alter density f(J(e)| . . . ), which describes the process of the ego deciding to communicate with some set of alters (i.e. recipients).
  • The ego/interarrival density, which describes a process by which an ego chooses to initiate an event following a most-recent event, can be modeled using a semi-parametric approach in the spirit of the Cox proportional hazards model:
      • Supposed that t* is the time of the most recent event to occur, or 0 if none yet occurred. We assume that, for all egos i∈N(t) and for all interarrival times t∈(0,∞) until the next event, that

  • f(i,t|Z t * +t,θ)=λ0(t)×exp φt(i|Z t * ,θ).
  • Notably, the function φt, which models the probability density that the next event to occur after t* entails ego i sending an event after a holding time of t, does not depend on the interarrival time t, and therefore cannot incorporate information accumulated since the last event. Moreover, the baseline hazard rate λ0(t) depends on neither ego i nor the interarrival time t. As such, the hazards between all candidate egos are proportional:
  • f ( i a , t Z t * + t , θ ) f ( i b , t Z t * + t , θ ) = exp φ I ( i a Z t * + t , θ ) exp φ I ( i b Z t * + t , θ )
  • For convenience, a linear form for φt may be used:

  • φI(i|Z r * ,θ)=αT s I(i,Z t * )
      • where sI(i,Zt * ) is a statistic and α⊂θ.
  • This form allows the baseline hazard rate to be ignored in modeling, as estimation entails only a partial likelihood. Thus, the optimal parameter θ can be found by maximizing, over the relational event history, the probability density that the ego for each event would send an event, as opposed to the other actors:
  • P ( i ( e ) = i * Z τ ( e ) , θ ) = exp φ I ( i * Z τ ( e ) , θ ) i N ( τ ( e ) ) exp φ I ( i Z τ ( e ) , θ )
  • The fact that the function φI does not depend on the interarrival time t, and therefore cannot incorporate information accumulated since the last event, necessitates a further assumption regarding covariate values. Namely, that changes to covariate values occur only at moments when events occur. More formally:
      • given an event history ε, a covariate ζ, and two time points t and t+d{tilde over (t)}≧t,
      • if there exists no e∈ε such that τ(e)∈(t,t+dt], then ζ(t)=ζ(t+dt).
  • The incorporation of the passage of time into the impact of an event on future events may modeled through a decay function using the following general form:
  • s ( t , ) = { e ɛ : Ψ I ( e , ) } δ ( t , τ ( e ) )
      • where ψt(e, . . . ) is called predicate, and describes criteria by which a subset of events is selected
  • Effects that evaluate an actor's decision to initiate a communication may be referred to as “ego effects.” It possible to develop effects that depend on either or both of the relational event history and covariates. Ego effects that depend on the relational event history may include the activity ego selection effect and the popularity ego selection effect, both of which quantify the amount of communications that have recently been sent to (popularity) or sent by (activity) the candidate ego i*, where recency is determined by specifying the effects through predicates:
      • the activity ego selection effect

  • ψt(e,i*)={i*=i(e)}
      • the popularity ego selection effect

  • ψt(e,i*)={i*∈J(e)}
  • Ego effects that depend on covariates may include the actor covariate ego selection effect and the indegree dyadic covariate ego selection effect:
      • the actor covariate ego selection effect for action covariate xa

  • s I(i*,Z t)=x a(i*).
      • and the indegree dyadic covariate ego selection effect for dyadic covariate ya
  • s I ( i * , Z t ) = j N t y a ( j , i * ) .
  • The mode density, which describes the process of the ego choosing one of a finite set of modes, can be represented through a conditional distribution:

  • f(m(e)|i(e),τ(e),Z τ(e),θ)
  • A model for the selection of a mode by the ego is the multinomial logit, or discrete choice distribution:
  • f ( m ( e ) = m * ) = exp φ M ( m * , ) m M exp φ M ( m , )
  • For convenience, a linear form for ΦM may be used:

  • φM(m*, . . . )=βT s M(m*, . . . )
      • where sM(m*, . . . ) is a statistic and β⊂θ
  • Effects that evaluate the ego's decision as to the method of communication may be referred to as “mode effects.” Mode effects may include the relay mode selection effect, which quantifies a selected ego i's tendency to contact other actors through a candidate mode m* that was recently used by other actors to contact i, and the habit mode selection effect, which quantifies a selected ego i's tendency to contact other actors through a candidate mode m* that i that recently used to contact other actors:
      • the relay mode selection effect

  • ψM(e,m*,i)={m*=m(e),i∈J(e)}
      • the habit mode selection effect

  • ψM(e,m*,i)={m*=m(e),i=i(e)}.
  • The topic density, which describes the process of the ego choosing one of a finite set of topics, given a previous choice of mode, can be represented through a conditional distribution:

  • f(t(e)|m(e),i(e),τ(e),Z τ(e),θ)
  • As with selection of a mode, the selection of a topic by the ego can be modeled using a multinomial logit, or discrete choice distribution, the selected mode being introduced into the topic distribution as a covariate:
  • f ( b ( e ) = b * ) = exp φ B ( b * , ) b B ( τ ( e ) ) exp φ B ( b , )
  • For convenience, a linear form for φB may be used:

  • φB(b, . . . )=γT s B(b, . . . )
      • where sB(b, . . . ) is a statistic and γ⊂θ
  • Effects that evaluate the ego's decision as to the topic of communication may be referred to as “topic effects.” Topic effects may include the relay topic selection effect, which quantifies a selected ego i's tendency to communicate with other actors about a candidate topic b* that recently appeared in communications sent to i by other actors, and the habit mode selection effect, which quantifies a selected ego i's tendency to communicate with other actors about a candidate topic b* that recently appeared in communications sent by i to other actors:
      • the relay topic selection effect

  • ψB(e,b*, . . . )={b*=b(e),m=m(e),i=j(e)}
      • the habit topic selection effect

  • ψB(e,b*, . . . )={b*=b(e),m=m(e),i=i(e)}
  • The alter density, which describes the process of the ego choosing to communicate with a set of alters, given previous choices of mode and topic, can be represented through a conditional distribution:

  • f(J(e)|b(e),m(e),i(e),τ(e),Z τ(e),θ)
  • Notably, the size of the outcome space of possible alter sets J(e) can be enormous, even for a small N. The size of this set |J(e)| is stochastic and lies on the interval [1,Nτ(e)). For each size |J(e)| on this interval, we have:
  • ( N τ ( e ) - 1 ( e ) )
  • As such, the dimensionality of the outcome space is:
  • a = 1 N τ ( e ) - 1 ( N τ ( e ) - 1 a )
  • To avoid practical problems associated with the enormity of the outcome space of possible alter sets, J may be modeled as an ordered set, such that the ego adds actors into the alter set alter-by-alter:
  • ( e ) = { j 1 , j 2 , , j ( e ) } * ( a ) = { a = 1 { j 1 , j 2 , , j a - 1 } a > 1
  • Modeled in this way, the density may be decomposed:
  • f ( ( e ) ) = a = 1 ( e ) f ( j a * ( a ) , )
  • Each element in the decomposition of the density may be modeled using a multinomial logit, or discrete choice distribution:
  • f ( j * * ( a ) , ) = exp φ J ( j * , * ( a ) , ) j R ( i ( e ) , * ( a ) ) exp φ J ( j , * ( a ) , )
  • In the modeling of the elements, the alter risk set R(a) defines the choices of alter available to an ego for the alter selection decision at hand. One way of characterizing the alter risk set is:
  • R ( i , * ( a ) ) = { N τ ( e ) \ i * ( a ) = N τ ( e ) \ * ( a ) else
  • where we denote the choice of j*=i(e) as the choice to not add anymore alters into the set J(e).
  • Decomposing the model for alter selection in this way makes it possible to specify φJ in a linear form:

  • φJ(j,J *(a), . . . )=ηT s J(j,J *(a), . . . )
  • where sJ(j,J*(a), . . . ) is a statistic and η⊂θ
  • Effects that evaluate the ego's decision(s) as to the recipient(s) of a communication may be referred to as “alter effects.” It possible to develop alter effects that depend on either or both of the relational event history and covariates. Alter effects that depend on the relational event history may include the fellowship alter effect and
      • the repetition alter effect: the Fellowship Alter Effect

  • ψJ(e,j*,J *(a), . . . )={i∪j*∪J *(a) i(e)∪J(e)}
      • and the Repetition Alter Effect

  • ψJ(e,j*,J *(a), . . . )={i=i(e),j*∈J(e)}
  • Alter effects that do not depend on the relational event history may include the activity alter effect and the actor covariate alter effect:
      • the Activity Alter Effect

  • s J(j*,J *(a), . . . )=1−Π{i(e)=j*}
        • where Π{i(e)=j*} is the indicator function,
      • and the Actor Covariate Alter Effect

  • s J(j*,J *(a), . . . )=(1−Π{i(e)=j*})X{j*,τ(e)}
        • where X{j*,τ(e)} is the value of the actor covariate X for actor j* at time τ(e)
  • In some situations, it may be advantageous to restrict the model to a set of focal actors F(t), a subset of actors in the relational event history:

  • εF ={e∈ε:i(e)∈F(τ(e))}
  • These situations can arise, for example, when there is a need for analysis of communications involving only a subset of actors in the relational event history, or when the relational event history includes complete data for one subset of actors but not for another. In these situations, instead of drawing inference using the joint probability of the entire event history, the joint probability of all events sent by the focal actors may be modeled. The joint probability density of all events sent by focal actors may be written:
  • f ( ɛ F ɛ \ ɛ F , W , X , Y , Z 0 , θ ) = e ( τ ( e ) ) f ( e ɛ τ ( e ) , W , X , Y , Z 0 , θ )
  • In this distribution, all events that are initiated by non-focal actors are regarded as exogenous.
  • Following the population of the probability model 106 based on the relational event history 104 and covariate data 105, a baseline of communications behavior is determined (207). For example, in a situation in which the model described with respect to operation 205 is used, a baseline may be determined by estimating the effect values (statistical parameters). The estimated effect values represent the baseline communications behavior because they indicate the impact of the corresponding effect (statistic) on the event probabilities.
  • The effect values may be estimated, for instance, through maximum likelihood methods. The Newton-Raphson algorithm, for example, may be used. The Newton-Raphson algorithm is a method of determining a maximum likelihood through iterative optimization of parameter values that, given a current set of estimates, uses the first and second derivatives of the log likelihood function about these estimates to intelligently select the next, more likely set of estimates. Through the Newton-Raphson method, which may be performed, for example, using a distributed computing platform, a converged estimate of each effect value included in the probability model may be obtained.
  • Departures from the baseline of communications behavior may be determined (209). For instance, the baseline can be considered normal communications behavior, and deviations from the baseline can be considered abnormal, or anomalous behaviors. In models in which the baseline is represented by effect values estimated based on the relational event history, anomalous behaviors may be detected by comparing effect values for subsets (also referred to as pivots) of the relational event history to the baseline values in order to determine whether, when, or where behavior deviates from the norm.
  • A pivot may, for example, include only events involving a specific actor during a specific time period, only events involving a specific set of topics, or only events involving a specific subset of actors. If, for example, the baseline reveals that actors in the relational event history typically do not communicate between midnight and 6:00 AM, a particular actor initiating 30 events during those hours over a particular period of time might be considered anomalous. As another example, if one subset of actors typically communicates by email, but the majority of communications between actors in the subset during a specific time frame are phone calls, the switch in mode might be considered anomalous.
  • Effect values may be determined for a pivot using the same methods employed in determining the baseline, for example, through use of the Newton-Raphson method. Pivot-specific effect values may be referred to as “fixed effects.”
  • Comparison of the fixed effects to the baseline may allow for estimation of the degree to which the communications behavior described by a particular pivot departs from normality. Other, more involved inferences may also be drawn. For example, it is possible to determine whether a fixed effect has high or low values, is increasing or decreasing, or is accelerating or decelerating. Further, it is possible to determine whether or how these features hang together between multiple fixed effects. Analyses of this nature may be performed through a hypothesis-testing framework that, for example, employs a score test to compare an alternative hypothesis for one or more effect values to a null hypothesis (i.e., the baseline).
  • FIG. 3 is a flowchart of an example of a process for determining a baseline communications behavior for a relational event history. The process 300 may be implemented, for example, using system 100. In such an implementation, one or more parts of the process may be executed by inference engine 107, which may interface with other computers through a network. Inference engine 107 may, for example, send or receive data involved in the process to and from one or more local or remote computers.
  • Assuming that the relational event history 104 and covariate data 105 contain enough information to compute probabilities of all events in the dataset, estimation of the baseline may be performed using a maximum likelihood method.
  • In more detail, it is possible to estimate effect values through maximum likelihood methods such as the Newton-Raphson method. Newton-Raphson is a method of iterative optimization of parameter values that, given a current set of estimates, uses the first and second derivatives of the log likelihood function about these estimates to intelligently select the next, more likely set of estimates. When applied in determining a baseline for the probability model 106, the Newton-Raphson method may use the first and second derivatives of the log likelihood function about a set of estimated effect values in order to select the next, more likely set of estimated effect values, with the goal of maximizing the “agreement” of the probability model 106 with the relational event history 104 and covariate data 105 on which the model 106 is based. Convergence of a set of effect values may be considered to have occurred when a summation across all events of the first derivative of the log likelihood function about the currently estimated effect values is approximately zero, and when the summation across all events of the second derivative of the log likelihood function about the currently estimated effect values meets or exceeds a threshold of negativity.
  • The joint probability of the relational event history may be adapted into a log likelihood that can be maximized numerically via Newton-Raphson:
  • L ( θ ) = log f ( e τ ( e ) , θ )
  • The method begins with an initial parameter estimate {circumflex over (θ)}0 (301). First and second derivatives of the log likelihood with respect to θ may be derived (303):
  • V ( θ ) = L ( θ ) θ ( θ ) = - 2 L ( θ ) θ 2
  • The initial parameter estimate {circumflex over (θ)}0, may be refined iteratively through update steps, in which first and second derivatives are evaluated at {circumflex over (θ)}0 for each event (305) and then summed across all events (307) in order to arrive at a new parameter estimate {circumflex over (θ)}s+1 (309):

  • {circumflex over (θ)}i+1={circumflex over (θ)}i +V {circumflex over (θ)} i T(θ|Z)I {circumflex over (θ)} i −1(θ|Z)|
  • Update steps may continue until optimization converges on a value (311). The converged value is the maximum likelihood estimate {circumflex over (θ)}, which has an estimated covariance matrix that is the inverse of the second derivative matrix evaluated at {circumflex over (θ)}0:

  • {circumflex over (Σ)}{circumflex over (θ)} =I {circumflex over (θ)} −1(θ|Z)
  • In a system 100 in which inference engine 107 is implemented on a distributed computing platform, the process of determining a baseline may involve distribution of the model 106 to a plurality of computers associated with inference engine 107, each of which is involved in computing the maximum likelihood estimate {circumflex over (θ)} through the Newton-Raphson algorithm. Different computers may, for example, evaluate first and second derivative values for different events, with those evaluated derivatives then being summed. In such an implementation, an individual computer to which the model is distributed may evaluate first and second derivatives for a single event (305) during each update of Newton-Raphson, and may report the evaluations to a central computer that sums the first and second derivatives across all events (307), and that forms a new parameter estimate based on the result of summing the first and second derivatives (309).
  • As explained above, each of the conditional distributions in the probability model 106 may be formulated as a multinomial logit. For purposes of deriving first and second derivatives that may be used in determining a baseline through the Newton-Raphson method, the following multinomial distribution, featuring a random variable X with an outcome space X and an arbitrary statistic s(x), may be considered:
  • f ( X = x θ ) = exp θ T s ( x ) x a exp θ T s ( x a )
  • The log likelihood of this distribution may be denoted:
  • g ( X = x θ ) = log f ( X = x θ ) = θ T s ( x ) - log x a exp θ T s ( x a ) q
  • The first derivative of g is:
  • g ( X = x θ ) = g ( X = x θ ) θ = θ θ T s ( x ) - θ log x a exp θ T s ( x a ) = s ( x ) - x a s ( x a ) exp θ T s ( x a ) x a exp θ T s ( x a ) = s ( x ) - E θ { s ( X ) }
      • where Eθ{s(X)} is the expectation of the statistic s(X) with respect to the random variable X given the parameter θ.
  • Note that the expectation of a random variable y with domain Y and probability density p(y) is calculated by:
  • y Y yp ( y )
  • In deriving the first derivative of g, note that Y=s(xa) and p(y) is the multinomial distribution f(X=x|θ), which allows for the final simplification.
  • The second derivative of g is:
  • g ( X = x θ ) = 2 g ( X = x θ ) T θ 2 = θ ( s ( x ) - E θ { s ( X ) } ) T = - θ E θ { s ( X ) } T = - X θ f ( X = x θ ) s ( X ) T
  • Note the relationship between f and the first derivative of g:
  • g ( X = x θ ) = log f ( X = x θ ) θ = 1 f ( X = x θ ) f ( X = x θ ) θ so that θ f ( X = x θ ) = f ( X = x θ ) g ( X = x θ )
  • Incorporating this relationship allows for further derivation:
  • g ( X = x θ ) = - X f ( X = x θ ) g ( X = x θ ) s ( X ) T = - E θ { g ( X = x θ ) s ( X ) T } = - E θ { ( s ( X ) - E θ { s ( X ) } ) s ( X ) T } = - E θ { s ( X ) s ( X ) T } - E θ { [ E θ { s ( X ) } ] s ( X ) T } = - E θ { s ( X ) s ( X ) T } - E θ { s ( X ) } E θ { s ( X ) } T = - Cov θ { s ( X ) }
  • where Covθ{s(X)} is the covariance matrix of s(X) given θ
  • It can be observed that:
  • Cov θ { g ( X = x θ ) } = Cov θ { s ( X ) - E θ { s ( X ) } } = E θ { ( s ( X ) - E θ { s ( X ) } ) ( s ( X ) - E θ { s ( X ) } ) T } = E θ { s ( X ) s ( X ) T - 2 E θ { s ( X ) } s ( X ) T + E θ { s ( X ) } E θ { s ( X ) } T } = E θ { s ( X ) s ( X ) T } - E θ { s ( X ) } E θ { s ( X ) } T = Cov θ { s ( X ) }
  • Giving:
  • g ( X = x θ ) = - Cov θ { s ( X ) } = - Cov θ { g ( X = x θ ) }
  • Because each of the ego, mode, topic, and alter distributions are multinomial logits, these results can be applied when determining the baseline using the Newton-Raphson method.
  • FIG. 4 is a flowchart of another example of a process 400 for determining a baseline communications behavior for a relational event history. The process 400 may be implemented, for example, using system 100. In such an implementation, one or more parts of the process may be executed by inference engine 107, which may interface with other computers through a network. Inference engine 107 may, for example, send or receive data involved in the process to and from one or more local or remote computers.
  • The process 400 may be used when the order in which recipients are selected by the sender is unknown. As indicated above, in the situation in which the sender of a communication may select multiple recipients for the communication, the sender's choice of which recipients to include may be best modeled as a set of sequential decisions involving an order in which recipients are added by the sender to the communication, rather than a single decision. A single email, for example, may be addressed to multiple recipients, and the sender of the email may add each recipient in sequence.
  • As a result, a model, such as the one described with respect to operation 205 above, may model the choice of recipients as a sequential set of decisions. In this case, the model may be used without issue when the order of the selection of the recipients is known. However, in some cases, the recipients may be known, but not the order, which may present a missing data problem if the model is to be employed.
  • More formally, when attempting to determine a baseline, it may be the case that, for each event e, an unordered set of chosen alters A(e) is known, but J(e), denoting an ordered set of alters representing the sequence in which alters were chosen, is not known. In such a case, J(e), denoting the set of all possible ordered sets J(e) satisfying the requirement that the sequence of alter selections in J(e) could have yielded the observed A(e) is also not known, which presents a missing data problem.
  • To estimate {circumflex over (θ)} in such a situation, the expectation maximization (EM) algorithm may be employed. The algorithm consists of two steps that may be executed iteratively until {circumflex over (θ)} converges. Performing EM using probability model 106 involves calculation of expectations of quantities that depend on the missing sequences of alter choices. In general, evaluation of the expectation of a function h(J(e),Zτ(e),θ) may be performed using:
  • E θ { h ( ( e ) , τ ( e ) , θ ) } = ( e ) ( e ) f ( ( e ) ( e ) , τ ( e ) , θ ) h ( ( e ) , τ ( e ) , θ )
  • where density f(J(e)|A(e),Zτ(e),θ) is the probably of the alter selection sequence J(e) given that the set A(e) is ultimately chosen.
  • During a maximization step, a single update of the Newton-Raphson algorithm is conducted by summing the expected first and second derivatives across all events:

  • {circumflex over (θ)}i+1={circumflex over (θ)}i +E {circumflex over (θ)} i {V T(θ|Z)}[E {circumflex over (θ)} i {I(θ|Z)}]−1
  • New parameter estimates can be formed based on the result of summing the first and second derivatives, and the EM process may be repeated until convergence of {circumflex over (θ)}i is achieved.
  • The most practically difficult part of the EM process is computing expectations of the form:
  • E θ { h ( ( e ) , τ ( e ) , θ ) } = ( e ) ( e ) f ( ( e ) ( e ) , τ ( e ) , θ ) h ( ( e ) , τ ( e ) , θ )
  • Two approaches may be taken, depending on the size of J(e), which is given by:

  • |J(e)|=|A(e)|!
  • When the number of actors in the unordered set of alters is below a threshold number (e.g., of size 5 or less), analytical estimation may be feasible and therefore performed. Noting that:
  • f ( ( e ) ( e ) , τ ( e ) , θ ) = f ( ( e ) , ( e ) τ ( e ) , θ ) f ( ( e ) τ ( e ) , θ )
  • and

  • J(e)
    Figure US20140249785A1-20140904-P00001
    A(e)

  • f(J(e),A(e)|Z τ(e),θ)=f(J(e)|Z τ(e),θ)
  • Since
  • f ( ( e ) τ ( e ) , θ ) = ( e ) ( e ) f ( ( e ) τ ( e ) , θ )
  • It is possible to directly evaluate
  • f ( ( e ) ( e ) , τ ( e ) , θ ) = f ( ( e ) τ ( e ) , θ ) f ( ( e ) τ ( e ) , θ )
  • However, when the number of actors in the undordered set of alters is above a threshold number, analytical evaluation may be practically infeasible. Instead, numerical techniques, such as Markov chain Monte Carlo (MCMC) simulation, may be used to approximate the expectation.
  • To conduct maximum likelihood estimation with EM, an initial parameter estimate {circumflex over (θ)}0 is made (401), and first and second derivatives are derived (403). Prior to performing the expectation step, a determination may be made as to whether the number of possible ordered alter sets, |J(e)|, is above a threshold (404). If |J(e)| is below the threshold, EM may proceed with the expectation being evaluated analytically (404). If, on the other hand, |J(e)|, is above the threshold, MCMC is used to determine the expectation through simulation (406).
  • In the first case, in which |J(e)| is below the threshold, expected first and second derivatives (E{circumflex over (θ)}{V(θ|Z)} and E{circumflex over (θ)}{I(θ|Z)}, respectively) are evaluated for all events (405). A single update of the Newton-Raphson algorithm is conducted by summing the expected first and second derivatives across all events (407), and new parameter estimates are formed based on the result of summing the first and second derivatives (409). The EM process may then be repeated until convergence of {circumflex over (θ)}i is achieved (411).
  • In the second case, in which |J(a)| is above the threshold, the expected first and second derivatives are determined for each event through simulation. For example, application of a numerical technique such as MCMC may be employed to conduct the simulation (406).
  • A Markov chain is a stochastic process involving transitions between states, where the conditional probability distribution of future states of the process depends only on the present state, and not on the preceeding sequence of states. For example, given a process with a set of two possible states i and j, the process is a Markov chain if the probability that the process will transition from a present state i to a next state j depends only on the present state i, and not on the states that preceded the present state. Many Markov chains feature what is called an equilibrium distribution, such that, from the present state, the probability that, after a sufficient number of transitions, the process will be in a specific state no longer changes from one transition to the next. If, for example, the probability of the process being in state i after n transitions is p, and the probability of the process being in state i after any number of transitions after n is also p, then the Markov chain can be said to have an equilibrium distribution.
  • Monte Carlo methods are computational algorithms that randomly sample from a process, and Markov chain Monte Carlo methods involve sampling from a Markov chain constructed such that the target distribution is the Markov chain's equilibrium distribution. After a sufficient number of transitions, draws taken from the Markov chain will appear as if they resulted from the target distribution. By taking the sample average of draws, values for quantities of interest can be approximated.
  • MCMC may be used to approximate expectations of quantities that depend on a missing sequence of alter choices. In more detail, MCMC may be used to sample draws of possible ordered sets of alters, J(e), from the density f(J(e)|A(e),Zτ(e),θ), which is the probability of the alter selection sequence J(e) given that the set of undordered alters A(e) is chosen. Draws may be sampled in the following way:
      • Let J(1)(e) be an arbitrary sequence containing the elements of A(e). For each desired (i-th) sample J(1)(e), execute the following steps:
      • 1. Draw a new sequence J*(e)∈J(e) at uniform random. J*(e) is called the proposal.
      • 2. Evaluate the acceptance probability πi=max
  • : { 1 , f ( * ( e ) , ( e ) τ ( e ) , θ ) f ( ( i ) ( e ) , ( e ) τ ( e ) , θ ) }
      • 3. With probability πi, set J(i)=J*, otherwise set J(i)=J(i-1).
  • Because the sample sets J(i) are approximately distributed f(J(e)|A(e),Zτ(e),θ), it is possible to calculate the expectation, using a sample size N, by the ergodic average:
  • E θ { h ( ( e ) , τ ( e ) , θ ) } i = 1 N h ( ( i ) ( e ) , τ ( e ) , θ )
  • Having calculated the expectation, expected first and second derivatives can be determined for all events (406). A single update of the Newton-Raphson algorithm is conducted by summing the expected first and second derivatives across all events (408), and new parameter estimates are formed based on the result of summing the first and second derivatives (410). The EM process may then be repeated until convergence of {circumflex over (θ)}i is achieved (412).
  • FIG. 5 is a flowchart of an example of a process 500 for modeling a set of sequential decisions made by a sender of a communication in determining recipients of the communication. The process 500 may be implemented, for example, using system 100. In such an implementation, one or more parts of the process may be executed by inference engine 107, which may interface with other computers through a network. Inference engine 107 may, for example, send or receive data involved in the process to and from one or more local or remote computers.
  • As explained above, in some situations, the alter risk set introduced earlier, which defines the choices of alter available to an ego for the alter selection decision at hand, can become extremely large, leading to computational complexity. As such, in a situation in which a sender of a communication (i.e. ego) may select multiple recipients (i.e. alters) for the communication, the sender's choice of which recipients to include may be best modeled as a set of sequential decisions involving an order in which recipients are added by the sender to the communication, rather than as a single decision. The model may be further refined by considering the sender's choice of which recipients to include as involving a two-stage decision process, whereby the sender first considers a social context in which to communicate, and then chooses recipients of the communication from a set of actors belonging to the social context. For example, in a situation in which potential recipients of the sender's communication appear in multiple social contexts or settings, the set of sequential decisions described above may include, for at least some of the events, one or more social context selection decisions, and one or more additional decisions as to which recipients in a selected social context(s) to include.
  • In more detail, a sender of a communication may interact with other actors in a variety of contexts, and both the sender and the other actors with whom the sender interacts may be categorized as belonging to specific social contexts or settings. A primary setting, for example, may include actors who belong to an organization or who engage in related activities, while another setting may include actors who have interacted, or who have the potential to interact, at a specific time and/or place.
  • A sender of a communication may, for example, choose to communicate with actors in a primary setting or in a meeting setting, with one set of potential recipients (e.g., a set including the sender's coworkers and clients) corresponding to the primary setting, and another set of potential recipients (e.g., a set including meeting attendees) corresponding to the meeting setting. In some instances, social contexts or settings may be mutually exclusive, with each potential recipient being modeled as belonging to only one context or setting. In other instances, actors categorized as belonging to one social context or setting may be categorized as belonging to others as well (e.g., a potential recipient may be both a coworker of the sender and a meeting attendee, in which case the potential recipient could be categorized as belonging to both the primary and meeting settings).
  • As such, for each communication event, a sender of the communication corresponding to the event may select a social context in which to communicate, prior to determining which potential recipients to communicate with, and the model may be formulated such that the calculation of probabilities associated with the sender's decisions takes this selection into account (501).
  • In more detail, a primary alter risk set RP consisting of potential recipients belonging to a primary social context, and a meeting alter risk set RM consisting of potential recipients belonging to a meeting social context, may be defined differently, and the sender of the communication may select one of the primary or meeting social contexts prior to sending a communication. If, for example, the primary social context involves actors with whom the sender has recently been in contact, the primary alter risk set RP may be defined using a sliding window λ.
  • More formally, the set of actors with whom an ego i has been involved in at least one event occurring on the interval [t0,t] may be written:

  • P(i,t,t 0)={j∈N t :|{e∈ε t :{i,j}|i(e)∪J(e),τ(e)≧t 0}|>0}
  • In this case, the primary alter risk set RP can be defined, given some sliding window λ, as:
  • P ( i , * ( a ) , t ) = { ( i , t , t - λ ) * ( a ) = i ( i , t , t - λ ) \ * ( a ) else
  • Given this definition of the primary alter risk set RP the meeting alter risk set RM may be defined such that the primary and meeting settings are mutually exclusive and collectively exhaustive:

  • R M(i,J *(a),t)=N|(t)\R P(i,J *(a),t)
  • Other definitions of the primary alter risk set RP and the meeting alter risk set RM are, of course, possible.
  • Based on the selection of the social context, the sender may make one or more additional decisions as to which recipients within the selected social context with whom to communicate. After selecting a primary social context, for example, the sender may determine a set of recipients for the communication by selecting one or more potential recipients from the primary alter risk set RP, using a primary evaluation function (503). Alternately, after selecting another social context, the sender may determine a set of recipients for the communication by selecting one or more potential recipients from within the other social context, using another evaluation function (505).
  • The evaluation functions used to calculate probabilities associated with the sender's decisions as to recipients may differ depending on the selected social context, the differences reflecting the different ways in which the actor scrutinizes potential recipients in each setting. In the primary setting, for example, alter selection may occur in the same way described above with reference to FIG. 2, while a different evaluation function may be used for alter selection in the meeting setting. Alter selection in the meeting setting may involve, for example, choosing at uniform random a potential recipient who is in the meeting setting but who is not in the primary setting or the current alter set, and then evaluating whether to include the chosen potential recipient in the current alter set using an evaluation function that is specific to the meeting setting.
  • More formally, the probability density function for this example may be written:
  • f ( ( e ) τ ( e ) , ) = j * ( e ) { κ · f P ( j * * ( a ) , τ ( c ) , ) j * P ( i , * ( a ) , τ ( e ) ) ( 1 - κ ) · f M ( j * * ( a ) , τ ( e ) , ) j * M ( i , * ( a ) , τ ( e ) )
  • where:
      • k| is the probability that ego i chooses to communicate within her primary setting,
      • fP is the probability density of adding j* to the alter set (given j* is in ego's primary setting),
      • RP is the primary alter risk set corresponding to ego's primary setting,
      • fM is the probability density of adding j* to the alter set (given j* is in ego's meeting setting),
      • And RM is the meeting alter risk set corresponding to ego's meeting setting.
  • The primary alter selection distribution fP included in the probability density function may differ in only minor ways from the alter selection distribution presented above. Specifically, the primary alter evaluation function φJP may be used, and the alters available for selection may be limited to those belonging to the primary alter risk set RP, such that the primary alter selection distribution fP may be written:
  • f P ( j * ) = exp φ JP ( j * , * ( a ) , ) j JP ( i ( e ) , * ( a ) , τ ( e ) ) exp φ JP ( j , * ( a ) , )
  • The meeting alter selection distribution fM may differ from the primary alter selection distribution jP. The meeting alter selection distribution fM may, for example, include two conditionally independent probabilities: a first probability that a member j* of the meeting setting is selected for evaluation, and a second probability that, conditioned on j* being selected for evaluation, j* is added into the alter set.
  • A probability that a member j* of the meeting setting is selected for evaluation for inclusion in the alter risk set, where selection between members of the meeting setting is at uniform random, may take the form:

  • |R JM(i(e),J *(a),τ(e))|−1
  • The probability that a selected member j* is added into the alter set may take the form of a simple logit, where there are only two alternatives (to add j* to the alter set, or to not to add j* to the alter set):
  • exp φ JM ( j * , ) 1 + exp φ JM ( j * , )
  • As such, the meeting alter selection distribution fM may be written:
  • f M ( j * ) = JM ( i ( e ) , * ( a ) , τ ( e ) ) - 1 · exp φ JM ( j * , ) 1 + exp φ JM ( j * , )
  • Employing, dependent on social context, different evaluation functions to calculate probabilities associated with a sender's decisions as to recipients of a communication, as described above, enables the social context(s) in which communications occur to be taken into account when modeling communications behavior.
  • FIG. 6 is a flowchart of an example of a process 600 for determining a statistic using a decay function. The process 600 may be implemented, for example, using system 100. In such an implementation, one or more parts of the process may be executed by inference engine 107, which may interface with other computers through a network. Inference engine 107 may, for example, send or receive data involved in the process to and from one or more local or remote computers.
  • The likelihood of an event's occurrence may depend on other events that have occurred in the past. The likelihood of a child calling her mother, for example, may increase if the mother recently attempted to call the child. The impact of past events on the likelihood of a future event may vary, however, depending on the relative distance of the events in terms of time. For example, a man may be more likely to respond to a voicemail left one day ago, than to a voicemail left one year ago.
  • When modeling social behavior, the impact of past relational events on the probability of a future relational event may be taken into account, and the reliability of the probability model may be enhanced by taking into account only those relational events that occurred within a certain time frame, and/or by discounting the impact of past relational events in proportion to their distance from the future relational event in terms of time. The concept of time may be considered in terms of, for example, clock time and/or social time. For example, when clock time is used, the amount of time since a previous event may be used to weight the relevance of the prior event. As another example, when social time is used, a number of relational events occurring between a past relational event and a future relational event may be used, for example, to weight the relevance of the past relational event.
  • In more detail, a decay function may be used within a model, or within a statistic included in a model, to incorporate the idea that relational events that occurred far in the past are less relevant for purposes of prediction than relational events that occurred recently.
  • As noted above, the incorporation of the passage of time into the impact of an event on future events may be modeled through a decay function using the following general form:
  • s ( t , ) = δ ( t , τ ( e ) )
      • where ψI(e, . . . ) is called a predicate, and describes criteria by which a subset of events is selected
  • In words, a statistic s may be determined based on a selected subset of relational events, where the subset of relational events is selected according to a predicate ψ (601). Each selected event may then be weighted using a decay function δ (603), and the statistic s may be determined based on the weighted events by, for example, summing the weighted events (605).
  • The predicate ψ describing criteria by which the subset of events is selected may vary depending on the statistic s. The activity ego selection effect, for example, is a statistic that is defined through its predicate, where the predicate indicates that only those relational events e that have been sent by the ego i will be selected for inclusion in the subset. The predicate of another statistic, the popularity ego selection effect, instead specifies that only those relational events that have been sent to the ego i will be selected for inclusion in the subset.
      • the activity ego selection effect

  • ψt(e,i*)={i*=i(e)}
      • the popularity ego selection effect

  • ψI(e,i*)={i*∈J(e)}
  • The form of the decay function δ used to determine a statistic s determines the manner in which the relational events contained within the selected subset of relational events are weighted, where the weight of a relational event indicates the impact of the relational event on the probability of a future relational event's occurrence. An exponential decay function may be used, for example, to model the relevance of a first relational event for purposes of predicting the occurrence of a second relational event when the relevance is inversely proportional to the time that has passed since the first relational event's occurrence. Given some increasing value Δ, the value of an exponentially decaying quantity δ may be determined, for example, using the following exponential decay function:

  • δ(x,ρ)=exp{−ρΔ}
  • According to this function, the value of the quantity δ monotonically decreases in Δ when is ρ>0. In nature, for example, values that decay in this way include masses of radioactive materials. The rate of decay is linear in the amount of quantity δ remaining:
  • δ ( Δ , ρ ) Δ = - ρδ ( Δ , ρ )
  • In other words, the more positive the decay parameter ρ is, the more quickly the quantity δ decreases in Δ.
  • When modeling the relevance of a relational event to the occurrence of a future relational event, Δ can be considered to be an abstract representation of the passage of time:

  • For Δ∈[0,∞) and ρ>0,δ(Δ,ρ)ε(0,2]
  • Modeled in this way, when no time elapses, i.e. Δ=0, the relevance of an event is 1, and as Δ→∞, the relevance of an event approaches 0. When ρ=0, the relevance of an event is always 1, regardless of the amount of time that has elapsed, and when ρ increases, the relevance of the event will approach 0 as time passes.
  • Δ can be used in different ways to model the passage of time from one event occurring at time t0 to another event occurring at time t1>t0. The simplest way to operationalize the passage of time through Δ is to use clock time, i.e. t1−t0, which yields a time decay function:

  • δ(t 1 −t 0,ρ).
  • A disadvantage of using clock time in modeling the relevance of relational events, however, is that relevance will decay at the same rate without regard for social context. The relevance of a relational event will decay, for example, at the same rate in the middle of the night as it will during the middle of the workday. The concept of social time that progresses only when communications occur, rather than based on the passage of clock time, can be incorporated into the model by focusing on events occurring after t0 and at or before t1, events in the set:

  • ε(t 0 ,t 1 ] ={e∈ε:τ(e)>t 0e ≦t 1}
  • t 0 ,t 1 ]|, i.e., the number of events occurring ε(t 0 ,t 1 ], may be used to operationalize the passage of social time, yielding an event-wise decay function:

  • δ(|ε(t 0 ,t 1 ]|,ρ).
  • When used to determine a statistic s based on a selected subset of relational events, the event-wise decay function renders the amount of clock time occurring between selected events irrelevant: instead of assigning weights to the selected events based on the passage of clock time, the event-wise decay function assigns weights to events based on the order in which they occurred. Specifically, the weights assigned by the event-wise decay function to a series of selected events vary such that each selected event has a higher weight than the event occurring after it in time, and a lower weight than the event occurring before it in time. Thus, when the event-wise decay function is used, it is the occurrence of events, rather than the passage of time, that matters for purposes of determining the relevance of a relational event.
  • The criteria for determining relevance may also be restricted to focus on the social time of a particular actor, i. A participating event-wise decay function, for example, may be formulated:

  • δ(#p(i,t 0 ,t 1),ρ)

  • where

  • #p(i,t 0 ,t 1)=|{e∈ε (t 0 ,t 1 ] Li∈i(e)∪J(e)}|
  • Like the event-wise decay function, the participating event-wise decay function renders the amount of clock time occurring between selected events irrelevant, because the weights assigned to events by the participating event-wise decay function vary based on the order in which events occurred. However, when the participating event-wise decay function is used, the weight assigned to a first selected event will match the weight assigned to a second selected event occurring after the first selected event in time, if the particular actor i did not participate in the second selected event. If, on the other hand, the actor i did participate in the second selected event (as, e.g., a sender or a receiver), the first selected event will have a higher weight than the second selected event. As such, when the participating event-wise decay function is used, it is the occurrence of events involving the actor i, rather than the passage of time, that matters for purposes of determining the relevance of a relational event.
  • The criteria for determining relevance may be further restricted so as to require, for example, that, for social time to elapse, the actor i must have been the sender of an event. A sending event-wise decay function may be formulated:

  • δ(#s(i,t 0 t 1),ρ)

  • where

  • #s(i,t 0 ,t 1)=|{e∈ε (t 0 ,t 1 ] :i=t(e)}|
  • When the sending event-wise decay function is used, the weights assigned to events vary based on the order in which events occurred. However, a weight assigned to a first selected event by the sending event-wise decay function will match the weight assigned to a second selected event occurring after the first selected event in time, if the actor i did not send the second selected event. Alternatively, if the actor i did send the second selected event, the first selected event will have a higher weight than the second selected event. Thus, when the sending event-wise decay function is used, it is the occurrence of events sent by the actor i, rather than the passage of time, that matters for purposes of determining the relevance of a relational event.
  • Any of the exemplary decay functions described above may be used to determine a statistic s that is included in a probability model. The statistic s may be determined, for example, based on a selected subset of relational events, where the subset of relational events is selected according to a predicate ψ that is specific to the statistic s (601). Each selected event may then be weighted using a decay function (603), and the statistic s may be determined based on the weighted events (605). The weighted events may be summed, for example, in order to produce a value for s.
  • FIG. 7 is a flowchart of an example of a process for analyzing social behavior. The process 700 may be implemented, for example, using system 100. In such an implementation, one or more parts of the process may be executed by inference engine 107, which may interface with other computers through a network. Inference engine 107 may, for example, send or receive data involved in the process to and from one or more local or remote computers.
  • A probability model that is populated based on a relational event history may be used to identify patterns, changes, and anomalies within the relational event history, and to draw sophisticated inferences regarding a variety of communications behaviors. As explained above, a baselining process may be used with a model to determine communications behavior that is “normal” for a given relational event history. The resulting baseline includes a set of effect values (statistical parameters) that correspond to the statistics included in the model. Once determined, the baseline can be employed to detect departures from normal communications behavior.
  • In more detail, the statistical parameters obtained through the baselining process can form the basis for follow on analysis; in practical terms, pinning down normality during the baselining process makes it possible to detect abnormality, or anomalous behaviors, in the form of deviations from the baseline. Effect values for subsets of the relational event history (“pivots”) may be compared to the baseline values in order to determine whether, when, and/or how behavior deviates from the norm. A pivot may, for example, include only relational events involving a specific actor during a specific time period, and effect values for a pivot (“fixed effects”) may be used to create an alternative hypothesis that can be compared with a null hypothesis, the baseline, through a hypothesis-testing framework that, for example, employs a score test.
  • Hypothesis testing may allow for estimation of the degree to which the communications behavior described by a particular pivot departs from normality. Other, more involved inferences may also be drawn. For example, it is possible to determine whether a fixed effect has high or low values, is increasing or decreasing, or is accelerating or decelerating. Further, it is possible to determine whether or how these features hang together between multiple fixed effects.
  • Thus, and as is explained in more detail below, social behavior may be analyzed by selecting a subset of relational events, the subset containing pivots (701), estimating values for corresponding fixed effects (703), determining an alternative hypothesis (705), and testing the alternative hypothesis against the null hypothesis, the baseline (707).
  • Selection of subsets of relational events (701) may be arbitrary, or may instead be driven by the particular individuals and/or behaviors that are the subjects of analysis. Recalling the popularity ego selection effect described above, an analyst may wish to determine based on a relational event history, for example, whether a particular actor's popularity increased over a particular period of time, in which case the relational events selected for inclusion in the subset of relational events may include relational events that occurred during the particular period of time, and in which the particular actor was a participant.
  • In more detail, a set Ξ={ξ1, ξ2, . . . } includes pivots ξi ε that are selected subsets of the relational event history, and hypothesis testing my be performed in order to determine whether statistical parameters corresponding to effects being evaluated over the pivots are homogenous over the entire relational event history ε, or if they are instead heterogeneous, differing for some elements of the subset Ξ.
  • As described above, a statistical parameter may be denoted θ=(α,β,γ,η), where α denotes ego effects, β denotes mode effects, γ denotes topic effects, and η denotes alter effects. In order to account for heterogeneity of effects between pivots, the model may be elaborated, to allow a set of statistical parameters Ω to vary across events. In the elaborated model, the set of statistical parameters may be denoted Ω=(ω1, . . . , ω|Ξ|), where ω1 corresponds to a i-th level pivot ξi. An i-th level pivot may, for example, contain a subset of relational events in which a particular actor i was a participant. Parameters may depend on events, such that:
  • θ i ( e ) = { ω i e ξ i θ 0 else
  • Notably, ωi0 yields a pivot-homogenous specification. A model in which ωi0 may be referred to as a restricted model, and a model in which ωi is a free parameter may be referred to as an unrestricted model.
  • Having selected a subset of the relational event history for analysis, parameter estimation may be performed (703). Although it is possible to estimate effect values for a pivot using the same methods employed in determining the baseline, doing so may be computationally costly and ultimately unnecessary. As such, a single step of the Newton-Raphson algorithm may be employed, starting from the baseline values, and calculating the next, more likely effect values for the pivot. These pivot-specific next, most likely effect values are the fixed effects.
  • In more detail, fitting the restricted model results in a maximum likelihood estimate {circumflex over (θ)}0 for the restricted model, a score contribution for each event V{circumflex over (θ)} 0 (θ|e), evaluated at {circumflex over (θ)}0, and a Fisher information contribution for each event, I{circumflex over (θ)} 0 (θ|e), evaluated at {circumflex over (θ)}0.
  • The maximum likelihood estimate, score contributions, and Fisher information contributions may be used to execute a single Newton-Raphson step, to estimate ωi. Pivots may be indexed by i and, for each pivot, a score contribution V{circumflex over (θ)} 0 (θ|ξi), and an information contribution I{circumflex over (θ)} 0 (θ|e) may be calculated, so as to produce a one-step estimator {circumflex over (ω)}i that can be used to test hypotheses about the pivots, where:
  • V θ ^ 0 ( θ ξ i ) = it ξ i V θ ^ 0 ( θ e ) θ ^ 0 ( θ ξ i ) = ω ξ i θ ^ 0 ( θ e ) ω ^ i = θ ^ 0 + V θ ^ 0 T ( θ ξ i ) θ ^ 0 - 1 ( θ ξ i )
  • Estimates for fixed effects can be used to infer departures from usual behavior by constructing hypotheses about them, and each fixed effect value may correspond to a particular relational event included in the subset of relational events. A hypothesis may include predictions regarding heterogeneity of fixed effects over pivots, as well as temporal differencing of fixed effects.
  • Temporal differencing of a fixed effect may be defined over three levels: Δit, the value of the fixed effect over a particular time period, velocity, Δ′it, the first difference of the fixed effect with respect to time, and acceleration, Δ″it, the second difference of the fixed effect with respect to time. Predictions may be made regarding, for example, the popularity of a particular individual within a particular time period, a rate at which the popularity of the individual increased or decreased over the particular time period, and as to whether the rate of change in popularity increased or decreased over the particular time period.
  • As described above, Ξ may be defined as a set of pivots ξit, where each ξit is a subset of events pertaining to a particular actor i that occurred during a particular time period t. If ωit∈Ω is a fixed effect for the i-th pivot level over the t-th time interval, the levels of temporal differencing may be defined:

  • Δitit

  • Δ′itit−ωi(t-1)

  • Δ″it=Δ′it−Δ′i(t-1)
  • Hypotheses involving the levels Dit=(Δit,Δ′it,Δ″it) and a weight vector q, the weights in the vector reflecting predictions regarding temporal differencing, may be formed, where Dit and q are both row vectors. Specifically, a one-side null hypothesis H0, predicting homoegeneity of effects over the pivots, and an alternative hypothesis, H1, predicting heterogeneity, may be formed:

  • H 0 :qD it T=0

  • H 1 :qD it T>0
  • The weighting vector q enables discretion over the kinds of behavioral anomalies that may be detected through hypothesis testing, where values in the vector q reflect predictions regarding temporal differencing. A negative value for the velocity of an effect that is included in the weighting vector q, for example, indicates a prediction that the effect decreased over the time interval, while a positive value indicates a prediction that the effect increased over the interval. A value of zero would indicate a prediction that no change in the effect occurred over the time interval. Thus, a prediction that a particular actor was popular over a particular time period, that the popularity of the actor increased over the time interval, and that the rate of increase of the popularity of the actor over the time interval increased, for example, would be reflected in the weighting vector q by positive values for each of value, velocity, and acceleration of the popularity ego effect.
  • Following the determination of hypotheses, the hypotheses may be tested in order to determine departures from baseline communications behavior using a scalar test statistic θ, which may be computed based on the fixed effect values (707):
  • Θ = qD it T Var ( qD it T )
  • Given Cov{Dit}, the covariance matrix of Dit, the variance of ηDit T has the form:

  • Var{qD it T }=qCov{D it }q T
  • Thus, the test statistic θ has an approximately standard normal null distribution, which permits easy testing of the null hypothesis H0. Evaluations of expectiations within the covariances are performed using the maximum likelihood estimate {circumflex over (θ)}.
  • Given the fixed effect estimates that were determined via execution of a single step of the Newton Raphson algorithm, estimation of Dit is straightforward. Given the fixed effect estimates, Cov{Dit} may be estimated by partitioning Cov{Dit} into blocks that may be derived separately and that are expressed in terms of covariances of the fixed effects estimates (i.e., Cov{{acute over (ω)}it}):
  • Cov ( D it ) = [ Cov { Δ it } Cov { Δ it , Δ it } T Cov { Δ it , Δ it } T Cov { Δ it , Δ it } Cov { Δ it } Cov { Δ it , Δ it } T Cov { Δ it , Δ it } Cov { Δ it , Δ it } Cov { Δ it } ]
  • Estimation of the covariances may be accomplished through their relationship to the observed Fisher information matrix. For any two fixed effects estimates {circumflex over (ω)}a,{circumflex over (ω)}b, the intersection of their corresponding pivots ξab may be denoted:

  • ξ*a∩ξb
  • Computation of the observed Fisher information, which yields an estimator for Cov{{circumflex over (ω)}a,{circumflex over (ω)}b} that may be used in evaluating [I{circumflex over (θ)} 0 (*)(θ|ξi)]−1, may be performed:
  • θ ^ 0 (* ) ( θ ξ i ) = e ξ i θ ^ 0 ( θ e )
  • Having estimated covariances of the fixed effect estimates, the scalar test statistic θ may be calculated and used to test the null hypothesis H0 through a simple score test, in which the value of the scalar test statistic is compared to the null hypothesis. If the result of the simple score test is equal to or less than zero, there is no confidence in the alternative hypothesis, indicating that the predictions with regard to the heterogeneity that are reflected in the weighting vector q may be wrong. Alternatively, if the result of the simple score test is positive, then there is some level of confidence that the predictions are correct, with a larger positive values indicating a greater degree of confidence. Thus, if the score test results in a positive value, the alternative hypothesis will have been confirmed with some degree of confidence, which in turn indicates that communications behavior varied from the baseline with regard to the selected pivots and effects, and that the predictions regarding the anomolous communication behavior that underlie the alternative hypothesis are correct.
  • FIGS. 8-23 provide examples of interfaces and data visualizations that may be output to a user, for example, using UI 108 of system 100. UI 108 may be used to receive inputs from a user of system 100, and may be used to output data to the user. A user of the system may, for example, specify data sources to be used by normalizer 103 in determining relational history 104 and covariate data 105. The user may also provide inputs indicating which actors, modes, topics, covariates, and/or effects to include in model 106, as well as which subsets of the relational event history should be analyzed in determining departures from the baseline. UI 108 may provide the user with outputs indicating a formulation of model 106, a determined baseline for the model 106, and one or more determinations as to whether and how the subsets of relational event history being analyzed differ from the baseline. UI 108 may also provide the user with additional views and analyses of data so as to allow the user to draw additional inferences from the model 106.
  • UI 108 may provide to the user, based on probability model 106, a determined baseline, and/or one or more determined departures from the baseline, textual and/or graphical analyses of data that uncover patterns, trends, anomalies, and change in the data.
  • FIG. 8, for example, includes an example interface 801 that enables a user to translate business questions into hypotheses for testing data in a relational event history. In more detail, a hypothesis dashboard 802 may enable a user to form a hypothesis regarding communications behavior by selecting one or more effects from a list of possible effects, and one or more covariates from a list of possible covariates. The selection may occur by dragging and dropping the effects and covariates from one or more windows or spaces listing possible effects and/or covariates into a window or space defining the hypothesis, and a user may be able to further select properties of a selected effect or covariate by interacting with buttons or text corresponding to the desired properties. Descriptions of the effects, covariates, and properties may be displayed for the user in response to detection of hovering, and a textual description 803 of the hypothesis may be dynamically formed and displayed to the user as effects, covariates, and properties are selected by the user. Alternatively, or in addition, the user may manually enter a textual description of the hypothesis being formed.
  • FIG. 9 includes example visualizations 901 and 902, which include, respectively, curves 903 and 904 that may be generated based on statistical analysis of data in a relational event history and then displayed to a user. The displayed curves may be formed, for example, based on the effects and covariates included in the user's hypothesis, and the effects included in the hypothesis may be used in a baselining process that results in a determination of normality. Following the determination of a baseline of communications behavior, anomalous (i.e. abnormal) behavior may be inferred in the form of deviations from the baseline over period of time.
  • The curves displayed to the user may correspond to an actor, to a pair of actors, and/or to all actors in a relational event history, and may indicate periods of time in which communications behavior is normal, and periods of time in which communications behavior is abnormal. The indication may be provided, for example, through color coding, in which periods of normal behavior are assigned one color, and in which periods of abnormal behavior are assigned another color. UI 108 may enable a user to select between varying levels of sensitivity through which normality and abnormality are determined, and the visualizations displayed to the user may dynamically update as selection of sensitivity occurs.
  • Multiple curves, each representing a different effect or covariate, may be displayed in an overlapping fashion, and the curves may be normalized and smoothed. The curves may be displayed in two dimensions, where the x axis is associated with time, and where the y axis is associated with properties of the effects.
  • UI 108 may display icons and/or labels to indicate effects, covariates, or actors to which a curve corresponds, as well as text identifying effects, covariates, or actors to which a curve corresponds. The user interface may further display labels within the two dimensional field in which the curves are plotted, the labels indicating exogenous events or providing other information.
  • A user may select an actor or actors, and the selection may result in curves corresponding to individual effects and/or covariates being displayed for the selected actor or actors, and lines corresponding to multiple effects and/or covariates being displayed for unselected actors. A user may also be able to “zoom in” to the displayed curves in order to view a display of events at a more granular level, with information pertaining to the displayed events being presented through icons that are color-coded according to mode, and that are sized to indicate, for example, a word count or length of conversation. UI 108 may also provide access to individual communications related to events. UI 108 may, for example, display an individual email in response to a user selection or zoom.
  • FIG. 10 includes an example visualization in which, in response to a user selection, UI 108 displays, for a particular actor, behavioral activity over time. The behavioral activity may be displayed, for example, in a polar coordinate system, where the radial coordinates of points in the plane correspond to days, and where angular coordinates correspond to time slices within a particular day.
  • In more detail, each point plotted in the plane, for example, point 1002, may correspond to a particular communications event, and may be color coded to indicate a mode of communication or other information. Points plotted in the plane may be located on one of several concentric circles displayed on the graph, and the circle on which a point is located may indicate a day on which the communication took place, while the position of the point on the circle may indicate a time slice (e.g., the hour) in which the communication took place. A user may be able to select a communication event that is plotted on the graph to obtain content. For example, a user may click or hover over a point that, like 1002, indicates an email message in order to retrieve the text of the email message.
  • In some implementations of UI 108, a polar graph indicating behavioral activity over time may be animated, enabling a user to “fly through” a visual representation of behavioral activity over particular periods of time, where the circles and events presented for a particular period of time correspond to the days within that period, and where the period displayed dynamically shifts in response to user input.
  • FIG. 11 includes example visualizations 1101, 1102, and 1103 in which UI 108 displays, for a plurality of actors, behavioral activity over time. For example, as shown in visualizations 1101, 1102, and 1103, UI 108 may display, for a particular actor or for a combination of actors, communications information in a matrix. For each day and time slice, an icon may represent the communication or communications that took place, with the size of the icon indicating communications volume. Icon 1104, for example, is larger than icon 1105, and therefore indicates a greater volume of communications.
  • Multiple modes of communication may be displayed at a particular point in the matrix. This may be accomplished through the use of a color coding system in which each mode of communication is assigned a color, and in which icons of varying size and color are generated based on the number of communications of each mode that occurred during a given period of time. When color coding is used, the generated icons may be displayed in overlapping fashion, providing the user with a visual representation of the number and type of communications that occurred at a particular data and period of time.
  • UI 108 may enable a user to select a communication event that is shown in the matrix to obtain content, and the matrix may be animated to show different days and time periods in response to user input. A user may, for example, “scroll through” the matrix.
  • FIG. 12 includes example visualizations 1201, 1202, and 1203 in which UI 108 displays, for a particular actor or for a combination of actors, data corresponding to multiple modes of communication, where icons of varying size or bars of varying length are generated based on the number of communications of each mode that occurred during a given period of time. The particular modes that are displayed and the granularity of the display may be determined by a user, as shown at 1204.
  • UI 108 may enable a user to interact with an icon to obtain additional information regarding communications events that occurred during a given period of time, and the user may interact with a displayed communication event in order to obtain content. Selection of a particular email, for example, may result in display of the email's text, as depicted in visualization 1202.
  • FIG. 13 depicts example visualizations 1301, 1302, and 1303, in which UI 108 displays, for a particular actor, a summary of communications of various modes over a period time, as well bibliographic information and information pertaining the actor's relationships with other actors in the relational event history.
  • The summary of communications may be provided as in visualization 1301, for example, in which multiple two-dimensional curves that correspond to different modes of communication are plotted in graph 1304, in which the x axis is associated with time, and in which the y axis is associated with a number of communications events.
  • UI 108 may display information pertaining to the actor's relationships in the form of a quad chart, such as chart 1305, where points that represent individual relationship dyads including the actor are plotted on the chart, and where one axis of the chart is associated with numbers of communications sent to the actor by the other actors in each dyad, and where the other axis of the chart is associated with numbers of communications sent by the actor to the other actors in each dyad. A listing of strong relationships (e.g., relationships involving the highest amount of communications activity) may also be included.
  • FIG. 14 includes example visualizations 1401 and 1402, in which UI 108 displays, for a particular actor, a comprehensive view of the actor's communications and other behavior over a particular period of time. UI 108 may display, as in 1401, a view of communications and transactions over a period of time, provided with context and with user-specified filters.
  • UI 108 may include, as in 1402, a “crosshair” 1403 that provides context with regard to a relational event's position within a relational event history, and with regard to trends and other factors. The user may interact with the crosshair 1403 through, for example, side-to-side and up-and-down swiping. Content may be updated as the crosshair is moved, the content including key and calendar events, trends, and geospatial locations.
  • FIG. 15 provides example visualization 1501, in which UI 108 displays, for a corpus of communications data corresponding to a relational event history, a multimodal synthesis of relational and other events involving a particular actor. UI 108 may present information pertaining to communications and to other events, and may chart the occurrence of the events over time. UI 108 may provide, for example, a detailed “replay” 1502 of information pertaining to events that involved the actor and that took place on a particular day.
  • FIG. 16 provides example visualization 1601, in which UI 108 displays radial graphs of behavioral characteristics pertaining to an actor. Characteristics that may be graphed include, for example, relationships, key words used, and modes of communication. Graph 1602, for example, displays percentages of communications that occurred through each of three modes, while graph 1603 displays percentages of communications that are characterized as either incoming or outgoing. Radial graphs may also measure and compare elements relating to an actor's position in a network and/or to overall communication tendencies.
  • FIG. 17 includes example visualization 1701, in which UI 108 displays a comprehensive view 1702 of the history and attributes of stock data and performance, for comparison with an actor's activity. Like stock data, other external data may be compared to relational events or to the relational history of a particular actor, for purposes of correlation and investigation.
  • FIG. 18 includes example visualizations 1801, 1802, and 1803, in which UI 108 displays, for a corpus of communications data corresponding to a relational event history, a frequency of usage of a particular word or phrase. UI 108 may, for example, plot word usage with respect to time, and may indicate individual communications in which the word was used. The interface may further identify actors who used the word, and through what mode, as indicated at 1804.
  • FIG. 19 provides example visualization 1901, in which UI 108 combines graphics with an interactive word-tree 1902 that acts as a search filter. The interactive word-tree may be used, for example, to sift through a corpus of communications data for instances of the use of a particular word or phrase.
  • FIG. 20 includes example visualizations 2001 and 2002. 2001 depicts a particular interface of UI 108 in which line graphs are displayed overlaid with word trending based on frequency counts of numbers of documents containing a user-specified word. The frequency counts may be taken over a period of time (e.g., daily). 2002 depicts a particular interface of UI 108 in which each relational event appears in a plot that enables a user to scroll through email or other relational event content. Distinct coloration may be used to indicate the particular event to which presently-viewed content corresponds, and colors of events may change as the user scrolls from event to event.
  • FIG. 21 provides example visualization 2101, in which UI 108 pairs a display of a network diagram 2102, the diagram being produced based on communication thresholds, with a communications quad chart 2103 and with corresponding measures of strengths of relationships that include directionality of communication.
  • FIG. 22 includes example visualizations 2201, 2202, and 2203, which indicate analyses of a corpus of communications data that may be performed using system 100. As explained in detail above, system 100 may be used to pose a question, and to create a hypothesis that might indicate an answer to that question. The hypothesis may be expressed in terms of a language of behavioral effects, and hypothesis testing may identify individuals who have exhibited behavior that relates to the hypothesis. As shown at 2204, for example, UI 108 has employed shading to illustrate a degree to which each the behavior of each identified individual deviates from the norm.
  • Similarly, in 2202, graphs are used to illustrate variance in an individual's behavior, in contrast to the norm, over time. Events may be represented in a graph by a vertical line, such as line 2205, providing context for behavioral changes. Quarterly earnings for a company, for example, may be indicated in a graph.
  • Communications content may be overlaid in a graph, as in 2203, with each communication event represented as icon. Each email sent or received by an individual in question may be represented, for example, by a blue or brown dot, the color indicating whether the email was sent or received. A user may be able to click on or otherwise interact with a dot to view additional information relating to the corresponding communication. For example, a user may be able to view the textual content of an email that was sent by a particular actor.
  • FIG. 23 includes example visualizations 2301, 2302, and 2303, which indicate further analyses of a corpus of communications data that may be performed using system 100. Irregularity Heat Map—Abnormal content and communications activity, aggregated by day, may be visualized, and shading may be used to indicate a degree or an amount of abnormal or irregular activity that occurred on a given day. As 2301 indicates, abnormal content and communications activity, aggregated by day, may be visualized by UI 108, and shading may be used to indicate a degree or an amount of abnormal or irregular activity that occurred on a given day.
  • Tendencies of individual actors to contact other actors may also be visualized, as in 2302. A tendency of internal actors to email external individuals, for example, may be visualized for a given time period, with actors ranked in order of number of emails sent to the actor, or received by the actor, involving external contacts. A count of external emails for each actor may be expressed in the graph, and an event may be overlaid to provide context.
  • The popularity of terms in a corpus of communications, and their frequency of use over time, may also be presented by UI 108, as shown in 2303. A table 2304 identifying the first times at which words were used in a collection of emails may be paired, for example, with an illustration of usage trends for the words.
  • A number of implementations have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the disclosure.
  • For example, elements of different implementations described herein may be combined to form other implementations not specifically set forth above. Elements may be left out of the systems, processes, computer programs, etc. described herein without adversely affecting their operation. Furthermore, various separate elements may be combined into one or more individual elements to perform the functions described herein.
  • In addition, the logic flows depicted in the figures do not require the particular order shown, or sequential order, to achieve desirable results. In addition, other steps may be provided, or steps may be eliminated, from the described flows, and other components may be added to, or removed from, the described systems. Accordingly, other implementations not specifically described herein are within the scope of the following claims.

Claims (21)

What is claimed is:
1. A method comprising:
determining a relational event history based on a data set, the relational event history comprising a set of relational events that occurred in time among a set of actors;
populating data in a probability model based on the relational event history, wherein the probability model is formulated as a series of conditional probabilities that correspond to a set of sequential decisions by an actor for each relational event, the probability model including one or more statistical parameters and corresponding statistics that relate to one or more of senders of relational events, modes of relational events, topics of relational events, or recipients of relational events;
determining, by one or more processing devices, a baseline communications behavior for the relational event history based on the populated probability model, wherein the baseline comprises a first set of values for the one or more statistical parameters; and
determining departures from the baseline communications behavior within the relational event history.
2. The method of claim 1, wherein determining departures from the baseline communications behavior within the relational event history comprises determining a second set of values for the statistical parameters based on one or more subsets of the relational events included in the relational event history and comparing the second set of values for the statistical parameters to the first set of values.
3. The method of claim 2, wherein comparing the second set of values for the statistical parameters to the first set of values comprises determining a hypothesis regarding communications behavior within the relational event history; and testing the hypothesis using the second set of values.
4. The method of claim 1, wherein the set of sequential decisions comprises a decision to send a communication, a decision as to a mode of the communication, a decision as to a topic of the communication, and one or more decisions as to recipients of the communication.
5. The method of claim 1, wherein determining the relational event history based on the data set comprises identifying, for each relational event in a set of relational events included in the data set, a sender, a topic, a mode, and one or more recipients.
6. The method of claim 1, wherein generating the relational event history comprises:
extracting data from the data set;
transforming the extracted data;
loading the transformed data; and
enriching the loaded data.
7. The method of claim 1, further comprising determining one or more covariates based on the data set, wherein the probability model includes the one or more covariates.
8. The method of claim 7, wherein the one or more covariates include one or more global covariates, actor covariates, or dyadic covariates, wherein a global covariate has a single value for all actors or pairs of actors that are included in the set of actors, wherein an actor covariate has a different value for each actor that is included in the set of actors, and wherein a dyadic covariate has a different value for each pair of actors that is included in the set of actors.
9. The method of claim 1, wherein the baseline communications behavior for the relational event history is determined using a maximum-likelihood method.
10. The method of claim 1, wherein the baseline communications behavior for the relational event history is determined using a distributed computing platform.
11. A system comprising:
one or more processing devices; and
one or more non-transitory computer-readable media coupled to the one or more processing devices having instructions stored thereon which, when executed by the one or more processing devices, cause the one or more processing devices to perform operations comprising:
determining a relational event history based on a data set, the relational event history comprising a set of relational events that occurred in time among a set of actors;
populating data in a probability model based on the relational event history, wherein the probability model is formulated as a series of conditional probabilities that correspond to a set of sequential decisions by an actor for each relational event, the probability model including one or more statistical parameters and corresponding statistics that relate to one or more of senders of relational events, modes of relational events, topics of relational events, or recipients of relational events;
determining, by one or more processing devices, a baseline communications behavior for the relational event history based on the populated probability model, wherein the baseline comprises a first set of values for the one or more statistical parameters; and
determining departures from the baseline communications behavior within the relational event history.
12. The system of claim 11, wherein determining departures from the baseline communications behavior within the relational event history comprises determining a second set of values for the statistical parameters based on one or more subsets of the relational events included in the relational event history and comparing the second set of values for the statistical parameters to the first set of values.
13. The system of claim 12, wherein comparing the second set of values for the statistical parameters to the first set of values comprises determining a hypothesis regarding communications behavior within the relational event history; and testing the hypothesis using the second set of values.
14. The system of claim 11, wherein the set of sequential decisions comprises a decision to send a communication, a decision as to a mode of the communication, a decision as to a topic of the communication, and one or more decisions as to recipients of the communication.
15. The system of claim 11, wherein determining the relational event history based on the data set comprises identifying, for each relational event in a set of relational events included in the data set, a sender, a topic, a mode, and one or more recipients.
16. The system of claim 11, wherein generating the relational event history comprises:
extracting data from the data set;
transforming the extracted data;
loading the transformed data; and
enriching the loaded data.
17. The system of claim 11, further comprising determining one or more covariates based on the data set, wherein the probability model includes the one or more covariates.
18. The system of claim 16, wherein the one or more covariates include one or more global covariates, actor covariates, or dyadic covariates, wherein a global covariate has a single value for all actors or pairs of actors that are included in the set of actors, wherein an actor covariate has a different value for each actor that is included in the set of actors, and wherein a dyadic covariate has a different value for each pair of actors that is included in the set of actors.
19. The system of claim 11, wherein the baseline communications behavior for the relational event history is determined using a maximum-likelihood method.
20. The system of claim 11, wherein the baseline communications behavior for the relational event history is determined using a distributed computing platform.
21. A non-transitory computer-readable medium embodying one or more instructions thereon which, when executed, cause one or more computer processors to perform steps comprising:
determining a relational event history based on a data set, the relational event history comprising a set of relational events that occurred in time among a set of actors;
populating data in a probability model based on the relational event history, wherein the probability model is formulated as a series of conditional probabilities that correspond to a set of sequential decisions by an actor for each relational event, the probability model including one or more statistical parameters and corresponding statistics that relate to one or more of senders of relational events, modes of relational events, topics of relational events, or recipients of relational events;
determining, by one or more processing devices, a baseline communications behavior for the relational event history based on the populated probability model, wherein the baseline comprises a first set of values for the one or more statistical parameters; and
determining departures from the baseline communications behavior within the relational event history.
US14/148,164 2013-03-01 2014-01-06 Modeling social behavior Abandoned US20140249785A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US14/148,164 US20140249785A1 (en) 2013-03-01 2014-01-06 Modeling social behavior
GB1517306.5A GB2526501A (en) 2013-03-01 2014-03-03 Modeling social behavior
PCT/US2014/020043 WO2014134630A1 (en) 2013-03-01 2014-03-03 Modeling social behavior

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201361771625P 2013-03-01 2013-03-01
US201361771611P 2013-03-01 2013-03-01
US201361803876P 2013-03-21 2013-03-21
US14/148,164 US20140249785A1 (en) 2013-03-01 2014-01-06 Modeling social behavior

Publications (1)

Publication Number Publication Date
US20140249785A1 true US20140249785A1 (en) 2014-09-04

Family

ID=51421388

Family Applications (7)

Application Number Title Priority Date Filing Date
US14/148,262 Abandoned US20140250049A1 (en) 2013-03-01 2014-01-06 Visualizing social behavior
US14/148,164 Abandoned US20140249785A1 (en) 2013-03-01 2014-01-06 Modeling social behavior
US14/148,208 Abandoned US20140250052A1 (en) 2013-03-01 2014-01-06 Analyzing social behavior
US14/148,167 Abandoned US20140250048A1 (en) 2013-03-01 2014-01-06 Analyzing behavior in light of social context
US14/148,181 Abandoned US20140250033A1 (en) 2013-03-01 2014-01-06 Social behavior hypothesis testing
US14/148,346 Active 2034-04-02 US9542650B2 (en) 2013-03-01 2014-01-06 Analyzing behavior in light of social time
US15/399,147 Active 2036-05-10 US10776708B2 (en) 2013-03-01 2017-01-05 Analyzing behavior in light of social time

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US14/148,262 Abandoned US20140250049A1 (en) 2013-03-01 2014-01-06 Visualizing social behavior

Family Applications After (5)

Application Number Title Priority Date Filing Date
US14/148,208 Abandoned US20140250052A1 (en) 2013-03-01 2014-01-06 Analyzing social behavior
US14/148,167 Abandoned US20140250048A1 (en) 2013-03-01 2014-01-06 Analyzing behavior in light of social context
US14/148,181 Abandoned US20140250033A1 (en) 2013-03-01 2014-01-06 Social behavior hypothesis testing
US14/148,346 Active 2034-04-02 US9542650B2 (en) 2013-03-01 2014-01-06 Analyzing behavior in light of social time
US15/399,147 Active 2036-05-10 US10776708B2 (en) 2013-03-01 2017-01-05 Analyzing behavior in light of social time

Country Status (1)

Country Link
US (7) US20140250049A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190004926A1 (en) * 2017-06-29 2019-01-03 Nicira, Inc. Methods and systems that probabilistically generate testing loads
CN110716774A (en) * 2019-08-22 2020-01-21 华信永道(北京)科技股份有限公司 Data driving method, system and storage medium for brain of financial business data
US10891950B2 (en) 2018-09-27 2021-01-12 International Business Machines Corporation Graph based prediction for next action in conversation flow

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140250049A1 (en) * 2013-03-01 2014-09-04 RedOwl Analytics, Inc. Visualizing social behavior
GB2526501A (en) 2013-03-01 2015-11-25 Redowl Analytics Inc Modeling social behavior
US10425783B1 (en) * 2014-09-10 2019-09-24 West Corporation Providing data messaging support by intercepting and processing received short message service (SMS) messages at a customer support service
US11030584B2 (en) * 2015-07-17 2021-06-08 Adp, Llc System and method for managing events
US11157824B2 (en) 2015-10-21 2021-10-26 Pairity, Inc. Technologies for evaluating relationships between social networking profiles
US11468368B2 (en) * 2015-10-28 2022-10-11 Qomplx, Inc. Parametric modeling and simulation of complex systems using large datasets and heterogeneous data structures
CN107730289A (en) * 2016-08-11 2018-02-23 株式会社理光 A kind of user behavior analysis method and user behavior analysis device
US11888859B2 (en) 2017-05-15 2024-01-30 Forcepoint Llc Associating a security risk persona with a phase of a cyber kill chain
US10999296B2 (en) 2017-05-15 2021-05-04 Forcepoint, LLC Generating adaptive trust profiles using information derived from similarly situated organizations
US10318729B2 (en) 2017-07-26 2019-06-11 Forcepoint, LLC Privacy protection during insider threat monitoring
US10803178B2 (en) 2017-10-31 2020-10-13 Forcepoint Llc Genericized data model to perform a security analytics operation
US11314787B2 (en) 2018-04-18 2022-04-26 Forcepoint, LLC Temporal resolution of an entity
US11029809B2 (en) * 2018-05-10 2021-06-08 Citrix Systems, Inc. System for displaying electronic mail metadata and related methods
US10949428B2 (en) 2018-07-12 2021-03-16 Forcepoint, LLC Constructing event distributions via a streaming scoring operation
US11755584B2 (en) 2018-07-12 2023-09-12 Forcepoint Llc Constructing distributions of interrelated event features
US11436512B2 (en) 2018-07-12 2022-09-06 Forcepoint, LLC Generating extracted features from an event
US11810012B2 (en) 2018-07-12 2023-11-07 Forcepoint Llc Identifying event distributions using interrelated events
US11811799B2 (en) 2018-08-31 2023-11-07 Forcepoint Llc Identifying security risks using distributions of characteristic features extracted from a plurality of events
US11025659B2 (en) 2018-10-23 2021-06-01 Forcepoint, LLC Security system using pseudonyms to anonymously identify entities and corresponding security risk related behaviors
US11171980B2 (en) 2018-11-02 2021-11-09 Forcepoint Llc Contagion risk detection, analysis and protection
CN111294310B (en) * 2018-12-06 2022-04-29 上海西门子医疗器械有限公司 Method for automatically extracting workflow and method for detecting intrusion in distributed system
US20220377160A1 (en) * 2019-11-08 2022-11-24 Rambler Wheels, Llc Continuous time adjustment daylight saving time method and apparatus
US11489862B2 (en) 2020-01-22 2022-11-01 Forcepoint Llc Anticipating future behavior using kill chains
US11630901B2 (en) 2020-02-03 2023-04-18 Forcepoint Llc External trigger induced behavioral analyses
US11080109B1 (en) 2020-02-27 2021-08-03 Forcepoint Llc Dynamically reweighting distributions of event observations
US11836265B2 (en) 2020-03-02 2023-12-05 Forcepoint Llc Type-dependent event deduplication
US11429697B2 (en) 2020-03-02 2022-08-30 Forcepoint, LLC Eventually consistent entity resolution
US11080032B1 (en) 2020-03-31 2021-08-03 Forcepoint Llc Containerized infrastructure for deployment of microservices
US11568136B2 (en) 2020-04-15 2023-01-31 Forcepoint Llc Automatically constructing lexicons from unlabeled datasets
US11516206B2 (en) 2020-05-01 2022-11-29 Forcepoint Llc Cybersecurity system having digital certificate reputation system
US11544390B2 (en) 2020-05-05 2023-01-03 Forcepoint Llc Method, system, and apparatus for probabilistic identification of encrypted files
US11895158B2 (en) 2020-05-19 2024-02-06 Forcepoint Llc Cybersecurity system having security policy visualization
US11266912B2 (en) * 2020-05-30 2022-03-08 Sony Interactive Entertainment LLC Methods and systems for processing disruptive behavior within multi-player video game
US11704387B2 (en) 2020-08-28 2023-07-18 Forcepoint Llc Method and system for fuzzy matching and alias matching for streaming data sets
US11190589B1 (en) 2020-10-27 2021-11-30 Forcepoint, LLC System and method for efficient fingerprinting in cloud multitenant data loss prevention
US11556510B1 (en) * 2022-02-18 2023-01-17 Kpmg Llp System and method for enriching and normalizing data

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7933960B2 (en) * 2007-12-28 2011-04-26 International Business Machines Corporation System and method for solving ambiguous meanings of unknown words used in instant messaging
US9137318B2 (en) * 2008-01-16 2015-09-15 Avaya Inc. Method and apparatus for detecting events indicative of inappropriate activity in an online community
US9262722B1 (en) * 2012-11-27 2016-02-16 Isaac S. Daniel System and method of measuring a social networker's influence on social networking websites

Family Cites Families (153)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100211426B1 (en) 1994-10-27 1999-08-02 포만 제프리 엘 Method and apparatus for secure identification of a mobile user in a communication network
US20020112015A1 (en) 1999-03-02 2002-08-15 International Business Machines Corporation Selective security encryption of electronic communication for selected recipients
US7206765B2 (en) 2001-01-17 2007-04-17 Contentguard Holdings, Inc. System and method for supplying and managing usage rights based on rules
US20040044613A1 (en) 2002-05-15 2004-03-04 Kabushiki Kaisha Toshiba Price evaluation system and method for derivative security, and risk management system and method for power exchange
US8561175B2 (en) 2003-02-14 2013-10-15 Preventsys, Inc. System and method for automated policy audit and remediation management
CN1998013A (en) 2003-06-09 2007-07-11 格林莱恩系统公司 System and method for risk detection, reporting and infrastructure
US20050198099A1 (en) 2004-02-24 2005-09-08 Covelight Systems, Inc. Methods, systems and computer program products for monitoring protocol responses for a server application
US20050278178A1 (en) 2004-06-10 2005-12-15 International Business Machines Corporation System and method for intrusion decision-making in autonomic computing environments
US7694150B1 (en) 2004-06-22 2010-04-06 Cisco Technology, Inc System and methods for integration of behavioral and signature based security
US7761920B2 (en) 2004-09-03 2010-07-20 Fortinet, Inc. Data structure for policy-based remediation selection
US7549158B2 (en) 2004-08-31 2009-06-16 Microsoft Corporation Method and system for customizing a security policy
US7467293B2 (en) 2004-11-12 2008-12-16 Tsinghua University Method and computing system for transparence computing on the computer network
US20060112111A1 (en) 2004-11-22 2006-05-25 Nec Laboratories America, Inc. System and methods for data analysis and trend prediction
US7962960B2 (en) 2005-02-25 2011-06-14 Verizon Business Global Llc Systems and methods for performing risk analysis
US7877780B2 (en) 2005-04-01 2011-01-25 Parasoft Corporation System and method for enforcing functionality in computer software through policies
US8312064B1 (en) 2005-05-11 2012-11-13 Symantec Corporation Method and apparatus for securing documents using a position dependent file system
US7882262B2 (en) 2005-08-18 2011-02-01 Cisco Technology, Inc. Method and system for inline top N query computation
US8046833B2 (en) 2005-11-14 2011-10-25 Sourcefire, Inc. Intrusion event correlation with network discovery information
US7792049B2 (en) 2005-11-30 2010-09-07 Novell, Inc. Techniques for modeling and evaluating protocol interactions
CN100556042C (en) 2006-03-10 2009-10-28 腾讯科技(深圳)有限公司 A kind of accounts security management system and method based on instant messaging
US20070225995A1 (en) 2006-03-17 2007-09-27 Moore Barrett H Method and Security Modules for an Incident Deployment and Response System for Facilitating Access to Private Civil Security Resources
US8151327B2 (en) 2006-03-31 2012-04-03 The 41St Parameter, Inc. Systems and methods for detection of session tampering and fraud prevention
US8490163B1 (en) 2006-09-08 2013-07-16 Intapp, Inc. Enforcing security policies across heterogeneous systems
US8424061B2 (en) 2006-09-12 2013-04-16 International Business Machines Corporation Method, system and program product for authenticating a user seeking to perform an electronic service request
US8443443B2 (en) 2006-10-04 2013-05-14 Behaviometrics Ab Security system and method for detecting intrusion in a computerized system
US9015301B2 (en) 2007-01-05 2015-04-21 Digital Doors, Inc. Information infrastructure management tools with extractor, secure storage, content analysis and classification and method therefor
US20080168002A1 (en) 2007-01-05 2008-07-10 Kagarlis Marios A Price Indexing
US20080168453A1 (en) 2007-01-09 2008-07-10 Caterpillar Inc. Work prioritization system and method
US8792161B2 (en) 2007-02-21 2014-07-29 Globalfoundries Inc. Optical polarizer with nanotube array
US9063979B2 (en) 2007-11-01 2015-06-23 Ebay, Inc. Analyzing event streams of user sessions
WO2009115921A2 (en) 2008-02-22 2009-09-24 Ipath Technologies Private Limited Techniques for enterprise resource mobilization
US9489495B2 (en) 2008-02-25 2016-11-08 Georgetown University System and method for detecting, collecting, analyzing, and communicating event-related information
GB2458568B (en) 2008-03-27 2012-09-19 Covertix Ltd System and method for dynamically enforcing security policies on electronic files
CA2727831C (en) 2008-06-12 2019-02-05 Guardian Analytics, Inc. Modeling users for fraud detection and analysis
US20100057662A1 (en) 2008-07-31 2010-03-04 Techfinity, Inc. System for real-time probablistic resource management
US20100058016A1 (en) 2008-08-26 2010-03-04 Jari Nikara Method, apparatus and software product for multi-channel memory sandbox
US8826443B1 (en) 2008-09-18 2014-09-02 Symantec Corporation Selective removal of protected content from web requests sent to an interactive website
US8260823B2 (en) 2008-10-09 2012-09-04 International Business Machines Corporation Dissemination, acquisition, discovery and use of people-oriented folksonomies
US8327443B2 (en) 2008-10-29 2012-12-04 Lockheed Martin Corporation MDL compress system and method for signature inference and masquerade intrusion detection
US8516594B2 (en) 2009-04-24 2013-08-20 Jeff Bennett Enterprise information security management software for prediction modeling with interactive graphs
US20120137367A1 (en) 2009-11-06 2012-05-31 Cataphora, Inc. Continuous anomaly detection based on behavior modeling and heterogeneous information analysis
US10282702B2 (en) 2010-01-04 2019-05-07 Bank Of America Corporation Dynamic employee security risk scoring
KR101698076B1 (en) * 2010-03-29 2017-01-19 에릭 제임스 커비 Inception of live events
CA2738428A1 (en) 2010-04-30 2011-10-30 Iliv Technologies Inc. Collaboration tool
US9069954B2 (en) 2010-05-25 2015-06-30 Hewlett-Packard Development Company, L.P. Security threat detection associated with security events and an actor category model
US8812342B2 (en) 2010-06-15 2014-08-19 International Business Machines Corporation Managing and monitoring continuous improvement in detection of compliance violations
US20120046989A1 (en) 2010-08-17 2012-02-23 Bank Of America Corporation Systems and methods for determining risk outliers and performing associated risk reviews
US8418229B2 (en) 2010-08-17 2013-04-09 Bank Of America Corporation Systems and methods for performing access entitlement reviews
JP5731223B2 (en) 2011-02-14 2015-06-10 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation Abnormality detection device, monitoring control system, abnormality detection method, program, and recording medium
EP2684121A4 (en) 2011-03-09 2014-10-01 Hewlett Packard Development Co Performing a change process based on a policy
US8380838B2 (en) 2011-04-08 2013-02-19 International Business Machines Corporation Reduction of alerts in information technology systems
US9373267B2 (en) 2011-04-08 2016-06-21 Wombat Security Technologies, Inc. Method and system for controlling context-aware cybersecurity training
US8983887B2 (en) * 2011-04-11 2015-03-17 Xerox Corporation Probabilistic sampling using search trees constrained by heuristic bounds
RU2477929C2 (en) 2011-04-19 2013-03-20 Закрытое акционерное общество "Лаборатория Касперского" System and method for prevention safety incidents based on user danger rating
US9607336B1 (en) 2011-06-16 2017-03-28 Consumerinfo.Com, Inc. Providing credit inquiry alerts
US20130054433A1 (en) 2011-08-25 2013-02-28 T-Mobile Usa, Inc. Multi-Factor Identity Fingerprinting with User Behavior
US8839349B2 (en) 2011-10-18 2014-09-16 Mcafee, Inc. Integrating security policy and event management
US8892461B2 (en) 2011-10-21 2014-11-18 Alohar Mobile Inc. Mobile device user behavior analysis and authentication
US8973147B2 (en) 2011-12-29 2015-03-03 Mcafee, Inc. Geo-mapping system security events
US9043905B1 (en) 2012-01-23 2015-05-26 Hrl Laboratories, Llc System and method for insider threat detection
US9922333B2 (en) 2012-03-09 2018-03-20 Exponential Interactive, Inc. Automated multivariate behavioral prediction
US8990392B1 (en) 2012-04-11 2015-03-24 NCC Group Inc. Assessing a computing resource for compliance with a computing resource policy regime specification
US9342553B1 (en) 2012-05-13 2016-05-17 Google Inc. Identifying distinct combinations of values for entities based on information in an index
US9202047B2 (en) 2012-05-14 2015-12-01 Qualcomm Incorporated System, apparatus, and method for adaptive observation of mobile device behavior
WO2013171758A2 (en) 2012-05-18 2013-11-21 Tata Consultancy Services Limited System and method for creating structured event objects
US20130317808A1 (en) * 2012-05-24 2013-11-28 About, Inc. System for and method of analyzing and responding to user generated content
WO2013179273A1 (en) 2012-06-01 2013-12-05 Landauer, Inc. Wireless, motion and position-sensing, integrating radiation sensor for occupational and environmental dosimetry
US9461876B2 (en) 2012-08-29 2016-10-04 Loci System and method for fuzzy concept mapping, voting ontology crowd sourcing, and technology prediction
US8935769B2 (en) 2012-09-28 2015-01-13 Liveensure, Inc. Method for mobile security via multi-factor context authentication
US10417653B2 (en) 2013-01-04 2019-09-17 PlaceIQ, Inc. Inferring consumer affinities based on shopping behaviors with unsupervised machine learning models
US9742559B2 (en) 2013-01-22 2017-08-22 Qualcomm Incorporated Inter-module authentication for securing application execution integrity within a computing device
US9246941B1 (en) 2013-02-27 2016-01-26 Symantec Corporation Systems and methods for predicting the impact of security-policy changes on users
US20140250049A1 (en) * 2013-03-01 2014-09-04 RedOwl Analytics, Inc. Visualizing social behavior
US9060020B2 (en) 2013-04-01 2015-06-16 Arbor Networks, Inc. Adjusting DDoS protection based on traffic type
US9607146B2 (en) 2013-09-18 2017-03-28 Qualcomm Incorporated Data flow based behavioral analysis on mobile devices
KR101436874B1 (en) 2013-10-18 2014-09-11 한국전자통신연구원 Apparatus and method for improving detection performance of intrusion detection system
US9544361B2 (en) 2013-12-02 2017-01-10 Qbase, LLC Event detection through text analysis using dynamic self evolving/learning module
WO2015084726A1 (en) 2013-12-02 2015-06-11 Qbase, LLC Event detection through text analysis template models
US9652362B2 (en) 2013-12-06 2017-05-16 Qualcomm Incorporated Methods and systems of using application-specific and application-type-specific models for the efficient classification of mobile device behaviors
US9830450B2 (en) 2013-12-23 2017-11-28 Interset Software, Inc. Method and system for analyzing risk
US9721316B2 (en) 2014-01-10 2017-08-01 Bank Of America Corporation Change convergence risk mapping
US9177138B2 (en) 2014-01-10 2015-11-03 Bank Of America Corporation Change convergence risk planning and avoidance
US9563771B2 (en) 2014-01-22 2017-02-07 Object Security LTD Automated and adaptive model-driven security system and method for operating the same
US20150220625A1 (en) 2014-02-03 2015-08-06 Interdigital Patent Holdings, Inc. Methods and apparatus for conveying surveillance targets using bloom filters
US10506053B2 (en) 2014-03-07 2019-12-10 Comcast Cable Communications, Llc Location aware security system
US10284601B1 (en) 2014-03-31 2019-05-07 EMC IP Holding Company LLC Managing deviations between expected and normal operations of authentication systems
US9306964B2 (en) 2014-04-04 2016-04-05 Netscout Systems, Inc. Using trust profiles for network breach detection
US9286453B2 (en) 2014-05-06 2016-03-15 International Business Machines Corporation Dynamic adjustment of authentication policy
US9529987B2 (en) 2014-05-09 2016-12-27 Behaviometrics Ab Behavioral authentication system using a behavior server for authentication of multiple users based on their behavior
US9485266B2 (en) 2014-06-02 2016-11-01 Bastille Network, Inc. Security measures based on signal strengths of radio frequency signals
US10237298B1 (en) 2014-06-17 2019-03-19 Wells Fargo Bank, N.A. Session management
WO2015199719A1 (en) 2014-06-27 2015-12-30 Hewlett Packard Enterprise Development L.P. Security policy based on risk
JPWO2016006520A1 (en) 2014-07-07 2017-04-27 日本電信電話株式会社 Detection device, detection method, and detection program
US10230747B2 (en) 2014-07-15 2019-03-12 Cisco Technology, Inc. Explaining network anomalies using decision trees
US9787723B2 (en) 2014-07-18 2017-10-10 Ping Identify Corporation Devices and methods for threat-based authentication for access to computing resources
US9166999B1 (en) 2014-07-25 2015-10-20 Fmr Llc Security risk aggregation, analysis, and adaptive control
GB2529670A (en) 2014-08-28 2016-03-02 Ibm Storage system
US20160078362A1 (en) 2014-09-15 2016-03-17 Qualcomm Incorporated Methods and Systems of Dynamically Determining Feature Sets for the Efficient Classification of Mobile Device Behaviors
EP3195561A1 (en) 2014-09-19 2017-07-26 InterDigital Technology Corporation Dynamic user behavior rhythm profiling for privacy preserving personalized service
US9747551B2 (en) 2014-09-29 2017-08-29 Pivotal Software, Inc. Determining and localizing anomalous network behavior
US9798883B1 (en) 2014-10-06 2017-10-24 Exabeam, Inc. System, method, and computer program product for detecting and assessing security risks in a network
US11200130B2 (en) 2015-09-18 2021-12-14 Splunk Inc. Automatic entity control in a machine data driven service monitoring system
US9584374B2 (en) 2014-10-09 2017-02-28 Splunk Inc. Monitoring overall service-level performance using an aggregate key performance indicator derived from machine data
US10096065B2 (en) 2015-01-16 2018-10-09 Red Hat, Inc. Distributed transactions with extended locks
US9659166B2 (en) 2015-01-30 2017-05-23 International Business Machines Corporation Risk-based credential management
US20160232353A1 (en) 2015-02-09 2016-08-11 Qualcomm Incorporated Determining Model Protection Level On-Device based on Malware Detection in Similar Devices
US10412106B2 (en) 2015-03-02 2019-09-10 Verizon Patent And Licensing Inc. Network threat detection and management system based on user behavior information
US10063585B2 (en) 2015-03-18 2018-08-28 Qualcomm Incorporated Methods and systems for automated anonymous crowdsourcing of characterized device behaviors
US20160277360A1 (en) 2015-03-20 2016-09-22 Migrate2, LLC Dynamic Data Exfiltration Prevention Process (DDEPP)
US10133980B2 (en) 2015-03-27 2018-11-20 Equifax Inc. Optimizing neural networks for risk assessment
EP3275202B1 (en) 2015-03-27 2021-12-29 Twitter, Inc. Live video streaming services
US9536072B2 (en) 2015-04-09 2017-01-03 Qualcomm Incorporated Machine-learning behavioral analysis to detect device theft and unauthorized device usage
US10225268B2 (en) 2015-04-20 2019-03-05 Capital One Services, Llc Systems and methods for automated retrieval, processing, and distribution of cyber-threat information
US10320813B1 (en) 2015-04-30 2019-06-11 Amazon Technologies, Inc. Threat detection and mitigation in a virtualized computing environment
AU2016297439B2 (en) 2015-05-04 2021-07-22 Syed Kamran HASAN Method and device for managing security in a computer network
US10482759B2 (en) 2015-05-13 2019-11-19 Tyco Safety Products Canada Ltd. Identified presence detection in and around premises
AU2016204072B2 (en) 2015-06-17 2017-08-03 Accenture Global Services Limited Event anomaly analysis and prediction
US10419428B2 (en) 2015-07-05 2019-09-17 NXT-ID, Inc. System and method to authenticate electronics using electronic-metrics
US10275671B1 (en) 2015-07-14 2019-04-30 Wells Fargo Bank, N.A. Validating identity and/or location from video and/or audio
US10430721B2 (en) 2015-07-27 2019-10-01 Pivotal Software, Inc. Classifying user behavior as anomalous
US10387880B2 (en) 2015-08-18 2019-08-20 International Business Machines Corporation Location history and travel path knowledge based authentication
US9699205B2 (en) 2015-08-31 2017-07-04 Splunk Inc. Network security system
EP3345349A4 (en) 2015-09-05 2019-08-14 Nudata Security Inc. Systems and methods for detecting and scoring anomalies
US9876825B2 (en) 2016-02-04 2018-01-23 Amadeus S.A.S. Monitoring user authenticity
US11558407B2 (en) 2016-02-05 2023-01-17 Defensestorm, Inc. Enterprise policy tracking with security incident integration
US11080706B2 (en) 2016-03-07 2021-08-03 International Business Machines Corporation Blocking fraudulent transactions in an NFC device
US10599837B2 (en) 2016-03-31 2020-03-24 International Business Machines Corporation Detecting malicious user activity
US9888007B2 (en) 2016-05-13 2018-02-06 Idm Global, Inc. Systems and methods to authenticate users and/or control access made by users on a computer network using identity services
US10341391B1 (en) 2016-05-16 2019-07-02 EMC IP Holding Company LLC Network session based user behavior pattern analysis and associated anomaly detection and verification
US20170339160A1 (en) 2016-05-17 2017-11-23 International Business Machines Corporation Threat-aware provisioning and governance
US10372910B2 (en) 2016-06-20 2019-08-06 Jask Labs Inc. Method for predicting and characterizing cyber attacks
US10452840B2 (en) 2016-07-14 2019-10-22 Qualcomm Incorporated Devices and methods for classifying an execution session
US20180082307A1 (en) 2016-09-19 2018-03-22 Experian Health, Inc. Selection of pre-arranged assistance from an electronic qualification transaction
US10104088B2 (en) 2016-09-28 2018-10-16 International Business Machines Corporation Traitor tracing for obfuscated credentials
US10187369B2 (en) 2016-09-30 2019-01-22 Idm Global, Inc. Systems and methods to authenticate users and/or control access made by users on a computer network based on scanning elements for inspection according to changes made in a relation graph
US10275828B2 (en) 2016-11-02 2019-04-30 Experian Health, Inc Expanded data processing for improved entity matching
US9756061B1 (en) 2016-11-18 2017-09-05 Extrahop Networks, Inc. Detecting attacks using passive network monitoring
US10432669B1 (en) 2016-11-28 2019-10-01 Palo Alto Networks, Inc. Security appliance to monitor networked computing environment
US10635648B2 (en) 2016-11-30 2020-04-28 Nutanix, Inc. Entity identifier generation in distributed computing systems
US10397359B2 (en) 2016-12-30 2019-08-27 Google Llc Streaming media cache for media streaming service
EP3343422B1 (en) 2016-12-30 2021-04-28 Capital One Services, LLC Systems and methods for detecting resources responsible for events
US10601800B2 (en) 2017-02-24 2020-03-24 Fmr Llc Systems and methods for user authentication using pattern-based risk assessment and adjustment
US10817966B2 (en) 2017-03-30 2020-10-27 Experian Health, Inc. Expanded data processing for entity matching
US10721239B2 (en) 2017-03-31 2020-07-21 Oracle International Corporation Mechanisms for anomaly detection and access management
US10389739B2 (en) 2017-04-07 2019-08-20 Amdocs Development Limited System, method, and computer program for detecting regular and irregular events associated with various entities
US10878102B2 (en) 2017-05-16 2020-12-29 Micro Focus Llc Risk scores for entities
US20180341889A1 (en) 2017-05-25 2018-11-29 Centene Corporation Entity level classifier using machine learning
KR102369228B1 (en) 2017-05-25 2022-02-28 삼성에스디에스 주식회사 Risk analysis apparatus and method for risk based authentication
US10410086B2 (en) 2017-05-30 2019-09-10 Google Llc Systems and methods of person recognition in video streams
CN108377240B (en) 2018-02-07 2020-05-15 平安科技(深圳)有限公司 Abnormal interface detection method and device, computer equipment and storage medium
GB2572541A (en) 2018-03-27 2019-10-09 Innoplexus Ag System and method for identifying at least one association of entity
US10417454B1 (en) 2018-06-05 2019-09-17 Cyberark Software Ltd. Automated secure operating system policy integration
US11205168B2 (en) 2018-06-26 2021-12-21 International Business Machines Corporation Frictionless microlocation detection and authorization

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7933960B2 (en) * 2007-12-28 2011-04-26 International Business Machines Corporation System and method for solving ambiguous meanings of unknown words used in instant messaging
US9137318B2 (en) * 2008-01-16 2015-09-15 Avaya Inc. Method and apparatus for detecting events indicative of inappropriate activity in an online community
US9262722B1 (en) * 2012-11-27 2016-02-16 Isaac S. Daniel System and method of measuring a social networker's influence on social networking websites

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190004926A1 (en) * 2017-06-29 2019-01-03 Nicira, Inc. Methods and systems that probabilistically generate testing loads
US10891950B2 (en) 2018-09-27 2021-01-12 International Business Machines Corporation Graph based prediction for next action in conversation flow
US11600276B2 (en) 2018-09-27 2023-03-07 International Business Machines Corporation Graph based prediction for next action in conversation flow
CN110716774A (en) * 2019-08-22 2020-01-21 华信永道(北京)科技股份有限公司 Data driving method, system and storage medium for brain of financial business data

Also Published As

Publication number Publication date
US20140250050A1 (en) 2014-09-04
US10776708B2 (en) 2020-09-15
US20140250052A1 (en) 2014-09-04
US20140250033A1 (en) 2014-09-04
US20140250048A1 (en) 2014-09-04
US9542650B2 (en) 2017-01-10
US20170116541A1 (en) 2017-04-27
US20140250049A1 (en) 2014-09-04

Similar Documents

Publication Publication Date Title
US10776708B2 (en) Analyzing behavior in light of social time
US11783216B2 (en) Analyzing behavior in light of social time
US10614077B2 (en) Computer system for automated assessment at scale of topic-specific social media impact
US10805386B2 (en) Reducing transmissions by suggesting digital content for display in a group-based communication interface
US10872166B2 (en) Systems and methods for secure prediction using an encrypted query executed based on encrypted data
US9047558B2 (en) Probabilistic event networks based on distributed time-stamped data
EP2885755B1 (en) Agent system, agent control method and agent control program with ability of natural conversation with users
US10042944B2 (en) Suggested keywords
US10754860B2 (en) Apparatus and method for ranking content categories
Crespo et al. Predicting teamwork results from social network analysis
US20240054013A1 (en) Systems and methods for maintaining data objects to manage asynchronous workflows
US11921568B2 (en) Methods and systems for determining stopping point
Keenan et al. Introduction to analytics
Wan et al. Evolutionary Prediction of Information Propagation Dynamics Based on Time Series Characteristics
Stewart et al. Why is it difficult to detect sudden and unexpected epidemic outbreaks in Twitter?
US11699132B1 (en) Methods and systems for facilitating family-based review
Gambo et al. An investigative process model for predicting information difusion on social media: Information system perspective
Navaroli et al. Modeling individual email patterns over time with latent variable models
US20230419084A1 (en) Notification management and channel selection
Cangussu et al. On the selection of software defect estimation techniques
Kalia Understanding Human Communication to Estimate Trust, Hierarchy, and Performance.
CN116432767A (en) Information processing method, electronic device, and readable storage medium
Ruiz-Irigoyen Effective and Efficient Analysis on Internet-based Social Networks
Sutton Evaluating Synthetic Notification Trained Reinforcement Learning for Mobile Notification Management Systems

Legal Events

Date Code Title Description
AS Assignment

Owner name: REDOWL ANALYTICS, INC., MARYLAND

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:LOSPINOSO, JOSH;FILIPPELLI, GUY LOUIS;REEL/FRAME:031904/0045

Effective date: 20140105

STCB Information on status: application discontinuation

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