เมษายน 19, 2024

ประวัติ และจุดกำเนิดของ กูเกิ้ล (History the birth of Google)

ประวัติ และจุดกำเนิดของ กูเกิ้ล (History the birth of Google)

          จุดเริ่มต้นของเรื่องนี้อยู่ที่ มหาวิทยาลัยสแตนฟอร์ด (Stanford University) อีกหนึ่งสุดยอดแห่งมหาวิทยาลัยด้านไอดี  มหาวิทยาลัยแห่งนี้ นอกจากจะเป็นต้นกำเนิดของสุดยอด 2 ไอเดียออนไลน์ระดับโลกอย่าง Yahoo! และ Google แล้วมหาวิทยาลัยแห่งนี้เป็นต้นกำเนิดของคอมพิวเตอร์ที่เราใช้ๆกันอยู่ด้วยซ้ำไป ที่นี่เป็นที่ที่ คุณ John von Neuman (จอห์น วอน นู แมน) คิดและประดิษฐ์คอมพิวเตอร์ที่มีสถาปัตยกรรมที่เหมือนกับที่เราใช้อยู่ที่นี่แหละ เป็นคนแรกของโลก (แม้จะไม่ใช่คอมพิวเตอร์เครื่องแรกของโลกก็ตาม คืออย่างนี้ครับ คอมพิวเตอร์เครื่องแรกของโลกชื่อว่า ENIAC  ซึ่งเป็นเครื่องที่มีความซับซ้อนสูง ต่อมาคุณ von Neuman ซึ่งก็ช่วยงานในการสร้างคอมพิวเตอร์ ENIAC อยู่ด้วย แกเสนอว่า เราน่าจะแยกส่วนของคอมพิวเตอร์ออกเป็น หน่วยประมวลผล หน่วยความจำ หน่วยรับเข้าและส่งข้อมูล ซึ่งเป็นสถาบันก็เลยยอย่องให้ von Neuman เป็นบิดาของคอมพิวเตอร์เลยทีเดียว) ต่อไปเข้าเรื่องกูเกิ้กันเลยน่ะครับ


Sergey Brin (เซอร์เก บริน)

          เรื่องก็เริ่มตอนปิดเทอมภาคฤดูร้อนปี 1995 ที่มหาวิทยาลัยแห่งนี้แหละครับ ตอนนั้น Sergey Brin (เซอร์เก บริน) 1 ใน 2 ของผู้ก่อตั้ง กูเกิ้ล เป็นแค่นักเรียนปริญญาเอก ที่กำลังจะขึ้นปี 2 ของภาควิชา วิทยาศาสตร์คอมพิวเตอร์ (Computer Science) ธรรมดาๆ คนหนึ่ง ที่อาสาเข้ามาเป็นนึกศึกษาช่วยงาน Open House

          โดยปกติทุกๆปีในช่วงก่อนเปิดเทอมนี้ มหาวิทยาลัยต่างๆเค้าจะมีการเปิดบ้านต้อนรับผู้มาเยือน เราเรียกว่า Open House คือว่าใครที่สนใจที่จะเรียนในมหาวิทยาลัยไหน คณะไหน ก็จะไปงาน Open House ของที่นั่น ที่จะมีคนมาคอยพาทัวร์ และแนะนำสถานที่ แนะนำคณะ แนะนำ Lab แนะนำครู อาจารย์ เป็นปกติเหมือนทุกปี แต่ปีนี้เองพระเอกคนที่สองของเรา คือคุณ Larry Page (ลาร์รี่ เพจ) ก็โผล่มาในงาน Open House ในปีนี้ หลังจากได้ดีกรี วิศวกรรมศาสตร์บัณฑิต จากมหาวิทยาลัยมิชิแกน (Michigan University)มาหยกๆ


Larry Page (ลาร์รี่ เพจ)

          ทั้งสองเจอกันเพราะ Larry Page ไปอยู่ในกลุ่มทัวร์ ที่มี Sergey Brin เป็นหัวหน้ากลุ่มทัวร์พอดี ดูท่าว่างานนี้ไม่ใช่รักแรกพบครับ เพราะระหว่างทางที่เดินทัวร์มหาวิทยาลัย และเมือง San Francisco อยู่ทั้งสองคนนี้ก็มีเรื่องถกเถียงกันตลอดเวลา โดยเฉพาะเรื่องของการจัดผังเมืองของ San Francisco

          Page เล่าให้ฟังว่าตอนนั้นเค้าจำได้ว่า Sergey Brin เป็นคนที่มีความคิดที่ค่อนข้างจะติดยึด เป็นคนที่ไม่ค่อยโสภาที่น่าจะอยู่ใกล้เท่าไหร่ ถ้าคิดว่าตัวเองถูกละก็จะเถียงหัวชนฝา ซึ่งบังเอิญว่า ตัวเอง (Page) ก็เป็นคนแบบนั้น ส่วน Sergey ก็บอกว่าจริงๆแล้ว Larry ก็ออกจะแปลกๆอยู่เหมือนกันแหละ เถียงหัวชนฝา ไม่ค่อยยอมใคร

          เอาเป็นว่า ทั้งคู่ถกเถียงกันเรื่องต่างๆทั้งวันที่เดินทัวร์ แม้จะไม่ลงรอยด้วยดี แต่ทั้งคู่ก็จำกันได้ดีก่อนจะแยกจากกันในตอนเย็น

          อีก 2-3 เดือนต่อมา มหาวิทยาลัยก็เปิดเทอมครับ Page ก็เข้ามารายงานตัว และเลือก Prof.Terry Winograd ผู้เชี่ยวชาญด้านการโต้ตอบระหว่างคอมพิวเตอร์และมนษย์ เป็นอาจารย์ที่ปรึกษา และก็เริ่มมองหาหัวข้อวิทยานิพนธ์

          พ่อของ Larry Page (ขณะนั้นเป็นอาจารย์ด้าน Computer Science อยู่ที่มหาวิทยาลัยมิชิแกน) บอกว่า Thesis ปริญญเอก จะเป็นเหมือนกรอบ ที่จะคอยกำหนดอนาคต ด้านวิชาการของเราไปทั้งชีวิต ก่อนจะตัดสินใจเลือกทำให้ไตร่ตรองให้ดี ทำให้ Page ใช้เวลาอยู่นานในการเลือกหัวข้อทำวิทยานิพนธ์ หลังจากลองนึกๆดูสิบกว่าเรื่อง สุดท้ายก็มาลงที่เรื่อง World Wide Web นี่เอง

          และแล้วจุดเริ่มต้นของไอเดียเล็กๆก็กลายเป็นไอเดียที่เปลี่ยนโลกอินเตอร์เน็ตไปทั้งใบ จะกำเนิดของยักษ์ใหญ่ในวงการซอฟท์แวร์อีกตน ก็เริ่มขึ้นที่นี่

อินเตอร์เน็ต ทฤษฎีกราฟ และ BackRub Project

          Page เริ่มหัวข้อวิจัยเกี่ยวกับเว็บก็จริง แต่ไม่ได้เริ่มมองหาวิธีที่จะค้นหาข้อมูลบนเว็บ แต่สิ่งที่เค้ามองเห็นกลับเป็นมุมมองทางด้านคณิตศาสตร์ของเว็บไซต์มากกว่า

          คือ Page มองแบบนี้คับ ถ้าหากมองว่า 1 เซอร์ฟเวอร์ หรือ 1 เว็บไซต์ หรือ 1 คอมพิวเตอร์ เป็นเพียง จุด (Node,Vertes) จุดหนึ่งบนกราฟ (Graph) และลิงค์(Link) เช่น www.ipst.ac.th ที่วิชาการ.คอมเชื่อมต่อไปยังเว็บไซท์อื่นๆ เหมือนกับเป็นทางเชื่อมต่อกัน หรือ ขอบ (Edge) ระหว่างจุดเหล่านั้น หรือ พูดง่ายๆว่า Page มองเห็น อินเตอร์เน็ตเป็นกราฟ นั่งเอง

          ซึ่งบ้านเรา นิสิต นึกศึกษาะดับปริญญาตรี ด้านทางสายวิทย์ มักจะได้เรียนเรื่อง กราฟ ประเภทนี้ในเรื่อง ทฤษฏีกราฟ (Graph Theory) แถวๆปีต้นๆ (ซึ่งน้องๆตัวเล็กๆอาจจสับสนนิดนึง เพราะกราฟที่คุ้นเคยอาจจะหมายถึง  กราฟที่เป็นตัวแทนของข้อมูล เช่น กราฟแท่ง กราฟเชิงเส้น) ถ้าไม่ใช่วิชาคณิตศาสตร์ ก็จะเป็นวิชา Algorithm โดยเฉพาะพวกที่เรียน วิทยาการคอมพิวเตอร์ ก็น่าจะผ่านหผ่านตากันมาแล้วทุกคน

 
ตัวอย่างกราฟ สมมติให้จุดแต่ละจุด แทนคอมพิวเตอร์แต่ละเครื่อง และเส้นเชื่อมแทนลิงค์ที่เชื่อมหากัน

แต่คราวนี้ลองใช้จินตนาการดูกันหน่อยนะครับ ว่าแน่นอนเว็บไซต์หนึ่งเว็บ ก็ลิงค์ไปยังหลายร้อย หลายพันเว็บ และมีเว็บไซต์หลายๆเว็บ ที่ลิงค์มายังเว็บไซต์หนึ่งๆ และปัจจุบันเรามีกันเป็น พันๆล้านเว็บ เพราะฉะนั้น กราฟ ที่เราใช้แทน อินเตอร์เน็ต ก็จะเป็นกราฟขนาดมหึมา และมีความซับซ้อน มีเส้นโยงกันไปโยงกันมาอย่างยุ่งเหยิง

          ซึ่งตรงนี้แหละที่ Page มองแล้วเห็นว่ามันช่างน่าตื่นเต้น น่าสนใจ น่าติดตาม เสียเหลือเกิน

          Page เคยบอกว่า Internet คือ กราฟที่ใหญ่ที่สุดที่มนุษย์เคยสร้างขึ้น และมันก็ยังจะเติบโต ใหญ่ขึ้น ใหญ่ขึ้นทุกๆวัน ด้วยอัตราเร็วในการเติบโตสูงมาก มันช่างเป็นเรื่องที่น่าสนใจทำวิทยานิพนธ์เหลือเกิน (ถ้าเป็นคนสามัญชนคนไทยธรรมดา ก็อาจจะบอกว่า โอ มันช่างซับซ้อนเหลือเกิน ไม่มีทางทำได้หรอก ทำไปเดี่ยวไม่จบ หนีดีกว่า) ซึ่ง Prof. Winograd อาจารย์ที่ปรึกษาของเค้าก็เห็นด้วย และเห็นว่า น่าจะศึกษาเรื่องของโครงสร้างของกราฟของเว็บเป็นการเริ่มต้นวิทยานิพนธ์

          Page ทำการศึกษาด้วยตัวเองอยู่ไม่นาน เค้าก็เจอปัญหาแรกเข้าให้…

          โอเคตรงนี้เราเข้าเรื่อง Graph Theory กันนิดนึง คืออย่างนี้ครับ

          ในกราฟปกติ ขอบของกราฟ (Edge) จะเป็นตัวบ่งถึงความสัมพันธ์กันระหว่างจุด (vertex) ซึ่งปกติแล้ว เราจะรู้และนับจำนวนได้ว่า จากจุดจุดหนึ่ง มีขอบ หรือ เส้นลากไปยังจุดอื่นๆอีกกี่จุด และมีกี่จุดที่ลากมาหาตัวเอง

          แต่หน้าเว็บเพจกลับไม่เป็นแบบนั้นซะทีเดียว เพราะ ที่หน้าเว็บเพจหนึ่งๆ (สมมติว่าเว็บ 1 หน้าเป็น 1 จุดในกราฟ) เรารู้ครับว่า จากจุดที่เราอยู่ในปัจจุบัน มันลิงค์ไปยังหน้าไหนบ้าง คือ เรารู้ว่ามันมี จำนวนขอบที่วิ่งออกไป (Out Degree) จากตัวเองกี่ขอบกี่เส้น และไปที่ไหนบ้าง แต่ที่เราไม่รู้นี่คือว่า มีเว็บเพจใดบ้าง กี่หน้า ที่ลิงค์มาหาหน้าที่เราสนใจ

          ลองนึกตามแบบนี้น่ะครับ ว่าหน้าเว็บที่คุณอ่านอยู่ตอนนี้เนี่ย ลิงค์มากจากหน้าไหน URL อะไรบ้าง ถ้าคุณไม่กด Back มีข้อมูลตรงไหนบอกมั้ยครับ หรือแม้แต่คุณจะกด Back คุณก็รู้แค่ลิงค์เดียวที่ลิงค์มาหาหน้านี้ แต่ที่จริง อาจจะมีหน้าเว็บอื่นๆอีกเป็นร้อยๆ ที่มีลิงค์มาหาหน้านี้ ที่เราไม่รู้ คำถามคือ แล้วเราจะรู้ได้อย่างไร

          ซึ่งตรงนี้แหละที่ยาก เพราะอินเตอร์เน็ตไม่ได้ให้ข้อมูลนี้มา

          และตรงนี้เองที่ Page คิดว่า มันน่าจะดี ถ้าหากเรารู้ (หรืออย่างน้อย มีวิธีการที่จะทำให้รู) ว่าใครลิงค์หาใครบ้าง หรือ มีใครลิงค์มาหาหน้านี้บ้างกี่คน Page ก็เลยเลือกเอาปัญหานี้ มาทำเป็นวิทยานิพนธ์ปริญญเอก และตั้งชื่อเล่นโปรเจ็คของเค้าว่า “BackRub Project” (โครงการ “ถูหลัง”)

 
back rub line – ถ้ามองไปข้างหน้าอย่างเดียว เราไม่มีทางรู้ว่าใครกำลังถูหลังเราอยู่

          จาก BackRub Project ที่ค่อยๆเติบโตมา ด้วยน้ำมือของนักศึกษา 2 คน ที่ใช้ห้องนอนที่หอพักนักศึกษา ทำเป็นห้อง Server และห้องเขียนโปรแกรม ได้กลายเป็น Google Project โปรแกรม Search Engine ขนาดจิ๋ว ที่ดูดทรัพยากร Network ของมหาวิทยาลัย สแตนฟอร์ด ที่ได้ชื่อว่า Network ทีเร็วเป็นอันดับต้นๆของโลก ได้อย่างไร

จอมไต่เว็บ Crawler และ PageRank

          Page เริ่มที่จะคิดว่า เราจะทำไงถึงจะรู้ว่า ลิงค์ใดบ้างที่ลิงค์มายังเว็บหนึ่งๆ หลังจากศึกษาเกี่ยวกับเรื่องนี้มาได้ไม่กี่เดิอน Page ก็พบว่า จริงๆแล้ว เรื่องของการลิงค์มาของเอกสารนี่ มีกันมานานแล้วในวงการวิชาการ

          ก็คือเรื่องของ ผลงานวิชาการ นั่นเอง คือโดยปกติแล้ว หากนักวิชาการท่านใด คิดทฤษฏีอะไรออกมาได้ใหม่ๆ หรือค้นพบอะไรใหม่ๆ หรือต้องการจะแก้ไขสิ่งที่มีอยู่แล้ว ก็จะทำการตีพิมพ์ผลงานของตนเองในวารสารวิชาการ (Journal) โดยจะต้องอ้างอิงถึงที่มาของความรู้ หรือ ผลงานที่มีมาก่อนของคนอื่น หรือที่ใกล้เคียง ก็เพื่อให้องค์ความรู้ใหม่ๆ ที่ตี พิมพ์ มีรากฐานจากองค์ความรู้ ที่ได้รับการพิสูจน์แล้วนั่นเอง ดังนั้น ผลงานวิชาการ ไหนที่ได้รับการอ้างถึง (Citation) บ่อยๆ จากนักวิชาการอื่นๆ แสดงว่า ผลงานวิชาการชิ้นนั้นได้รับการยอมรับอย่างจริง ในวงการวิชาการเรามีตัวชี้วัดกันเลยว่า ผลงานหนึงๆ มีการถูกอ้างถึงมากน้องเพียงใดเราเรียกดัชนีตัวนี้ว่า Citation index ซึ่งการอ้างอิงด้านวิชาการถึอเป็นเรื่องใหญ่ ใหญ่ขนาดไหนครับ ก็ใหญ่พอที่จะมีวิชาที่ว่าด้วยเรื่องนี้โดยเฉพาะเลย คือวิชา bibliometrics


• Kiattisin Kanjanawanishkul and Bunyarit Uyyanonvara, Novel fast color reduction algorithm for time-constrained applications, Journal of Visual Communication and Image Representation, Volume 16, Issue 3, June 2005, pp. 311-332 (2005) • Y. Sirisathitkula, S. Auwatanamongkola and Bunyarit Uyyanonvara, Color Image Quantization using Adjacent Colors’ Line Segments. Pattern Recognition Letters, Vol 25/9 pp 1025-1043. (2004) • Lloyd Bender, David J. Spalton, Bunyarit Uyyanonvara, James Boyce, Catherine Heatley, Romina Jose and Jaheed Khan, POCOman: New system for quantifying posterior capsule opacification, Journal of Cataract & Refractive Surgery, Volume 30, Issue 10, October 2004, Pages 2058-2063 (2004)

ตัวอย่างของการอ้างอิงทางวิชาการ

          ตอนที่ Tim Berners-Lee (ตอนที่ได้รับการแต่งตั้งเป็น Sir Tim Berners-Lee เรียบร้อยแล้ว) วิศวกรอิสระของ CERN คิดค้น World Wide Web ขึ้นเป็นครั้งแรกของโลก คุณ Tim แกก็คิดว่า เราน่าจะมีวิธีที่ละลิงค์ผลงานวิชาการของนักวิชาการเข้าด้วยกันเลย ไม่ต้องมานั่งกำหนดรูปแบบที่ยุ่งยาก คุณ Tim ก็เลย คิดเรื่องของ Hypertext ขึ้นมา แต่สิ่งที่ Page กำลังทำเป็นการ Reverse Engineer ของ WWW เพราะเค้าต้องการค้นหาถึงที่มา ต้นตอของเอกสารที่ลิงค์กันนั่นเอง

          ด้วยความรู้นี้ งานของเค้าก็ง่ายขึ้นเยอะรับ ที่เหลือก็คือว่าเค้าจะต้องหาให้ได้ว่า ใครอ้างอิงจากใคร โดยอัตโนมัติ พูดง่ายๆว่าเค้าต้องวาด กราฟของอินเตอร์เน็ต ขึ้นมา บนเครื่องคอมพิวเตอร์ของเค้านั่นเอง

          แน่นอนว่า กราฟที่เค้าจะสร้างขึ้น จะมีความซับซ้อนสูง และการคำนวนจำนวนลิงค์ ที่เชื่อมหากันก็ทำได้ยาก เนื่องจากกราฟมีการเจริญเติบโตเรื่อยๆ เพราะความซับซ้อนของข้อมูลสูง ดังนั้นสุตรการคำนวณเพื่อคะแนนแต่ล่ะหน้า ก็จะมีความซับซ้อนด้วย ตรงนี้นี่เอง ที่ทำให้ Brin กระโดดเข้ามาในโปรเจ็คนี้

 
Page และ Brin ในช่วงเริ่มต้นโปรเจ็ค google ที่หอพักนักศึกษาของมหาวิทยาลัย (ภาพจากวารสาร WIRED )

          ด้วยพื้นเพ back ground เดิมของ Brin ที่เป็นนักคณิตศาสตร์ ที่จัดว่าเข้าขั้นเป็นอัจฉริยะคนหนึ่ง มีเชื้อสายเป็นคนรัสเซีย เกิดที่รัสเซีย มีพ่อเป็นนักวิทยาศาสตร์ชาวรัสเซีย ที่ทำงานที่องค์การ NASA และ เป็นอาจารย์สอนคณิตศาสตร์ที่มหาวิทยาลัยแมรี่แลนต์ โดยครอบครัวเค้าอพยบ มาอยู่ที่อเมริการ ตอนที่ Brin อายุแค่ 6 ขอบ Brin เรียนจบม.ปลาย 1 ปีก่อนชาวบ้าน และหลังจากจบปริญญาตรี ที่แมรี่แลนด์ Brin ก็มาต่อเอกทันทีที่ Stanford

          ตัว Brin เองก็ต้องมองหาโปรเจกปริญญาเอก ด้วยเช่นกัน แต่เค้าเลือกไปเลือกมาเกือบ 2 ปีแล้ว ก็ยังหาหัวข้อลงตัวไม่ได้ จนได้เข้ามาคลุกครีกับโปรเจ็คของ Page ก็เกิดความสนใจ ที่จะเข้ามาทำในส่วนคณิตศาสตร์ของโปรเจกนี้ และอีกสาเหตุก็คือเค้าชอบ Page

          การสร้างกราฟของอินเตอร์เน็ตโดยอัตโนมัติ เป็นจุดเริ่มต้นให้ Page เขียนโปรแกรมเล็กๆประเภท Crawler ขึ้นมาตัวหนึ่ง ในห้องนอน ตอนที่ Page เริ่มเขียน crawler นี่ จำนวนหน้าเว็บทั่วโลกก็มีอยู่ประมาณ 10 ล้านหน้าเห็นจะได้ แต่จำนวนลิงค์ที่เชื่อมกันอยู่นี่คงนับไม่ถ้วน โดยหวังจะให้เจ้า Crawler ได้ไปเก็บข้อมูลมาสร้างเป็นกราฟโดยอัตโนมัติ ในตอนนั้น เค้าอาจจะยังไม่รู้หรอก ว่าโปรแกรมเล็กๆที่เค้าเริ่มเขียนในห้องนอน จะเป็นสิ่งที่ประสบความสำเร็จที่สุดในโลกต่อจาก Internet

          หลายคนคงอาจจะยังไม่คุ้นกับคำว่า Crawler ผมขยายความให้อีกนิด Crawler เป็นโปรแกรมเล็กๆโปรแกรมนึง ที่ทำให้หน้าที่ไปดึงเว็บเพจต่างๆมา ซึ่งปกติแล้วข้อมูลแสดงหน้าเว็บไซด์ที่เราเห็นนี่ เป็นแค่ Text File หรือ ข้อมูลตัวอักษรธรรมดาๆนี่เอง พอโปรแกรมประเภท บราวเซอร์ เช่น IE ได้รับข้อมูลพวกนี้แล้วมันก็ทำการแปล และแสดงให้เป็นสิ่งที่คุณเห็นบนหน้าจอทันที หลังจากโปรแกรมประเภท crawlwer  ได้รับข้อมูลแล้ว มันก็จะทำการแยกข้อมูล และลิงค์ (ที่จะไปหน้าอื่น)ออกมา สมมุติว่าหน้าที่คุณอ่านอยู่ตอนนี้นี่ มีลิงค์ออกจากมันไป อีกประมาณ 30 ลิงค์ เจ้าตัว crawler ก็จะทำการจัดการเอาลิงค์เหล่านี้มาเข้าคิวเรียงกันไว้ แล้วก็ไล่ไต่ไปทีละลิงค์ตามคิว แล้วก็ไปดึงข้อมูลหน้านั้นมา แล้วแยกลิงค์แบบเดิมอีก แล้วลิงค์ที่ได้จากหน้าถัดไปนี้ก็จะเอามาเข้าคิว เรียงต่อกันไป เรื่อยๆ เพื่อจะทำการไปดึงข้อมูลมาในเวลาถัดๆไป เพราะฉะนั้นมันก็เลยให้ความรู้สึกคล้ายๆกับว่า เจ้า crawler มันค่อยๆคืบคลานออกจากจุดเริ่มต้นไปทีละน้อย ทีละน้อย

          และแล้ว ในเดือนมีนาคม 1996 (เพียงแค่ไม่ถึงปีจากที่เค้าเริ่มศึกษา) Page ก็ปล่อยเจ้า Crawler ตัวแรกให้เริ่มทำงาน โดยไต่จากหน้าเว็บเพจของเค้าเอง ที่อยู่บนเว็บไซท์มหาวิทยาลัยสแตนฟอร์ด

          เจ้า crawler เวอร์ชั่นแรกของ Page ไต่ไปตามเว็บเพื่อเก็บแค่ ชื่อเว็บ และข้อมูลใน header เท่านั้นเอง แต่ก็ถือว่า เป็นจุดเริ่มอย่างเป็นรูปธรรมของ Google (ที่ในปัจจุบันกลายเป็น ซุปเปอร์ crawler ไปแล้ว เพรามันไต่ไปเก็บข้อมูลทุกอย่าง ของทุกหน้าเว็บ) เพราะตอนนั้นขืนเก็บทุกอย่าง ทรัพยากรของระบบ เช่น memory หรือ ฮาร์ดดิสต์ ที่จะต้องใช้ในการจัดการกับข้อมูลเหล่านี้ ก็คงต้องมีขนาดใหญ่มหึมา และมันก็มากเกินกว่าจะเป็นโปรเจ็คของเด็กนักเรียนคนนึง

          โปรแกรมเล็กๆที่ถูกปล่อยออกจากห้องนอนที่หอพักนักศึกษาคนนึง ได้กลายเป็นปรากฏการณ์ ที่ใหญ่ที่สุดรองจากการคิดค้นอินเตอร์เน็ต ได้อย่างไร อ่านหัวข้อต่อไปครับ….

จาก โปรเจ็ค BackRub Project สู่ โปรเจ็ค Google

          Page และ Brin ได้ร่วมกันคิดหาสูตร หรือ วิธีคำนวณว่า จะให้คะแนนแต่ละหน้าเว็บเพจอย่างไรดี

          เว็บเพจหนึ่งหน้า ถ้ามองให้ดีมันก็เป็นเหมือนผลงานวิชาการชิ้นนึง ภายในผลงานวิชาการนี้ ก็จะมีการอ้างอิงผลงานคนอื่น (หรือลิงค์ไปหาคนอื่นนั่งเอง) เพราะฉะนั้นหากหน้าเว็บใดมีคนอ้างอิงถึง (ลิงค์) ถึงหน้านั้นเยอะ ก็น่าจะแสดงว่าหน้านั้นมีข้อมูลที่ดี หรือ น่าเชื่อถือ ซึ่งหากมีการให้คะแนนแต่ละหน้าเว็บ Page คิดว่าการอ้างถึงจากเว็บอื่นก็จะมีส่วนสำคัญต่อคะแนน


PageRank

          ภายหลังเค้าตั้งชื่อเล่นระบบคิดคะแนนของเค้าว่า Pagerank (ซึ่งล้อคำ 2 ความหมาย คำแรกคำว่า Page หมายึงได้ทั้งหน้าเว็บ หรือ หมายถึงชื่อของเค้าเอง) ซึ่งก็ล้อเลียนการคิดคะแนนมาจากการอ้างอิงกันของผลงานวิชาการเพราะเค้ารู้ว่า การอ้างอิงกันของเอกสารทำอย่างไร มีการให้คะแนน Citation Index อย่างไร และเค้าก็ได้เพิ่มเรื่องของการให้และลดคะแนนพิเศษด้วย หากว่าลิงค์ที่ลิงค์มาหาหน้าใดหน้าหนึ่ง เป็นลิงค์ที่มีคะแนนสูง เป็นเว็บที่มีความน่าเชื่อถือ เว็บที่ถูกลิงค์ ก็จะย่อมได้คะแนนสูงด้วย และหากนำเว็บมาเรียงลำดับกัน เว็บที่ได้คะแนนสูงกว่า ก็จะอยู่ลำดับต้นๆ ส่วนเว็บที่มีคะแนนต่ำก็จะอยู่ท้ายๆ

          สมมุติว่าเว็บ สนุก.คอม มีลิงค์ไปยังเว็บของ สสวท. ในขณะเดียวกัน เว็บของเด็กชาย ก. จากจังหวัดสงขลา ก็ลิงค์มายังเว็บของ สสวท. เช่นกัน แต่มีลิงค์มาหา เว็บ สนุก.คอม อยู่ก่อนแล้ว สมมติว่าเป็น 1000 ลิงค์ ในขณะที่มีคนลิงค์ไปหาเว็บของ เด็กชาย ก. เพียง 10 ลิงค์ ทำให้ สนุก.คอม มีคะแนน สูงกว่าเว็บของ เด็กชายก. ดังนั้น เว็บของ สสวท ก็จะได้คะแนนจากเว็บของ สนุก.คอมมากกว่า จากเว็บของ เด็กชาย ก. ด้วยนั่นเอง (คือไม่ได้นับจำนวนเฉพาะจำนวนของลิงค์)


ภาพตัวอย่าง สมมติให้หน้ายิ้มแต่ละอันแทนแต่ละเว็บ ขนาดของหน้ายิ้มแทนความสำคัญของเว็บ

          สังเกตุจากภาพตัวอย่างน่ะครับ เว็บสีแดงด้านบนจะมีขนาดใหญ่กว่าเว็บสีเขียวด้านล่าง แม้จะมีลิงค์เข้ามาแค่ 1 ลิงค์ จากสีส้ม เท่านั้น แต่เพราะเว็บสีส้มมีความสำคัญสูง เพราะได้รับการลิงค์มาจากหลายที่ เว็บสีแดงด้านบนก็เลย มีความน่าเชื่อถือด้วย(ดังนั้นเว็บไซต์ไหน ได้รับการลิงค์จากเว็บทีเป็นที่ยอมรับ ก็จะได้รับความยอมรับด้วย)

          ตอนที่ทั้งสองคนคิดระบบให้คะแนนนี้ขึ้น ทั้งสองคนไม่ได้คิดถึงเรื่องของการค้นหาข้อมูลบนเว็บเลย ที่คิดอยู่ในหัวก็มีแต่เรื่องที่ว่า จะค้นหาให้ได้ว่าใครลิงค์มาที่เว็บเพจหน้าหนึ่งๆบ้าง (Backlinks) โดยที่ทั้งสอง ทำโปรเจ็ค Backrub นี้มาจนถึงขั้นที่ รับ ลิงค์ (URL) มาหนึ่งลิงค์ มันก็จะให้ ผลลัพธ์ มาเป็น ลิงค์ที่ลิงค์มาหา (backlinks) ทั้งหมดที่ลิงค์มาหาหน้าที่กำหนด โดยเรียงลำดับตามความสำคัญ (เช่น ถ้าใส่เว็บ สสวท ไป ก็จะได้ทั้วเว็บ สนุก.คอม และเว็บเด็กชาย ก. และเว็บอื่นๆที่ลิงค์มาหา สสวท เป็น ผลการค้นหา แต่เว็บ สนุก.คอมจะ อยู๋ด้านบนกว่า เว็บของ เด็กชายก. เป็นต้น)

          ซึ่งเค้าก็พบว่าจริงๆแล้ว มันสามารถประยุกต์ ไปทำเป็น Search Engine น่าจะได้ หลังจากเล่นไปเล่นมากับ กราฟของเว็บ ที่ทั้งคู่สร้างขึ้นมา พบว่า การค้นหาข้อมูลทำได้รวดเร็ว และ ถูกต้อง อย่างไม่น่าเชื่อ ชนิดที่ทั้งสองคนยังงงว่าทำไม ไอเดียที่จะใช้เรื่องนี้ทำ Search Engine ถึงไม่ผุดมาในหัวตั้งแต่ต้น เพราะมันชัดเจนเหลือเกิน

หลังจากทดลองปรับแต่ง Backrub ให้กลายเป็น โปรแกรม Search engine ทำการค้นหาข้อมูล บนหน้าเว็บหน้าใดหน้าหนึ่ง(ผลละเชื่อเค้าเลย สองคนนี้ ปกติแล้วเรื่อง การค้นหาข้อมูลใน document นี้ไม่ใช่เรื่องง่าย เพราะไม่ได้ค้นกันแบบ เอาคำมาเทียบคำ แต่ต้องมีการแปลงรูปแบบของ ข้อมูลให้เป็นเมตริกซ์ ทั้ง SVM กับ LSI (Latent Sematic Indexing- เป็นวิธีการที่กำลังมาแรง) ก็สุดหิน ที่อยู่ในวิชา Information Retrieval – แต่สองคนนี้เล่นเรียนรู้เรื่องเหล่านี้ชนิดที่ประมาณว่า ชั่วข้ามคืน) เค้าพบว่าผลการค้นหา ดีกว่า Search Engine ที่มีอยู่ในตอนนั้น เช่น AltaVista หรือ Excite มาก โดย Search Engine ที่มีอยู่นั้นมักจะให้ผลการค้นหา ที่ไม่ค่อยจะเกี่ยวข้องกับเรื่องที่ต้องการหาจริงๆเพราะอาศัยเพียงแค่การจับคู่คำ ไม่คำนึงถึงสัญญาณ หรือข้อมูลอื่นๆที่ใกล้เคียง search enginw ใหม่ของพวกเค้า ไม่เพียงว่าผลการค้นหาจะดี แต่ ระบบการให้คะแนนนี้จะดีขึ้นเรื่อยๆ เมื่อเว็บโตขึ้นเรื่อยๆ กราฟของเว็บโตขึ้นเรื่อยๆผลการค้นหาก็จะดีขึ้นเรื่อยๆ เพราะจมีตัวให้คะแนนซึ่งกันและกัน เยอะขึ้น ตรงนี้นี่เองที่ ทั้ง Brin และ Page รู้ว่าเค้าสะดุดขุมทรัพย์ มหึมาเข้าให้แล้ว

และแล้ว โปรเจ็ค search engine โดยนักศึกษา 2 คน ก็เริ่มเป็นรูปร่างที่ชัดเจน เค้าเริ่มขอบริจาคเครื่องคอมพิวเตอร์เก่าๆที่มหาวิทยาลัยไม่ได้ใล้วมาต่อกันเป็น server เค้าเริ่มจะหาเงินมาซื้อ Harddisk เพิ่อเติม เพราะตอนนี้ข้อมูลที่ clawler เก็บมามันโตขึ้นเรื่อยๆ

ทั้งสองคนจึงตั้งชื่อ serach engine ตัวใหม่ของเค้าว่า Google ที่เพี้ยนมาจากคำว่า Google (ทีแปลว่า เลข หนึ่ง ตามด้วย ศูนย์ 100 ตัว – สังเกตุสัญลักษณ์ของ Gooooooooooooooooogle ) และ Google เวอร์ชั่นแรก ถูกปล่อยออกสู่สาธารณะชน ไว้บนเว็บของมหาวิทยาลัย Stanford เป็นครั้งแรก ตอนเดือน สิงหาคม 1996  เพียง1 ปี หลังจากที่ทั้งคู่เจอกันครั้งแรก เพียงไม่กี่เดือนนับจากเริ่มศึกษาปัญหา


Server ของ Google เมื่อปี 1998 สมัยที่ยังอยู่ที่ Stanford เป็นเครื่องที่ได้จากการบริจาคทุกเครื่อง
(ปัจจุบัน Search Engine ของ Google ทำงานอยู่บน Linux Server Farm จำนวนประมาณ 250,000 เครื่อง)

และ Google เวอร์ชั่นแรก ถูกปล่อยออกสู่สาธารณะชน ไว้บนเว็บของมหาวิทยาลัย Stanford เป็นครั้งแรก ตอนเดือนสิงหาคม 1996 – เพียง 1 ปี หลังจากที่ทั้งคู่เจอกันครั้งแรก – เพียงไม่กี่เดือนนับจากเริ่มศึกษาปัญหา – โอ จอร์จ ทำได้ยังไงเนี่ย ! ! ! ! อัจฉริยะจริงๆ ! ! !

: ผศ.ดร.บุญญฤทธิ์ อุยยานนวาระ
: วิชาการ.คอม