การใช้งานแชทบอทลำดับที่ 2 ด้วย TensorFlow
ดูคำแนะนำในการเริ่มต้นด้านล่าง หรือดูบันทึกการแชท
(ณ ขณะนี้ไฟล์แบตช์ใช้ได้เฉพาะกับ windows เท่านั้น สำหรับผู้ใช้ mac และ linux โปรดดูคำแนะนำด้านล่างสำหรับคอนโซล python)
สำหรับการแชทคอนโซล:
chat_console_best_weights_training.bat
หรือ chat_console_best_weights_validation.bat
สำหรับการแชททางเว็บ:
จากไดเร็กทอรีโมเดลให้รัน chat_web_best_weights_training.bat
หรือ chat_web_best_weights_validation.bat
เปิดเบราว์เซอร์ไปยัง URL ที่ระบุโดยคอนโซลเซิร์ฟเวอร์ ตามด้วย /chat_ui.html
โดยทั่วไปจะเป็น: http://localhost:8080/chat_ui.html
ตั้งค่าไดเร็กทอรีการทำงานของคอนโซลเป็นไดเร็กทอรี seq2seq-chatbot ไดเร็กทอรีนี้ควรมีไดเร็กทอรี โมเดล และ ชุดข้อมูล อยู่ภายในโดยตรง
เรียกใช้ chat.py ด้วยเส้นทางจุดตรวจสอบโมเดล:
run chat.py models d ataset_name m odel_name c heckpoint.ckpt
ตัวอย่างเช่น หากต้องการแชทกับกล่องโต้ตอบภาพยนตร์ Cornell ที่ผ่านการฝึกอบรม model trained_model_v2 :
ดาวน์โหลดและแตกไฟล์ trained_model_v2 ลงในโฟลเดอร์ seq2seq-chatbot/models/cornell_movie_dialog
ตั้งค่าไดเร็กทอรีการทำงานของคอนโซลเป็นไดเร็กทอรี seq2seq-chatbot
วิ่ง:
run chat.py models c ornell_movie_dialog t rained_model_v2 b est_weights_training.ckpt
ผลลัพธ์ควรมีลักษณะดังนี้:
วิธีฝึกโมเดลจากคอนโซล Python:
กำหนดค่าไฟล์ hparams.json ให้เป็นไฮเปอร์พารามิเตอร์การฝึกที่ต้องการ
ตั้งค่าไดเร็กทอรีการทำงานของคอนโซลเป็นไดเร็กทอรี seq2seq-chatbot ไดเร็กทอรีนี้ควรมีไดเร็กทอรี โมเดล และ ชุดข้อมูล อยู่ภายในโดยตรง
หากต้องการฝึกโมเดลใหม่ ให้รัน train.py ด้วยพาธชุดข้อมูล:
run train.py --datasetdir=datasets d ataset_name
หรือหากต้องการฝึกโมเดลที่มีอยู่ต่อ ให้รัน train.py ด้วยเส้นทางจุดตรวจสอบโมเดล:
run train.py --checkpointfile=models d ataset_name m odel_name c heckpoint.ckpt
ตัวอย่างเช่น หากต้องการฝึกโมเดลใหม่บนชุดข้อมูลกล่องโต้ตอบภาพยนตร์ Cornell ด้วยไฮเปอร์พารามิเตอร์เริ่มต้น:
ตั้งค่าไดเร็กทอรีการทำงานของคอนโซลเป็นไดเร็กทอรี seq2seq-chatbot
วิ่ง:
run train.py --datasetdir=datasets c ornell_movie_dialog
ผลลัพธ์ควรมีลักษณะดังนี้:
เอกสารจะมาเร็ว ๆ นี้...
TensorBoard เป็นเครื่องมือที่ยอดเยี่ยมสำหรับการแสดงภาพสิ่งที่เกิดขึ้นภายใต้ประทุนเมื่อมีการฝึกฝนโมเดล TensorFlow
หากต้องการเริ่ม TensorBoard จากเทอร์มินัล ให้ทำดังนี้
tensorboard --logdir=model_dir
โดยที่ model_dir เป็นพาธไปยังไดเร็กทอรีที่มีไฟล์จุดตรวจสอบโมเดลอยู่ ตัวอย่างเช่น หากต้องการดูโมเดลไดอะล็อกภาพยนตร์ Cornell ที่ผ่านการฝึกอบรม trained_model_v2 :
tensorboard --logdir=models c ornell_movie_dialog t rained_model_v2
เอกสารจะมาเร็ว ๆ นี้...
เอกสารจะมาเร็ว ๆ นี้...
TensorBoard สามารถฉายคำที่ฝังลงในพื้นที่ 3 มิติได้โดยใช้เทคนิคการลดขนาด เช่น PCA หรือ T-SNE และช่วยให้คุณสำรวจว่าแบบจำลองของคุณจัดกลุ่มคำต่างๆ ในคำศัพท์ของคุณอย่างไร โดยการดูเพื่อนบ้านที่ใกล้ที่สุดในพื้นที่ที่ฝังสำหรับคำใดๆ . ดูข้อมูลเพิ่มเติมเกี่ยวกับการฝังคำใน TensorFlow และโปรเจ็กเตอร์ TensorBoard ได้ที่นี่
เมื่อเรียกใช้ TensorBoard สำหรับไดเร็กทอรีโมเดลและเลือกแท็บ "โปรเจ็กเตอร์" ควรมีลักษณะดังนี้:
คำแนะนำจะมาเร็ว ๆ นี้...
แพ็คเกจ python ต่อไปนี้ใช้ใน seq2seq-chatbot: (ไม่รวมแพ็คเกจที่มาพร้อมกับ Anaconda)
TensorFlow *หมายเหตุ - ยังไม่รองรับ TF 2.x โปรดใช้ TF 1.x เวอร์ชันล่าสุด
pip install --upgrade tensorflow==1. *
สำหรับการรองรับ GPU: (ดูที่นี่สำหรับคำแนะนำในการติดตั้ง GPU แบบเต็ม รวมถึง CUDA และ cuDNN)
pip install --upgrade tensorflow-gpu==1. *
jsonpickle
pip install --upgrade jsonpickle
คลิก 6.7, flask 0.12.4 และ flask-restful (จำเป็นสำหรับการเรียกใช้เว็บอินเตอร์เฟส)
pip install click==6.7
pip install flask==0.12.4
pip install --upgrade flask-restful
ดูหน้าแผนงาน
การดำเนินการนี้ได้รับแรงบันดาลใจจาก:
ลำดับการเรียนรู้ตามลำดับด้วยโครงข่ายประสาทเทียม
รูปแบบการสนทนาทางประสาท
การแปลด้วยเครื่องประสาทโดยการเรียนรู้ร่วมกันเพื่อจัดตำแหน่งและแปล (กลไกความสนใจของ Bahdanau)
แนวทางที่มีประสิทธิภาพในการแปลเครื่องประสาทตามความสนใจ (กลไกความสนใจของ Luong)