18
Semantic Matching of Candidates’ profile with Job data from Linked- in Ting Xiao, Sarabpreet Dhillon Demo 12/3/2013

Semantic Matching of Candidates’ profile with Job data from Linked-in

  • Upload
    apria

  • View
    57

  • Download
    0

Embed Size (px)

DESCRIPTION

Semantic Matching of Candidates’ profile with Job data from Linked-in. Demo 12/3/2013. Ting Xiao, S arabpreet D hillon. Quick Review - Interim Info. Data Collection Build Keyword Set Build The Relationship Between the Job and Personal profile on the Ontology - PowerPoint PPT Presentation

Citation preview

Page 1: Semantic Matching of Candidates’ profile with Job data from Linked-in

Semantic Matching of Candidates’ profile with Job data from Linked-inTing Xiao, Sarabpreet Dhillon

Demo12/3/2013

Page 2: Semantic Matching of Candidates’ profile with Job data from Linked-in

Quick Review- Interim Info

0Data Collection0Build Keyword Set0Build The Relationship Between the Job and Personal

profile on the Ontology0Compute the matching score based on the linkage0Result

Page 3: Semantic Matching of Candidates’ profile with Job data from Linked-in

Architecture

Linked-In Python API

Linked-In Python A

PI

Alchemy Python API

Jena Framework

Web Page

Json

Json

ttl

ttl

Page 4: Semantic Matching of Candidates’ profile with Job data from Linked-in

Data Collection

0Python LinkedIn Library0 https://github.com/ozgur/python-linkedin

0Profile.py0 Developer’s own profile is easy to extract0 Or use search API to find other person’s profile

0 Job_extraction.py0 According to the level of the Linked-In account, the query

gives different numbers of jobs’ information0 The result is sorted by the timestamp of posting

Page 5: Semantic Matching of Candidates’ profile with Job data from Linked-in

Data Collection

0Example of Profile(profile.json)

Page 6: Semantic Matching of Candidates’ profile with Job data from Linked-in

Data Collection0Example of Job Description(job_description.json)

Page 7: Semantic Matching of Candidates’ profile with Job data from Linked-in

Build Keyword Set

0 The skills Keyword Set (profile.json)0 Good to use

0 The Job Description has no Keyword Set (job_description.json)

0 Need to analyse0 AlchemyAPI

0https://github.com/AlchemyAPI

Page 8: Semantic Matching of Candidates’ profile with Job data from Linked-in

Build Keyword Set

0Generate The Keywords Set from job description (Job_skills.json)0 Example:

Page 9: Semantic Matching of Candidates’ profile with Job data from Linked-in

Build The Relationship 0Web-Karma

0 https://github.com/InformationIntegrationGroup/Web-Karma

0Prepare the ontology0 http://mayor2.dia.fi.upm.es/oeg-upm/index.php/en/on

tologies/99-hrmontology

0 Convert the .ttl format to .owl by using the “OWL Syntax Converter” developed by the University of Machester0http://mowl-power.cs.man.ac.uk:8080/converter/

0 Preload into the Web-Karma

Page 10: Semantic Matching of Candidates’ profile with Job data from Linked-in

Build The Relationship 0The HR ontology

Page 11: Semantic Matching of Candidates’ profile with Job data from Linked-in

Build The Relationship 0Build Profile Linkage

Page 12: Semantic Matching of Candidates’ profile with Job data from Linked-in

Build The Relationship 0Build Linkage for Job skills

Page 13: Semantic Matching of Candidates’ profile with Job data from Linked-in

Build The Relationship 0Build Linkage for Job Information

Page 14: Semantic Matching of Candidates’ profile with Job data from Linked-in

Compute the Matching Score

0Load the profile.rdf and job_skills.rdf to Jena

0Do the SPARQL query, count the number of the items which are same.0 Example Query

Page 15: Semantic Matching of Candidates’ profile with Job data from Linked-in

Query Exampleselect ?name where { ?y ?id . filter (?id = '5831587').?y ?x .?x .?x ?z .{ ?x ?name filter (?name = 'C++')} union { ?x ?name filter (?name = 'OpenGL')} union { ?x ?name filter (?name = 'Photoshop')} union { ?x ?name filter (?name = 'Windows')} union { ?x ?name filter (?name = 'Visual Studio')} union { ?x ?name filter (?name = 'Linux')} union { ?x ?name filter (?name = 'UML')} union { ?x ?name filter (?name = 'JavaScript')} union { ?x ?name filter (?name = 'Cocos2d')} union { ?x ?name filter (?name = 'Objective-C')} union { ?x ?name filter (?name = 'C')} union { ?x ?name filter (?name = 'OS X')} union { ?x ?name filter (?name = 'Computer Vision')} union { ?x ?name filter (?name = 'iOS')} union { ?x ?name filter (?name = 'Machine Vision')} union { ?x ?name filter (?name = 'Cocoa Touch')} union { ?x ?name filter (?name = 'Hibernate')} union { ?x ?name filter (?name = 'Xcode')} union { ?x ?name filter (?name = 'Mac OS X')} union { ?x ?name filter (?name = 'LaTeX')} union { ?x ?name filter (?name = 'MySQL')} union { ?x ?name filter (?name = 'Java')}}

Page 16: Semantic Matching of Candidates’ profile with Job data from Linked-in

What’s New0 No open-source job application provides job semantic matching

0 All the job hunting web services just provide the searching result according to the latest creation time of the job position.

0 How to convert Json to RDF format0 We checked lots of converters however few of them provide this

feature, but most of them can only convert semantic file format.1.RDF Translator: http://ebusiness-unibw.org (NG)2.Karma:http://github.com/InformationIntegrationGroup/Web-Karma (Good)

Page 17: Semantic Matching of Candidates’ profile with Job data from Linked-in

Result0Demo

0 Welcome to use our job matching engine!

Page 18: Semantic Matching of Candidates’ profile with Job data from Linked-in

Question?