Geo-Social Profile Matching Algorithm for Dynamic Interests in Ad-Hoc ...

3 downloads 7575 Views 244KB Size Report
We emphasize that strength of an ad-hoc social network depends on a good profile-matching ... (SEO) provider [2] conducted a survey and found 88% of.
2015 IEEE International Conference on Computational Intelligence & Communication Technology

Geo-Social Semantic Profile Matching Algorithm for Dynamic Interests in Ad-hoc Social Network Nagender Aneja Department of Computer Engineering YMCA University of Science and Technology Faridabad, India Email: [email protected]

Dr. Sapna Gambhir Department of Computer Engineering YMCA University of Science and Technology Faridabad, India Email: [email protected]

retrieve profile of any nearby friend by right-clicking and starting a chat session. Nagender and Sapna [4] presented the various research issues in establishing ad-hoc social network. They presented need of a better profile matching algorithm that is suitable for mobile devices. Trieu and Pham [5] proposed a system of ad hoc network of smart mobile phones that allows users to share pictures, notes, etc for limited time at timeline of ad hoc network. A decentralized application is able to create Interest-based network and perform security and privacy enforcement. Campbell et al. [6] proposed collecting information about neighboring users and concising facts that can be used in many applications. Sapna and Nagender [7] investigated ASN for need of dynamic interest based profile. Raad et al. [8] discussed matching user profiles by considering all attributes. They allow users to assign more importance to some attributes and provide each attribute a different similarity measure. Sarigol et al. [9] presented a tuple space as a common memory space for nodes to store and lookup key/value pairs. Tuple space was used for implementing buddy presence service and to view all buddies in proximity. Yiu et al. [10] presented locating friends in proximity based on given threshold Euclidean distance that is tuned according to communication cost. Bottazzi et al. [11] proposed a middleware with two components Dependent Social Network Manager (PSNM) and Global Network Manager (GSNM). PSNM publishes user profile based on different interests built by user. GSNM combines PSNM profile with its place id according to user’s location. Zhang et al. [12] proposed proximity-based mobile social networking (PMSN) that enables users to perform profile matching without disclosing information about their profiles beyond comparison result. However, a user has to select interest level manually. Zhang et al. [13] proposed privacy preserving method to match users profile in decentralized fashion for ad-hoc social network. The method uses a secure communication channel based on symmetric-encryption between initiator and matching users. Mascetti et al. [14] proposed computing users’ proximity by taking advantage of the presence of a third party to reduce computation and communication

Abstract—Ad-hoc Social Network (ASN) allows users to create social network connections using wireless ad hoc network. Various techniques have been proposed to create ASN by matching profiles of users. In order to create meaningful ASN, there is a need to dynamically set and match user profile based on changing user’s interests. This paper provides an algorithm to semantically match users profiles based on geographic location and dynamic interests. Keywords-Ad hoc Social Networks; User profile; Dynamic Interests; Friends; Profile Matching; Search and Browsing History; Semantic profile matching

I. I NTRODUCTION Mobile has exceeded PC Internet Usage in 2014, according to survey by Online Publishers Association and Frank N. Magid Associates [1]. The survey presented that 99.5 percent of users access content/information on their mobile devices. Placeable, search engine optimization (SEO) provider [2] conducted a survey and found 88% of search queries related to vacations are conducted primarily on mobile devices. Placeable [2] also found 65% of travelers seek retailers and restaurants after arriving at a destination. Conducting queries after arriving at a location indicates that user’s interest in local search queries depends on their current location. Since users interests keep on changing so should be the profile of users. Therefore, there is a need to dynamically set user profile based on their geo-location. In order to match profiles, syntax or text matching may not be beneficial as different users use different synonymous or sometime even same word may be used in different context. For example, if a user A is searching sports shop may be actually searching the possibility of repairing the skiing equipment and Person B wants to purchase running shoes. Both persons supposedly differ significantly in their interests, aims, and attitudes towards sports so it is important to extract meaningful information to create ASN. II. R ELATED W ORK Sarigol et al. [3] presented AdSocial and demonstrated ASN on Nokia N810 handhelds. AdSocial allows users to 978-1-4799-6023-1/15 $31.00 © 2015 IEEE DOI 10.1109/CICT.2015.50

354

costs such that service provider acting as the third party cannot acquire location information about the users. They also showed that user can have full control of location information acquired by buddies. Lee and Hong [15] proposed creating user profile by collecting and analyzing data from urls of browsing history from a mobile device. Limam et al. [16] proposed enhancing search query log analysis by considering semantic properties of query terms. They presented extracting global semantic representation of a search query log and using it to extract user interests. Therefore, current research in ASN demonstrated that in order to provide satisfying experience of ad-hoc social network, profile matching algorithm is an important component. As mentioned above, Lee and Hong [15] proposed creating profile by extracting keywords from urls. However, users have different interests based on geolocation and need friend suggestions according to their interests. Nagender and Sapna [17] presented the geolocation based algorithm to match profiles of users. However, different users use different keywords which may have same meaning. Therefore, a profile matching algorithm is required for ASN that matches users’ profiles semantically based on geolocation.

Figure 1: Forest comprises multiple local profiles in form of three trees with root node as location

similar then the interest level of merged profile will be Keyword 1 and Keyword 2 or Keyword 3 is 10 and 14 respectively.

Algorithm 1 Dynamic Profiles for a user in ASN

III. A LGORITHM

1: 2:

This paper presents a forest data structure to store user profile. A forest is a disjoint union of trees and wherein each tree represents a profile with root as a geographic location. A new profile represented by a tree is added when a user visits a new location. Proposed algorithm processes search and browsing history and stores it in the forest data structure. The algorithm scans each keyword searched for information and matches semantically with existing keywords in the tree. If semantic match is found, the algorithm increases interest level for that keyword else it adds the keyword in the tree and initialize the interest level. The algorithm also processes keywords present in the accessed urls and add in the tree. The user may merge certain nearby profiles into one profile by selecting merge operation on trees of the forest. Each user profile is automatically updated based on information being searched in the geographic location. When a user intends to join ASN, the current profile based on current geographic location is shared with nearby users using ad hoc network. Users can communicate or chat if their profiles are similar. Figure 1 represents that interest level of Keyword 1 and Keyword 2 is 4 and 9 respectively at location 1. It also represents that at location 2, user interest level for Keyword 1 and Keyword 3 is 6 and 5 respectively. User visited location 3 but has not searched any information at this time. In case the user selects to merge profiles of location 1 and location 2, interest level of Keyword 1, Keyword 2, and Keyword 3 is 10, 9, and 5 respectively. However, if Keyword 2 and Keyword 3 are semantically

3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22:

FA - Forest data structure maintained for userA LA - List of GPS Locations visited by userA or list of root nodes of FA LA (t) - GPS Location of N odeA at time t Ki - ith Keyword IKi - Interest level of ith Keyword Trigger: N odeA search some information if LA (t) exists in LA then updateInterests(FA , LA (t), Ki ) else create empty tree in FA with root node as LA (t) updateInterests(FA , LA (t), Ki ) end if Function: updateInterests(FA , LA (t), Ki ) scan FA to find tree with root LA (t) scan keywords of tree with root node LA (t) if a keyword found that semantically matches with Ki then IK i + + else insert Ki into ListA (LA (t)) IK i = 0 end if End Function

Algorithm 1 explains steps to build dynamic profile of a user. The algorithm extracts the tree with root node equivalent to current location from forest and update interest

355

suppose userA has profile (key1 , key2 , key3 ) with weights (a1 , a2 , a3 ) and userB has profile (key1 , key4 , key5 ) with weights (b1 , b2 , b3 ). Let us assume key2 is synonymous of key4 , now union of profiles to calculate similarity will be (key1 , key2 or key4 , key3 , key5 ) and interest level of userA will be (a1 , a2 , a3 , 0) and for userB will be (b1 , b2 , 0, b3 ). The second step includes calculating similarity using equation (1). WordNet [18], which is a lexical database of English, can be used to determine if keywords are synonymous.

level of keywords. Algorithm 2 Creating ad-hoc social network Trigger: Users join ad hoc network Users exchange profiles and individually calculate similarity if Similarity(userA ,userB ) > Threshold then Suggest to create social network else Discard profile end if

IV. E XAMPLE Consider two users A and B browsing Internet on their individual interested topics. There can be two scenarios, first scenario in which there is no synonymous keyword intra-location but synonymous have been used inter-location, second scenario in which synonymous have used in intralocation also. The analysis of these scenarios will explain as how semantic profile matching can be advantageous intralocation and inter-location. In order to explain the proposed approach, three types of similarities have been calculated namely Global, Location X, and Location Y . Global Similarity indicates that user profiles is not distinguish based on location and is not a forest rather it is a tree that is summation of all profiles. Interest levels are added in case keywords are similar at different location. Location based similarity is computed for each location based on profile of that location.

Algorithm 2 explains method to create social network using ad-hoc network based on dynamic profiles. A. Calculating Similarity of Profiles As mentioned above in algorithm Algorithm 2, in order to create social network similarity of two users’ profile should be greater than a threshold. The value of threshold can be configured by user and depends on choice if the user wants to create social network with highly similar users, medium similar users, or with any one. The value of threshold will be high in case user wants to create social network with highly similar users. Similarity of profiles can be calculated by two methods mentioned below. 1) Cosine similarity: One of the ways to calculate similarity of profiles is to compute cosine similarity. Cosine similarity between two vectors (or two profiles) is a measure that calculates cosine of the angle between two profiles and provides a measure to know similarity. Suppose userA has keywords (key1 , key2 , key3 ) with interest level (a1 , a2 , a3 ) and userB has keywords (key1 , key4 , key5 ) with interest level (b1 , b2 , b3 ). Then for cosine similarity, algorithm will compute union of keywords present in the profiles of both users and will calculate interest level for union of keywords. In this case, let us assume algorithm computes union as (key1 , key2 , key3 , key4 , key5 ) where interest level of userA will be (a1 , a2 , a3 , 0, 0) and for userB will be (b1 , 0, 0, b2 , b3 ). Cosine similarity is computed by equation (1). userA .userB Similarity(userA , userB ) = |userA |.|userB | Σai .bi  Similarity(userA , userB ) = √ Σai 2 . Σbi 2

A. Scenario 1 In the first scenario, assume that both users A and B searched or access urls containing (f ootball, badminton, soccer and tennis). Let us assume two geolocations location X and location Y at time t1 and t2 respectively. Both users searched for f ootball and badminton at location X at time t1 and soccer and tennis at location Y at time t2 . Assume number of times the terms f ootball and badminton appear are 2 and 4 for user A and 24 and 22 for user B at location X. Similarly, assume number of times the terms soccer and tennis appear are 13 and 16 for user A and 12 and 12 for user B at location Y . Table I: Cosine Similarity Scores Cosine Similarity

(1)

2) Semantic Cosine Similarity: Semantic cosine similarity is computed in two steps. The first step is to determine if keywords being matched within a profile or of different profiles are synonymous. Weights are added if keywords are similar. As explained in above example,

Global

A B

Location X

A B

Location Y

356

User

A B

Location X football badminton 2 4 24 22 football badminton 2 4 24 22 football badminton

Location Y soccer tennis 13 16 12 12 soccer tennis

Score 0.62 0.93

soccer 13 12

tennis 16 12

0.99

Table II: Semantic Cosine Similarity Scores Semantic Cosine Similarity

User

Global

A B

Location X

A B

Location X football badminton 15 4 36 22 football badminton 2 4 24 22 football badminton

A B

Location Y

Location Y soccer tennis 16 12 soccer tennis

Score 0.84 0.93

soccer 13 12

tennis 16 12

0.99

Table I presents a summary of cosine similarity scores and Table II presents a summary of semantic cosine similarity scores for the above mentioned example. The example demonstrates that semantic cosine similarity global score that is 0.84 is better than cosine similarity global of 0.62. However, score of both cosine similarity location X and semantic cosine similarity location X is 0.93. Similarly, score of both cosine similarity location Y and semantic cosine similarity location Y is 0.99. The similarity of scores is due to the fact that all keywords at the intralocation are different and not synonymous. Scenario 2 will explain the advantage of using semantic cosine similarity when there are similar keywords used in intra-location.

Figure 2: Similarity scores versus Semantic similarity scores for 10 pairs of users considering global profile

B. Scenario 2 Now, in the second scenario keywords were changed so that similar keywords are used within the location. Assume that user A search for (f ootball, tennis) and user B search for (soccer, tennis) within location X. Table III: Cosine Similarity and Semantic Cosine Similarity for location X Similarity Type Cosine Semantic Cosine

User A B A B

football 2 football 2 12

location X badminton soccer badminton

12 soccer

Score tennis 16 12 tennis 16 12

0.70

Figure 3: Similarity scores versus Semantic similarity scores for 10 pairs of users considering local profile

0.79

Figure 2 for for IV-A displays that variand ation of scores cosine similarity global semantic cosine similarity global . The graph shows that for all pairs, semantic cosine similarity is either better or equal to cosine similarity for inter-location.

Table III presents similarity scores and shows that score of semantic cosine similarity location X that is 0.79 is better than score of cosine similarity location X that is 0.70.

Similarily, Figure 3 for IV-B also indicates that semantic cosine similarity provides better score than cosine similarity for location X i.e. intra-location.

V. R ESULTS The above scenarios were repeated for a network of twenty users. In order to calculate weights for the keywords, random number function was used for 20 users to generate weights of keywords for profile. Ten pairs of users were compared to determine the effect of semantic matching.

VI. C ONCLUSION This paper presented a geo-social semantic profile matching algorithm based on dynamic interests and showed that

357

local profile based on GPS location of users is better if matched semantically.

[11] D. Bottazzi, R. Montanari, and A. Toninelli, “Context-aware middleware for anytime, anywhere social networks,” Intelligent Systems, IEEE, vol. 22, no. 5, pp. 23–32, Sept 2007.

R EFERENCES

[12] R. Zhang, J. Zhang, Y. Zhang, J. Sun, and G. Yan, “PrivacyPreserving Profile Matching for Proximity-Based Mobile Social Networking,” Selected Areas in Communications, IEEE Journal on, vol. 31, no. 9, pp. 656–668, September 2013.

[1] F. N. M. Associates, “Mobile Now Exceeds PC: The Biggest Shift Since the Internet Began,” July 8, 2014. [Online]. Available: http://searchenginewatch.com/article/2353616/Mobile-NowExceeds-PC-The-Biggest-Shift-Since-the-Internet-Began/

[13] L. Zhang, X.-Y. Li, and Y. Liu, “Message in a Sealed Bottle: Privacy Preserving Friending in Social Networks,” in Distributed Computing Systems (ICDCS), 2013 IEEE 33rd International Conference on, July 2013, pp. 327–336.

[2] Placeable, “Survey: Mobile Dominates Vacation Search Queries,” July 2, 2014. [Online]. Available: http://searchengineland.com/survey-mobile-dominatesvacation-search-queries-195653/

[14] “Privacy in geo-social networks: proximity notification with untrusted service providers and curious buddies, url=http://dx.doi.org/10.1007/s00778-010-0213-7, publisher=Springer-Verlag, author=Mascetti, Sergio and Freni, Dario and Bettini, Claudio and Wang, X.Sean and Jajodia, Sushil, pages=541-566,,” The VLDB Journal, vol. 20, no. 4, 2011.

[3] E. Sarig¨ol, O. Riva, P. Stuedi, and G. Alonso, “Enabling Social Networking in Ad Hoc Networks of Mobile Phones,” Proc. VLDB Endow., vol. 2, no. 2, pp. 1634–1637, Aug 2009. [Online]. Available: http://dx.doi.org/10.14778/ 1687553.1687611

[15] J. Lee and C. S. Hong, “A mechanism for building Adhoc social network based on user’s interest,” in Network Operations and Management Symposium (APNOMS), 2011 13th Asia-Pacific, Sept 2011, pp. 1–4.

[4] N. Aneja and S. Gambhir, “Various Issues in Ad-hoc Social Networks,” in Proceedings of National Conference on Recent Trends in Computer Scince and Information Technology (RTCSIT). Echelon Institute of Technology Faridabad Haryana India, June 2012, pp. 6–9. [Online]. Available: http:// echeloninstitute.org/images/download/proceedingRTCSIT.pdf

[16] L. Limam, D. Coquil, H. Kosch, and L. Brunie, “Extracting User Interests from Search Query Logs: A Clustering Approach,” in Proceedings of the 2010 Workshops on Database and Expert Systems Applications, ser. DEXA ’10. Washington, DC, USA: IEEE Computer Society, 2010, pp. 5–9. [Online]. Available: http://dx.doi.org/10.1109/DEXA. 2010.23

[5] Q. Trieu and T. Pham, “STARS: Ad-Hoc Peer-to-Peer Online Social Network,” in Computational Collective Intelligence. Technologies and Applications, ser. Lecture Notes in Computer Science, N.-T. Nguyen, K. Hoang, and P. Jdrzejowicz, Eds. Springer Berlin Heidelberg, 2012, vol. 7653, pp. 385–394. [Online]. Available: http: //dx.doi.org/10.1007/978-3-642-34630-9 40

[17] N. Aneja and S. Gambhir, “Geo-social profile matching algorithm for dynamic interests in ad-hoc social network,” Social Networking, vol. 3, no. 5, pp. 240–247, 2014. [Online]. Available: http://www.scirp.org/journal/PaperDownload.aspx? paperID=51108

[6] A. T. Campbell, S. B. Eisenman, K. Fodor, N. D. Lane, H. Lu, E. Miluzzo, M. Musolesi, R. A. Peterson, and X. Zheng, “CenceMe: Injecting Sensing Presence into Social Network Applications using Mobile Phones (Demo Abstract),” in In Proc. of ACM 9th International Symposium on Mobile Ad Hoc Networking and Computing (MobiHoc’08), May 2008.

[18] P. University, “WordNet-A lexical database for English.” [Online]. Available: http://wordnet.princeton.edu

[7] S. Gambhir and N. Aneja, “Ad-hoc Social Network: A Comprehensive Survey,” International Journal of Scientific and Engineering Research, vol. 4, no. 8, pp. 156–160, Aug 2013. [Online]. Available: http://www.ijser.org/researchpaper\ %5CAd-hoc-Social-Network-A-Comprehensive-Survey.pdf [8] E. Raad, R. Chbeir, and A. Dipanda, “User Profile Matching in Social Networks,” in Network-Based Information Systems (NBiS), 2010 13th International Conference on, Sept 2010, pp. 297–304. [9] E. Sarigol, O. Riva, and G. Alonso, “A tuple space for social networking on mobile phones,” 2014 IEEE 30th International Conference on Data Engineering, vol. 0, pp. 988–991, 2010. ˇ [10] M. L. Yiu, L. H. U, S. Saltenis, and K. Tzoumas, “Efficient Proximity Detection Among Mobile Users via Self-tuning Policies,” Proc. VLDB Endow., vol. 3, no. 1-2, pp. 985–996, Sep 2010. [Online]. Available: http: //dx.doi.org/10.14778/1920841.1920966

358

Suggest Documents