2010-10-06 32 views
20

Chỉ mới bắt đầu với Lucene.Net. Tôi đã lập chỉ mục 100.000 hàng bằng cách sử dụng máy phân tích tiêu chuẩn, chạy một số truy vấn thử nghiệm và nhận thấy các truy vấn số nhiều không trả lại kết quả nếu cụm từ ban đầu là số ít. Tôi hiểu phân tích quả cầu tuyết cho biết thêm hỗ trợ bắt nguồn, nghe có vẻ hay. Tuy nhiên, tôi tự hỏi liệu có bất kỳ hạn chế nào đối với cồng chiêng với quả cầu tuyết theo tiêu chuẩn không? Tôi có bị mất gì không? Có bất kỳ máy phân tích nào khác ngoài kia để xem xét không?Máy phân tích tiêu chuẩn Lucene và quả cầu tuyết

+0

Nếu bạn sử dụng trình phân tích quả cầu tuyết, bạn sẽ nhận được kết quả cho số ít/số nhiều, vì quả cầu tuyết sẽ bình thường hóa chúng thành cùng một dạng. Bạn có chắc chắn rằng bạn sử dụng cùng một trình phân tích để tạo chỉ mục và truy vấn chỉ mục đó không? – Skarab

Trả lời

18

Có, bằng cách sử dụng phần tử gốc như Quả cầu tuyết, bạn sẽ mất thông tin về dạng gốc của văn bản. Đôi khi điều này sẽ hữu ích, đôi khi không.

Ví dụ: Quả cầu tuyết sẽ chặn "tổ chức" thành "nội tạng", do đó tìm kiếm "tổ chức" sẽ trả lại kết quả bằng "nội tạng" mà không có bất kỳ hình phạt nào.

Điều này có phù hợp với bạn hay không tùy thuộc vào nội dung của bạn và loại truy vấn bạn đang hỗ trợ (ví dụ: tìm kiếm rất cơ bản hoặc người dùng rất tinh vi và sử dụng tìm kiếm của bạn để lọc chính xác các kết quả). Bạn cũng có thể muốn xem xét các cuống gốc ít tích cực hơn, chẳng hạn như KStem.

+0

Tôi chỉ biết rằng bạn cũng có thể thực hiện tìm kiếm mờ như "kangaroo ~" này cũng sẽ trả về các phiên bản số ít của từ, mặc dù có vẻ mất nhiều thời gian hơn để xử lý truy vấn. – alchemical

+0

@alchemical: Tôi thực sự khuyên bạn không nên làm điều đó. ~ là một nhà điều hành rất chậm, và nếu người dùng của bạn thực hiện các công cụ như tìm kiếm cụm từ bạn đã hơi say. Tại sao nó xấu như vậy nếu bạn "kangaroo" được lưu trữ là "kangaroo"? – Xodarap

+0

OK, đó là điều cần biết - để sử dụng KStem bạn có cần Solr không? Bạn có cần phải làm việc với mã nguồn Lucene để tích hợp nó vào không? – alchemical

4

Tôi vừa hoàn thành một máy phân tích thực hiện lemmatization. Điều đó tương tự như xuất phát, ngoại trừ việc nó sử dụng ngữ cảnh để xác định loại của một từ (danh từ, động từ, vv) và sử dụng thông tin đó để lấy được gốc. Nó cũng giữ nguyên dạng gốc của từ trong chỉ mục. Có thể my library có thể được sử dụng cho bạn. Nó đòi hỏi Lucene Java, mặc dù, và tôi không nhận thức được bất kỳ C# /. NET lemmatizers.

6

Máy phân tích snowball sẽ tăng thu hồi của bạn, vì nó tích cực hơn nhiều so với máy phân tích tiêu chuẩn. Vì vậy, bạn cần phải đánh giá kết quả tìm kiếm của bạn để xem liệu dữ liệu của bạn có cần tăng recall or precision hay không.

Các vấn đề liên quan