420 likes | 577 Views
GIẢNG VIÊN HƯỚNG DẪN: TS. Trần vũ bình Sinh viên thực hiện : lê trung hiếu Phùng chí nguyên Lê dương công phúc. XÂY DỰNG KIẾN TRÚC CỔNG THÔNG TIN TÌM VIỆC. KHOÁ LUẬN TỐT NGHIỆP. 09/01/2012. Agenda. Giới Thiệu Bài Toán Kiến Trúc. Bài toán kiến trúc tổ chức và so khớp thông tin.
E N D
GIẢNG VIÊN HƯỚNG DẪN: TS. Trầnvũbình Sinhviênthựchiện: lêtrunghiếu Phùngchínguyên Lêdươngcôngphúc XÂY DỰNG KIẾN TRÚC CỔNG THÔNG TIN TÌM VIỆC KHOÁ LUẬN TỐT NGHIỆP 09/01/2012
Giới Thiệu Bài Toán Kiến Trúc Bàitoánkiếntrúctổchứcvà so khớpthông tin
Sự linh hoạt tập thuộc tính (attribute) của một đối tượng • Thông tin của 1 đối tượng • Nhiều thuộc tính (attribute) thay đổi • Tùy theo góc độ người nhìn (view) về đối tượng đó • Khi thiết kế thông tin 1 đối tượng: • Tập thuộc tính bị cố định • Gócnhìntheosốlượngtậpthuộctính • Vd: //Phúc • Gócnhìntheothứtựcáctậpthuộctính <đối tượng> Product
Sự tổ chức thông tin của một đối tượng • Đượctổchức + lưutrữmộtcáchđadạng • Theo nhiềumôhìnhkhácnhau (data modeling) • Phụthuộcvàođặcthùcủađốitượng thông tin vàchiếnlượccủanhàpháttriểnphầnmềm. Đối tượng
Nghiệp vụ tìm kiếm & so khớp thông tin • Có nhu cầu cần thiết & phổ biến • Ví dụ: Tìm việc làm, tìm bạn, tìm kiếm sản phẩm…
Bài toán kiến trúc #1 • Thông tin mộtđốitượng (attributes) cầnđượctổchức linh hoạt • Thông tin mộtđốitượngđượctổchức & lưu trữ đa dạng (datamodeling) • Phầnmềmnghiệpvụvềtìmkiếmvà so khớpthông tin cónhucầuphổbiến • Làmthếnàothiếtkếmộtkiếntrúcphầnmềm chung cóthểtổchức thông tin mộtcách linh hoạtđảmbảokhả năng tìmkiếmvà so khớp
Bài toán kiến trúc #2 • Thông tin mộtđốitượngđượctổchứclinhhoạt (tậphợp/thứtự) • Để so khớpgiữahaiđốitượngvớinhaucầncósựđồngbộgiữahaiđốitượng => Làmthếnàokiếntrúccóthể so khớpgiữacácđốitượngthông tin đượctổchứclinhhoạt Đốitượng A Đốitượng B = ?
Bài toán kiến trúc #3 • Lợiíchcủakhaithácdữliệu: giúpđưaracácthông tin hữuích, mangtínhquyếtđịnh • Khithựchiện Data mining: cầnxácđịnhtậpdữliệucầnkhaithác, cónhữngthuộctính (attributes) đượcxácđịnhrõ • Nhưngtập attributes củamộtđốitượngthìlinhhoạt, khôngxácđịnhtrước. • Làmthếnàothiếtkếtrúchỗtrợviệckhaithácdữliệukhithông tin củađốitượngcótậpthuộctínhlinhhoạt, khôngxácđịnhtrước
GiảiQuyếtBàiToán Giảiquyếtbàitoánkiếntrúcnóitrên
GiảiPhápBàiToán 1 Làmthếnàothiếtkếmộtkiếntrúcphầnmềm chung cóthểtổchức thông tin mộtcách linh hoạtđảmbảokhả năng tìmkiếmvà so khớp
Giải pháp tăng sự linh hoạt các thuộc tính #1 • Sử dụng nguyên lý tập hợp Composition để tăng khả năng linh hoạt (flexibility) các thuộc tính của một đối tượng inheritance B = {B1, B2, A1, A2} composition B = { B1, B2, A1, A2, C1, C2, … N)
Giải pháp tạo sự linh hoạt về thứ tự thuộc tính của đối tượng • aaa
Giải pháp mô tả các thuộc tính của đối tượng bằng kỹ thuật tagging • Vấnđề: • Thông tin củađốitượngđượctổchứcđadạngtheonhiềumôhình (data modeling) -> structured • Khôngcầnthiếttấtcảdữliệugiúpnghiệpvụtìmkiếm & so khớpthông tin cácđốitượngvớinhau • Giảipháp: sửdụng Tag • Tag (metadata) làtừkhóa phi cấutrúc • Tagging cácdữliệucầnthiết • Môtảthông tin củamộtđốitượngmộtcáchlinhhoạt
Giải pháp tổ chức lại thông tin sử dụng taxonomy #1 • Taxonomy • Giải pháp • Sử dụng Hierarchical • Vấn đề: • Sau khi phân tả và mô tả thông tin đối tượng bằng các tag (un-structured) • Cần tái cấu trúc lại thông tin (structured) • Đảm bảo các đối tượng có khả năng so khớp với nhau • Đảm bảo khả năng mở rộng (extensibility)
Giải pháp tổ chức lại thông tin sử dụng taxonomy #2 <Object> Deep Level 1 2 3
Kết luận giải pháp bài toán #1 • Vấnđề: • Saukhiphântảvàmôtảthông tin đốitượngbằngcác tag (un-structured) • Cầntáicấutrúclạithông tin (structured) • Đảmbảocácđốitượngcókhảnăng so khớpvớinhau • Đảmbảokhảnăngmởrộng (extensibility)
GiảiPhápBàiToán2 Thông tin đốitượngđượclưutrữlinhhoạt. Làmthếnàothiếtkếmộtkiếntrúcphầnmềmcóthểso khớpcácthông tin nàyvớinhau.
Giảipháp so khớpthông tin theotiêuchí • Thông tin đượctổchứclinhhoạtđượctự do địnhnghĩa Cầnxácđịnhmứcđộtươngquangiữacác attribute vớinhau Vídụ: “C#” và “C# 4.0” “Giáodục” và “Education” • Tạosựtươngđồnggiữacácđốitượngthông qua “Classification Node” Mứcđộtươngquan ?
Quytrình so khớpthông tin • Absolute Match • Similarity Match • Sound-ex Match
Kết luận giải pháp bài toán #2 Vấnđề • Đểso khớpgiữahaiđốitượngvớinhaucầncósựđồngbộvềcácthuộctínhcủađốitượng • Thông tin linhhoạt, đượctự do địnhnghĩa Giảipháp • “Classification Node” tạosựtươngđồngtrongviệcmôtảthông tin vềđốitượng • Similarity Match giảiquyết so khớpcác attribute cómứcđộtươngquan
GiảiPhápBàiToán3 Làmthếnàothiếtkếkiếntrúchỗtrợviệc khai thácdữliệu khi thông tin củađốitượngcótậpthuộctính linh hoạt, không xácđịnhtrước
Giảiphápkiếntrúchỗtrợ Data mining • Xác định tập attribute của các object có những thông tin chung • Xử lý tập attribute bằng Pivot transformation • // Tag Attribute Object
Pivot Transformation <Job> Developer <Job> Tester
Kếtluậngiảiphápbàitoán 3 • Khảnăngxuấtracáctập training set từtập attribute linhhoạtcủanhữngđốitượngtươngđồng • Táicấutrúctập attribute bằng decision tree • Đảmbảotínhlinhhoạttrongviệcchọnthuộctínhkhaithácdữliệu
JobZoom framework Kiếntrúccổngthông tin tìmviệcJobZoom framework đượcápdụngtừgiảiphápcủabàitoánkiếntrúcnóitrên.
Component tổchứcthông tin linhhoạt • Tagging & Mapping
Component so khớp thông tin • Storage Model • Processing model • Matching giữa đối tượng thông tin Hồ sơ ứng viên & Công việc • Kết quả trả về: • Điểm theo tỷ lệ phần trăm % • Danh sách các attribute absolute matching • Danh sách các attribute có khả năng matching
Data Mining Engine Pivot Storage Server Analysis Services Web Server
Kếtquảđạtđược • Kiếntrúcphầnmềmgiảiquyếtnhucầulưutrữthông tin nhiều, đadạng, dễdàngtrongviệctìmkiếmvà so khớp: • Tổchứcthông tin linhđộng. Lưutrữthông tin dướidạngcâyđacấpvàcómứcđộtươngquangiữacác tag. • Hệthống so khớpkếthợpmứcđộtươngquangiữacác tag • Kiếntrúcdễdàngtriểnkhai, mởrộng • Hiệunăngcủahệthống • Khắcphụchạnchếcủa “Microsoft Analysis Services”.
Kếtquảđạtđược • VềJobZoom framework: • Tìmkiếmcôngviệcphùhợpnhanhchóng, viết CV dễdànghơndựavàogợi ý từkếtquảkhaithácdữliệuvàhệthống so khớp • Đăngthông tin yêucầucôngviệcmộtcách chi tiết, lựachọnứngviênphùhợpvớivịtrílàmviệcthông qua hệthống so khớpvàcâyquyếtđịnh. • Dễdàngtriểnkhai, mởrộng, kếthợpđượcvớiphươngphápkhaithácdữliệu “câyquyếtđịnh” tạonềntảngcảithiệnkhảnăngthíchứngcủahệthốngvớitừngloạingànhnghề.
Nhữnghạnchế • Câyđacấpcòn ở mứcthấp • Chưađượctriểnkhaitrongthựctế