ผู้ใช้:Motarkratom/Tf–idf
ในระบบค้นคืนข้อมูลสารสนเทศ (information retrieval), tf–idf, TF*IDF หรือ TFIDF ย่อมาจากคำว่า term frequency–inverse document frequency ซึ่งเป็นค่าทางสถิติที่มีเป้าหมายเพื่อสะท้อนถึงความสำคัญของคำต่อเอกสารในคอลเล็กชันหรือคลังข้อมูล[1] ค่า tf–idf มักใช้เป็น ปัจจัยถ่วงน้ำหนัก (weighting factor) ในการค้นหา สำหรับรูปแบบการค้นคืนข้อมูลสารสนเทศ, การทำเหมืองข้อความ (text mining) และ การสร้างแบบจำลองผู้ใช้ (user modeling) ปัจจัยการถ่วงน้ำหนัก (weighting factor) คือ น้ำหนักที่กำหนดให้กับจุดข้อมูลเพื่อกำหนดความสำคัญที่เบากว่าหรือหนักกว่าในกลุ่ม มักใช้สำหรับคำนวณค่าเฉลี่ยถ่วงน้ำหนัก เพื่อให้สมาชิกในกลุ่มให้ความสำคัญน้อยลง (หรือมากกว่า) ค่า tf–idf จะเพิ่มขึ้นตามสัดส่วนของจำนวนครั้งที่คำปรากฏในเอกสาร และถูกหักล้างด้วยจำนวนเอกสารในคลังข้อมูลที่มีคำนั้นอยู่ ซึ่งช่วยปรับให้คำบางคำปรากฏบ่อยขึ้น ค่า tf–idf เป็นการถ่วงน้ำหนักระยะยาวรูปแบบหนึ่งที่ได้รับความนิยมมากที่สุดในปัจจุบัน โดยผลจากการสำรวจในปี 2558 พบว่า 83% ของระบบแบบ text-based ในห้องสมุดดิจิทัลต่างก็ใช้ tf–idf[2]
รูปแบบ/ความแปรผันของรูปแบบ tf–idf มักถูกใช้โดยเครื่องมือค้นหา (search engines) ที่เป็นตัวกลางในการให้คะแนนและจัดอันดับความเกี่ยวข้องของเอกสารตามคำค้นหาของผู้ใช้ ค่า tf–idf สามารถใช้สำหรับการกรองคำหยุด (stop-words) ในฟิลด์หัวเรื่องต่างๆ ได้ รวมทั้งการสรุปข้อความและการจัดประเภทข้อความ
ในการคำนวณหาฟังก์ชันการจัดอันดับ (ranking function) อย่างง่ายที่สุดวิธีหนึ่งทำได้โดยการรวม ค่าของ tf–idf ในแต่ละคำที่ค้นหา ทั้งนี้ ยังมี ranking function ซึ่งมีความซับซ้อนอีกมากมายที่แปรผันกับตัวแบบอย่างง่ายนี้
แรงจูงใจ
[แก้]ความถี่ของคำ (Term frequency)
[แก้]ถ้าหากเรามีชุดเอกสารเป็นข้อความภาษาอังกฤษและต้องการจัดอันดับเอกสารดังกล่าว ว่าเอกสารใดที่เกี่ยวข้องกับข้อความค้นหา "the brown cow" มากกว่า วิธีง่ายๆ คือ เริ่มต้นด้วยการกำจัดเอกสารที่ไม่มีคำว่า "the", "brown" และ "cow" ทั้งสามคำออกไป แต่ก็ยังเหลือเอกสารจำนวนมาก ดังนั้น เพื่อแยกความแตกต่างเพิ่มเติม เราอาจนับจำนวนครั้งที่แต่ละเทอมเกิดขึ้นในเอกสารแต่ละฉบับ จำนวนครั้งที่คำศัพท์เกิดขึ้นในเอกสารเรียกว่า ความถี่ของคำ (Term frequency) อย่างไรก็ตาม ในกรณีที่ความยาวของเอกสารแตกต่างกันอย่างมากมักจะมีการปรับเปลี่ยน รูปแบบของการถ่วงน้ำหนักแบบแรกเกิดจาก Hans Peter Luhn (1957) ซึ่งอาจสรุปได้ดังนี้: [3] น้ำหนักของคำที่อยู่ในเอกสารเป็นเพียงสัดส่วนกับความถี่ของคำ
ผกผันของความถี่ของเอกสาร (Inverse document frequency)
[แก้]เนื่องจากคำว่า "the" เป็นคำที่ใช้กันทั่วไป ความถี่ของคำจึงมักจะเน้นเอกสารที่ไม่ถูกต้องซึ่งมักใช้คำว่า "the" บ่อยกว่า โดยไม่ได้ให้น้ำหนักเพียงพอกับคำว่า "brown" และ "cow" ที่มีความหมายมากกว่า คำว่า "the" ไม่ใช่คำหลักที่ดีในการแยกแยะเอกสารและคำศัพท์ที่เกี่ยวข้องและไม่เกี่ยวข้อง ซึ่งแตกต่างจากคำทั่วไป "brown" และ "cow" ดังนั้นจึงรวม ปัจจัยผกผันของความถี่ของเอกสาร (inverse document frequency factor) ซึ่งลดค่าน้ำหนักของเงื่อนไขที่เกิดขึ้นบ่อยมากในชุดเอกสารและเพิ่มค่าน้ำหนักของเงื่อนไขที่ไม่ค่อยเกิดขึ้น
Karen Spärck Jones (1972) ได้ให้ความหมายการตีความทางสถิติของคำเฉพาะที่เรียกว่า ผกผันของความถี่ของเอกสาร (Inverse document frequency : idf ) ซึ่งกลายเป็นรากฐานที่สำคัญของการถ่วงน้ำหนักคำ (term weighting): [4] ความจำเพาะของคำศัพท์สามารถวัดเป็นฟังก์ชันผกผันของจำนวนเอกสารที่เกิดขึ้น
บทนิยาม
[แก้]- tf–idf เป็นผลคูณของค่าสถิติสองค่า คือ ความถี่ของคำ (Term frequency) และ ผกผันของความถี่ของเอกสาร (Inverse document frequency) ซึ่งมีในการกำหนดค่าที่แน่นอนของทั้งสองสถิติหลายวิธี
- สูตรดังแสดงต่อไปนี้มีจุดมุ่งหมายเพื่อกำหนดความสำคัญของคำหลัก ( keyword) หรือวลี (phrase) ภายในเอกสารหรือหน้าเว็บ
weighting scheme | ค่าถ่วงน้ำหนัก tf |
---|---|
binary | |
raw count | |
term frequency | |
log normalization | |
double normalization 0.5 | |
double normalization K |
ความถี่ของคำ
[แก้]ความถี่ของคำ tf(t,d) คือ ความถี่ของเทอม t ,
- ,
โดยที่ ft,d คือ การนับ (คร่าวๆ) ของคำศัพท์ในเอกสาร กล่าวคือ จำนวนครั้งที่คำ t ปรากฎในเอกสาร d
ทั้งนี้ มีวิธีในการกำหนดความถี่ของคำอีกหลายวิธี::[5]: 128
- การนับ (คร่าวๆ) : tf(t,d) = ft,d
- ความถี่แบบบูลีน (Boolean frequencies): tf(t,d) = 1 ถ้า t เกิดขึ้นใน d และ มิฉะนั้นแล้วเป็น 0 ;
- ความถี่คำที่ปรับความยาวของเอกสาร: tf(t,d) = ft,d ÷ จำนวนของคำใน d
- ความถี่แบบ สเกลลอการิทึม tf(t,d) = log (1 + ft,d) ; [6]
- ความถี่ที่เพิ่มขึ้น เพื่อป้องกันความเอนเอียงต่อเอกสารที่ยาวขึ้น เช่น ความถี่ (คร่าวๆ) หารด้วยความถี่ (คร่าวๆ) ของคำที่เกิดขึ้นมากที่สุดในเอกสาร:
ผกผันของความถี่ของเอกสาร
[แก้]weighting scheme | ค่าถ่วงน้ำหนักidf () |
---|---|
unary | 1 |
inverse document frequency | |
inverse document frequency smooth | |
inverse document frequency max | |
probabilistic inverse document frequency |
ผกผันของความถี่ของเอกสาร คือ การวัดปริมาณข้อมูลที่คำนั้นให้ กล่าวคือ เป็นเรื่องปกติหรือหายากในเอกสารทั้งหมด idf เป็น เศษส่วนผกผันที่ปรับขนาดลอการิทึม (logarithmically scaled inverse fraction) ของเอกสารที่มีคำนั้น (สรุป idf ได้มาจากการหาค่าลอการิทึมของผลหารของจำนวนเอกสารทั้งหมดด้วยจำนวนเอกสารที่มีคำนั้น ):
เมื่อ
- เป็นจำนวนเอกสารทั้งหมดในคลัง
- เป็นจำนวนเอกสารที่มีคำว่า ปรากฏขึ้น (กล่าวคือ ) หากคำๆ นั้นไม่อยู่ในคลังข้อมูล จะนำไปสู่การหารด้วยศูนย์ ดังนั้น จึงเป็นเรื่องปกติที่จะปรับตัวส่วนเป็น
ความถี่ของคำ (Term frequency) – ผกผันของความถี่ของเอกสาร (Inverse document frequency)
[แก้]จากนั้น tf–idf จะถูกคำนวณในรูปแบบของ
ในเอกสารที่กำหนด ค่า tf–idf ที่มีน้ำหนักสูงนั้นเข้าถึงได้ด้วย ความถี่ของคำที่สูง และความถี่ของเอกสารของคำศัพท์นั้นต่ำในการรวบรวมเอกสารทั้งหมด ค่าน้ำหนักจึงมักจะกรองคำทั่วไปออก เนื่องจากอัตราส่วนภายในฟังก์ชันของ idf (idf's log function) มีค่ามากกว่าหรือเท่ากับ 1 เสมอ ค่าของ idf (และ tf–idf) จึงมากกว่าหรือเท่ากับ 0 ทั้งนี้ เมื่อคำศัพท์ปรากฏในเอกสารจำนวนมากขึ้น อัตราส่วนภายในลอการิทึมจะเข้าใกล้ 1 ซึ่งย่อมทำให้ idf และ tf–idf เข้าใกล้ 0 มากขึ้น
weighting scheme | document term weight | query term weight |
---|---|---|
1 | ||
2 | ||
3 |
การให้เหตุผลของ idf
[แก้]Idf ถูกนำมาใช้เป็น "ความจำเพาะของคำ" โดย Karen Spärck Jones ในบทความปี 1972 แม้ว่ามันจะใช้ได้ผลดีในฐานะของวิธีค้นหา แต่รากฐานทางทฤษฎีของมันก็มีปัญหามาอย่างน้อยสามทศวรรษหลังจากนั้น โดยมีนักวิจัยหลายคนพยายามหา การเหตุผลทางทฤษฎีเชิงข้อมูล สำหรับเรื่องนี้[7]
คำอธิบายของ Spärck Jones เองไม่ได้เน้นทฤษฎีมากนัก นอกเหนือจากความเกี่ยวข้องกับ กฎของ Zipf แล้ว ยังมีความพยายามในการใส่ idf บนฐานของความน่าจะเป็น [8] โดยการประมาณค่าความน่าจะเป็นที่เอกสารที่กำหนด d จะบรรจุเทอม t เป็นความถี่ของเอกสารสัมพัทธ์
ดังนั้น เราสามารถกำหนด idf ในรูปของ
นั่นคือ ความถี่ของเอกสารผกผัน คือ ลอการิทึมของความถี่เอกสารสัมพัทธ์ "ผกผัน"
ในทางกลับกัน การตีความความน่าจะเป็นนี้ใช้รูปแบบเดียวกับการตีความภายในข้อมูลตนเอง (self-information) อย่างไรก็ตาม การนำแนวคิดเชิงทฤษฎีข้อมูลดังกล่าวไปใช้กับปัญหาในการดึงข้อมูลทำให้เกิดปัญหาเมื่อพยายามที่จะกำหนด ปริภูมิเหตุการณ์ (event spaces) ที่เหมาะสมสำหรับการ แจกแจงความน่าจะเป็น (probability distributions) ที่ต้องการ ซึ่งไม่เพียงแต่จะต้องคำนึงถึงเอกสารเท่านั้นแต่ยังรวมถึงคำถามและข้อกำหนดด้วย
ความเชื่อมโยงกับทฤษฎีสารสนเทศ (Information Theory)
[แก้]ความถี่ของคำและผกผันของความถี่ของเอกสารสามารถกำหนดได้โดยใช้ ทฤษฎีสารสนเทศ (Information theory) เพื่อช่วยให้เข้าใจว่าเหตุใดผลิตภัณฑ์ของตนจึงมีความหมายในแง่ของเนื้อหาของข้อมูลร่วมกันของเอกสาร
สมมติฐานลักษณะเฉพาะ (characteristic assumption) เกี่ยวกับการแจกแจง คือ:
สมมติฐานนี้มีความหมายตามที่ Aizawa ได้แสดงถึงวิธีค้นหาที่ tf-idf ใช้ [9]
จากนิพจน์ของ เอนโทรปีแบบมีเงื่อนไข (Conditional entropy) ของเอกสารแบบสุ่มเลือกในคลัง โดยมีเงื่อนไขว่ามันมีคำศัพท์เฉพาะ (และสมมติว่าในเอกสารทั้งหมดมีความเป็นไปได้เท่ากันที่จะถูกเลือกและมีขนาดเล็ก เป็น r=ค่าความน่าจะเป็น) ในรูปของ:
ในแง่ของสัญลักษณ์, และ เป็น "ตัวแปรสุ่ม (random variables)" ที่สอดคล้องกับการเขียน/สร้างเอกสารหรือคำศัพท์ตามลำดับ
ในตอนนี้ จำคำจำกัดความของ Mutual information และสังเกตว่ามันสามารถเขียนแสดงเป็น
ขั้นตอนสุดท้าย คือ การขยาย ซึ่ง เป็นความน่าจะเป็นแบบไม่มีเงื่อนไข (unconditional probability) ในการเขียน/สร้างคำศัพท์เกี่ยวกับการเลือก (แบบสุ่ม) ของเอกสาร เพื่อให้ได้ว่า:
นิพจน์นี้แสดงว่าการรวม Tf–idf ของข้อกำหนดและเอกสารที่เป็นไปได้ทั้งหมดจะกู้คืนข้อมูลร่วมกันระหว่างเอกสารและคำศัพท์โดยคำนึงถึงลักษณะเฉพาะทั้งหมดที่มีการกระจายร่วมกัน
ดังนั้น Tf–idf แต่ละตัวจึงมี "บิตของข้อมูล (bit of information)" ที่แนบมากับคู่เอกสารเทอม x
ตัวอย่างของ tf–idf
[แก้]สมมติว่า เรามีตารางการนับเทอมของคลังข้อมูลซึ่งประกอบด้วยเอกสารเพียงสองฉบับดังที่แสดงไว้ทางด้านขวา
Term | จำนวน |
---|---|
this | 1 |
is | 1 |
another | 2 |
example | 3 |
Term | จำนวน |
---|---|
this | 1 |
is | 1 |
a | 2 |
sample | 1 |
การคำนวณ tf–idf สำหรับคำว่า "this" ดำเนินการดังนี้:
ในรูปแบบความถี่ (คร่าวๆ), ค่า tf เป็นเพียงความถี่ของ "this" สำหรับแต่ละเอกสาร ในแต่ละเอกสาร คำว่า "this" จะปรากฏขึ้นเพียงครั้งเดียว แต่เนื่องจากเอกสาร 2 มีคำมากกว่า ความถี่สัมพัทธ์จึงน้อยลง
สำหรับ idf เป็นค่าคงที่ต่อคลังข้อมูลและ คำนวณสำหรับอัตราส่วนของเอกสารที่มีคำว่า "this"
ในกรณีนี้ เรามีคลังเอกสารสองฉบับและเอกสารทั้งหมดมีคำว่า "this"
ดังนั้น tf–idf จึงเป็นศูนย์สำหรับคำว่า "this" ซึ่งหมายความว่า คำนั้นไม่ได้ให้ข้อมูลมากอย่างที่ปรากฏในเอกสารทั้งหมด
ในกรณี คำว่า "example" น่าสนใจมากกว่า - คำนี้เกิดขึ้นถึงสามครั้งแต่พบในเอกสารที่สองเท่านั้น:
ท้ายที่สุด,
(ใช้ ลอการิทึมฐาน 10 ในการคำนวณ)
มากกว่าการใช้ คำ
[แก้]แนวคิดเบื้องหลัง tf–idf ยังใช้กับสิ่งที่มีเอกลักษณ์ (entities) อื่นที่ไม่ใช่คำ ในปี 1998 แนวคิดของ idf ถูกนำไปใช้กับการอ้างอิง[10] ผู้เขียนแย้งว่า "ถ้าเอกสารสองฉบับมีการอ้างอิงที่ไม่ธรรมดามาก เรื่องนี้ควรให้น้ำหนักมากกว่าการอ้างอิงจากเอกสารจำนวนมาก" นอกจากนี้ tf–idf ยังใช้กับ "ภาพคำ (visual words)" โดยมีวัตถุประสงค์เพื่อจับคู่วัตถุในวิดีโอ[11] และทั้งประโยค[12] อย่างไรก็ตาม แนวคิดของ tf–idf ไม่ได้พิสูจน์ว่ามีประสิทธิภาพในทุกกรณีมากไปกว่าโครงร่าง tf ธรรมดา (ซึ่งไม่มี idf) เมื่อนำ tf–idf ไปใช้กับการอ้างอิง นักวิจัยไม่พบการปรับปรุงใดๆ เลยจากน้ำหนักการนับการอ้างอิงธรรมดาที่ไม่มีองค์ประกอบ idf [13]
อนุพันธ์
[แก้]แผนการถ่วงน้ำหนักระยะจำนวนหนึ่งได้มาจาก tf–idf หนึ่งในนั้นคือ TF–PDF (ความถี่ของคำ * ความถี่ตามสัดส่วนของเอกสาร)[14] TF–PDF ถูกแนะนำในปี 2544 ในบริบทของการระบุหัวข้อที่เกิดขึ้นใหม่ในสื่อ
องค์ประกอบ PDF เป็นการวัดความแตกต่างของความถี่ที่เกิดขึ้นในโดเมนต่างๆ อนุพันธ์อื่นคือ TF–IDuF[15]
ใน TF–IDuF idf จะไม่ถูกคำนวณตามคลังเอกสารที่จะค้นหาหรือแนะนำ ค่า idf จะถูกคำนวณจากการรวบรวมเอกสารส่วนบุคคลของผู้ใช้แทน ผู้เขียนรายงานว่า TF–IDuF มีประสิทธิภาพเท่าๆ กันกับ tf–idf แต่ยังสามารถนำไปใช้ในสถานการณ์อื่น เช่น ระบบการสร้างแบบจำลองผู้ใช้ไม่มีการเข้าถึงคลังเอกสารส่วนกลาง
See also
[แก้]References
[แก้]- ↑ Rajaraman, A.; Ullman, J.D. (2011). "Data Mining" (PDF). Mining of Massive Datasets. pp. 1–17. doi:10.1017/CBO9781139058452.002. ISBN 978-1-139-05845-2.
- ↑ Breitinger, Corinna; Gipp, Bela; Langer, Stefan (2015-07-26). "Research-paper recommender systems: a literature survey". International Journal on Digital Libraries (ภาษาอังกฤษ). 17 (4): 305–338. doi:10.1007/s00799-015-0156-0. ISSN 1432-5012. S2CID 207035184.
- ↑ Luhn, Hans Peter (1957). "A Statistical Approach to Mechanized Encoding and Searching of Literary Information" (PDF). IBM Journal of Research and Development. 1 (4): 309–317. doi:10.1147/rd.14.0309. สืบค้นเมื่อ 2 March 2015.
There is also the probability that the more frequently a notion and combination of notions occur, the more importance the author attaches to them as reflecting the essence of his overall idea.
- ↑ Spärck Jones, K. (1972). "A Statistical Interpretation of Term Specificity and Its Application in Retrieval". Journal of Documentation. 28: 11–21. CiteSeerX 10.1.1.115.8343. doi:10.1108/eb026526.
- ↑ Manning, C.D.; Raghavan, P.; Schutze, H. (2008). "Scoring, term weighting, and the vector space model" (PDF). Introduction to Information Retrieval. p. 100. doi:10.1017/CBO9780511809071.007. ISBN 978-0-511-80907-1.
- ↑ "TFIDF statistics | SAX-VSM".
- ↑ Robertson, S. (2004). "Understanding inverse document frequency: On theoretical arguments for IDF". Journal of Documentation. 60 (5): 503–520. doi:10.1108/00220410410560582.
- ↑ See also Probability estimates in practice in Introduction to Information Retrieval.
- ↑ Aizawa, Akiko (2003). "An information-theoretic perspective of tf–idf measures". Information Processing and Management (ภาษาอังกฤษ). 39 (1): 45–65. doi:10.1016/S0306-4573(02)00021-3.
- ↑ Bollacker, Kurt D.; Lawrence, Steve; Giles, C. Lee (1998-01-01). CiteSeer: An Autonomous Web Agent for Automatic Retrieval and Identification of Interesting Publications. Proceedings of the Second International Conference on Autonomous Agents. AGENTS '98. pp. 116–123. doi:10.1145/280765.280786. ISBN 978-0-89791-983-8. S2CID 3526393.
- ↑ Sivic, Josef; Zisserman, Andrew (2003-01-01). Video Google: A Text Retrieval Approach to Object Matching in Videos. Proceedings of the Ninth IEEE International Conference on Computer Vision – Volume 2. ICCV '03. pp. 1470–. doi:10.1109/ICCV.2003.1238663. ISBN 978-0-7695-1950-0. S2CID 14457153.
- ↑ Seki, Yohei. "Sentence Extraction by tf/idf and Position Weighting from Newspaper Articles" (PDF). National Institute of Informatics.
- ↑ Beel, Joeran; Breitinger, Corinna (2017). "Evaluating the CC-IDF citation-weighting scheme – How effectively can 'Inverse Document Frequency' (IDF) be applied to references?" (PDF). Proceedings of the 12th IConference.
- ↑ Khoo Khyou Bun; Bun, Khoo Khyou; Ishizuka, M. (2001). Emerging Topic Tracking System. Proceedings Third International Workshop on Advanced Issues of E-Commerce and Web-Based Information Systems. WECWIS 2001 (ภาษาอังกฤษแบบอเมริกัน). p. 2. CiteSeerX 10.1.1.16.7986. doi:10.1109/wecwis.2001.933900. ISBN 978-0-7695-1224-2. S2CID 1049263.
- ↑ Langer, Stefan; Gipp, Bela (2017). "TF-IDuF: A Novel Term-Weighting Scheme for User Modeling based on Users' Personal Document Collections" (PDF). IConference.