Tìm hiểu về Search Engine và xây dựng ứng dụng minh hoạ cho Search Engine tiếng Việt



tải về 1.53 Mb.
trang3/6
Chuyển đổi dữ liệu14.05.2018
Kích1.53 Mb.
#38357
1   2   3   4   5   6

BỘ LẬP CHỈ MỤC – INDEX

  1. Khái quát về hệ thống lập chỉ mục


Các trang Web sau khi thu thập về sẽ được phân tích, trích chọn những thông tin cần thiết (thường là các từ đơn , từ ghép , cụm từ quan trọng) để lưu trữ trong cơ sở dữ liệu nhằm phục vụ cho nhu cầu tìm kiếm sau này.

M
Hìng 1
ô hình xử lý tổng quát của một hệ thống được trình bày như sau
:



Hình ‎3.1 Lưu đồ xử l‎ý cho hệ thống lập chỉ mục

Lập chỉ mục là quá trình phân tích và xác định các từ , cụm từ thích hợp cốt lõi có khả năng đại diện cho nội dung của tài liệu . Như vậy, vấn đề đặt ra là phải rút trích ra những thông tin chính, có khả năng đại diện cho nội dung của tài liệu. Thông tin này phải “vừa đủ”, nghĩa là không thiếu để trả ra kết quả đầy đủ so với nhu cầu tìm kiếm, nhưng cũng phải không dư để giảm chi phí lưu trữ và chi phí tìm kiếm và để loại bỏ kết quả dư thừa không phù hợp. Việc rút trích này chính là việc lập chỉ mục trên tài liệu. Trước đây , quá trình này thường được các chuyên viên đã qua đào tạo thực hiện một cách “thủ công “ nên có độ chính xác cao. Nhưng trong môi trường hiện đại ngày nay, với lượng thông tin khổng lồ thì việc lập chỉ mục bằng tay không còn phù hợp, phương pháp lập chỉ mục tự động mang lại hiệu quả cao hơn.

Một thủ tục lập chỉ mục tự động cơ bản cho các tài liệu tiếng Anh có thể được xử l‎ý như sau: [III.1]


  1. Step of tokenization: Tách văn bản ra thành các chuỗi nhờ vào khoảng trắng, mỗi chuỗi xem như là một từ.

  2. Step of removal of stop words: bỏ những từ thường xuyên xuất hiện trong hầu hết các tài liệu nhưng lại không quan trọng trong các tài liệu như tính từ, đại từ.

  3. Step of stemming: loại bỏ các hậu tố (suffixes) để đưa về các từ gốc

Các từ thu được sẽ được lập chỉ mục. Tuy nhiên hai bước đầu cũng cần cho quá trình lập chỉ mục cho các tài liệu tiếng Việt, bước thứ ba không cần vì tiếng Việt thuộc dòng ngôn ngữ đơn thể.
      1. Tổng quan về phương pháp lập chỉ mục ([I.1], [I.2], [II.1])


Phương pháp lập chỉ mục gồm 2 phần chính yếu sau :

 đầu tiên là xác định các mục từ , khái niệm mà có khả năng đại diện cho văn bản sẽ được lưu trữ (bao gồm cả việc tách từ, loại bỏ stop-word, xử l‎ý hậu tố…)

 thứ hai là xác định trọng số cho từng mục từ , trọng số này là giá trị phản ánh tầm quan trọng của mục từ đó trong văn bản

        1. Xác định mục từ quan trọng cần lập chỉ mục ([I.1])


Mục từ hay còn gọi là mục từ chỉ mục, là đơn vị cơ sở cho quá trình lập chỉ mục. Mục từ có thể là từ đơn, từ phức hay một tổ hợp từ có nghĩa trong một ngữ cảnh cụ thể. Ta xác định mục từ của 1 văn bản dựa vào chính nội dung của văn bản đó , hoặc dựa vào tiêu đề hoặc tóm tắt nội dung của văn bản đó.

Hầu hết việc lập chỉ mục tự động bắt đầu với việc khảo sát tần số xuất hiện của từng loại từ riêng rẽ trong văn bản. Nếu tất cả các từ xuất hiên trong tập tài liêu với những tần số băng nhau, thì không thể phân biệt các mục từ theo tiêu chuẩn định lượng. Tuy nhiên, trong văn bản ngôn ngữ tự nhiên, tần số xuất hiện của từ có tính thất thường, Do đó những mục từ có thể được phân biệt bởi tần số xuất hiên của chúng.

Đặc trưng xuất hiện của từ vựng có thể được định bởi hằng số “thứ hạng - tần số” (Rank_Frequency ) theo luật của Zipf :


Tân số xuất hiên * thứ hạng = Hằng số.


Biểu thức luật Zipf có thể dẫn ra những hệ số ý nghĩa của từ dựa vào những đặc trưng của tân số xuất hiện của mục từ riêng lẽ trong những văn bản tài liệu.

Một đề xuất dựa theo sự xem xét chung sau:


  1. Cho một tập hợp n tài liệu, trong mỗi tài liệu tính toán tần số xuất hiện của các mục từ trong tài liệu đó.

Fik (Frequency): tần số xuất hiện của mục từ k trong tài liệu i

  1. Xác định tổng số tập tấn số xuất hiện TFk (Total Frequency) cho mỗi từ bằng cách cộng những tần số của mỗi mục từ duy nhất trên tất cả n tài liệu.

n

TFk = ∑ Fik.

i=1


  1. Sắp xếp những thứ tự giảm theo tập tần số xuất hiện của chúng. Quyết định giá trị ngữơng cao và loại bỏ tất cả những từ có tập tần số xuất hiện cao trên ngững nay. Những từ bị loại bỏ là những từ xuất hiện phổ biến ở hầu hết các tài liệu. Đó chính là các stop-word.

  2. Tương tư, loại trừ những từ được xem là có tần số xuất hiện thấp. Việc xoá những mục từ như vậy hiếm khi xảy ra trong tập hợp mà sự mặt của chúng không làm ảnh hưởng lớn đến việc thực hiện truy vấn.

  3. Những từ xuất hiện trung bình còn lại bây giờ được dùng cho việc ấn định tới những tài liệu như những mục từ chỉ mục.

Chú ý: một khái niệm xuất hiện ít nhất hai lần trong cùng một đoạn thì được xem là một khái niệm chính. Một khái niệm xuất hiện trong hai đoạn văn liên tiếp cũng được xem là một khái niệm chính mặc dù nó chỉ xuất hiện duy nhất một lần trong đoạn đang xét. Tất cả những chú giải về những khái niệm chính được liệt kê theo một tiêu chuẩn nhất định nào đó.

Thực tế cho thấy rằng ý tưởng trên khá cứng nhắc , vì nếu lọai bỏ tất cả những từ có tần số xuất hiện cao sẽ làm giảm giá trị recall (độ tương tự), tức giảm hiệu quả trong việc trả về số lượng lớn của những mục tin thích đáng. Ngược lại, sự loại bỏ những mục từ có tần số xuất hiện thấp có thể làm giảm giá trị của độ chính xác . Một vấn đề khác là sự cần thiết để chọn những ngưỡng thích hợp theo thứ tự để phân biệt những mục từ hữu ích có tần số xuất hiện trung bình trong phần còn lại


        1. Một số hàm tính trọng số mục từ. ([I.1])


Trọng số của mục từ: là sự tần xuất xuất hiện của mục từ trong toàn bộ tài liệu. Phương pháp thường được sử dụng để đánh giá trọng số của từ là dựa vào thống kê, ‎ với ‎ ý tưởng là những từ thường xuyên xuất hiện trong tất cảcác tài liệu thì “ít có ý nghĩa hơn” là những từ tập trung trong một số tài liệu.

Ta xét các khái niệm sau:



  • Gọi T={t1,t2,...,tn} là không gian chỉ mục, với ti là các mục từ.

  • Một tài liệu D được lập chỉ mục dựa trên tập T sẽ được biểu diễn dưới dạng:

T(D)={w1,w2,...wn} với wi là trọng số của ti trong tập tài liệu D. Nếu wi=0 nghĩa là ti không xuất hiện trong D hoặc mục từ ti ít quan trọng trong tài liệu D ta không quan tâm tới.

T(D) được gọi là vector chỉ mục của D, nó được xem như biểu diễn cho nội dung của tài liệu D và được lưu lại trong cơ sở dữ liệu của hệ thống tìm kiếm thông tin để phục vụ cho nhu cầu tìm kiếm.

Mặc dù T(D) biểu diễn nội dung của tài liệu D nhưng không phải bất cứ từ nào có trong D đều xuất hiện trong T(D) mà chỉ có những từ có trọng lượng (có ý nghĩa quan trọng trong tài liệu D) mới được lập chỉ mục cho D.

Sau đây ta xét một số hàm tính trọng số của mục từ

          1. Nghịch đảo trọng số tần số tài liệu (The Inverse Document Frequency Weight)

wk : là trọng lượng của mục từ k.

nDock : tổng số tài liệu mà mục từ k xuất hiện.

nki : số lần xuất hiện mục từ k trong tài liệu i.

nk : số lần xuất hiện mục từ k trong toàn tập tài liệu.

nDoc : tổng số tài liệu.

idfk : giá trị nghịch đảo tần số tài liệu. (Inverse Document Frequency)



Trọng lượng mục từ k :

Như vậy, trọng số của mục từ k sẽ tăng lên khi tần số xuất hiện của mục từ k trong các tài liệu i tăng lên nhưng giảm xuống khi tấn số xuất hiện của mục từ k trong tập tài liệu (nDock) tăng lên.

Biểu thức tổng hợp :


wk = nik* [log2 (n)-log2(nDOCk)+ 1]


Hàm này gán độ quan trọng cao cho những mục từ chỉ xuất hiện trong một số ít tài liệu của một tập hợp tài liệu (đề cao độ phân biệt)


          1. Độ nhiễu tín hiệu (Signal Noise):

Trọng số của từ được đo lường bằng sự tập trung hay phân tán của từ. Ví dụ từ "hardware" xuất hiện 1000 lần nhưng trong 200 tài liệu ( tập trung ) thì có trọng lượng cao hơn từ "computer" cũng xuất hiện 1000 lần nhưng trong 800 tài liệu.

Độ nhiễu của một mục từ k:




noisek =  (nki / nk ).log2 (nki / nk ) i=1,nDoc

Hàm số nghịch đảo của độ nhiễu được gọi là độ signal có thể được dùng để tính trọng lượng của mục từ k :


wk =signalk = log2( nk ) - noisek

          1. Giá trị độ phân biệt của mục từ :

Không ai muốn kết quả của việc tìm kiếm lại trả về tập tất cả các tài liệu có trong tập hợp (nghĩa là tập chỉ mục của các tài liệu chứa nhiều từ giống nhau). Độ phân biệt của mục từ là giá trị phân biệt mức độ tương đương giữa các tài liệu. Nếu một mục từ có trong chỉ mục mà làm cho độ tương tự của các tài liệu cao thì nó có độ phân biệt kém (nghĩa là từ này thường xuyên xuất hiện trong các tài liệu) và ngược lại. Như vây các mục từ có độ phân biệt cao nên được chọn để lập chỉ mục. Thực chất việc sử dụng độ phân biệt này cũng cho kết quả tương đương với việc sử dụng tần số nghịch đảo và tỉ lệ tín hiệu nhiễu.

Gọi Sim(Di,Dj) là độ tương tự của cặp tài liệu Di, Dj.

Độ tương tự trung bình được tính trên tất cả các cặp tài liệu:


Arv_Sim =  Sim(Di,Dj) i ≠ j.


Gọi Arv_Simk là độ tương tự trung bình được tính trong trường hợp mục từ k bị loại bỏ khỏi tập chỉ mục.

Khi đó trọng lượng mục từ k có thể được tính theo giá trị độ phân biệt DiscValueK theo công thức:


wk = DiscValueK = Arv_Simk - Arv_Sim


Phép tính DiscValueK cho tất cả những mục từ k, những mục từ có thể được xếp theo thứ tự giảm của giá trị phân biệt DiscValueK. Những mục từ chỉ mục có thể thuộc một trong ba nhóm dựa theo giá trị độ phân biệt của chúng như sau:



  • Độ phân biệt tốt đối vơi DiscValueK dương, những mục từ có độ phân biệt cao.

  • Đối với DiscValueK gần bằng 0, độ phân biệt giữa các tài liệu không khác nhau khi thêm vào hay bớt đi những mục từ đó.

  • Độ phân yếu khi DiscValueK âm, những mục từ có độ phân biệt thấp (độ tương tự cao ).
          1. Kết hợp tần số xuất hiện mục từ và nghịch đảo tần số tài liệu

Phần này sẽ đề cập đến một số biến thể tần số xuất hiện của mục từ tf(Term Frequency) và sự kết hợp với idf để xác định tầm quan trọng của một mục từ.

f(t,d) : tần số xuất hiện của mục từ t trong tài liệu d

N : tổng số tài liệu trong tập dữ liệu

n : tổng số tài liệu có mục từ t

Max[f(t,d)]: số lần xuất hiện cao nhất của mục từ t trong toàn tập tài liệu

tf(Term Frequency) vẫn là tần số xuất hiện của một mục từ trong tập tài liệu, có thể được xác định bởi nhiều công thức khác nhau:

tf = f(t,d)

tf = f(t,d)/Max[f(t,d)]

tf = log2(f(t,d))

tf = log2(f(t,d) +1)

tf = ln f(t,d) +1

….

idf(Inverse Document Frequency) : là tần số nghịch đảo tần số xuất hiện của các tài liệu và được tính như sau:



idf = log2(N/n)

idf = log2((N-n)/n)

idf = log2(N/n)*2

……

Mỗi công thức trên đều mang một ‎ý nghĩa riêng trong từng trường hợp cụ thể, sự kết hợp của tf và idf sẽ xác định mức độ quan trọng của mục từ cần xét.




Wit = tf * idf

Sự kết hợp hai tiêu chuẩn này cho biết: tầm quan trọng của một mục từ (do tf mang lại) và sự phân biệt giữa các mục từ (do idf mang lại). Một mục từ có tầm quan trọng lớn hơn thì giá trị Wit của nó phải lớn hơn.


        1. Lập chỉ mục tự động cho tài liệu


Vấn đề chính của lập chỉ mục tự động là xác định tự động mục từ chỉ mục cho các tài liệu. Trong các ngôn ngữ gốc Ấn – Âu thì tách từ có thể nói là đơn giản vì khoảng trắng là ký tự để phân biệt từ. Vấn đề cần quan tâm là xác định những từ này là từ khoá, có thể đại diện cho toàn bộ nội dung của tài liệu. Loại bỏ các từ stop-word có tần số xuất hiện cao, những từ này thường chiếm đến 40-50% trong số các từ của một văn bản. Những từ này có độ phân biệt kém và không thể sử dụng để xác định nội dung của tài liệu. Trong tiếng Anh, có khoảng 250 từ. Số lượng từ này không nhiều lắm nên giải pháp đơn giản nhất là lưu các từ này vào trong một tự điển, và sau đó chỉ cần thực hiện so sánh từ cần phân tích với từ điển để loại bỏ.

Bước tiếp theo là nhận ra các chỉ mục tốt. Để giảm bớt dung lượng lưu trữ, các mục từ cần được biến đổi về nguyên gốc (step of stemming đối với tiếng Anh), Phải loại bỏ đi các tiền tố, hậu tố, các biến thể số nhiều, quá khứ…Giải pháp là sử dụng một danh sách các hâu tố. Trong khi loại bỏ hậu tố thì những hậu tố dài được ưu tiên loại bỏ trước, rồi sau đó mới loại bỏ những hậu tố ngắn hơn. Sau đây là một số vấn đề khi loại bỏ trong tiếng Anh:



  1. Chỉ rõ chiều dài tối thiểu của một từ gốc sau khi loại bỏ hậu tố. Ví dụ: việc loại bỏ hậu tố “ability” ra khỏi “computability” hay loại bỏ “ing” ra khỏi “singing” là hợp lý. Tuy nhiên, những hậu tố đó không cần phải loại bỏ trong các từ “ability” và “sing”.

  2. Nếu nhiều hậu tố được kết hợp vào một gốc thì ta sẽ áp dụng đệ quy cho quá trình loại bỏ hậu tố vài lần hoặc lập từ điển hậu tố rồi loại bỏ những hậu tố dài hơn trước rồi đến các hậu tố ngắn sau. Ví dụ: “effectiveness”  “effective”  “effect”.

  3. Trong tiếng Anh, từ gốc có thể bị biến đổi sau khi đã loại bỏ hậu tố. Do đó, ta cần phải có những luật nhất định để phục hồi từ gốc. Chẳng hạn loại bỏ một trong hai k‎í tự trùng nhau của những từ có sự xuất hiện b, d, d, l, m, n, p, r, s, t ở cuối của các từ gốc sau khi đã loại bỏ hậu tố. Ví du như “beginning”  “beginn”  “begin”.

  4. Một số ngoại lệ phụ thuộc vào ngữ cảnh đặc biệt phải được chú ‎ý, sử dụng các quy tắc cảm ngữ cảnh. Ví dụ: một quy tắc cho hậu tố “allic” chỉ rõ chiều dài cực tiểu của từ gốc là ba và không loại bỏ hậu tố sau “met” hoặc “r‎yst”, hoặc quy tắc chỉ loại bỏ hậu tố “yl” sau “n” hoặc “r”.

Tóm lại, giải quyết vấn đề hậu tố không quá khó nếu chúng ta có sẵn một danh sách chứa các hậu tố, một danh sách chứa các luật thêm các hậu tố và phục hồi từ gốc sau khi thêm hậu tố.
      1. Lập chỉ mục cho tài liệu tiếng Việt ([III.1], [II.1], [II.2], [II.3], [II.4], [IV.11], [IV.12])

        1. Khó khăn cho việc lập chỉ mục tiếng Việt


Các điểm khó khăn khi thực hiện quá trình lập chỉ mục cho tài liệu tiếng Việt so với tài liệu tiếng Anh mà chúng ta phải giải quyết :

  • Xác định ranh giới giữa các từ trong câu. Đối với tiếng Anh điều này quá dễ dàng vì khoảng trắng chính là ranh giới phân biệt các từ ngược lại tiếng Việt thì khoảng trắng không phải là ranh giới để xác định các từ mà chỉ là ranh giới để xác định các tiếng.

  • Chính tả tiếng Việt còn một số điểm chưa thống nhất như sử dụng "y" hay "i" ( ví dụ "quý" hay "quí" ), cách bỏ dấu ( "lựơng" hay "lượng" ), cách viết hoa tên riêng( "Khoa học Tự nhiên" hay "Khoa Học Tự Nhiên")... đòi hỏi quá trình hiệu chỉnh chính tả cho văn bản cần lập chỉ mục và cho từ điển chỉ mục.

  • Tồn tại nhiều bảng mã tiếng Việt đòi hỏi khả năng xử lý tài liệu ở các bảng mã khác nhau. Cách giải quyết là đưa tất cả về bảng mã chuẩn của hệ thống.

  • Sự phong phú về nghĩa của một từ (từ đa nghĩa). Một từ có thể có nhiều nghĩa khác nhau trong những ngữ cảnh khác nhau nên việc tìm kiếm khó có được kết quả với độ chính xác cao.

  • Từ đồng nghĩa hoặc từ gần nghĩa: có nhiều từ khác nhau nhưng lại có cùng ý nghĩa. Do đó, việc tìm kiếm theo từ khoá thường không tìm thấy các websites chứa từ đồng nghĩa hoặc gần nghĩa với từ cần tìm. Vì vậy, việc tìm kiếm cho ra kết quả không đầy đủ.

  • Có quá nhiều từ mà mật độ xuất hiện cao nhưng không mang ‎ý nghĩa cụ thể nào mà chỉ là những từ nối, từ đệm hoặc chỉ mang sắc thái biểu cảm như những từ láy. Những từ này cần phải được xác định và loại bỏ ra khỏi tập các mục từ. Nó giống như stop-word trong tiếng Anh.

  • Các văn bản có nội dung chính là một vấn đề cụ thể, một đề tài nghiên cứu khoa học nhưng đôi khi trọng số của các từ chuyên môn này thấp so với toàn tập tài liệu. Vì vậy, một số thuật toán tính trọng số bỏ sót những trường hợp như vậy. Kết quả là các từ chuyên môn đó không được lập chỉ mục.

Trong các vấn đề trên thì vấn đề xác định ranh giới từ trong câu là quan trọng nhất vì nó ảnh hưởng lớn đến hiệu quả của quá trình lập chỉ mục ( nếu quá trình tách từ sai có nghĩa là nội dung của câu bị phân tích sai ) và cũng là vấn đề khó khăn nhất. Các vấn đề còn lại chỉ là thuần tuý về mặt kỹ thuật mà hầu như chúng ta có thể giải quyết một cách triệt để.
        1. Đặc điểm về từ trong tiếng Việt và việc tách từ

          1. . Đặc điểm về từ trong tiếng Việt:

Tiếng Việt là ngôn ngữ đơn lập. Đặc điểm này bao quát tiếng Việt cả về mặt ngữ âm, ngữ nghĩa, ngữ pháp. Khác với các ngôn ngữ Ấn-Âu, mỗi từ là một nhóm các ký tự có nghĩa được cách nhau bởi một khoảng trắng. Còn tiếng Việt, và các ngôn ngữ đơn lập khác, thì khoảng trắng không phải là căn cứ để nhận diện từ.
            1. Tiếng:

 Trong tiếng Việt trước hết cần chú ý đến đơn vị xưa nay vẫn quan gọi là tiếng. Về mặt ngữ nghĩa, ngữ âm, ngữ pháp, đều có giá trị quan trọng.

 Sử dụng tiếng để tạo từ có hai trường hợp:

 Trường hợp một tiếng: đây là trường hợp một tiếng được dùng làm một từ, gọi là từ đơn. Tuy nhiên không phải tiếng nào cũng tạo thành một từ.

 Trường hợp hai tiếng trở lên: đây là trường hợp hai hay nhiều tiếng kết hợp với nhau, cả khối kết hợp với nhau gắn bó tương đối chặt chẽ, mới có tư cách ngữ pháp là một từ. Đây là trường hợp từ ghép hay từ phức.


            1. Từ:

Có rất nhiều quan niệm về từ trong tiếng Việt , từ nhiều quan niệm về từ tiếng Việt khác nhau đó chúng ta có thể thấy đặc trưng cơ bản của "từ " là sự hoàn chỉnh về mặt nội dung, từ là đơn vị nhỏ nhất để đặt câu.

Người ta dùng "từ" kết hợp thành câu chứ không phải dùng "tiếng" do đó quá trình lập chỉ mục bằng cách tách câu thành các "từ" cho kết qua tốt hơn là tách câu bằng “tiếng”.


          1. Tách từ

Việc xác định từ trong tiếng Việt là rất khó và tốn nhiều chi phí. Do đó, cách đơn giản nhất là sử dụng từ điển được lập sẵn. Tách tài liệu thành các từ, loại bỏ các từ láy, từ nối, từ đệm, các từ không quan trọng trong tài liệu. Một câu gồm nhiều từ ghép lại, tuy nhiên trong một câu có thể có nhiều cách phân tích từ khác nhau.

Ví dụ : xét câu "Tốc độ truyền thông tin sẽ tăng cao" có thể phân tích từ theo các cách sau:

Tốc độ / truyền/ thông tin / sẽ / tăng cao.

Tốc độ / truyền thông / tin / sẽ / tăng cao.

Hiện đã có nhiều giải pháp cho vấn đề này với kết quả thu được rất cao. Tuy nhiên thời gian, chi phí tính toán, xử lý lớn không thích hợp cho việc lập chỉ mục cho hệ thống tìm kiếm thông tin vì số lượng tài liệu phải xử lý là rất lớn.

Cách giải quyết: lập chỉ mục cho các từ có thể có trong một tài liệu. Ví dụ câu trên ta nên lập xem xét các từ : tốc độ, truyền , truyền thông ,thông tin, tin , sẽ , tăng cao.

Sau đó sẽ dùng ngưỡng chặn để loại bỏ các từ, giả sử từ "truyền thông" không phải là một từ xuất hiện thật sự trong tài liệu (chỉ có được do sự kết hợp ngẫu nhiên từ "truyền" và "thông tin") thì xác suất xuất hiện của từ này trong tài liệu sẽ không cao nên khi tính toán trọng lượng thì từ này sẽ bị loại bỏ. Một từ trong tiếng Việt là sự kết hợp của hai hay nhiều tiếng. Phương pháp xác định một từ được ghép lại thông qua nhiều tiếng dựa trên việc xem xét độ gắn kết (cohesion) giữa chúng:


Cohension(nij) = size_factor*pair_freqij/(ni*nj)


Trong đó:

size_factor: kích thước tập chỉ mục

pair_freqij : tần số xuất hiện từ

ni , nj : tần số xuất hiện tiếng i, j

Hai tiếng có khả năng tạo thành một từ cao khi chúng thường xuất hiện chung với nhau, nghĩa là cohension của chúng cao.

Phương pháp này không tách từ chính xác hoàn toàn nhưng có thể chấp nhận trong hệ thống tìm kiếm thông tin vì trong quá trình lập chỉ mục chỉ cần xác định đúng các từ có trọng lượng cao, trong trường hợp việc tách từ là sai thì từ sai chỉ được lập chỉ mục khi nó có trọng lượng cao, việc lập chỉ mục một từ sai sẽ làm tăng chi phí lưu trữ nhưng có lẽ không ảnh hưởng lớn tính chính xác kết quả tìm kiếm vì dù sao từ này cũng có trọng lượng lớn.

Còn trong trường hợp một từ ghép được tách thành nhiều từ đơn ví dụ từ "thông tin" khi được lập chỉ mục sẽ luôn có 3 từ "thông", "tin", "thông tin" , điều này gây ảnh hưởng đến tính chính xác của việc lập chỉ mục vì thực sự các từ "thông", "tin" không cần thiết lập chỉ mục.Ta giải quyết vần đề này bằng cách nếu từ "thông tin" được lập chỉ mục thì khi đó số lần xuất hiện của các từ "thông" và "tin" sẽ được tính toán lại bằng cách trừ đi các trường hợp đã xuất hiện trong từ "thông tin" để tính toán trọng lượng cho các từ đơn. Nếu từ đơn "tin" chỉ luôn xuất hiện trong từ "thông tin" thì số lần xuất hiện của từ "tin" và "thông tin" là bằng nhau nên khi lập chỉ mục cho từ "thông tin" thì số lần xuất hiện riêng của từ đơn "tin" sẽ bằng 0 nên không được lập chỉ mục.


        1. Giải quyết các vấn đề hiển thị của tiếng Việt (vấn đề chính tả)

          1. Vấn đề bảng mã

Sự tồn tại của nhiều bảng mã ( TCVN3, VNI ...) dẫn đến việc phải chuyển nội dung các tài liệu được viết trên các bảng mã khác về bảng mã chuẩn cho hệ thống tìm kiếm thông tin xử lý (lập chỉ mục), việc chuyển đổi này là đơn giản trong trường hợp ta biết bảng mã của tài liệu, nhưng vấn đề khó khăn là làm sao cho hệ thống tìm kiếm thông tin nhận ra một tài liệu đang sử dụng bảng mã nào?

Khi phân tích một trang tài liệu HTML, dựa vào thông tin thì có thể biết được bảng mã nào đang được sử dụng, ví dụ: charset = UTF-8 thì đó là bảng mã Unicode

Tuy nhiên, trong một tài liệu có thể sử dụng nhiều bảng mã khác nhau nên không thể xác định bảng mã của tài liệu theo cách trên. Ta có thể áp dụng phương pháp phân tích từ khoá để xác định bảng mã như sau: dựa trên sự thống kê số lần xuất hiện của các ký tự đặc biệt theo từng bảng mã, bảng mã nào có tần số sử dụng nhiều nhất thì xem như trang đó sử dụng bảng mã đó.

Thật ra, không cần phải xác định bảng mã vẫn có thể lập chỉ mục cho hệ thống bằng cách chuyển mã tài liệu sang một kiểu định dạng, theo bảng mã quy định của hệ thống tìm kiếm. Trong thực tế, các bảng mã đều có một phần chung và một phần các ký tự đặc biệt là khác nhau. Do đó, nhằm hạn chế thời gian và chi phí xử lý, ta sẽ chuyển những ký tự khác nhau về bảng mã quy định. Các bước thực hiện như sau: Đọc một từ, nếu là từ mang dấu tổ hợp nguyên âm hay dấu thanh thì thực hiện so sánh với tất cả các bảng mã chuẩn để xác định bảng mã của từ đó. Nếu bảng mã đó không trùng với bảng mã quy định của hệ thống thì thực hiện chuyển từ bảng mã đó sang bảng mã quy định. Cứ vậy, tiếp tục cho đến hết văn bản và dừng.

Có thể dùng một bảng mã thông dụng nào đó để làm bảng mã quy định cho hệ thống, chẳng hạn Unicode vì hiện nay theo xu hướng chung thì số lượng các trang web, tài liệu dùng Unicode rất lớn và đang tăng nhanh, nên sẽ hạn chế được số lượng các trang web cần chuyển đổi.

          1. Vấn đề dấu thanh

Do cách bỏ dấu tiếng Việt chưa thống nhất nên có khi cùng một từ lại có nhiều các bỏ dấu khác nhau, ví dụ "thuý" và "thúy", rõ ràng hệ thống tìm kiếm thông tin cần nhận ra hai từ này là một. Phương pháp giải quyết dựa trên đặc điểm một từ đơn tiếng Việt chỉ có một dấu nên ta sẽ chuyển dấu từ ra sau cùng, ví dụ:

quý -> thuy1

qúy -> thuy1

Khi đó tất cả các từ giống nhau cho dù bỏ dấu khác nhau thì qua quá trình xử lý đều cho chuỗi kí tự giống nhau thuận tiện cho việc so sánh từ.


          1. Vấn đề dấu tổ hợp nguyên âm

Một tài liệu hay một câu truy vấn không thể tránh khỏi trường hợp bỏ thiếu dấu tổ hợp nguyên âm. Ví dụ: nuớc(nước), trừong(trường),…Như vậy, ta cần phải xây dựng một module xác định và sửa lỗi cho từ. Giải pháp đề nghị ở đây là chuyển các từ về một định dạng riêng, gồm hai phần: phần đầu là các k‎ý tự không dấu, phần sau là dấu tổ hợp nguyên âm và dấu thanh. Giai đoạn chuyển mã sẽ thực hiện chuyển các dấu tổ hợp nguyên âm và dấu thanh ra cuối của từ.

Ví dụ: hường  truong772

hừơng  truong772

hừong  truong772

huờng  truong772

Như vậy, dù dấu thanh có bỏ ở vị trí nào thì cũng cho chuỗi ký tự giống nhau sau khi xử lý. Ngoài ra, nó còn có khả năng phát hiện ra những từ mà người dùng gõ thiếu dấu tổ hợp nguyên âm. Ví dụ: huờng  huong72, chương trình sẽ tìm kiếm trong cơ sở dữ liệu và sẽ thấy đúng được phần đầu, còn về dấu thanh thì sẽ chọn một trong các tổ hợp gần nhất có thể có trong từ điển như:

hương  huong77

hướng  huong771

hường  huong772

hưởng  huong773

hượng  huong775

Trong tự điển tiếng Việt, không thể có các từ như trưong hay truơng. Nên người dùng chắc chắn đã gõ thiếu và do đó phải là từ truong772 (trường).


        1. Giải quyết các vấn đề về từ của tiếng Việt

          1. Luật xác định các từ láy

Từ láy không là từ có ‎ý nghĩa quan trọng trong tài liệu. Vì vậy, ta cần xác định từ láy để giảm số lượng các từ ghép cần lập chỉ mục. Trong các loại từ láy thì láy hai là nhiều nhất. Vì vậy, ta cần phải xây dựng luật để xác định nó. Mỗi luật tương ứng với một loại từ láy:

Từ láy hoàn toàn. Ví dụ: xanh xanh =>Luật xác định từ láy hoàn toàn

Từ láy phụ âm đầu. Ví dụ: biêng biếc=>Luật xác định từ láy phụ âm đầu

Từ láy vần. Ví dụ: chót vót =>Luật xác định từ láy vần


          1. Luật xác định các liên từ

Liên từ đầu câu cũng không đóng vai trò quan trọng trong tài liệu. Hầu hết các trường hợp thì theo sau các liên từ đầu câu là dấu phẩy. Ví dụ: Vì thê,…Do đó,…Ta có thể dựa vào cú pháp này để xây dựng luật xác định các liên từ để giảm số lượng từ cần lập chỉ mục.
        1. Xây dựng từ điển tiếng Việt


Việc xác định từ cho tiếng Việt thì phương pháp giải quyết là dùng từ điển từ được lập sẵn.

Tuy nhiên không thể có một từ điển đầy đủ được vì có những từ có thể "sinh ra thêm" trong tương lai. Ví dụ do sự ra đời của nhiều ngành khoa học công nghệ mới đòi hỏi phải phát sinh thêm từ mới để mô tả chúng..., hoặc do nhu cầu sử dụng tiếng nước ngoài ngày càng tăng dẫn đến tình trạng Việt hoá các từ thông dụng như bit, bite, inch,…

Do đó bên cạnh việc sử dụng từ điển đòi hỏi phải có phương pháp để phát hiện thêm từ tiếng Việt mới chưa có trong từ điển để bổ sung cho từ điển. Một "từ" tiếng Việt là sự kết hợp của hai hay nhiều "tiếng" có thể dễ dàng xác định bằng khoảng trắng, phương pháp xác định "từ" gồm nhiều "tiếng" ghép lại dựa trên việc xem xét độ gắn kết (cohesion) của chúng:


cohesionij = size_factor * pair_freqij / ( ni * nj )


Trong đó:

size_factor : kích thước tập chỉ mục.

pair_freq : tần số xuất hiện từ.

ni, nj : tần số xuất hiện của tiếng i, j.

Sự kết hợp 2 tiếng có khả năng cho ra từ cao khi cohesion của chúng cao (2 tiếng thường xuất hiện chung với nhau thì nó có khả năng là một từ).



Giải pháp đề nghị là dùng từ điển được lập sẵn ,với một chi phí thấp hơn ta có thể lập được một từ điển tương đối đầy đủ mà kết quả chính xác hơn rất nhiều.

Quá trình xác định thêm số từ thiếu có thể được cài đặt bằng phương pháp xác định từ ghép tự động như đã nêu trên với tập tài liệu mẫu cho việc xác định từ ghép được chỉ định, hoặc bổ sung thêm từ mới vào từ điển

Tuy nhiên, khi xác định một từ mới thì không thể thêm ngay nó vào từ điển. Vì làm như vậy sẽ dẫn đến tình trạng bùng nổ dữ liệu. Bởi vì một từ là mới do quá trình tách từ chưa hẳn là từ mới thật sự. Do đó, ta sẽ xây dựng thêm từ điển phụ để chứa các từ mới này, sau một khoảng thời gian kiểm tra các thông số như:


  • Số lần xuất hiện trong tất cả các tài liệu mà hệ thống xử lý

  • Số tài liệu mà từ đó xuất hiện

  • …..

Nếu các thông số trên đạt một tiêu chuẩn nào đó thì mới chính thức thêm nó vào từ điển chính và xoá nó ra khỏi từ điển phụ.

    1. Каталог: books -> luan-van-de-tai -> luan-van-de-tai-cd-dh
      luan-van-de-tai-cd-dh -> Thế kỷ 21, cùng với sự phát triển nh­ vũ bão của khoa học kỹ thuật, của công nghệ thông tin. Sự phát triển kinh tế tác động đến tất cả mọi mặt đời sống kinh tế xã hội
      luan-van-de-tai-cd-dh -> VIỆN ĐẠi học mở HÀ NỘi khoa công nghệ thông tin đỒ Án tốt nghiệP ĐẠi họC
      luan-van-de-tai-cd-dh -> Phần một : Tình hình thu hút vốn đầu tư trên thị trường vốn việt nam hiện nay
      luan-van-de-tai-cd-dh -> TRƯỜng đẠi học cần thơ khoa công nghệ BỘ MÔN ĐIỆn tử viễn thôNG
      luan-van-de-tai-cd-dh -> Em xin chân thành cảm ơn! Vị Xuyên, ngày 19 tháng 5 năm 2012 sinh viêN
      luan-van-de-tai-cd-dh -> PHẦn I mở ĐẦu tầm quan trọng và SỰ ra đỜi của giấY
      luan-van-de-tai-cd-dh -> Đề tài: Tìm hiểu về vấn đề sử dụng hợp đồng mẫu trong đàm phán ký kết hợp đồng mua bán ngoại thương và thực tiễn ở Việt Nam
      luan-van-de-tai-cd-dh -> Đề tài phân tích thực trạng kinh doanh xuất khẩu cà phê nhân của các doanh nghiệP
      luan-van-de-tai-cd-dh -> Giao tiếp máy tính và thu nhận dữ liệU ĐỀ TÀI: TÌm hiểu công nghệ 4g lte

      tải về 1.53 Mb.

      Chia sẻ với bạn bè của bạn:
1   2   3   4   5   6




Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2024
được sử dụng cho việc quản lý

    Quê hương