Đề tài Vấn đề xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục là các từ ghép

Tài liệu Đề tài Vấn đề xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục là các từ ghép: Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 1 NguyӉn Trung HiӃu - 0112216 /ӠI CҦM ѪN Chúng em xin gӣi lӡi cҧm ѫn chân thành nhҩt ÿӃn thҫy Hӗ Bҧo Quӕc, ngѭӡi ÿã Wұn tình hѭӟng dүn, giúp ÿӥ chúng em trong suӕt thӡi gian thӵc hiӋn luұn văn này. Chúng con cҧm ѫn Cha, Mҽ và gia ÿình, nhӳng ngѭӡi ÿã dҥy dӛ, khuyӃn khích, ÿӝng viên chúng con trong nhӳng lúc khó khăn, tҥo mӑi ÿLӅu kiӋn cho chúng con nghiên cӭu hӑc tұp. Chúng em cҧm ѫn các thҫy, cô trong khoa Công NghӋ Thông Tin ÿã dìu dҳt, giҧng dҥy chúng em, giúp chúng em có nhӳng kiӃn thӭc quý báu trong nhӳng năm hӑc qua. &ҧm ѫn chӏ Lê Thúy Ngӑc và các bҥn ÿã tұn tình ÿóng góp ý kiӃn cho luұn văn Fӫa chúng tôi. 0һc dù rҩt cӕ gҳng nhѭng luұn văn cӫa chúng em không tránh khӓi sai sót, mong nhұn ÿѭӧc sӵ thông cҧm và góp ý cӫa thҫy cô và các bҥn. Tháng 7 năm 2005 Sinh viên NguyӉn Thӏ Thanh Hà – NguyӉn Trung HiӃu Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng Vi...

pdf118 trang | Chia sẻ: hunglv | Lượt xem: 928 | Lượt tải: 0download
Bạn đang xem trước 20 trang mẫu tài liệu Đề tài Vấn đề xây dựng hệ thống tìm kiếm thông tin tiếng Việt dựa trên các chỉ mục là các từ ghép, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 1 NguyӉn Trung HiӃu - 0112216 /ӠI CҦM ѪN Chúng em xin gӣi lӡi cҧm ѫn chân thành nhҩt ÿӃn thҫy Hӗ Bҧo Quӕc, ngѭӡi ÿã Wұn tình hѭӟng dүn, giúp ÿӥ chúng em trong suӕt thӡi gian thӵc hiӋn luұn văn này. Chúng con cҧm ѫn Cha, Mҽ và gia ÿình, nhӳng ngѭӡi ÿã dҥy dӛ, khuyӃn khích, ÿӝng viên chúng con trong nhӳng lúc khó khăn, tҥo mӑi ÿLӅu kiӋn cho chúng con nghiên cӭu hӑc tұp. Chúng em cҧm ѫn các thҫy, cô trong khoa Công NghӋ Thông Tin ÿã dìu dҳt, giҧng dҥy chúng em, giúp chúng em có nhӳng kiӃn thӭc quý báu trong nhӳng năm hӑc qua. &ҧm ѫn chӏ Lê Thúy Ngӑc và các bҥn ÿã tұn tình ÿóng góp ý kiӃn cho luұn văn Fӫa chúng tôi. 0һc dù rҩt cӕ gҳng nhѭng luұn văn cӫa chúng em không tránh khӓi sai sót, mong nhұn ÿѭӧc sӵ thông cҧm và góp ý cӫa thҫy cô và các bҥn. Tháng 7 năm 2005 Sinh viên NguyӉn Thӏ Thanh Hà – NguyӉn Trung HiӃu Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 2 NguyӉn Trung HiӃu - 0112216 NHҰN XÉT CӪA GIÁO VIÊN HѬӞNG DҮN …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… ………………………………………………………………………………….... …………………………………………………………………………………… Ngày…… tháng……năm 2005 Ký tên Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 3 NguyӉn Trung HiӃu - 0112216 NHҰN XÉT CӪA GIÁO VIÊN PHҦN BIӊN …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… ………………………………………………………………………………….... …………………………………………………………………………………… Ngày…… tháng……năm 2005 Ký tên Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 4 NguyӉn Trung HiӃu - 0112216 0ӨC LӨC DANH SÁCH CÁC BҦNG...................................................................................8 DANH SÁCH CÁC HÌNH VӀ..............................................................................8 Phҫn 1 : TÌM HIӆU LÝ THUYӂT ..........................................................................11 Chѭѫng 1: TӘNG QUAN Vӄ TÌM KIӂM THÔNG TIN ...................................11 1. Giӟi thiӋu vӅ tìm kiӃm thông tin ......................................................................11 1.1 Khái niӋm vӅ tìm kiӃm thông tin ................................................................11 1.2 Mӝt sӕ vҩn ÿӅ trong viӋc tìm kiӃm thông tin: .............................................11 2. HӋ tìm kiӃm thông tin – IRS ............................................................................12 3. Các thành phҫn cӫa mӝt hӋ tìm kiӃm thông tin [1.1] ........................................13 4. So sánh IRS vӟi các hӋ thӕng thông tin khác ...................................................14 4.1 HӋ quҧn trӏ cѫ sӣ dӳ liӋu (DBMS)..............................................................15 4.2 HӋ quҧn lý thông tin (IMS) ........................................................................15 4.3 HӋ hӛ trӧ ra quyӃt ÿӏnh (DSS)....................................................................16 4.4 HӋ trҧ lӡi câu hӓi (QAS) ............................................................................16 4.5 So sánh IRS vӟi các hӋ thӕng thông tin khác..............................................17 Chѭѫng 2: XÂY DӴNG MӜT Hӊ THӔNG TÌM KIӂM THÔNG TIN............18 1. KiӃn trúc cӫa hӋ tìm kiӃm thông tin. [1.3]........................................................18 2. Mӝt sӕ mô hình ÿӇ xây dӵng mӝt hӋ tìm kiӃm thông tin [1.2]..........................19 2.1 Mô hình không gian vector ........................................................................19 2.2 Tìm kiӃm Boolean .....................................................................................21 2.3 Tìm kiӃm Boolean mӣ rӝng .......................................................................22 2.4 Mӣ rӝng trong viӋc thêm vào trӑng sӕ cӫa câu hӓi .....................................23 2.4.1 Mӣ rӝng cho sӕ tӯ tuǤ ý ......................................................................23 2.4.2 Thêm toán tӱ tӵÿӝng ..........................................................................24 2.5 Mô hình xác suҩt........................................................................................24 2.6 Ĉánh giá chung vӅ các mô hình .................................................................25 3. Các bѭӟc ÿӇ xây dӵng mӝt hӋ tìm kiӃm thông tin. [3.2]...................................25 3.1 Tách tӯ tӵÿӝng cho tұp các tài liӋu............................................................25 3.2 Lұp chӍ mөc cho tài liӋu.............................................................................25 3.3 Tìm kiӃm ...................................................................................................26 3.4 Sҳp xӃp các tài liӋu trҧ vӅ (Ranking) ..........................................................26 4. Nhӳng khó khăn trong viӋc xây dӵng mӝt hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt .....................................................................................................................26 4.1 Khó khăn trong viӋc tách tӯ tiӃng ViӋt .......................................................27 4.2 Vҩn ÿӅ bҧng mã tiӃng ViӋt .........................................................................27 Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 5 NguyӉn Trung HiӃu - 0112216 4.3 Các khó khăn khác .....................................................................................27 Chѭѫng 3: TÁCH TӮ TӴĈӜNG........................................................................29 1. Tách tӯ trong TiӃng Anh .................................................................................29 2. Tách tӯ trong TiӃng ViӋt .................................................................................29 2.1 Mӝt sӕÿһc ÿLӇm chính vӅ tӯ tiӃng ViӋt [2.2]..............................................29 2.1.1 TiӃng...................................................................................................29 2.1.2 Tӯ .......................................................................................................30 2.2 Tách tӯ tӵÿӝng tiӃng ViӋt .........................................................................30 3. Các phѭѫng pháp tách tӯ tiӃng ViӋt.................................................................30 3.1 fnTBL (Fast Transformation-based learning) [3.1].....................................30 3.1.1 Mô tҧ...................................................................................................30 3.1.2 Áp dөng tách tӯ tiӃng ViӋt...................................................................31 3.2 Longest Matching [1.4]..............................................................................37 3.3 KӃt hӧp giӳa fnTBL và Longest Matching.................................................37 Chѭѫng 4: LҰP CHӌ MӨC ..................................................................................38 1. Khái quát vӅ hӋ thӕng lұp chӍ mөc...................................................................38 2. Phѭѫng pháp lұp chӍ mөc [1.1] ........................................................................38 2.1 Xác ÿӏnh các tӯ chӍ mөc.............................................................................38 2.2 Các phѭѫng pháp tính trӑng sӕ cӫa tӯ ........................................................40 2.2.1 Tҫn sӕ tài liӋu nghӏch ÿҧo....................................................................40 2.2.2 Ĉӝ nhiӉu tín hiӋu (The Signal – Noise Ratio) ......................................40 2.2.3 Giá trӏ phân biӋt tӯ (The Term Discrimination Value) .........................42 2.3 Lұp chӍ mөc tӵÿӝng cho tài liӋu tiӃng Anh................................................43 3. Lұp chӍ mөc cho tài liӋu tiӃng ViӋt ..................................................................45 4. Tұp tin nghӏch ÿҧo tài liӋu ...............................................................................46 4.1 Phân biӋt giӳa tұp tin nghӏch ÿҧo và tұp tin trӵc tiӃp ..................................46 4.2 Tҥi sao sӱ dөng tұp tin nghӏch ÿҧo ÿӇ lұp chӍ mөc .....................................47 Phҫn 2 : PHÂN TÍCH VÀ THIӂT Kӂ ....................................................................49 Chѭѫng 5: PHÂN TÍCH.......................................................................................49 1. Sѫÿӗ UseCase hӋ thӕng ..................................................................................49 2. Sѫÿӗ Lӟp........................................................................................................51 2.1 Sѫÿӗ các lӟp thӇ hiӋn................................................................................51 2.2 Sѫÿӗ các lӟp xӱ lý ....................................................................................52 3. Tách tӯ ............................................................................................................53 3.1 Sѫÿӗ UseCase...........................................................................................53 3.2 Sѫÿӗ Tuҫn tӵ ............................................................................................53 Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 6 NguyӉn Trung HiӃu - 0112216 3.3 Sѫÿӗ Cӝng tác...........................................................................................54 3.4 Sѫÿӗ Lӟp ..................................................................................................54 4. Lұp chӍ mөc.....................................................................................................55 4.1 Sѫÿӗ UseCase...........................................................................................55 4.2 Sѫÿӗ Tuҫn tӵ ............................................................................................56 4.2.1 Tҥo mӟi chӍ mөc .................................................................................56 4.2.2 Cұp nhұt chӍ mөc.................................................................................57 4.3 Sѫÿӗ Cӝng tác...........................................................................................58 4.3.1 Tҥo mӟi chӍ mөc .................................................................................58 4.3.2 Cұp nhұt chӍ mөc.................................................................................59 4.4 Sѫÿӗ Lӟp ..................................................................................................60 5. Tìm kiӃm.........................................................................................................61 5.1 Sѫÿӗ UseCase...........................................................................................61 5.2 Sѫÿӗ Tuҫn tӵ ............................................................................................61 5.3 Sѫÿӗ Cӝng tác...........................................................................................62 5.4 Sѫÿӗ Lӟp ..................................................................................................63 Chѭѫng 6: THIӂT Kӂ VÀ CÀI ĈҺT ..................................................................64 1. Cҩu trúc lѭu trӳ dӳ liӋu....................................................................................64 1.1 Tұp tin lѭu nӝi dung tài liӋu .......................................................................64 1.1.1 Cҩu trúc DTD / XSD ...........................................................................64 1.1.2 Tài liӋu XML ......................................................................................66 1.2 Tұp tin sau khi tách tӯ tài liӋu ....................................................................67 1.2.1 Cҩu trúc DTD / XSD ...........................................................................67 1.2.2 Tài liӋu XML ......................................................................................68 1.3 Tұp tin chӭa các tӯ không thӇ hiӋn nӝi dung cӫa văn bҧn (stop list) ...........70 1.3.1 Cҩu trúc DTD / XSD ...........................................................................70 1.3.2 Tài liӋu XML ......................................................................................71 1.4 Tұp tin chӍ mөc ÿҧo ( Inverted ). ................................................................71 1.4.1 Cҩu trúc DTD / XSD ...........................................................................71 1.4.2 Tài liӋu XML ......................................................................................73 1.5 Tұp tin sau khi tách tӯ câu hӓi....................................................................74 1.5.1 Cҩu trúc DTD / XSD ...........................................................................74 1.5.2 Tài liӋu XML ......................................................................................75 1.6 Tұp tin chӭa các tӯ cӫa câu hӓi sau khi loҥi bӓ các tӯ trong danh sách StopList ...........................................................................................................76 1.6.1 Cҩu trúc DTD / XSD ...........................................................................76 1.6.2 Tài liӋu XML ......................................................................................77 1.7 Tұp tin chӭa các tӯ trong câu hӓi và các tài liӋu liên quan..........................77 1.7.1 Cҩu trúc DTD / XSD ...........................................................................77 Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 7 NguyӉn Trung HiӃu - 0112216 1.7.2 Tài liӋu XML ......................................................................................79 1.8 Tұp tin chӭa ÿӝ tѭѫng quan giӳa câu hӓi và các tài liӋu .............................80 1.8.1 Cҩu trúc DTD / XSD ...........................................................................80 1.8.2 Tài liӋu XML ......................................................................................82 2. Chi tiӃt các lӟp ÿӕi tѭӧng ................................................................................83 2.1 Các lӟp trong quá trình tách tӯ ...................................................................83 2.1.1 Sѫ ÿӗ các lӟp......................................................................................83 2.1.2 Lӟp tách tӯ ghép..................................................................................83 2.1.3 Lӟp tách tӯ ..........................................................................................86 2.1.4 Lӟp giao diӋn tách tӯ...........................................................................89 2.2 Các lӟp trong quá trình lұp chӍ mөc ...........................................................91 2.2.1 Sѫÿӗ các lӟp.......................................................................................91 2.2.2 Lӟp lұp chӍ mөc...................................................................................92 2.2.3 Lӟp giao diӋn tҥo mӟi chӍ mөc ............................................................94 2.2.4 Lӟp giao diӋn cұp nhұt chӍ mөc ...........................................................96 2.3 Các lӟp trong quá trình tìm kiӃm................................................................98 2.3.1 Sѫÿӗ các lӟp.......................................................................................98 2.3.2 Lӟp tìm kiӃm.......................................................................................99 2.3.3 Lӟp giao diӋn tìm kiӃm .....................................................................105 3. Mӝt sӕ màn hình giao diӋn khác ....................................................................109 3.1 Màn hình chính cӫa chѭѫng trình.............................................................109 3.2 Màn hình tìm kiӃm nhiӅu câu hӓi .............................................................110 3.3 Màn hình tìm kiӃm chính ( giao diӋn Web) ..............................................112 3.4 Màn hình trҧ vӅ các tài liӋu tìm ÿѭӧc ( giao diӋn Web) ............................113 3.5 Màn hình chi tiӃt cӫa mӝt tài liӋu ( giao diӋn Web)..................................114 Phҫn 3 : TӘNG KӂT..............................................................................................115 1. Chѭѫng trình thӱ nghiӋm...............................................................................115 2. Ĉánh giá kӃt quҧÿҥt ÿѭӧc ............................................................................. 115 3. Hѭӟng phát triӇn............................................................................................116 TÀI LIӊU THAM KHҦO .................................................................................117 1. Sách............................................................................................................... 117 2. Luұn văn........................................................................................................117 3. Website ......................................................................................................... 117 Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 8 NguyӉn Trung HiӃu - 0112216 DANH SÁCH CÁC BҦNG %ҧng 1-1 So sánh IRS vӟi các hӋ thӕng thông tin khác ..........................................................17 %ҧng 4-1 Cách tұp tin nghӏch ÿҧo lѭu trӳ...............................................................................47 %ҧng 4-2 Cách tұp tin trӵc tiӃp lѭu trӳ...................................................................................47 %ҧng 4-3 Thêm mӝt tài liӋu mӟi vào tұp tin nghӏch ÿҧo.........................................................48 %ҧng 5-1 Danh sách các Actor...............................................................................................50 %ҧng 5-2 Danh sách các UseCase ..........................................................................................50 DANH SÁCH CÁC HÌNH VӀ Hình 1-1 Môi trѭӡng cӫa hӋ tìm kiӃm thông tin .....................................................................13 Hình 1-2 Tәng quan vӅ chӭc năng cӫa mӝt hӋ tìm kiӃm thông tin..........................................14 Hình 2-1 HӋ tìm kiӃm thông tin tiêu biӇu...............................................................................18 Hình 3-1 Quá trình hӑc..........................................................................................................35 Hình 3-2 Giai ÿRҥn xác ÿӏnh tӯ cho tài liӋu mӟi.....................................................................36 Hình 4-1 Các tӯÿѭӧc sҳp theo thӭ tӵ ....................................................................................39 Hình 4-2 Quá trình chӑn tӯ làm chӍ mөc................................................................................45 Hình 5-1 Sѫÿӗ Use-case cӫa hӋ thӕng...................................................................................49 Hình 5-2 Sѫÿӗ các lӟp thӇ hiӋn.............................................................................................51 Hình 5-3 Sѫÿӗ các lӟp xӱ lý .................................................................................................52 Hình 5-4 Sѫÿӗ Use-case tách tӯ............................................................................................53 Hình 5-5 Sѫÿӗ tuҫn tӵ tách tӯ...............................................................................................53 Hình 5-6 Sѫÿӗ cӝng tác tách tӯ.............................................................................................54 Hình 5-7 Sѫÿӗ lӟp tách tӯ.....................................................................................................54 Hình 5-8 Sѫÿӗ use-case lұp chӍ mөc .....................................................................................55 Hình 5-9 Sѫÿӗ tuҫn tӵ tҥo mӟi chӍ mөc ................................................................................56 Hình 5-10 Sѫÿӗ tuҫn tӵ cұp nhұt chӍ mөc ............................................................................57 Hình 5-11 Sѫÿӗ cӝng tác tҥo mӟi chӍ mөc ............................................................................58 Hình 5-12 Sѫÿӗ cӝng tác cұp nhұt chӍ mөc ...........................................................................59 Hình 5-13 Sѫÿӗ lӟp lұp chӍ mөc ...........................................................................................60 Hình 5-14 Sѫÿӗ use-case tìm kiӃm .......................................................................................61 Hình 5-15 Sѫÿӗ tuҫn tӵ tìm kiӃm..........................................................................................61 Hình 5-16 Sѫÿӗ cӝng tác tìm kiӃm .......................................................................................62 Hình 5-17 Sѫÿӗ lӟp tìm kiӃm ...............................................................................................63 Hình 6-1 Sѫÿӗ lӟp tách tӯ.....................................................................................................83 Hình 6-2 Lӟp tách tӯ ghép.....................................................................................................83 Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 9 NguyӉn Trung HiӃu - 0112216 Hình 6-3 Lӟp tách tӯ .............................................................................................................86 Hình 6-4 Lӟp giao diӋn tách tӯ ..............................................................................................89 Hình 6-5 Màn hình tách tӯ.....................................................................................................89 Hình 6-6 Màn hình chi tiӃt tách tӯ .........................................................................................90 Hình 6-7 Sѫÿӗ lӟp lұp chӍ mөc .............................................................................................91 Hình 6-8 Lӟp lұp chӍ mөc......................................................................................................92 Hình 6-9 Lӟp giao diӋn tҥo mӟi chӍ mөc................................................................................94 Hình 6-10 Màn hình tҥo mӟi chӍ mөc ....................................................................................95 Hình 6-11 Lӟp Màn hình cұp nhұt chӍ mөc............................................................................96 Hình 6-12 Màn hình cұp nhұt chӍ mөc ...................................................................................97 Hình 6-13 Sѫÿӗ lӟp tìm kiӃm ...............................................................................................98 Hình 6-14 Lӟp xӱ lý tìm kiӃm ...............................................................................................99 Hình 6-15 Lӟp giao diӋn tìm kiӃm.......................................................................................105 Hình 6-16 Màn hình tìm kiӃm .............................................................................................106 Hình 6-17 Xem tӯ khóa câu hӓi...........................................................................................106 Hình 6-18 Xem tӯ khóa tài liӋu ...........................................................................................107 Hình 6-19 Màn hình chính...................................................................................................109 Hình 6-20 Màn hình tìm kiӃm nhiӅu câu hӓi........................................................................110 Hình 6-21 Giao diӋn tìm kiӃm trên Web ..............................................................................112 Hình 6-22 Giao diӋn các tài liӋu trҧ vӅ sau khi tìm kiӃm ......................................................113 Hình 6-23 Giao diӋn chi tiӃt nӝi dung cӫa tài liӋu ................................................................114 Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 10 NguyӉn Trung HiӃu - 0112216 0ӢĈҪU Trong thӡi ÿҥi bùng nә thông tin nhѭ hiӋn nay, thông tin ÿѭӧc lѭu trӳ trên máy tính ngày càng nhiӅu do ÿó viӋc tìm kiӃm thông tin chính xác là nhu cҫu thiӃt yӃu ÿӕi Yӟi mӑi ngѭӡi trong mӑi lƭnh vӵc. Internet hiӋn nay ÿã trӣ thành mӝt kho tѭ liӋu khәng Oӗ mà viӋc tìm kiӃm thông tin trên kho tѭ liӋu này cҫn phҧi ÿѭӧc hӛ trӧ bӣi các công cө tìm kiӃm (search engine) tӕt. Các hӋ thӕng tìm kiӃm thông tin thông dөng nhѭ Google, Yahoo Search ÿã ÿáp ӭng ÿѭӧc phҫn nào nhu cҫu ÿó cӫa mӑi ngѭӡi. Tuy nhiên, các hӋ thӕng này ÿѭӧc xây dӵng ÿӇ xӱ lý và tìm kiӃm các văn bҧn tiӃng Châu Âu, chúng chѭa thұt sӵ phù hӧp cho các văn bҧn tiӃng ViӋt. Do ÿó nhu cҫu phҧi có mӝt công cө tìm kiӃm “hiӇu” và xӱ lý tӕt các văn bҧn tíӃng ViӋt. Các hӋ tìm kiӃm thông tin ÿӅu phҧi thӵc hiӋn giai ÿRҥn lұp chӍ mөc (indexing) cho văn bҧn ÿӇ trích các tӯ chӍ mөc (index term) biӇu diӉn tӕt nhҩt nӝi dung cӫa văn Eҧn. Giai ÿRҥn này phө thuӝc vào ngôn ngӳ cӫa văn bҧn và phѭѫng pháp xӱ lý tӵÿӝng ngôn ngӳÿó. HiӋn nay chѭa có nhiӅu hӋ thӕng tìm kiӃm thông tin trên kho tài liӋu tiӃng ViӋt có khai thác các ÿһc trѭng cӫa tiӃng ViӋt cho viӋc lұp chӍ mөc. Vì vұy mөc tiêu cӫa luұn văn này nhҵm xây dӵng mӝt hӋ thӕng tìm kiӃm thông tin bҵng tiӃng ViӋt có sӱ dөng các kӃt quҧ cӫa xӱ lý ngôn ngӳ tӵ nhiên tӵÿӝng ÿӇ xác ÿӏnh ÿѭӧc các chӍ mөc là các tӯ (word) hay tӯ ghép (compound word) cӫa tiӃng ViӋt. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 11 NguyӉn Trung HiӃu - 0112216 Phҫn 1 : TÌM HIӆU LÝ THUYӂT Chѭѫng 1: 7ӘNG QUAN Vӄ TÌM KIӂM THÔNG TIN 1. Giӟi thiӋu vӅ tìm kiӃm thông tin 1.1 Khái niӋm vӅ tìm kiӃm thông tin Tìm kiӃm thông tin là tìm kiӃm trong mӝt tұp tài liӋu ÿӇ lҩy ra các thông tin mà ngѭӡi tìm kiӃm quan tâm. 1.2 0ӝt sӕ vҩn ÿӅ trong viӋc tìm kiӃm thông tin: .Ӈ tӯ nhӳng năm 40, các vҩn ÿӅ trong viӋc lѭu trӳ thông tin và tìm kiӃm thông tin ÿã thu hút sӵ chú ý rҩt lӟn. Vӟi mӝt lѭӧng thông tin khәng lӗ thì viӋc tìm kiӃm chính xác và nhanh chóng càng trӣ nên khó khăn hѫn. Vӟi sӵ ra ÿӡi cӫa máy tính, rҩt nhiӅu ý tѭӣng lӟn ÿѭӧc ÿѭa ra nhҵm cung cҩp mӝt hӋ thӕng tìm kiӃm thông minh và chính xác. Tuy nhiên, vҩn ÿӅ tìm kiӃm sao cho hiӋu quҧ vүn chѭa ÿѭӧc giҧi quyӃt. 9Ӆ nguyên tҳc, viӋc lѭu trӳ thông tin và tìm kiӃm thông tin thì ÿѫn giҧn. Giҧ sӱ có mӝt kho chӭa các tài liӋu và mӝt ngѭӡi muӕn tìm các tài liӋu liên quan ÿӃn yêu cҫu Fӫa mình. Ngѭӡi ÿó có thӇÿӑc tҩt cҧ các tài liӋu trong kho, giӳ lҥi các tài liӋu liên quan và bӓÿi các tài liӋu không liên quan. Rõ ràng giҧi pháp này không thӵc tӃ bӣi vì tӕn rҩt nhiӅu thӡi gian. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 12 NguyӉn Trung HiӃu - 0112216 9ӟi sӵ ra ÿӡi cӫa máy vi tính tӕc ÿӝ cao, máy tính có thӇ “ÿӑc” thay cho con ngѭӡi ÿӇ trích ra các tài liӋu có liên quan trong toàn bӝ tұp dӳ liӋu. Tuy nhiên vҩn ÿӅ lúc này là làm sao ÿӇ xác ÿӏnh ÿѭӧc tài liӋu nào liên quan ÿӃn câu hӓi. Mөc ÿích cӫa Pӝt hӋ thӕng tìm kiӃm thông tin tӵÿӝng là truy lөc ÿѭӧc tҩt cҧ các tài liӋu có liên quan ÿӃn yêu cҫu. 2. +Ӌ tìm kiӃm thông tin – IRS Sau ÿây là ÿӏnh nghƭa vӅ hӋ thӕng tìm kiӃm thông tin cӫa mӝt sӕ tác giҧ: [2.1] Salton (1989): “HӋ thӕng tìm kiӃm thông tin xӱ lý các tұp tin lѭu trӳ và nhӳng yêu cҫu vӅ thông tin, xác ÿӏnh và tìm tӯ các tұp tin nhӳng thông tin phù hӧp vӟi nhӳng yêu cҫu vӅ thông tin. ViӋc truy tìm nhӳng thông tin ÿһc thù phө thuӝc vào sӵ tѭѫng tӵ giӳa các thông tin ÿѭӧc lѭu trӳ và các yêu cҫu, ÿѭӧc ÿánh giá bҵng cách so sánh các giá trӏ cӫa các thuӝc tính ÿӕi vӟi thông tin ÿѭӧc lѭu trӳ và các yêu cҫu vӅ thông tin.” Kowalski (1997) : “HӋ thӕng truy tìm thông tin là mӝt hӋ thӕng có khҧ năng lѭu trӳ, truy tìm và duy trì thông tin. Thông tin trong nhӳng trѭӡng hӧp này có thӇ bao gӗm văn bҧn, hình ҧnh, âm thanh, video và nhӳng ÿӕi tѭӧng ÿa phѭѫng tiӋn khác.” HiӇu ÿѫn giҧn KӋ thӕng tìm kiӃm thông tin là mӝt hӋ thӕng hӛ trӧ cho ngѭӡi Vӱ dөng tìm kiӃm thông tin mӝt cách nhanh chóng và dӉ dàng. Ngѭӡi sӱ dөng có thӇÿѭa vào nhӳng câu hӓi, nhӳng yêu cҫu (dҥng ngôn ngӳ tӵ nhiên) và hӋ thӕng sӁ tìm kiӃm trong tұp các tài liӋu (dҥng ngôn ngӳ tӵ nhiên) ÿã ÿѭӧc lѭu trӳÿӇ tìm ra nhӳng Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 13 NguyӉn Trung HiӃu - 0112216 tài liӋu có liên quan, sau ÿó sӁ sҳp xӃp các tài liӋu theo mӭc ÿӝ liên quan giҧm dҫn và trҧ vӅ cho ngѭӡi sӱ dөng. 3. Các thành phҫn cӫa mӝt hӋ tìm kiӃm thông tin [1.1] *ӗm: tұp các tài liӋu (DOCS) ÿã ÿѭӧc lѭu trӳ trong kho dӳ liӋu, tұp các yêu cҫu (REQS) cӫa ngѭӡi dùng, và mӝt sӕ phѭѫng pháp tính ÿӝ tѭѫng quan (SIMILAR) ÿӇ xác ÿӏnh các tài liӋu ÿáp ӭng cho các yêu cҫu. Hình 1-1 Môi trѭӡng cӫa hӋ tìm kiӃm thông tin Theo lý thuyӃt thì mӕi liên hӋ giӳa các câu hӓi và các tài liӋu có thӇ so sánh mӝt cách trӵc tiӃp. Nhѭng trên thӵc tӃ thì ÿLӅu này không thӇÿѭӧc vì các câu hӓi và các tұp tài liӋu ÿӅu ӣ dҥng văn bҧn, chӍ có con ngѭӡi ÿӑc vào thì thҩy ngay ÿѭӧc mӕi liên hӋ giӳa chúng, nhѭng ӣÿây chӍ là mӝt hӋ thӕng máy móc không thӇ suy luұn nhѭ con ngѭӡi ÿѭӧc. Chính vì thӃÿӇ xác ÿӏnh ÿѭӧc mӕi liên hӋ giӳa các câu hӓi và các tұp tài liӋu phҧi qua mӝt bѭӟc trung gian. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 14 NguyӉn Trung HiӃu - 0112216 Hình 1-2 Tәng quan vӅ chӭc năng cӫa mӝt hӋ tìm kiӃm thông tin Trѭӟc hӃt chuyӇn ÿәi các câu hӓi thành các tӯ riêng biӋt ÿӫÿӇ biӇu hiӋn cho nӝi dung cӫa câu hӓi gӑi là ngôn ngӳ chӍ mөc (Indexing language - LANG). Tách tӯ trong các tұp tài liӋu và lұp chӍ mөc cho tài liӋu. Lúc này có thӇ so sánh trӵc tiӃp giӳa các tӯ Fӫa câu hӓi và các tӯ chӍ mөc cӫa tұp tài liӋu. Và tӯÿó ta sӁ dӉ dàng hѫn ÿӇ xác ÿӏnh ÿӝ tѭѫng quan giӳa các câu hӓi và tұp tài liӋu. 4. So sánh IRS vӟi các hӋ thӕng thông tin khác +Ӌ thӕng tìm kiӃm thông tin cNJng tѭѫng tӵ nhѭ nhiӅu hӋ thӕng xӱ lý thông tin khác. HiӋn nay các hӋ thӕng thông tin quan trӑng nhҩt là: hӋ quҧn trӏ cѫ sӣ dӳ liӋu (DBMS), hӋ quҧn lý thông tin (MIS), hӋ hӛ trӧ ra quyӃt ÿӏnh (DSS), hӋ trҧ lӡi câu hӓi (QAS) và hӋ tìm kiӃm thông tin (IR). Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 15 NguyӉn Trung HiӃu - 0112216 4.1 +Ӌ quҧn trӏ cѫ sӣ dӳ liӋu (DBMS) %ҩt cӭ hӋ thӕng thông tin tӵÿӝng nào cNJng dӵa trên mӝt tұp các mөc ÿѭӧc lѭu trӳ (gӑi là F˯ sͧ dͷ li͏u) cҫn thiӃt cho viӋc truy cұp. Do ÿó hӋ quҧn trӏ cѫ sӣ dӳ liӋu ÿѫn giҧn là mӝt hӋ thӕng ÿѭӧc thiӃt kӃ nhҵm thao tác và duy trì ÿLӅu khiӇn cѫ sӣ dӳ liӋu. DBMS tә chӭc lѭu trӳ các dӳ liӋu cӫa mình dѭӟi dҥng các bҧng. Mӛi mӝt cѫ sӣ Gӳ liӋu ÿѭӧc lѭu trӳ thành nhiӅu bҧng khác nhau. Mӛi mӝt cӝt trong bҧng là mӝt thuӝc tính, và mӛi mӝt dòng là mӝt bӝ dӳ liӋu cө thӇ. Trong mӛi mӝt bҧng có mӝt thuӝc tính duy nhҩt ÿҥi diӋn cho bҧng, nó không ÿѭӧc trùng lҳp và ta gӑi ÿó là khoá chính. Các Eҧng có mӕi liên hӋ vӟi nhau thông qua các khoá ngoҥi. DBMS có mӝt tұp các lӋnh ÿӇ Kӛ trӧ cho ngѭӡi sӱ dөng truy vҩn ÿӃn dӳ liӋu cӫa mình. Vì vұy muӕn truy vҩn ÿӃn CSDL trong DBMS ta phҧi hӑc hӃt các tұp lӋnh này. Nhѭng ngѭӧc lҥi nó sӁ cung cҩp cho ta các dӳ liӋu ÿҫy ÿӫ và hoàn toàn chính xác. HiӋn nay DBMS ÿѭӧc sӱ dөng rӝng rãi trên thӃ giӟi. Mӝt sӕ DBMS thông dөng : Access, SQL Server, Oracle. 4.2 +Ӌ quҧn lý thông tin (IMS) +Ӌ quҧn lý thông tin là hӋ quҧn trӏ cѫ sӣ dӳ liӋu nhѭng có thêm nhiӅu chӭc nhѭng vӅ viӋc quҧn lý. Nhӳng chӭc năng quҧn lý này phө thuӝc vào giá trӏ cӫa nhiӅu kiӇu dӳ liӋu khác nhau. Nói chung bҩt kǤ hӋ thӕng nào có mөc ÿích ÿһc biӋt phөc vө cho viӋc quҧn lý thì ta gӑi nó là hӋ quҧn lý thông tin. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 16 NguyӉn Trung HiӃu - 0112216 4.3 +Ӌ hӛ trӧ ra quyӃt ÿӏnh (DSS) +Ӌ hӛ trӧ ra quyӃt ÿӏnh sӁ dӵa vào các tұp luұt ÿѭӧc hӑc, tӯ nhӳng luұt ÿã hӑc rút ra nhӳng luұt mӟi, sau khi gһp mӝt vҩn ÿӅ nó sӁ căn cӭ vào vào tұp các luұt ÿӇÿѭa ra nhӳng quyӃt ÿӏnh thay cho con ngѭӡi. +Ӌ thӕng này ÿang ÿѭӧc áp dөng nhiӅu cho công viӋc nhұn dҥng và chuҭn ÿóan EӋnh. 4.4 +Ӌ trҧ lӡi câu hӓi (QAS) +Ӌ trҧ lӡi câu hӓi cung cҩp viӋc truy cұp ÿӃn các thông tin bҵng ngôn ngӳ tӵ nhiên. ViӋc lѭu trӳ cѫ sӣ dӳ liӋu thѭӡng bao gӗm mӝt sӕ lѭӧng lӟn các vҩn ÿӅ liên quan ÿӃn các lƭnh vӵc riêng biӋt và các kiӃn thӭc tәng quát. Câu hӓi cӫa ngѭӡi dùng có thӇӣ dҥng ngôn ngӳ tӵ nhiên. Công viӋc cӫa hӋ trҧ lӡi câu hӓi là phân tích câu truy Yҩn cӫa ngѭӡi dùng, so sánh vӟi các tri thӭc ÿѭӧc lѭu trӳ, và tұp hӧp các vҩn ÿӅ có liên quan lҥi ÿӇÿѭa ra câu trҧ lӡi thích hӧp. Tuy nhiên, hӋ trҧ lӡi câu hӓi chӍ còn ÿang thӱ nghiӋm. ViӋc xác ÿӏnh ý nghƭa Fӫa ngôn ngӳ tӵ nhiên dѭӡng nhѭ vүn là chѭӟng ngҥi lӟn ÿӇ có thӇ sӱ dөng rӝng rãi hӋ thӕng này. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 17 NguyӉn Trung HiӃu - 0112216 4.5 So sánh IRS vӟi các hӋ thӕng thông tin khác IRS DBMS QAS MIS Tìm kiӃm 1ӝi dung trong các tài liӋu. Các phҫn tӱ có kiӇu dӳ liӋu ÿã ÿѭӧc ÿӏnh nghƭa. Các sӵ kiӋn rõ ràng. /ѭu trӳ Các văn bҧn ngôn ngӳ tӵ nhiên. Các phҫn tӱ Gӳ liӋu ӣ Gҥng bҧng. Các sӵ kiӋn rõ ràng và các kiӃn thӭc Wәng quát. ;ӱ lý Các câu truy Yҩn không chính xác. Các câu truy Yҩn có cҩu trúc. Các câu truy Yҩn không giӟi hҥn. Giӕng DBMS nhѭng hӛ trӧ thêm nhӳng thӫ tөc( Tính Wәng, tính trung bình, phép chiӃu…) %ҧng 1-1 So sánh IRS vӟi các hӋ thӕng thông tin khác Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 18 NguyӉn Trung HiӃu - 0112216 Chѭѫng 2: XÂY DӴNG MӜT Hӊ THӔNG TÌM KIӂM THÔNG TIN 1. KiӃn trúc cӫa hӋ tìm kiӃm thông tin. [1.3] 0ӝt hӋ thӕng thông tin tiêu biӇu nhѭ sau: Hình 2-1 HӋ tìm kiӃm thông tin tiêu biӇu +Ӌ thӕng tìm kiӃm thông tin gӗm có 3 bӝ phұn chính : bӝ phұn phân tích văn Eҧn, bӝ phұn lұp chӍ mөc, bӝ phұn so khӟp và sҳp xӃp các tài liӋu trҧ vӅ. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 19 NguyӉn Trung HiӃu - 0112216 (1) %ӝ phұn phân tích văn bҧn: bӝ phұn này có nhiӋm vө phân tích các văn Eҧn thu thұp ÿѭӧc thành các tӯ riêng biӋt. Tѭѫng tӵ, khi ngѭӡi dùng nhұp câu truy vҩn thì câu truy vҩn cNJng ÿѭӧc phân tích thành các tӯ riêng biӋt. (2) %ӝ phұn lұp chӍ mөc : các tӯ trích ÿѭӧc tӯ các văn bҧn thu thұp ÿѭӧc sӁ ÿѭӧc bӝ phұn này lӵa chӑn ÿӇ làm các tӯ chӍ mөc. Các tӯ chӍ mөc phҧi là các tӯ thӇ hiӋn ÿѭӧc nӝi dung cӫa văn bҧn. (3) %ӝ phұn so khӟp và sҳp xӃp các tài liӋu trҧ vӅ: Các tӯ trích ÿѭӧc tӯ câu truy vҩn và các tӯ chӍ mөc cӫa văn bҧn sӁÿѭӧc so khӟp vӟi nhau ÿӇ tìm ra các tài liӋu liên quan ÿӃn câu truy vҩn. Mӛi tài liӋu có mӝt ÿӝ tѭѫng quan vӟi câu hӓi. Các tài liӋu này sӁÿѭӧc sҳp xӃp theo ÿӝ tѭѫng quan giҧm dҫn và trҧ vӅ cho ngѭӡi sӱ dөng. 2.0ӝt sӕ mô hình ÿӇ xây dӵng mӝt hӋ tìm kiӃm thông tin [1.2] 0өc tiêu cӫa các hӋ thӕng tìm kiӃm thông tin là trҧ vӅ các tài liӋu càng liên quan ÿӃn câu hӓi càng tӕt. Vì thӃ ngѭӡi ta ÿã ÿѭa ra rҩt nhiӅu mô hình tìm kiӃm nhҵm tính toán mӝt cách chính xác ÿӝ tѭѫng quan này. Sau ÿây là mӝt sӕ mô hình tìm kiӃm Fѫ bҧn: 2.1 Mô hình không gian vector Mô hình không gian vector tính toán ÿӝ tѭѫng quan giӳa câu hӓi và tài liӋu bҵng cách ÿӏnh nghƭa mӝt vector biӉu diӉn cho mӛi tài liӋu, và mӝt vector biӇu diӉn cho câu Kӓi [ Salton, 1875]. Mô hình dӵa trên ý tѭӣng chính là ý nghƭa cӫa mӝt tài liӋu thì phө thuӝc vào các tӯÿѭӧc sӱ dөng bên trong nó. Vector tài liӋu và vector câu hӓi sau ÿó sӁ ÿѭӧc tính toán ÿӇ xác ÿӏnh ÿӝ tѭѫng quan giӳa chúng. Ĉӝ tѭѫng quan càng lӟn chӭng Wӓ tài liӋu ÿó càng liên quan ÿӃn câu hӓi. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 20 NguyӉn Trung HiӃu - 0112216 Giҧ sӱ mӝt tұp tài liӋu chӍ gӗm có hai tӯ là t1 và t2. Vector xây dӵng ÿѭӧc sӁ Jӗm có 2 thành phҫn: thành phҫn thӭ nhҩt biӇu diӉn sӵ xuҩt hiӋn cӫa t1, và thành phҫn thӭ hai biӇu diӉn cho sӵ xuҩt hiӋn cӫa t2. Cách ÿѫn giҧn nhҩt ÿӇ xây dӵng vector là ÿánh 1 vào thành phҫn tѭѫng ӭng nӃu tӯÿó xuҩt hiӋn, và ÿánh 0 nӃu tӯÿó không xuҩt hiӋn. Giҧ sӱ tài liӋu chӍ gӗm có 2 tӯ t1. Ta biӇu diӉn cho tài liӋu này bӣi vector nhӏ phân nhѭ sau: Tuy nhiên, biӇu diӉn nhѭ vұy không cho thҩy ÿѭӧc tҫn sӕ xuҩt hiӋn cӫa mӛi tӯ trong tài liӋu. Trong trѭӡng hӧp này, vector nên ÿѭӧc biӉu diӉn nhѭ sau: Ĉӕi vӟi mӝt câu hӓi ÿã cho, thay vì chӍ căn cӭ so sánh các tӯ trong tài liӋu vӟi Wұp các tӯ trong câu hӓi, ta nên xem xét ÿӃn tҫm quan trӑng cӫa mӛi tӯ. Ý tѭӣng chính là mӝt tӯ xuҩt hiӋn tұp trung trong mӝt sӕ tài liӋu thì có trӑng sӕ cao hѫn so vӟi mӝt tӯ phân bӕ trong nhiӅu tài liӋu. Trӑng sӕÿѭӧc tính dӵa trên tҫn sӕ tài liӋu nghӏch ÿҧo (Inverse Document Frequency) liên quan ÿӃn các tӯÿѭӧc cho: n: sӕ tӯ phân biӋt trong tұp tài liӋu tfij : sӕ lҫn xuҩt hiӋn cӫa tӯ tj trong tài liӋu Di (tҫn sӕ) dfj : sӕ tài liӋu có chӭa tӯ tj idfj = 10log j d df trong ÿó d là tәng sӕ tài liӋu Vector ÿѭӧc xây dӵng cho mӛi tài liӋu gӗm có n thành phҫn, mӛi thành phҫn là giá trӏ trӑng sӕÿã ÿѭӧc tính toán cho mӛi tӯ trong tұp tài liӋu. Các tӯ trong tài liӋu ÿѭӧc gán trӑng sӕ tӵÿӝng dӵa vào tҫn sӕ xuҩt hiӋn cӫa chúng trong tұp tài liӋu và sӵ xuҩt hiӋn cӫa mӛi tӯ trong mӝt tài liӋu riêng biӋt. Trӑng sӕ cӫa mӝt tӯ tăng nӃu tӯÿó xuҩt hiӋn thѭӡng xuyên trong mӝt tài liӋu và giҧm nӃu tӯÿó xuҩt hiӋn thѭӡng xuyên Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 21 NguyӉn Trung HiӃu - 0112216 trong tҩt cҧ các tài liӋu. ĈӇ tính trӑng sӕ cӫa tӯ thӭ tj trong tài liӋu Di, dӵa vào công thӭc: dij = tfij * idfj dij : là trӑng sӕ cӫa tӯ tj trong tài liӋu Di Ĉӕi vӟi hӋ thӕng tìm kiӃm thông tin theo mô hình vector, mӛi tài liӋu là mӝt vector có dҥng : Di(di1, di2 , …, din ) . Tѭѫng tӵ, câu truy vҩn Q cNJng là mӝt vector có Gҥng : Q(wq1, wq2, …, wqn) wqj : là trӑng sӕ cӫa tӯ tj trong câu truy vҩn Q. Ĉӝ tѭѫng quan (SC: similarity coeficient) giӳa câu truy vҩn Q và tài liӋu Di ÿѭӧc tính nhѭ sau: SC(Q,Di) = ij 1 w * n qj j d = å 2.2 Tìm kiӃm Boolean Mô hình tìm kiӃm Boolean khá ÿѫn giҧn. Câu hӓi ÿѭa vào phҧi ӣ dҥng biӇu thӭc Boolean. Nghƭa là phҧi thӓa: Ø Ngӳ nghƭa rõ ràng Ø Hình thӭc ngҳn gӑn Do các tӯ hoһc xuҩt hiӋn hoһc là không xuҩt hiӋn, nên trӑng sӕ wij e {0,1} Giҧ sӱÿѭa vào mӝt câu hӓi dҥng biӇu thӭc Boolean nhѭ sau: t1 and t2. Sau khi tìm kiӃm ta xác ÿӏnh ÿѭӧc các tài liӋu liên quan ÿӃn t1 là { d1, d3, d5} và các tài liӋu liên Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 22 NguyӉn Trung HiӃu - 0112216 quan ÿӃn t2 là {d3, d5, d7}. Nhѭ vұy vӟi phép and, các tài liӋu thӓa yêu cҫu cӫa ngѭӡi dùng là {d3, d5}. Phѭѫng pháp này có mӝt sӕ khuyӃt ÿLӇm nhѭ sau: Ø Các tài liӋu trҧ vӅ không ÿѭӧc sҳp xӃp (ranking) Ø Câu hӓi tìm kiӃm ÿòi hӓi phҧi ÿúng ÿӏnh dҥng cӫa biӇu thӭc Boolean gây khó khăn cho ngѭӡi dùng Ø .Ӄt quҧ trҧ vӅ có thӇ là quá ít hoһc quá nhiӅu tài liӋu 2.3 Tìm kiӃm Boolean mӣ rӝng Mô hình tìm kiӃm Boolean không hӛ trӧ viӋc sҳp xӃp kӃt quҧ trҧ vӅ bӣi vì các tài liӋu hoһc thӓa hoһc không thӓa yêu cҫu Boolean. Tҩt cҧ các tài liӋu thӓa mãn ÿӅu ÿѭӧc trҧ vӅ, nhѭng không có sӵѭӟc lѭӧng nào ÿѭӧc tính toán cho sӵ liên quan cӫa chúng ÿӕi vӟi câu hӓi. Mô hình tìm kiӃm Boolean mӣ rӝng ra ÿӡi nhҵm hӛ trӧ viӋc sҳp xӃp (ranking) NӃt quҧ trҧ vӅ dӵa trên ý tѭӣng cѫ bҧn là ÿánh trӑng sӕ cho mӛi tӯ trong câu hӓi và trong tài liӋu. Giҧ sӱ mӝt câu hӓi yêu cҫu (t1 OR t2) và mӝt tài liӋu D có chӭa t1 vӟi trӑng sӕ w1 và t2 vӟi trӑng sӕ w2 . NӃu w1 và w2ÿӅu bҵng 1 thì tài liӋu nào có chӭa cҧ hai tӯ này sӁ có thӭ tӵ sҳp xӃp cao nhҩt. Tài liӋu nào không chӭa mӝt trong hai tӯ này VӁ có thӭ tӵ sҳp xӃp thҩp nhҩt. Ý tѭӣng ÿѫn giҧn là tính khoҧng cách Eclide tӯÿLӇm (w1, w2) tӟi gӕc: SC(Q,Di) = 2 21 2(w ) (w )+ 9ӟi trӑng sӕ 0.5 và 0.5, SC(Q,Di) = 2 2(0.5) (0.5)+ =0.707 SC cao nhҩt nӃu w1 và w2ÿӅu bҵng 1. Khi ÿó: Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 23 NguyӉn Trung HiӃu - 0112216 SC(Q,Di) = 2 = 1.414 ĈӇÿѭa SC vào khoҧng [0,1], SC ÿѭӧc tính nhѭ sau: SC( Q t1 v t2 , di) = 2 2 1 2(w ) (w ) 2 + Công thӭc này giҧ sӱ là câu hӓi chӍ có toán tӱ OR . Ĉӕi vӟi toán tӱ AND, thay vì tính khoҧng cách tӟi gӕc, ta sӁ tính khoҧng cách ÿӃn ÿLӇm (1,1). Câu hӓi nào càng Jҫn ÿӃn ÿLӇm (1,1) thì nó càng thoҧ yêu cҫu cӫa toán tӱ AND: SC(Q t1 ^ t2, di) = 1- 2 2 1 2(1-w ) (1 w ) 2 + - 2.4 0ӣ rӝng trong viӋc thêm vào trӑng sӕ cӫa câu hӓi 1Ӄu câu hӓi có trӑng sӕ là q1 và q2 thì ÿӝ tѭѫng quan sӁÿѭӧc tính nhѭ sau: SC(Q q1 v q2, di) = 2 2 2 2 1 1 2 2 2 2 1 2 q w q w q q + + SC(Q q1 ^ q2, di) = 1- ( 2 2 2 2 1 1 2 2 2 2 1 2 q (1-w ) (1 )q w q q + - + ) 2.4.10ӣ rӝng cho sӕ tӯ tuǤ ý ĈӇ tính khoҧng cách Euclide trong không gian ÿa chiӅu, tham sӕ p ÿѭӧc sӱ Gөng. Tham sӕ p chӍ sӵ biӃn ÿәi tҫm quan trӑng cӫa trӑng sӕ trong viӋc ÿánh giá ÿӝ thích hӧp. Ĉӝ tѭѫng quan SC tәng quát nhѭ sau: Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 24 NguyӉn Trung HiӃu - 0112216 SC(D, Q ( q i v q j ) ) = 1 p p p p p i i j j p p i j q w q q q wé ù+ ê ú +ê úë û SC(D, Q ( q i ^ q j ) ) = 1 - 1 p p p p p i i j j p p i j q (1-w ) q (1 w ) q q é ù+ - ê ú +ê úë û 1Ӄu p ® ¥ : chuyӇn vӅ hӋ thӕng Boolean thông thѭӡng (không có trӑng sӕ) 1Ӄu p = 1 : chuyӇn vӅ hӋ thӕng không gian vector 2.4.2 Thêm toán tӱ tӵÿӝng Các chiӃn lѭӧc tìm kiӃm không ÿòi hӓi ngѭӡi dùng nhұn biӃt các toán tӱ phӭc Wҥp. Trӑng sӕ có thӇÿѭӧc gán tӵÿӝng và tài liӋu ÿѭӧc sҳp xӃp bҵng cách chèn toán tӱ OR vào giӳa các tӯ. Bҩt kǤ tài liӋu nào có chӭa ít nhҩt mӝt tӯ trong câu hӓi sӁÿѭӧc sҳp thӭ tӵ vӟi mӝt sӕÿLӇm lӟn hѫn 0. 2.5 Mô hình xác suҩt Mô hình tìm kiӃm xác suҩt tính toán ÿӝ tѭѫng quan giӳa câu hӓi và tài liӋu dӵa vào xác suҩt mà tài liӋu ÿó liên quan ÿӃn câu hӓi. Các lý thuyӃt vӅ xác suҩt ÿѭӧc áp Gөng ÿӇ tính toán ÿӝ liên quan giӳa câu hӓi và tài liӋu. Các tӯ trong câu hӓi ÿѭӧc xem là ÿҫu mӕi ÿӇ xác ÿӏnh tài liӋu liên quan. Ý tѭӣng chính là tính xác suҩt cӫa mӛi tӯ trong câu hӓi và sau ÿó sӱ dөng chúng ÿӇ tính xác suҩt mà tài liӋu liên quan ÿӃn câu Kӓi. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 25 NguyӉn Trung HiӃu - 0112216 2.6 Ĉánh giá chung vӅ các mô hình Ø Mô hình Boolean ÿѭӧc xem là mô hình yӃu nhҩt trong các mô hình bӣi vì nhѭÿã trình bày nó còn rҩt nhiӅu khuyӃt ÿLӇm. Ø Theo kinh nghiӋm cӫa Salton và Buckley thì nhìn chung mô hình vector làm tӕt hѫn mô hình xác suҩt. Luұn văn cӫa chúng em sӱ dөng mô hình không gian vectorÿӇ xây dӵng mӝt KӋ thӕng tìm kiӃm thông tin tiӃng ViӋt. 3. Các bѭӟc ÿӇ xây dӵng mӝt hӋ tìm kiӃm thông tin. [3.2] 3.1 Tách tӯ tӵÿӝng cho tұp các tài liӋu Ĉӕi vӟi tiӃng Anh, ta tách tӯ dӵa vào khoҧng trҳng. Tuy nhiên ÿӕi vӟi tiӃng ViӋt, giai ÿRҥn này tѭѫng ÿӕi khó khăn. Cҩu trúc tiӃng ViӋt rҩt phӭc tҥp, không chӍÿѫn thuҫn dӵa vào khoҧng trҳng ÿӇ tách tӯ. HiӋn nay có rҩt nhiӅu công cө dùng ÿӇ tách tӯ tiӃng ViӋt, mӛi phѭѫng pháp có ѭu, khuyӃt ÿLӇm riêng. Các phѭѫng pháp này sӁÿѭӧc trình bày chi tiӃt hѫn ӣ chѭѫng III : Tách tӯ tӵÿӝng. 3.2 /ұp chӍ mөc cho tài liӋu Sau khi có ÿѭӧc tұp các tӯÿã ÿѭӧc trích, ta sӁ chӑn các tӯÿӇ làm tӯ chӍ mөc. Tuy nhiên, không phҧi tӯ nào cNJng ÿѭӧc chӑn làm tӯ chӍ mөc. Các tӯ có khҧ năng ÿҥi diӋn cho tài liӋu sӁÿѭӧc chӑn, các tӯ này ÿѭӧc gӑi là key word, do ÿó trѭӟc khi lұp chӍ Pөc sӁ là giai ÿRҥn tiӅn xӱ lý ÿӕi vӟi các tӯ trích ÿѭӧc ÿӇ chӑn ra các key word thích Kӧp. Ta sӁ loҥi bӓ danh sách các tӯ ít có khҧ năng ÿҥi diӋn cho nӝi dung văn bҧn dӵa Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 26 NguyӉn Trung HiӃu - 0112216 vào danh sách gӑi là stop list. Ĉӕi vӟi tiӃng Anh hay tiӃng ViӋt ÿӅu có danh sách stop list. Chi tiӃt vӅ quá trình lұp chӍ mөc sӁÿѭӧc mô tҧӣ chѭѫng IV: Lұp chӍ mөc. 3.3 Tìm kiӃm Ngѭӡi dùng nhұp câu hӓi và yêu cҫu tìm kiӃm, câu hӓi mà ngѭӡi dùng nhұp vào FNJng sӁÿѭӧc xӱ lý, nghƭa là ta sӁ tách tӯ cho câu hӓi. Phѭѫng pháp tách tӯ cho câu hӓi FNJng nên là phѭѫng pháp tách tӯ cho các tài liӋu thu thұp ÿѭӧc ÿӇÿҧm bҧo sӵ tѭѫng thích. Sau ÿó, hӋ thӕng sӁ tìm kiӃm trong tұp tin chӍ mөc ÿӇ xác ÿӏnh các tài liӋu liên quan ÿӃn câu hӓi cӫa ngѭӡi dùng. 3.4 6ҳp xӃp các tài liӋu trҧ vӅ (Ranking) Các tài liӋu sau khi ÿã xác ÿӏnh là liên quan ÿӃn câu hӓi cӫa ngѭӡi dùng sӁÿѭӧc Vҳp xӃp lҥi, bӣi vì trong các tài liӋu ÿó có nhӳng tài liӋu liên quan ÿӃn câu hӓi nhiӅu Kѫn. HӋ thӕng sӁ dӵa vào mӝt sӕ phѭѫng pháp ÿӇ xác ÿӏnh tài liӋu nào liên quan nhiӅu nhҩt, sҳp xӃp lҥi (ranking) và trҧ vӅ cho ngѭӡi dùng theo thӭ tӵѭu tiên. 4. Nhӳng khó khăn trong viӋc xây dӵng mӝt hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt HiӋn nay, chúng ta ÿã quen thuӝc vӟi rҩt nhiӅu công cө hӛ trӧ viӋc tìm kiӃm thông tin nhѭ Google, Yahoo Search, AltaVista, …. Tuy nhiên, ÿây là các công cө cӫa ngѭӡi nѭӟc ngoài nên chúng chӍ giҧi quyӃt tӕt ÿӕi vӟi các yêu cҫu cӫa hӑ. Chúng ta FNJng có mӝt sӕ công cө hӛ trӧ tìm kiӃm thông tin tiӃng ViӋt nhѭ: Vinaseek, NetNam,…Các công cө này cNJng tách tӯ chӫ yӃu dӵa vào khoҧng trҳng nên viӋc tìm kiӃm cNJng chѭa ÿѭӧc cҧi thiӋn. Nhìn chung, ÿӇ xây dӵng mӝt hӋ thӕng tìm kiӃm thông Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 27 NguyӉn Trung HiӃu - 0112216 tin tiӃng ViӋt, chúng ta gһp khó khăn trong viӋc tách tӯ tiӃng ViӋt và xác ÿӏnh bҧng mã tiӃng ViӋt. 4.1 Khó khăn trong viӋc tách tӯ tiӃng ViӋt Có thӇ nói tách tӯ là giai ÿRҥn khó khăn nhҩt khi xây dӵng mӝt hӋ tìm kiӃm thông tin tiӃng ViӋt. Ĉӕi vӟi tiӃng Anh, viӋc xác ÿӏnh tӯ chӍÿѫn giҧn dӵa vào khoҧng trҳng ÿӇ tách tӯ. Ví dө, câu: “I am a student” sӁÿѭӧc tách thành 4 tӯ : I, am, a, student. Tuy nhiên, ÿӕi vӟi tiӃng ViӋt, tách dӵa vào khoҧng trҳng chӍ thu ÿѭӧc các tiӃng. Tӯ có thӇÿѭӧc ghép tӯ mӝt hay nhiӅu tiӃng. Tӯ phҧi có ý nghƭa hoàn chӍnh và có cҩu tҥo әn ÿӏnh. Câu: “Tôi là mӝt sinh viên” ÿѭӧc tách thành 4 tӯ: Tôi, là, mӝt, sinh viên. Trong ÿó, tӯ “sinh viên” ÿѭӧc hình thành tӯ 2 tiӃng: sinh và viên. HiӋn nay, có rҩt nhiӅu phѭѫng pháp ÿѭӧc sӱ dөng ÿӇ tách tӯ tiӃng ViӋt. Tuy nhiên, vӟi sӵ phӭc tҥp cӫa ngӳ pháp tiӃng ViӋt nên chѭa có phѭѫng pháp nào ÿҥt ÿѭӧc chính xác 100%. Và viӋc lӵa chӑn phѭѫng pháp nào là tӕt nhҩt cNJng ÿang là vҩn ÿӅ tranh cãi. 4.2 9ҩn ÿӅ bҧng mã tiӃng ViӋt Không nhѭ tiӃng Anh, tiӃng ViӋt có rҩt nhiӅu bҧng mã ÿòi hӓi phҧi xӱ lý. Mӝt Vӕ công cө tìm kiӃm tiӃng ViӋt hӛ trӧ bҧng mã rҩt tӕt nhѭ Vinaseek, hӛ trӧ mӑi bҧng mã (VNI, TCVN3, ViQR,…). 4.3 Các khó khăn khác Ø TiӃng ViӋt có các tӯÿӗng nghƭa nhѭng khác âm. Các công cө hiӋn nay không Kӛ trӧ viӋc xác ÿӏnh các tӯÿӗng nghƭa. Vì vұy, kӃt quҧ trҧ vӅ sӁ không ÿҫy ÿӫ. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 28 NguyӉn Trung HiӃu - 0112216 Ø Ngѭӧc lҥi, có nhӳng tӯÿӗng âm khác nghƭa. Các hӋ thӕng sӁ trҧ vӅ các tài liӋu có chӭa các tӯÿã ÿѭӧc tách trong câu hӓi mà không cҫn xác ÿӏnh chúng có thӵc Vӵ liên quan hay không. Vì vұy, kӃt quҧ trҧ vӅ sӁ không chính xác. Ø 0ӝt sӕ tӯ xuҩt hiӋn rҩt nhiӅu nhѭng không có ý nghƭa trong tài liӋu. Các tӯ nhѭ: và, vӟi, nhѭng,… có tҫn sӕ xuҩt hiӋn rҩt lӟn trong bҩt cӭ văn bҧn nào. NӃu tìm cách trҧ vӅ các tài liӋu có chӭa nhӳng tӯ này sӁ thu ÿѭӧc kӃt quҧ vô ích, không Fҫn thiӃt. Do ÿó, chúng ta cҫn tìm cách loҥi bӓ các tӯ này trѭӟc khi tìm kiӃm. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 29 NguyӉn Trung HiӃu - 0112216 Chѭѫng 3: TÁCH TӮ TӴĈӜNG Trѭӟc khi lұp chӍ mөc là giai ÿRҥn tách tӯ cho các tài liӋu, ÿây là công viӋc quan trӑng trong mӝt hӋ thӕng tìm kiӃm thông tin. Ĉӕi vӟi tiӃng Anh chӍÿѫn giҧn dӵa vào khoҧng trҳng ÿӇ tách tӯ. Nhѭng ÿӕi vӟi tiӃng ViӋt không thӇ dӵa vào khoҧng trҳng ÿѭӧc vì tiӃng ViӋt là ngôn ngӳÿѫn lұp. HiӋn nay, có rҩt nhiӅu phѭѫng pháp ÿѭӧc ÿӅ xuҩt ÿӇ tách tӯ cho tiӃng ViӋt, nhѭng vүn chѭa thӕng nhҩt là phѭѫng pháp nào tӕt nhҩt. Chѭѫng này sӁ trình bày chi tiӃt vӅ mӝt sӕ phѭѫng pháp tách tӯ. 1. Tách tӯ trong TiӃng Anh Do ÿһc ÿLӇm ngӳ pháp cӫa tiӃng Anh, tách tӯ chӍ ÿѫn giҧn dӵa vào khoҧng trҳng ÿӇ phân biӋt tӯ. 2. Tách tӯ trong TiӃng ViӋt 2.1 0ӝt sӕÿһc ÿLӇm chính vӅ tӯ tiӃng ViӋt [2.2] 2.1.1 TiӃng 9Ӆ mһt ngӳ âm, tiӃng là âm tiӃt. Âm tiӃt bao gӗm nhӳng ÿѫn vӏӣ bұc thҩp hѫn gӑi là âm vӏ. Mӛi âm vӏÿѭӧc ghi bҵng mӝt ký tӵ gӑi là chӳ. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 30 NguyӉn Trung HiӃu - 0112216 9Ӆ mһt ngӳ nghƭa, tiӃng là ÿѫn vӏ nhӓ nhҩt có nghƭa, nhѭng cNJng có mӝt sӕ tiӃng không có nghƭa. 9Ӆ giá trӏ ngӳ pháp, tiӃng là ÿѫn vӏ cҩu tҥo tӯ. Sӱ dөng tiӃng ÿӇ tҥo thành tӯ, ta có hai trѭӡng hӧp nhѭ sau: Ø 7ӯ mӝt tiӃng: gӑi là tӯÿѫn. Trѭӡng hӧp này mӝt tӯ chӍ có mӝt tiӃng. Ví dө nhѭ: ông, bà, … Ø 7ӯ hai tiӃng trӣ lên: gӑi là tӯ phӭc. Trѭӡng hӧp này mӝt tӯ có thӇ có hai hay nhiӅu tiӃng trӣ lên. Ví dө nhѭ: xã hӝi, an ninh, hӧp tác xã,… 2.1.2 7ӯ 7ӯ là ÿѫn vӏ nhӓ nhҩt ÿӇ tҥo thành câu. Trong ÿһt câu, chúng ta dùng tӯ chӭ không dùng tiӃng. 2.2 Tách tӯ tӵÿӝng tiӃng ViӋt Tách tӯ tӵÿӝng tiӃng ViӋt dӵa trên mӝt sӕ phѭѫng pháp có sҹn. Sau ÿây chúng ta sӁ nghiên cӭu mӝt sӕ phѭѫng pháp ÿѭӧc sӱ dөng ÿӇ tách tӯ cho các văn bҧn tiӃng ViӋt. 3. Các phѭѫng pháp tách tӯ tiӃng ViӋt 3.1 fnTBL (Fast Transformation-based learning) [3.1] 3.1.1 Mô tҧ Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 31 NguyӉn Trung HiӃu - 0112216 Ý tѭӣng chính cӫa phѭѫng pháp hӑc dӵa trên sӵ biӃn ÿәi (TBL) là ÿӇ giҧi quyӃt Pӝt vҩn ÿӅ nào ÿó ta sӁ áp dөng các phép biӃn ÿәi, tҥi mӛi bѭӟc, phép biӃn ÿәi nào cho NӃt quҧ tӕt nhҩt sӁÿѭӧc chӑn và ÿѭӧc áp dөng lҥi vӟi vҩn ÿӅÿã ÿѭa ra. Thuұt toán kӃt thúc khi không còn phép biӃn ÿәi nào ÿѭӧc chӑn. HӋ thӕng fnTBL gӗm hai tұp tin chính: Ø 7̵p tin dͷ li͏u h͕c (Training): Tұp tin dӳ liӋu hӑc ÿѭӧc làm thӫ công, ÿòi hӓi ÿӝ chính xác. Mӛi mүu (template) ÿѭӧc ÿһt trên mӝt dòng riêng biӋt. Ví dө: tұp Gӳ liӋu hӑc cho viӋc xác ÿӏnh tӯ loҥi cӫa mӝt văn bҧn có thӇ có ÿӏnh dҥng nhѭ sau: Công ty danhtu An Ĉông danhturieng Eӏ dongtu giám sát dongtu Trong ví dө này mӛi mүu gӗm có hai phҫn: phҫn ÿҫu tiên là tӯ, phҫn thӭ hai là tӯ loҥi tѭѫng ӭng. Ø 7̵p tin chͱa các m̳u lu̵t (rule-template): Mӛi luұt ÿѭӧc ÿһt trên mӝt dòng, hӋ thӕng fTBL sӁ dӵa vào các mүu luұt ÿӇ áp dөng vào tұp tin dӳ liӋu hӑc. Ví dө: chunk_-2 chunk_-1 => chunk Áp dөng ÿӕi vӟi viӋc xác ÿӏnh tӯ loҥi, vӟi chunk_-2 = ÿӝng tӯ, chunk_- 1= sӕ tӯ, chunk=danh tӯ thì luұt trên có ý nghƭa nhѭ sau: nӃu hai tӯ trѭӟc ÿó là ÿӝng tӯ và sӕ tӯ thì chuyӇn tӯ loҥi hiӋn hành thành danh tӯ. 3.1.2 Áp dөng tách tӯ tiӃng ViӋt Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 32 NguyӉn Trung HiӃu - 0112216 Sau khi nghiên cӭu vӅ fnTBL, chúng em nhұn thҩy có thӇ áp dөng phѭѫng pháp này ÿӇ tách tӯ cho tiӃng ViӋt, chӍ cҫn thay ÿәi mӝt sӕÿӏnh dҥng cho phù hӧp. Ø Xây d͹ng t̵p tin dͷ li͏u h͕c: 7ұp tin dӳ liӋu cho viӋc tách tӯ tiӃng ViӋt có dҥng nhѭ sau: Vì B sao B công B ty I ViӋt B Hà I Eӏ B ÿһt B vào B tình B trҥng I …. Các ký tӵ B, I gӑi là các chunk và có ý nghƭa nhѭ sau: TiӃng có chunk=B nghƭa là tiӃng ÿó bҳt ÿҫu mӝt tӯ (begin) TiӃng có chunk=I nghƭa là tiӃng ÿó nҵm ӣ trong mӝt tӯ (inside) Trong ví dө trên, ta có ÿѭӧc các tӯ: Vì, sao, công ty, ViӋt Hà, bӏ, ÿһt, vào, tình trҥng, … Ø Xây d͹ng t̵p tin chͱa các m̳u lu̵t: Sau khi tìm hiӇu vӅ tӯ trong tiӃng ViӋt, chúng em xây dӵng ÿѭӧc 3 luұt áp dөng cho viӋc tách tӯ tiӃng ViӋt nhѭ sau: chunk_0 word_0 => chunk Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 33 NguyӉn Trung HiӃu - 0112216 chunk_0 word_-1 word_0 => chunk chunk_0 word_0 word_1 => chunk 3.1.2.1 Quá trình hӑc (1) Tӯ tұp dӳ liӋu hӑc xây dӵng tӯÿLӇn các tӯ (2) Khӣi tҥo các tӯ (3) Rút ra tұp luұt Ӣ bѭӟc (1) tӯ tұp dӳ liӋu hӑc ÿã có sҹn, sӱ dөng phѭѫng pháp thӕng kê ĺ ta sӁ có tӯÿLӇn các tiӃng (Lexicon). Các tiӃng có thӇ xuҩt hiӋn trong các tӯ vӟi các chunk khác nhau, ta sӁ ghi nhұn lҥi sӕ lҫn xuҩt hiӋn cӫa mӛi tiӃng vӟi các chunk tѭѫng ӭng. Ví dө, ÿӕi vӟi tӯ “công ty” thì tiӃng “công” có chunk=B nhѭng trong tӯ “cӫa công” thì tiӃng công có chunk=I. Ӣ bѭӟc (2) tӯ tұp dӳ liӋu hӑc, tҥo ra tұp dӳ liӋu hӑc không có chunk bҵng cách xóa hӃt các chunk tѭѫng ӭng. Tұp dӳ liӋu mӟi này sӁÿѭӧc sӱ dөng ÿӇ khӣi tҥo lҥi các chunk thông dөng nhҩt dӵa vào tӯÿLӇn. Ӣ bѭӟc (3) so sánh tұp dӳ liӋu hӑc vӟi tұp dӳ liӋu ÿang xét, dӵa vào các mүu luұt ÿã cho, ta sӁ rút ra ÿѭӧc các luұt ӭng viên, ӭng vӟi mӛi luұt ӭng viên ta lҥi áp dөng vào tұp dӳ liӋu ÿang xét và tính ÿLӇm cho nó (dӵa vào sӕ lӛi phát sinh khi so sánh vӟi Wұp dӳ liӋu hӑc là tұp dӳ liӋu chuҭn). Chӑn luұt có ÿLӇm cao nhҩt và lӟn hѫn mӝt ngѭӥng cho trѭӟc ÿӇÿѭa vào danh sách luұt ÿѭӧc chӑn. .Ӄt quҧ ta sӁÿѭӧc mӝt tұp các luұt ÿѭӧc chӑn. Các luұt có dҥng nhѭ sau: SCORE:414 RULE: chunk_0=B word_0=tӃ => chunk=I SCORE:312 RULE: chunk_0=B word_-1=cӫa word_0=công=>chunk=I Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 34 NguyӉn Trung HiӃu - 0112216 SCORE:250 RULE: chunk_0=B word_0=hóa => chunk=I SCORE:231 RULE: chunk_0=B word_0=ÿӝng => chunk=I SCORE:205 RULE: chunk_0=B word_0=nghiӋp => chunk=I SCORE:175 RULE: chunk_0=B word_-1=phát word_0=triӇn => chunk=I SCORE:133 RULE: chunk_0=B word_-1=xã word_0=hӝi => chunk=I SCORE:109 RULE: chunk_0=B word_-1=ÿҫu word_0=tѭ => chunk=I SCORE:100 RULE: chunk_0=B word_0=thӇ => chunk=I Ӣ dòng 2 ta có luұt: nӃu tӯ hiӋn hành là “công” (word_0=công) và tӯ trѭӟc ÿó là “cӫa” (word_-1=cӫa) và chunk cӫa tӯ hiӋn hành là B ( chunk_0=B) thì chuyӇn chunk Fӫa tӯ hiӋn hành là I , nghƭa là “cӫa công” phҧi là mӝt tӯ. Toàn bӝ quá trình hӑc ÿѭӧc mô tҧ nhѭ sau: Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 35 NguyӉn Trung HiӃu - 0112216 Hình 3-1 Quá trình hӑc 3.1.2.2 Xác ÿӏnh tӯ cho tài liӋu mӟi (1) Tài liӋu mӟi ÿѭa vào phҧi có ÿӏnh dҥng giӕng nhѭ tұp tin dӳ liӋu hӑc, nghƭa là mӛi tiӃng trên mӝt dòng. (2) Dӵa vào tӯÿLӇn, gán chunk thông dөng nhҩt cho các tiӃng trong tài liӋu mӟi Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 36 NguyӉn Trung HiӃu - 0112216 (3) Áp dөng các luұt có ÿѭӧc tӯ giai ÿRҥn hӑc vào tài liӋu ÿang xét ta sӁ tách ÿѭӧc các tӯ hoàn chӍnh. Giai ÿRҥn xác ÿӏnh tӯ cho tài liӋu mӟi ÿѭӧc mô tҧ nhѭ sau: Hình 3-2 Giai ÿRҥn xác ÿӏnh tӯ cho tài liӋu mӟi Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 37 NguyӉn Trung HiӃu - 0112216 3.2 Longest Matching [1.4] Phѭѫng pháp Longest Matching tách tӯ dӵa vào tӯÿLӇn có sҹn. Theo phѭѫng pháp này, ÿӇ tách tӯ tiӃng ViӋt ta ÿi tӯ trái sang phҧi và chӑn tӯ có nhiӅu âm tiӃt nhҩt mà có mһt trong tӯÿLӇn, rӗi cӭ tiӃp tөc cho tӯ kӃ tiӃp cho ÿӃn hӃt câu. Vӟi cách này, ta dӉ dàng tách ÿѭӧc chính xác các ngӳ/câu nhѭ: ”hӧp tác| mua bán”; “thành lұp| nѭӟc|ViӋt Nam| dân chӫ |cӝng hòa”…Tuy nhiên, phѭѫng pháp này sӁ tách tӯ sai trong trѭӡng hӧp nhѭ: “hӑc sinh |hӑc sinh |hӑc”; “mӝt| ông | quan tài | giӓi”, “trѭӟc | bàn là | mӝt | ly| nѭӟc”,… 3.3 .Ӄt hӧp giӳa fnTBL và Longest Matching Chúng ta có thӇ kӃt hӧp giӳa hai phѭѫng pháp fnTBL và Longest Matching ÿӇ có ÿѭӧc kӃt quҧ tách tӯ tӕt nhҩt. Ĉҫu tiên ta sӁ tách tӯ bҵng Longest Matching, ÿҫu ra Fӫa phѭѫng pháp này sӁ là ÿҫu vào cho phѭѫng pháp fnTBL hӑc luұt. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 38 NguyӉn Trung HiӃu - 0112216 Chѭѫng 4: /ҰP CHӌ MӨC 1. Khái quát vӅ hӋ thӕng lұp chӍ mөc 0ӝt cách ÿӇ tăng tӕc ÿӝ tìm kiӃm thông tin lên là tҥo chӍ mөc cho các tài liӋu. Tuy nhiên, viӋc lұp chӍ mөc có mӝt nhѭӧc ÿLӇm lӟn, ÿó là khi thêm mӝt tài liӋu mӟi, phҧi cұp nhұt lҥi tұp tin chӍ mөc. Nhѭng ÿӕi vӟi hӋ thӕng tìm kiӃm thông tin, chӍ cҫn Fұp nhұt lҥi tұp tin chӍ mөc vào mӝt khoҧng thӡi gian ÿӏnh kǤ. Do ÿó, chӍ mөc là mӝt công cө rҩt có giá trӏ. /ұp chӍ mөc bao gӗm các công viӋc sau: Ø Xác ÿӏnh các tӯ có khҧ năng ÿҥi diӋn cho nӝi dung cӫa tài liӋu Ø Ĉánh trӑng sӕ cho các tӯ này, trӑng sӕ phҧn ánh tҫm quan trӑng cӫa tӯ trong mӝt tài liӋu. 2. Phѭѫng pháp lұp chӍ mөc [1.1] 2.1 Xác ÿӏnh các tӯ chӍ mөc Ø Cho mӝt tұp gӗm có n tài liӋu. Vӟi mӛi tài liӋu, tính tҫn sӕ cӫa mӛi tӯ riêng biӋt trong tài liӋu ÿó. Gӑi FREQik: là tҫn sӕ xuҩt hiӋn cӫa tӯ k trong tài liӋu i. Ø Xác ÿӏnh tҫn sӕ cӫa tӯ k trong tұp tài liӋu, ký hiӋu là TOTFREQk bҵng cách tính tәng tҫn sӕ xuҩt hiӋn cӫa k trong tҩt cҧ n tài liӋu: Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 39 NguyӉn Trung HiӃu - 0112216 TOTFREQK = ik 1 FREQ n i= å Ø 6ҳp xӃp các tӯ giҧm dҫn dӵa vào tҫn sӕ xuҩt hiӋn cӫa nó trong tұp tài liӋu. Xác ÿӏnh giá trӏ ngѭӥng cao và loҥi bӓ tҩt cҧ các tӯ có tҫn sӕ xuҩt hiӋn lӟn hѫn giá trӏ này. Ø 7ѭѫng tӵ, loҥi bӓ các tӯ có tҫn sӕ thҩp . Nghƭa là, xác ÿӏnh ngѭӥng thҩp và loҥi bӓ tҩt cҧ các tӯ có tҫn sӕ xuҩt hiӋn nhӓ hѫn giá trӏ này. ĈLӅu này sӁ loҥi bӓ các Wӯ ít xuҩt hiӋn trong tұp tài liӋu, nên sӵ có mһt cӫa các tӯ này cNJng không ҧnh hѭӣng ÿӃn viӋc thӵc hiӋn truy vҩn. Ø Các tӯ có tҫn sӕ xuҩt hiӋn trung bình còn lҥi sӁÿѭӧc sӱ dөng làm tӯ chӍ Pөc. Hình 4-1 Các tӯÿѭӧc sҳp theo thӭ tӵ Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 40 NguyӉn Trung HiӃu - 0112216 2.2 Các phѭѫng pháp tính trӑng sӕ cӫa tӯ Trӑng sӕ cӫa mӝt tӯ phҧn ánh tҫm quan trӑng cӫa tӯÿó trong tài liӋu. Ý tѭӣng chính là mӝt tӯ xuҩt hiӋn thѭӡng xuyên trong tҩt cҧ các tài liӋu thì ít quan trӑng hѫn là Wӯ chӍ xuҩt hiӋn tұp trung trong mӝt sӕ tài liӋu. 2.2.1 7ҫn sӕ tài liӋu nghӏch ÿҧo Ĉây là phѭѫng pháp tính trӑng sӕ mà mô hình không gian vector ÿã sӱ dөng ÿӇ tính trӑng sӕ cӫa tӯ trong tài liӋu. n: sӕ tӯ phân biӋt trong tұp tài liӋu FREQik : sӕ lҫn xuҩt hiӋn cӫa tӯ k trong tài liӋu Di (tҫn sӕ tӯ) DOCFREQk : sӕ tài liӋu có chӭa tӯ k Khi ÿó, trӑng sӕ cӫa tӯ k trong tài liӋu Diÿѭӧc tính nhѭ sau: WEIGHTik = FREQik * [log (n) – log (DOCFREQk)] Trӑng sӕ cӫa tӯ k trong tài liӋu Di tăng nӃu tҫn sӕ xuҩt hiӋn cӫa tӯ k trong tài liӋu i tăng và giҧm nӃu tәng sӕ tài liӋu có chӭa tӯ k tăng. 2.2.2 Ĉӝ nhiӉu tín hiӋu (The Signal – Noise Ratio) 0ӝt quan ÿLӇm tѭѫng tӵÿѭӧc xem xét ÿó là dӵa vào thông tin ÿӇÿánh giá tҫm quan trӑng cӫa tӯ. Trong thӵc tӃ, nӝi dung thông tin cӫa mӝt ÿRҥn hay mӝt tӯ có thӇ xác ÿӏnh dӵa vào xác suҩt xuҩt hiӋn cӫa các tӯ trong văn bҧn ÿã cho. Rõ ràng, xác suҩt xuҩt hiӋn cӫa mӝt tӯ càng cao thì thông tin mà nó chӭa càng ít. 1ӝi dung thông tin cӫa mӝt tӯÿѭӧc xác ÿӏnh nhѭ sau: Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 41 NguyӉn Trung HiӃu - 0112216 INFORMATION= - log2 p trong ÿó p là xác suҩt xuҩt hiӋn cӫa tӯ. Ví dͭ: nӃu tӯ “vi tính” xuҩt hiӋn 1 lҫn sau 10.000 tӯ, xác suҩt xuҩt hiӋn cӫa nó là 0.0001, khi ÿó thông tin cӫa nó sӁ là: INFORMATION = - log2 (0.0001) = 13.278 Ngѭӧc lҥi, tӯ “sӁ” xuҩt hiӋn 1 lҫn sau 10 tӯ, xác suҩt xuҩt hiӋn cӫa nó là 0.1, khi ÿó thông tin cӫa nó sӁ là: INFORMATION = -log2 (0.1) = 3.223 1Ӄu mӝt tài liӋu có chӭa t tӯ, mӛi tӯ có xác suҩt xuҩt hiӋn là pk, thông tin trung bình cӫa tài liӋu sӁ là: AVERAGE INFORMATION = - 2 1 log t k k k p p = å Ta ÿӏnh nghƭa ÿӝ nhiӉu NOISEk cӫa tӯ k trong tұp gӗm n tài liӋu nhѭ sau: NOISEk = 2 1 log n ik k i k ik FREQ TOTFREQ TOTFREQ FREQ= å Ĉӝ nhiӉu thay ÿәi nghӏch ÿҧo vӟi “sӵ tұp trung” cӫa mӝt tӯ trong tұp tài liӋu. Nghƭa là, mӝt tӯ có sӵ phân phӕi ÿӅu trong tҩt cҧ các tài liӋu thì ÿӝ nhiӉu cӫa nó càng Oӟn, ngѭӧc lҥi mӝt tӯ chӍ tұp trung trong mӝt sӕ tài liӋu nào ÿó thì ÿӝ nhiӉu cӫa nó càng nhӓ. Giҧ sӱ, tӯ k xuҩt hiӋn mӝt lҫn trong mӛi tài liӋu (FREQik=1), khi ÿó ÿӝ nhiӉu Fӫa nó bҵng: Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 42 NguyӉn Trung HiӃu - 0112216 NOISEk = 2 1 1 log 1 n i n n= å = log2 n Ngѭӧc lҥi, giҧ sӱ tӯ k chӍ xuҩt hiӋn trong mӝt tài liӋu, khi ÿó ÿӝ nhiӉu cӫa nó Eҵng: NOISEk = 2logk k k k TOTFREQ TOTFREQ TOTFREQ TOTFREQ = 0 Hàm sӕ nghӏch ÿҧo cӫa ÿӝ nhiӉu, gӑi là ÿӝ signal, ÿѭӧc tính nhѭ sau: SIGNALk = log2 (TOTFREQk) – NOISEk Trӑng sӕ cӫa tӯ k trong tài liӋu i ÿѭӧc tính bҵng cách kӃt hӧp giӳa FREQik và SIGNALk: WEIGHTik = FREQik * SIGNALk 2.2.3 Giá trӏ phân biӋt tӯ (The Term Discrimination Value) 0ӝt chӭc năng khác ÿӇ xác ÿӏnh tҫm quan trӑng cӫa mӝt tӯ là tính giá trӏ phân biӋt cӫa tӯÿó. Gӑi SIMILAR(Di, Dj) là ÿӝ tѭѫng quan giӳa cһp tài liӋu Di, Dj. Khi ÿó, ÿӝ tѭѫng quan trung bình cӫa tұp tài liӋu là: AVGSIM= CONSTANT 1 1# ( , ) n n i j i ji j SIMILAR D D = = å å Gӑi AVGSIMk là ÿӝ tѭѫng quan trung bình cӫa tұp tài liӋu khi bӓ tӯ k. Rõ ràng, QӃu tӯ k xuҩt hiӋn thѭӡng xuyên trong tұp tài liӋu thì khi bӓ tӯ k, ÿӝ tѭѫng quan trung bình sӁ giҧm. Ngѭӧc lҥi, nӃu tӯ k chӍ tұp trung trong mӝt sӕ tài liӋu, khi bӓ tӯ k, ÿӝ Wѭѫng quan trung bình sӁ tăng lên. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 43 NguyӉn Trung HiӃu - 0112216 Giá trӏ phân biӋt DISCVALUEk cӫa tӯ k ÿѭӧc tính nhѭ sau: DISCVALUEk = (AVGSIM)k – AVGSIM Trӑng sӕ cӫa tӯ k trong tài liӋu i ÿѭӧc tính bҵng cách kӃt hӧp giӳa FREQik và DISCVALUEk: WEIGHTik = FREQik * DISCVALUEk 2.3 /ұp chӍ mөc tӵÿӝng cho tài liӋu tiӃng Anh 0ӝt quá trình ÿѫn giҧn ÿӇ lұp chӍ mөc cho tài liӋu có thӇÿѭӧc mô tҧ nhѭ sau: Ø Trѭӟc hӃt, xác ÿӏnh tҩt cҧ các tӯ tҥo thành tài liӋu. Trong tiӃng Anh, chӍ ÿѫn giҧn là tách tӯ dӵa vào khoҧng trҳng. Ø Loҥi bӓ các tӯ có tҫn sӕ xuҩt hiӋn cao. Nhӳng tӯ này chiӃm khoҧng 40- 50% các tӯ, nhѭÿã ÿӅ cұp trѭӟc ÿây, chúng có ÿӝ phân biӋt kém do ÿó không thӇ sӱ Gөng ÿӇÿҥi diӋn cho nӝi dung cӫa tài liӋu. Trong tiӃng Anh, các tӯ này có khoҧng 250 Wӯ, do ÿó, ÿӇÿѫn giҧn có thӇ lѭu chúng vào tӯÿLӇn, gӑi là stop list. Ø Sau khi loҥi bӓ các tӯ có trong stop list, xác ÿӏnh các tӯ chӍ mөc “tӕt”. Trѭӟc hӃt cҫn loҥi bӓ các hұu tӕ ÿӇ ÿѭa vӅ tӯ gӕc, ví dө các tӯ nhѭ : analysis, analyzing, analyzer, analyzed, analysing có thӇ chuyӇn vӅ tӯ gӕc là “analy.” Tӯ gӕc sӁ có tҫn sӕ xuҩt hiӋn cao hѫn so vӟi các dҥng thông thѭӡng cӫa nó. NӃu sӱ dөng tӯ gӕc làm chӍ mөc, ta có thӇ thu ÿѭӧc nhiӅu tài liӋu có liên quan hѫn là sӱ dөng tӯ ban ÿҫu Fӫa nó. Ĉӕi vӟi tiӃng Anh, viӋc loҥi bӓ hұu tӕ có thӇÿѭӧc thӵc hiӋn dӉ dàng bҵng cách Vӱ dөng danh sách các hұu tӕ có sҹn (Suffix List). Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 44 NguyӉn Trung HiӃu - 0112216 Sau khi có ÿѭӧc danh sách các tӯ gӕc, sӱ dөng phѭѫng pháp dӵa vào tҫn sӕ (frequency – based) ÿӇ xác ÿӏnh tҫm quan trӑng cӫa các tӯ gӕc này. Chúng ta có thӇ sӱ Gөng mӝt trong các phѭѫng pháp ÿã ÿѭӧc ÿӅ cұp ӣ trên nhѭ : tҫn sӕ tài liӋu nghӏch ÿҧo (inverse document frequency), ÿӝ nhiӉu tín hiӋu (SIGNALk), ÿӝ phân biӋt tӯ (DISVALUEk). Trong hӋ thӕng chӍ mөc có trӑng sӕ, trӑng sӕ cӫa mӝt tӯÿѭӧc sӱ dөng ÿӇ xác ÿӏnh tҫm quan trӑng cӫa tӯÿó. Mӛi tài liӋu ÿѭӧc biӉu diӉn là mӝt vector : Di = (di1, di2, …, dit) trong ÿó dij là trӑng sӕ cӫa tӯ j trong tài liӋu Di. Giҧ sӱ có 1033 tài liӋu nói vӅ y hӑc. Quá trình lұp chӍ mөc ÿѫn giҧn ÿѭӧc thӵc hiӋn nhѭ sau ( trong ÿó chӍ loҥi bӓ hұu tӕ tұn cùng là s): Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 45 NguyӉn Trung HiӃu - 0112216 Hình 4-2 Quá trình chӑn tӯ làm chӍ mөc 3. /ұp chӍ mөc cho tài liӋu tiӃng ViӋt /ұp chӍ mөc cho tài liӋu tiӃng ViӋt cNJng tѭѫng tӵ nhѭ cho tiӃng Anh. Tuy nhiên có vài ÿLӇm khác biӋt sau: Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 46 NguyӉn Trung HiӃu - 0112216 Ø Giai ÿRҥn tách tӯ trong tiӃng Anh chӍ ÿѫn giҧn dӵa vào khoҧng trҳng, còn tiӃng ViӋt là ngôn ngӳÿѫn lұp, mӝt tӯ có thӇ có nhiӅu tiӃng. ĈLӅu này ÿã ÿѭӧc ÿӅ Fұp chi tiӃt ӣ chѭѫng 3 (Tách tӯ). Giҧ sӱ sau giai ÿRҥn tách tӯ, ta sӁ thu ÿѭӧc mӝt danh sách các tӯ riêng biӋt. Ø Ĉӕi vӟi tiӃng ViӋt, không phҧi qua giai ÿRҥn loҥi bӓ hұu tӕ. Nói chung, lұp chӍ mөc cho tài liӋu tiӃng ViӋt gӗm các bѭӟc sau: Ø Xác ÿӏnh các tӯ riêng biӋt trong tài liӋu Ø Loҥi bӓ các tӯ có tҫn sӕ cao. ( Trong tiӃng ViӋt, cNJng nhѭ tiӃng Anh, ta có mӝt danh sách Stop List chӭa nhӳng tӯ không thӇ là nӝi dung cӫa văn bҧn nhѭ: và, Yӟi, nhӳng, gì, sao, nào, …). Ø Loҥi bӓ các tӯ có trӑng sӕ thҩp Ø Các tӯ thu ÿѭӧc sӁÿѭӧc chӑn làm các tӯ chӍ mөc 4. 7ұp tin nghӏch ÿҧo tài liӋu 4.1 Phân biӋt giӳa tұp tin nghӏch ÿҧo và tұp tin trӵc tiӃp 7ұp tin trӵc tiӃp (direct file) là tұp tin mà chính các mөc thông tin ÿã cung cҩp thӭ Wӵ chính cӫa tұp tin. Ngѭӧc lҥi, tұp tin nghӏch ÿҧo (inverted file) ÿѭӧc sҳp xӃp theo chӫÿӅ, mӛi chӫÿӅ Oҥi bao gӗm mӝt tұp các mөc thông tin. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 47 NguyӉn Trung HiӃu - 0112216 Giҧ sӱ có mӝt tұp các tài liӋu, mӛi tài liӋu chӭa danh sách các tӯ. NӃu mӝt tӯ xuҩt hiӋn trong mӝt tài liӋu, ghi sӕ 1. Ngѭӧc lҥi, ghi 0. Khi ÿó, tұp tin trӵc tiӃp và tұp tin nghӏch ÿҧo sӁ lѭu trӳ nhѭ sau: Tài liӋu 1 Tài liӋu 2 Tài liӋu 3 7ӯ 1 1 0 1 7ӯ 2 1 1 0 7ӯ 3 0 1 1 7ӯ 4 1 1 1 %ҧng 4-1 Cách tұp tin nghӏch ÿҧo lѭu trӳ 7ӯ 1 7ӯ 2 7ӯ 3 7ӯ 4 Tài liӋu 1 1 1 0 1 Tài liӋu 2 0 1 1 1 Tài liӋu 3 1 0 1 1 %ҧng 4-2 Cách tұp tin trӵc tiӃp lѭu trӳ 4.2 7ҥi sao sӱ dөng tұp tin nghӏch ÿҧo ÿӇ lұp chӍ mөc Trong hӋ thӕng tìm kiӃm thông tin, tұp tin nghӏch ÿҧo có ý nghƭa rҩt lӟn, giúp viӋc truy cұp ÿӃn các mөc thông tin ÿѭӧc nhanh chóng. Giҧ sӱ khi ngѭӡi dùng nhұp Pӝt câu truy vҩn, hӋ thӕng sӁ tách thành 2 tӯ là “tӯ 1” và “tӯ 2”. Dӵa vào tұp tin Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 48 NguyӉn Trung HiӃu - 0112216 nghӏch ÿҧo, ta dӉ dàng xác ÿӏnh ÿѭӧc các tài liӋu có liên quan ÿӃn 2 tӯ này ÿӇ trҧ vӅ cho ngѭӡi tìm kiӃm. Tuy nhiên, khó khăn chính cӫa tұp tin nghӏch ÿҧo là khi thêm mӝt tài liӋu mӟi, tҩt cҧ các tӯ có liên quan ÿӃn tài liӋu này ÿӅu phҧi ÿѭӧc cұp nhұt lҥi. Ví dө khi thêm tài liӋu 4 có chӭa 2 tӯ “tӯ 3” và “tӯ 4” vào tұp tin nghӏch ÿҧo: Tài liӋu 1 Tài liӋu 2 Tài liӋu 3 Tài liӋu 4 7ӯ 1 1 0 1 0 7ӯ 2 1 1 0 0 7ӯ 3 0 1 1 1 7ӯ 4 1 1 1 1 %ҧng 4-3 Thêm mӝt tài liӋu mӟi vào tұp tin nghӏch ÿҧo Rõ ràng viӋc này tӕn mӝt chi phí lӟn nӃu tұp tin nghӏch ÿҧo rҩt lӟn. Trong thӵc WӃ, tұp tin nghӏch ÿҧo tài liӋu có thӇ chӭa hàng trăm ngàn tӯ. Tuy nhiên, trong các hӋ thӕng tìm kiӃm thông tin, ngѭӡi ta chӍ cұp nhұt lҥi tұp tin tҥi mӝt khoҧng thӡi gian ÿӏnh NǤ. Vì vұy, tұp tin nghӏch ÿҧo vүn ÿѭӧc sӱ dөng ÿӇ lұp chӍ mөc. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 49 NguyӉn Trung HiӃu - 0112216 Phҫn 2 : PHÂN TÍCH VÀ THIӂT Kӂ Chѭѫng 5: PHÂN TÍCH 1. 6ѫÿӗ UseCase hӋ thӕng Hình 5-1 Sѫÿӗ Use-case cӫa hӋ thӕng Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 50 NguyӉn Trung HiӃu - 0112216 STT ACTOR Ý NGHƬA 1 Admin Quҧn trӏ hӋ thӕng 2 User Ngѭӡi sӱ dөng chѭѫng trình 3 Cac tai lieu Các tài liӋu ÿã ÿѭӧc tách tӯ 4 Cac tai lieu lien quan cau hoi Các tài liӋu trҧ vӅ khi ngѭӡi sӱ dөng nhұpvào câu hӓi 5 7ұp tin chi muc 7ұp tin chӭa các tӯ khóa cùng vӟi các tàiliӋu chӭa tӯ khóa ÿó %ҧng 5-1 Danh sách các Actor STT USECASE Ý NGHƬA 1 Tach tu Tách văn bҧn thành các tӯ riêng biӋt 2 Tao moi tұp tin chi muc 7ҥo mӟi mӝt tұp tin chӍ mөc 3 Cap nhat tұp tin chi muc &ұp nhұt thêm các tài liӋu mӟi vào tұp tinchӍ mөc có sҹn 4 Tim kiem Gõ vào tӯ khóa và chӭc năng tìm kiӃm sӁtrҧ vӅ mӝt tұp các tài liӋu liên quan %ҧng 5-2 Danh sách các UseCase Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 51 NguyӉn Trung HiӃu - 0112216 2. 6ѫÿӗ Lӟp 2.1 6ѫÿӗ các lӟp thӇ hiӋn Hình 5-2 Sѫÿӗ các lӟp thӇ hiӋn Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 52 NguyӉn Trung HiӃu - 0112216 2.2 6ѫÿӗ các lӟp xӱ lý Hình 5-3 Sѫÿӗ các lӟp xӱ lý Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 53 NguyӉn Trung HiӃu - 0112216 3. Tách tӯ 3.1 6ѫÿӗ UseCase Hình 5-4 Sѫÿӗ Use-case tách tӯ 3.2 6ѫÿӗ Tuҫn tӵ Hình 5-5 Sѫÿӗ tuҫn tӵ tách tӯ Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 54 NguyӉn Trung HiӃu - 0112216 3.3 6ѫÿӗ Cӝng tác Hình 5-6 Sѫÿӗ cӝng tác tách tӯ 3.4 6ѫÿӗ Lӟp Hình 5-7 Sѫÿӗ lӟp tách tӯ Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 55 NguyӉn Trung HiӃu - 0112216 4. /ұp chӍ mөc 4.1 6ѫÿӗ UseCase Hình 5-8 Sѫÿӗ use-case lұp chӍ mөc Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 56 NguyӉn Trung HiӃu - 0112216 4.2 6ѫÿӗ Tuҫn tӵ 4.2.1 7ҥo mӟi chӍ mөc Hình 5-9 Sѫÿӗ tuҫn tӵ tҥo mӟi chӍ mөc Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 57 NguyӉn Trung HiӃu - 0112216 4.2.2 &ұp nhұt chӍ mөc Hình 5-10 Sѫÿӗ tuҫn tӵ cұp nhұt chӍ mөc Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 58 NguyӉn Trung HiӃu - 0112216 4.3 6ѫÿӗ Cӝng tác 4.3.1 7ҥo mӟi chӍ mөc Hình 5-11 Sѫÿӗ cӝng tác tҥo mӟi chӍ mөc Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 59 NguyӉn Trung HiӃu - 0112216 4.3.2 &ұp nhұt chӍ mөc Hình 5-12 Sѫÿӗ cӝng tác cұp nhұt chӍ mөc Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 60 NguyӉn Trung HiӃu - 0112216 4.4 6ѫÿӗ Lӟp Hình 5-13 Sѫÿӗ lӟp lұp chӍ mөc Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 61 NguyӉn Trung HiӃu - 0112216 5. Tìm kiӃm 5.1 6ѫÿӗ UseCase Hình 5-14 Sѫÿӗ use-case tìm kiӃm 5.2 6ѫÿӗ Tuҫn tӵ Hình 5-15 Sѫÿӗ tuҫn tӵ tìm kiӃm Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 62 NguyӉn Trung HiӃu - 0112216 5.3 6ѫÿӗ Cӝng tác Hình 5-16 Sѫÿӗ cӝng tác tìm kiӃm Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 63 NguyӉn Trung HiӃu - 0112216 5.4 6ѫÿӗ Lӟp Hình 5-17 Sѫÿӗ lӟp tìm kiӃm Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 64 NguyӉn Trung HiӃu - 0112216 Chѭѫng 6: THIӂT Kӂ VÀ CÀI ĈҺT Ø Ngôn ngӳ lұp trình : C#, ASP.NET Ø Công cө lұp trình : Microsoft Visual Studio .NET Ø /ѭu trӳ dӳ liӋu : tұp tin XML Ø Ӭng dөng : Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt +Ӌ thӕng tìm kiӃm sӁÿѭӧc xây dӵng theo mô hình không gian Vector. Các tài liӋu tiӃng ViӋt và câu truy vҩn sӁÿѭӧc tách tӯ theo phѭѫng pháp Longest Matching. 1. &ҩu trúc lѭu trӳ dӳ liӋu 7ҩt cҧ tұp tin văn bҧn, tұp tin chӭa các tӯÿã ÿѭӧc tách, tұp tin chӍ mөc ÿҧo, tұp tin chӭa các tӯ không quan trӑng, tұp tin lѭu trӳÿӝ tѭѫng quan giӳa câu truy vҩn và tài liӋu … ÿӅu ÿѭӧc lѭu trӳ dѭӟi dҥng Xml. 1.1 7ұp tin lѭu nӝi dung tài liӋu Ĉây là tұp tin Xml dùng ÿӇ lѭu nӝi dung cӫa các tұp tin văn bҧn gӕc, mӛi tұp tin chӭa khoҧng 50 tài liӋu, có cҩu trúc cӕÿӏnh, trong chѭѫng trình nó ÿѭӧc lѭu trong thѭ Pөc “VanBanXML”. 1.1.1 &ҩu trúc DTD / XSD · DTD Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 65 NguyӉn Trung HiӃu - 0112216 · XSD <schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes"> <ElementType name="CONTENT" content="textOnly" dt:type="string"/> Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 66 NguyӉn Trung HiӃu - 0112216 1.1.2 Tài liӋu XML Thanh niên VN: ÿӝng lӵc cho nhӳng tҫm nhìn mӟi Tác giҧ: Ĉ.Bình Ngày :01/12/2000 Tên tӡ báo : Tuәi trҿ ThӇ loҥi : ,Trang : trang 1, 14 Thanh niên VN: ÿӝng lӵc cho nhӳng ý tѭӣng mӟi, tҫm nhìn Pӟi. (TT-Hà Nӝi) - Tҥi lӉ khai mҥc DiӉn ÿàn thanh niên (TN) VN vӟi chӫ Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 67 NguyӉn Trung HiӃu - 0112216 ÿӅ “Sҹn sàng cho thӃ kӹ 21” sáng 30-11 tҥi Hà Nӝi (do Hӝi Liên hiӋp TN VN phӕi hӧp vӟi các cѫ quan LHQ tҥi VN tә chӭc), ông Edouard Wattez, ÿLӅu phӕi viên thѭӡng trú LHQ tҥi VN, TN VN có vai trò quan trӑng trong quá trình mӣ cӱa vӟi thӃ giӟi... Ĉ. Bình. …… 1.2 7ұp tin sau khi tách tӯ tài liӋu Ĉây là tұp tin Xml lѭu các tӯ tách ÿѭӧc tӯ các tұp tin văn bҧn gӕc cùng vӟi các ID tham chiӃu tӟi chúng. Mӛi tұp tin chӭa các tӯ cӫa 50 tài liӋu tѭѫng ӭng trong tұp tin Yăn bҧn gӕc, trong chѭѫng trình các tұp tin này ÿѭӧc lѭu ӣ thѭ mөc “TachTu”. 1.2.1 &ҩu trúc DTD / XSD · DTD · XSD <Schema xmlns="urn:schemas-microsoft-com:xml-data" Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 68 NguyӉn Trung HiӃu - 0112216 xmlns:dt="urn:schemas-microsoft-com:datatypes"> 1.2.2 Tài liӋu XML Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 69 NguyӉn Trung HiӃu - 0112216 …… Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 70 NguyӉn Trung HiӃu - 0112216 1.3 7ұp tin chӭa các tӯ không thӇ hiӋn nӝi dung cӫa văn bҧn (stop list) Ĉây là tұp tin Xml chӭa các tӯ không thӇ hiӋn nӝi dung cӫa văn bҧn, gӑi là danh sách StopList, trong chѭѫng trình tұp tin này nҵm trong thѭ mөc “StopList” 1.3.1 &ҩu trúc DTD / XSD · DTD · XSD <Schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes"> Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 71 NguyӉn Trung HiӃu - 0112216 1.3.2 Tài liӋu XML 1.4 7ұp tin chӍ mөc ÿҧo ( Inverted ). 7ұp tin chӍ mөc ÿҧo lѭu các tӯ chӍ mөc, mӛi tӯ có các tham chiӃu ÿӃn tài liӋu chӭa tӯÿó kèm theo tҫn sӕ, trӑng sӕ cӫa tӯÿó trong tài liӋu, trong chѭѫng trình tұp tin này ÿѭӧc lѭu trong thѭ mөc “Inverted ”. 1.4.1 &ҩu trúc DTD / XSD Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 72 NguyӉn Trung HiӃu - 0112216 · DTD · XSD <Schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes"> Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 73 NguyӉn Trung HiӃu - 0112216 1.4.2 Tài liӋu XML Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 74 NguyӉn Trung HiӃu - 0112216 …… 1.5 7ұp tin sau khi tách tӯ câu hӓi. 7ұp tin này chӭa các tӯ tách ÿѭӧc trong câu hӓi, trong chѭѫng trình nó ÿѭӧc lѭu trong thѭ mөc “CauHoi” 1.5.1 &ҩu trúc DTD / XSD · DTD · XSD Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 75 NguyӉn Trung HiӃu - 0112216 <Schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes"> 1.5.2 Tài liӋu XML Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 76 NguyӉn Trung HiӃu - 0112216 1.6 7ұp tin chӭa các tӯ cӫa câu hӓi sau khi loҥi bӓ các tӯ trong danh sách StopList 7ұp tin này ÿѭӧc lѭu trong thѭ mөc “CauHoi”, tên tұp tin là “CauHoiLoaiBoStopList.xml ” 1.6.1 &ҩu trúc DTD / XSD · DTD · XSD <Schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes"> Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 77 NguyӉn Trung HiӃu - 0112216 1.6.2 Tài liӋu XML 1.7 7ұp tin chӭa các tӯ trong câu hӓi và các tài liӋu liên quan 7ұp tin này chӭa các tӯ trong câu hӓi và các tham chiӃu ÿӃn các tài liӋu chӭa các tӯ này, kèm theo tҫn sӕ, trӑng sӕ cӫa mӛi tӯ trong tài liӋu tѭѫng ӭng, nó ÿѭӧc lѭu trong thѭ mөc “CauHoi” và tên tұp tin là “CauHoiVaTaiLieu.xml”. 1.7.1 &ҩu trúc DTD / XSD · DTD Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 78 NguyӉn Trung HiӃu - 0112216 · XSD <Schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes"> Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 79 NguyӉn Trung HiӃu - 0112216 1.7.2 Tài liӋu XML Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 80 NguyӉn Trung HiӃu - 0112216 1.8 7ұp tin chӭa ÿӝ tѭѫng quan giӳa câu hӓi và các tài liӋu 7ұp tin này chӭa tҩt cҧ các tài liӋu liên quan ÿӃn câu hӓi, mӛi tài liӋu sӁ có ÿӝ Wѭѫng quan tѭѫng ӭng và sӕ tӯ trong câu hӓi mà tài liӋu ÿó chӭa. 1.8.1 &ҩu trúc DTD / XSD · DTD Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 81 NguyӉn Trung HiӃu - 0112216 · XSD <Schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes"> Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 82 NguyӉn Trung HiӃu - 0112216 1.8.2 Tài liӋu XML Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 83 NguyӉn Trung HiӃu - 0112216 2. Chi tiӃt các lӟp ÿӕi tѭӧng 2.1 Các lӟp trong quá trình tách tӯ 2.1.1 6ѫ ÿӗ các lӟp Hình 6-1 Sѫÿӗ lӟp tách tӯ 2.1.2 /ӟp tách tӯ ghép Hình 6-2 Lӟp tách tӯ ghép /ӟp tách tӯ ghép sӁ có nhiӋm vө tách mӝt văn bҧn thành các tӯ riêng biӋt. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 84 NguyӉn Trung HiӃu - 0112216 Ĉҫu vào là mӝt chuӛi văn bҧn và ÿҫu ra là mӝt chuӛi chӭa các tӯ, mӛi tӯ sӁ cách nhau Eӣi dҩu xuӕng dòng ( ‘\r\n’ ). Ví dө : chuӛi ÿҫu vào = “Thanh niên VN: ÿӝng lӵc cho nhӳng ý tѭӣng mӟi, tҫm nhìn mӟi.” chuӛi ÿҫu ra = “Thanh niên\r\nVN\r\nÿӝng lӵc\r\ncho\r\nnhӳng\r\ný tѭӣng\r\n Pӟi\r\ntҫm nhìn\r\nmӟi\r\n”. 2.1.2.1 Ý nghƭa cӫa các biӃn thành phҫn: · ch : mҧng các ký tӵÿһc biӋt (dҩu chҩm, dҩu phҭy, chҩm than, chҩm hӓi, hai chҩm,…) ÿӇ tách văn bҧn thành các cөm tӯ. · hVietnamese : bҧng băm ÿӇ lѭu tҩt cҧ các tӯ trong tӯÿLӇn tiӃng ViӋt. 2.1.2.2 Các hàm chính : - Hàm TachThanhCumTu( ) : tách chuӛi văn bҧn thành các cөm tӯ dӵa vào các kí tӵÿһc biӋt nhѭ : dҩu chҩm, phҭy, chҩm hӓi, chҩm than… * Thuұt toán : void TachThanhCumTu (chuӛi văn bҧn) { while(gһp tӵÿһc biӋt ÿҫu tiên trong chuӛi văn bҧn) { // Cҳt phҫn ÿҫu thành mӝt cөm tӯ. // Gán chuӛi văn bҧn thành phҫn sau. } } Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 85 NguyӉn Trung HiӃu - 0112216 Ví dө : chuӛi ÿҫu vào = “Thanh niên VN: ÿӝng lӵc cho nhӳng ý tѭӣng mӟi, tҫm nhìn mӟi.” trҧ vӅ ta sӁ có 3 chuӛi cөm tӯ : chuӛi 1 = “Thanh niên VN” chuӛi 2 = “ÿӝng lӵc cho nhӳng ý tѭӣng mӟi” chuӛi 3 = “tҫm nhìn mӟi” - Hàm TachMangTieng( ) : tách mӝt cөm tӯ thành tӯng tiӃng dӵa vào khӓang trҳng. * Thuұt toán : void TachMangTieng(cөm tӯ) { while(gһp ký tӵ khoҧng trҳng ÿҫu tiên trong cөm tӯ) { // Cҳt phҫn ÿҫu thành mӝt tiӃng. // Gán cөm tӯ thành phҫn sau. } } Ví dө : chuӛi ÿҫu vào = “ÿӝng lӵc cho nhӳng ý tѭӣng mӟi” trҧ vӅ là mҧng chuӛi chӭa các tiӃng = {ÿӝng”;”lӵc”;”cho” “nhӳng”;”ý”;”tѭӣng”;”mӟi”} - Hàm XacDinhTu( ) : gӝp các tiӃng lҥi thành tӯ, so sánh trong tӯÿLӇn tiӃng ViӋt và ta sӁ lѭu lҥi các tӯ này vào mҧng các tӯ. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 86 NguyӉn Trung HiӃu - 0112216 * Thuұt toán : void XacDinhTu(mҧng các tiӃng) { B1 : gán tӯ = tiӃng ÿҫu tiên. B2 : so sánh tӯ có trong tӯÿLӇn hay không. B3 : nӃu tӯ có trong tӯÿLӇn và có 2 tiӃng trӣ lên thì ta sӁ lѭu lҥi. B4 : NӃu trong mҧng tiӃng vүn còn thì tӯ := tӯ + tiӃng tiӃp theo. Ngѭӧc lҥi kӃt thúc hàm. B5 : Quay lҥi B2 } 9ӟi các mҧng tiӃng cӫa ví dө trên sau khi gӑi hàm này thì ta sӁ có mҧng các tӯ nhѭ sau: Pҧng chuӛi các tӯ={”ÿӝng lӵc”;”cho” “nhӳng”;”ý tѭӣng”; ”mӟi”} 2.1.3 /ӟp tách tӯ Hình 6-3 Lӟp tách tӯ Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 87 NguyӉn Trung HiӃu - 0112216 /ӟp tách tӯ sӁ có nhiӋm vө tҥo tұp tin văn bҧn Xml tӯ tұp tin văn bҧn gӕc, sau ÿó sӁ trích các tӯ trong văn bҧn và cuӕi cùng lѭu lҥi các tӯ trích ÿѭӧc cùng vӟi các tài liӋu chӭa tӯÿó thành tұp tin Xml tách tӯ. 2.1.3.1 Ý nghƭa cӫa các biӃn thành phҫn: · ttg : ÿӕi tѭӧng thuӝc lӟp CTachTuGhep 2.1.3.2 Các hàm chính : - Hàm TaoXML( ) : chuyӇn mӝt tұp tin văn bҧn có cҩu trúc thành tұp tin XML * Thuұt toán : void TaoXML (tұp tin văn bҧn) { Tҥo tұp tin Xml ÿӇ lѭu lҥi nӝi dung tұp tin văn bҧn. // Dӏch con trӓ tұp tin while(chѭa hӃt tұp tin văn bҧn) { B1 : tìm tӯ khóa DOC lҩy phҫn giá trӏ. B2 : tìm tӯ khóa TITLE lҩy phҫn giá trӏ. B3 : tìm tӯ khóa AUTHOR lҩy phҫn giá trӏ. B4 : tìm tӯ khóa DATE lҩy phҫn giá trӏ. B5 : tìm tӯ khóa NEW lҩy phҫn giá trӏ. B6 : tìm tӯ khóa CONTENT lҩy phҫn giá trӏ. lѭu lҥi phҫn giá trӏ vào tұp tin Xml. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 88 NguyӉn Trung HiӃu - 0112216 }// ENDWHILE } - Hàm Tachtu( ) : Ĉӑc phҫn nӝi dung cӫa tұp tin XML văn bҧn và dùng ÿӕi Wѭӧng thuӝc lӟp CTachTuGhep ÿӇ trích thành các tӯ. * Thuұt toán : string Tachtu (tұp tin văn bҧn Xml) { - /ҩy phҫn nӝi dung (CONTENT) trong tұp tin Xml - Dùng ÿӕi tѭӧng cӫa lӟp tách tӯ ghép ÿӇ tách tӯ. - .Ӄt quҧ trҧ vӅ sӁ là mӝt mҧng chӭa các tӯ riêng biӋt. } - Hàm KetQuaToXmlWord( ) : các tӯ sau khi trích sӁÿѭӧc lѭu thành tұp tin XML mӟi gӑi là “tұp tin sau khi tách tӯ tài liӋu” * Thuұt toán : void KetQuaToXmlWord(chuӛi chӭa các tӯ) { B1 : Tҥo mӝt tұp tin Xml B2 : Tách ra tӯng tӯ trong chuӛi B3 : KiӇm tra tӯÿó có lѭu trong tұp tin Xml chѭa ? o 1Ӄu chѭa : lѭu tӯÿó và lѭu tài liӋu tѭѫng ӭng o 1Ӄu rӗi : kiӇm tra tài liӋu ÿó ÿã ÿѭӧc lѭu trong tӯÿó chѭa. 1Ӄu chѭa ta mӟi lѭu tài liӋu ÿó. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 89 NguyӉn Trung HiӃu - 0112216 B4 : NӃu chѭa hӃt chuӛi quay lҥi bѭӟc 2. B5 : Lѭu tұp tin Xml lҥi. } 2.1.4 /ӟp giao diӋn tách tӯ Hình 6-4 Lӟp giao diӋn tách tӯ * Giao diӋn tách tӯ : Hình 6-5 Màn hình tách tӯ Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 90 NguyӉn Trung HiӃu - 0112216 - Ngѭӡi dùng có thӇ chӑn ÿѭӡng dүn tӟi các tұp tin văn bҧn cҫn tách tӯ. - ListBox1 chӭa các tұp tin văn bҧn trong ÿѭӡng dүn ÿã chӑn. - ListBox2 chӭa các tұp tin văn bҧn ÿѭӧc chӑn ÿӇ tách tӯ. - ListBox3 chӭa các tұp tin xml ÿã ÿѭӧc tách tӯ. - ListBox4 chӭa các DocID trong tұp tin xml ÿã ÿѭӧc tách tӯ. Vì mӝt tұp tin văn bҧn xml sӁ chӭa nhiӅu tài liӋu và mӛi tài liӋu sӁ có 1 DocID. Ngѭӡi dùng có thӇ chӑn DocID nào ÿó ÿӇ xem kӃt quҧ tách tӯ và tҫn sӕ cӫa mӛi tӯ trong tài liӋu ÿó. Sau khi chӑn mӝt DocID sӁ có giao diӋn nhѭ sau : Hình 6-6 Màn hình chi tiӃt tách tӯ Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 91 NguyӉn Trung HiӃu - 0112216 - Hàm xӱ lý TachTu_Click( ) : hàm này sӁ tách tӯ tҩt cҧ các tұp tin ÿѭӧc chӑn trong ListBox2. 2.2 Các lӟp trong quá trình lұp chӍ mөc 2.2.1 6ѫÿӗ các lӟp Hình 6-7 Sѫÿӗ lӟp lұp chӍ mөc Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 92 NguyӉn Trung HiӃu - 0112216 2.2.2 /ӟp lұp chӍ mөc Hình 6-8 Lӟp lұp chӍ mөc Ĉҫu vào cӫa lӟp lұp chӍ mөc là các tұp tin tài liӋu ÿã ÿѭӧc tách tӯ và ÿҫu ra sӁ là Wұp tin chӍ mөc tài liӋu. Nó sӁ làm nhiӋm vө tính tҫn sӕ, trӑng sӕ cӫa tӯ trong tài liӋu sau ÿó sӁ lѭu các thông tin này lҥi thành tұp tin Xml chӍ mөc tài liӋu. 2.2.2.1 Ý nghƭa cӫa các biӃn thành phҫn : · sl : ÿӕi tѭӧng thuӝc lӟp CstopList ÿӇ kiӇm tra tӯ có nҵm trong danh sách StopList hay không. 2.2.2.2 Các hàm chính : - Hàm TinhTanSo( ) : tính sӕ lҫn xuҩt hiӋn cӫa tӯ trong tài liӋu. * Thuұt toán : int TinhTanSo(string Tu, string MaTL) { - Tӯ mã tài liӋu xác ÿӏnh ÿѭӧc tên tұp tin chӭa nӝi dung cӫa tài liӋu. - DuyӋt tӯÿҫu ÿӃn cuӕi văn bҧn ta tìm tӯ khóa cҫn tìm, nӃu Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 93 NguyӉn Trung HiӃu - 0112216 tìm thҩy thì tăng biӃn ÿӃm lên mӝt ÿѫn vӏ. - Trҧ vӅ biӃn ÿӃm } - Hàm TinhTrongSo( ) : tính trӑng sӕ cӫa tӯ trong tài liӋu. * Thuұt toán : double TinhTrongSo( int Tҫnsӕ) { return TanSo* log 10 (tәng sӕ tài liӋu / sӕ tài liӋu chӭa tӯÿó) } - Hàm ThemTaiLieuVaoInverted() : hàm này dùng ÿӇ cұp nhұt thêm tұp tin tài liӋu vào tұp tin Inverted. * Thuұt toán : void ThemTaiLieuVaoInverted( ) { B1 : DuyӋt qua tӯng tӯ cӫa tұp tin tài liӋu. B2 : NӃu tӯÿó có nҵm trong StopList thì quay lҥi B1. B3 : Tính tҫn sӕ cӫa tӯ trong tài liӋu. B3 : KiӇm tra tӯÿó có trong tұp tin Inverted chѭa ? - NӃu chѭa ta thêm tӯ mӟi và thêm mã tài liӋu, tҫn sӕ, trӑng sӕ cho Eҵng 0. - NӃu có rӗi ta chӍ cҫn thêm mã tài liӋu, tҫn sӕ, trӑng sӕ ( 0 ) vào Wӯ mà ta tìm thҩy trong tұp tin Inverted. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 94 NguyӉn Trung HiӃu - 0112216 B4 : Cұp nhұt lҥi trӑng sӕ tòan bӝ tұp tin Inverted. } - Hàm CapNhatTrongSo() : Sau khi thêm tài liӋu mӟi vào trӑng sӕ sӁ không còn chính xác nӳa nên ta phҧi cұp nhұt lҥi trӑng sӕ. * Thuұt toán : void CapNhatTrongSo() { - DuyӋt qua tӯng tӯ trong tұp tin Inverted. - Tính sӕ tài liӋu chӭa tӯÿó (sӕ nút con cӫa nó) - Tính tәng sӕ tài liӋu. - Cұp nhұt lҥi thuӝc tính trӑng sӕ (gӑi hàm TinhTrongSo) } 2.2.3 /ӟp giao diӋn tҥo mӟi chӍ mөc Hình 6-9 Lӟp giao diӋn tҥo mӟi chӍ mөc /ӟp này sӁ có các ÿӕi tѭӧng hӛ trӧ giao diӋn cho ngѭӡi sӱ dөng lұp chӍ mөc, Wҥo ra tұp tin Inverted mӟi 2.2.3.1 Ý nghƭa cӫa các biӃn thành phҫn : Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 95 NguyӉn Trung HiӃu - 0112216 · lcm : ÿӕi tѭӧng thuӝc lӟp lұp chӍ mөc. 2.2.3.2 Màn hình giao diӋn tҥo mӟi chӍ mөc : Hình 6-10 Màn hình tҥo mӟi chӍ mөc · txtDuongDan : chӭa ÿѭӡng dүn ÿӃn các tұp tin ÿã ÿѭӧc tách tӯ. · btnDuongDan : chӑn ÿѭӡng dүn ÿӃn các tұp tin ÿã ÿѭӧc tách tӯ. · ListBox1 : chӭa các tұp tin Xml trong ÿѭӡng dүn cӫa txtDuongDan · ListBox2 : chӭa các tұp tin Xml ÿѭӧc chӑn lұp chӍ mөc. · btnLeft, btnRight : chuyӇn các tұp tin qua lҥi giӳa 2 ListBox Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 96 NguyӉn Trung HiӃu - 0112216 · chkSelectAll : chӑn tҩt cҧ các tұp tin ÿӇ lұp chӍ mөc. · chkRemoveAll : Loҥi bӓ tҩt cҧ. · btnThoat : trӣ lҥi Form chính. · btnLapChiMuc : chѭѫng trình bҳt ÿҫu lұp chӍ mөc. - Sӵ kiӋn btnLapChiMuc_Click() : dùng ÿӕi tѭӧng lcm (cӫa lӟp lұp chӍ mөc) ÿӇ lұp chӍ mөc cho tҩt cҧ các tұp tin trong ListBox2. 2.2.4 /ӟp giao diӋn cұp nhұt chӍ mөc Hình 6-11 Lӟp Màn hình cұp nhұt chӍ mөc /ӟp MH_CapNhatChiMuc sӁ làm nhiӋm vө cұp nhұt các tұp tin Xml ÿã ÿѭӧc tách tӯ vào tұp tin ÿã lұp chӍ mөc Inverted. 2.2.4.1 Ý nghƭa cӫa các biӃn thành phҫn : · lcm : ÿӕi tѭӧng thuӝc lӟp lұp chӍ mөc. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 97 NguyӉn Trung HiӃu - 0112216 2.2.4.2 Màn hình giao diӋn cұp nhұt chӍ mөc : Hình 6-12 Màn hình cұp nhұt chӍ mөc · txtDuongDan : chӭa ÿѭӡng dүn ÿӃn các tұp tin ÿã ÿѭӧc tách tӯ. · btnDuongDan : chӑn ÿѭӡng dүn ÿӃn các tұp tin ÿã ÿѭӧc tách tӯ. · ListBox1 : chӭa các tұp tin Xml trong ÿѭӡng dүn cӫa txtDuongDan Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 98 NguyӉn Trung HiӃu - 0112216 · ListBox2 : chӭa các tұp tin Xml ÿѭӧc chӑn lұp chӍ mөc. · ListBox3 : chӭa các tұp tin ÿã ÿѭӧc lұp chӍ mөc. · btnLeft, btnRight : chuyӇn các tұp tin qua lҥi giӳa ListBox1 và ListBox2 · chkSelectAll : chӑn tҩt cҧ các tұp tin ÿӇ lұp chӍ mөc. · chkRemoveAll : loҥi bӓ tҩt cҧ. · btnThoat : trӣ lҥi Form chính. · btnCapNhat : chѭѫng trình bҳt ÿҫu cұp nhұt chӍ mөc. - Sӵ kiӋn btnCapNhat_Click( ) : dùng ÿӕi tѭӧng lcm (cӫa lӟp lұp chӍ mөc) ÿӇ Fұp nhұt chӍ mөc cho tҩt cҧ các tұp tin trong ListBox2, các tұp tin nӃu ÿã ÿѭӧc Oұp chӍ mөc rӗi thì chѭѫng trình tӵÿӝng bӓ qua. 2.3 Các lӟp trong quá trình tìm kiӃm 2.3.1 6ѫÿӗ các lӟp Hình 6-13 Sѫÿӗ lӟp tìm kiӃm Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 99 NguyӉn Trung HiӃu - 0112216 2.3.2 /ӟp tìm kiӃm Hình 6-14 Lӟp xӱ lý tìm kiӃm Lӟp CTimKiem sӁ có nhiӋm vө tách tӯ câu hӓi, loҥi bӓ các tӯ trong danh sách StopList, sau ÿó tìm các tӯ khóa cӫa câu hӓi trong tұp tin Inverted ÿӇ xác ÿӏnh các tài liӋu liên quan ÿӃn câu hӓi, cuӕi cùng là tính ÿӝ tѭѫng quan giӳa các tài liӋu vӟi câu Kӓi, sҳp xӃp ÿӝ tѭѫng quan giҧm dҫn và hiӇn thӏ cho ngѭӡi sӱ dөng. 2.3.2.1 Ý nghƭa cӫa các biӃn thành phҫn: · ttg : ÿây là ÿӕi tѭӧng cӫa lӟp tách tӯ ghép dùng ÿӇ tách tӯ câu hӓi. · sl : ÿây là ÿӕi tѭӧng cӫa lӟp CstopList dùng ÿӇ kiӇm tra các tӯ trong câu hӓi có nҵm trong danh sách StopList không. 2.3.2.2 Các hàm chính : - Hàm TachTuCauHoi( ) : hàm này nhҵm mөc ÿích tách câu hӓi thành các tӯ riêng biӋt. Ta dùng mӝt ÿӕi tѭӧng thuӝc lӟp CTachTuGhep ÿӇ tách tӯ câu hӓi. KӃt quҧ trҧ vӅ là mӝt chuӛi chӭa các tӯÿã ÿѭӧc tách ta sӁ lѭu vào mӝt tұp tin CauHoi.xml trong thѭ mөc CauHoi. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 100 NguyӉn Trung HiӃu - 0112216 * Thuұt toán : void TachTuCauHoi(câu hӓi) { CTachTuGhep ttg = new CTachTuGhep String str = ttg.TachTuGhep(câu hӓi) Lҩy tӯng tӯ trong chuӛi str ÿѭa vào tұp tin CauHoi.xml } Ví dө : tұp tin CauHoi.xml - Hàm LoaiBoSLCauHoi( ) : hàm này nhҵm mөc ÿích loҥi bӓ các tӯ không quan trӑng trong câu hӓi. * Thuұt toán : void LoaiBoSLCauHoi() { - 0ӣ tұp tin CauHoi.xml - DuyӋt qua các tӯ xem có nҵm trong StopList hay không ? Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 101 NguyӉn Trung HiӃu - 0112216 - 1Ӄu không ÿѭa vào tұp tin CauHoiLoaiBoSL.xml ( tұp tin này cNJng Qҵm trong thѭ mөc CauHoi) } Ví dө : tұp tin CauHoiLoaiBoSL.xml - Hàm ThemDocVaWeight( ) : hàm này nhҵm mөc ÿích là tìm kiӃm trong tұp tin Inverted các tài liӋu liên quan ÿӃn các tӯ khóa cӫa câu hӓi. * Thuұt toán : void ThemDocVaWeight() { - 0ӣ tұp tin CauHoiLoaiBoST.xml và duyӋt qua tӯng tӯ. - 7ҥo tұp tin CauHoiVaTaiLieu.xml - Ĉӕi vӟi tӯng tӯ ta dùng công cө XPath ÿӇ xác ÿӏnh vӏ trí tӯ trong tұp tin Inverted - Ĉѭa tӯ khóa và các tài liӋu liên quan ( mã tài liӋu, tҫn sӕ, trӑng sӕ) vào tұp tin CauHoiVaTaiLieu.xml } Ví dө : tұp tin CauHoiVaTaiLieu.xml sau khi gӑi hàm ThemDocVaWeight Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 102 NguyӉn Trung HiӃu - 0112216 - Hàm BoSungCacDocThieu( ) : hàm này nhҵm mөc ÿích bә sung các tài liӋu có trong tӯ khóa này mà không có trong tӯ khóa khác ( phҫn tҫn sӕ và trӑng sӕ ta sӁÿӇ giá trӏ là 0 ). Ví dө : tұp tin CauHoiVaTaiLieu.xml sau khi gӑi hàm BoSungCacDocThieu Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 103 NguyӉn Trung HiӃu - 0112216 - Hàm TaoFileDoTuongQuan( ) : hàm này nhҵm mөc ÿích tҥo ra tұp tin TuongQuan.xml chӭa câu hӓi và các tài liӋu liên quan ÿӃn câu hӓi kèm vӟi ÿӝ tѭѫng quan dӵa vào tұp tin CauHoiVaTaiLieu.xml Theo lý thuyӃt thì ÿӝ tѭѫng quan giӳa tài liӋu Di và câu hӓi Q sӁÿѭӧc tính theo công thӭc : SC(Q,Di) = ij 1 w * n qj j d = å 9ӟi : n : Sӕ tӯ phân biӋt trong tұp tài liӋu. dij : trӑng sӕ cӫa tӯ j trong tài liӋu di. (ta ÿã tính ÿѭӧc trѭӟc ÿó) wqj : trӑng sӕ cӫa tӯ j trong câu truy vҩn Q. SӁ có 2 giá trӏ nhѭ sau : Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 104 NguyӉn Trung HiӃu - 0112216 wqj = 1 : NӃu tӯ j có trong câu truy vҩn Q. wqj = 0 : NӃu tӯ j không có trong câu truy vҩn Q. Thӵc chҩt là ta chӍ cҫn cӝng các ÿӝ tѭѫng quan tӯng tӯ khóa cӫa câu hӓi là ta sӁ có ÿӝ Wѭѫng quan cӫa câu hӓi vӟi tài liӋu. Ví dө : tұp tin TuongQuan.xml sau khi gӑi hàm TaoFileDoTuongQuan - Hàm TinhDoTuongQuan( ) : hàm này nhҵm tính ÿӝ tѭѫng quan giӳa câu hӓi và các tài liӋu có liên quan ÿӃn nó. Trên thӵc tӃ là ta gӑi 3 hàm vӯa nêu trên. * Thuұt toán : void TinhDoTuongQuan() { ThemDocVaWeight(); BoSungCacDocThieu(); TaoFileDoTuongQuan(); } Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 105 NguyӉn Trung HiӃu - 0112216 2.3.3 /ӟp giao diӋn tìm kiӃm Hình 6-15 Lӟp giao diӋn tìm kiӃm 8.3.1. Ý nghƭa cӫa các biӃn thành phҫn : § Term : mҧng chuӛi chӭa các tӯ khóa cӫa câu hӓi. § DocID : mҧng chuӛi chӭa DocID liên quan ÿӃn câu hӓi. § Sim : mҧng sӕ thӵc chӭa các ÿӝ tѭѫng quan cӫa câu hӓi vӟi các tài liӋu (DocID tѭѫng ӭng). §Words : mҧng sӕ nguyên chӭa sӕ tӯ cӫa câu hӓi có trong tài liӋu (DocID tѭѫng ӭng). § n : tәng sӕ tài liӋu liên quan ÿӃn câu hӓi. § tk : ÿӕi tѭӧng cӫa lӟp xӱ lý tìm kiӃm. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 106 NguyӉn Trung HiӃu - 0112216 * Giao diӋn tìm kiӃm : Hình 6-16 Màn hình tìm kiӃm - Sau khi tìm kiӃm xong ngѭӡi sӱ dөng có thӇ xem tӯ khóa cӫa câu hӓi. Ví dө vӟi câu Kӓi : an toàn giao thông tҥi Tp. HCM bҥn sӁ có ÿѭӧc tӯ khóa nhѭ sau : Hình 6-17 Xem tӯ khóa câu hӓi Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 107 NguyӉn Trung HiӃu - 0112216 - Xem tӯ khóa cӫa tài liӋu : nghƭa là khi ngѭӡi sӱ dөng chӑn mӝt tài liӋu nào ÿó và chӑn chӭc năng xem tӯ khóa tài liӋu thì hӑ sӁ thҩy tӯ khóa ÿó xuҩt hiӋn vӟi tҫn sӕ bao nhiêu và trӑng sӕ tѭѫng ӭng cӫa nó. Hình 6-18 Xem tӯ khóa tài liӋu 8.3.2. Các hàm chính cӫa lӟp : - Hàm TimKiem_Click( ) : hàm này sӁ dùng ÿӕi tѭӧng cӫa lӟp xӱ lý tìm kiӃm ÿӇ tách tӯ câu hӓi rӗi tính ÿӝ tѭѫng quan cӫa các tài liӋu vӟi câu hӓi * Thuұt toán : void TimKiem_Click() { CtimKiem tk = new CtimKiem; tk.TachTuCauHoi(câu hӓi) tk.LoaiBoSLCauHoi(câu hӓi); tk.TinhDoTuongQuan(); // Sau khi gӑi 3 hàm này ta sӁ tҥo ra ÿѭӧc tұp tin TuongQuan.xml  Ĉӑc tұp tin TuongQuan.xml ta ÿѭa vào mҧng các DocID, Sim, Words Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 108 NguyӉn Trung HiӃu - 0112216 SapXepUuTien(); HienThiTaiLieu(); } - Hàm sҳp xӃp ѭu tiên : dùng giҧi thuұt InterchangeSort ÿӇ sҳp xӃp tài liӋu nào liên quan ÿӃn câu hӓi nhiӅu nhҩt. * Thuұt toán : void SapXepUuTien () { // Ѭu tiên theo Words (sӕ tӯ cӫa câu hӓi trong tài liӋu) // Ѭu tiên theo Sim (ÿӝ tѭѫng quan cӫa tài liӋu vӟi câu hӓi) } - Hàm hiӇn thӏ tài liӋu : ta sӁ hiӇn thӏ tài liӋu lên Form cho ngѭӡi dùng xem. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 109 NguyӉn Trung HiӃu - 0112216 3.0ӝt sӕ màn hình giao diӋn khác 3.1 Màn hình chính cӫa chѭѫng trình Hình 6-19 Màn hình chính Chѭѫng trình sӁ có 6 chӭc năng : · Tách tӯ : tách tӯ các tài liӋu. · 7ҥo mӟi chӍ mөc : tҥo tұp tin Inverted. · &ұp nhұt chӍ mөc : cұp nhұt thêm tài liӋu vào tұp tin Inverted. · Tìm kiӃm : gõ câu hӓi và nhұn các tài liӋu trҧ vӅ. Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 110 NguyӉn Trung HiӃu - 0112216 · Thoát : thóat hӋ thӕng chѭѫng trình. 3.2 Màn hình tìm kiӃm nhiӅu câu hӓi Hình 6-20 Màn hình tìm kiӃm nhiӅu câu hӓi Các câu hӓi sӁÿѭӧc lѭu trong mӝt tұp tin Xml và theo cҩu trúc. Ví dө tұp tin CauHoi.xml sau : kinh tӃ tri thӭc Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 111 NguyӉn Trung HiӃu - 0112216 Yө án tham nhNJng lӟn Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 112 NguyӉn Trung HiӃu - 0112216 3.3 Màn hình tìm kiӃm chính ( giao diӋn Web) Hình 6-21 Giao diӋn tìm kiӃm trên Web Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋt dӵa trên các chӍ mөc là các tӯ ghép NguyӉn Thӏ Thanh Hà - 0112215 113 NguyӉn Trung HiӃu - 0112216 3.4 Màn hình trҧ vӅ các tài liӋu tìm ÿѭӧc ( giao diӋn Web) Hình 6-22 Giao diӋn các tài liӋu trҧ vӅ sau khi tìm kiӃm Xây dӵng hӋ thӕng tìm kiӃm thông tin tiӃng ViӋ

Các file đính kèm theo tài liệu này:

  • pdf01122150112216.pdf
Tài liệu liên quan