Tạo tập dữ liệu huấn luyện và kiểm tra

Một phần của tài liệu Dự đoán liên kết trên sơ sở dữ liệu đồ thị (Trang 69 - 74)

5. Nội dung nghiên cứu

3.2.4. Tạo tập dữ liệu huấn luyện và kiểm tra

Như đã trình bày ở mục 2.3.2. chúng ta không thể chia ngẫu nhiên dữ liệu thành tập dữ liệu huấn luyện và tập dữ liệu kiểm tra, vì nếu bạn vô tình sử dụng dữ liệu khác với dữ liệu huấn luyện để tạo mô hình, thì có thể xảy ra rò rỉ dữ liệu. Điều này có thể dễ dàng xảy ra khi sử dụng đồ thị, vì cặp nút trong tập huấn luyện có thể được kết nối với các nút trong tập thử nghiệm.

Để giải quyết vấn đề này, chúng ta cần chia đồ thị của chúng ta thành đồ thị đào tạo và đồ thị kiểm tra. Đồ thị trích dẫn chứa thông tin thời gian mà

các bài báo được xuất bản, chúng ta lấy đó để tiến hành phân chia dữ liệu. Chúng ta có thể tạo đồ thị huấn luyện và đồ thị kiểm tra bằng cách tách dữ liệu của một năm cụ thể.

Hình 3.5: Truy vấn và biểu đồ kết quả số bài báo theo năm.

Nhìn vào biểu đồ ta thấy năm 2006 là năm tốt để phân chia dữ liệu, sau khi chúng ta sử dụng năm này để chia dữ liệu và tạo mô hình dự đoán của mình, chúng ta sẽ kiểm tra với các năm khác nhau để xem mô hình của mình có bị ảnh hưởng hay không.

Kiểm tra số bài báo được xuất bản trước và từ năm 2006 trở về sau, với kết quả có khoảng 60% số bài báo xuất bản trước và 40% từ 2006 trở về sau:

Hình 3.6: Truy vấn và kết quả số bài bảo xuất bản trước và từ năm 2006 về sau.

Tạo mối quan hệ đồng tác giả CO_AUTHOR_EARLY giữa các bài báo từ năm 2005 trở về trước và kết quả có 81.096 cặp nút có liên kết:

Hình 3.7: Truy vấn và kết quả mối quan hệ đồng tác giả giữa các bài báo trước năm 2006

Tạo mối quan hệ đồng tác giả CO_AUTHOR_LATE giữa các bài báo từ năm 2006 trở về sau và kết quả có 72.128 cặp nút có liên kết:

Hình 3.8: Truy vấn và kết quả mối quan hệ đồng tác giả giữa các bài báo từ năm 2006 về sau.

Xây dựng bộ dữ liệu huấn luyện:

Chúng ta sẽ xây dựng các mẫu tiêu cực của mình bằng cách tìm các cặp nút là sự kết hợp giữa hai và ba bước nhảy xa nhau, loại trừ những cặp đã có mối quan hệ. Sau đó, sẽ giảm bớt các cặp nút đó để có số lượng các mẫu tích cực và tiêu cực bằng nhau.

Bây giờ chúng ta có thể viết đoạn mã sau để tạo một DataFrame huấn luyện chứa các mẫu tích cực tích cực và tiêu cực dựa trên đồ thị

CO_AUTHOR_EARLY:

Hình 3.9: Truy vấn tạo DataFrame huấn luyện.

Tương tự như thế chúng ta tiến hành tạo một DataFrame kiểm tra.

Hình 3.10: Truy vấn tạo DataFrame kiểm tra.

3.2.5. Xây dựng mô hình học máy

Chúng ta sẽ tạo một bộ phân loại rừng ngẫu nhiên, phương pháp rừng ngẫu nhiên có thể đảm bảo rằng chúng tôi không tạo ra một mô hình làm thừa

dữ liệu đào tạo.

Chúng ta có thể tạo mô hình này với mã sau:

Hình 3.11: Tạo bộ phân loại rừng ngẫu nhiên

3.2.6. Xây dựng các tính năng dự đoán liên kết.

Tạo một mô hình để dự đoán liệu hai tác giả có hợp tác trong tương lai hay không dựa trên các đặc điểm được trích xuất từ các hàng xóm chung (CN), kết nối ưu tiên (PA) và tổng số lân cận (TN).

Hình 3.12: Truy vấn lấy các nút được ghép nối từ DataFrame và tính toán các kết quả cho từng cặp nút: (CN), (PA) và (TN)

Chúng ta có thể áp dụng hàm trên vào quá trình đào tạo của mình và kiểm tra DataFrame. Đối với DataFrame huấn luyện, các chỉ số này chỉ được tính toán dựa trên các quan hệ “CO_AUTHOR_EARLY”, trong khi đối với DataFrame kiểm tra, các phép tính sẽ được thực hiện trên toàn bộ quan hệ “CO_AUTHOR”.

Hình 3.13: Truy vấn và mẫu DataFrame huấn luyện

Tiếp theo ta tiến hành đào tạo mô hình bằng cách thực hiện việc truy vấn sau:

Hình 3.14: Truy vấn tạo mô hình huấn luyện

Một phần của tài liệu Dự đoán liên kết trên sơ sở dữ liệu đồ thị (Trang 69 - 74)

Tải bản đầy đủ (PDF)

(82 trang)