การประมวลผลข้อความและภาษาธรรมชาติด้วย TensorFlow การประมวลผลข้อความและภาษาธรรมชาติด้วย TensorFlow

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

หลังจากประมวลผลข้อความเป็นรูปแบบที่เหมาะสมแล้ว คุณสามารถใช้ข้อความนั้นในเวิร์กโฟลว์การประมวลผลภาษาธรรมชาติ (NLP) เช่น การจัดประเภทข้อความ การสร้างข้อความ การสรุป และการแปล

TensorFlow มีไลบรารีสองไลบรารีสำหรับการประมวลผลข้อความและภาษาธรรมชาติ: KerasNLP ( GitHub ) และ TensorFlow Text ( GitHub )

KerasNLP เป็นไลบรารีการสร้างแบบจำลอง NLP ระดับสูงที่มีโมเดลที่ใช้หม้อแปลงล่าสุดทั้งหมดรวมถึงยูทิลิตีโทเค็นระดับล่าง เป็นวิธีแก้ปัญหาที่แนะนำสำหรับกรณีการใช้งาน NLP ส่วนใหญ่ KerasNLP สร้างขึ้นบน TensorFlow Text โดยแยกการดำเนินการประมวลผลข้อความระดับต่ำออกเป็น API ที่ออกแบบมาให้ใช้งานง่าย แต่ถ้าคุณไม่ต้องการทำงานกับ Keras API หรือต้องการเข้าถึง ops การประมวลผลข้อความระดับล่าง คุณสามารถใช้ TensorFlow Text ได้โดยตรง

KerasNLP

วิธีที่ง่ายที่สุดในการเริ่มประมวลผลข้อความใน TensorFlow คือการใช้ KerasNLP KerasNLP เป็นไลบรารีการประมวลผลภาษาธรรมชาติที่รองรับเวิร์กโฟลว์ที่สร้างขึ้นจากส่วนประกอบโมดูลาร์ที่มีน้ำหนักและสถาปัตยกรรมที่ตั้งไว้ล่วงหน้าล้ำสมัย คุณสามารถใช้ส่วนประกอบ KerasNLP กับการกำหนดค่าแบบสำเร็จรูปได้ หากคุณต้องการการควบคุมที่มากขึ้น คุณสามารถปรับแต่งส่วนประกอบได้อย่างง่ายดาย KerasNLP ให้การคำนวณแบบกราฟสำหรับเวิร์กโฟลว์ทั้งหมด คุณจึงคาดหวังการผลิตที่ง่ายดายโดยใช้ระบบนิเวศ TensorFlow

KerasNLP ประกอบด้วยการใช้งานแบบ end-to-end ของ สถาปัตยกรรมโมเดล ยอดนิยม เช่น BERT และ FNet เมื่อใช้โมเดล เลเยอร์ และโทเค็นของ KerasNLP คุณจะสามารถทำเวิร์กโฟลว์ NLP ที่ล้ำสมัยได้มากมาย รวมถึง การแปลด้วยคอมพิวเตอร์ การสร้างข้อความ การจัดประเภทข้อความ และ การฝึกอบรมโมเดลทรานสฟอร์เมอร์

KerasNLP เป็นส่วนขยายของ Keras API หลัก และโมดูล KerasNLP ระดับสูงทุกโมดูลจะเป็น Layer หรือ Model หากคุณคุ้นเคยกับ Keras แสดงว่าคุณเข้าใจ KerasNLP ส่วนใหญ่แล้ว

ข้อความ TensorFlow

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

เมื่อใช้ TensorFlow Text คุณสามารถทำสิ่งต่อไปนี้ได้:

  • ใช้โทเค็นไนเซอร์ที่มีคุณลักษณะหลากหลายซึ่งสามารถแบ่งสตริงบนช่องว่าง แยกคำและเครื่องหมายวรรคตอน และส่งคืนค่าชดเชยไบต์ด้วยโทเค็น เพื่อให้คุณทราบว่าจะพบสตริงในข้อความต้นฉบับได้จากที่ใด
  • ตรวจสอบว่าโทเค็นตรงกับรูปแบบสตริงที่ระบุหรือไม่ คุณสามารถตรวจสอบตัวพิมพ์ใหญ่ เครื่องหมายวรรคตอน ข้อมูลตัวเลข และคุณสมบัติโทเค็นอื่นๆ
  • รวมโทเค็นเป็น n-grams
  • ประมวลผลข้อความภายในกราฟ TensorFlow เพื่อให้โทเค็นในระหว่างการฝึกอบรมตรงกับโทเค็นที่อนุมาน

จะเริ่มต้นที่ไหน

แหล่งข้อมูลต่อไปนี้จะช่วยคุณในการเริ่มต้นใช้งานการประมวลผลข้อความ TensorFlow: