8.3 Social Network Analytics
8.3.3 Mining Algorithm
In order to make predictions from a (quasi-)social network, a mining algorithm automatically runs to process the massive amount of big (social) data. This section illustrates step by step how an algorithm typically works by means of a case study
564564 5884212 8413216 548941 5343213
45312 45453
12385
87452 5413545
Browsers UGC pages Quasi-social network
8413216 564564
5884212
548941 5343213
Fig. 8.13 An example of a quasi-social network, made anonymous
(Minnaert2012). Hence, although an algorithm normally runs automatically, the different steps are subsequently discussed to explain the process. The case study is as follows.
Assume a situation in which an online ad tries to convince people to act (let’s say to buy a product).
You have data from different groups of people that constitute a network, namely:
• People who took action after seeing the ad (i.e., the buyers)
• People who saw the ad without taking action (i.e., the nonbuyers)
• People who have not yet seen the ad
Try to predict which persons in the third group are more likely to take action after seeing the ad (i.e., to become buyers) in order to improve targeted advertising.
PS We remind the reader that a similar case study can be conducted for other applications, such as credit scoring, fraud detection, spam detection, predictions regarding stock prices or health issues, etc.
Figure8.14shows the start situation of the case study. Suppose that there are:
• Two buyers (i.e., represented bya1 anda5)
• Two nonbuyers (i.e., represented bya3 anda4)
• Four unknown nodes (i.e., represented bya2,a6,a7, anda8)
a5=1
?
? ?
?
a4=0
a3=0 a2 a1=1
a6
a7 a8
w2=1 w1=1
w3=1
w5=1 w4=1 w6=1 w7=1
w8=1 w10=1
w9=1
Fig. 8.14 Case study of a mining algorithm (start situation)
Each of these nodes has a unique ID number, namely determined by clockwise numbering in Fig.8.14. Each known node also indicates a certain action, namely:
• 1 for action (i.e., buying the product after viewing the ad, e.g.,a1¼1)
• 0 for nonaction (i.e., not buying the product after viewing the ad, e.g.,a3¼0) Furthermore, the links between the nodes have a strength or a weight (w). In order to facilitate the example, all connections have an equal strength or a weight of 1 (w¼1).
The final aim is to infer a probability distribution for the unknown nodes (i.e., indicated with a question mark) in order to identify which of the unknown nodes are more likely to act. Or in other words, which ones are potential buyers and which ones are rather not? For this purpose, we need to derive a score for the actions of the unknown nodes, as was already done for the buyers with a score of 1 and for the nonbuyers with a score of 0. Consequently, the probability to be derived will range between 0 and 1, with scores closer to 1 referring to a higher probability of buying a certain product after seeing a particular ad. In fact, probability values always range between 0 and 1.
Figure8.15shows the basic prediction, which is the average probability derived from all known “seed” nodes:
• (# buyers)/# seeds¼2/4¼1/2¼0.5
• 0<probability<1
Seeds are the technical term for referring to the known nodes. In this example, there are two buyers and two nonbuyers, which makes four seeds. As half of the seeds bought the product, the basic prediction results in temporary probabilities of 0.5 (i.e., the number of buyers—which is 2—divided by the number of seeds, which
a5=1
?
? ?
?
a4=0
a3=0 a2 a1=1
a6
a7 a8
w2=1 w1=1
w3=1
w5=1 w4=1 w6=1 w7=1
w8=1 w10=1
w9=1 0.5
0.5 0.5
0.5
Fig. 8.15 Case study of a mining algorithm (basic prediction)
is 4). These temporary probabilities will be refined throughout different iterations and will be reused as direct input for the next iteration by means of a rectangle (as shown in Fig. 8.15). The rectangles have two parts, with the upper part indicating the likelihood of buying and the lower part indicating the likelihood of nonbuying for a specific node. Hence, after the basic prediction, the likelihood for all unknown nodes is still 50–50, and the upper part and lower part of the rectangles have equal sizes.
In a first iteration, the basic probabilities are refined by calculating the average probability over all direct neighbors of a particular unknown node.
sum of neighbors*their weightsð Þ
½ %=ðsum of their weightsÞ
As all weights in this example are equal to 1, the calculation is just the sum of the direct neighbors, divided by the sum of their weights. The new probabilities are shown in Fig.8.16. For instance, nodea2 has three direct neighbors, namely, one buyer (i.e.,a1) and two nonbuyers (i.e.,a3 anda4). Hence, the sum of the direct neighbors is 1, divided by 3 (or 1 out of 3 was a buyer). This calculation results in a probability of 0.33 for nodea2. The same reasoning applies to calculate the new probabilities for the other unknown nodes, witha6 having 2 direct neighbors,a7 with 4 direct neighbors, and a8 with two direct neighbors. Remember from Fig.8.15that the basic probabilities for all unknown nodes is 0.5, which should be taken into account when calculating the new probabilities fora6,a7, anda8.
In a second iteration, the rectangles and probabilities are adapted to the results of the previous iteration. Figure8.17shows that the starting value fora7 is again 0.5, whereas the starting value for the other unknown nodes has changed (i.e., to 0.33 for a2 and 0.75 fora6 anda8). The same calculation can be redone as in the previous iteration (i.e., the sum of the direct neighbors divided by the sum of the weights), but taking into account the predictions from iteration 1. Figure8.17specifies that the new probabilities in iteration 2 do not change fora2,a6, anda8, because the direct neighbors did not change in value throughout iteration 1. Only a new prediction is needed fora7, resulting in a probability of 0.625.
a5=1
?
? ?
?
a4=0
a3=0 a2 a1=1
a6
a7 a8
w2=1 w1=1
w3=1
w5=1 w4=1 w6=1 w7=1
w8=1 w10=1
w9=1 0.5
0.5 0.5
0.5
New prediction (<> basic):
(a1*w2 + a4*w4 + a3*w3) / (w2 + w4 + w3)
= (1*1 + 0*1 + 0*1) / (1+1+1)
= (1+0+0) / 3
= 0.3333 New prediction
= (1+0.5) / 2 = 0.75 New prediction
= (1+0.5) / 2
= 0.75
New prediction
= (1+0.5+0.5+0) / 4
= 0.5
Fig. 8.16 Case study of a mining algorithm (iteration 1)
We continue iterating until the probabilities remain stable. After a certain number of iterations (let’s say x iterations), the probabilities of the unknown nodes will not change anymore and the case has reached an end state (Fig.8.18).
In real life, the calculations happen automatically by means of an algorithm, but this manual example illustrates how organizations can handle network data to gain knowledge. The final probabilities for the unknown nodes represent a value or a score between 0 and 1 (i.e., similar to a percentage). Be aware that a probability of 0.33 should not be read as “a chance of 1 out of 3 to buy a product” but rather as a percentage. The goal is to compare the probabilities in order to decide which persons in the third group are potential buyers and are worth targeting in the organization’s marketing campaign.
For instance, advertisers can take 10 % as a bottom line (i.e., as an under limit), which represents the percentage of nonaction. In other words, they will then target those unknown nodes with a probability between 0.9 and 1. As Fig.8.18does not show an unknown node with a value of 0.9 or higher, none of the unknown nodes in our example will be targeted if the bottom line is set at 10 %. On the other hand, when the bottom line is 50 % or 0.5, for example, all unknown nodes except fora2 (which has a probability of 0.33) will be targeted for the ad.
a5=1
?
? ?
?
a4=0
a3=0 a2 a1=1
a6
a7 a8
w2=1 w1=1
w3=1
w5=1 w4=1 w6=1 w7=1
w8=1 w10=1
w9=1 0.75
0.5 0.75
0.3333 New prediction (<> iteration 1):
= idem New prediction
= idem New prediction
= idem
New prediction
= (1+0.75+0.75+0) / 4
= 2.5 / 4
= 0.625
Fig. 8.17 Case study of a mining algorithm (iteration 2)
?
? ?
? a2=1/3=0.3333 a6=5/6=0.8333
a7=2/3=0.6667
a8=5/6=0.8333
Fig. 8.18 Case study of a mining algorithm (iteration x—end situation)
One of the reasons why the previous example is relevant to organizations is because online ads are expensive (see Chap.4). Therefore, organizations might profit from only showing their ad to those people who seem more responsive to the message of the ad. As explained in Chap.4, when people (Internet users) navigate to a website, their browser cookies become available to that website. If that website also sells space for ads to a central ad network (e.g., DoubleClick Ad Exchange), a real-time bidding process starts in which organizations with ads that correspond to a user’s interest will bid higher. With the business intelligence techniques for predic- tive mining, an organization can predict which ad must be shown to which user.
For the purpose of predictive mining, an organization can create and combine different databases, for instance, (1) a database of Internet users who clicked on the organization’s ad to collect information about his/her browser, IP address, and cookies (e.g., to uncover his/her interests based on previous clicks, visits of other websites, etc.) and (2) a customer database with information about the buyers of the product or service in the ad (e.g., whether or not they have seen the ad before the purchase). Two browsers can, for instance, be assumed to be connected as neighbors (or quasi-friends) if they have visited the same websites or websites with similar content.
The study of Provost et al. (2009) about online brand advertising shows that organizations best target those people who are part of the 10 % best ranked nodes (thus with a probability of 0.90) in order to have good profit from an ad. In particular, the authors noticed a lift in brand actor density (i.e., real buyers) for a bottom line of 10 %.