เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

สำรวจเวกเตอร์ข้อความ ตอนที่ 1

มาต่อยอดวิธีการสำรวจเวกเตอร์ข้อความที่เพิ่งเรียนรู้ไป โดยใช้เวกเตอร์ tf/idf จากคอลัมน์ title ในชุดข้อมูล volunteer ในแบบฝึกหัดตอนแรกนี้ เราจะเพิ่มส่วนที่ขาดให้กับฟังก์ชันที่เรียนมาจากสไลด์ โดยฟังก์ชันนี้จะคืนค่าเป็นรายการตัวเลข จากนั้นในแบบฝึกหัดถัดไป เราจะเขียนฟังก์ชันอีกตัวเพื่อรวบรวมคำที่มีน้ำหนักสูงสุดจากเอกสารทั้งหมด แล้วนำรายการคำเหล่านั้นมากรองเวกเตอร์ text_tfidf ของเรา

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การเตรียมข้อมูลสำหรับ Machine Learning ด้วย Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • เพิ่มพารามิเตอร์ชื่อ original_vocab สำหรับ tfidf_vec.vocabulary_ และ top_n
  • เรียก pd.Series() บน dictionary ที่ zip ไว้ เพื่อให้ดำเนินการกับข้อมูลได้ง่ายขึ้น
  • ใช้ฟังก์ชัน .sort_values() เพื่อเรียงลำดับ series แล้ว slice index ให้เหลือเพียง top_n คำ
  • เรียกใช้ฟังก์ชัน โดยกำหนด original_vocab=tfidf_vec.vocabulary_, vector_index=8 เพื่อดึงแถวที่ 9 และ top_n=3 เพื่อดึงคำที่มีน้ำหนักสูงสุด 3 คำแรก

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Add in the rest of the arguments
def return_weights(vocab, ____, vector, vector_index, ____):
    zipped = dict(zip(vector[vector_index].indices, vector[vector_index].data))
    
    # Transform that zipped dict into a series
    zipped_series = ____({vocab[i]:zipped[i] for i in vector[vector_index].indices})
    
    # Sort the series to pull out the top n weighted words
    zipped_index = zipped_series.____(ascending=False)[:____].index
    return [original_vocab[i] for i in zipped_index]

# Print out the weighted words
print(return_weights(vocab, ____, text_tfidf, ____, ____))
แก้ไขและรันโค้ด