Tìm kiếm e-CCC-Bicluster với các Motif phổ biến.

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 42 - 47)

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

3.2.2Tìm kiếm e-CCC-Bicluster với các Motif phổ biến.

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

3.2.2Tìm kiếm e-CCC-Bicluster với các Motif phổ biến.

Có một mối quan hệ tương đồng của việc tìm kiếm tất cả các e-CCC- Biclusters cực đại với việc tìm kiếm các mẫu motif phổ biến trong một tập chuỗi (strings). Vấn đề tìm kiếm tất cả các e-CCC-Bicluster cực đại cho đến nay vẫn chưa có một thuật toán hiệu quả nào được đề xuất để giải quyết. Song đối với việc tìm kiếm các mẫu motif phổ biến đến nay có một số thuật toán hiệu quả dựa trên các kỹ thuật xử lý chuỗi đã được đề xuất [5], [14]. Như vậy việc tập trung nghiên cứu tìm các mẫu motif phổ biến sẽ hiệu quả, để từ đó xác định các e-CCC-Bicluster.

Vậy motif phổ biến có thể được xác định như sau: Cho một tập N chuỗi

Si (1 i N) và hai số nguyên e 02 q N, trong đó e là số lỗi cho phép và q là các yêu cầu đại diện, tìm tất cả các mô hình m mà xuất hiện trong đó ít nhất q trình tự khác biệt của chuỗi Si.

Trong thuật toán e-CCC-Biclustering, có sử dụng ý tưởng được đề xuất của thuật toán Speller[14], một thuật toán tìm kiếm các motifs phổ biến trong tập N chuỗi trình tự, bằng cách xây dựng một cây hậu tố T. Các motifs được tìm kiếm bằng Speller tương ứng với các “từ” trên bảng chữ cái ∑, trong đó e

những “từ” đại diện cho các motifs không thể hiện chính xác trong các chuỗi, thì một motif được xem như là một đối tượng "ngoài" và được gọi là mô hình (model). Một mô hình được coi là hợp lệ, thì mô hình đó (có chiều dài |m|) có số đại diện qui định bắt buộc: m phải thuộc vùng phạm vi của một từ w trong ít nhất q chuỗi riêng biệt.

Để giải quyết vấn đề motifs phổ biến, Speller xây dựng một cây hậu tố tổng quát T cho tập các chuỗi Si, sau khi thực hiện một số bước xử lý, sử dụng cây này để đánh vần (spell) các mô hình hợp lệ. Mô hình hợp lệ xác định hai thuộc tính [14]:

1. Tất cả các tiền tố của một mô hình hợp lệ cũng là mô hình hợp lệ. 2. Khi e = 0, đánh vần một mô hình dẫn đến nút v trong TL(v) q. Khi e > 0, đánh vần một mô hình dẫn đến một tập của các nút v1,. . . , vk trong

T với ∑kj= L vjq

1 ( )

L(v) là số lượng lá trong cây con có gốc tại vj.

Khi có một mô hình là các nút của cây hậu tố tổng quát T, các nút đó được gọi là nút-sự kiện [14]. Mục đích của chúng ta là xác định tất cả các mô hình hợp lệ bằng cách mở rộng chúng trong cây hậu tố tổng quát và đưa ra tập các nút-sự kiện.

Nút-sự kiện được xác định là một bộ ba (v, verr, p). Khi sử dụng cây hậu tố tổng quát, chúng ta cần phải biết tại mỗi bước của trong thuật toán đang ở một nút hoặc một cạnh giữa các nút v v’. Chúng ta sử dụng giá trị p để cung cấp thông tin và xác định nút-sự kiện theo định nghĩa sau.

Định nghĩa 3.11 Một nút-sự kiện của một mô hình m là bộ ba (v, verr, p),

trong đó v là một nút trong cây hậu tố tổng quát T và verr là sai số giữa m và chuỗi nhãn của v được tính Hamming(m, string-label(v)). Số nguyên p 0 xác định vị trí/điểm trong T sao cho:

2. Nếu p> 0: Ta có E(v) là cạnh giữa nút cha của v (fatherv) và nút v, p là điểm giữa hai ký tự trong label(E(v)) mà 1 p < |label(E(v))|.

Xét một mô hình m, ký tự α thuộc bảng chữ cái ∑, nút v trong T, nút cha của nó là fatherv, cạnh giữa nút fathervvE(v), có nhãn cạnh

label(E(v)), và chiều dài cạnh là |label(E(v))|. Thuật toán chúng tôi trình bày được đề xuất dựa trên các bổ đề sau:

Bổ đề 3.3. (v, verr, 0) là một nút-sự kiện của mô hình m’ = mα, nếu và chỉ nếu:

• (fatherv, v, 0) là một nút-sự kiện của mlabel(E(v)) =α.

Nhãn cạnh của E(v) chỉ có một ký tự và ký tự đó là α. hoặc

(v, verr, |label(E(v))| - 1) là một nút-sự kiện của m

label(E(v))[|label(E (v))|] =α. Ký tự cuối cùng trong label(E(v)) là α.

• (fatherv, verr - 1, 0) là một nút-sự kiện của mlabel(E(v)) = β ≠ α. Nhãn cạnh của E(v) chỉ có một ký tự và ký tự đó không là α.

hoặc

(v,verr - 1,|label(E(v))| - 1) là một nút-sự kiện của mlabel(E(v)) [| label (E (v)) |] = β≠α. Ký tự cuối cùng trong label(E(v)) không phải là α.

Bổ đề 3.4. (v, verr, 1) là một nút-sự kiện của mô hình m’ = mα, nếu và chỉ nếu:

• (fatherv, verr, 0) là một nút-sự kiện của mlabel(E(v))[1] = α.

• (fatherv, verr - 1, 0) là một nút-sự kiện của mlabel(E(v))[1]=β≠α.

Bổ đề 3.5. (v, verr, p), 2 p < |label(E(v)| là một nút-sự kiện của một mô hình

m’ = mα, nếu và chỉ nếu:

• (v, verr, p - 1) là một nút-sự kiện của mlabel(E(v))[p] = α. (adsbygoogle = window.adsbygoogle || []).push({});

• (v, verr - 1, p - 1) là một nút-sự kiện của mlabel(E (v))[p] = β≠α. Xét ma trận chuẩn hóa A thu được từ ma trận A’ bằng cách sử dụng bảng chữ cái ∑. Chúng ta xử lý ma trận A bằng cách sử dụng bước chuyển đổi

về một bảng chữ cái giống như đã được sử dụng trong CCC-Biclustering. Trong ma trận bảng chữ cái mới ∑’= ∑×{1,…, |C|}, mỗi phần tử ∑ thu được bằng cách nối một ký tự ∑ với một số trong khoảng {1,…, |C|} hình 3.3.

Sử dụng thuật toán Speller để đưa ra tất cả các e-CCC-Bicluster cực đại phải từ ma trận chuẩn hóa A bằng cách xây dựng một cây hậu tố tổng quát cho tập |R| chuỗi Si thu được từ mỗi hàng trong A và sử dụng nó để "đánh vần" các mô hình hợp lệ dùng các ký tự trong bảng chữ cái ∑.

Với tập |R| chuỗi Si, số lỗi cho phép e 0 và giới hạn đại diện 1 q | R |, mục tiêu là tìm tất cả các mô hình hợp lệ m cực đại, xác định các mẫu có thể hiện trong ít nhất q hàng riêng biệt, bắt đầu và kết thúc trong cùng nhóm cột. Theo cách thiết lập này, tập các nút-sự kiện của mỗi mô hình m và chính mô hình đó xác định một e-CCC-Bicluster với chiều dài tối đa |C|. Hơn nữa, nó có thể tìm thấy tất cả các e-CCC-Bicluster cực đại bằng cách điều chỉnh những giới hạn đại diện, dùng để xác định số hàng/gien cần thiết để xác định một mô hình là hợp lệ, với giá trị q = 1. Trong thực tế để tránh đơn điệu người ta sử dụng giá trị q 2. Theo mô phỏng của Speller thì không những chỉ có hàng giới hạn 1 qr |R|, mà còn thêm giới hạn cột 1 qc |C|.

Trong hình 3.7 cho thấy cây hậu tố tổng quát áp dụng cho ma trận biểu hiện sau khi chuyển đổi bảng chữ cái trong hình 3.3. Chúng ta có thể thấy năm 1-CCC-Biclusters cực đại B1, B2, B3, B4, B5, đã thể hiện trong hình 3.6 xác định bởi năm mô hình hợp lệ, khi e = 1 và các giá trị qr = qc = 3 là giới hạn hàng và cột tương ứng. Có thể quan sát trong hình này khi e > 0, một mô hình có thể không hợp lệ mà phải/trái cực đại và một số mô hình hợp lệ có thể xác định cùng một e-CCC-Bicluster. Ví dụ m = [D1 U2 D3] là hợp lệ nhưng nó không cực đại phải như m = [D3 U4 D5] cũng là hợp lệ nhưng nó không cực đại trái, hoặc m = [D1 U2 D3 U4] và m = [N1 U4 U2 D3] cả hai hợp lệ

(b)

Hình. 3.7. e-CCC-Biclusters (e> 0) và cây hậu tố tổng quát. (a) cây hậu tố tổng quát được sử dụng trong e-CCC-Biclustering khi e = 1 và thuật toán được áp dụng cho ma trận chuẩn hóa trong hình 3.3. Các vòng tròn dán nhãn với B1, B2, B3, B4, B5 xác định các nút-sự kiện của năm 1-CCC-Biclusters cực đại được phát hiện khi e = 1 và qr = qc = 3; (b) 1-CCC-Biclusters cực đại tương ứng với các mô hình hợp lệ m = [D1 U2 D3 U4] (ba nút- sự kiện nhãn nút B1); m = [D2 D3 U4] (ba nút-sự kiện nhãn nút B2), m = [D3 U4 N5] (bốn nút-sự kiện nhãn nút B3), m = [N2 D3 U4] (bốn nút-sự kiện nhãn nút B4) và m = [U2 D3 U4 D5] (ba nút-sự kiện nhãn nút B5).

Như vậy thuật toán e-CCC-Biclustering cần ba bước để xác định tất cả các e-CCC-Biclusters cực đại: thứ nhất xác định tất cả e-CCC-Biclusters cực đại phải; thứ hai loại bỏ tất cả e-CCC-Bicluster cực đại phải mà trái không cực đại; thứ ba loại bỏ e-CCC-Biclusters lặp lại được xác định bởi các motifs hợp lệ khác nhau nhưng lại cùng một e-CCC-Bicluster.

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 42 - 47)