Βασίλης Πολυχρονόπουλος

30
Τεχνικές κατασκευής Τεχνικές κατασκευής δένδρων επιθεμάτων πολύ δένδρων επιθεμάτων πολύ μεγάλου μεγέθους και μεγάλου μεγέθους και χρήσης τους για γρήγορη χρήσης τους για γρήγορη αναζήτηση βιολογικών αναζήτηση βιολογικών δεδομένων δεδομένων Βασίλης Πολυχρονόπουλος

description

Τεχνικές κατασκευής δένδρων επιθεμάτων πολύ μεγάλου μεγέθους και χρήσης τους για γρήγορη αναζήτηση βιολογικών δεδομένων. Βασίλης Πολυχρονόπουλος. Βιολογικά Δεδομένα και Ακολουθίες. Το DNA περιέχει όλη τη γενετική πληροφορία ενός οργανισμού. - PowerPoint PPT Presentation

Transcript of Βασίλης Πολυχρονόπουλος

Τεχνικές κατασκευής δένδρων Τεχνικές κατασκευής δένδρων επιθεμάτων πολύ μεγάλου επιθεμάτων πολύ μεγάλου

μεγέθους και χρήσης τους για μεγέθους και χρήσης τους για γρήγορη αναζήτηση βιολογικών γρήγορη αναζήτηση βιολογικών

δεδομένωνδεδομένων

Βασίλης Πολυχρονόπουλος

Βιολογικά Δεδομένα και ΑκολουθίεςΒιολογικά Δεδομένα και Ακολουθίες

• Το DNADNA περιέχει όλη τη γενετική πληροφορία ενός οργανισμού.

• Οι πρωτεΐνεςπρωτεΐνες αποτελούν τα βασικά κατασκευαστικά μέρη των κυττάρων.

• Σε μόρια RNARNA αντιγράφεται η πληροφορία για την κατασκευή των πρωτεϊνών.

• Δυνατότητα αναπαράστασης αυτών των βιομορίων ως ακολουθίεςακολουθίες.

• Βιολογικά συμπεράσματα με τη χρήση αλγορίθμων αναζήτησης και επεξεργασίας ακολουθιακών δεδομένων.

Ευρετήρια για ταχύτερες αναζητήσειςΕυρετήρια για ταχύτερες αναζητήσεις

• Ανάγκη για πολλές, συχνές αναζητήσεις ακολουθιών.

• Επιτακτική η δημιουργία ευρετηρίωνευρετηρίων για ταχύτερη αναζήτηση προτύπων

• Δημοφιλέστερα ευρετήρια για ακολουθιακά δεδομένα:– Δένδρα επιθεμάτωνΔένδρα επιθεμάτων (suffix trees)– Πίνακες επιθεμάτωνΠίνακες επιθεμάτων (suffix arrays)

Ευρετήρια πολύ μεγάλου μεγέθουςΕυρετήρια πολύ μεγάλου μεγέθους

• Διαρκής αύξηση του όγκουαύξηση του όγκου των βιολογικών δεδομένων.

• Τα ευρετήρια δεν χωρούν στην μνήμηδεν χωρούν στην μνήμη (ακόμα και αν τα δεδομένα χωρούν).

• Μεγάλη Ι/Ο συμφόρησηΙ/Ο συμφόρηση και πτώση απόδοσης κατά την κατασκευή.

• Ερευνητικό ενδιαφέρον για το πρόβλημα ήδη από τις αρχές της δεκαετίας του ‘00

Αντικείμενο της διπλωματικήςΑντικείμενο της διπλωματικής

• Βιβλιογραφική μελέτηΒιβλιογραφική μελέτη των τεχνικών αποδοτικής κατασκευής για δένδρα επιθεμάτων που δεν χωρούν στην μνήμη.

• Υλοποίηση αλγορίθμων αποτίμησης Υλοποίηση αλγορίθμων αποτίμησης ερωτημάτωνερωτημάτων πάνω στα δένδρα που κατασκευάζονται με τον αλγόριθμο TRELLIS.

• ΠειράματαΠειράματα και σύγκριση αποτελεσμάτων με αυτά μεθόδων χωρίς ευρετήριο

Το δένδρο επιθεμάτωνΤο δένδρο επιθεμάτων

• Το δένδρο επιθεμάτων είναι ένα trie που περιέχει όλα τα επιθέματα της ακολουθίας

1

2

ba

n

a

a

$

$

$n

a

n

a

a

n

$

4

$

6

n

a

n

a

$

3

5

σύνδεσμος επιθέματος

αναζήτηση προτύπου με απλή διάσχιση από ρίζα

Βιβλιογραφική μελέτηΒιβλιογραφική μελέτη

Μέθοδος κατακερματισμού στην Μέθοδος κατακερματισμού στην βάση προθεμάτων βάση προθεμάτων [[ΗΑΙ01]ΗΑΙ01]

• Κατακερματισμός σε υποδένδρα με βάση προθέματα σταθερού σταθερού μήκουςμήκους.

• Αναζήτηση κατάλληλου μήκους ώστε όλα τα δένδρα να χωρούν στην μνήμη.

• ΜειονεκτήματαΜειονεκτήματα– Υποδένδρα με μεγάλες διαφορές

μεγέθους, σπατάλη πόρων.– Ανάγκη για bin-packing τεχνικές.– Εγκατάλειψη συνδέσμων επιθέματος.

DynaCluster [CYH05] DynaCluster [CYH05] και και TOP-Q[BH04]TOP-Q[BH04]

• DynaCluster– Δυναμική δημιουργία συστάδων με μεγάλη

τοπικότητα αναφοράς– Αποθήκευση στο δίσκο μια συστάδα κάθε φορά

• TOP-Q– Παραμονή στην μνήμη των κόμβων που εκτιμάται

ότι θα προσπελαστούν συχνότερα– Διατήρηση συνδέσμων επιθέματος

• Μείωση της σπατάλης πόρων, καλή απόδοση για ακολουθίες επιπέδου χρωμοσώματος

Αλγόριθμος Αλγόριθμος TDD [THP04]TDD [THP04]

• Κατακερματισμός στην βάση Κατακερματισμός στην βάση προθεμάτωνπροθεμάτων αντίστοιχα με αλγόριθμο Hunt.

• Χρήση του αλγορίθμου αλγορίθμου wotdeagerwotdeager για κατασκευή των υποδένδρων.

• Αλγόριθμος wotdeager:– Κατασκευή από πάνω προς τα κάτω για

μεγάλη τοπικότητα αναφοράς– Εξοικονόμηση χώρου

• ΒΒuffering uffering στρατηγικήστρατηγική για τις δομές δεδομένων του αλγορίθμου που εξασφαλίζει αποδοτική χρήση του cache

• Δυνατότητα αποδοτικής παραγωγής ευρετηρίου για το σύνολο του γονιδιώματος.

TRELLIS [PZ07]TRELLIS [PZ07]

Υλοποιήσεις & ΠειράματαΥλοποιήσεις & Πειράματα

Ενδεικτικές βελτιστοποιήσεις στο Ενδεικτικές βελτιστοποιήσεις στο σύστημασύστημα TRELLIS TRELLIS

• Χρήση δομής Χρήση δομής trietrie για την αποδοτική ανάκτηση των προθεμάτων

• Υλοποίηση Υλοποίηση LCA LCA προεπεξεργασίαςπροεπεξεργασίας υποδένδρων:– Ανάκτηση όλων των απαραίτητων πληροφοριών

για εφαρμογή του αλγορίθμου σταθερού χρόνου για το LCA

– Κατάλληλη δεικτοδότηση των επιθεμάτων για αναγωγή στην εύρεση του LCE

ΠειράματαΠειράματα

• Υλοποιήσεις σε C++.

• Πραγματικά βιολογικά δεδομένα από το ανθρώπινο γονιδίωμα (από βάση του NCBI)

• Πειράματα:– Ακριβής ταύτιση προτύπου.– Προσομοίωση στοίχισης.– Προσεγγιστική ταύτιση προτύπου.– Εύρεση προθεματικών ταυτίσεων.

Πειράματα για ακριβή ταύτισηΠειράματα για ακριβή ταύτιση

• Πειράματα:– Σταθερό μήκος query.– Σταθερό μήκος data.

• Μέθοδοι:– Διάσχιση δένδρου επιθεμάτων.– Knuth-Morris-Pratt– Boyer-Moore

Πειράματα για ακριβή ταύτιση (σταθερό Πειράματα για ακριβή ταύτιση (σταθερό μήκος μήκος query)query)

Πειράματα για ακριβή ταύτιση (σταθερό Πειράματα για ακριβή ταύτιση (σταθερό μήκος ακολουθίας εισόδουμήκος ακολουθίας εισόδου))

Πειράματα για προσομοίωση Πειράματα για προσομοίωση στοίχισηςστοίχισης

• Πειράματα:– Σταθερό μήκος query.– Σταθερό μήκος data.

• Μέθοδοι:– Χωρίς χρήση συνδέσμων επιθέματος.– Με χρήση συνδέσμων επιθέματος.

Πειράματα για προσομοίωση στοίχισης Πειράματα για προσομοίωση στοίχισης (σταθερό μήκος (σταθερό μήκος query)query)

Πειράματα για προσομοίωση στοίχισης (σταθερό Πειράματα για προσομοίωση στοίχισης (σταθερό μήκος ακολουθίας εισόδουμήκος ακολουθίας εισόδου))

Πειράματα για προσεγγιστική ταύτισηΠειράματα για προσεγγιστική ταύτιση

• Πειράματα:– query 40 bytes – πλήθος διαφορών k=3

• Μέθοδοι:– Υβριδικός δυναμικός προγραμματισμός

(δυναμικός προγραμματισμός + δένδρο επιθεμάτων).

– Δυναμικός προγραμματισμός με cut-off heuristic.

Πειράματα για προσεγγιστική ταύτισηΠειράματα για προσεγγιστική ταύτιση

Μήκος Μήκος ακολουθίας ακολουθίας

((Mbps)Mbps)

Ukkonen 85Ukkonen 85 ((sec)sec)

ΥβριδικόςΥβριδικός (sec)(sec)

1 0,3 38

2 0,6 48

5 1,5 103

10 3,0 198

Πειράματα για εύρεση προθεματικών Πειράματα για εύρεση προθεματικών ταυτίσεωνταυτίσεων

• Πειράματα:– κάτω φράγμα 8 σύμβολα

• Μέθοδοι:– Με χρήση δένδρου επιθεμάτων– Χωρίς δένδρο επιθεμάτων με τη brute-force

μέθοδο.

Πειράματα για εύρεση προθεματικών Πειράματα για εύρεση προθεματικών ταυτίσεωνταυτίσεων

Συμπεράσματα (1)Συμπεράσματα (1)

• Ακριβής ταύτιση προτύπου– Πλεονεκτημα της χρήσης ευρετηρίου στον δίσκο σε όλες

τις περιπτώσεις– Ικανοποιητική απόδοση του Boyer-Moore, συγκρίσιμη με

του ευρετηρίου, για μικρό query και μικρό dataset– Μεγάλο άνοιγμα της ψαλίδας υπέρ του ευρετηρίου όσο

το dataset μεγαλώνει• Προσομοίωση στοίχισης

– Αισθητή υπεροχή της χρήσης των συνδέσμων για μεγάλο μέγεθος query

Συμπεράσματα (2)Συμπεράσματα (2)

• Προσεγγιστική ταύτιση– Μεγάλη υπεροχή της αναζήτησης χωρίς την

χρήση ευρετηρίου κατευθείαν στην μνήμη– Δυσκινησία του αλγορίθμου υβριδικού

δυναμικού προγραμματισμού λόγω έλλειψης τοπικότητας αναφοράς και Ι/Ο συμφόρησης

• Καθολικό LCE– Δυνατότητα για πολύ γρήγορη ανάκτηση του LCE

με χρήση του αλγορίθμου σταθερού χρόνου πάνω στα προεπεξεργασμένα δένδρα

ΕπεκτάσειςΕπεκτάσεις

• Επέκταση του TRELLIS για άλλα αλφάβητα πέραν του DNA

• Συμπίεση των κόμβων των δένδρων για μείωση της μεγάλης σπατάλης χώρου που είναι ένα μειονέκτημα του TRELLIS (27 bytes/σύμβολο)

• Υλοποίηση στα δένδρα άλλων αλγορίθμων που χρησιμοποιούν τους συνδέσμους επιθέματος ή τα ερωτήματα LCE (εύρεση παλινδρόμων, δίδυμες επαναλήψεις κλπ)

• Αναζήτηση εναλλακτικών τρόπων σελιδοποίησης για μείωση της συμφόρησης κατά την εκτέλεση αλγορίθμων όπως του υβριδικού δυναμικού προγραμματισμού

ΒιβλιογραφίαΒιβλιογραφία

[BH04] Bedathur S., Haritsa J., Engineering a fast online persistent suffix tree construction, 20th International Conference on Data Engineering, 2004.

[CYL05] Cheung C., Yu J., Lu H., Constructing suffix tree for gigabyte sequences with megabyte memory, IEEE Transactions on Knowledge and Data Engineering, 17(1):90–105, 2005.

[HAI01] Hunt E., Atkinson Μ., Irving R., A database index to large biological sequences, 27th International Conference on Very Large Data Bases, 2001.

[PZ07] Phophakdee B., Zaki M., Genome-scale Disk-based Suffix Tree Indexing, ACM SIGMOD International Conference on Management of Data, 2007.

[THP04] Tata S., Hankins R., Patel J., Practical suffix tree construction, 30th International Conference on VLDB, 2004.

Τέλος..

Ερωτήσεις;

Υβριδικός δυναμικός προγραμματισμόςΥβριδικός δυναμικός προγραμματισμός

• Φραγμένο πλήθος διαφορών• Ο δυναμικός προγραμματισμός απαιτεί

Ο(nm) χώρο με χρήση ενός πίνακα n X m στοιχείων

• Ο υβριδικός απαιτεί μόνο Ο(n+m) χώρο αφού προσομειώνει τον υπολογισμό με χρήση μόνο των διαγωνίων

• Κάθε επέκταση γίνεται με υπολογισμό του LCE προτύπου και κειμένου σε διάφορες θέσεις

• Πολυπλοκότητα χρόνου του υβριδικού Ο(kn) όπου k το μέγιστο πλήθος των διαφορών, η πολυπλοκότητα του δυναμικού είναι πάντα Ο(mn) ανεξάρτητα από το μέγιστο πλήθος διαφορών που μας ενδιαφέρει