You are on page 1of 7

Tài liệu sử dụng DAMESRL -Hoàng Văn Thức

HƯỚNG DẪN SỬ DỤNG DAMESRL

I) Tạo repository và commit thư mục DAMESRL trên GitHub


B1: Tạo repository trên GitHub: https://github.com/new và đặt tên DAMESRL
B2: Lấy đường link URL của repository (Eg: https://github.com/.../DAMESRL)
B3: Mở CMD ở bất kì thư mục nào muốn lưu trữ Repository dưới máy local và gõ
lệnh:
$git clone https://github.com/.../DAMESRL
B4: Copy toàn bộ các file và folder trong DAMESRL kèm theo ở đây vào thư mục
DAMESRL vừa được clone về
B5: Mở CMD và commit:
$git add -A
$git commit -m “frist commit”
$git push origin master
Kết quả:
Tài liệu sử dụng DAMESRL -Hoàng Văn Thức

II) Chạy DAMESRL trên Google Colab (Dùng DAMESRL_Colab vì đã sửa code
cho tất cả các file để chạy được trên Google colab)
Để huấn luyện trên tập ngữ liệu khác, cần phải thay đổi các file huấn luyện khác. Chỉ
thay đổi file train, test, dev
Phân chia dữ liệu:
Tập train : 80% mẫu
Tập dev: 10% mẫu
Tập test: 10% mẫu
Lưu ý:
- Tên phải là set1.train.txt, set2.test.txt ..., phải để kiểu UTF-8, Chon SAVE AS để
sửa.
- Không được xóa file out.wsj.test.txt
B1: Mở https://colab.research.google.com/
B2: Đăng nhập, chọn NewNote book
Chọn runtime->runtime type rồi đổi qua GPU (Không bắt buộc- Dùng cho trường hợp
chạy kèm GPU)
Tài liệu sử dụng DAMESRL -Hoàng Văn Thức

B3: Cài thư viện cần thiết. (Cài đúng phiên bản nếu không sẽ bị lỗi)
$ !pip install tensorflow==1.13.1
Click nút play bên cạnh (mọi câu lệnh đều bắt đầu từ dấu !)

B3: Clone code để chạy trên Google colab


$ !git clone https://github.com/.../DAMESRL
Tài liệu sử dụng DAMESRL -Hoàng Văn Thức

B4: Bấm vào hình folder để thấy DAMESRL sau khi clone về và bắt đầu cấu hình lại:
File srl_lstm.ini là file cấu hình để tạo ra mô hình: Chỉnh sửa dòng train và dev
(line 1 và 2) thành đường dẫn tên file huấn luyện đã được thêm vào.
File srl_lstm.infer là file cấu hình để đánh giá mô lấy điểm F và các thông số:
Chỉnh sửa dòng test thành đường dẫn và tên file huấn luyện đã được thêm vào.

B5: Để huấn luyện mô hình chạy dòng lệnh sau:


$ !sh /content/DAMESRL/scripts/run.sh /content/DAMESRL/config/srl_lstm.ini 0
B6: Để kiểm thử mô hình lấy thông số:
$ !sh /content/DAMESRL/scripts/run.sh /content/DAMESRL/config/srl_lstm.infer 0
Tài liệu sử dụng DAMESRL -Hoàng Văn Thức

III) Chạy DAMESRL trên máy local (Không recommend vì nhanh hỏng máy và
cài đặt phức tạp) (Dùng File DAMESRL_Local or damesrl_multi_task)
B1: Cài Ubuntu trên Windows: https://www.thewindowsclub.com/run-bash-on-
windows-10
B2: Cài anacoda và cài đặt trên
Ubuntu:https://gist.github.com/kauffmanes/5e74916617f9993bc3479f401dfec7da
Chỉ chạy bước 3, 4, 5, 6, 8,9
B3: Dẫn vào thư mục DAMESRL
(Eg: $ cd /mnt/c/Users/LENOVO/Downloads/DAMESRL
$cd /mnt/e/damesrl_multi_task)
Tham khảo:
https://stackoverflow.com/questions/42586120/copy-files-from-windows-to-the-
ubuntu-subsystem

B4: Tạo môi trường cho DAMESRL:


$conda create --name damesrlenv
$source activate damesrlenv (chỉ rảnh cho ubuntu)
$ conda install tensorflow=1.13.1
*Kiểm tra DS môi trường: conda env list
https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-
environments.html#creating-an-environment-with-commands
B5: Chạy
$chmod +x scripts/run.sh
$sh scripts/run.sh config/multi_task.ini -1
Lỗi có thể gặp:
Không chạy được sh:có thể sửa lại đường dẫn các file trong scripts
https://askubuntu.com/questions/153177/sh-script-wont-run
thử /mnt/ vào trong run.sh rồi chạy chmod +x run.sh đôi khi mới đc
Tài liệu sử dụng DAMESRL -Hoàng Văn Thức

https://stackoverflow.com/questions/38676437/chmod-changing-permissions-of-my-
script-sh-operation-not-permitted
IV) Chạy code DAMESRL trên IDL (Pycharm- không recommend) (Chỉ nên sử
dụng để học ML với những bài toán nhỏ): (Dùng File DAMESRL_Local or
damesrl_multi_task)
Yêu cầu : Tải Anaconda 3: https://www.anaconda.com/products/individual
Tải Pycharm: https://www.jetbrains.com/pycharm/
Để chạy code trên python cần cài đặt môi trường riêng biệt cho mỗi thư mục code;
B1: Mở Anaconda Navigator/ Environments/Create Tìm package phù hợp để cài đặt
B2: Mở Pycharm, Open folder code
B3: Apply môi trường : File /settings/Project/Project Interpreter/Bánh
răng/Add/Conda Environment/Existing Environment/Chọn Interpreter (có thể phải
chờ để cập nhật) -> Apply->OK
B3 alter: Mở terminal. Tạo môi trường bằng lệnh tương tự như mục III Bước 4: chỉ
khác dòng lệnh 2 là $conda activate nameofenv
B4: Chạy lệnh : python -m liir.dame.srl.DSRL config/srl_lstm.ini -1
V) Một số lỗi thường gặp
_Index out of range: Do cấu trúc file CoNLL2005 không đúng quy định, có thể thiếu
ngoặc, thừa dấu *, thừa dấu cách,….. (Có thể dùng count trong Notepad++ để so sánh
số lượng ngoặc mở và ngoặc đóng có bằng không)
Để check lỗi, có thể chia nửa file và chạy đến khi chạy được để lần vết tìm vị trí lỗi.
_Lỗi tensorflow: do không cài đúng phiên bản tensorflow (Một số lỗi phát sinh có thể
do không đúng phiên bản python dẫn đến thay đổi cú pháp và bị lỗi. Phải cài đúng
phiên bản package như tác giả hướng dẫn vì một số cập nhật hay lược bỏ của package
có thể khiến code bị lỗi)
_Lỗi NoneType: Lỗi này do cấu hình không đúng đường dẫn trong các file trong thư
mục config (.ini, infer), các file scripts (run.sh, srl/run_eval.sh….), file code (nếu
có) . Xem lại đường dẫn.
_TypeError: stat: path should be string, bytes, os.PathLike or integer, not NoneType:
Do đường dẫn, cần cấu hình lại đường dẫn.
Tài liệu sử dụng DAMESRL -Hoàng Văn Thức

_Lỗi No Module Name: có nghĩa là tìm không thấy module, cần sửa from…import
(google colab) hoặc chạy python -m ví dụ python -m liir.dame.srl.DSRL
config/multi_task.ini -1 (Có thể khác readme)
https://stackoverflow.com/questions/61532337/python-modulenotfounderror-no-
module-named
https://stackoverflow.com/questions/54598292/python-modulenotfounderror-when-
trying-to-import-module-from-imported-package/54613085
• Invoke src/main.py as a module with python -m src.main which will add the top-
level directory to the python path. Kind of annoying to type, plus you'll need to
change all your imports.
VI) Mở rộng với Jupyter
Dùng anacoda env trên Jupyter
Mở Anacoda Prompt rồi cd đến thư mục cần dùng jupyter
https://moonbooks.org/Articles/How-to-use-a-specific-python-conda-environment-in-
a-Jupyter-notebook-/

You might also like