Tải bản đầy đủ (.pdf) (6 trang)

Đề xuất hệ thống thông minh hỗ trợ tìm kiếm việc làm

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (397.68 KB, 6 trang )

TẠP CHÍ KHOA HỌC VÀ CƠNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 12(73).2013, Quyển 2

ĐỀ XUẤT HỆ THỐNG THÔNG MINH HỖ TRỢ TÌM KIẾM VIỆC LÀM
CONCEPTION OF AN INTELLIGENT SYSTEM FOR JOB SEARCH
Nguyễn Văn Bình
Trường Cao đẳng Cơng nghệ Thơng tin, Đại học Đà Nẵng
Email:
TĨM TẮT
Nhu cầu sử dụng các cơng cụ để tìm kiếm thơng tin trên mạng Internet là rất lớn, trong đó có tìm kiếm việc
làm. Hiện nay có nhiều đơn vị hỗ trợ tư vấn việc làm trực tiếp, hoặc cung cấp thông tin tuyển dụng thơng qua các
trang web tìm kiếm việc làm. Tuy nhiên các chức năng tìm kiếm việc làm đều theo từ khóa nên kết quả tìm được
chưa cung cấp đầy đủ thông tin liên quan. Web ngữ nghĩa là sự mở rộng của web hiện tại bằng cách cho phép
người dùng tìm kiếm, chia sẻ, và kết hợp thơng tin dễ dàng hơn. Sử dụng công nghệ web ngữ nghĩa có thể xây
dựng các hệ thống tìm kiếm thơng minh dựa trên ngữ nghĩa của nội dung thông tin mà máy tính có thể hiểu và
suy luận được. Bài báo nghiên cứu và đề xuất giải pháp xây dựng và triển khai hệ thống thơng minh hỗ trợ tìm
kiếm việc làm sử dụng cơng nghệ web ngữ nghĩa.
Từ khóa: web ngữ nghĩa; tìm kiếm việc làm; ontology; bộ ba; tìm kiếm
ABSTRACT
Demands for tools to search for information on the Internet are very great, including job search. There are
many organizations supporting directly employment counseling, or providing recruitment information through the
job search site. However, the search functions with keyword-based on these websites usually provide insufficient
information. The semantic web drives the evolution of the current Web by enabling users to find, share, and
combine information more easily. Using the semantic web technologies can construct the intelligent search
system based on the semantic content of information that computers can understand and inferences. This paper
deals with a research and proposals for solutions to building intelligent systems to support job search using this
technology.
Key words: semantic web; job search; ontology; triple; search

1. Đặt vấn đề
Ngày nay, World Wide Web (WWW) đã
trở thành một kho tàng thông tin khổng lồ, chứa


đựng, xử lý và cung cấp gần như bất cứ thông tin
thông dụng nào cho người dùng Internet trên
khắp thế giới. Sự tiện dụng của các dịch vụ tìm
kiếm và cung cấp thơng tin cũng đã tạo ra thói
quen của con người trong việc khai thác thơng
tin. Thay vì tìm kiếm thơng tin trên sách, báo,
các tài liệu in ấn, con người đã chuyển sang tìm
kiếm thơng tin từ WWW và có được kết quả chỉ
sau vài thao tác đơn giản.
Cung cấp thông tin tuyển dụng, việc làm
làm một trong những ứng dụng phổ biến trên
mạng Internet. Hiện nay có nhiều website
thường xuyên đăng tải các tin tức tuyển dụng
mới như careerlink.vn, vietnamworks.com,
timviecnhanh.com… Các website này cung cấp
bản tin tuyển dụng dưới dạng các bài viết, có mơ

tả cụ thể về tiêu đề, tên công ty tuyển dụng, vị trí
tuyển dụng, u cầu cơng việc, thu nhập và các
thơng tin liên quan khác. Người dùng có thể xem
nội dung tuyển dụng theo các danh mục được
thiết kế sẵn, hoặc sử dụng cơng cụ tìm kiếm trên
trang web. Các cơng cụ tìm kiếm này chỉ hỗ trợ
tìm kiếm theo từ khóa kèm theo một số lựa chọn
cứng các điều kiện, ví dụ như có thêm danh sách
sổ xuống để lựa chọn loại cơng việc là “Tồn
thời gian” hay “Bán thời gian”. Như vậy, nếu
một người có khả năng lập trình C++ khi tìm
kiếm cơng việc có u cầu phù hợp với bản thân
bằng cách nhập từ khóa “C++” thì kết quả sẽ

khơng hiển thị những cơng việc có u cầu về kỹ
năng lập trình hướng đối tượng.
Việc tìm kiếm bằng từ khóa như trên có
thể xem là một hình thức tìm kiếm thụ động, bởi
vì hệ thống chỉ tìm kiếm và so khớp các từ được
đưa ra mà không hiểu ý nghĩa của các từ đó hoặc
1


TẠP CHÍ KHOA HỌC VÀ CƠNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 12(73).2013, Quyển 2

mối liên hệ giữa các khái niệm, từ đó có thể bỏ
sót nhiều kết quả liên quan khác. Vì vậy mà kết
quả thu được chỉ là một danh sách các thơng tin
có chứa từ khóa, người dùng phải tự tiếp tục đọc
và tìm kiếm thủ cơng từ danh sách này để có
được kết quả mong muốn. Ngồi ra, cơ chế tìm
kiếm theo từ khóa khơng giải quyết được các câu
truy vấn phức tạp và mang tính trừu tượng cao.
Để giải quyết vấn đề này, bài báo sẽ đề
xuất xây dựng một hệ thống thông minh hỗ trợ
tìm kiếm việc làm. Hệ thống này được xây dựng
dựa trên lý thuyết và các công cụ của web ngữ
nghĩa, xây dựng dữ liệu thơng tin việc làm có bổ
sung thêm ngữ nghĩa cho các tài nguyên và khái
niệm để máy tính có thể hiểu và tự động xử lý,
tìm kiếm việc làm một cách thơng minh.
Bài báo sẽ tập trung đề xuất giải pháp xây
dựng ontology cho các ứng dụng lưu trữ và tìm
kiếm việc làm cùng với mơ hình hoạt động của

hệ thống tìm kiếm việc làm thông minh.
2. Nghiên cứu tổng quan
Sự phổ biến và bùng nổ thông tin trên
WWW đã đặt ra một thách thức mới là làm thế
nào để khai thác được thông tin trên Web một
cách hiệu quả, mà cụ thể là làm sao để máy tính
có thể trợ giúp xử lý tự động được chúng. Muốn
vậy, trước hết máy tính phải hiểu được thông tin
trên các tài liệu Web, trong khi ở thế hệ Web
hiện tại thông tin được biểu diễn dưới dạng chỉ
con người mới đọc hiểu được.
Thực tế hiện nay, phần lớn các công ty,
doanh nghiệp đều đăng thông tin tuyển dụng của
đơn vị mình lên các trang web giới thiệu việc
làm. Con người đã thay đổi cách thức cung cấp
và tìm kiếm việc làm bằng cách tận dụng tính ưu
việt của mạng Internet. Điều này giúp cho các
doanh nghiệp tuyển dụng tiết kiệm thời gian, tiết
kiệm chi phí và dễ dàng chọn lọc các ứng viên
tiềm năng, còn người tìm việc nhanh chóng tìm
được các thơng tin phù hợp, chính xác.
Trên cơ sở thơng tin mà người tìm việc
cung cấp từ các trang web, các doanh nghiệp có
thể xây dựng hệ thống tuyển dụng trực tuyến một
cách hiệu quả. Ý tưởng về xây dựng hệ thống tìm
kiếm việc làm thơng minh và tuyển dụng trực
tuyến có thể được xây dựng bằng web ngữ nghĩa.
2

Web ngữ nghĩa (semantic web) là sự mở

rộng của web hiện tại mà trong đó thơng tin
được định nghĩa rõ ràng sao cho con người và
máy tính có thể cùng làm việc với nhau một cách
hiệu quả hơn. Mục tiêu của Web có ngữ nghĩa là
để phát triển các chuẩn chung và công nghệ cho
phép máy tính có thể hiểu được nhiều hơn thơng
tin trên Web, sao cho chúng có thể hỗ trợ tốt hơn
việc khám phá thơng tin, tích hợp dữ liệu và tự
động hóa các cơng việc [1].
Với web ngữ nghĩa, việc tìm kiếm sẽ dễ
dàng nếu mọi thứ được đặt trong ngữ cảnh. Ý
tưởng chính yếu là tồn bộ ngữ cảnh mà người
sử dụng được biết đến. Mục tiêu của web ngữ
nghĩa là phát triển các tiêu chuẩn và kỹ thuật để
giúp máy tính hiểu nhiều thơng tin trên Web, để
máy tính tìm ra các thơng tin dồi dào hơn, tích
hợp, duyệt dữ liệu, và tự động hóa các thao tác.
Với web ngữ nghĩa, chúng ta khơng những nhận
được những thơng tin chính xác hơn khi tìm
kiếm thơng tin từ máy tính, mà máy tính cịn có
thể tích hợp thơng tin từ nhiều nguồn khác nhau,
biết so sánh các thông tin với nhau.
Cơ chế cho phép chia sẻ và trao đổi ngữ
nghĩa của thông tin được biết đến và sử dụng lâu
nhất là ontology. Ontology là bản mô tả một
cách tường minh các khái niệm trong một miền
ứng dụng nào đó cùng với quan hệ giữa những
khái niệm này. Ontology cung cấp từ vựng
chung cho việc trao đổi thông tin giữa các ứng
dụng và dịch vụ Web. Bản thân phần ngữ nghĩa

của Web có ngữ nghĩa bao gồm ontology và giá
trị cụ thể của khái niệm định nghĩa trong
ontology. Để biểu diễn ontology và dữ liệu cần
có ngơn ngữ thích hợp. Trong q trình hình
thành Web có ngữ nghĩa, nhiều ngơn ngữ như
vậy đã được đề xuất và phát triển, trong đó được
biết đến nhiều nhất là RDF và RDFS [7],
DAML+OIL [8].
RDF (Resource Description Framework)
là cơ chế cho phép mô tả dữ liệu về dữ liệu
(metadata). RDF coi các đối tượng trên Web
(trang Web, đoạn văn, người, các đối tượng
khác) là các tài nguyên. Mỗi tài nguyên được mô
tả bởi bộ ba đối tượng - thuộc tính – giá trị. Ví
dụ, mệnh đề “Cơng ty A có địa chỉ là B” sẽ được
mơ tả bởi bộ ba: (Công ty A, địa chỉ, B).


TẠP CHÍ KHOA HỌC VÀ CƠNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 12(73).2013, Quyển 2

RDF Schema (RDFS) là một biến thể đơn
giản sử dụng cơ chế RDF. RDFS cho phép mơ tả
các thuộc tính đặc thù cho ứng dụng, đồng thời
định nghĩa lớp các đối tượng có cùng thuộc tính
đó. Việc định nghĩa lớp đối tượng với thuộc tính
và quan hệ rất cần thiết cho việc xây dựng
ontology.
Hiện nay nhiều ontology bằng tiếng Việt
đã được xây dựng cho các lĩnh vực khác nhau
như OVL [5], ontology thông tin khoa học công

nghệ [2]. Trong lĩnh vực việc làm và tuyển dụng
đã có các đề xuất ontology cho hệ thống tự động
đánh giá hồ sơ và tuyển dụng trực tuyến [4], tuy
nhiên vẫn chưa có đề xuất các ontology hồn
thiện phù hợp với tình hình tại Việt Nam.
3. Đề xuất xây dựng hệ thống
3.1. Thiết kế ontology
Việc tiếp cận ngữ nghĩa tài nguyên Web
thông qua các ontology trở nên mềm dẻo hơn vì
người sử dụng có thể lựa chọn bộ từ vựng và các
ràng buộc trong các ontology. Ví dụ, các ứng
dụng trong các miền khác nhau có thể sử dụng
các ontology khác nhau. Đặc biệt, các ontology
có thể được sử dụng để đặc tả ý nghĩa của các tài
nguyên Web (thơng qua các chú thích) bằng
cách xác nhận các tài nguyên như các trường
hợp cụ thể của một số khái niệm quan trọng và
khẳng định các tài nguyên có quan hệ với các tài
nguyên khác thông qua một số thuộc tính quan
trọng đã định nghĩa trong các ontology.
Từ vựng trong một ontology có thể được
biểu diễn bằng các khái niệm và các quan hệ
được đặt tên và các định nghĩa khái niệm có thể
được biểu diễn bằng các giới thiệu tương đương.
Các giả định cơ sở có thể được biểu diễn bằng
các tiên đề khái niệm và quan hệ khái quát. Đôi
khi một ontology tương ứng với một cơ sở tri
thức logic mơ tả.
Quy trình phát triển ontology là một quy
trình gồm nhiều bước, tuy nhiên vẫn chưa có

một phương pháp chuẩn hóa nào để phát triển
các ontology. Quy trình phát triển dưới đây gồm
7 bước do Stanford Center for Biomedical
Informatics Research đưa ra.
Bước 1: Xác định lĩnh vực và phạm vi của
ontology.

Bước 2: Xem xét việc sử dụng lại các
ontology có sẵn. Trước khi bắt đầu xây dựng
ontology, cần xét đến khả năng sử dụng lại các
ontology đã có. Nếu có thể sử dụng lại một phần
các ontology đã có, chi phí bỏ ra cho q trình
xây dựng ontology sẽ giảm đi rất nhiều.
Bước 3: Liệt kê các thuật ngữ quan trọng.
Cần bắt đầu từ các thuật ngữ chuyên ngành để
xây dựng thành các lớp trong ontology tương
ứng. Việc liệt kê các thuật ngữ còn cho thấy
được phần nào tổng quan về các khái niệm trong
lĩnh vực đó, giúp cho các bước tiếp theo được
thuận lợi.
Bước 4: Xác định các lớp và phân cấp của
các lớp. Tìm hiểu về ngữ nghĩa của các thuật
ngữ đã có để có được các mơ tả cho thuật ngữ
đó, định vị cho các lớp mới, loại bỏ ra khỏi
ontology nếu nằm ngoài phạm vi của ontology
hay hợp nhất với các lớp đã có nếu có nhiều
thuật ngữ có ngữ nghĩa như nhau. Ngồi ra
khơng phải thuật ngữ nào cũng mang tính chất
như một lớp.
Có một số phương pháp tiếp cận trong

việc xác định phân cấp của các lớp: Phương
pháp từ trên xuống (top-down), Phương pháp từ
dưới lên (bottom-up), Phương pháp kết hợp
Bước 5: Xác định các thuộc tính.
Bước 6: Xác định ràng buộc của các thuộc
tính. Cần phải xác định các ràng buộc cho một
thuộc tính càng chặt chẽ càng tốt, để tránh
trường hợp nhập dữ liệu sai, dẫn đến đổ vỡ của
các ứng dụng sử dụng Ontology này.
Bước 7: Tạo các thực thể. Việc tạo thực
thể cho một lớp là quá trình điền các thơng tin
vào các thuộc tính của lớp đó.
Việc xây dựng ontology cũng cần phải
tính đến khả năng mở rộng lĩnh vực quan tâm
trong tương lai, khả năng kế thừa các hệ thống
ontology có sẵn, cũng như tính linh động để
ontology có khả năng mơ tả tốt nhất các quan hệ
phức tạp trong thế giới thực.
Quy trình xây dựng ontology này được áp
dụng để tạo ontology cho hệ thống tìm kiếm việc
làm. Thơng tin việc làm liên quan đến nhiều lĩnh
vực khác nhau như đào tạo, ngành nghề, địa
điểm, khả năng…
3


TẠP CHÍ KHOA HỌC VÀ CƠNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 12(73).2013, Quyển 2

Trong cơ sở dữ liệu quan hệ truyền thống,
dữ liệu được lưu dưới dạng các bảng. Trong mỗi

bảng, mỗi hàng là một bản ghi không có giới hạn
về số lượng các trường. Bảng mơ tả thơng tin
cơng ty tuyển dụng có dạng như sau:
Bảng 1. Thông tin công ty tuyển dụng

Địa chỉ

Điện thoại

74 Bạch Đằng

3849361

C2 FPT software KCN An Đồn

3958777

ID

Tên C.Ty

C1 Gameloft

Để có thể xây dựng ontology, dữ liệu cần
được chia nhỏ để lưu trữ dưới dạng các bộ ba:
Bảng 2. Mô tả các bộ 3

Đối tượng

Thuộc tính


Giá trị

C1

Tên gọi

Gameloft

C1

Địa chỉ

74 Bạch Đằng

C1

Điện thoại

3849361

Tập hợp các bộ ba này tạo thành đồ thị
RDF với các nút là “Đối tượng” và “Giá trị”, các
cung là “Thuộc tính”. Các thuộc tính ở đây đều
có giá trị cụ thể thuộc kiểu chuỗi.
có số điện thoại

3849361

C1

có địa chỉ

74 Bạch Đằng

Hình 1. Đồ thị các bộ ba thơng tin về công ty

Trong trường hợp cần thể hiện chi tiết hơn
các thơng tin, có thể mở rộng ontology bằng
cách xác định thêm các lớp liên quan khác hoặc
sử dụng ontology có sẵn nào đó. Ví dụ cần thể
hiện chi tiết địa chỉ công ty, thuộc tỉnh, thành
phố nào, khu vực nào, có thể biểu diễn bằng đồ
thị ở Hình 2. Địa chỉ D1 là một đối tượng có các
thuộc tính tỉnh, khu vực, số nhà.

4

có số điện thoại

3849361

C1
có địa chỉ

tỉnh/TP

Đà Nẵng

D1
số nhà

74 Bạch Đằng

khu vực
Thành thị

Hình 2. Mở rộng thơng tin địa chỉ

Từ u cầu của bài tốn lưu trữ thơng tin
và tìm kiếm việc làm, chúng tơi xác định các lớp
chính trong ontology tìm kiếm việc làm là: Cơng
ty, Địa điểm, Vị trí tuyển dụng, u cầu cơng
việc, Ngành đào tạo, Trình độ, Ngoại ngữ, Kỹ
năng.
Từ việc xác định các khái niệm và các bộ
ba, chúng ta có tương ứng các thuộc tính như:
tên gọi, địa chỉ, điện thoại, yêu cầu cơng việc, có
ngành đào tạo, có trình độ, có kỹ năng, có ngoại
ngữ… Sơ đồ tóm lược biểu diễn ontology hệ
thống tìm kiếm việc làm thể hiện ở Hình 3.
Ở đây chúng tôi sử dụng công cụ Protégé
và thành phần bổ sung OntoGraf để thiết kế và
hiển thị ontology cho hệ thống tìm kiếm việc
làm. Protégé là một phần mềm mã nguồn mở
Java cho phép người dùng tạo ra các ontology để
phát triển web ngữ nghĩa theo đúng chuẩn của
ngôn ngữ W3C OWL.
3.2. Xây dựng dữ liệu về thông tin tuyển dụng
Sau khi hoàn thành việc xây dựng
ontology, vấn đề quan trọng là xây dựng và cập
nhật thường xuyên dữ liệu thông tin tuyển dụng

vào hệ thống. Giả sử các thông tin tuyển dụng
được lấy từ các website tuyển dụng hiện có. Có
hai phương pháp thực hiện:
- Cập nhật thủ công: Xây dựng ứng dụng
cho phép người quản trị nhập các thông tin việc
làm hàng ngày. Phương pháp này thực hiện đơn
giản, ứng dụng xây dựng dễ dàng, tuy nhiên việc
cập nhật dữ liệu thủ công sẽ mất nhiều thời gian,
cơng sức, đồng thời dữ liệu có thể khơng đầy đủ.


TẠP CHÍ KHOA HỌC VÀ CƠNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 12(73).2013, Quyển 2

Hình 3. Phân cấp lớp trong Ontology

- Rút trích thơng tin và cập nhật tự động:
sử dụng các phương pháp rút trích thơng tin để
xây dựng mơ đun tự động và liên tục rút trích dữ
liệu trang các trang web, sau đó chú thích ngữ
nghĩa tự động cho các thực thể. Dữ liệu được thu
thập và cập nhật hồn tồn tự động, nhanh
chóng, tuy nhiên lập trình phức tạp. Đã có các
mơ đun tương tự được xây dựng như mô đun chú
giải trang web tự động sử dụng kỹ thuật tách
thông tin văn bản [3].
Mô hình hoạt động của hệ thống tìm kiếm

việc làm thể hiện ở Hình 4. Sau khi tạo ra các
ontology và phần ngữ nghĩa đã được chú giải
phải được lưu vào kho chứa. Những kho này

thực chất là cơ sở dữ liệu cho phép lưu các mô tả
trên ngôn ngữ RDFS hay DAML+OIL và cho
phép truy vấn để trích xuất dữ liệu. Một trong
những kho chứa điển hình là Sesame.
Tại máy tìm kiếm, để truy vấn và tìm
kiếm các thực thể trong cơ sở dữ liệu ontology,
cần sử dụng ngôn ngữ truy vấn dữ liệu SPARQL
hoặc SeRQL, đồng thời có thể sử dụng các

Hình 4. Mơ hình hoạt động của hệ thống
5


TẠP CHÍ KHOA HỌC VÀ CƠNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 12(73).2013, Quyển 2

framework mã nguồn mở để lập trình như Jena,
Sesame (Java), RAP RDF API (PHP),
LinqToRDF, OwlDotNetApi (.NET) [6].
4. Kết luận
Sử dụng công nghệ web ngữ nghĩa, máy
tính có thể hiểu được thơng tin, các khái niệm và
mối liên hệ giữa chúng, nhờ đó có thể tạo ra các
ứng dụng tìm kiếm thơng minh và chính xác.
Bài báo đã phân tích đặc điểm của một hệ
thống tìm kiếm việc làm, đề xuất xây dựng

ontology và giải pháp xây dựng hệ thống. Trong
đó tập trung trình bày cách thức và các bước xây
dựng ontology tìm kiếm việc làm, phần cốt lõi
của một ứng dụng web ngữ nghĩa. Tuy nhiên

những nội dung đề cập mới chỉ dừng lại ở mức
độ nghiên cứu tổng quan về vấn đề.
Trong tương lai, chúng tôi sẽ tiếp tục phát
triển xây dựng hệ thống hoàn chỉnh dựa trên các
nghiên cứu này với mong muốn mang lại một
công cụ tư vấn việc làm thông minh, hiệu quả
cho người sử dụng.

TÀI LIỆU THAM KHẢO
[1] Cao Hoàng Trụ, “Nghiên cứu phát triển các kỹ thuật xây dựng và khai thác thơng tin Web có ngữ
nghĩa”, Đề tài khoa học và công nghệ cấp nhà nước KC01.21.
[2] Trần Đình Khang, Vũ Tuyết Trinh, Đỗ Đức Thành, Đỗ Thị Ngọc Quỳnh, Một phương pháp tìm
kiếm dựa trên Ontology phục vụ quản lý thông tin khoa học công nghệ, Bộ môn Hệ thống Thông
tin, Trường Đại học Bách khoa Hà Nội, />[3] Từ Minh Phương, Trịnh Hữu Kiên, Công cụ hỗ trợ tạo ngữ nghĩa trang Web sử dụng kỹ thuật
tách thông tin từ văn bản, />CongCuHoTroTachThongTinTuVanBan.pdf
[4] Christian Bizer, Ralf Heese, Malgorzata Mochol, Radoslaw Oldakowski, Robert Tolksdorf,
Rainer Eckstein, The Impact of Semantic Web Technologies on Job Recruitment Processes, Freie
Universität Berlin, />[5] Dang Tuan Nguyen, Tri Phi-Minh Nguyen, Building and Evaluation of a Universal Ontology for
Vietnamese Language, The 3rd International Conference on Advanced Computer Theory and
Engineering 2010 (ICACTE 2010), August 20-22, 2010, Chengdu, China.
[6] John Hebeler, Matthew Fisher, Ryan Blace, Andrew Perez-Lopez, “Semantic web
programming”, Wiley, 2009.
[7] Thomas B. Passin, “Explorer’s guide to the semantic web”, Manning, 2004.
[8] Toby Segaran, Colin Evans, Jamie Taylor, “Programming the Semantic web”, O’reilly, 2009.
(BBT nhận bài: 02/10/2013, phản biện xong: 27/12/2013)

6




×