Tìm và đưa ra tất cả e-CCC-Bicluster cực đại.

Một phần của tài liệu Nghiên cứu các thuật toán biclustering cho trường hợp dữ liệu biểu hiện gien theo chuỗi thời gian (Trang 47 - 48)

- Output: l(k) (2 k≤ m) các chuỗi con và độ dài của nó.

3.2.3.Tìm và đưa ra tất cả e-CCC-Bicluster cực đại.

13. Đưa ra CCC-Bicluster tương ứng với nút v.

3.2.3.Tìm và đưa ra tất cả e-CCC-Bicluster cực đại.

Trong phần này chúng tôi trình bày thuật toán e-CCC-Biclustering và mô tả các bước chính của nó. Thuật toán e-CCC-Biclustering được trình bày để giải quyết 2 vấn đề chính đó là: xác định và đưa ra tất cả các e-CCC- Biclusters cực đại Bk = AIkJkIkJk có ít nhất qr hàng và qc cột. Thuật toán được đề xuất có thể dễ dàng xác định và đưa ra tất cả các e-CCC-Biclusters

Bk = AIkJk cực đại mà không cần hạn chế số đại diện, bằng cách có thể điều chỉnh các giá trị của qrqc dần đến một. Thuật toán gồm các bước sau đây:

Bước 1: Tính tất cả các mô hình hợp lệ tương ứng với e-CCC- Biclusters cực đại phải. Sử dụng ma trận chuẩn hóa A và các giới hạn giàng buộc đại diện qrqc với cây hậu tố tổng quát.

Bước 2: Xóa tất cả các mô hình hợp lệ không tương ứng với e-CCC- Biclusters cực đại trái, đã được xác định ở bước 1.

Bước 3: Xóa tất cả các mô hình hợp lệ nhưng có thể hiện cùng một e- CCC-Biclusters. Gồm tất cả các mô hình hợp lệ tương ứng với e-CCC- Biclusters cực đại (cả trái và phải) được tính trong bước 2. Lưu ý bước này chỉ cần thiết khi e > 0.

Thuật toán: e-CCC-Biclustering.

Input: A, , e, qr, qc.

Output: Các e-CCC-Biclusters cực đại.

1. {S1, ..., S|R|} ← alphabetTransformation (A, )2. modelsOcc← { } 2. modelsOcc← { } 3. computeRightMaximalBiclusters (, e, qr, qc, {S1, ..., S|R|}, modelsOcc) 4. deleteNonLeftMaximalBiclusters(modelsOcc) 5. if e > 0 then 6. deleteRepeatBiclusters(modelsOcc) 7. reportMaximalBiclusters(modelsOcc)

Trong bước thứ nhất của thuật toán chúng ta tính tất cả các mô hình hợp lệ m

với nút-sự kiện Occm tương ứng e-CCC-Biclusters cực đại phải. Chi tiết được thể hiện ở thủ tục computeRightMaximalBiclusters dưới đây:

Procedure computeRightMaximalBiclusters Input: A, , e, qr, qc, {S1, ..., S|R|}, modelsOcc

/* Giá trị của modelsOcc đã cập nhật */

1 Tright← constructGeneralizedSuffixTree ({S1, ..., S|R|})

2 addNumberOfLeaves(Tright) /* Thêm L(v) đến mỗi nút v trong Tright */

Một phần của tài liệu Nghiên cứu các thuật toán biclustering cho trường hợp dữ liệu biểu hiện gien theo chuỗi thời gian (Trang 47 - 48)