cnn text classification pytorch
1.0.0
นี่คือการดำเนินการตามเครือข่ายประสาทของคิมสำหรับกระดาษจำแนกประโยคใน Pytorch
ฉันเพิ่งลองชุดข้อมูลสองชุด MR และ SST
| ชุดข้อมูล | ขนาดชั้นเรียน | ผลลัพธ์ที่ดีที่สุด | ผลกระดาษของคิม |
|---|---|---|---|
| นาย | 2 | 77.5%(CNN-rand-static) | 76.1%(CNN-rand-nostatic) |
| SST | 5 | 37.2%(CNN-rand-static) | 45.0%(CNN-rand-nostatic) |
ฉันไม่ได้ปรับพารามิเตอร์ไฮเปอร์สำหรับ SST อย่างจริงจัง
./main.py -h
หรือ
python3 main.py -h
คุณจะได้รับ:
CNN text classificer
optional arguments:
-h, --help show this help message and exit
-batch-size N batch size for training [default: 50]
-lr LR initial learning rate [default: 0.01]
-epochs N number of epochs for train [default: 10]
-dropout the probability for dropout [default: 0.5]
-max_norm MAX_NORM l2 constraint of parameters
-cpu disable the gpu
-device DEVICE device to use for iterate data
-embed-dim EMBED_DIM
-static fix the embedding
-kernel-sizes KERNEL_SIZES
Comma-separated kernel size to use for convolution
-kernel-num KERNEL_NUM
number of each kind of kernel
-class-num CLASS_NUM number of class
-shuffle shuffle the data every epoch
-num-workers NUM_WORKERS
how many subprocesses to use for data loading
[default: 0]
-log-interval LOG_INTERVAL
how many batches to wait before logging training
status
-test-interval TEST_INTERVAL
how many epochs to wait before testing
-save-interval SAVE_INTERVAL
how many epochs to wait before saving
-predict PREDICT predict the sentence given
-snapshot SNAPSHOT filename of model snapshot [default: None]
-save-dir SAVE_DIR where to save the checkpoint
./main.py
คุณจะได้รับ:
Batch[100] - loss: 0.655424 acc: 59.3750%
Evaluation - loss: 0.672396 acc: 57.6923%(615/1066)
หากคุณสร้างชุดทดสอบคุณทำการทดสอบเช่น:
/main.py -test -snapshot="./snapshot/2017-02-11_15-50-53/snapshot_steps1500.pt
ตัวเลือกสแน็ปช็อตหมายถึงการโหลดโมเดลของคุณ หากคุณไม่ได้กำหนดรุ่นจะเริ่มจากศูนย์
ตัวอย่างที่ 1
./main.py -predict="Hello my dear , I love you so much ."
-snapshot="./snapshot/2017-02-11_15-50-53/snapshot_steps1500.pt"
คุณจะได้รับ:
Loading model from [./snapshot/2017-02-11_15-50-53/snapshot_steps1500.pt]...
[Text] Hello my dear , I love you so much .
[Label] positive
ตัวอย่าง 2
./main.py -predict="You just make me so sad and I have to leave you ."
-snapshot="./snapshot/2017-02-11_15-50-53/snapshot_steps1500.pt"
คุณจะได้รับ:
Loading model from [./snapshot/2017-02-11_15-50-53/snapshot_steps1500.pt]...
[Text] You just make me so sad and I have to leave you .
[Label] negative
ข้อความของคุณจะต้องคั่นด้วยอวกาศแม้กระทั่งเครื่องหมายวรรคตอนและข้อความของคุณควรใช้ขนาดเคอร์เนลสูงสุดอีกต่อไป