Semantic Wikipedia

Wikipedia กำลังจะเจอปัญหาแบบเดียวกับที่ HTML เจอในยุค '90

ตอนนั้น HTML บูมมาก มีเว็บเป็นร้อยพันล้านหน้า เว็บจำนวนมากมีเนื้อหา มีประโยชน์ แต่เราไม่สามารถใช้คอมช่วยจัดการมันได้ เหตุผลก็เป็นเพราะ HTML นั้น human-readable แต่ไม่เป็น machine-readable

เราถึงต้องแก้ปัญหานี้ด้วย XML ซึ่งเป็นทั้ง human-readable และ machine-readable โดยยอมเสีย overhead ไปกับความซับซ้อนของแท็ก XML นิดหน่อย (รวมถึงพวก schema) แต่ก็ได้ผล (อ่านเรื่อง Semantic Web โดยเฉพาะของ Tim Berners-Lee)

Wikipedia กำลังดำเนินตามรอยนั้น ข้อมูลใน en.wikipedia.org เยอะมากจนหาอะไรก็เจอแล้ว แต่ก็มีปัญหาเดียวกันว่ามันไม่ machine-readable

ลองดูตัวอย่างสามหน้านี้

เราสามารถเข้าใจได้ทันทีว่าเป็นวัตถุคนละอย่างกัน จาก context (ซึ่งในที่นี้คือข้อความในวงเล็บ) ถึงแม้อันแรกสุดจะไม่มีวงเล็บแต่เราก็เข้าใจโดย implication ได้ง่ายๆ ว่ามันคือหนังสือ

แต่ถ้าใช้โปรแกรมค้นหาโดยไม่เพิ่มข้อมูลอะไรเป็นพิเศษให้สามหน้านี้ จะเห็นว่าเป็นเรื่องยากมาก ทางแก้ปัญหาเฉพาะหน้ามี 2 อย่าง วิธีแรกคือ parse หาจาก URL ส่วนวิธีที่สองดีกว่าหน่อย คือเช็คจาก Category ของ Wikipedia เอง ซึ่งไม่ยั่งยืนทั้งคู่ตราบใดที่ Wikipedia ยังไม่มีวิธีการอธิบายข้อมูล metadata ที่ตายตัว

จากปัญหานี้ทำให้คลังข้อมูลมหาศาลใน Wikipedia ยังไม่ถูกนำไปใช้ให้เป็นประโยชน์เต็มรูปแบบนัก ลองคิดดูว่าถ้าข้อมูลหนังใน imdb กับ Wikipedia เชื่อมต่อกันได้ มันจะขนาดไหน

คนของ Wikipedia เองก็เห็นปัญหานี้กันแล้ว โครงการ Semantic MediaWiki เกิดเพื่อแก้ปัญหานี้ และผมคิดว่าช่วง 2-3 ปีข้างหน้า จะเห็นการเปลี่ยนแปลงอย่างเป็นรูปธรรมมากขึ้น

อย่างไรก็ตามปัญหาง่ายๆ ที่จะเกิดขึ้นก็ยังคงอยู่ นั่นคือ เซิร์ฟเวอร์ของ Wikipedia รองรับการค้นหาเต็มสตรีมที่จะเกิดขึ้นได้แค่ไหน?

Comments

คงถึงเวลาที่ Wikipedia เองจะ Outsource ปัญหาพวกนี้ไปให้คนที่เชี่ยวชาญกว่าอย่าง ก็เกิล หรือยาฮู ชื่อวิกิพีเดียเองก็ทำให้เวลาทำแล้วได้หน้าพอดู น่าจะคุยได้ว่าไม่ให้โฆษณา อาจจะให้ขึ้นว่า Powered By XXX อะไรอย่างนั้นก็พอแล้ว

besides "Category",
"Template" also do provide semantic knowledge.

Bact':
"Template" function still have only some semantic information I mentioned.

It may be matched to "metadata" section in HTML file or "EXIF" in photo but lack of uniform pattern in each template. We'll never know whether "Author" field is person or not, only information we know is it just only link.

that's true, but i think it's the same for the current state of Semantic Web nowadays.
one of the current research now is how to build a Semantic Web out of "non-Semantic" one, using many intelligent algorithms.

For example, a person name you mentioned is quite easy to recognised -- there's an annual "academic competition" on this (name entity recognition), and the winner's system can guess around 95% correctly. And that's for a plain text with no structure -- with document structure knowledge (a Template in this case), we may achieve a higher recall/precision.

Building Semantic Web out of nothing manually is just too expensive.
most of the real world Semantic Web applications right now (for example, medical ontology) are built semi-automatically (computer do most of the job, with human intervention on the difficult ones that computer can't decide).

Metadata is a good idea, but only if we have enough people to annotate it, imho.
I think the reason that Wikipedia grow exponentially is because of its easiness, free form editing.

2 cents,

I agree with you all these points :)

Add new comment