• 沒有找到結果。

Social Search Module

CHAPTER 3 THE SYSTYEM FRAMEWORK

3.1 Social Search Module

The social search module measures the job relevance of each user in the social network as the job influence to help the job seeker. Due to the nature of social network, the system will go through the job checking process recursively.

Figure 4. Architecture of Social Referral Mechanism

17

3.1.1 Job Preference Analysis and Offer Mining

The purpose of this analysis is to search all possible job offerings in the desired industries, companies or functions that users may be interested in. Before actually going to the search phase, first we have to carefully describe our query condition. In this research, we refer the common job description shown on the job website and use four properties to describe the job shown as Figure 5. They are industry categories, company name, function name and job grade, and each of those variables all belong to their individual set. The job could be denoted as:

• 𝐽𝑜𝑏 = {𝐼𝛼, 𝐶𝛽,𝐹𝛾, 𝐺𝛿}, 𝑤ℎ𝑒𝑟𝑒 𝐼𝛼𝜖𝐼, 𝐶𝛽𝜖𝐶, 𝐹𝛾𝜖𝐹, 𝐺𝛿𝜖𝐺 (1) : the set of industry category, : the set of company category,

I C

: the set of function category, : the set of distinct job grade

F G

For example, we will describe the job shown in Figure 1 in chapter 1 as this set:

1 3 5 3

{ , , , }, JobI C F G

I1= Information Technology, C =TSMC, 3 F5= Information Technology, G3= Employee.

The stage is conducted by the following two processes:

Job Preference Analysis. The system will ask users to choose their desired job by the Figure 5. Job Description

Job

Industry Company Function Job Grade

18

input of the four variables. We will design the options of those variables by the reference of job websites.

Opening Mining. After understanding the job seeker’s preference, the search will be

executed through all the online web sites as the database to mine the available job offerings by the tools of web crawlers. The system will store the list of job openings in the job set for users. For example, the job offerings which are suitable for job seeker u are:

𝑂𝑝𝑒𝑛𝑖𝑛𝑔𝑠(𝑢) = {𝐽𝑜𝑏𝑢1, 𝐽𝑜𝑏𝑢2, … , 𝐽𝑜𝑏𝑢𝑛} (2) 3.1.2 Job Influence Evaluation

In this process, our goal is to search and construct the candidate network expanded from the job seeker, or called initiator in our model. We calculate the job influence score by comparing the four indexes describing the job offering and the information of working experiences about each user in the social network. In other word, the job influence is measured as the similarity. We consider one suitable job offer at a time, denote as theJu. The similarity between the job offer J and the job to search u J can be estimated as: v

19

The values ofSimIndustry(J Ja, b) ,SimCompany(J Ja, b) , and SimFunction(J Ja, b)present the similarity between Job a and Job b respectively. The function Industry J( u),Company J( u),

( u)

Function J will return the property of the Ju respectively. If the person works in exactly the same industry, the same company or the same function that is the same as the job user u is searching for, we mark 1. Otherwise is zero. Since we only consider how the user v influence the job offer, we only user the job grade of user v.

The job influence between job of user v andJu:

𝐽𝐼(𝐽𝑢,𝐽𝑣) = 𝛼 ∗ 𝑆𝑖𝑚𝐼𝑛𝑑𝑢𝑠𝑡𝑟𝑦(𝐽𝑢,𝐽𝑣) + 𝛽 ∗ 𝑆𝑖𝑚𝐶𝑜𝑚𝑝𝑎𝑛𝑦(𝐽𝑢,𝐽𝑣) + 𝛾 ∗ 𝑆𝑖𝑚𝐹𝑢𝑛𝑐𝑡𝑖𝑜𝑛(𝐽𝑢,𝐽𝑣) + 𝛾 ∗

𝑆𝑐𝑜𝑟𝑒𝐽𝑜𝑏𝐺𝑟𝑎𝑑𝑒(𝐽𝑣), where       1 3.1.3 Job Discovery

After measuring the job influence of each user in the social network, then the network of referral candidates will be expanded continuously from the job seeker. Specially, we denote as the social network which is constructed by nodes expanding for l layers,Θ𝑆𝑁 as the set of users of social network and the function Friends to express the friend set of certain user.

Following by this definition,

SN (0)=u, the job seeker, and Θ𝑆𝑁(0) = 𝑢 . 𝛩𝑆𝑁(1) =

The network expanding process in this stage can be described as:

(8)

where Θ𝑅(0) = 𝜙 and R is the threshold of job influence level. In this research, we construct the network of referral candidate network after expanding three layers (l=3). To record the link from job seeker u to certain candidate v in the ECN, we will use the set

20

( , )

SocialPaths u v to record all the social paths from user u to user v:

1 2

The objective in this stage is to evaluate and rank the best candidate as the reference of desired job. The model consists of two major components: willingness analysis and influence analysis. The former emphasizes how personal relationships affect the mission of reference;

the latter stresses the relevance between the searching goal and the current resources, whether in personal side or the job side, which we have already computed before. We will discuss further about the details of each component in the following chapters and talk about the formula to measure each candidate in the end of 3.2.

3.2.1 Referral Willingness Analysis

We take a single link as the unit of referral willingness calculation. Among single link, there are two components of referral willingness score: social tie strength and the similarity of experience. We will mention how to accumulate the total willingness in the end of section.

3.2.1.1 Social Tie Strength Evaluation

In this study, the factors we considered about social tie strength includes, mutual friends, interaction duration (day since the last communication), and status comment (the frequency of like or comment in the status wall). The three factors represent three different dimension concerning the willingness respectively, the structure, the intimacy, and the intensity. We will

21

discuss the details of each calculation in the following description.

From the structure view, the more mutual friends we have, the more possible there would be a certain social link between us and then we are more likely to help each other.

From the intimacy view, since in this case we focus on the help of taking real referral action, private messages exchanging will be a perfect index to reflect the actual interaction of intimacy. Last, as for the intensity, we use the comment and like rate of status update to consider how friends interact with each other.

Mutual Friends: The number of mutual friends between two people intuitively indicates

how close these people are in the view of social circle. Deduction from the concept of social tie triangle, the stronger tie exists between two people, the more possible they would be friends and get quite familiar with each other. Here we use the function MF(u,v) to record of

the number of mutual friends of user u and user v in order to compare the closeness between these two people.

Interaction duration: According to the previous research, the social tie strength differs a lot

for the people talked once and for those who never talk [48]. By this finding, we record the day since first communication and last communication of every pair as the index of duration.

The function FirstDa u vy( , )is defined as the function which returns the time intervals from

( ) ( )

( , ) ,

( ) ( )

Friends u Friends v

u v u

MF Friends Friends v

 

MF u( , )v 0 (11)

22

the first conversation to now. The functionLastDay u v means from the last conversation to ( , ) now. If the conversation just happened today, the value will be zero. If the conversation never happens, both the function will return the infinite value.

 

Status comment: There is another crucial element to affect the decision that whether we

would like to assist other or not. That is how we feel about others, the emotional aspect. If we have good feelings about the other person, we are liable to give him or her hand. In

case of affection n dimension, we accumulated the number of like or comment a

user v have made on the status of person u during the two months to figure out how user v thinks about person u compared with his or her other friends. We useFriendlikeand

Friendcomment function to summarize how many times the user v has clicked like on the post

of user u and how many times user v has left comment on the post of user u.

( ) works the same on PostComment function. If user v left comment on post p, then

PostComment(v, p)=1, otherwise

23

as below after calculating the score above:

𝐿𝑖𝑘𝑒𝑔𝑖𝑣𝑒𝑛(𝑢, 𝑣) = 𝐹𝑟𝑖𝑒𝑛𝑑𝑙𝑖𝑘𝑒(𝑢,𝑣)−𝑓∈𝐹𝑟𝑖𝑒𝑛𝑑𝑠(𝑢)𝑀𝑖𝑛 𝐹𝑟𝑖𝑒𝑛𝑑𝑙𝑖𝑘𝑒(𝑢,𝑓) between zero to one, in order to decrease the error we apply the min-max normalization to normalize those value in as shown in the equation (18), where value is the original value,

'

value is the new value after normalization, min is the minimum value of the population and the max is the maximum value of the population. The social tie strength of user u and v is computed as:

𝑆𝑇(𝑢, 𝑣) = 𝛼 ∗ 𝑀𝐹(𝑢, 𝑣) + 𝛽 ∗ 𝐷𝑢𝑟𝑎𝑡𝑖𝑜𝑛(𝑢, 𝑣) + 𝛾 ∗ 𝑆𝑡𝑎𝑡𝑢𝑠(𝑢, 𝑣), 𝑤ℎ𝑒𝑟𝑒 𝛼 + 𝛽 + 𝛾 = 1

3.2.1.2 Experience Similarity Evaluation

Apart from the social tie strength, there is another similarity exerting in the real situation.

If the social tie means the private, personal and subjective side of willingness, the similarity experience points the objective side. It is very common to see the job reference from the help of alumni although the senior managers may not directly interact with the younger student. In experience evaluation, two elements are considered: Living location and Education

(19)

24

background. The experience of user u and user v is computed as:

𝐸𝑆(𝑢, 𝑣) = 𝛼 ∗ 𝑆𝑖𝑚𝐸𝑑𝑢𝑐𝑎𝑡𝑖𝑜𝑛(𝑢, 𝑣) + (1 − 𝛼) ∗ 𝑆𝑖𝑚𝐿𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑢, 𝑣) (20) The elements included in the evaluation are detailed as follows.

Living location: by observation and actual cases in the real world, it is possible for people to

take care of those who come from the same living areas in most referral cases. So in this case, we take this factor into consideration.

1, if ( )= ( )

Education background: In the real world, it is common to find that the seniors who are

graduated are willing to share their own working experiences and even want to recruit some talented juniors to join their companies. Proved by this fact, we are going to exam if the same education background influences the effective of willing of referring. For the job reference case, the collage, the graduated school and the major are the three information sources about education experience we consider.

SimU(u,v)= 1, if University(u)=University(v)

0, otherwise

SimG(u,v)= 1, if Graduate(u)=Graduate(v)

0, otherwise

Summing up all the three factors, the similarity of experience will be computed as :

25

( , ) * ( , ) * ( , ) * ( , )

Education U G M

Sim u v  Sim u v  Sim u v  Sim u v (25) where     1.

After going through all the process of social tie strength evaluation and experience similarity evaluation, now for a single link which connects user u and user v we can get the score of willingness:

𝑊(𝑢, 𝑣) = 𝛼 ∗ 𝑆𝑇(𝑢, 𝑣) + (1 − 𝛼) ∗ 𝐸𝑆(𝑢, 𝑣) (26) The variable α and 1-α present the linear combination of the measurement.

3.2.1.3 Calculation of Referral willingness

After computing the willingness score among each social link, here we strive for finding the willingness along the social path from job seeker u to certain candidate v. Combing the result of each social link score and the social path we record in the 3.1.3, the calculation process is depicted as:

SocialPath u v SocialPaths u v SocialPath u v SocialPaths u v

n

Besides locating the possible candidates in the second model of social search, here we also strive for finding the best routing path, or the closest path to each possible candidate in the goal of maximizing willingness in order to increase the possibility for those candidates to help the job seekers.

The example of calculating process is described as follow Figure 6. After finding the candidate Amy, the system has recorded that there are two social paths between from job

(27)

26

seeker John and Amy in the search stage. In this appraisal stage, the system will process willingness score computing.

The willingness score between John and Amy will be computed as:

w (John, Amy)= w(John, Bob) * w (Bob, Andrew)* w(Andrew, Amy) =0.12*0.2*0.3=0.0072.

w (John, Amy) = w(John, Doris) * w (Doris, Amy )=0.2*0.7=0.14

After processing this two social path from John to Amy, the system will automatically update the highest score of social path, in this example, the path through Doris, for the willingness of w (John, Amy).

3.2.2 Social Influence Analysis

In this stage, we mainly focus on analyzing the social influence. In the analysis of social influence, we use three elements, total friends, social popularity and social engagement to evaluate the status of certain user in the social circle. The first element is to measure the possible social circle a person can impact on, and the second one is to measure the actual attention a person can gain, or how popular he or she is in the social network. The last one is to measure how this person becomes involved in the communities of social network. The

Andrew 0.2

Bob 0.12

John Amy

0.3

Figure 6. The example of calculating willingness Doris

0.2 0.7

27

formula of social influence is described at the end of 3.2.2 and the details will be discusses further in the following paragraph.

Total Friends: The concept of total friend is just to measure how many friends the user

has on the social network platform in order to know the scope he or she may influence and how many people that user can help distribute the job query. We use the tf u( ) function to get the number of friends of certain user u. Considering the diversity of different social circle, the normalization formula would be described as:

( )

Social Popularity: We expressed this kind of social power in the way of gaining

attention. Imagine that, maybe the person is not directly relevant with your desired job, neither the company nor the industry. However, this popular person may publish your job hunting news in his or her own social network and directs you to his or her friend as result, which occurs a lot in the real world. In this evaluation, the average number of like and comment from friends per status update are used to measure how much attention a user would get through their personal social network. The definition is shown as:

𝐿𝑖𝑘𝑒𝑟𝑒𝑐𝑒𝑖𝑣𝑒𝑑(𝑢) = The score of social popularity is generated as below:

SP u( )*Likereceived( ) (1u  )*Commentreceived( )u (31)

28

Social Engagement: Here we talk about how a person participates the community in order to

know personal status in the social network. With the popularity of low-cost and

often-asynchronous social network on the Internet, social involvements turned from the local and group-based to the internet-based. In this research, we consider the status in the way of participating group. We use the function group u( ) to denote the number of group user u joins and the compare this involvement degree with user’s friends to conduct the

normalization from the view of social scope.

( )

To sum up, the score of social influence will be defined as:

( ) * ( ) * ( ) * ( ), 1

SI u  TF u  SP u  SE u where      (33) Integrating the score of job influence in 3.1.2, here we could sum up and estimate the final influence as the following formula:

𝐼(𝑢, 𝑣) = 𝛼 ∗ 𝐽𝐼(𝑢, 𝑣) + (1 − 𝛼) ∗ 𝑆𝐼(𝑢, 𝑣) (34) Note that because the social influence only considers personal power, so only the candidate user v will be involved.

3.3 Weight Calculation

In this section we apply one of the most widely used approaches, the Analytic Network Process (ANP) to solve our weighting problems in all above modules.[52]

29

Goal:

Criteria

Alternative

Step1: we design the hierarchy by identifying the goal, criterion, and alternatives like Figure

7. Our goal is to find the most proper referral for job seeker, and four elements in our model would be our criterions, and the candidate set would be our alternatives. Level-1 weights are the edges between criteria and goal, level-2 weights are the edges between alternatives and criteria.

Step 2: In order to calculate the relative weight between each component, we collect the user

feedback and the criteria score from pervious criteria computing section as the data source, and then we use pairwise comparison to compute the priority weight in level-1. First, we form the pairwise comparison matrix shown at Formula 35:

where 𝐸𝑇𝐸 means relative weight ratio between social tie strength and experience

similarity, 𝐸𝑇𝐽 means relative weight ratio between social tie strength and job influence, 𝐸𝑇𝑆 Figure 7. ANP Structure

30

means relative weight ratio between social tie strength and social influence, 𝐸𝐸𝐽 means relative weight ratio between experience similarity and job influence, 𝐸𝐸𝑠 means relative weight ratio between experience similarity and social influence, 𝐸𝐽𝑆 means relative weight ratio between job influence and social influence. Then we use a mean method which shown at Formula 36 to calculate the relative weight for each criteria:

4

where W means the relative weight of criteria i. By this formula then we can know how i these four components affect the final score to rank the proper candidate.

Back to the process of evaluating the proper candidate, after long processing each component, we could finally generate the score of each candidate as well as the ranking list of users in the candidate setR. The score of certain possible candidate v could be a proper reference for

user u to hunting a desire job is defined as follows:

R(u,v)=W(u,v)* I(u,v) (37) W(u,v) stands for the willingness for user v to help user u, and I(u,v) means how user v could

influence the job user u wants as we mentioned previously. We will rank the candidate set by this score and eventually output the job opening as well as a list of ranking candidate and the social links to those people.

In order to better explain all of the factors we mention in our model, we illustrate them

31

in Figure 8.

Figure 8. The Factor Structure of Social Referral Mechanism

32

CHAPTER 4 EXPERIMENTS

After planning the whole framework of social referral mechanism, in this chapter, we conduct an experimental study and verify the effectiveness and efficiency of this proposed project. Generally speaking, the process of social referral is to request some information from social network, which expands by the connection of real social interactions, and the result is a list of people who may have the high possibility to help by the rank of recommendation calculation.

As for the input of this referral mechanism, since the experiment environment and the using habits of participants, we choose the most popular job website in Taiwan, 104 human resources bank and the most popular social services websites, Facebook, to execute the job-seeking process and observe the interaction process among people. The information of job openings is collected from the 104 human resources bank and the social interaction data is collected from Facebook. We use web crawler to analyze the job openings in the 104 websites and index some properties in advance in order to optimize the request process later happened in the social search among Facebook. As for each one who helps spread the job seeking request, we use the our own web-based app to gain more detailed personal information in order to index every user among the social circle of job seekers.

For technical side, we use Facebook API, such as the FQL and Graph API, to gather the real interactions among specific relationship to estimate the intimacy between friends or the popularity of certain people among his or her own social network. Furthermore, we implement our web-based app on the host of Bitbucket and platform of Heroku, which are both Git server and store our data in the Postgres database server. We utilize the analytical software, SPSS, as our tool to the factor analysis.

33

In the following sections, we will describe each procedure of data collection, storage and process as well as the calculation of how we actually use those collecting data to compute the recommendation results.

4.1 Experiment Process

The whole experiment is composed of four steps as Figure 4 illustration: network construction, social search for job query, social appraisal to rank candidates, output the final ranking list and request for feedback.

Step one: We will help the job seeker to distribute our web-based app to friends of his or

Step one: We will help the job seeker to distribute our web-based app to friends of his or

相關文件