Khi Google Bot “ghé thăm” mỗi website, chúng “đọc” – Tìm kiếm các đường link trên site, tất nhiên chúng có thể đọc được tất cả các đường link bên trong mỗi trang SRC- Nguồn của bức ảnh v
Trang 1Trường Đại học Bách Khoa Hà Nội Viện Công Nghệ Thông Tin và Truyền Thông
BÁO CÁO BÀI TẬP LỚN
XỬ LÝ NGÔN NGỮ TỰ NHIÊN
Đề tài: Tìm hiểu cấu trúc hệ thống tìm kiếm thông tin Google hiện tại và các kỹ thuật
xử lý trong tìm kiếm thông tin của Google
Giáo viên hướng dẫn: PGS Lê Thanh Hương Nhóm sinh viên thực hiện:
Nguyễn Huy Triển Nguyễn Hữu Khánh Trần Quốc Huy Lưu Mạnh Linh
Hà Nội – 04/2012
Trang 2Mục Lục
A.Mở Đầu
B.Tổng quan về hệ thống Google Search Engine
I Thành phần quan trọng trong hệ thống Google search engine
1.Google Bot
2.Đánh chỉ mục
3.Bộ tìm kiếm thông tin
II Nguyên lý hoạt động của Google Search Engine
C.Ranking
I Ranking là gì
II Các yếu tố ảnh hưởng đến Ranking
III Các Kỹ thuật sử dụng trong Ranking
IV PageRank
1.PageRank là gì
2.Công thức thuật toán PageRank
3.yếu tố ảnh hưởng đến pageRank
V Google Panda Algorithm
Trang 3
A.Mở đầu
Google là một công ty Internet có trụ sở tại Hoa Kỳ, được thành lập vào
năm 1998 Sản phẩm chính của công ty này là công cụ tìm kiếm Google, được nhiều người đánh giá là công cụ tìm kiếm hữu ích và mạnh mẽ nhất trên Internet Theo thống kê của Hitwise năm 2009, Google là công cụ tìm kiếm được sử dụng nhiều nhất trên mạng chiếm 74.04% thị phần, vượt xa so với Yahoo (16,19 %) và Bing (5.25%) và Ask.com (8,4%)
Google liên kết với hàng tỷ trang web, vì thế người sử dụng có thể tìm kiếm thông tin mà họ muốn thông qua các từ khóa và các toán tử Google cũng tận dụng công nghệ tìm kiếm của mình vào nhiều dịch vụ tìm kiếm khác, bao gồm Image Search (tìm kiếm ảnh), Google News, trang web so sánh giá cả Froogle, cộng đồng tương tác Google Groups, Google Maps và còn nhiều nữa
Trang 4B.Tổng quan về hệ thống Google Search Engine
I.Thành phần quan trọng trong hệ thống Google search engine
1 Google Bot
Google Bot là những “bọ tìm kiếm” giúp Google tìm kiếm xử lý thông tin trên các website Xử lý thông tin là quá trình sàng lọc thông tin mới, update những thông tin thay đổi trên mỗi website và thu thập các thông tin này vào kho “đám mây dữ liệu” của Google Các trang trên website sau khi đã được Google sàng lọc thông tin, chúng ta thường sử dụng “đã được google index” để gọi chúng
Trên thế giới có hàng trăm, hàng ngàn trang web được sử dụng Để sàng lọc thông tin từ số lượng trang web khổng lồ như vậy Google bot được thiết lập các thuật toán, các giải thuật để xử lý thông tin nhanh chóng
Có thể tới đây bạn sẽ thắc mắc vậy bao lâu thì Google Bot sẽ sàng lọc lại thông tin trên trang web một lần? Và số lượng trang trên website được sàng lọc trên mỗi lần sàng lọc là bao nhiêu?
Google sàng lọc thông tin dựa trên một list các danh sách link ( URLs) trên mỗi website Đó là lý do vì sao chúng ta nên tạo sitemap cho các website Tạo sitemap đảm bảo cho Google Bot có thể sàng lọc được lượng thông tin nhanh và nhiều nhất trên mỗi website Khi Google Bot “ghé thăm” mỗi website, chúng “đọc” – Tìm kiếm các đường link trên site, tất nhiên chúng có thể đọc được tất cả các đường link bên trong mỗi trang (SRC- Nguồn của bức ảnh và HREF- Đường link dẫn trong các thẻ <a>) và thêm những link này vào danh sách các URLs sẽ được sàng lọc thông tin và tất nhiên nó sẽ tiếp tục tìm kiếm, chắt lọc các thông tin từ nguồn
dữ liệu của các đường link này chỉ tới
Hãy chú ý một điều rằng, vì một lý do nào đó các link trên site của bạn bị thay đổi không “trỏ” đúng vị trí, Google luôn luôn cập nhật thông tin do vậy các link cũ của bạn sẽ được gọi là link “chết”, bạn nên hạn chế điều này vì Google bot “không thích” chắt lọc thông tin từ những link “không có gì” Thực ra chúng ta có thể khắc phục vấn đề link “chết” này
Google Bot truy cập vào website của bạn như thế nào?
Trang 5Google xây dựng rất nhiều Google Bot phân rải trên các website để tăng hiệu suất sàng lọc và cập nhật thông tin Nếu một website có lượng thông tin thường xuyên thay đổi, số lượng Google Bot thường xuyên lưu trú sẽ lớn hơn Google Bot lưu trú
sẽ cập nhật những thay đổi trên website của bạn về kho dữ liệu Google, đó là lý do
vì sao người dùng có thể tìm thấy thông tin hữu ích khi search trên Google.com
2 Đánh chỉ mục
Trong hơn chục năm phát triển Có rất nhiều Thuật toán mà google đưa ra nhằm cải thiện bộ máy tìm kiếm của mình một trong số thuật toán gần đây đó là Google
sử dụng hệ thống search index (đánh chỉ mục) website có tên là GoogleCaffeine Caffeine mang lại nhiều hơn 50% kết quả tìm kiếm cấp nhật nhất so với hệ thống
cũ, nó là tập hợp nội dung web lớn nhất được cung cấp Nếu blog, forum của bạn
có bài post mới bạn có thể tìm thấy ngay trên kết quả tìm kiếm trong thời gian nhanh hơn nhiều so với trước đây
Khi bạn search Google thực chất bạn không tìm kiếm các website thật mà bạn chỉ đang tìm kiếm những website Google đã Index (Search Index), giống như mục lục
ở mỗi cuốn sách giúp bạn tìm kiếm chính xác nội dung mình cần ở trang nào
Nội dung website phát triển chóng mặt, nó không chỉ phát triển về số lượng nội dung mà còn phát triển nhiều hình thức khác nhau như video, ảnh, tin tức cập nhật thời gian thực Các webpage nhiều nội dung hơn và ngày càng phức tạp hơn Hơn nữa người dùng Google cũng đòi hỏi ngày càng cao hơn, họ đòi hỏi tìm thấy nội dung mới nhất và phù hợp nhất Người xuất bản nội dung thì mong muốn nội dung của họ phải được tìm thấy ngay sau khi xuất bản
Để theo kịp sự tiến hoá của web và đáp ứng nhu cầu của người dùng, google xây dựng Caffeine Ảnh dưới đây mô tả sự khác nhau giữa hệ thống index cũ và
caffein
Trang 6Phần hình bên tay trái là bộ máy index cũ Những tầng thông tin được xếp chống lên nhau tính theo độ tuổi được đánh chỉ mục Một số trong cùng một lớp tuổi được cập nhật vài lần 1 tuần, những một số thì người lại thông tin của nó chỉ được cập nhật vài tuần một lần Nhưng để đánh giá lại chỉ số index cho website hệ thông của Google phải phân tích lại toàn bộ website và đem so sánh với những website trong cùng 1 lớp, như vậy độ trể của các kết quả là rất cao Và với cấu trúc này người dùng sẽ rất dễ dàng nhận được những thông tin không như họ mong đợi do, cấu trúc dữ liệu đã được cố định sẵn theo hệ thống của Google và tính tương tác ở đây là hoàn toàn không có
Với hình bên tay phải, bạn sẽ thấy sự khác biệt rõ ràng Hệ thống caffeine sẽ cập nhận và phân tích website trên những phần nhỏ (website sẽ được chia nhỏ ra) và cập nhật các chỉ mục tìm kiếm liên tục và trên một diện rộng Như vậy khi các googlebot đến những trang mới, có thông tin mới thì những thông tin này được xếp ngang hàng với các thông tin trên các website cũ Như vậy người dùng sẽ dễ dàng tìm được thông tin “tười” 100% mà không bắt gặp phải bất cứ rào cản nào về thời gian và website mà nó được xuất bản
Tất nhiên để đem lại khả năng hoạt động khủng như vậy Google Caffeine cũng sẽ phải tiêu tốn của Google một lượng tài nguyên cũng rất “khủng” Theo tính toán của Google một giây hệ thống Caffeine có khả năng phân tích và index tầm 100 ngàn trang trong cùng 1 thời điểm Nếu tính sơ sơ mỗi trang trên website là 1 tờ giấy A4 thì mỗi giây caffeine sẽ làm cho đống giấy này dài thêm 3 … dặm Hệ thống Caffeine chiềm gần 100 triệu Gigabye lữu trữ trong một cơ sở dữ liệu và nó lớn lên theo tộc độ hằng trăm ngàn gigabyte mỗi này Bạn sẽ cần 625.000 chiếc Ipod lớn nhất để lưu trữ thông tin một ngày caffeine cập nhật
Sự thật thì các kỹ sư của Google muốn xây dựng Caffeine như là một hệ thống có khả năng hoạt động tốt trong tương lai 5 đên 10 năm nữa Khi mà khối lượng thông tin trên internet và sự khó tính của người dùng đòi hỏi Google phải trở thành một
bộ máy tìm kiếm nhanh, mạnh và toàn diện hơn nữa mới có thể đám ứng đủ nhu cầu
3 Bộ tìm kiếm thông tin
Trang 7Bộ tìm kiếm thông tin là một thành phần xử lý các truy vấn từ phía người sử dụng (user), tiếp nhận các yêu cầu tìm kiếm (câu truy vấn query),phân tích từ, tìm kiếm trong Cơ sở dữ liệu chỉ mục, so khớp các từ khóa, lấy về kết quả phù hợp, sau
đó trả lại những kết quả đó cho người sử dụng thông qua giao diện GUI
Nói chung, bộ tìm kiếm thông tin hoạt động độc lập với các thành phần khác, song lại phụ thuộc với nhau về mặt dữ liệu
II.Nguyên lý hoạt động của Google Search Engine
1.Search Engine điều khiển robot đi thu thập thông tin trên mạng thông qua các siêu liên kết Hyperlink
2.Robots phát hiện ra website mới, nó gửi tài liệu webpage về cho server chính để tạo CSDL chỉ mục phục vụ cho nhu cầu tìm kiếm thông tin (*Robots phải liên tục cập nhật dữ liệu trên mạng, mật độ cập nhật phụ thuộc vào từng hệ thống tìm kiếm (Search engine))
3.Search engine nhận yêu cầu truy vấn từ User, nó sẽ tiến hành phân tích, tìm trong CSDL chỉ mục và trả về những tài liệu thỏa yêu cầu
Trang 8I Ranking là gì?
Trong lĩnh vực tìm kiếm, ranking là kỹ thuật đánh giá giá trị từng kết quả trong tập trả về mỗi khi người dùng truy vấn Bằng cách thức cho điểm, danh sách kết quả sẽ được sắp xếp theo thứ tự trước sau tương ứng với số điểm
Với việc bùng nổ dữ liệu trên internet, việc đánh giá xem một trang web nào là chất lượng với một từ khóa thực sự khó khăn Do đó tầm quan trọng của ranking trong tìm kiếm ngày càng cao Nó đòi hỏi phải kết hợp nhiều thuật toán để cho ra được kết quả tốt nhất mà người dùng mong muốn
II Các yếu tố ảnh hưởng đến Ranking
Từ khóa: Số lần xuất hiện của từ khoá trong bài viết Ví dụ: từ "Việt Nam" xuất hiện hai lần trong bài viết A và 3 lần trong bài viết B Như vậy bài viết
B sẽ có điểm cao hơn khi truy vấn bằng từ khoá "Việt Nam"
Tỉ lệ tần suất xuất hiện từ khoá với độ dài của bài viết Ví dụ: từ khoá "Việt Nam" xuất hiện hai lần trong bài viết A và 3 lần trong bài viết B Nhưng nếu bài viết A dài 1 trang và bài viết B dài 2 trang thì trong trường hợp này, bài viết A sẽ có điểm số cao hơn bài viết B ứng với từ khóa "Việt Nam"
Internal link
Trang 9+Vòng lặp vô hạn / thiếu các Internal link Seo
Vòng lặp vô hạn, theo cách gọi thông thường của các SEOer là thủ thuật “Nhốt bot”, thủ thuật này sẽ làm cho bot mất nhiều thời gian để index những trang có nội dung như nhau và giảm unique content và cũng giảm giá trị link của từng page
+ Quá nhiều link trong một Pages
Cách làm này làm giảm giá trị các page trong nội bộ site Có quá nhiều liên kết trong 1 trang (hơn 100) giống như một cái gầu có 100 lỗ thủng trong nó Bất kể bao nhiêu nước bạn đổ vảo đó, nó cũng sẽ chảy hết ra sàn nhà
+Sử dụng Anchor text không phù hợp
Một trong những điều tệ nhất bạn có thể làm cho các Internal link Seo của mình là
sử dụng các từ khóa có đặc điểm chung như bấm vào đây hoặc sử dụng các câu còn lại hoặc 1 nhóm các từ như các liên kết Tác dụng của việc này chính là giúp cho các trang đích được xếp hạng bới bất cứ từ khóa cụ thể
Trang 10+Các trang không liên kết với trang khác
(orphan page – dịch là các trang mồ côi nghe cũng hơi ngang nên cứ dịch là trang không liên kết với trang khác)Nếu bạn muốn một trang được xếp hạng thì đừng quá chặt chẽ với các liên kết Coi dòng liên kết như các dòng chảy tầng của nước (giống như một thác nước) và 10 cốc rượu sâm panh sẽ được đổ đầy từ một cốc rượu ở phía trên cùng từ một dòng chảy
III Các kỹ thuật sử dụng trong ranking
Google cho biết họ sử dụng kết quả của hơn 200 phương pháp khác nhau để đánh giá toàn thể cấu trúc Web và xác định những trang nào là quan trọng nhất.Sau đây là một số thuật toán cơ bản trong Ranking:
1.Đánh giá theo địa chỉ của trang.
Đây là một cách đánh giá độ quan trọng của từ khóa với mỗi trang Web và thường có trọng số khá cao Thay vì từ khóa nằm trong bài viết thì nó lại nằm trong đường dẫn URL hay tên miền của trang Web (domain name)
2 Đánh giá bằng từ khoá quan trọng.
Web Page là tài liệu có định dạng hiển thị Thông dụng nhất là chuẩn HTML Dựa vào cấu trúc định dạng đó, thuật toán cho điểm cao hơn với từ khóa nằm trong các thẻ đặc biệt Cách thông thường nhất mà Search Engine hay áp dụng chính là cho điểm cao với từ khoá nằm trong anchor text(liên kết), các thẻ tiêu đề, meta keyword, H1, H2, H3, H4, H5, H6 hoặc từ khoá được in đậm, viết hoa
Chúng ta đã biết một bài văn thường bao gồm ba phần: mở bài, thân bài và kết luận Trong đó, phần mở bài gần như một tóm tắt hoặc giới thiệu nội dung cho cả bài viết Nếu chúng ta xác định được đâu là mở bài và cho điểm cao hơn với những
từ khóa nằm trong đó thì kết quả search chính xác hơn rất nhiều Mặt khác, với một
từ "Việt Nam", nếu xuất hiện ở đầu bài viết, giữa hay cuối bài viết thì nó cũng có những trọng lượng khác nhau
Trong một bài viết, các từ khóa có độ quan trọng khác nhau còn tùy thuộc vào vị trí hoặc ngữ cảnh Ví dụ, các danh từ riêng sẽ ít xuất hiện hơn trong một bài viết
Trang 11nhưng nó mang lại thông tin nhất định cho bài viết Chẳng hạn, nếu ta thấy từ "Việt Nam", ta biết ngay bài viết sẽ nói vấn đề gì đó về Việt Nam Nhưng với từ "làm việc", chúng ta không thể đưa ra kết luận gì bởi đây là một động từ chung chung Các danh từ thường có độ quan trọng hơn động từ, tính từ và trạng từ là thành phần kém quan trọng nhất Ngoài ra, từ viết tắt, từ đồng nghĩa sẽ giúp nội dung có điểm đánh giá cao hơn Ví dụ, bài viết chứa cả cụm từ "Hà Nội" và "Thăng Long"
sẽ có điểm cao hơn so với bài viết chỉ chứa từ "Hà Nội" Trường hợp khác, bài viết chứa cả cụm từ "công nghệ thông tin" và "cntt" sẽ có điểm cao hơn bài viết chỉ chứa cụm từ "công nghệ thông tin" Kết hợp với từ điển, phân tích ngữ nghĩa sẽ giúp phân tích sâu hơn về cấu trúc, tóm tắt hay gạn lọc lại những ý chính của bài viết
3.Đánh giá bởi các từ gần nhau.
Thuật toán cho phép tính toán độ gần nhau giữa các từ khoá Các Search Engine cho phép người tìm kiếm chỉ định độ gần nhau của các từ bằng câu lệnh tìm kiếm dạng "ca sỹ mỹ tâm"~5 Lệnh search này sẽ trả về tập bài viết có các từ
"ca", "sỹ", "mỹ", "tâm" và khoảng cách giữa các từ thường không quá năm từ Đây
là thuật toán khá hay và tương đối dễ cài đặt Thuật toán này có thể kết hợp với các phương thức phân tích cao cấp để xác định vấn đề quan trọng trong bài viết nhằm tăng điểm cao hơn cho các câu hoặc cụm từ giá trị trong nội dung
4 Đánh giá theo ngày tháng.
Thông thường, người tìm kiếm có xu hướng tìm kiếm những vấn đề hay sự kiện mới xảy ra Chẳng hạn, với từ khoá "Ronaldo", người ta sẽ quan tâm đến những vấn đề như Ronaldo gần đây cặp kè với ai, đá cho đội nào hay mức lương bao nhiêu? Phương thức ranking này là dễ, rẻ nhất và khá hiệu quả Nếu ta quan sát kết quả Google ở nhiều thời điểm khác nhau với một từ khóa ta sẽ thấy thứ hạng trả về của kết quả thay đổi Nhưng phương thức xác định thời gian của nội dung không hề đơn giản Nếu chỉ căn cứ vào thời gian Crawler (máy quét) lấy về thì không chính xác tuyệt đối Ví dụ, một bài viết xuất hiện trên trang Web A đã lâu nhưng được trang Web B copy lại nội dung Như vậy, thời gian mà Crawler lấy về chỉ mang tính tương đối Trường hợp khác, bài viết đề cập tới chiến tranh Việt Nam hay những sự kiện từ thập niên 50 được đăng tải, chúng ta không thể căn cứ vào thời gian cập nhật để xác định thời gian của nội dung