วันจันทร์ที่ 12 กรกฎาคม พ.ศ. 2553

ข่าวประจำสัปดาห์ที่2

Google Scholar
จุดเริ่มต้นของเรื่องนี้อยู่ที่ มหาวิทยาลัยสแตนฟอร์ด (Stanford University) อีกหนึ่งสุดยอดแห่งมหาวิทยาลัยด้านไอที ตอนปิดเทอมภาคฤดูร้อนปี 1995 ที่มหาวิทยาลัยแห่งนี้ ตอนนั้น Sergey Brin 1 ใน 2 ของผู้ก่อตั้ง กูเกิ้ล เป็นแค่นักเรียนปริญญาเอก ที่กำลังจะขึ้นปี 2 ของภาควิชา วิทยาศาสตร์คอมพิวเตอร์ (Computer Science) ธรรมดาๆ คนหนึ่ง ที่อาสาเข้ามาเป็นนักศึกษาช่วยงาน Open House
ทั้งสองเจอกันเพราะ Larry Page ไปอยู่ในกลุ่มทัวร์ ที่มี Sergey Brin เป็นหัวหน้ากลุ่มทัวร์พอดีระหว่างทางที่เดินทัวร์มหาวิทยาลัย และเมือง San Francisco อยู่ ทั้งสองคนนี้ก็มีเรื่องให้ถกเถียงกันตลอดเวลา โดยเฉพาะเรื่องของการจัดผังเมืองของ San Francisco Page เล่าให้ฟังว่าตอนนั้นเค้าจำได้ว่า Sergey Brin เป็นคนที่มีความคิดที่ค่อนข้างจะติดยึด เป็นคนที่ไม่ค่อยโสภาที่น่าจะอยู่ใกล้เท่าไหร่ ถ้าคิดว่าตัวเองถูกละก็จะเถียงหัวชนฝา ซึ่งบังเอิญว่า ตัวเอง (Page) ก็เป็นคนแบบนั้น ส่วน Sergey ก็บอกว่าจริงๆแล้ว Larry ก็ออกจะแปลกๆอยู่เหมือนกัน เถียงหัวชนฝา ไม่ค่อยยอมใคร
อีก 2-3 เดือนถัดมา มหาวิทยาลัยก็เปิดเทอม Page ก็เข้ามารายงานตัว และเลือก Prof. Terry Winograd ผู้เชี่ยวชาญด้านการโต้ตอบระหว่างคอมพิวเตอร์และมนุษย์ เป็นอาจารย์ที่ปรึกษา และก็เริ่มมองหาหัวข้อวิทยานิพนธ์
โดยปกติทุกๆปีในช่วงก่อนเปิดเทอมนี้ มหาวิทยาลัยต่างๆจะมีการเปิดบ้านต้อนรับผู้มาเยือน เรียกว่า Open House คือว่าใครที่สนใจที่จะเรียนในมหาวิทยาลัยไหน คณะไหน ก็จะไปงาน Open House ของที่นั่น ที่จะมีคนมาคอยพาทัวร์ และแนะนำสถานที่ แนะนำคณะ แนะนำ Lab แนะนำครูอาจารย์ เป็นปกติเหมือนทุกๆปี Larry Page มาในงาน Open House ในปีนี้ หลังจากได้ดีกรี วิศวกรรมศาสตร์บัณฑิต จากมหาวิทยาลัยมิชิแกน (Michigan University) โดยพ่อของ Larry Page (ขณะนั้นเป็นอาจารย์ด้าน Computer Science อยู่ที่มหาวิทยาลัยมิชิแกน) บอกว่า Thesis ปริญญาเอก จะเป็นเหมือนกรอบ ที่จะคอยกำหนดอนาคต ด้านวิชาการของเราไปทั้งชีวิต ก่อนจะตัดสินใจเลือกทำให้ไตร่ตรองให้ดี ทำให้ Page ใช้เวลาอยู่นานในการเลือกหัวข้อทำวิทยานิพนธ์ หลังจากลองนึกๆดูสิบกว่าเรื่อง สุดท้ายก็มาลงที่เรื่อง World Wide Web นี่เองและแล้วจุดเริ่มต้นของไอเดียเล็กๆ ก็กลายเป็นไอเดียที่เปลี่ยนโลกอินเตอร์เน็ตทั้งใบ จุดกำเนิดของยักษ์ใหญ่ในวงการซอฟท์แวร์อีกตนก็เริ่มขึ้นที่นี่…Page เริ่มหัวข้อวิจัยเกี่ยวกับเว็บก็จริง แต่ไม่ได้เริ่มมองหาวิธีที่จะค้นหาข้อมูลบนเว็บ แต่สิ่งที่เค้ามองเห็นกลับเป็น มุมมองทางด้านคณิตศาสตร์ของเว็บไซต์มากกว่า Page มองเห็น อินเตอร์เน็ตเป็นกราฟ เว็บไซท์หนึ่งเว็บ ก็ลิงค์ไปยังหลายร้อย หลายพันเว็บ และมีเว็บไซท์หลายๆเว็บ ที่ลิงค์มายังเว็บไซท์หนึ่งๆ และปัจจุบันเรามีกันเป็น พันๆ ล้านเว็บ เพราะฉะนั้น กราฟ ที่เราใช้แทน อินเตอร์เน็ต ก็จะเป็นกราฟขนาดมหึมา และมีความซับซ้อน มีเส้นโยงกันไปโยงกันมาอย่างยุ่งเหยิง ซึ่งตรงนี้ที่ Page มองแล้วเห็นว่ามันช่างน่าตื่นเต้น น่าสนใจ น่าติดตาม เสียเหลือเกิน Page เคยบอกว่า Internet คือ กราฟที่ใหญ่ที่สุดที่มนุษย์เคยสร้างขึ้น และมันก็ยังจะเติบโต ใหญ่ขึ้น ใหญ่ขึ้น ทุกๆวัน ด้วยอัตราเร็วในการเติบโตสูงมาก ซึ่ง Prof. Winograd อาจารย์ที่ปรึกษาของเค้าก็เห็นว่าเป็นเรื่องที่ซับซ้อนมากเกินไป และเห็นว่าน่าจะศึกษาเรื่องของโครงสร้างของกราฟของเว็บ เป็นการเริ่มต้นวิทยานิพนธ์ Page ทำการศึกษาด้วยตัวเองอยู่ไม่นานเค้าก็เจอปัญหาแรกเข้าให้…คือในกราฟปกติ ขอบของกราฟ (Edge) จะเป็นตัวบ่งถึงความสัมพันธ์กันระหว่าง จุด (Vertex) ซึ่งโดยปกติแล้ว เราจะรู้และนับจำนวนได้ว่า จากจุดจุดหนึ่ง มีขอบ หรือ เส้นลากไปยังจุดอื่นๆ อีกกี่จุด และมีกี่จุดที่ลากมาหาตัวเอง แต่หน้าเว็บเพจกลับไม่เป็นแบบนั้นซะทีเดียว เพราะ ที่หน้าเว็บเพจหนึ่งๆ (สมมติว่าเว็บ 1 หน้าเป็น 1 จุดในกราฟ) เรารู้ว่า จากจุดที่เราอยู่ปัจจุบัน มันลิงค์ไปยังหน้าไหนบ้าง คือ เรารู้ว่ามันมี จำนวนขอบที่วิ่งออกไป (Out Degree) จากตัวเองกี่ขอบกี่เส้น และไปที่ไหนบ้าง แต่ที่เราไม่รู้นี่คือว่า มีเว็บเพจใดบ้างกี่หน้าที่ลิงค์มาหาหน้าที่เราสนใจลองนึกตามนี้ดูว่าหน้าเว็บที่คุณอ่านอยู่ตอนนี้ ลิงค์มาจากหน้าไหน URL อะไรบ้าง ถ้าคุณไม่กด Back มีข้อมูลตรงไหนบอกมั้ย? หรือแม้แต่คุณจะกด Back คุณก็รู้แค่ลิงค์เดียวที่ลิ๊งค์มาหาหน้านี้ แต่ที่จริง อาจจะมีหน้าเว็บอื่นๆอีกเป็นร้อยๆ ที่มีลิ๊งค์มาหาหน้านี้ ที่เราไม่รู้ คำ ถามคือ แล้วเราจะรู้ได้ยังไง ?ซึ่งตรงนี้ยาก เพราะอินเตอร์เน็ตไม่ได้ให้ข้อมูลนี้มา และตรงนี้เองที่ Page คิดว่า มันน่าจะดี ถ้าหากว่าเรารู้ (หรืออย่างน้อย มีวิธีการที่จะทำให้รู้) ว่าใครลิงค์หาใครบ้าง หรือ มีใครลิงค์มาหาหน้านี้บ้างกี่คน Page ก็เลยเลือกเอาปัญหานี้ มาทำเป็นวิทยานิพนธ์ปริญญาเอก และตั้งชื่อเล่นโปรเจ็คของเค้าว่า "BackRub Project" เพื่อจะรู้ว่าใครลิงค์มาที่หน้าเว็บนี้บ้าง Page ก็เริ่มจากการไล่ไปที่ละหน้าเว็บแล้วดูว่าหน้านั้นลิงค์ไปที่ไหนบ้าง (เหมือนว่าหน้านั้นรู้จักใครบ้าง) แล้วเก็บลิงค์ทั้งหมดในหน้านั้นมาเข้าคิวไว้ เพื่อจะได้ไล่ถามไปเรื่อยๆ (ที่เรียกว่า Crawler ) Page คิดว่าไล่ไปเรื่อยๆแบบนี้ ซักอาทิตย์นึงก็เก็บเว็บหมดจากทั่วโลกแล้ว ก็เป็นจุดเริ่มต้นของ Backrub โปรเจ็คนั่นเอง

back rub line - ถ้ามองไปข้างหน้าอย่างเดียว เราไม่มีทางรู้ว่าใครกำลังถูหลังเราอยู่
จาก BackRub Project ที่ค่อยๆ เติบโตมา ด้วยน้ำมือของนักศึกษา 2 คน ที่ใช้ห้องนอนที่หอพักนักศึกษา ทำเป็น ห้อง Server และ ห้องเขียนโปรแกรม ได้กลายเป็น Google Project โปรแกรม Search Engine ขนาดจิ๋ว ที่ดูดทรัพยากร Network ของมหาวิทยาลัย สแตนฟอร์ด ที่ได้ชื่อว่า Network ที่เร็วเป็นอันดับต้นๆของโลก ได้อย่างไร Page เริ่มที่จะคิดว่า เราจะทำไงถึงจะรู้ว่า ลิงค์ใดบ้างที่ลิงค์มายังเว็บหนึ่งๆ หลังจากที่ศึกษาเกี่ยวกับเรื่องนี้ได้ไม่นาน(ไม่กี่เดือน) Page ก็พบว่า จริงๆแล้ว เรื่องของการลิงค์ไปลิงค์มาของเอกสารนี่ มีกันมานานแล้วในวงการวิชาการ ก็คือเรื่องของ ผลงานวิชาการ นั่นเอง คือโดยปกติแล้ว หากนักวิชาการท่านใด คิดทฤษฎีอะไรออกมาได้ใหม่ๆ หรือค้นพบอะไรใหม่ หรือต้องการจะแก้ไขสิ่งที่มีอยู่แล้ว ก็จะทำการตีพิมพ์ผลงานของตนเองในวารสารวิชาการ (Journal) โดยจะต้องอ้างอิงถึงที่มาของความรู้ หรือ ผลงานที่มีมาก่อนของคนอื่น หรือที่ใกล้เคียง ก็เพื่อให้องค์ความรู้ใหม่ที่ตีพิมพ์ มีรากฐานจากองค์ความรู้ ที่ได้รับการพิสูจน์แล้ว (ตีพิมพ์แล้ว) นั่นเอง ดังนั้น ผลงานวิชาการ ไหนที่ได้รับการอ้างถึง (Citation) บ่อยๆ จาก นักวิชาการคนอื่นๆ แสดงว่า ผลงานวิชาการชิ้นนั้นได้รับการยอมรับอย่างจริง ในวงการวิชาการเรามีตัวชี้วัดกันเลยว่า ผลงานหนึ่งๆ มีการถูกอ้าง ถึงมากน้อยเพียงใด เราเรียกดัชนีตัวนี้ว่า Citation index ซึ่งการอ้างอิงด้านวิชาการถือเป็นเรื่องใหญ่พอที่จะมีวิชาที่ว่าด้วยเรื่องนี้โดยเฉพาะเลย คือวิชา bibliometricsสิ่งที่ Page กำลังทำเป็นการ Reverse Engineer ของ WWW เพราะเค้าต้องการค้นหาถึงที่มา ต้นตอของเอกสารที่ลิงค์กัน ที่เหลือก็คือว่าเค้าจะต้องหาให้ได้ ว่า ใคร อ้างอิงจาก ใคร โดยอัตโนมัติ ความซับซ้อนสูง และการคำนวนจำนวนลิงค์ ที่เชื่อมหากันก็ทำได้ยาก เนื่องจากกราฟมีการเจริญเติบโตเรื่อยๆ เพราะความซับซ้อนของข้อมูลสูง ดังนั้นสูตรการคำนวณเพื่อให้คะแนนแต่ละหน้า ก็จะมีความซับซ้อนด้วย ตรงนี้นี่เอง ที่ทำให้ Brin กระโดดเข้ามาในโปรเจ็คนี้

ด้วยพื้นเพ background เดิมของ Brin ที่เป็นนักคณิตศาสตร์ ที่จัดว่าเข้าขั้นเป็นอัจฉริยะคนหนึ่ง มีเชื้อสายเป็นคนรัสเซีย เกิดที่รัสเซีย มีพ่อเป็นนักวิทยาศาสตร์ชาวรัสเซีย ที่ทำงานที่องค์การ NASA และ เป็นอาจารย์สอนคณิตศาสตร์ ที่มหาวิทยาลัยแมรี่แลนด์ (University of Maryland) โดยครอบครัวเค้าอพยบ มาอยู่ทีอเมริกา ตอนที่ Brin อายุแค่ 6 ขวบ Brin เรียนจบ ม.ปลาย 1 ปีก่อนชาวบ้าน และหลังจากจบปริญญาตรี ที่แมรี่แลนด์ Brin ก็มาต่อเอกทันทีที่ Stanford ตัว Brin เองก็ต้องมองหาโปรเจ็คปริญญาเอก ด้วยเช่นกัน แต่เค้าเลือกไปเลือกมาเกือบ 2 ปีแล้ว ก็ยังหาหัวข้อลงตัวไม่ได้ จนได้เข้ามคลุกคลีกับโปรเจ็คของ Page ก็เกิดความสนใจ ที่จะเข้ามาทำในส่วนคณิตศาสตร์ ของโปรเจ็คนี้ และอีกสาเหตุก็คือเค้าชอบ Pageการสร้างกราฟของอินเตอร์เน็ตโดยอัตโนมัติ เป็นจุดเริ่มให้ Page เขียนโปรแกรมเล็กๆ ประเภท Crawler ขึ้นมาตัวหนึ่ง ในห้องนอน ตอนที่ Page เริ่มเขียน crawler นี่ จำนวนหน้าเว็บทั่วโลกก็มีอยู่ประมาณ 10 ล้านหน้าเห็นจะได้ แต่จำนวนลิงค์ที่เชื่อมกันอยู่นี่คงนับไม่ถ้วน โดยหวังจะให้เจ้า Crawler ไต่ไปเก็บข้อมูลมาสร้างเป็นกราฟโดยอัตโนมัติเดือนมีนาคม 1996 (เพียงแค่ไม่ถึงปีจากที่เค้าเริ่มศึกษา) Page ก็ปล่อยเจ้า crawler ตัวแรกให้เริ่มทำงาน โดยไต่จากหน้าเว็บเพจของเค้าเอง ที่อยู่บนเว็บไซท์มหาวิทยาลัยสแตนฟอร์ด เจ้า crawler เวอร์ชั่นแรกของ Page ไต่ไปตามเว็บเพื่อเก็บแค่ ชื่อเว็บ และ ข้อมูลใน header เท่านั้นเอง แต่ก็ถือว่าเป็นจุดเริ่มอย่างเป็นรูปธรรมของGooglePage และ Brin ได้ร่วมกันคิดหาสูตร หรือ วิธีคำนวณว่า จะให้คะแนนแต่ละหน้าเว็บเพจอย่างไรดี เว็บเพจหนึ่งหน้า ถ้ามองให้ดีมันก็เป็นเหมือนผลงานวิชาการชิ้นนึง ภายในผลงานวิชาการนี้ ก็จะมีการอ้างอิงผลงานคนอื่น (หรือลิงค์ไปหาคนอื่นนั่นเอง)เพราะฉะนั้นหากหน้าเว็บใดมีคนอ้างอิงถึง (ลิงค์) ถึงหน้านั้นเยอะ ก็น่าจะแสดงว่าหน้านั้นมีข้อมูลที่ดี หรือ น่าเชื่อถือ ซึ่งหากมีการให้คะแนนแต่ละหน้าเว็บ Pageคิดว่าการอ้างถึงจากเว็บอื่นก็จะมีส่วนสำคัญต่อคะแนน

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

ภาพตัวอย่าง สมมติให้หน้ายิ้มแต่ละอันแทนแต่ละเว็บ ขนาดของหน้ายิ้มแทนความสำคัญของเว็บ
สังเกตุว่า เว็บสีแดงด้านบนจะมีขนาดใหญ่กว่าเว็บสีเขียวด้านล่าง แม้จะมีลิงค์เข้ามาแค่ 1 ลิงค์ จากสีส้ม เท่านั้น แต่เพราะเว็บสีส้มมีความสำคัญสูง เพราะได้รับการลิงค์มาจากหลายที่ เว็บสีแดงด้านบนก็เลย มีความน่าเชื่อถือด้วย (ดังนั้นถ้าเว็บไซท์ไหน ได้รับการลิงค์จากเว็บที่เป็นที่ยอมรับ ก็จะได้รับความยอมรับด้วย) ตอนที่ทั้งสองคนคิดระบบให้คะแนนนี้ขึ้น ทั้งสองคนไม่ได้คิดถึงเรื่องของการค้นหาข้อมูลบนเว็บเลย ที่คิดอยู่ในหัวก็มีแต่เรื่องที่ว่า จะค้นหาให้ได้ว่าใครลิงค์มาที่เว็บเพจหน้าหนึ่งๆบ้าง (ฺBacklinks) โดยที่ทั้งสอง ทำโปรเจ็ค Backrub นี้ มาจนถึงขั้นที่ รับ ลิงค์ (URL) มาหนึ่งลิงค์ มันก็จะให้ ผลลัพธ์ มาเป็น ลิงค์ที่ลิงค์มาหา (backlinks) ทั้งหมดที่ลิงค์มาหาหน้าที่กำหนด โดยเรียงลำดับตามความสำคัญซึ่งเค้าก็พบว่าจริงๆแล้ว มันสามารถประยุกต์ ไปทำเป็น Search Engine น่าจะได้ หลังจากเล่นไปเล่นมากับ กราฟของเว็บ ที่ทั้งคู่สร้างขึ้นมา พบว่า การค้นหาข้อมูลทำได้รวดเร็ว และ ถูกต้อง อย่างไม่น่าเชื่อ ชนิดที่ทั้งสองคนยังงงว่าทำไม ไอเดียที่จะใช้เรื่องนี้ทำ Search Engine ถึงไม่ผุดมาในหัวตั้งแต่ต้น เพราะมันชัดเจนเหลือเกินหลังจากทดลองปรับแต่ง Backrub ให้กลายเป็น โปรแกรม Search engine ทำการค้นหาข้อมูล บนหน้าเว็บหน้าใดหน้าหนึ่ง เค้าพบว่าผลการค้นหา ดีกว่า search engine ที่มีอยู่ในตอนนั้น เช่น AltaVista หรือ Excite มาก โดย Search Engine ที่มีอยู่นั้นมักจะให้ผลการค้นหา ที่ไม่ค่อยจะเกี่ยวข้องกับเรื่องที่ต้องการหาจริงๆ เพราะอาศัยเพียงแค่การจับคู่คำ ไม่คำนึงถึงสัญญาณ หรือข้อมูลอื่นๆที่ใกล้เคียง search engine ใหม่ของพวกเค้า ไม่เพียงว่าผลการค้นหาจะดี แต่ ระบบการให้คะแนนนี้จะดีขึ้นเรื่อยๆ เมื่อเว็บโตขึ้นเรื่อยๆ กราฟของเว็บโตขึ้นเรื่อยๆ ผลการค้นหาก็จะดีขึ้นเรื่อยๆ เพราะจะมีตัวให้คะแนนซึ่งกันและกัน เยอะขึ้น ตรงนี้นี่เองที่ และแล้ว โปรเจ็ค search engine โดยนักศึกษา 2 คน … ก็เริ่มเป็นรูปร่างที่ชัดเจนเค้าเริ่มขอบริจาคเครื่องคอมพิวเตอร์เก่าๆที่มหาวิทยาลัยไม่ได้ใช้แล้วมาต่อ กันเป็น server เค้าเริ่มจะหาเงินมาซื้อ harddisk เพิ่มเติม เพราะตอนนี้ข้อมูลที่ clawler เก็บมามันโตขึ้นเรื่อยๆทั้งสองคนจึงตั้งชื่อ search engine ตัวใหม่ของเค้าว่า Google ที่ไม่ได้ตั้งใจ แต่สะกดผิด เพี้ยนมาจากคำว่า googol (ที่แปลว่า เลข หนึ่ง ตามด้วย ศูนย์ 100 ตัว - สังเกตุ
(อ่านต่อ...)
ที่มา : http://r64.wikidot.com/google-inc

ไม่มีความคิดเห็น:

แสดงความคิดเห็น