Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม

Web Search Engines (เครื่องมือค้นหาเว็บ) คืออะไร?


Web search engine** คือ specialized computer server ที่ค้นหาข้อมูลบน Web ผลลัพธ์ของ user query คืนเป็น list (เรียกว่า hits) Hits อาจมี web pages, images, และ file types อื่นๆ

มี search engines ที่ค้นหาและคืนข้อมูลใน public databases หรือ open directories Search engines แตกต่างจาก web directories ที่ web directories maintained by human editors ในขณะที่ search engines ทำงาน algorithmically หรือผสม algorithmic และ human input

Web search engines เป็น large data mining applications มีหลาย data mining techniques ใช้ในทุกส่วนของ search engines ตั้งแต่ crawling (ตัดสินใจว่าหน้าไหนต้อง crawl และ crawling frequencies), indexing (เลือกหน้าที่ index และตัดสินใจว่า index ต้องสร้างมากแค่ไหน), และ searching (ตัดสินใจ ranking ของหน้า, โฆษณาไหนต้องเพิ่ม, และปรับแต่ง search results ให้ "context aware")

Search engines เผชิญกับ big challenges สำหรับ data mining:

  1. จัดการ large และ growing data volumes − ข้อมูลมักใหญ่เกิน single machines ต้องใช้ computer clouds (พันๆ หรือแสนๆ computers) ร่วมกัน mine ข้อมูล Scaling up data mining approaches บน computer clouds และ highly distributed data sets เป็น research challenge

  2. จัดการ online data − Search engine สร้าง model offline บน large data ได้ ตัวอย่าง query classifier จัด query ให้ predefined categories จาก query topic แม้ model สร้าง offline การ apply model online ต้องเร็วเพื่อ serve user queries real-time

  3. Support และ incrementally refresh model บน fast-growing data streams − Query classifier ต้อง incrementally maintain เพราะ queries ใหม่เพิ่มตลอดเวลา categories และ data distribution เปลี่ยน Current model training methods หลายตัวเป็น offline และ static ไม่ใช้ได้ในแบบนี้

  4. จัดการ queries ที่ถามน้อย (rare queries) − ถ้า search engine ต้อง support context-aware query suggestion เมื่อ user ถาม query engine พยายาม infer context จาก user profile และ query history คืนคำตอบ personalized ภายใน fraction of a second