Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης και εφαρμογή τους σε ταξινόμηση πρωτεϊνικών δεδομένων

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης και εφαρμογή τους σε ταξινόμηση πρωτεϊνικών δεδομένων"

Transcript

1 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΗΛΕΚΤΡΟΝΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης και εφαρμογή τους σε ταξινόμηση πρωτεϊνικών δεδομένων ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ του ΦΩΤΗ Ε. ΨΩΜΟΠΟΥΛΟΥ Α.Ε.Μ Επιβλέπων : Δρ. Περικλής Α. Μήτκας Αναπληρωτής Καθηγητής Α.Π.Θ Θεσσαλονίκη, Ιούλιος 2004

2 Περιεχόμενα Περιεχόμενα... 2 Εισαγωγή... 4 Κεφάλαιο 1. Περιγραφή του προβλήματος Εισαγωγή Η ανάγκη για κατηγοριοποίηση των πρωτεϊνών Πρόβλεψη Λειτουργικής Συμπεριφοράς Πρωτεϊνών Στόχοι της Διπλωματικής Απεικόνιση Δεδομένων Μοτίβα Μεθοδολογία Περιεχόμενα Κεφάλαιο 2. Η Μεθοδολογία Εξαγωγής Κανόνων Εισαγωγή Η Μεθοδολογία Συνοπτικά Πεπερασμένα Αυτόματα Δένδρο Αποδοχής Προθεμάτων (PTA) Τι είναι πρόθεμα Τι είναι το PTA PTA για πρωτεϊνικό σύνολο δεδομένων Αλγόριθμος Δημιουργίας PTA Δημιουργία Στοχαστικού Αιτιοκρατικού Πεπερασμένου Αυτόματου Αλγόριθμος ALERGIA Προετοιμασία του PTA για εφαρμογή του ALERGIA Ισοδύναμες Καταστάσεις Συμβατές Καταστάσεις (Equivalent States Compatible States) Ο Αλγόριθμος ALERGIA Πολυπλοκότητα Αλγορίθμου ALERGIA Υπολογισμός πιθανοτήτων εμφάνισης συμβόλων από FSA Υπολογισμός πιθανότητας εμφάνισης διατεταγμένου συνόλου συμβόλων Υπολογισμός πιθανότητας εμφάνισης μη διατεταγμένου συνόλου συμβόλων Πολυπλοκότητα Εξαγωγή Κανόνων Κατηγοριοποίησης Κανόνες Κατηγοριοποίησης Κανόνες Συσχέτισης (Classification Rules Association Rules) Εφαρμογή σε πρωτεϊνικά δεδομένα... 33

3 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης Υπολογισμός γνωρισμάτων κανόνων από FSA Αλγόριθμος Εξαγωγής Κανόνων Ένα παράδειγμα Κεφάλαιο 3. Υλοποίηση Αρχιτεκτονική του Συστήματος Περιγραφή της Βάσης Δεδομένων Σύνδεση με τον SQL Server 2000 μέσω JDBC Αρχιτεκτονική τριών επιπέδων Αρχιτεκτονική του Εργαλεία που χρησιμοποιήθηκαν SQL Server JBoss JBuilder X Κεφάλαιο 4. Αποτελέσματα Πειράματα Προσδιορισμός της παραμέτρου confidence στον αλγόριθμο ALERGIA Πειραματικά αποτελέσματα κατηγοριοποίησης Έλεγχος σε σταθερό πλήθος οικογενειών και μεταβλητά ποσοστά δεδομένων εκπαίδευσης και ελέγχου Έλεγχος σε μεταβλητό πλήθος οικογενειών και σταθερό ποσοστό δεδομένων εκπαίδευσης και ελέγχου Έλεγχος σε όλες τις οικογένειες πρωτεϊνών Χρονική διάρκεια αλγορίθμου Κεφάλαιο 5. Συμπεράσματα και Μελλοντικές Προεκτάσεις Συμπεράσματα Μελλοντικές Επεκτάσεις Βελτιώσεις Βιβλιογραφία Παραρτήματα Παράρτημα Α: Οδηγός Χρήσης του Εικόνες Διεπαφών Παράρτημα Β: Διαγράμματα εσωτερικής δομής και λειτουργίας του συστήματος Παράρτημα Γ: Οδηγίες Εγκατάστασης του Παράρτημα Δ: Επιπλέον Πειράματα Παράρτημα Ε: Στατιστικά στοιχεία της Βάσης Δεδομένων GenBase (release 11/05/2004 Prosite)

4 Εισαγωγή Οι υπολογιστές και ο παγκόσμιος ιστός αλλάζουν δραματικά τον τρόπο της έρευνας στη βιολογία. Θεωρητική και υπολογιστική βιολογία συνυπάρχουν για δεκαετίες στα όρια της επιστήμης της βιολογίας. Αλλά μέσα σε λίγα μόνο χρόνια, τα νέα βιολογικά δεδομένα που προέκυψαν από την προσπάθεια καταγραφής του ανθρώπινου γονιδιώματος, κατέστησαν αναγκαία τη χρήση των υπολογιστών σε κάθε πλευρά της βιολογίας. Έρευνα η οποία κάποτε γινόταν μέσα σε εργαστήριο τώρα γίνεται σε υπολογιστή, καθώς επιστήμονες ερευνούν τις βάσεις δεδομένων για πληροφορίες που μπορεί να οδηγήσουν σε νέες υποθέσεις. Μέσα στις τελευταίες δύο δεκαετίες, τόσο οι προσωπικοί υπολογιστές όσο και οι υπερυπολογιστές, έχουν γίνει προσβάσιμοι από τους επιστήμονες κάθε κλάδου. Οι προσωπικοί υπολογιστές έχουν εξελιχθεί από ακριβές μηχανές με πολύ μικρή υπολογιστική ισχύ, σε μηχανές που είναι τόσο ισχυρές όσο οι υπερυπολογιστές της προηγούμενης δεκαετίας. Ακριβώς όπως αντικατέστησαν την γραφομηχανή του συγγραφέα και τον άβακα του λογιστή, οι υπολογιστές έχουν αναλάβει τη θέση ελέγχου και συλλογής πληροφοριών από εργαστηριακό εξοπλισμό. Η ισχύς των βάσεων δεδομένων επιτρέπει την πολύ ευκολότερη πρόσβαση σε δεδομένα, καθώς και την αποθήκευση, ανάλυση και οπτικοποίησή τους. Πέρα από αυτά όμως, οι υπολογιστές είναι ισχυρές μηχανές που επιτρέπουν την κατανόηση οποιουδήποτε συστήματος μπορεί να περιγραφεί με μαθηματικά μοντέλα, δίνοντας το έναυσμα κλάδων επιστημών, όπως η υπολογιστική πληροφορική, και τελευταία η βιοπληροφορική. Από την άλλη πλευρά όμως, οι υπολογιστές θα ήταν άχρηστοι χωρίς την ύπαρξη προγραμμάτων και αλγορίθμων να χρησιμοποιούν την τεράστια ισχύ των υπολογιστών στα εκάστοτε προβλήματα. Στα πλαίσια αυτής της εργασίας, αναπτύχθηκαν τόσο μία μεθοδολογία όσο και μία εφαρμογή που την υλοποιεί. Ευχαριστώ θερμά τον αναπληρωτή καθηγητή κ. Περικλή A. Μήτκα για την υπόδειξη του θέματος αυτής της εργασίας και για την επιστημονική εποπτεία κατά την εκπόνησή της, καθώς επίσης και τον υποψήφιο διδάκτορα κ. Σωτήρη Διπλάρη για την άρτια καθοδήγηση και επίβλεψη. Ευχαριστώ ακόμη για τη συμβολή τους σε θέματα προγραμματισμού τους υποψήφιους διδάκτορες κ. Ανδρέα Συμεωνίδη, κ. Διονύση Κεχαγιά και κ. Ιωάννη Αθανασιάδη.

5 Κεφάλαιο 1. Περιγραφή του προβλήματος 1.1. Εισαγωγή Με τον όρο βιοπληροφορική (bioinformatics) περιγράφεται η επιστήμη της έρευνας, ανάπτυξης και εφαρμογής υπολογιστικών εργαλείων και μεθόδων με στόχο την διεύρυνση της χρήσης βιολογικών και ιατρικών δεδομένων, καθώς και μεθόδων για την καταγραφή, αποθήκευση, οργάνωση, ανάλυση και παρουσίαση τέτοιων δεδομένων. Η υπολογιστική βιολογία (computational biology) ορίζεται ως η επιστήμη της έρευνας και εφαρμογής αριθμητικών ή θεωρητικών μεθόδων, μαθηματικών μοντέλων και τεχνικών προσομοίωσης για τη μελέτη βιολογικών και κοινωνικών συστημάτων. Η βιοπληροφορική και η υπολογιστική βιολογία έχουν τις ρίζες τους τόσο στις επιστήμες υπολογιστών και πληροφορικής, όσο και στις φυσικές επιστήμες. Και οι δύο περιλαμβάνουν στοιχεία από επιστημονικούς τομείς, όπως τα μαθηματικά, τη φυσική και τη βιολογία. Ταυτόχρονα όμως, και οι δύο διατηρούν μια στενή σχέση με τις φυσικές επιστήμες, και τις τεράστιες δυνατότητες που αυτές προσφέρουν. Η βιοπληροφορική εφαρμόζει υπολογιστικές μεθόδους έτσι ώστε να κάνει πιο χρήσιμη και κατανοητή την τεράστια ποσότητα των πολύπλοκων δεδομένων. Από την άλλη πλευρά, η υπολογιστική βιολογία χρησιμοποιεί μαθηματικές και αριθμητικές μεθόδους για να απαντήσει σε θεωρητικά ή πειραματικά ερωτήματα της βιολογίας. Παρόλο που βιοπληροφορική και υπολογιστική βιολογία είναι δύο διαφορετικές επιστήμες, υπάρχουν πολλά κοινά σημεία.

6 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 6 Είναι πλέον γνωστό ότι οι σύγχρονες εξελίξεις στη βιοπληροφορική και στη μοριακή βιολογία έχουν δημιουργήσει ένα τεράστιο όγκο δεδομένων. Μόνο ο ανθρώπινος γενετικός κώδικας περιλαμβάνει 3 δισεκατομμύρια νουκλεοτίδια, υπάρχουν ήδη πάνω από 100 βακτηριδιακά γονίδια αποκωδικοποιημένα εξ ολοκλήρου, ενώ κάθε εβδομάδα προσδιορίζονται πάνω από 20 εκατομμύρια νουκλεοτίδια [GJ 01]. Η ανάλυση όλων αυτών των δεδομένων απαιτεί τη χρήση υπολογιστικών συστημάτων, καθώς και τη δημιουργία αξιόπιστων τεχνικών μοντελοποίησης. Αναμφισβήτητα, το μεγαλύτερο, ως τώρα, επίτευγμα της βιοπληροφορικής είναι η αποκωδικοποίηση του DNA. Ο γενετικός κώδικας προσδιορίζει επακριβώς τον τρόπο με τον οποίο θα δημιουργηθούν οι απαραίτητες για τη λειτουργία του κυττάρου πρωτεΐνες. Παρόλα αυτά, η γνώση της κατασκευής των πρωτεϊνών δεν προσφέρει πληροφορίες για τον τρόπο με τον οποίο αυτή θα χρησιμοποιηθεί. Όλες οι κυτταρικές λειτουργίες επιτελούνται με τη βοήθεια πρωτεϊνών, και όχι DNA ή RNA. Πολλές από τις μετατροπές που υφίστανται οι πρωτεΐνες δεν είναι εμφανείς από το γενετικό κώδικα, ενώ ο ίδιος ο γενετικός κώδικας δεν προσδιορίζει πώς, πού και ποιες πρωτεΐνες θα αντιδράσουν. Για την ακρίβεια δεν προσδιορίζει ούτε εάν μια συγκεκριμένη πρωτεΐνη θα δημιουργηθεί κάποτε! Για όλους αυτούς τους λόγους, ένας από τους μεγαλύτερους τομείς της βιοπληροφορικής είναι η ακριβής και αξιόπιστη μοντελοποίηση της συμπεριφοράς και της λειτουργίας των πρωτεϊνών Η ανάγκη για κατηγοριοποίηση των πρωτεϊνών Ενώ χρειάστηκαν χιλιάδες χρόνια για να διαπιστωθεί ότι όλα τα έμβια όντα ζώα και φυτά αποτελούνται από παρόμοια κύτταρα, μέσα σε λίγες δεκαετίες ανακαλύφθηκε ότι το κύτταρο λειτουργεί σαν ένα ανεξάρτητο χημικό εργοστάσιο, που εκπέμπει και λαμβάνει κωδικοποιημένα μηνύματα, τα οποία συντονίζουν τη δραστηριότητα και διευθύνουν την ανάπτυξη του σώματος. Αυτό το πολύ πυκνό και πολύπλοκο δίκτυο χημικών διαδικασιών παρέμεινε μυστηριώδες μέχρι τα μέσα του 20ου αιώνα. Σήμερα μαθαίνουμε ότι τα μηνύματα αυτά είναι εξαιρετικά ακριβή, αρχίζουμε να αντιλαμβανόμαστε το αλφάβητο της γλώσσας των κυττάρων, ενώ διαπιστώνουμε ότι πρέπει να εμβαθύνουμε και στο συντακτικό της.

7 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 7 Κάθε κύτταρο είναι προικισμένο με τη δυνατότητα να ανιχνεύει τα σήματα του περιβάλλοντός του. Τα σήματα αυτά μεταδίδονται κυρίως με τη μορφή χημικών μορίων, τα οποία το κύτταρο έχει μάθει να αναγνωρίζει. Στη συνέχεια αποκωδικοποιούνται, δηλαδή οργανώνονται σε μηνύματα, στα οποία το κύτταρο μπορεί να δώσει μία απόκριση που αντλεί από το γενετικό του ρεπερτόριο: για παράδειγμα, σύσπαση, στην περίπτωση ενός μυϊκού κυττάρου, ή έκκριση μίας ορμόνης, στην περίπτωση ενός αδενικού κυττάρου. Με την έννοια αυτή μπορούμε να μιλάμε για «γλώσσα των κυττάρων». Τα σήματα, στα οποία αναφερόμαστε, είναι σχετικά απλά χημικά μόρια, που προέρχονται από τα στοιχειώδη συστατικά της ζώσας ύλης, δηλαδή τα αμινοξέα, που είναι ενώσεις άνθρακα, οξυγόνου, υδρογόνου και αζώτου, και έχουν μοριακό βάρος γύρω στα 100 daltons (100 φορές το 1/12 της μάζας του άνθρακα 12, ή 100 φορές τη μάζα του υδρογόνου). Τα απλούστερα σήματα είναι αυτά καθ εαυτά ανάλογα αμινοξέων (όπως για παράδειγμα του γλουταμινικού ή του ασπαρτικού οξέος). Σε ορισμένες περιπτώσεις, αυτά τα αμινοξέα είναι ελαφρώς τροποποιημένα, δηλαδή πρόκειται για πολύ γνωστούς διαβιβαστές, όπως η αδρεναλίνη, η ντοπαμίνη ή η ισταμίνη. Αλλά τα πιο συνήθη σήματα είναι οι πρωτεΐνες, οι οποίες αποτελούνται από πολύπλοκες συναρμολογήσεις αμινοξέων, που διατάσσονται σε διάφορες αλληλουχίες. Στο Σχήμα 1.1 παρουσιάζεται η ακολουθία των 499 αμινοξέων που αποτελούν την αλυσίδα της πρωτεΐνης με τον κωδικό P Στην αλυσίδα το κάθε αμινοξύ παρουσιάζεται με ένα γράμμα του λατινικού αλφαβήτου, σύμφωνα με την παγκόσμια τυποποίηση. Ανάλογα με τις λειτουργίες που επιτελούν, οι πρωτεΐνες χωρίζονται σε οικογένειες. Όλες οι πρωτεΐνες που ανήκουν σε μία οικογένεια παρουσιάζουν κάποια συγγένεια στη δομή, και για αυτό παρουσιάζουν και παρόμοιες ιδιότητες. Μέχρι τώρα, η βιολογική δράση των πρωτεϊνών μπορούσε να γίνει γνωστή μόνο μέσω χρονοβόρων και πολυέξοδων πειραμάτων. Η βιοπληροφορική αναλαμβάνει να επιλύσει αυτό το πρόβλημα με διάφορες μεθόδους.

8 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης GARASVLSGG ELDRWEKIRL RPGGKKKYKL KHIVWASREL ERFAVNPGLL ETSEGCRQIL GQLQPSLQTG SEELRSLYNT VATLYCVHQR IEIKDTKEAL DKIEEEQNKS KKKAQQAAAD TGHSNQVSQN YPIVQNIQGQ MVHQAISPRT LNAWVKVVEE KAFSPEVIPM FSALSEGATP QDLNTMLNTV GGHQAAMQML KETINEEAAE WDRVHPVHAG PIAPGQMREP RGSDIAGTTS TLQEQIGWMT NNPPIPVGEI YKRWIILGLN KIVRMYSPTS ILDIRQGPKE PFRDYVDRFY KTLRAEQASQ EVKNWMTETL LVQNANPDCK TILKALGPAA TLEEMMTACQ GVGGPGHKAR VLAEAMSQVT NSATIMMQRG NFRNQRKIVK CFNCGKEGHT ARNCRAPRKK GCWKCGKEGH QMKDCTERQA NFLGKIWPSY KGRPGNFLQS RPEPTAPPEE SFRSGVETTT PPQKQEPIDK 490 ELYPLTSLRS LFGNDPSSQ Σχήμα 1.1: Αλυσίδα της πρωτεΐνης P04591 (Gag polyprotein GAG_HV1H2) 1.3. Πρόβλεψη Λειτουργικής Συμπεριφοράς Πρωτεϊνών Σήμερα ένα από τα πιο μεγάλα προβλήματα της λειτουργικής γενετικής είναι η πρόβλεψη της λειτουργικής συμπεριφοράς των πρωτεϊνών, που είναι και ο σκοπός της παρούσας διπλωματικής εργασίας. Η πρόβλεψη είναι δυνατή χάρη στην ύπαρξη μοτίβων μέσα στην πρωτεϊνική αλυσίδα. Τα μοτίβα είναι μικρές αλυσίδες αμινοξέων που παρουσιάζουν συγκεκριμένη διάταξη. Σε αυτά κυρίως οφείλεται η συμπεριφορά μιας πρωτεΐνης, και χρησιμοποιούνται ευρέως για την πρόβλεψη της λειτουργίας της. Η συσχέτιση μεταξύ ιδιοτήτων και μοτίβων δεν είναι πάντα προφανής, καθώς σε μία πρωτεϊνική αλυσίδα είναι δυνατόν να υπάρχουν περισσότερα του ενός μοτίβα. Οι

9 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 9 τελικές ιδιότητες που θα παρουσιάσει μία πρωτεΐνη είναι συνάρτηση πολλών μοτίβων, όπου κάποια υπερισχύουν κάποιων άλλων. Διαπιστώνεται λοιπόν η ανάγκη να δημιουργηθούν εξειδικευμένα εργαλεία για την εύρεση των κανόνων που διέπουν αυτές τις συσχετίσεις, με απώτερο στόχο την πρόβλεψη της συμπεριφοράς κάποιας πρωτεΐνης. Ένα πρώτο βήμα προς αυτό το στόχο έχει ήδη γίνει με την αναλυτική καταγραφή τέτοιων μοτίβων σε βάσεις δεδομένων. Μερικές από τις πιο γνωστές είναι οι εξής: α) Η Prosite [URL1] είναι μία βάση δεδομένων η οποία περιέχει πρωτεϊνικές οικογένειες και ομάδες, δηλαδή βιολογικώς σημαντικά μοτίβα, πρότυπα και χαρακτηριστικά, τα οποία επιτρέπουν την αξιόπιστη κατάταξη μίας νέας πρωτεϊνικής αλυσίδας σε μία οικογένεια. Γενικά, πρωτεΐνες οι οποίες ανήκουν στην ίδια οικογένεια έχουν κοινά λειτουργικά χαρακτηριστικά και προέρχονται από διαφορετικές μεταλλάξεις κάποιας κοινής πρωτεΐνης. Αυτή τη στιγμή (2004) η Prosite περιέχει πάνω από 1000 διαφορετικές οικογένειες. β) Η Pfam [URL2] είναι μία συλλογή πρωτεϊνικών οικογενειών. Περιέχει πολλαπλές ακολουθίες ευθυγραμμίσεων πρωτεϊνών (Multiple Sequence Alignments), καθώς και κρυφά μοντέλα Markov (Hidden Markov Models) των οικογενειών. γ) Η Prints [URL3] είναι μία βάση δεδομένων πρωτεϊνικών αποτυπωμάτων. Τα αποτυπώματα (fingerprints) είναι ένα σύνολο μοτίβων τα οποία χρησιμοποιούνται για να χαρακτηρίσουν μία πρωτεϊνική οικογένεια Στόχοι της Διπλωματικής Το βασικό πρόβλημα, το οποίο επιχειρεί να επιλύσει η παρούσα διπλωματική, είναι το ακόλουθο: με δεδομένο ένα σύνολο πρωτεϊνών με γνωστές, προσδιορισμένες πειραματικά, ιδιότητες και με γνωστά τα μοτίβα που περιέχονται στην κάθε αλυσίδα, να προσδιοριστούν κανόνες που συσχετίζουν μοτίβα με ιδιότητες. Με τον τρόπο αυτό θα είναι δυνατός ο προσδιορισμός των ιδιοτήτων άγνωστων πρωτεϊνικών αλυσίδων. Συγκεκριμένα για κάθε πρωτεΐνη είναι γνωστή η οικογένεια στην οποία αυτή ανήκει, καθώς και τα μοτίβα που αυτή περιέχει. Μία οικογένεια πρωτεϊνών, όπως έχει ήδη αναφερθεί, περιέχει «συγγενείς» πρωτεΐνες, δηλαδή πρωτεΐνες με ίδιες ή παρόμοιες

10 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 10 ιδιότητες. Έτσι, έχοντας ως δεδομένη την οικογένεια στην οποία ανήκει μία πρωτεΐνη, γνωρίζουμε και τις βασικές ιδιότητές της. Επομένως, το πρόβλημα ανάγεται στη συσχέτιση μοτίβων που περιέχονται σε μία πρωτεϊνική αλυσίδα, με οικογένειες «συγγενών» πρωτεϊνών. Η προσέγγιση του προβλήματος γίνεται με την κλασική μέθοδο αντιμετώπισης προβλημάτων εξόρυξης δεδομένων. Δημιουργείται ένα σύνολο δεδομένων εκπαίδευσης (training data set), το οποίο χρησιμοποιείται ως είσοδος στον αλγόριθμο. Σαν έξοδο παίρνουμε κάποιους κανόνες ταξινόμησης, οι οποίοι με τη σειρά τους ελέγχονται για την ορθότητά τους από ένα άλλο σύνολο δεδομένων ελέγχου (test data set). Τόσο για τις πρωτεΐνες που ανήκουν στο σύνολο δεδομένων εκπαίδευσης, όσο και για αυτές που ανήκουν στο σύνολο δεδομένων ελέγχου, γνωρίζουμε την «οικογένεια» στην οποία ανήκουν, καθώς και τα μοτίβα που περιέχουν. Για τον έλεγχο των κανόνων, τα αποτελέσματα που προκύπτουν συγκρίνονται με τις πραγματικές τιμές Απεικόνιση Δεδομένων Μοτίβα Απαραίτητη προϋπόθεση για την διαδικασία συσχέτισης μοτίβων οικογενειών είναι η σωστή απεικόνιση της πρωτεϊνικής αλυσίδας. Οι περισσότεροι αλγόριθμοι αντιμετωπίζουν το κάθε στοιχείο ως ταξινομημένο τμήμα ενός συγκεκριμένου συνόλου γνωρισμάτων. Στη δική μας περίπτωση οι πρωτεϊνικές αλυσίδες απεικονίζονται με τη χρήση ενός κατάλληλου λεξικού ακολουθιών μοτίβων, με τον εξής απλό τρόπο: Έστω ότι το λεξικό περιλαμβάνει Ν μοτίβα. Κάθε πρωτεϊνική αλυσίδα περιλαμβάνει ένα περιορισμένο αριθμό αυτών. Έτσι, μπορεί εύκολα να αντιστοιχιστεί μία πρωτεΐνη με μία αλληλουχία μοτίβων. Το σύνολο εκπαίδευσης επομένως δεν είναι τίποτα άλλο από μία συλλογή ακολουθιών μοτίβων. Στο εξής, κάθε αναφορά σε «πρωτεϊνική αλυσίδα» θα εκφράζει ακριβώς αυτή την ακολουθία μοτίβων που αντιστοιχεί στην εκάστοτε πρωτεΐνη. Τα ίδια τα μοτίβα χωρίζονται σε δύο μεγάλες κατηγορίες: τα μοτίβα (profiles) και τα πρότυπα (patterns). Η πιο απλή κατηγορία είναι τα πρότυπα. Ένα, παράδειγμα προτύπου είναι το εξής: [IV] G x G T [LIVMF] x(2) [GS]

11 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 11 που διαβάζεται: στην πρώτη θέση πρέπει να βρίσκεται μία ισολευκίνη (I) ή μία βαλίνη (V), στη δεύτερη θέση πρέπει να βρίσκεται μόνο μία γλυκίνη (G), κοκ. Το x σημαίνει ότι εκεί μπορεί να εμφανιστεί οποιοδήποτε αμινοξύ, ενώ το x(2) σημαίνει ότι δύο θέσεις μπορεί να περιέχουν οποιοδήποτε αμινοξύ, με τον αριθμό να υποδηλώνει ακριβώς το μήκος των μη προσδιορισμένων αμινοξέων. Το μοτίβο είναι αριθμητική αναπαράσταση μιας πολλαπλής ακολουθίας ευθυγραμμίσεων (Multiple Sequence Alignments). Στην πραγματικότητα ένα μοτίβο μοιάζει με ένα πίνακα. Η διαφορά με το πρότυπο είναι ότι ένα μοτίβο επιστρέφει ένα βαθμό ομοιότητας σε μία πιθανή αντιστοίχιση, σε αντίθεση με το πρότυπο το οποίο επιστρέφει ένα δυαδικό TRUE ή FALSE. Η λειτουργία των μοτίβων είναι να ευθυγραμμίζονται με μία πραγματική ακολουθία αμινοξέων, και να επιστρέφουν έναν αριθμό ο οποίος ονομάζεται βαθμός ομοιότητας ή βαθμός ευθυγράμμισης. Η περιγραφή του υπολογισμού των μοτίβων είναι πολύπλοκη και εκτός του στόχου της εργασίας αυτής, για αυτό στο εξής με τον όρο μοτίβα θα εννοούμε είτε μοτίβα είτε πρότυπα Μεθοδολογία Μέχρι αυτή τη στιγμή έχει αναπτυχθεί μία πληθώρα αλγορίθμων για την εξόρυξη δεδομένων στα πλαίσια της αναγνώρισης άγνωστων πρωτεϊνών με τη βοήθεια μοτίβων. Τέτοιοι αλγόριθμοι υπάρχουν τόσο στη βιβλιογραφία της τεχνητής νοημοσύνης, όσο και της αναγνώρισης προτύπων. Κάποιοι από αυτούς δημιουργούν δέντρα αποφάσεων [WWH + 01, QUI 92], άλλοι δημιουργούν τεχνητά νευρωνικά δίκτυα [BIS 95], στατιστικά μοντέλα [DH 73], και άλλα. Μία άλλη προσέγγιση του προβλήματος, η οποία επιχειρείται εδώ, είναι με τη χρήση πεπερασμένων αυτομάτων. Αρχικά όλα τα πρωτεϊνικά δεδομένα καταγράφονται σε βάση δεδομένων, με τρόπο ώστε να διευκολύνεται η είσοδός τους στον αλγόριθμο. Στη συνέχεια τμήμα των δεδομένων χρησιμοποιείται για την κατασκευή ενός πεπερασμένου αυτομάτου, έτσι ώστε να είναι δυνατή η εξαγωγή κανόνων κατηγοριοποίησης από αυτό. Οι κανόνες αυτοί εφαρμόζονται στις υπόλοιπες πρωτεΐνες για να εκτιμηθεί το ποσοστό επιτυχίας και αξιοπιστίας των κανόνων.

12 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 12 Συγκεκριμένα, χρησιμοποιήθηκαν δεδομένα από 10, 18 και 28 οικογένειες πρωτεϊνών, καθώς και δεδομένα από όλες τις οικογένειες (1100). Τα αποτελέσματα που προέκυψαν συγκρίθηκαν με τα αποτελέσματα που έδωσαν άλλοι αλγόριθμοι σε ίδιες συνθήκες με στόχο να διαπιστωθούν τα πλεονεκτήματα του νέου αλγορίθμου Περιεχόμενα Το υπόλοιπο της διπλωματικής διαρθρώνεται ως εξής: Στο 2ο κεφάλαιο παρουσιάζεται η μεθοδολογία που αναπτύχθηκε για τη δημιουργία του συγκεκριμένου συστήματος, μαζί με ένα σύντομο παράδειγμα της λειτουργίας του. Στο Κεφάλαιο 3 γίνεται η επαφή με τη μεθοδολογία ανάπτυξης του συστήματος και περιγράφεται αναλυτικά η αρχιτεκτονική του, καθώς και τα εργαλεία που χρησιμοποιήθηκαν. Στο 4ο κεφάλαιο περιγράφονται εκτενώς πειράματα και στατιστικά που έχουν προκύψει από την εφαρμογή του αλγορίθμου και γίνεται σύγκριση με αποτελέσματα που δίνουν άλλοι αλγόριθμοι. Στο Κεφάλαιο 5 παρουσιάζονται τα συμπεράσματα που προκύπτουν από την όλη μελέτη, καθώς και σχέδια για μελλοντικές επεκτάσεις και βελτιώσεις της μεθόδου. Τέλος, πέρα από την αναγκαία βιβλιογραφία, υπάρχουν διάφορα παραρτήματα με τον αναλυτικό οδηγό εγκατάστασης του συστήματος, καθώς και με διαγράμματα και εικόνες από τη λειτουργία του συστήματος.

13 Κεφάλαιο 2. Η Μεθοδολογία Εξαγωγής Κανόνων 2.1. Εισαγωγή Η Μεθοδολογία Συνοπτικά Η μεθοδολογία που υλοποιήθηκε μπορεί να συνοψισθεί ως εξής: Αρχικά δημιουργούνται τα σύνολα δεδομένων εκπαίδευσης και ελέγχου. Τα σύνολα αυτά πρέπει απαραίτητα να είναι ξένα μεταξύ τους, καθώς και να είναι γνωστά όλα τα γνωρίσματά τους. Δηλαδή πρέπει για κάθε μία πρωτεΐνη, σε οποιοδήποτε από τα δύο σύνολα, να είναι γνωστή και η οικογένεια στην οποία ανήκει, και τα μοτίβα που περιέχει. Στη συνέχεια, χρησιμοποιώντας τις πρωτεϊνικές αλυσίδες του συνόλου δεδομένων εκπαίδευσης, δημιουργείται το δένδρο αποδοχής προθεμάτων (prefix tree acceptor PTA). Αυτό το δένδρο μετασχηματίζεται, με τη βοήθεια του αλγορίθμου ALERGIA [CO 94] σε ένα ισοδύναμο στοχαστικό πεπερασμένο αυτόματο. Θεωρώντας αυτή την ισοδυναμία, είναι δυνατόν να ανιχνευθούν πληροφορίες από τη δομή του αυτόματου. Καθώς το αυτόματο στην πραγματικότητα εκφράζει μία γενικευμένη άποψη της δομής των πρωτεϊνών, και όχι μόνο μία απλή απεικόνιση του συνόλου εκπαίδευσης, είναι δυνατόν να εξαχθούν ποσοστά και πιθανότητες, όπως το

14 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 14 ποσοστό αλυσίδων που περιέχουν κάποιο μοτίβο, ή την πιθανότητα μία αλυσίδα να περιέχει ταυτόχρονα δύο συγκεκριμένα μοτίβα. Με βάση τις τελευταίες πιθανότητες κατασκευάζονται κανόνες που περιγράφουν ακριβώς τη δομή των πρωτεϊνών. Οι κανόνες αυτοί μπορεί να είναι απλοί, της μορφής: «Αν υπάρχει το μοτίβο α, τότε η πρωτεΐνη ανήκει στην οικογένεια P», έως πολύπλοκοι της μορφής: «Αν υπάρχουν ταυτόχρονα τα μοτίβα α και β, τότε η πρωτεΐνη ανήκει στην οικογένεια P 1 ή στην οικογένεια P 2 ή και στις δύο με κάποια πιθανότητα». Η παραπάνω μεθοδολογία παρουσιάζεται συνοπτικά στο Σχήμα 2.1: Βάση Δεδομένων Ν πρωτεϊνών με γνωστά μοτίβα και γνωστές οικογένειες Σύνολο δεδομένων εκπαίδευσης με Ν Τ πρωτεΐνες Σύνολο δεδομένων εκπαίδευσης με Τ < Ν πρωτεΐνες PTACreator Algorithm Κατασκευάζει το Δένδρο Αποδοχής Προθεμάτων PTA Rules ProbExtractor Algorithm Υπολογίζει Πιθανότητες από FSA Σύγκριση πραγματικής κατάταξης πρωτεϊνών με κατάταξη συστήματος Απόδοση Συστήματος ALERGIA Algorithm Μετατρέπει ένα PTA σε FSA FSA Σχήμα 2.1: Διάγραμμα μεθοδολογίας Πεπερασμένα Αυτόματα Καθώς ο αλγόριθμος που αναπτύχθηκε στηρίζεται στη θεωρία πεπερασμένων αυτομάτων, είναι αναγκαία μία μικρή εισαγωγή στις έννοιες που θα χρησιμοποιηθούν παρακάτω. Τα πεπερασμένα αυτόματα είναι υπολογιστές με τα ακόλουθα χαρακτηριστικά:

15 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 15 Έχουν πεπερασμένη (σταθερού μεγέθους) μνήμη εντός της κεντρικής μονάδας επεξεργασίας. Δέχονται ως είσοδο συμβολοσειρές τις οποίες διαβάζουν σειριακά, το ένα σύμβολο μετά το άλλο, χωρίς να μπορούν να γυρίσουν πίσω. Παράγουν ως "έξοδο" μόνο μία ένδειξη για το αν η συμβολοσειρά εισόδου γίνεται αποδεκτή. Το σύνολο των αποδεκτών συμβολοσειρών είναι η αποδεκτή γλώσσα του αυτόματου. Τα πεπερασμένα αυτόματα αντιστοιχούν ένα προς ένα σε κανονικές γλώσσες. Υπάρχουν δύο βασικές κατηγορίες πεπερασμένων αυτόματων, τα αιτιοκρατικά και τα μη αιτιοκρατικά. Τα αιτιοκρατικά πεπερασμένα αυτόματα (deterministic finite state automaton DFSA), τα οποία και θα χρησιμοποιηθούν, ορίζονται ως πεντάδες της μορφής: Μ = (Κ, Σ, δ, s, F) όπου: Κ είναι το πεπερασμένο σύνολο καταστάσεων, Σ είναι το αλφάβητο των συμβόλων εισόδου, s K είναι η αρχική κατάσταση, F Κ είναι το σύνολο των τελικών καταστάσεων και δ είναι η συνάρτηση μετάβασης από το Κ Σ στο Κ. Μια συμβολοσειρά (συμβόλων του Σ) γίνεται αποδεκτή όταν, διαβάζοντάς την, το Μ μεταβαίνει (σύμφωνα με την δ: Κ Σ Κ) από κατάσταση σε κατάσταση (ξεκινώντας από την s) και καταλήγει (εξαντλώντας την συμβολοσειρά) σε οποιαδήποτε τελική κατάσταση. Η σημαντικότερη διαφορά με τα μη αιτιοκρατικά πεπερασμένα αυτόματα είναι ότι στα αιτιοκρατικά, από μία κατάσταση q το ίδιο σύμβολο οδηγεί πάντα στην ίδια κατάσταση q. Αντίθετα, στα μη αιτιοκρατικά αυτόματα, από μία κατάσταση q το ίδιο σύμβολο ενδέχεται να οδηγεί σε περισσότερες της μίας καταστάσεις q. Μία ιδιαίτερη κατηγορία των αιτιοκρατικών πεπερασμένων αυτομάτων, είναι τα στοχαστικά (Stochastic Finite State Automaton ή S DFSA). Η διαφορά τους με τα απλά αιτιοκρατικά αυτόματα είναι ότι υπάρχει πιθανότητα μετάβασης από μία

16 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 16 κατάσταση σε μία άλλη, σύμφωνα με την δ: Κ Σ Κ. Αυτό σημαίνει ότι υπάρχει περίπτωση ορισμένες μεταβάσεις μεταξύ καταστάσεων να ευνοούνται έναντι των άλλων Δένδρο Αποδοχής Προθεμάτων (PTA) Τι είναι πρόθεμα Εάν θεωρήσουμε μία τυχαία ακολουθία συμβόλων (πχ w = a 1 a 2 a 3 a n ) τότε πρόθεμα αυτής της συμβολοσειράς θεωρείται οποιοδήποτε υποσύνολο w p αυτών των συμβόλων, για το οποίο ισχύει: w = w p w όπου w μια συμβολοσειρά οποιουδήποτε μήκους (δηλαδή η w μπορεί να περιέχει οποιοδήποτε πλήθος συμβόλων, ακόμα και 0). Για παράδειγμα, εάν θεωρήσουμε τη συμβολοσειρά w = aabcab, τότε οποιαδήποτε από τις παρακάτω συμβολοσειρές αποτελεί πρόθεμα της w: w p1 = a w p2 = aab w p3 = aabcab (γιατί για w = abcab, ισχύει w = w p1 w ) (γιατί για w = cab, ισχύει w = w p2 w ) (γιατί για w = e, ισχύει w = w p3 w ) Τι είναι το PTA Προφανώς, για ένα δεδομένο σύνολο συμβολοσειρών, είναι δυνατόν να δημιουργηθεί ένα αντίστοιχο σύνολο προθεμάτων. Στο νέο αυτό σύνολο, κάθε στοιχείο πρόθεμα θα είναι μία συμβολοσειρά με μήκος μικρότερο, ή το πολύ ίσο, με την αντίστοιχη συμβολοσειρά από την οποία προήλθε. Ταυτόχρονα όμως το νέο αυτό σύνολο επιτρέπει την αναγνώριση μίας συμβολοσειράς χρησιμοποιώντας πολύ λιγότερα σύμβολα.

17 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 17 Τα προθέματα αυτά μπορούν να αντιστοιχιστούν σε ένα πεπερασμένο αυτόματο, το οποίο αναγνωρίζει αυτά και μόνο αυτά. Αυτό το αυτόματο ονομάζεται δένδρο αποδοχής προθεμάτων, ή PTA. Καθώς κάθε συμβολοσειρά είναι και πρόθεμα του εαυτού της, ένας τρόπος δημιουργίας του PTA είναι από τις αρχικές συμβολοσειρές, χρησιμοποιώντας μία μετάβαση μεταξύ καταστάσεων για κάθε σύμβολο. Για παράδειγμα, χρησιμοποιώντας τις παρακάτω συμβολοσειρές το PTA που προκύπτει είναι το εξής: w 1 = aaaaab w 2 = abbaaa w 3 = bababa a a a a a b b b a a a b a b a b a Σχήμα 2.2: PTA από αρχικές συμβολοσειρές Προφανώς το PTA μπορεί να μικρύνει κατά πολύ σε μέγεθος εάν χρησιμοποιηθεί με τον ίδιο τρόπο το αντίστοιχο σύνολο προθεμάτων. Με βάση τις τρεις προηγούμενες συμβολοσειρές, το σύνολο με τα προθέματα ελάχιστου μήκους, ώστε να είναι δυνατή η διαφοροποίηση των συμβολοσειρών, είναι το εξής: w p1 = aa w p2 = ab w p3 = b οπότε και το νέο PTA είναι το ακόλουθο:

18 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 18 a a b b Σχήμα 2.3: PTA από σύνολο προθεμάτων PTA για πρωτεϊνικό σύνολο δεδομένων Στην περίπτωση που το σύνολο δεδομένων είναι πρωτεϊνικές αλυσίδες, η διαδικασία είναι ακριβώς αντίστοιχη. Οι συμβολοσειρές πλέον δεν είναι ακολουθίες συμβόλων αλλά ακολουθίες μοτίβων. Καθώς όμως τα μοτίβα αναπαρίστανται με ένα κωδικό (της μορφής PSxxxxx), μπορεί να γίνει αντιστοίχηση μοτίβων με σύμβολα, οπότε και η διαδικασία δημιουργίας του PTA παραμένει ίδια. Χρησιμοποιώντας ως παράδειγμα την πρωτεΐνη P04591, της οποίας η ακολουθία παρουσιάστηκε στην παράγραφο 1.2, ολόκληρη η αλυσίδα μπορεί να αντικατασταθεί με το μοτίβο PS50158 (αμινοξέα της αλυσίδας της πρωτεΐνης P04591), καθώς αυτό είναι το μοναδικό μοτίβο που εμφανίζεται Αλγόριθμος Δημιουργίας PTA Ο αλγόριθμος ο οποίος υλοποιήθηκε για τη δημιουργία του PTA μπορεί να περιγραφεί συνοπτικά ως εξής: αρχικά ως είσοδος υπάρχει ένα σύνολο πρωτεϊνών. Ο αλγόριθμος διαβάζει την πρώτη πρωτεΐνη και δημιουργεί την αντίστοιχη ακολουθία μοτίβων. Στη συνέχεια ελέγχει εάν υπάρχει μετάβαση από την αρχική κατάσταση του PTA προς κάποια νέα κατάσταση χρησιμοποιώντας το πρώτο μοτίβο της ακολουθίας. Εάν υπάρχει κάποια μετάβαση, εντοπίζεται η νέα κατάσταση, ενώ εάν δεν υπάρχει, ο αλγόριθμος εισάγει μία νέα κατάσταση και την αντίστοιχη μετάβαση. Σε κάθε

19 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 19 περίπτωση, ο έλεγχος συνεχίζεται από τη νέα κατάσταση με το δεύτερο μοτίβο, μέχρι να εξαντληθούν τα μοτίβα της πρώτης πρωτεΐνης. Η διαδικασία αυτή επαναλαμβάνεται για όλες τις πρωτεΐνες του συνόλου εισόδου. Ο αλγόριθμος σε μορφή ψευδοκώδικα παρουσιάζεται παρακάτω (Πλαίσιο Κώδικα 1). algorithm PTACreator begin do (για κάθε πρωτεΐνη protein στο σύνολο εκπαίδευσης) motifs = findproteinchain(protein) currentstate = firstnode(pta) do (για κάθε μοτίβο m της ακολουθίας motifs) if (η currentstate δεν περιέχει μετάβαση για το μοτίβο m) πρόσθεσε νέα κατάσταση newstate στο PTA πρόσθεσε μετάβαση μεταξύ currentstate και newstate με το μοτίβο m. currentstate = newstate else βρες την κατάσταση endstate στην οποία μεταβαίνει η currentstate με το μοτίβο m. currentstate = endstate end if end do end do end algorithm PTACreator Πλαίσιο Κώδικα 1: Αλγόριθμος Δημιουργίας PTA Εάν θεωρήσουμε ότι στο σύνολο εκπαίδευσης υπάρχουν P σε πλήθος πρωτεΐνες, κάθε πρωτεΐνη έχει το πολύ M μοτίβα και υπάρχουν A σε πλήθος διαφορετικά μοτίβα, τότε η πολυπλοκότητα του παραπάνω αλγορίθμου προκύπτει ίση με: Ο( ) = P Μ (Α 1) Καθώς όμως τόσο το A, όσο και το M μπορούν να θεωρηθούν κατά προσέγγιση σταθερά, η πολυπλοκότητα αυξάνει γραμμικά με το πλήθος των στοιχείων στο σύνολο δεδομένων εκπαίδευσης.

20 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης Δημιουργία Στοχαστικού Αιτιοκρατικού Πεπερασμένου Αυτόματου Αλγόριθμος ALERGIA Το επόμενο βήμα, μετά τη δημιουργία που PTA, είναι η κατασκευή του αντίστοιχου FSA. Η κατασκευή αυτή ουσιαστικά αποτελεί μία μετατροπή του PTA με συστηματική συγχώνευση ισοδύναμων στατιστικά καταστάσεων. Ο αλγόριθμος που υλοποιεί αυτή τη μετατροπή είναι ο αλγόριθμος ALERGIA, που προτάθηκε από τους R.C. Carrasco και J. Oncina [CO 94] Προετοιμασία του PTA για εφαρμογή του ALERGIA Για να εφαρμοσθεί ο ALERGIA θα πρέπει το PTA να περιέχει στατιστικές πληροφορίες, δηλαδή θα πρέπει ήδη να αποτελεί ένα στοχαστικό αιτιοκρατικό πεπερασμένο αυτόματο (Stochastic Deterministic Finite State Automaton S-DFSA). Οι πληροφορίες αυτές είναι οι ακόλουθες: Για κάθε κατάσταση i πρέπει να είναι γνωστό το πλήθος των αλυσίδων που έχουν φτάσει σε αυτήν ( n i ) Για κάθε κατάσταση i πρέπει να είναι γνωστό το πλήθος των αλυσίδων που έχουν τερματίσει σε αυτήν ( f i (#) ). Για κάθε μετάβαση α από οποιαδήποτε κατάσταση i πρέπει να είναι γνωστό το πλήθος των αλυσίδων που την έχουν χρησιμοποιήσει ( f i (α) ). Οι πληροφορίες αυτές μπορούν πολύ εύκολα να ενσωματωθούν στη διαδικασία κατασκευής του PTA. Οι λόγοι f i (α)/n i και f i (#)/n i εκφράζουν την πιθανότητα p i (α) της μετάβασης α, και την πιθανότητα τερματισμού p if αντίστοιχα Ισοδύναμες Καταστάσεις Συμβατές Καταστάσεις (Equivalent States Compatible States) Ο αλγόριθμος συγκρίνει καταστάσεις (κόμβους) ανά ζεύγη ( q i, q j ) με 1 i j 1 και 2 j PTA (όπου PTA το πλήθος των καταστάσεων του PTA).

21 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 21 Σύμφωνα με τη θεωρία, δύο καταστάσεις είναι ισοδύναμες όταν έχουν ίσες πιθανότητες μετάβασης για κάθε σύμβολο α, και ταυτόχρονα οι νέες καταστάσεις (μετά τη μετάβαση) είναι επίσης ισοδύναμες. Δηλαδή: q q p ( α ) = p ( α), i i i j α δ α(i) δ α( j) Εάν όμως θεωρηθεί απλή ισοδυναμία μεταξύ καταστάσεων, το τελικό FSA θα έχει ένα προς ένα αντιστοιχία με το PTA, δηλαδή δεν θα αποτελεί γενίκευσή του, που είναι και το ζητούμενο. Για αυτό το λόγο εισάγεται μία νέα παράμετρος εμπιστοσύνης (confidence), η οποία μετατρέπει την αυστηρή ισότητα σε ισότητα εντός ορίων. Σε αυτή την περίπτωση οι καταστάσεις ονομάζονται συμβατές. Τα όρια αυτά προκύπτουν από το όριο Hoeffding για μια στοχαστική μεταβλητή Bernoulli με πιθανότητα p και πραγματική εμφάνιση f στις n τιμές: f 1 2 p < log n 2 n α με πιθανότητα μεγαλύτερη από (1 α) Ο Αλγόριθμος ALERGIA Ο αλγόριθμος ALERGIA (Πλαίσιο Κώδικα 2) περιγράφεται αναλυτικά στο άρθρο Learning Stochastic Regular Grammars by Means of a State Merging Method [CO 94]. Συνοπτικά μπορεί να περιγραφεί ως εξής: ο αλγόριθμος δέχεται ως είσοδο ένα δένδρο αποδοχής προθεμάτων (PTA). Στη συνέχεια γίνεται έλεγχος συμβατότητας (αλγόριθμος Compatible) μεταξύ της αρχικής κατάστασης και της αμέσως επόμενης. Εάν οι καταστάσεις είναι συμβατές τότε συγχωνεύονται και ελέγχεται η διατήρηση της αιτιοκρατίας. Στη συνέχεια ο έλεγχος συνεχίζεται για τη συμβατότητα μεταξύ της αρχικής και της τρίτης κατάστασης μέχρι να εξαντληθούν οι καταστάσεις. Η διαδικασία επαναλαμβάνεται για κάθε κατάσταση μετά την αρχική, με τις συγκρίσεις να γίνονται με όλες τις καταστάσεις που έπονται.

22 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 22 Ο αλγόριθμος Compatible (Πλαίσιο Κώδικα 3) ελέγχει εάν δύο καταστάσεις είναι συμβατές ή όχι. Αρχικά ελέγχει εάν οι πιθανότητες τερματισμού των δύο καταστάσεων είναι διαφορετικές (αλγόριθμος Different). Εάν είναι διαφορετικές τότε οι καταστάσεις είναι ασύμβατες και ο αλγόριθμος τελειώνει. Σε αντίθετη περίπτωση γίνεται έλεγχος για κάθε δυνατή μετάβαση από τις δύο καταστάσεις, τόσο για τις πιθανότητες μετάβασης όσο και για τη συμβατότητα των τελικών καταστάσεων: εάν οι πιθανότητες μετάβασης, για οποιαδήποτε μετάβαση, είναι διαφορετικές ή εάν οι τελικές καταστάσεις είναι ασύμβατες, τότε οι καταστάσεις εισόδου είναι ασύμβατες και αλγόριθμος τερματίζει. Σε αντίθετη περίπτωση οι αρχικές καταστάσεις είναι συμβατές. Τέλος, ο αλγόριθμος Different (Πλαίσιο Κώδικα 4) είναι ένας απλός έλεγχος του ορίου Hoeffding. Δέχεται ως είσοδο τις παραμέτρους δύο καταστάσεων και επιστρέφει μια Boolean μεταβλητή για το εάν ικανοποιούν το όριο Hoeffding. algorithm ALERGIA input: A: ένα στοχαστικό PTA α: παράμετρος εμπιστοσύνης output: στοχαστικό FSA begin do (for j = successor( first node(a)) to lastnode(a)) do (for i = firstnode(a) to j) if (compatible(i, j) merge(a, i, j) determinize(a) exit (i-loop) end if end for end for return A end algorithm ALERGIA Πλαίσιο Κώδικα 2: Αλγόριθμος ALERGIA

23 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 23 algorithm Compatible input: i, j: καταστάσεις ni, nj :πλήθος αλυσίδων που φτάνουν fi(#), fj(#):πλήθος αλυσίδων που τερματίζουν fi(α), fj(α): πλήθος αλυσίδων που χρησιμοποιούν την μετάβαση με το μοτίβο α. output: Boolean begin if different (ni, fi(#), nj, fj(#) ) return false end if do (για κάθε α) if different (ni, fi(α), nj, fj(α) ) return false end if if not compatible ( δ(i, α), δ(j, α) ) return false end if end do return true end algorithm Compatible Πλαίσιο Κώδικα 3: Αλγόριθμος Compatible algorithm Different input: n, n : πλήθος αλυσίδων που φτάνουν σε κάθε κόμβο f, f : πλήθος αλυσίδων που μεταβαίνουν από ή τερματίζουν σε κάθε κόμβο output: Boolean begin f f' return > log + n n' 2 α n n' end algorithm Different Πλαίσιο Κώδικα 4: Αλγόριθμος Different

24 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης Πολυπλοκότητα Αλγορίθμου ALERGIA Έστω ότι το μέγεθος του τελικού FSA (σε πλήθος καταστάσεων) είναι m, ενώ το πλήθος των διαφορετικών συμβόλων είναι Α. Σύμφωνα με τον αλγόριθμο Different, σε κάθε κόμβο του FSA συγκρίνονται οι πιθανότητες τερματισμού (f i (#)) και εξόδου για κάθε σύμβολο ( f i (α) ). Επομένως, σε κάθε κόμβο γίνονται (Α + 1) έλεγχοι. Οι κόμβοι όμως ελέγχονται ανά ζεύγη διατεταγμένα σε τριγωνική μορφή (i < j). Διαπιστώνεται λοιπόν ότι η συνολική πολυπλοκότητα του αλγορίθμου είναι 1 m (m- 1) (A+ 1). Αν και στη χειρότερη περίπτωση η πολυπλοκότητα είναι τρίτου 2 βαθμού, πειραματικά αποδεικνύεται ότι ο χρόνος αυξάνει γραμμικά με το μέγεθος του PTA Υπολογισμός πιθανοτήτων εμφάνισης συμβόλων από FSA Μετά τη μοντελοποίηση των δεδομένων, πρώτα ως PTA και έπειτα ως FSA, το επόμενο βήμα είναι ο υπολογισμός της πιθανότητας εμφάνισης συγκεκριμένου συνόλου συμβόλων σε μία συμβολοσειρά από το τελικό S DFSA. Στη βιβλιογραφία υπάρχουν αλγόριθμοι, οι οποίοι υπολογίζουν την πιθανότητα εμφάνισης συγκεκριμένων ακολουθιών από FSA [HIN 01]. Ανιχνεύουν δηλαδή ενδιαφέρουσες ακολουθίες συμβόλων που υπάρχουν σε μεγάλα σύνολα συμβολοσειρών. Καθώς όμως τα δεδομένα εισόδου που πρόκειται να χρησιμοποιηθούν δεν περιέχουν πληροφορία διάταξης, με την έννοια ότι δεν είναι γνωστό ποιο μοτίβο προηγείται ή έπεται σε μία πρωτεϊνική αλυσίδα, είναι αναγκαίο να μετασχηματισθούν οι υπάρχοντες αλγόριθμοι έτσι ώστε να ανιχνευθούν μη διατεταγμένα σύνολα. Παρακάτω περιγράφεται η μεθοδολογία που έχει αναπτυχθεί από τον P. Hingston στο άρθρο Using Finite State Automata for Sequence Mining [HIN 01] για τον υπολογισμό της πιθανότητας εμφάνισης διατεταγμένου συνόλου συμβόλων σε δεδομένη συμβολοσειρά, και στη συνέχεια θα παρουσιαστεί ο νέος αλγόριθμος που αναπτύχθηκε για τον υπολογισμό της αντίστοιχης πιθανότητας για μη διατεταγμένο σύνολο συμβόλων.

25 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης Υπολογισμός πιθανότητας εμφάνισης διατεταγμένου συνόλου συμβόλων Ζητείται να υπολογισθεί η πιθανότητα εμφάνισης συμβολοσειρών, οι οποίες περιέχουν το σύμβολο x ακολουθούμενο αργότερα από το σύμβολο y. Για διευκόλυνση, εάν S είναι μία κατάσταση του FSA και x ένα τυχαίο σύμβολο, τότε συμβολίζεται: p(s, x): η πιθανότητα χρήσης του συμβόλου x κατά μία μετάβαση από την κατάσταση S. q(s, x): η κατάσταση στην οποία μεταβαίνει από την S χρησιμοποιώντας το σύμβολο x. Μία συμβολοσειρά που περιέχει ένα x και μετά ένα y, μπορεί να διαιρεθεί με μοναδικό τρόπο σε ένα τμήμα που περιέχει το x στην τελευταία θέση και σε ένα τμήμα που περιέχει το y σε οποιαδήποτε θέση. Δηλαδή: [ ] (1) P(S, < x,y > ) = F(S,T,x) P(T,y) T όπου: P(S, <x,y>) : η πιθανότητα ένα τυχαίο μονοπάτι από την κατάσταση S να περιέχει πρώτα ένα x και μετά ένα y. F(S, T, x) : η πιθανότητα ένα τυχαίο μονοπάτι από την κατάσταση S στην κατάσταση T να περιέχει ένα και μόνο ένα σύμβολο x και μάλιστα στην τελευταία θέση. P(T, y) : η πιθανότητα ένα τυχαίο μονοπάτι από την κατάσταση T να περιέχει το σύμβολο y. Αρχικά η πιθανότητα P(T, y) υπολογίζεται ως εξής: (2) P(T,y) = p(t,y) + p(t,z) P[ q(t,z),y] z y

26 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 26 όπου: p(t, y) : η πιθανότητα να ξεκινά με y. p(t, z) P(q(T, z),y) : η πιθανότητα η επόμενη κατάσταση (στην οποία φτάνει με σύμβολο z διαφορετικό του y) να εκπέμψει το σύμβολο y. Η εξίσωση (2) μπορεί να γραφεί ως εξής: P(T,y) = p(t,y) + p(t,z) P(V,y) V z y q( T,z ) = V (3) Δηλαδή για κάθε κατάσταση V για την οποία T z V υπολογίζεται το άθροισμα των πιθανοτήτων T z με z διαφορετικό του y. Ορίζεται ο πίνακας: ρ ( y) = p(t,z) (4) S,T z y q( T,z ) = V οπότε σε μορφή πινάκων πλέον έχουμε: όπου [ ] 1 ( ) P(y) = p(y) +ρ(y) P(y) I ρ(y) P(y) = p(y) P(y) = I ρ(y) p(y) P(y) = J(y) p(y) [ ] 1 J(y) = I ρ(y) (5) Ομοίως υπολογίζεται η πιθανότητα F(S, T, x): F(S,T,x) = [ p(s,z) F(q(S,z),T,z) ] + z x p(s,x)ά q( ε S ν,x ) T = 0 αλλού

27 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 27 όπου το πρώτο μέλος του αθροίσματος εκφράζει την πιθανότητα εκπομπής άλλων συμβόλων, ενώ το δεύτερο μέλος εκφράζει την πιθανότητα εκπομπής του συμβόλου x στην τελευταία θέση. Μετασχηματίζοντας το πρώτο μέλος προκύπτει: p(s,x)ά q( ε S ν,x ) T = F(S,T,x) = p(s,z) F(V,T,x) + V z x 0 αλλού q( S,z ) = V πίνακα: Tο πρώτο μέρος είναι ουσιαστικά ο πίνακας ρ S,V (x). Χρησιμοποιώντας τον γ S,T (x) = p(s,x)ά q( ε S ν,x ) T = 0 αλλού (6) η τελευταία σχέση, σε μορφή πινάκων, γράφεται ως εξής: [ ] F(x)=ρ(x) F(x)+ γ(x) I -ρ(x) F(x) =γ(x) F(x) = J(x) γ(x) Επομένως, το αρχικό ερώτημα, σε μορφή πινάκων, γράφεται ως εξής: P(<x, y>) = F(x) P(y) = J(x) γ(x) J(y) p(y) (7) Η παραπάνω σχέση γενικεύεται και για n σύμβολα ως εξής: P( < x,x,x,...,x > ) = F( x ) F( x )... F( x ) P( x ) n 1 2 n 1 n ή ισοδύναμα: P( < x,x,x,...,x > ) = J(x ) γ(x ) J(x ) γ(x )... J(x ) γ(x ) J(x ) p(x ) n n 1 n 1 n n

28 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης Υπολογισμός πιθανότητας εμφάνισης μη διατεταγμένου συνόλου συμβόλων Η παραπάνω πιθανότητα δεν ικανοποιεί το συγκεκριμένο σύνολο δεδομένων, καθώς οι ακολουθίες μοτίβων σε μία πρωτεΐνη είναι μη διατεταγμένες. Προκύπτει λοιπόν η ανάγκη να υπολογισθεί η πιθανότητα ύπαρξης πολλών μοτίβων ταυτόχρονα σε μία ακολουθία, αλλά χωρίς την έννοια της διάταξης. Για αυτό το σκοπό δημιουργήθηκε ένας νέος αλγόριθμος ο οποίος βασίζεται στη μεθοδολογία που περιγράφηκε στην προηγούμενη παράγραφο. Έστω δύο σύμβολα a και b. Χρησιμοποιώντας την πιθανότητα που υπολογίσθηκε πιο πριν, διαπιστώνεται ότι: P(a+b) = + P(a b) + P(b a) P(a b a) P(b a b) + P(a b a b) + P(b a b a) P(a b a b a) P(b a b a b) + + Δηλαδή, η ζητούμενη πιθανότητα μπορεί να προσεγγισθεί με ένα άπειρο άθροισμα. Ουσιαστικά, κάθε φορά αφαιρείται ή προστίθεται στην τελική πιθανότητα μία ποσότητα που οφείλεται στις αλληλεπικαλύψεις των πιθανοτήτων. Για παράδειγμα, μία συμβολοσειρά της μορφής aba θα ληφθεί υπόψιν στον υπολογισμό και της πιθανότητας P(a b), και της πιθανότητας P(b a). Για αυτό το λόγο, αφαιρείται μία φορά με την αφαίρεση της πιθανότητας P(a b a) από τη συνολική. Έστω τρία σύμβολα a, b και c. Για τον υπολογισμό της πιθανότητας P(a+b+c), η διαδικασία είναι αντίστοιχη με την προηγούμενη. Στην πρώτη γραμμή του πίνακα υπάρχουν οι πιθανότητες για κάθε μετάθεση των τριών συμβόλων (3! = 6), δηλαδή: + P(a b c) + P(a c b) + P(b a c) + P(b c a)

29 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 29 + P(c a b) + P(c b a) Στη δεύτερη γραμμή, υπάρχουν οι εξής πιθανότητες: P((a b) c (a b)) P((a c) b (a c)) P((b a) c (b a)) P((b c) a (b c)) P((c a) b (c a)) P((c b) a (c b)) Στην τρίτη γραμμή, υπάρχουν οι εξής πιθανότητες: + P((a b) c (a b) c) + P((a c) b (a c) b) + P((b a) c (b a) c) + P((b c) a (b c) a) + P((c a) b (c a) b) + P((c b) a (c b) a) κ.ο.κ. Η παραπάνω μεθοδολογία γενικεύεται εύκολα για n μοτίβα. Τα βήματα που αποτελούν τον αλγόριθμο παρουσιάζονται στο Πλαίσιο Κώδικα 5.

30 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 30 Αλγόριθμος ProbExtractor 1ο βήμα: Υπολογίζονται όλες οι δυνατές μεταθέσεις των n μοτίβων (n!): Perm(j), για j = 0, 1,, (n! 1) 2ο βήμα: Για κάθε μετάθεση υπολογίζεται το πρόθεμα, μήκους (n-1) και το επίθεμα, μήκους 1: Prefix(j), Suffix(j), j = 0, 1,, (n! 1) 3ο βήμα: Αρχικοποίηση: Για i = 0: Υπολογίζεται η αρχική τιμή της πιθανότητας, σύμφωνα με τη σχέση: n! 1 i (( ) [ Perm( j )] ) P= 1 p j= 0 Για i = 1: Δημιουργούμε τις νέες ακολουθίες με βάση τις παλιές και τα αντίστοιχα προθέματα, ως εξής: Perm(j) = Perm(j) + Suffix(j), j = 0, 1,, (n! 1) Υπολογίζεται η νέα τιμή της πιθανότητας n! 1 i ( ) P' = ( 1) p[ Perm( j )] j= 0 4ο βήμα: While ( P P > e) i = i + 1 P = P If ( i mod 2 == 0) Perm(j) = Perm(j) + Prefix(j), j = 0, 1,, (n! 1) Else Perm(j) = Perm(j) + Suffix(j), j = 0, 1,, (n! 1) End If n! 1 i ( ) P' = ( 1) p[ Perm( j )] j= 0 End While Τέλος Αλγορίθμου ProbExtractor Πλαίσιο Κώδικα 5: Αλγόριθμος ProbExtractor

31 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης Πολυπλοκότητα Έστω ότι το τελικό FSA έχει Κ καταστάσεις και Α πλήθος διαφορετικών συμβόλων. Το ζητούμενο είναι να βρεθούν κανόνες με n πλήθος μοτίβων. Αυτό σημαίνει ότι θα γίνουν συνολικά n i= 1 A comb i συνδυασμοί συμβόλων. Για κάθε ένα από αυτούς τους συνδυασμούς γίνονται όλες οι δυνατές μεταθέσεις (i! για κάθε συνδυασμό ανά i), ενώ για κάθε μετάθεση γίνονται i αναστροφές πινάκων (μία για κάθε σύμβολο). Θεωρώντας ότι η βέλτιστη πολυπλοκότητα για αντιστροφή πίνακα είναι ανάλογη του κύβου της διάστασης του πίνακα, η συνολική πολυπλοκότητα του αλγορίθμου προκύπτει τελικά ίση με: Ο( ) n A! = i K i= 1 ( A i )! Εξαγωγή Κανόνων Κατηγοριοποίησης Το τελευταίο βήμα του αλγορίθμου είναι η εξαγωγή κανόνων κατηγοριοποίησης των πρωτεϊνών. Ας ορίσουμε επομένως πιο συγκεκριμένα την έννοια του κανόνα Κανόνες Κατηγοριοποίησης Κανόνες Συσχέτισης (Classification Rules Association Rules) Οι κανόνες είναι λογικές σχέσεις, οι οποίες εκφράζουν συσχέτιση μεταξύ στοιχείων ενός συνόλου. Συνήθως έχουν τη μορφή X Y, η οποία διαβάζεται ως εξής: «Στοιχεία που ικανοποιούν το X είναι πιθανό να ικανοποιούν και το Υ». Ανάλογα με το τι εκφράζουν τα X και Y, οι κανόνες χωρίζονται σε κανόνες συσχέτισης και κανόνες κατηγοριοποίησης.

32 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 32 Εάν τόσο το X, όσο και το Y, αποτελούν απλά γνωρίσματα ή ιδιότητες των στοιχείων, τότε ο κανόνας είναι κανόνας συσχέτισης. Εάν το X είναι γνώρισμα ή ιδιότητα, ενώ το Y είναι κατηγορία στοιχείων, τότε ο κανόνας ονομάζεται κανόνας κατηγοριοποίησης. Κάθε κανόνας έχει δύο ποιοτικά γνωρίσματα: την υποστήριξη (support) και την εμπιστοσύνη (confidence). Ισχύουν οι εξής ορισμοί: Η υποστήριξη ενός κανόνα X Y είναι η πιθανότητα supp(x Y) = p(x Y). ή, με άλλα λόγια, το ποσοστό των στοιχείων του αρχικού συνόλου που περιέχουν το X ή/και το Y. Η εμπιστοσύνη ενός κανόνα X Y είναι η αναλογία conf ( X Y ) = X Y X, ή ισοδύναμα conf ( X Y ) = supp( X Y ) supp( X ) Πρακτικά, μπορεί κανείς να πει ότι η υποστήριξη εκφράζει τη συχνότητα εμφάνισης των δεδομένων που εμπεριέχονται στον κανόνα, ενώ η εμπιστοσύνη εκφράζει τη βαρύτητα της συσχέτισης. Τέλος, ένα άλλο γνώρισμα, που χρησιμοποιείται όμως για την αξιολόγηση και πιθανόν την ταξινόμηση των κανόνων, είναι το ενδιαφέρον (interest) του κανόνα. Το ενδιαφέρον ορίζεται ως εξής: p( X Y ) supp(x Y ) interest( X Y ) = = p( X ) p(y ) supp( X ) supp(y ) Ουσιαστικά το ενδιαφέρον ενός κανόνα εκφράζει κατά πόσο τα X και Y είναι ανεξάρτητα μεταξύ τους. Όσο περισσότερο απέχει η τιμή από το 1, τόσο μεγαλύτερη εξάρτηση υπάρχει μεταξύ των X και Y.

33 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 33 Για ένα φιλτράρισμα των κανόνων, ώστε τελικά να εξαχθούν μόνο ισχυροί κανόνες, μπορεί να χρησιμοποιηθεί μία νέα παράμετρος mininterest ελάχιστου ενδιαφέροντος, με 1 > mininterest > 0, έτσι ώστε: Εάν p(xuy) 1 mininterest, τότε ο κανόνας X Y είναι ενδιαφέρων p( X ) p(y ) Εφαρμογή σε πρωτεϊνικά δεδομένα Στην περίπτωση που εξετάζεται, οι κανόνες έχουν μία πολύ συγκεκριμένη μορφή. Το X είναι πάντα ένας συνδυασμός μοτίβων (δηλαδή ένα μη διατεταγμένο σύνολο ενός ή και περισσοτέρων μοτίβων), ενώ το Y είναι πάντα ένας συνδυασμός οικογενειών πρωτεϊνών. Προφανώς οι κανόνες που προκύπτουν είναι κανόνες κατηγοριοποίησης, και τα γνωρίσματά τους μπορούν να ορισθούν, με βάση τα νέα δεδομένα, ως εξής: # πρωτεϊνών που περιέχουν το Χ & ανήκουν στην Υ confidence(χ Υ) = Το πλήθος των πρωτεϊνών που περιέχουν το μοτίβο Χ # πρωτεϊνών που περιέχουν το Χ ή ανήκουν στην Υ support(χ Υ) = Το συνολικό πλήθος των πρωτεϊνών Το πλήθος των πρωτεϊνών που περιέχουν το μοτίβο Χ support(χ ) = Το συνολικό πλήθος των πρωτεϊνών Το πλήθος των πρωτεϊνών που ανήκουν στην οικογένεια Y support(y ) = Το συνολικό πλήθος των πρωτεϊνών Προφανώς, στη θέση του μοτίβου X και της οικογένειας Y μπορούν να βρίσκονται συνδυασμοί μοτίβων ή οικογενειών.

34 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης Υπολογισμός γνωρισμάτων κανόνων από FSA Η πιθανότητες που υπολογίζονται από το FSA, στην περίπτωση των πρωτεϊνικών δεδομένων, μπορούν να περιγραφούν ως εξής: Το πλήθος των πρωτεϊνών που περιέχουν το X και ανήκουν στην Υ p ( X, Y ) = Το πλήθος των πρωτεϊνών που ανήκουν στην Υ Επομένως, εάν δημιουργηθεί ένα αυτόματο από πρωτεϊνικές αλυσίδες τριών διαφορετικών οικογενειών (έστω Y 1, Y 2 και Y 3 ), τότε από το συγκεκριμένο FSA μπορούν να υπολογισθούν μόνο πιθανότητες της μορφής: # πρωτεϊνών που περιέχουν το X και ανήκουν στην Y Y Y p( X, Y1 Y 2 Y 3) = Το πλήθος των πρωτεϊνών που ανήκουν στην Y Y Y για κάθε μοτίβο ή συνδυασμό μοτίβων X που εμφανίζεται στις συγκεκριμένες αλυσίδες δεδομένων. Προφανώς, εάν για τη δημιουργία του FSA χρησιμοποιηθούν όλα τα δεδομένα, δηλαδή όλες οι οικογένειες, τότε η παραπάνω πιθανότητα παίρνει την εξής μορφή: Το πλήθος των πρωτεϊνών που περιέχουν το μοτίβο X p(x) = Το συνολικό πλήθος των πρωτεϊνών Διαπιστώνεται δηλαδή ότι από το συνολικό FSA μπορεί να υπολογισθεί απευθείας το γνώρισμα support(x), για κάθε μοτίβο ή συνδυασμό μοτίβων X. Η εκτίμηση του γνωρίσματος support(y), για κάθε οικογένεια Y, μπορεί να γίνει εύκολα κατά τη δημιουργία του PTA, καθώς το γνώρισμα αυτό αποτελεί την πιθανότητα εμφάνισης κάποιας οικογένειας, δηλαδή: Το πλήθος των πρωτεϊνών που ανήκουν στην οικογένεια Y support(y ) = p(y ) = Το συνολικό πλήθος των πρωτεϊνών Το επόμενο γνώρισμα, η εμπιστοσύνη, μπορεί εύκολα να υπολογισθεί από τα δύο παραπάνω γνωρίσματα με τη βοήθεια ενός «τοπικού» αυτή τη φορά FSA. Με την

35 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 35 έννοια «τοπικό» υπονοείται ότι το FSA δημιουργείται για ένα μικρότερο υποσύνολο οικογενειών. Θα ισχύει: # πρωτεϊνών που περιέχουν το Χ & ανήκουν στην Υ confidence( Χ Υ ) = = Το πλήθος των πρωτεϊνών που περιέχουν το μοτίβο Χ # πρωτεϊνών που περιέχουν το Χ & ανήκουν στην Υ Το πλήθος των πρωτεϊνών που ανήκουν στην Υ Το πλήθος των πρωτεϊνών που ανήκουν στην Υ Το συνολικό πλήθος των πρωτεϊνών Το πλήθος των πρωτεϊνών που περιέχουν το μοτίβο Χ Το συνολικό πλήθος των πρωτεϊνών δηλαδή: support(x, τοπικό FSA) support(y) confidence( X Y ) = support(x, συνολικό FSA) Τέλος, το τελευταίο γνώρισμα μπορεί να υπολογισθεί με τη βοήθεια γνωστών ιδιοτήτων συνόλων, και προκύπτει ίσο με: supp(x Y) = supp(x) + supp(y) conf(x Y) supp(x) Συνοψίζοντας, για κάθε κανόνα X Y, τα γνωρίσματά του μπορούν να υπολογισθούν από FSA με βάση τους παρακάτω τύπους: supp(x Y) = supp(x) + supp(y) conf(x Y) supp(x) support(x, τοπικό FSA) support(y) conf ( X Y ) = support(x, συνολικό FSA) Αλγόριθμος Εξαγωγής Κανόνων Με βάση όσα έχουν προηγηθεί, ο αλγόριθμος RuleCreator για την εξαγωγή κανόνων είναι ο εξής:

36 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 36 Αλγόριθμος RuleCreator Δεδομένα: Πλήθος m μοτίβων σε κάθε κανόνα Πλήθος c οικογενειών σε κάθε κανόνα Ελάχιστο ενδιαφέρον κανόνα mininterest 1 ο βήμα: Από τα δεδομένα και για κάθε συνδυασμό Y των οικογενειών (από συνδυασμούς ανά 1 έως και ανά c) υπολογίζεται η πιθανότητα supp(y) 2 ο βήμα: Δημιουργείται το συνολικό FSA (για κάθε οικογένεια), και για κάθε συνδυασμό Χ των μοτίβων (από συνδυασμούς ανά 1 έως και ανά m) υπολογίζεται η πιθανότητα supp(χ). 3 ο βήμα: Για κάθε συνδυασμό Y των οικογενειών (από συνδυασμούς ανά 1 έως και ανά c) δημιουργείται ένα «τοπικό» FSA. Από αυτό το FSA, και για κάθε συνδυασμό Χ των μοτίβων (από συνδυασμούς ανά 1 έως και ανά m) υπολογίζονται τα γνωρίσματα του κανόνα X Y. Εάν το ενδιαφέρον που παρουσιάζει ο κανόνας είναι μικρότερο από mininterest ο κανόνας απορρίπτεται. Τέλος Αλγορίθμου RuleCreator Πλαίσιο Κώδικα 6: Αλγόριθμος RuleCreator 2.6. Ένα παράδειγμα Η αναλυτική παρουσίαση της λειτουργίας ολόκληρου του αλγορίθμου θα ήταν άσκοπη, τόσο λόγω του όγκου των υπολογισμών όσο και επειδή γίνεται πολλές φορές επανάληψη της ίδιας μεθοδολογίας. Γι αυτούς τους λόγους θα γίνει αναλυτική περιγραφή της δημιουργίας ενός PTA, της μετατροπής του σε FSA και, τέλος, του υπολογισμού πιθανοτήτων και κανόνων από το τελικό αυτό FSA.

37 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 37 Θα χρησιμοποιηθεί ως παράδειγμα η οικογένεια PDOC50086 των πρωτεϊνών (TBC/rab GAP domain). Στην οικογένεια αυτή υπάρχουν 14 πρωτεΐνες, οι οποίες παρουσιάζονται στον Πίνακα 2.1 μαζί με τα μοτίβα της κάθε πρωτεΐνης: Πίνακας 2.1: Πρωτεΐνες και Μοτίβα της οικογένειας PDOC50086 Α/Α Πρωτεΐνη Μοτίβα 1. P09379 PS P26448 PS P32806 PS P36618 PS P43570 PS P48365 PS50086, PS P48566 PS50086, PS P53258 PS50031, PS50086, PS Q04322 PS50086, PS Q09445 PS Q09830 PS50086, PS Q09830 PS50079, PS Q10496 PS00018, PS00402, PS Q92609 PS50086, PS50322, PS50324 Από τις 14 αυτές πρωτεΐνες, οι 11 θα χρησιμοποιηθούν ως σύνολο δεδομένων εκπαίδευσης, ενώ οι υπόλοιπες 3 ως σύνολο δεδομένων ελέγχου. Η επιλογή γίνεται τυχαία, οπότε προκύπτουν τα εξής σύνολα: Train Data Set = {1, 2, 3, 4, 5, 7, 8, 9, 12, 13 και 14} Test Data Set = {6, 10 και 11} Οι αλυσίδες των μοτίβων διαβάζονται με τη σειρά με την οποία δίνονται, οπότε δημιουργείται το PTA του Σχήματος 2.5 Ισχύουν οι εξής συμβολισμοί:

38 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 38 Ο αύξων αριθμός της κατάστασης Το πλήθος των αλυσίδων που έχουν τελειώσει στη συγκεκριμένη κατάσταση Το πλήθος των αλυσίδων που έχουν φτάσει στη συγκεκριμένη κατάσταση PS50322 [1] Οι φορές που χρησιμοποιήθηκε το συγκεκριμένο μοτίβο Κατεύθυνση της μετάβασης Σχήμα 2.4: Συμβολισμοί PS50312 [1] PS50154 [1] PS50086 [8] PS50322 [1] 12 PS50324 [1] O PS50031 [1] PS50086 [1] PS50222 [1] PS50079 [1] PS50086 [1] PS00018 [1] PS00402 [1] PS50086 [1] Σχήμα 2.5: Δένδρο Αποδοχής Προθεμάτων Στη συνέχεια, εφαρμόζεται ο αλγόριθμος ALERGIA, χρησιμοποιώντας παράμετρο confidence = 0.8, οπότε γίνονται οι ακόλουθες συγχωνεύσεις (Σχήματα ):

39 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 39 PS50312 [1] PS50154 [1] PS50086 [8] PS50322 [1] PS50324 [1] O PS50031 [1] PS50086 [1] PS50222 [1] PS50079 [1] PS50086 [1] PS00018 [1] PS00402 [1] PS50086 [1] Σχήμα 2.6: Συγχώνευση καταστάσεων 1 και 2 PS50312 [1] PS50154 [1] PS50086 [8] PS50222 [1] PS50322 [1] PS50324 [1] O PS50086 [1] PS50031 [1] PS50079 [1] PS00018 [1] PS50086 [1] PS00402 [1] PS50086 [1] Σχήμα 2.7: Συγχώνευση καταστάσεων 0 και 4

40 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 40 PS50312 [1] PS50154 [1] PS50222 [1] PS50086 [8] PS50322 [1] PS50324 [1] PS50086 [1] O 12 0 PS50031 [1] PS50079 [1] PS50086 [1] PS00018 [1] PS00402 [1] PS50086 [1] Σχήμα 2.8: Συγχώνευση καταστάσεων 1 και 5 PS50312 [1] PS50222 [1] PS50086 [8] PS50322 [1] PS50154 [1] PS50324 [1] O 12 0 PS50086 [1] PS50031 [1] PS00018 [1] PS50079 [1] 7 PS50086 [1] PS00402 [1] PS50086 [1] Σχήμα 2.9: Συγχώνευση καταστάσεων 3 και 6

41 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 41 PS50312 [1] PS50322 [1] PS50324 [1] PS50222 [1] PS50086 [8] 11 8 PS50154 [1] PS50086 [1] PS50086 [1] O 12 0 PS50031 [1] PS00018 [1] PS50079 [1] PS00402 [1] PS50086 [1] Σχήμα 2.10: Συγχώνευση καταστάσεων 1 και 8 PS50222 [1] PS50086 [8] PS50312 [1] PS50154 [1] PS50322 [1] PS50324 [1] PS50086 [1] O 12 0 PS00018 [1] PS50031 [1] PS50086 [1] PS00402 [1] PS50079 [1] PS50086 [1] Σχήμα 2.11: Συγχώνευση καταστάσεων 3 και 9

42 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 42 PS50222 [1] PS50086 [8] PS50312 [1] PS50154 [1] PS50322 [1] PS50324 [1] PS50086 [1] O PS50086 [1] 12 0 PS00018 [1] PS50031 [1] PS00402 [1] PS50079 [1] 7 PS50086 [1] Σχήμα 2.12: Συγχώνευση καταστάσεων 7 και 10 PS50222 [1] PS50086 [8] PS50312 [1] PS50154 [1] PS50322 [1] PS50324 [1] PS50086 [1] O PS50086 [2] 12 0 PS00018 [1] PS50031 [1] PS00402 [1] PS50079 [1] Σχήμα 2.13: Συγχώνευση καταστάσεων 1 και 11

43 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 43 PS50312 [1] PS50322 [1] PS50222 [1] PS50086 [8] PS50324 [1] PS50154 [1] PS50086 [2] O 12 0 PS00018 [1] PS50031 [1] PS50086 [1] PS00402 [1] PS50079 [1] Σχήμα 2.14: Συγχώνευση καταστάσεων 1 και 13 Με αυτή την τελευταία συγχώνευση προκύπτει και το τελικό FSA, το οποίο είναι το εξής: PS50312 [1] PS50322 [1] PS50222 [1] PS50086 [8] PS50324 [1] PS50154 [1] PS50086 [2] O 12 0 PS50086 [1] PS50031 [1] PS00018 [1] PS50079 [1] PS00402 [1] Σχήμα 2.15: Στοχαστικό Αιτιοκρατικό Πεπερασμένο Αυτόματο

44 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 44 Θεωρώντας ότι έχουν υπολογιστεί τα γνωρίσματα supp(x) και supp(y) για κάθε μοτίβο X και οικογένεια Y, οι κανόνες με ένα μοτίβο που προκύπτουν από το παραπάνω FSA είναι οι εξής: Πίνακας 2.2: Κανόνες από οικογένεια PDOC50086 Motif Class: Probability Confidence Support Interest PS50086 PDOC50086: E PS50324 PDOC50086: PS00402 PDOC50086: PS50222 PDOC50086: PS50154 PDOC50086: E PS50312 PDOC50086: PS00018 PDOC50086: PS50322 PDOC50086: PS50079 PDOC50086: PS50031 PDOC50086: E Δηλαδή, παίρνοντας τον πρώτο κανόνα, διαπιστώνουμε ότι εάν μία πρωτεΐνη περιέχει το μοτίβο PS50086, τότε αυτή ανήκει στην οικογένεια PDOC50086 με πιθανότητα 1, με βεβαιότητα 0.78.

45 Κεφάλαιο 3. Υλοποίηση Αρχιτεκτονική του Συστήματος 3.1. Περιγραφή της Βάσης Δεδομένων Για την εξαγωγή του μοντέλου και τη βέλτιστη υλοποίησή του χρησιμοποιούνται δεδομένα από τη διπλωματική: «Ανάπτυξη Συστήματος για την Πρόβλεψη Συμπεριφοράς Πρωτεϊνών με τη χρήση μεθόδων Εξόρυξης Δεδομένων» Χατζηδαμιανός Γεράσιμος Χρησιμοποιούνται οι παρακάτω πίνακες, οι οποίοι έχουν δημιουργηθεί στην παραπάνω διπλωματική και στηρίζονται στα δεδομένα της βάσης Prosite: Πίνακας 3.1: Δομή του πίνακα Pattern. Περιέχονται εγγραφές. Πίνακας Pattern Protein Code Protein Name Pattern Code Pattern Name O00058 MTDH_UROFA PS00061 ADH_SHORT O00086 IMH3_CANAL PS00487 IMP_DH_GMP_RED O00088 GLNA_AGABI PS00181 GLNA_ATP O00091 G6PD_SCHPO PS00069 G6P_DEHYDROGENASE O00098 CISY_EMENI PS00480 CITRATE_SYNTHASE O00139 KIF2_HUMAN PS00017 ATP_GTP_A

46 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 46 O00142 KITM_HUMAN PS00017 ATP_GTP_A O00155 GPRP_HUMAN PS00237 G_PROTEIN_RECEP_F1_1 O00159 MY1C_HUMAN PS00017 ATP_GTP_A O00168 PLM_HUMAN PS01310 ATP1G1_PLM_MAT8 O00178 GTB1_HUMAN PS00017 ATP_GTP_A O00182 LEG9_HUMAN PS00309 GALAPTIN Πίνακας 3.2: Δομή του πίνακα Profile. Περιέχονται εγγραφές. Πίνακας Profile Protein Code Protein Name Profile Code Profile Name O00060 CYPH_UROFA PS50072 CSA_PPIASE_2 O00086 IMH3_CANAL PS50147 SNF4_REP O00086 IMH3_CANAL PS50264 FMN_ENZYMES O00087 DLDH_SCHPO PS50205 NAD_BINDING O00102 UBC7_SCHPO PS50127 UBIQUITIN_CONJUGAT_2 O00103 UBCD_SCHPO PS50127 UBIQUITIN_CONJUGAT_2 O00116 ADAS_HUMAN PS50310 ALA_RICH O00124 REP8_HUMAN PS50033 UX_DOMAIN O00139 KIF2_HUMAN PS50007 PIPLC_X_DOMAIN O00139 KIF2_HUMAN PS50067 KINESIN_MOTOR_DOMAIN2 O00139 KIF2_HUMAN PS50079 NLS_BP O00141 SGK_HUMAN PS50011 PROTEIN_KINASE_DOM O00151 PDL1_HUMAN PS50023 LIM_DOMAIN_2 O00151 PDL1_HUMAN PS50106 PDZ O00151 PDL1_HUMAN PS50157 ZINC_FINGER_C2H2_2 O00154 CTE2_HUMAN PS50079 NLS_BP O00155 GPRP_HUMAN PS50262 G_PROTEIN_RECEP_F1_2 O00155 GPRP_HUMAN PS50323 ARG_RICH

47 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 47 Πίνακας 3.3: Δομή του πίνακα Prosite. Περιέχονται εγγραφές. Πίνακας Prosite Class Code Protein Code Protein Name Flag PDOC00010 O00187 MAS2_HUMAN T PDOC00010 O00339 MTN2_HUMAN T PDOC00010 O00548 DLL1_HUMAN T PDOC00010 O08746 MTN2_MOUSE T PDOC00010 O15943 CADN_DROME F PDOC00010 O19045 FA10_RABIT T PDOC00010 O35568 FBL3_RAT T PDOC00010 O55058 FBL4_CRIGR T PDOC00010 O73775 FBL1_CHICK T PDOC00010 O77469 FBL1_CAEEL T PDOC00010 O88322 NID2_MOUSE T PDOC00010 O89029 MTN4_MOUSE T PDOC00010 O95460 MTN4_HUMAN T Πριν αξιοποιηθούν οι παραπάνω πίνακες θα πρέπει να γίνει μια βελτιστοποίησή τους, έτσι ώστε να ελαχιστοποιηθούν πιθανά προβλήματα. Η βελτιστοποίηση έγινε με βάση τις παρακάτω παραδοχές: Κάθε ένας από τους πίνακες δεν περιέχει διπλότυπα. Στον πίνακα Prosite υπάρχουν μόνο εγγραφές οι οποίες έχουν στην στήλη Flag τιμές T (true positive η αλυσίδα περιέχεται στην υπό εξέταση ομάδα) ή F (false positive η αλυσίδα δεν περιέχεται στην υπό εξέταση ομάδα). Οι τιμές P (potential hit η αλυσίδα ανήκει στην ομάδα αλλά δεν ήταν δυνατή η επαλήθευσή της), N (false negative η αλυσίδα ανήκει στην ομάδα αλλά δεν ήταν δυνατή η ανίχνευσή της) και? (unknown άγνωστη πρωτεΐνη η οποία θα μπορούσε να ανήκει στην συγκεκριμένη ομάδα) διαγράφονται καθώς κρίνονται μη αναγκαίες για την δημιουργία του FSA.

48 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 48 Στον πίνακα Prosite υπάρχουν μόνο εγγραφές για τις οποίες, για κάθε τιμή στη στήλη Protein Code, υπάρχει κάποια αναφορά είτε στον πίνακα Pattern είτε στον πίνακα Profile. Εφαρμόζοντας τις τρεις παραπάνω παραδοχές, προκύπτουν οι παρακάτω τιμές: Πίνακας 3.4: Πλήθος στοιχείων σε κάθε πίνακα Protein Codes Codes Total Records Prosite Class Codes: Pattern Pattern Codes: Profile Profile Codes: Είναι χρήσιμο να προστεθεί και ο παρακάτω πίνακας, ο οποίος δίνει μια εικόνα της μετατροπής της βάσης: Πίνακας 3.5: Μεταβολή της βάσης GenBase Τιμή Flag Αρχικά Τελικά T F N P ? Πέρα από τους Πίνακες , θα χρησιμοποιηθούν, για τεχνικούς κυρίως λόγους, και δύο όψεις: η AllMotifs και η DistinctClasses. Η πρώτη όψη περιέχει μία μόνο στήλη, της οποίας τα στοιχεία είναι όλα τα διαφορετικά μοτίβα που υπάρχουν στους πίνακες Pattern και Profile. Η δεύτερη όψη περιέχει και αυτή μόνο μία στήλη με στοιχεία όλες τις διαφορετικές οικογένειες πρωτεϊνών που υπάρχουν στον πίνακα Prosite.

49 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης Σύνδεση με τον SQL Server 2000 μέσω JDBC Μετά τη σχεδίαση της βάσης δεδομένων, το επόμενο βήμα είναι ο προσδιορισμός του τύπου της σύνδεσης με αυτή, και συγκεκριμένα με τον SQL Server Εφόσον όλος ο κώδικας είναι σε γλώσσα προγραμματισμού Java, αρκεί να προσδιοριστεί ο JDBC Driver που θα χρησιμοποιηθεί. Υπάρχουν τεσσάρων τύπων JDBC Drivers: Τύπος 1: JDBC - ODBC Bridge Τύπος 2: Native - API/partly Java driver Τύπος 3: Net - protocol/all - Java driver Τύπος 4: Native - protocol/all - Java driver Ακολουθεί μια συνοπτική περιγραφή του καθενός και αναφέρονται τα πλεονεκτήματα και τα μειονεκτήματα αυτών έτσι ώστε να επιλεγεί ο καταλληλότερος. Τύπου 1: JDBC - ODBC Bridge Client Machine JDBC ODBC bridge Server Machine Database Server ODBC driver Vendor DB library Σχήμα 3.1: Αρχιτεκτονική του JDBC - ODBC Bridge Ο τύπου 1 οδηγός, JDBC ODBC driver, μεταφράζει όλες τις JDBC κλήσεις σε ODBC (Open DataBase Connectivity) κλήσεις και τις αποστέλλει στον οδηγό ODBC. Για αυτό το λόγο, ο ODBC driver, καθώς και ο client database code, πρέπει να βρίσκεται και στις client μηχανές.

50 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 50 Υπέρ: Ο οδηγός JDBC ODBC Bridge επιτρέπει την πρόσβαση σε οποιαδήποτε βάση, καθώς οι οδηγοί ODBC της βάσης είναι ούτως ή άλλως διαθέσιμοι. Οι οδηγοί τύπου 1 είναι χρήσιμοι για όλους όσους έχουν ήδη εγκατεστημένο τον ODBC οδηγό στις client μηχανές. Κατά: Η απόδοση μειώνεται καθώς η κλήση του JDBC περνά μέσα από την γέφυρα ODBC μέχρι να φτάσει στη βάση. Η απάντηση έρχεται ακολουθώντας την αντίστροφη διαδρομή. Λαμβάνοντας υπόψη τον παράγοντα της απόδοσης, οι οδηγοί τύπου 1 μπορεί να μην είναι κατάλληλοι για μεγάλης κλίμακας εφαρμογές. Επίσης ο οδηγός ODBC και το native connectivity interface πρέπει να έχουν ήδη εγκατασταθεί στις client μηχανές. Έτσι όμως χάνεται το πλεονέκτημα της χρήσης των Java Applets σε ένα διαδικτυακό περιβάλλον, καθώς παραμένει το πρόβλημα της εγκατάστασης όπως και στα «παραδοσιακά» προγράμματα. Τύπου 2: Native - API/partly Java driver Client Machine Native API partly Java driver Server Machine Database Server Vendor DB library Σχήμα 3.2: Αρχιτεκτονική του Native - API/partly Java driver Ο οδηγός JDBC τύπου 2 ο Native - API/partly Java driver μετατρέπει τις κλήσεις JDBC σε κλήσεις προκαθορισμένες από τον τύπο της βάσης, όπως SQL Server, Informix, Oracle ή Sybase. Ο οδηγός τύπου 2 επικοινωνεί άμεσα με τον database server, γι αυτό απαιτεί κάποια τμήματα δυαδικού κώδικα να βρίσκονται στα client μηχανήματα.

51 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 51 Υπέρ: Οι οδηγοί τύπου 2 τυπικά προσφέρουν σημαντικά καλύτερη απόδοση από τους JDBC - ODBC Bridge. Κατά: Οι βιβλιοθήκες της βάσης δεδομένων πρέπει κάθε φορά να φορτώνονται στο μηχάνημα του client. Επομένως οι οδηγοί τύπου 2 δεν μπορούν να χρησιμοποιηθούν για το διαδίκτυο. Επίσης οι οδηγοί τύπου 2 παρουσιάζουν χαμηλότερη απόδοση από τους οδηγούς τύπου 3 ή 4. Τύπου 3: Net - protocol/all - Java driver Client Machine Server Machine Net protocol pure Java driver Middleware Server Database Server Σχήμα 3.3: Αρχιτεκτονική του Net - protocol/all - Java driver Ο JDBC οδηγός τύπου 3 - Net - protocol/all - Java driver ακολουθεί μια τακτική αρχιτεκτονικής 3 επιπέδων, όπου οι κλήσεις διέρχονται μέσω δικτύου στον ενδιάμεσο server. Ο ενδιάμεσος server στη συνέχεια μεταγλωττίζει την κλήση (άμεσα ή έμμεσα) με τρόπο ανάλογα με το native connectivity interface της συγκεκριμένης βάσης, έτσι ώστε να προωθήσει την κλήση στον database server. Εάν ο ενδιάμεσος server είναι γραμμένος σε γλώσσα προγραμματισμού Java, μπορεί να χρησιμοποιηθεί ένας οδηγός τύπου 1 ή 2 για την τελική κλήση. Υπέρ: Ο οδηγός Net - protocol/all - Java βασίζεται σε server, γι αυτό δεν υπάρχει ανάγκη οποιαδήποτε βιβλιοθήκη της βάσης να βρίσκεται σε client μηχανές. Επίσης, υπάρχουν πολλές δυνατότητες για βελτίωση συμβατότητας, επίδοσης και μεγέθους. Ο οδηγός αυτός μπορεί ακόμη να σχεδιαστεί έτσι ώστε ο client JDBC driver να γίνει πολύ μικρός και γρήγορος στο φόρτωμα. Επιπλέον, ένας οδηγός τύπου 3 συνήθως παρέχει

52 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 52 υποστήριξη για χαρακτηριστικά όπως caching (συνδέσεις, αποτελέσματα ερωτημάτων κτλ), load balancing και advanced system administration όπως logging και auditing. Κατά: Ο οδηγός τύπου 3 απαιτεί να βρίσκεται στον ενδιάμεσο server κώδικας βασισμένος στην εκάστοτε βάση. Διατρέχοντας όμως την όλη αρχιτεκτονική χρειάζεται πολύς χρόνος, καθώς όλες οι απαντήσεις έρχονται από το database server στην άλλη άκρη της αρχιτεκτονικής. Τύπου 4: Native - protocol/all - Java driver Client Machine Server Machine Native protocol pure Java driver Database Server Σχήμα 3.4: Αρχιτεκτονική του Native - protocol/all - Java driver Ο οδηγός JDBC τύπου 4 ο Native - protocol/all - Java driver μετατρέπει τις κλήσεις JDBC σε πρωτόκολλο DBMS (Database Management System) της εκάστοτε βάσης, έτσι ώστε οι client εφαρμογές να επικοινωνούν απευθείας με τον database server. Οι οδηγοί τύπου 4 είναι εξ ολοκλήρου υλοποιημένοι σε Java έτσι ώστε να εξασφαλίζεται η ανεξαρτησία πλατφόρμας. Υπέρ: Καθώς οι τύπου 4 οδηγοί δεν χρειάζεται να μετατρέπουν κλήσεις σε ODBC ή σε οποιοδήποτε άλλο interface μέχρι την βάση, η απόδοση είναι αρκετά καλή. Οι οδηγοί τύπου 4 γενικά έχουν καλύτερες αποδόσεις από τους τύπου 1 και 2. Επίσης, δεν χρειάζεται να εγκατασταθεί επιπλέον λογισμικό στον client ή στον server. Τέλος, οι οδηγοί αυτοί μπορούν να φορτωθούν δυναμικά (real time download).

53 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 53 Κατά: Με τους οδηγούς τύπου 4, ο χρήστης χρειάζεται διαφορετικό οδηγό για την κάθε βάση. Ο Πίνακας 3.6 συνοψίζει τις επιδόσεις 5 οδηγών JDBC: Πίνακας 3.6: Επιδόσεις διαφόρων τύπων JDBC drivers [URL 8] JDBC Driver/Requirement JDBC- ODBC Bridge IDS Driver SequeLink JTurbo 1.22 I-net Sprinta Vendor Comes with Sun JDK IDS Software MERANT Ashna Inc. I-net Software Type of driver Footprint (compressed) Database connection time (ms) Data retrieval time (ms) (33,000 records) Fetch & traversal time (ms) (33,000 records) Data insertion time (ms) (1,000 records) KB 269 KB 107 KB 42 KB ,700 3, ,700 3,000 3,500 3,600 3,050 Οι μετρήσεις έγιναν στο ακόλουθο περιβάλλον:

54 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 54 Πίνακας 3.7: Συνθήκες Ελέγχου [URL 8] Test conditions Platform: Windows NT 4.0 Computer with Java VM: SQL Server 7.0: Pentium III Pentium III JVM: JDK Η βάση είχε στήλες με στοιχεία int, varchar(255) και datetime. Τα παραπάνω στοιχεία υπάρχουν στο site [URL 8]. Αν και από τον πίνακα φαίνεται ότι οι οδηγοί τύπου 1 είναι ταχύτεροι ως προς το Database Connection Time, οι χρόνοι για το Fetch&Traversal είναι πιο μικροί για οδηγούς τύπου 4. Επομένως, θα χρησιμοποιηθεί ο τύπου 4 JDBC driver, και μάλιστα ο επίσημος οδηγός της Microsoft, ο οποίος είναι τύπου 4. Η Microsoft προσφέρει τον οδηγό για δύο πλατφόρμες: Windows (setup.exe) και Solaris (mssqlserver.tar). Εγκαθιστώντας τον οδηγό για την πλατφόρμα Windows διαπιστώνεται ότι το πρόγραμμα εγκατάστασης φορτώνει το σύστημα με περίπου 30 DLL, κάτι το οποίο απέχει πολύ από έναν καθαρό Java οδηγό. Αντίθετα, ο οδηγός της πλατφόρμας Solaris περιέχει ακριβώς τα 3 Java αρχεία που είναι απαραίτητα (δηλαδή τα lib/msbase.jar, lib/mssqlserver.jar και lib/msutil.jar) Αρχιτεκτονική τριών επιπέδων Τέλος, απομένει να επιλεχθεί ο τρόπος σχεδίασης του συνολικού συστήματος. Επειδή το σύστημα περιλαμβάνει ήδη μία βάση δεδομένων, οι δυνατές επιλογές αρχιτεκτονικής σχεδίασης είναι είτε με αρχιτεκτονική 2 επιπέδων (2 tier architecture), είτε με αρχιτεκτονική πολλών επιπέδων (multitiered architecture). Η αρχιτεκτονική 2 επιπέδων είναι η απλούστερη δυνατή. Περιλαμβάνει δύο μέρη, τη βάση δεδομένων (database server) και τον client στον οποίο εκτελείται όλη η λογική του προγράμματος. Η γενική δομή μίας αρχιτεκτονικής πολλών επιπέδων παρουσιάζεται στο παρακάτω διάγραμμα.

55 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 55 Web Browser HTML Pages Tier 1: Client Tier Network Web Server (Thin-Client Servlet) Tier 2: Web Tier Network Enterprise Beans Application Server Tier 3: Business Tier Network Database Server Tier 4: Enterprise Information Systems (EIS) Tier Σχήμα 3.5: Αρχιτεκτονική πολλών επιπέδων Η παραπάνω αρχιτεκτονική όμως δεν είναι δεσμευτική, καθώς πολλές φορές τα δύο πρώτα επίπεδα συγχωνεύονται στο επίπεδο client. Η νέα μορφή είναι ουσιαστικά διανεμημένη σε τρία συστήματα: στους client υπολογιστές, στον ενδιάμεσο application server και τέλος τις βάσεις δεδομένων στην τελική άκρη. Με αυτό τον τρόπο επεκτείνεται η αρχιτεκτονική δύο επιπέδων προσθέτοντας έναν application server, με δυνατότητες multithreading, μεταξύ της client εφαρμογής και της αποθήκευσης των δεδομένων. Τα πλεονεκτήματα που παρουσιάζει αυτή η μορφή εμφανίζονται κυρίως στη συντήρηση της εφαρμογής, καθώς και στην υπολογιστική ισχύ που απαιτείται συνολικά. Ένα σύστημα βασισμένο σε αυτή τη μορφή αποτελείται ουσιαστικά από πολλά μικρότερα υποσυστήματα που επικοινωνούν μεταξύ τους με καθορισμένες διεπαφές (interfaces). Επομένως, είναι δυνατόν ολόκληρα υποσυστήματα να

56 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 56 ανανεωθούν χωρίς να επηρεαστεί η λειτουργία του συστήματος. Επίσης, ενώ στην περίπτωση των δύο επιπέδων ολόκληρη η λειτουργία του συστήματος θα έπρεπε να εκτελεστεί ουσιαστικά σε έναν υπολογιστή, με τα 3 επίπεδα η υπολογιστική ισχύς κατανέμεται σε περισσότερους υπολογιστές. Από την άλλη πλευρά, ένα από τα σημαντικότερα μειονεκτήματα που παρουσιάζει μία τέτοια αρχιτεκτονική, είναι η δυσκολία στην υλοποίηση. Σε αυτό το σημείο όμως δίνει μία λύση η ίδια η γλώσσα προγραμματισμού Java καθώς παρέχει έτοιμο το υπόβαθρο της αρχιτεκτονικής, όπως φαίνεται και από το παρακάτω διάγραμμα: Application Client Container EJB Container Application Client Enterprise Bean JMS JNDI RMI - IIOP JDBC JMS JNDI JTA Java Mail JAF RMI - IIOP JDBC Database J2SE J2SE Σχήμα 3.6: Υποδομή της Java για αρχιτεκτονική 3 επιπέδων Με βάση τα παραπάνω η επιλογή της αρχιτεκτονικής τριών επιπέδων είναι προφανής, καθώς συνδυάζει τόσο ευελιξία στην ανανέωση και συντήρηση του συστήματος, όσο και μεγαλύτερη υπολογιστική ισχύ για την εφαρμογή του αλγορίθμου Αρχιτεκτονική του Με βάση όσα αναφέρθηκαν, το σύστημα που υλοποιήθηκε με το όνομα, έχει την αρχιτεκτονική που παρουσιάζεται στο παρακάτω διάγραμμα:

57 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 57 Tables Entity Beans Session Beans Prosite Prosite Pattern Pattern FSA Profile Profile Connections Views AllMotifs AllMotifs Client Data Mining DistinctClasses DistinctClasses GenBase (Database Server) Application Server Σχήμα 3.7: Αρχιτεκτονική του συστήματος Από το διάγραμμα φαίνεται καθαρά η αρχιτεκτονική 3 επιπέδων που υλοποιεί το σύστημα. Το μεσαίο επίπεδο (application server) χωρίζεται πρακτικά σε δύο μικρότερα επίπεδα. Το πρώτο, από τη πλευρά της βάσης, είναι υπεύθυνο για την ανάσυρση των δεδομένων από τη βάση. Το δεύτερο επίπεδο έχει δύο λειτουργίες: αφενός λειτουργεί ως διεπαφή (interface) με την εφαρμογή client, και αφετέρου εκτελεί όλη την προεργασία των δεδομένων πριν αποσταλούν στην εφαρμογή Εργαλεία που χρησιμοποιήθηκαν SQL Server 2000 Η επιλογή του SQL Server 2000 της Microsoft ως βάση δεδομένων, έγινε για τους παρακάτω λόγους: Θεωρείται ένα από τα καλύτερα και πιο ολοκληρωμένα συστήματα της αγοράς. Συνοδεύεται από πολύ καλή τεκμηρίωση, γεγονός το οποίο βοηθά ιδιαίτερα στην ανάπτυξη λογισμικού. Παρουσιάζει ευρωστία σε διαδικτυακές εφαρμογές.

58 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης JBoss Η επιλογή του JBoss ως application server, έγινε για τους παρακάτω λόγους: Είναι Open Source εφαρμογή, γραμμένη σε Java και επομένως συνεργάζεται πολύ καλά με την γλώσσα αυτή. Χρησιμοποιείται ευρέως για διαδικτυακές εφαρμογές. Παρουσιάζει ευελιξία και προσαρμοστικότητα ανάλογα με τις απαιτήσεις της κάθε εφαρμογής JBuilder X Τέλος, ολόκληρη η εφαρμογή αναπτύχθηκε σε Java, κυρίως λόγω της δυνατότητας που παρέχει να εκτελείται σε οποιοδήποτε λειτουργικό σύστημα. Μετά την επιλογή της Java ως γλώσσας ανάπτυξης, η επιλογή του JBuilder X ως περιβάλλον ανάπτυξης είναι προφανής καθώς: Αποτελεί το πλέον εξελιγμένο περιβάλλον ανάπτυξης λογισμικού σε Java, καθώς παρέχει πολλές ευκολίες για τη δημιουργία συμπαγούς και χωρίς λάθη κώδικα. Παρέχει αυτοματοποιημένες διαδικασίες, ιδιαίτερα στον τομέα του γραφικού περιβάλλοντος. Υπάρχουν έτοιμες βιβλιοθήκες για τη σύνδεση με application servers και database servers.

59 Κεφάλαιο 4. Αποτελέσματα Πειράματα 4.1. Προσδιορισμός της παραμέτρου confidence στον αλγόριθμο ALERGIA Όπως έχει αναφερθεί, η παράμετρος confidence στον αλγόριθμο ALERGIA είναι αυτή που καθορίζει το εύρος ανοχής για τη συμβατότητα μεταξύ δύο καταστάσεων. Όσο μικρότερη η τιμή, τόσο μεγαλύτερο είναι το εύρος. Για τον προσδιορισμό της τιμής αυτής της παραμέτρου, εκτελείται το ακόλουθο πείραμα. Ως δεδομένα χρησιμοποιούνται οι 14 πρωτεΐνες που ανήκουν στην οικογένεια PDOC50086 και εμφανίζονται στον Πίνακα 2.1 (σελίδα 39). Εάν χρησιμοποιηθούν όλες οι πρωτεΐνες για τη δημιουργία του FSA, τότε για διαφορετικές τιμές της παραμέτρου confidence, προκύπτουν τελικά τα παρακάτω FSA (Σχήμα 4.1 Σχήμα 4.3):

60 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 60 PS50086 [1] PS50324 [1] PS50086 [11] PS50312 [1] PS00018 [1] PS50079 [1] PS50322 [1] O 28 8 PS50222 [1] PS50086 [2] PS50031 [1] PS50324 [2] PS50154 [1] PS00402 [1] Σχήμα 4.1: Τελικό FSA με παράμετρο confidence = 0.1 PS50324 [2] PS50222 [1] PS50031 [1] PS50086 [12] PS00018 [1] PS50322 [1] O 17 2 PS50079 [1] PS50312 [1] PS50154 [1] PS00402 [1] PS50086 [1] PS50086 [1] PS50324 [1] Σχήμα 4.2: Τελικό FSA με παράμετρο confidence = 0.45

61 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 61 PS50324 [2] PS50222 [1] PS50322 [1] 13 PS50086 [12] PS50324 [1] 1 0 PS50031 [1] PS50086 [2] PS50312 [1] PS50154 [1] O 15 0 PS50079 [1] PS00402 [1] 3 2 PS00018 [1] Σχήμα 4.3: Τελικό FSA με παράμετρο confidence = 0.8 Από τα σχήματα είναι φανερό ότι όσο αυξάνεται η παράμετρος confidence τόσο περισσότερο αυξάνει η πολυπλοκότητα του τελικού FSA. Δηλαδή, μεγάλη τιμή στην παράμετρο confidence σημαίνει λιγότερες παραδοχές στη συγχώνευση δύο καταστάσεων και επομένως μεγαλύτερη εξάρτηση από τα αρχικά δεδομένα. Όσο μειώνεται η παράμετρος, γίνονται περισσότερες συγχωνεύσεις και επομένως το τελικό FSA γίνεται πιο γενικό. Ζητούμενο όμως είναι η κατασκευή ενός FSA το οποίο να είναι μεν γενικό, αλλά ταυτόχρονα να περιγράφει ικανοποιητικά τη δομή των δεδομένων. Με άλλα λόγια, είναι επιθυμητό κάθε μετάβαση μεταξύ καταστάσεων να οφείλεται σε ένα μοτίβο, αλλά ταυτόχρονα να υπάρχει μικρό πλήθος καταστάσεων. Οι δύο αυτές συνθήκες πειραματικά ικανοποιούνται ταυτόχρονα, ως ένα βαθμό, στην περιοχή του 0.8. Αυτό φαίνεται και από τα παραπάνω διαγράμματα, όπου όσο αυξάνεται το confidence τόσο αυξάνει το πλήθος των καταστάσεων, αλλά ταυτόχρονα μειώνεται και το πλήθος των μοτίβων στην ίδια μετάβαση.

62 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης Πειραματικά αποτελέσματα κατηγοριοποίησης Ο αλγόριθμος που υλοποιήθηκε εξετάστηκε για την ορθότητα και την αξιοπιστία του με μία σειρά πειραμάτων. Τα αποτελέσματα που προέκυψαν, συγκρίθηκαν με αντίστοιχα αποτελέσματα άλλων αλγορίθμων. Σε όλα τα πειράματα που ακολουθούν, χρησιμοποιήθηκαν απλοί κανόνες της μορφής «Μοτίβο Οικογένεια». Αν και είναι δυνατόν να δημιουργηθούν πιο πολύπλοκοι κανόνες από τον αλγόριθμο, η πολυπλοκότητα των υπολογισμών καθιστά απαγορευτική την υλοποίησή τους, καθώς ο χρόνος που απαιτείται στον περιορισμένων δυνατοτήτων διαθέσιμο υπολογιστή αυξάνει δραματικά Έλεγχος σε σταθερό πλήθος οικογενειών και μεταβλητά ποσοστά δεδομένων εκπαίδευσης και ελέγχου Στο άρθρο «Data Driven Generation of Decision Trees for Motif Based Assignment of Protein Sequences to Functional Families» [WWH + 01], παρουσιάζεται μία μέθοδος κατηγοριοποίησης πρωτεϊνών με τη βοήθεια δέντρου αποφάσεων. Για την επαλήθευση της ορθότητας των αποτελεσμάτων, χρησιμοποιήθηκαν 10 τυχαίες οικογένειες πρωτεϊνών με διαφορετικά ποσοστά δεδομένων εκπαίδευσης και ελέγχου. Εκτελώντας ακριβώς το ίδιο πείραμα, προκύπτουν τα ποσοστά επιτυχίας που παρουσιάζονται στον Πίνακα 4.1. Στο πείραμα, για κάθε διαφορετικό ποσοστό, ο αλγόριθμος εκτελέστηκε τρεις φορές με διαφορετικό σύνολο δεδομένων εκπαίδευσης κάθε φορά, επιλεγμένο τυχαία. Οι κανόνες που παράγονταν κάθε φορά, ελέγχονταν από όλες τις πρωτεΐνες και προσδιοριζόταν το ποσοστό επιτυχίας της κατηγοριοποίησής τους. Οι οικογένειες που χρησιμοποιήθηκαν είναι οι ακόλουθες: 10 οικογένειες: PDOC00064, PDOC00154, PDOC00224, PDOC00271, PDOC00343, PDOC00561, PDOC00662, PDOC00670, PDOC00791, PDOC50007

63 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 63 Πίνακας 4.1: Έλεγχος για 10 τυχαίες οικογένειες πρωτεϊνών (585 πρωτεΐνες σε επικαλυπτόμενα σύνολα) Train Set (%) / Test Set (%) (με επαναλήψεις) [WWH + 01] 2 (%) / 100 (%) % % 59.1 % 3 (%) / 100 (%) % % 71.7 % 5 (%) / 100 (%) % % 82.7 % 10 (%) / 100 (%) % % 94.0 % 20 (%) / 100 (%) % % 95.1 % 30 (%) / 100 (%) % % 96.5 % 40 (%) / 100 (%) % % 98.4 % 50 (%) / 100 (%) % % 99.0 % 60 (%) / 100 (%) % % 98.7 % 99 (%) / 100 (%) % % 99.8 % Οι κανόνες είναι διατεταγμένοι κατά φθίνουσα σειρά, με βάση το γνώρισμα interest. Κατά τη διάρκεια του ελέγχου, ο αλγόριθμος συγκρίνει τα μοτίβα που υπάρχουν στην πρωτεϊνική αλυσίδα, με τα μοτίβα του πρώτου κανόνα. Εάν ο κανόνας ικανοποιείται, χρησιμοποιείται για την κατάταξη της αλυσίδας, αλλιώς ο αλγόριθμος συνεχίζει στον επόμενο κανόνα κοκ μέχρι την εξάντληση των κανόνων ή μέχρι την κατάταξη της πρωτεΐνης. Από αυτή τη διαδικασία γίνεται φανερό ότι η διάταξη των κανόνων είναι ζωτικής σημασίας. Καθώς το κριτήριο του interest για την κατάταξη των κανόνων δεν είναι πάντα το ιδανικό, γίνεται και ένας δεύτερος έλεγχος. Στο δεύτερο έλεγχο, εάν ο κανόνας ικανοποιείται, ελέγχεται στη συνέχεια και το αν έχει γίνει σωστή κατάταξη της πρωτεΐνης. Εάν δεν έχει γίνει σωστή κατάταξη, τότε ο αλγόριθμος αγνοεί τον κανόνα και συνεχίζει παρακάτω μέχρι να βρει σωστό κανόνα, ή να τελειώσουν οι κανόνες. Ο δεύτερος αυτός έλεγχος γίνεται για να διαπιστωθεί κατά πόσο πράγματι οι κανόνες είναι διατεταγμένοι σωστά, και ποιο θα ήταν το ποσοστό στην περίπτωση της ιδανικής διάταξης. Όσο πιο μικρή είναι η διαφορά των δύο ποσοστών, τόσο πιο κοντά στην ιδανική είναι η διάταξη που έγινε. Αυτά τα δύο διαφορετικά ποσοστά παρουσιάζονται στον Πίνακα 4.1 στις στήλες και «(με επαναλήψεις)» αντίστοιχα.

64 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 64 Για να υπάρξει καλύτερη εκτίμηση για την ικανότητα του αλγορίθμου να κατατάσσει σωστά άγνωστες πρωτεΐνες, επαναλαμβάνεται το πείραμα, αλλά αυτή τη φορά τα σύνολα δεδομένων εκπαίδευσης και ελέγχου είναι ξένα μεταξύ τους, αποτελούν δηλαδή μία διαμέριση του αρχικού συνόλου. Τα νέα ποσοστά επιτυχίας παρουσιάζονται στον παρακάτω πίνακα. Πίνακας 4.2: Έλεγχος για 10 τυχαίες οικογένειες πρωτεϊνών (585 πρωτεΐνες σε ξένα σύνολα) Train Set (%) / Test Set (%) (με επαναλήψεις) 2 (%) / 98 (%) % % 3 (%) / 97 (%) % % 5 (%) / 95 (%) % % 10 (%) / 90 (%) % % 20 (%) / 80 (%) % % 30 (%) / 70 (%) % % 40 (%) / 60 (%) % % 50 (%) / 50 (%) % % 60 (%) / 40 (%) % % 99 (%) / 1 (%) % % Από τους παραπάνω πίνακες είναι φανερό ότι ο νέος αλγόριθμος παρουσιάζει εξαιρετικά υψηλό ποσοστό επιτυχίας, ακόμα και με πολύ μικρό σύνολο εκπαίδευσης. Τα Σχήματα 4.4 και 4.5 παρουσιάζουν γραφικά την απόδοση του αλγορίθμου (μπλέ), την ιδανική απόδοση (κόκκινο), καθώς και την απόδοση του αλγορίθμου που περιγράφεται στο άρθρο [WWH + 01] (μαύρο).

65 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης FSA Algorithm (Ideal) FSA Algorithm [WWH+ 01] Percentage of Success Train Set Percentage Σχήμα 4.4: Ποσοστά επιτυχίας για επικαλυπτόμενα σύνολα 100 Percentage of Success FSA Algorithm (Ideal) FSA Algorithm [WWH+ 01] Train Set Percentage Σχήμα 4.5: Ποσοστά επιτυχίας για ξένα σύνολα Αντίστοιχα πειράματα παρουσιάζονται στο Παράρτημα Δ.

66 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης Έλεγχος σε μεταβλητό πλήθος οικογενειών και σταθερό ποσοστό δεδομένων εκπαίδευσης και ελέγχου Στο άρθρο «GenMiner: a Data Mining Tool for Protein Analysis» [HAD + 03] γίνεται επίσης μία προσέγγιση του προβλήματος με δένδρα αποφάσεων. Ο έλεγχος γίνεται για διαφορετικό πλήθος τυχαίων οικογενειών, έχοντας σταθερό ποσοστό δεδομένων εκπαίδευσης και ελέγχου. Για την επαλήθευση της ορθότητας των αποτελεσμάτων χρησιμοποιήθηκαν τα τρία σύνολα οικογενειών πρωτεϊνών που παρατίθενται στον Πίνακα 4.3. Στη συνέχεια, για κάθε σύνολο οικογενειών, το σύστημα εκπαιδεύεται χρησιμοποιώντας μία αναλογία 90 / 10 στα ποσοστά δεδομένων εκπαίδευσης και ελέγχου. Εκτελώντας ακριβώς το ίδιο πείραμα, προκύπτουν τα ποσοστά επιτυχίας που φαίνονται στον Πίνακα 4.4. Πίνακας 4.3: Τα τρία σύνολα οικογενειών πρωτεϊνών που χρησιμοποιήθηκαν στο πείραμα Σύνολο 1: PDOC00064, PDOC00154, PDOC00224, PDOC00271, (10 οικογένειες) PDOC00343, PDOC00561, PDOC00662, PDOC00670, PDOC00791, PDOC50007 Σύνολο 2: PDOC00020, PDOC00023, PDOC00027, PDOC00335, (19 οικογένειες) PDOC00340, PDOC00344, PDOC00351, PDOC00552, PDOC00561, PDOC00564, PDOC00567, PDOC00789, PDOC00790, PDOC00793, PDOC00800, PDOC00803, PDOC50001, PDOC50006, PDOC50017 Σύνολο 3: PDOC00010, PDOC00013, PDOC00021, PDOC00024, (28 οικογένειες) PDOC00027, PDOC00031, PDOC00061, PDOC00067, PDOC00072, PDOC00075, PDOC00160, PDOC00164, PDOC00166, PDOC00167, PDOC00171, PDOC00298, PDOC00300, PDOC00304, PDOC00305, PDOC00307, PDOC00310, PDOC00485, PDOC00486, PDOC00490, PDOC00495, PDOC00499, PDOC00722, PDOC00728 Στο πείραμα, για κάθε διαφορετικό σύνολο, ο αλγόριθμος εκτελέστηκε τρεις φορές με διαφορετικό σύνολο δεδομένων εκπαίδευσης κάθε φορά, επιλεγμένο τυχαία. Οι κανόνες που παράγονταν κάθε φορά, ελέγχονταν από τις πρωτεΐνες του συνόλου δεδομένων ελέγχου (το οποίο είναι ξένο με το σύνολο δεδομένων εκπαίδευσης), και

67 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 67 προσδιοριζόταν το ποσοστό επιτυχίας της κατηγοριοποίησής τους. Οι τιμές που παρουσιάζονται στον Πίνακα 4.4 είναι ο μέσος όρος των ποσοστών για κάθε περίπτωση. Πίνακας 4.4: Έλεγχος για 3 τυχαία σύνολα οικογενειών Πλήθος (με οικογενειών επαναλήψεις) [HAD + 03] % % % % % % % % % Έλεγχος σε όλες τις οικογένειες πρωτεϊνών Ένα αναγκαίο πείραμα για τον έλεγχο της ορθότητας του αλγορίθμου είναι ο έλεγχος με όλα τα διαθέσιμα δεδομένα. Σε αυτή την περίπτωση αναφερόμαστε σε 1100 οικογένειες πρωτεϊνών (όχι απαραίτητα ξένες μεταξύ τους) και περίπου πρωτεΐνες. Χρησιμοποιώντας το 90% των πρωτεϊνών ως σύνολο δεδομένων εκπαίδευσης, και το υπόλοιπο 10% ως σύνολο δεδομένων ελέγχου, ο αλγόριθμος έδωσε τα εξής ποσοστά επιτυχίας: Πίνακας 4.5: Έλεγχος για όλες τις οικογένειες πρωτεϊνών Πλήθος οικογενειών (με επαναλήψεις) % % Δηλαδή ο αλγόριθμος δημιουργεί κανόνες για τη σωστή κατάταξη του % των πρωτεϊνών, αλλά αδυνατεί να τους κατατάξει σωστά, με αποτέλεσμα το πραγματικό ποσοστό να πέφτει στο %.

68 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης Χρονική διάρκεια αλγορίθμου Όλα τα παραπάνω πειράματα εκτελέστηκαν σε υπολογιστή Pentium 4, 1.51 GHz με 512 MB Ram και 768 MB Virtual Ram. Οι χρόνοι εκτέλεσης παρουσιάζονται στον Πίνακα 4.6: Πίνακας 4.6: Πειραματικοί χρόνοι εκτέλεσης Πλήθος κλάσεων (Cold Start) (Warm Start) sec (7m 9sec) 248 sec (4m 8sec) sec (17m 46sec) 835 sec (13m 55sec) sec (26m 39sec) 1461 sec (24m 21sec) sec (7h 30m 58sec) sec (7h 33m 57sec) Η διαφορά του Cold Start από το Warm Start είναι η κατάσταση του Application Server. Όταν ο αλγόριθμος εκκινεί ταυτόχρονα με τον Application Server, τότε η εκκίνηση είναι Cold Start, καθώς πρέπει να αρχικοποιηθεί ο Server. Όταν ο αλγόριθμος εκκινεί αφού έχει σταθεροποιηθεί ο Server, τότε η εκκίνηση είναι Warm Start. Αξίζει επίσης να παρατηρηθεί ότι δεν υπάρχει σημαντική διαφορά χρόνου για διαφορετικά ποσοστά συνόλων εκπαίδευσης και ελέγχου, εάν το πλήθος των οικογενειών μένει σταθερό. Αναλυτικά για το κάθε τμήμα του αλγορίθμου, οι χρόνοι εκτέλεσης παρουσιάζονται στον Πίνακα 4.7.

69 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 69 Δημιουργία βασικών αρχείων (αρκεί να εκτελεστεί μόνο μία φορά) Πίνακας 4.7: Αναλυτικοί χρόνοι εκτέλεσης Τμήμα αλγορίθμου Χρόνος εκτέλεσης Εκκίνηση Application Server 192 sec (3m 12sec) Υπολογισμός πιθανοτήτων για κάθε οικογένεια 2489 sec (41m 29sec) Υπολογισμός Train και Test Sets 162 sec (2m 42sec) Δημιουργία συνολικού PTA sec (3h 4m 33sec) Δημιουργία συνολικού FSA (ALERGIA) 1071 sec (17m 51sec) Υπολογισμός του support(χ) για κάθε συνδυασμό μοτίβων sec (3h 10m 13sec) Σύνολο sec (7h 20m) Για κάθε οικογένεια ή συνδυασμό οικογενειών Υπολογισμός Train και Test Sets Δημιουργία τοπικού PTA Δημιουργία τοπικού FSA (ALERGIA) Υπολογισμός του support(χ) για κάθε συνδυασμό μοτίβων < 1 sec 0.28*[Πλήθος πρωτεϊνών] sec < 1 sec 0.1*[Πλήθος συνδυασμών] sec Έλεγχος κανόνων 0.3*[Πλήθος πρωτεϊνών] sec

70 Κεφάλαιο 5. Συμπεράσματα και Μελλοντικές Προεκτάσεις 5.1. Συμπεράσματα Από τα παραπάνω φαίνεται καθαρά ότι ο αλγόριθμος είναι εξαιρετικά ταχύς, ιδιαίτερα εάν δε λάβουμε υπόψη το πρώτο τμήμα του, το οποίο αρκεί να εκτελεστεί μία φορά. Το πρόβλημα όμως εμφανίζεται όταν ο αλγόριθμος προσπαθήσει να δημιουργήσει πολύπλοκους κανόνες. Για παράδειγμα, εάν δημιουργούνται απλοί κανόνες (με ένα μοτίβο και μία οικογένεια), τότε απαιτούνται 0.1*(συνδυασμούς των 1185 ανά 1) seconds, δηλαδή περίπου 2 λεπτά. Για λίγο πιο πολύπλοκους κανόνες (με δύο μοτίβα και μία οικογένεια) ο χρόνος εκτοξεύεται στα 0.1*(συνδυασμούς των 1185 ανά 1 + συνδυασμούς των 1185 ανά 2), δηλαδή περίπου 20 ώρες. Είναι φανερό ότι κάτι τέτοιο είναι μάλλον απαγορευτικό για τον αλγόριθμο. Από την άλλη πλευρά, ο αλγόριθμος παρουσιάζει εξαιρετικά μεγάλες επιδόσεις, ακόμα και με πολύ λίγα στοιχεία. Κατά τη διάρκεια των πειραμάτων, δεν ήταν λίγες οι φορές που το πραγματικό ποσοστό επιτυχίας έφτασε πολύ κοντά στο 100% με το ιδανικό να είναι 100%, χρησιμοποιώντας τυχαία σύνολα εκπαίδευσης. Αυτά τα αποτελέσματα οδηγούν στην εξής υπόθεση: Καθώς ο αλγόριθμος απλά γενικεύει μία μορφή η οποία του δίνεται ως είσοδος, θα ήταν ίσως δυνατόν, με τη βοήθεια ειδικών, να δοθεί ως είσοδος ένα πολύ μικρό πλήθος πρωτεϊνών, οι οποίες όμως να είναι χαρακτηριστικές για κάθε οικογένεια. Με αυτό τον τρόπο οι επιδόσεις του αλγορίθμου μπορεί να είναι πολύ μεγαλύτερες.

71 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 71 Ένα άλλο σημαντικό πλεονέκτημα αυτής της μεθόδου είναι η συμπίεση των δεδομένων που επιτυγχάνεται. Με τη χρήση μερικών εκατοντάδων κανόνων έγινε δυνατή η πιστή και ακριβής περιγραφή χιλιάδων πρωτεϊνικών αλυσίδων. Ένα τέτοιο αποτέλεσμα είναι ιδιαίτερα επιθυμητό, εάν ληφθεί υπόψιν η πληθώρα δεδομένων που υπάρχει και δημιουργείται καθημερινά, κυρίως σε επιστημονικούς κλάδους όπως ο κλάδος της βιολογίας Μελλοντικές Επεκτάσεις Βελτιώσεις Το σύστημα επιδέχεται επεκτάσεις τόσο από αλγοριθμικής πλευράς, όσο και από πλευράς υλοποίησης. Καταρχήν είναι αναγκαία η εφαρμογή του αλγορίθμου με στόχο την κατασκευή πιο πολύπλοκων κανόνων, με τουλάχιστον 2 οικογένειες στο δεξί μέρος και 5 μοτίβα στο αριστερό. Με αυτό τον τρόπο θα βελτιωθεί σημαντικά η ακρίβεια των κανόνων που θα δημιουργηθούν, καθώς αυτοί θα ανταποκρίνονται σε μια πιο πιστή αναπαράσταση της πραγματικότητας. Από πλευράς υλοποίησης, το σύστημα θα μπορούσε να κατασκευαστεί εξ ολοκλήρου ως εφαρμογή διαδικτύου, με τη χρήση JSP σελίδων, με στόχο την βελτίωση της φιλικότητας προς τον χρήστη. Μία άλλη επέκταση θα μπορούσε να είναι η αυτοματοποιημένη σύνδεση του συστήματος, τόσο με τον Application Server όσο και με τον Database Server, κάτι που αυτή τη στιγμή πρέπει να γίνεται χειροκίνητα. Τέλος, μία σημαντική εξέλιξη του αλγορίθμου θα είναι η εφαρμογή του αλγορίθμου σε Πλέγμα Υπολογιστών. Απαραίτητη προϋπόθεση σε αυτή την περίπτωση είναι αφενός η ανάλυση του αλγορίθμου σε παράλληλες διεργασίες, και αφετέρου η υλοποίησή του με χρήση πρωτοκόλλων Πλέγματος Υπολογιστών. Με αυτόν τον τρόπο θα είναι δυνατή τόσο η πλήρης αυτοματοποίηση όλων των διαδικασιών, όσο και η υποστήριξη εξαιρετικά πολύπλοκων κανόνων.

72 Βιβλιογραφία [ACF + 00] T.K. Attwood, M.D.R. Croning, D.R. Flower, A.P. Lewis, J.E. Mabey, P. Scordis, J. Selley, W. Wright, PRINT-S: the database formerly known as PRINTS, Nucleic Acids Res. 28, pp , [BAI 99] A. Bairoch, Prosite: A dictionary of protein sites and patterns User Manual, Swiss Institute of Bioinformatics, Geneva, [BBD + 00] A. Bateman, E. Birney, R. Durbin, S.R. Eddy, K.L. Howem, E.L.L. Sonnhammer, The Pfam protein families database, Nucleic Acids Res. 28, pp , [BIS 95] C. Bishop, Neural Networks for Pattern Recognition, Oxford University Press, New York, [BO 01] A.D. Baxevanis, B.F.F.Ouellette, Bioinformatics, Wiley Interscience, New York, [CO 94] R.C. Carrasco, J. Oncina, Learning stochastic regular grammar by means of a state merging method, Proc. The Second International Colloquium on Grammatical Inference (ICGI 94), Alicante, Spain, Lecture Notes in Artificial Intelligence LNAI 862, pp , Springer Verlag, [DH 73] R. Duad, P. Hart, Pattern Classification and Scene Analysis, Wiley, New York, [EN 00] R. Elmasri, S.B. Navathe, Fundamentals of Database Systems, Addison Wesley, Massachusetts, [FPB + 02] L. Falquet, M. Pagni, P. Bucher, N. Hulo, C.J. Sigrist, K. Hofmann, A. Bairoch, The PROSITE database, its status in 2002, Nucleic Acids Res. 30, pp , [GJ 01] C. Gibas, P. Jambeck, Developing Bioinformatics Computer Skills, O Reilly, 2001 [HAD + 03] G. Hatzidamianos, S. Diplaris, I. Athanasiadis, P.A. Mitkas, GenMiner: a Data Mining Tool for Protein Analysis, 9 th Panhellenic Conference on Informatics, pp , November 21 23, 2003, Thessaloniki, Greece.

73 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 73 [HIN 01] P. Hingston, Using Finite State Automata for Sequence Mining, Twenty Fifth Australasian Computer Science Conference, Melbourne, Australia, , [LAF 03] R. Lafore, Data Structures and Algorithms in Java, Sams, Indianapolis, [QUI 92] J.R. Quinlan, Programs for Machine Learning, Morgan Kaufmann, San Mateo, CA, [WF 00] I.H. Witten, E. Frank, Data Mining, Morgan Kaufmann, London, [WWH + 01] D. Wang, X. Wang. V. Honavar, D.I. Dobbs, Data Driven Generation of Decision Trees for Motif Based Assignment of Protein Sequences to Functional Families, Iowa State University, Ames, IA, [ΖΖ 02] C. Zhang, S. Zhang, Association Rule Mining, Springer, [ΝΤΕ 01] Α. Ντελόπουλος, Θεωρία Υπολογισμών και Αλγορίθμων, Πανεπιστημιακές Σημειώσεις ΑΠΘ, Θεσσαλονίκη, [URL 1] [URL 2] [URL 3] [URL 4] [URL 5] [URL 6] [URL 7] [URL 8]

74 Παραρτήματα

75 Παράρτημα Α: Οδηγός Χρήσης του Εικόνες Διεπαφών Το πρώτο βήμα πριν τη χρήση του, είναι η εκκίνηση του SQL Server και του JBoss, καθώς και η ανάπτυξη των EJB modules στον JBoss. Έτσι, αρχικά η οθόνη του JBoss πρέπει να έχει την παρακάτω μορφή: Εικόνα Α.1: Οθόνη JBoss πριν την εκτέλεση του

76 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 76 Η πρώτη οθόνη του συστήματος είναι η ακόλουθη: Εικόνα Α.2: Αρχική οθόνη συστήματος Ο χρήστης έχει τρεις επιλογές: η πρώτη είναι να δημιουργήσει τα βασικά αρχεία για τη σωστή λειτουργία του συστήματος, δηλαδή τα αρχεία που περιέχουν το συνολικό PTA, το συνολικό FSA, τις πιθανότητες των οικογενειών και το support όλων των μοτίβων. Η δεύτερη επιλογή είναι και η ουσιαστική λειτουργία του συστήματος. Δίνεται η δυνατότητα στο χρήστη να εξάγει κανόνες με βάση παραμέτρους που αυτός θέτει. Η τρίτη επιλογή είναι ουσιαστικά η χρήση κανόνων που έχουν ήδη εξαχθεί για την κατηγοριοποίηση άγνωστων πρωτεϊνών. Πατώντας το πρώτο πλήκτρο, εμφανίζεται η εξής οθόνη: Εικόνα Α.3: Οθόνη δημιουργίας βασικών αρχείων

77 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 77 Αριστερά βρίσκονται τα βασικά αρχεία που απαιτεί το σύστημα, μαζί με μία ένδειξη για το αν ήδη υπάρχουν ή όχι. Εάν δεν υπάρχουν, ο χρήστης είναι αναγκασμένος να τα δημιουργήσει ακολουθώντας μία προκαθορισμένη σειρά. Εάν υπάρχουν, μπορεί να δημιουργήσει ξανά κάποια από τα αρχεία, βάζοντας νέες παραμέτρους. Πατώντας το πλήκτρο OK, το σύστημα εμφανίζει στο χρήστη τις τιμές των παραμέτρων για επαλήθευση (Εικόνα Α.4), και στη συνέχεια, εάν οι ρυθμίσεις είναι αποδεκτές, το σύστημα δημιουργεί συγκεκριμένα αρχεία (Εικόνα Α.5). Εικόνα Α.4: Οθόνη δημιουργίας βασικών αρχείων Επαλήθευση παραμέτρων

78 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 78 Εικόνα Α.5: Οθόνη δημιουργίας βασικών αρχείων Έξοδος συστήματος Έχοντας δημιουργήσει πλέον τα βασικά αρχεία, το επόμενο βήμα είναι η εξαγωγή κανόνων, πατώντας το δεύτερο πλήκτρο («Create Rules»). Στα αριστερά της οθόνης (Εικόνα Α.6) βρίσκεται μία λίστα με όλες τις οικογένειες πρωτεϊνών που βρίσκονται στη βάση. Ο χρήστης μπορεί να επιλέξει κάποιες ή και όλες τις οικογένειες, και στη συνέχεια να δημιουργήσει κανόνες με βάση τις παραμέτρους που αυτός θέτει στα στοιχεία ελέγχου στα δεξιά της οθόνης. Μετά την επιλογή των παραμέτρων, το σύστημα ζητά από το χρήστη να δώσει κάποιο όνομα στο αρχείο εξόδου που θα προκύψει. Το αρχείο αυτό περιέχει τους κανόνες καθώς και πληροφορίες για τις παραμέτρους που δημιούργησαν τους κανόνες. Μετά την επιλογή κάποιου αρχείου, το σύστημα εμφανίζει για επαλήθευση τις τιμές των παραμέτρων που επιλέχθηκαν (Εικόνα Α.7) και στη συνέχεια αρχίζει η εκπαίδευση του συστήματος.

79 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 79 Εικόνα Α.6: Οθόνη δημιουργίας κανόνων Εικόνα Α.7: Οθόνη δημιουργίας κανόνων Επαλήθευση παραμέτρων

80 Ανάπτυξη FSA για εξαγωγή ισχυρών κανόνων συσχέτισης 80 Μετά την εκπαίδευση του συστήματος, παρουσιάζονται στο χρήστη οι κανόνες που δημιουργήθηκαν, καθώς και το ποσοστό επιτυχίας που είχαν κατά τη διάρκεια του ελέγχου. Εικόνα Α.8: Οθόνη δημιουργίας κανόνων Ποσοστό επιτυχίας κανόνων Η τελευταία δυνατότητα που παρέχεται στο χρήστη είναι η δυνατότητα να χρησιμοποιήσει απευθείας τους κανόνες που δημιουργήθηκαν, για την κατηγοριοποίηση άγνωστων πρωτεϊνών, με τη βοήθεια του τρίτου πλήκτρου («Use Rules»). Η νέα οθόνη που παρουσιάζεται στον χρήστη είναι η ακόλουθη:

K15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων

K15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων K15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων Γιάννης Λιαπέρδος TEI Πελοποννήσου Σχολή Τεχνολογικών Εφαρμογών Τμήμα Μηχανικών Πληροφορικής ΤΕ Η έννοια του συνδυαστικού

Διαβάστε περισσότερα

Ανάλυση Δεδομένων με χρήση του Στατιστικού Πακέτου R

Ανάλυση Δεδομένων με χρήση του Στατιστικού Πακέτου R Ανάλυση Δεδομένων με χρήση του Στατιστικού Πακέτου R, Επίκουρος Καθηγητής, Τομέας Μαθηματικών, Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών, Εθνικό Μετσόβιο Πολυτεχνείο. Περιεχόμενα Εισαγωγή στο

Διαβάστε περισσότερα

5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ

5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ 5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ 5.1 Εισαγωγή στους αλγορίθμους 5.1.1 Εισαγωγή και ορισμοί Αλγόριθμος (algorithm) είναι ένα πεπερασμένο σύνολο εντολών οι οποίες εκτελούν κάποιο ιδιαίτερο έργο. Κάθε αλγόριθμος

Διαβάστε περισσότερα

Τεχνητή Νοημοσύνη. 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος. http://www.aueb.gr/users/ion/

Τεχνητή Νοημοσύνη. 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος. http://www.aueb.gr/users/ion/ Τεχνητή Νοημοσύνη 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται στα βιβλία: Τεχνητή Νοημοσύνη των Βλαχάβα κ.ά., 3η έκδοση, Β. Γκιούρδας

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΕΠΛ 450 ΥΠΟΛΟΓΙΣΤΙΚΗ ΒΙΟΛΟΓΙΑ. Παύλος Αντωνίου

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΕΠΛ 450 ΥΠΟΛΟΓΙΣΤΙΚΗ ΒΙΟΛΟΓΙΑ. Παύλος Αντωνίου ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΕΠΛ 450 ΥΠΟΛΟΓΙΣΤΙΚΗ ΒΙΟΛΟΓΙΑ Παύλος Αντωνίου Με μια ματιά: Εισαγωγή στη Βιολογία Ευθυγράμμιση Ακολουθιών Αναζήτηση ομοίων ακολουθιών από βάσεις δεδομενων Φυλογενετική πρόβλεψη Πρόβλεψη

Διαβάστε περισσότερα

Δομές Δεδομένων και Αλγόριθμοι

Δομές Δεδομένων και Αλγόριθμοι Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου Χειμερινό Εξάμηνο 2014-2015 Παρουσίαση 20 Huffman codes 1 / 12 Κωδικοποίηση σταθερού μήκους Αν χρησιμοποιηθεί κωδικοποίηση σταθερού μήκους δηλαδή

Διαβάστε περισσότερα

3.4.2 Ο Συντελεστής Συσχέτισης τ Του Kendall

3.4.2 Ο Συντελεστής Συσχέτισης τ Του Kendall 3..2 Ο Συντελεστής Συσχέτισης τ Του Kendall Ο συντελεστής συχέτισης τ του Kendall μοιάζει με τον συντελεστή ρ του Spearman ως προς το ότι υπολογίζεται με βάση την τάξη μεγέθους των παρατηρήσεων και όχι

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 18. 18 Μηχανική Μάθηση

ΚΕΦΑΛΑΙΟ 18. 18 Μηχανική Μάθηση ΚΕΦΑΛΑΙΟ 18 18 Μηχανική Μάθηση Ένα φυσικό ή τεχνητό σύστηµα επεξεργασίας πληροφορίας συµπεριλαµβανοµένων εκείνων µε δυνατότητες αντίληψης, µάθησης, συλλογισµού, λήψης απόφασης, επικοινωνίας και δράσης

Διαβάστε περισσότερα

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ και ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ 2.1 Να δοθεί ο ορισμός

Διαβάστε περισσότερα

Η δυαδική σχέση M ( «παράγει σε ένα βήμα» ) ορίζεται ως εξής: (q, w) M (q, w ), αν και μόνο αν w = σw, για κάποιο σ Σ

Η δυαδική σχέση M ( «παράγει σε ένα βήμα» ) ορίζεται ως εξής: (q, w) M (q, w ), αν και μόνο αν w = σw, για κάποιο σ Σ Πεπερασμένα Αυτόματα (ΠΑ) Τα πεπερασμένα αυτόματα είναι οι απλούστερες «υπολογιστικές μηχανές». Δεν έχουν μνήμη, μόνο μία εσωτερική μονάδα με πεπερασμένο αριθμό καταστάσεων. Διαβάζουν τη συμβολοσειρά εισόδου

Διαβάστε περισσότερα

Αυτόματα. Παράδειγμα: πωλητής καφέ (iii) Παράδειγμα: πωλητής καφέ (iv) Εισαγωγή στην Επιστήμη των Υπολογιστών 6

Αυτόματα. Παράδειγμα: πωλητής καφέ (iii) Παράδειγμα: πωλητής καφέ (iv) Εισαγωγή στην Επιστήμη των Υπολογιστών 6 Εισαγωγή στην Επιστήμη των Υπολογιστών 3η ενότητα: Αυτόματα και Τυπικές Γραμματικές http://www.corelab.ece.ntua.gr/courses/ Αυτόματα Τρόπος κωδικοποίησης αλγορίθμων. Τρόπος περιγραφής συστημάτων πεπερασμένων

Διαβάστε περισσότερα

ιδάσκων: ηµήτρης Ζεϊναλιπούρ

ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 1.3-1.4: Εισαγωγή Στον Προγραµµατισµό ( ιάλεξη 2) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Περιεχόµενα Εισαγωγικές Έννοιες - Ορισµοί Ο κύκλος ανάπτυξης προγράµµατος Παραδείγµατα Πότε χρησιµοποιούµε υπολογιστή?

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 2 ΔΙΑΤΑΞΕΙΣ, ΜΕΤΑΘΕΣΕΙΣ, ΣΥΝΔΥΑΣΜΟΙ

ΚΕΦΑΛΑΙΟ 2 ΔΙΑΤΑΞΕΙΣ, ΜΕΤΑΘΕΣΕΙΣ, ΣΥΝΔΥΑΣΜΟΙ ΚΕΦΑΛΑΙΟ ΔΙΑΤΑΞΕΙΣ ΜΕΤΑΘΕΣΕΙΣ ΣΥΝΔΥΑΣΜΟΙ Εισαγωγή. Οι σχηματισμοί που προκύπτουν με την επιλογή ενός συγκεκριμένου αριθμού στοιχείων από το ίδιο σύνολο καλούνται διατάξεις αν μας ενδιαφέρει η σειρά καταγραφή

Διαβάστε περισσότερα

ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΔΙΑΚΡΙΤΩΝ ΕΝΑΛΛΑΚΤΙΚΩΝ ΣΕ ΠΡΟΒΛΗΜΑΤΑ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΣΥΝΘΕΣΗΣ ΔΙΕΡΓΑΣΙΩΝ

ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΔΙΑΚΡΙΤΩΝ ΕΝΑΛΛΑΚΤΙΚΩΝ ΣΕ ΠΡΟΒΛΗΜΑΤΑ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΣΥΝΘΕΣΗΣ ΔΙΕΡΓΑΣΙΩΝ ΜΕΡΟΣ ΙΙ ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΔΙΑΚΡΙΤΩΝ ΕΝΑΛΛΑΚΤΙΚΩΝ ΣΕ ΠΡΟΒΛΗΜΑΤΑ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΣΥΝΘΕΣΗΣ ΔΙΕΡΓΑΣΙΩΝ 36 ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΔΙΑΚΡΙΤΩΝ ΕΝΑΛΛΑΚΤΙΚΩΝ ΣΕ ΠΡΟΒΛΗΜΑΤΑ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΣΥΝΘΕΣΗΣ ΔΙΕΡΓΑΣΙΩΝ Πολλές από τις αποφάσεις

Διαβάστε περισσότερα

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Διακριτά Μαθηματικά. Ενότητα 4: Εισαγωγή / Σύνολα

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Διακριτά Μαθηματικά. Ενότητα 4: Εισαγωγή / Σύνολα Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Διακριτά Μαθηματικά Ενότητα 4: Εισαγωγή / Σύνολα Αν. Καθηγητής Κ. Στεργίου e-mail: kstergiou@uowm.gr Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες

Διαβάστε περισσότερα

Υπερπροσαρμογή (Overfitting) (1)

Υπερπροσαρμογή (Overfitting) (1) Αλγόριθμος C4.5 Αποφυγή υπερπροσαρμογής (overfitting) Reduced error pruning Rule post-pruning Χειρισμός χαρακτηριστικών συνεχών τιμών Επιλογή κατάλληλης μετρικής για την επιλογή των χαρακτηριστικών διάσπασης

Διαβάστε περισσότερα

1.1 ΔΕΙΓΜΑΤΙΚΟΙ ΧΩΡΟΙ ΕΝΔΕΧΟΜΕΝΑ

1.1 ΔΕΙΓΜΑΤΙΚΟΙ ΧΩΡΟΙ ΕΝΔΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ : ΠΙΘΑΝΟΤΗΤΕΣ. ΔΕΙΓΜΑΤΙΚΟΙ ΧΩΡΟΙ ΕΝΔΕΧΟΜΕΝΑ Αιτιοκρατικό πείραμα ονομάζουμε κάθε πείραμα για το οποίο, όταν ξέρουμε τις συνθήκες κάτω από τις οποίες πραγματοποιείται, μπορούμε να προβλέψουμε με

Διαβάστε περισσότερα

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client ΕΣΔ 516 Τεχνολογίες Διαδικτύου Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client Περιεχόμενα Περιεχόμενα Javascript και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 6 ΟΥ ΚΕΦΑΛΑΙΟΥ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ 6.1 Τι ονοµάζουµε πρόγραµµα υπολογιστή; Ένα πρόγραµµα

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΣΤΑΤΙΣΤΙΚΗ ΤΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ. Κεφάλαιο 6. Πιθανότητες

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΣΤΑΤΙΣΤΙΚΗ ΤΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ. Κεφάλαιο 6. Πιθανότητες ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΠΑΤΡΑΣ Εργαστήριο Λήψης Αποφάσεων & Επιχειρησιακού Προγραμματισμού Καθηγητής Ι. Μητρόπουλος ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΣΤΑΤΙΣΤΙΚΗ ΤΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ

Διαβάστε περισσότερα

4.3. Γραµµικοί ταξινοµητές

4.3. Γραµµικοί ταξινοµητές Γραµµικοί ταξινοµητές Γραµµικός ταξινοµητής είναι ένα σύστηµα ταξινόµησης που χρησιµοποιεί γραµµικές διακριτικές συναρτήσεις Οι ταξινοµητές αυτοί αναπαρίστανται συχνά µε οµάδες κόµβων εντός των οποίων

Διαβάστε περισσότερα

ΟΜΑΔΑ Λ. Αναστασίου Κωνσταντίνος Δεληγιάννη Ισαβέλλα Ζωγοπούλου Άννα Κουκάκης Γιώργος Σταθάκη Αρετιάννα

ΟΜΑΔΑ Λ. Αναστασίου Κωνσταντίνος Δεληγιάννη Ισαβέλλα Ζωγοπούλου Άννα Κουκάκης Γιώργος Σταθάκη Αρετιάννα ΟΜΑΔΑ Λ Αναστασίου Κωνσταντίνος Δεληγιάννη Ισαβέλλα Ζωγοπούλου Άννα Κουκάκης Γιώργος Σταθάκη Αρετιάννα ΒΙΟΠΛΗΡΟΦΟΡΙΚΗ Τι είναι η βιοπληροφορική; Αποκαλείται ο επιστημονικός κλάδος ο οποίος προέκυψε από

Διαβάστε περισσότερα

ΠΡΟΒΛΗΜΑΤΑ ΜΕΤΑΦΟΡΑΣ

ΠΡΟΒΛΗΜΑΤΑ ΜΕΤΑΦΟΡΑΣ (Transportation Problems) Βασίλης Κώστογλου E-mail: vkostogl@it.teithe.gr URL: www.it.teithe.gr/~vkostogl Περιγραφή Ένα πρόβλημα μεταφοράς ασχολείται με το πρόβλημα του προσδιορισμού του καλύτερου δυνατού

Διαβάστε περισσότερα

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Δρ. Κόννης Γιώργος Πανεπιστήμιο Κύπρου - Τμήμα Πληροφορικής Προγραμματισμός Στόχοι 1 Να περιγράψουμε τις έννοιες του Υπολογιστικού Προβλήματος και του Προγράμματος/Αλγορίθμου

Διαβάστε περισσότερα

Πληρουορική Γ Γσμμασίοσ

Πληρουορική Γ Γσμμασίοσ Πληρουορική Γ Γσμμασίοσ Προγραμματισμός και Αλγόριθμοι Από το και τημ Χελώμα στημ Ευριπίδης Βραχνός http://evripides.mysch.gr/ 2014 2015 1 Προγραμματισμός Ζάννειο Πρότυπο Πειραματικό Γυμνάσιο Πειραιά Ενότητα:

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 3ο ΤΥΧΑΙΟΙ ΑΡΙΘΜΟΙ ΕΛΕΓΧΟΣ ΤΥΧΑΙΟΤΗΤΑΣ

ΚΕΦΑΛΑΙΟ 3ο ΤΥΧΑΙΟΙ ΑΡΙΘΜΟΙ ΕΛΕΓΧΟΣ ΤΥΧΑΙΟΤΗΤΑΣ ΚΕΦΑΛΑΙΟ 3ο ΤΥΧΑΙΟΙ ΑΡΙΘΜΟΙ ΕΛΕΓΧΟΣ ΤΥΧΑΙΟΤΗΤΑΣ 3.1 Τυχαίοι αριθμοί Στην προσομοίωση διακριτών γεγονότων γίνεται χρήση ακολουθίας τυχαίων αριθμών στις περιπτώσεις που απαιτείται η δημιουργία στοχαστικών

Διαβάστε περισσότερα

Θεωρία Υπολογισμού και Πολυπλοκότητα Μαθηματικό Υπόβαθρο

Θεωρία Υπολογισμού και Πολυπλοκότητα Μαθηματικό Υπόβαθρο Θεωρία Υπολογισμού και Πολυπλοκότητα Μαθηματικό Υπόβαθρο Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Σύνολα Συναρτήσεις και Σχέσεις Γραφήματα Λέξεις και Γλώσσες Αποδείξεις ΕΠΛ 211 Θεωρία

Διαβάστε περισσότερα

Μεταγλωττιστές. Δημήτρης Μιχαήλ. Ακ. Έτος 2011-2012. Ανοδικές Μέθοδοι Συντακτικής Ανάλυσης. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Μεταγλωττιστές. Δημήτρης Μιχαήλ. Ακ. Έτος 2011-2012. Ανοδικές Μέθοδοι Συντακτικής Ανάλυσης. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Μεταγλωττιστές Ανοδικές Μέθοδοι Συντακτικής Ανάλυσης Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2011-2012 Ανοδική Κατασκευή Συντακτικού Δέντρου κατασκευή δέντρου

Διαβάστε περισσότερα

Περιεχόμενα. Δομές δεδομένων. Τεχνικές σχεδίασης αλγορίθμων. Εισαγωγή στον προγραμματισμό. Υποπρογράμματα. Επαναληπτικά κριτήρια αξιολόγησης

Περιεχόμενα. Δομές δεδομένων. Τεχνικές σχεδίασης αλγορίθμων. Εισαγωγή στον προγραμματισμό. Υποπρογράμματα. Επαναληπτικά κριτήρια αξιολόγησης Περιεχόμενα Δομές δεδομένων 37. Δομές δεδομένων (θεωρητικά στοιχεία)...11 38. Εισαγωγή στους μονοδιάστατους πίνακες...16 39. Βασικές επεξεργασίες στους μονοδιάστατους πίνακες...25 40. Ασκήσεις στους μονοδιάστατους

Διαβάστε περισσότερα

1 Αριθμητική κινητής υποδιαστολής και σφάλματα στρογγύλευσης

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

Διαβάστε περισσότερα

ο ρόλος των αλγορίθμων στις υπολογιστικές διαδικασίες Παύλος Εφραιμίδης Δομές Δεδομένων και Αλγόριθμοι

ο ρόλος των αλγορίθμων στις υπολογιστικές διαδικασίες Παύλος Εφραιμίδης Δομές Δεδομένων και Αλγόριθμοι Παύλος Εφραιμίδης 1 περιεχόμενα αλγόριθμοι τεχνολογία αλγορίθμων 2 αλγόριθμοι αλγόριθμος: οποιαδήποτε καλά ορισμένη υπολογιστική διαδικασία που δέχεται κάποια τιμή ή κάποιο σύνολο τιμών, και δίνεικάποιατιμήήκάποιοσύνολοτιμώνως

Διαβάστε περισσότερα

Μοντελοποίηση Υπολογισμού. Γραμματικές Πεπερασμένα Αυτόματα Κανονικές Εκφράσεις

Μοντελοποίηση Υπολογισμού. Γραμματικές Πεπερασμένα Αυτόματα Κανονικές Εκφράσεις Μοντελοποίηση Υπολογισμού Γραμματικές Πεπερασμένα Αυτόματα Κανονικές Εκφράσεις Προβλήματα - Υπολογιστές Δεδομένου ενός προβλήματος υπάρχουν 2 σημαντικά ερωτήματα: Μπορεί να επιλυθεί με χρήση υπολογιστή;

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη των υπολογιστών. Λογισμικό Υπολογιστών Κεφάλαιο 8ο Αλγόριθμοι

Εισαγωγή στην επιστήμη των υπολογιστών. Λογισμικό Υπολογιστών Κεφάλαιο 8ο Αλγόριθμοι Εισαγωγή στην επιστήμη των υπολογιστών Λογισμικό Υπολογιστών Κεφάλαιο 8ο Αλγόριθμοι 1 Έννοια Ανεπίσημα, ένας αλγόριθμος είναι μια βήμα προς βήμα μέθοδος για την επίλυση ενός προβλήματος ή την διεκπεραίωση

Διαβάστε περισσότερα

Θεωρία Υπολογισμού και Πολυπλοκότητα

Θεωρία Υπολογισμού και Πολυπλοκότητα Θεωρία Υπολογισμού και Πολυπλοκότητα Κεφάλαιο 10. Μηχανές Turing 20,23 Μαρτίου 2007 Δρ. Παπαδοπούλου Βίκη 1 Μηχανές Turing: Ένα Γενικό Μοντέλο Υπολογισμού Ποια μοντέλα υπολογισμού μπορούν να δεχθούν γλώσσες

Διαβάστε περισσότερα

Βιοπληροφορική Ι. Παντελής Μπάγκος. Παν/µιο Στερεάς Ελλάδας

Βιοπληροφορική Ι. Παντελής Μπάγκος. Παν/µιο Στερεάς Ελλάδας Βιοπληροφορική Ι Παντελής Μπάγκος Παν/µιο Στερεάς Ελλάδας Λαµία 2006 1 Βιοπληροφορική Ι Εισαγωγή: Ορισµός της Βιοπληροφορικής, Υποδιαιρέσεις της Βιοπληροφορικής, Τα είδη των δεδοµένων στη Βιοπληροφορική.

Διαβάστε περισσότερα

I. ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ. math-gr

I. ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ. math-gr I ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ i e ΜΕΡΟΣ Ι ΟΡΙΣΜΟΣ - ΒΑΣΙΚΕΣ ΠΡΑΞΕΙΣ Α Ορισμός Ο ορισμός του συνόλου των Μιγαδικών αριθμών (C) βασίζεται στις εξής παραδοχές: Υπάρχει ένας αριθμός i για τον οποίο ισχύει i Το σύνολο

Διαβάστε περισσότερα

Γεώργιος Φίλιππας 23/8/2015

Γεώργιος Φίλιππας 23/8/2015 MACROWEB Προβλήματα Γεώργιος Φίλιππας 23/8/2015 Παραδείγματα Προβλημάτων. Πως ορίζεται η έννοια πρόβλημα; Από ποιους παράγοντες εξαρτάται η κατανόηση ενός προβλήματος; Τι εννοούμε λέγοντας χώρο ενός προβλήματος;

Διαβάστε περισσότερα

Μάθηση και Γενίκευση. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων

Μάθηση και Γενίκευση. Τεχνητά Νευρωνικά Δίκτυα (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων Μάθηση και Γενίκευση Το Πολυεπίπεδο Perceptron (MultiLayer Perceptron (MLP)) Έστω σύνολο εκπαίδευσης D={(x n,t n )}, n=1,,n. x n =(x n1,, x nd ) T, t n =(t n1,, t np ) T Θα πρέπει το MLP να έχει d νευρώνες

Διαβάστε περισσότερα

2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ

2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ 1) Πότε χρησιμοποιείται η δομή επανάληψης

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΑΚΑ ΦΡΟΝΤΙΣΤΗΡΙΑ ΚΟΛΛΙΝΤΖΑ. Ερωτήσεις πολλαπλής επιλογής. Συντάκτης: Δημήτριος Κρέτσης

ΠΑΝΕΠΙΣΤΗΜΙΑΚΑ ΦΡΟΝΤΙΣΤΗΡΙΑ ΚΟΛΛΙΝΤΖΑ. Ερωτήσεις πολλαπλής επιλογής. Συντάκτης: Δημήτριος Κρέτσης ΠΑΝΕΠΙΣΤΗΜΙΑΚΑ ΦΡΟΝΤΙΣΤΗΡΙΑ ΚΟΛΛΙΝΤΖΑ Ερωτήσεις πολλαπλής επιλογής Συντάκτης: Δημήτριος Κρέτσης 1. Ο κλάδος της περιγραφικής Στατιστικής: α. Ασχολείται με την επεξεργασία των δεδομένων και την ανάλυση

Διαβάστε περισσότερα

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Βήματα προς τη δημιουργία εκτελέσιμου κώδικα

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Βήματα προς τη δημιουργία εκτελέσιμου κώδικα Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Βήματα προς τη δημιουργία εκτελέσιμου κώδικα Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD Βήματα προς τη δημιουργία εκτελέσιμου κώδικα

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ ΘΕΜΑ 1 ο (2.5 µονάδες) ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ Τελικές εξετάσεις 21 Σεπτεµβρίου 2004 ιάρκεια: 3 ώρες Το παρακάτω σύνολο

Διαβάστε περισσότερα

Βιοπληροψορική, συσιημική βιολογία και εξατομικευμένη θεραπεία

Βιοπληροψορική, συσιημική βιολογία και εξατομικευμένη θεραπεία Βιοπληροψορική, συσιημική βιολογία και εξατομικευμένη θεραπεία Φραγκίσκος Κολίσης Καθηγητής Βιοτεχνολογίας, Σχολή Χημικών Μηχανικών ΕΜΠ, Διευθυντής Ινστιτούτου Βιολογικών Ερευνών και Βιοτεχνολογίας, EIE

Διαβάστε περισσότερα

Από το Γυμνάσιο στο Λύκειο... 7. 3. Δειγματικός χώρος Ενδεχόμενα... 42 Εύρεση δειγματικού χώρου... 46

Από το Γυμνάσιο στο Λύκειο... 7. 3. Δειγματικός χώρος Ενδεχόμενα... 42 Εύρεση δειγματικού χώρου... 46 ΠEΡΙΕΧΟΜΕΝΑ Από το Γυμνάσιο στο Λύκειο................................................ 7 1. Το Λεξιλόγιο της Λογικής.............................................. 11. Σύνολα..............................................................

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΣΧΟΛΗ ΟΙΚΟΝΟΜΙΑΣ ΔΙΟΙΚΗΣΗΣ και ΠΛΗΡΟΦΟΡΙΚΗΣ. ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ και ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΟΔΗΓΟΣ ΜΕΤΑΒΑΤΙΚΩΝ ΔΙΑΤΑΞΕΩΝ 2014 2015

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΣΧΟΛΗ ΟΙΚΟΝΟΜΙΑΣ ΔΙΟΙΚΗΣΗΣ και ΠΛΗΡΟΦΟΡΙΚΗΣ. ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ και ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΟΔΗΓΟΣ ΜΕΤΑΒΑΤΙΚΩΝ ΔΙΑΤΑΞΕΩΝ 2014 2015 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΣΧΟΛΗ ΟΙΚΟΝΟΜΙΑΣ ΔΙΟΙΚΗΣΗΣ και ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ και ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΟΔΗΓΟΣ ΜΕΤΑΒΑΤΙΚΩΝ ΔΙΑΤΑΞΕΩΝ 2014 2015 Επιτροπή προπτυχιακών σπουδών: Κ. Βασιλάκης Κ. Γιαννόπουλος

Διαβάστε περισσότερα

Δυναμικά Πολυεπίπεδα Ευρετήρια (Β-δένδρα) Μ.Χατζόπουλος 1

Δυναμικά Πολυεπίπεδα Ευρετήρια (Β-δένδρα) Μ.Χατζόπουλος 1 Δυναμικά Πολυεπίπεδα Ευρετήρια (Β-δένδρα) Μ.Χατζόπουλος 1 Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ.Χατζόπουλος 2 Δένδρο αναζήτησης είναι ένας ειδικός τύπος δένδρου που χρησιμοποιείται για να καθοδηγήσει την αναζήτηση μιας

Διαβάστε περισσότερα

Μέρος Β /Στατιστική. Μέρος Β. Στατιστική. Γεωπονικό Πανεπιστήμιο Αθηνών Εργαστήριο Μαθηματικών&Στατιστικής/Γ. Παπαδόπουλος (www.aua.

Μέρος Β /Στατιστική. Μέρος Β. Στατιστική. Γεωπονικό Πανεπιστήμιο Αθηνών Εργαστήριο Μαθηματικών&Στατιστικής/Γ. Παπαδόπουλος (www.aua. Μέρος Β /Στατιστική Μέρος Β Στατιστική Γεωπονικό Πανεπιστήμιο Αθηνών Εργαστήριο Μαθηματικών&Στατιστικής/Γ. Παπαδόπουλος (www.aua.gr/gpapadopoulos) Από τις Πιθανότητες στη Στατιστική Στα προηγούμενα, στο

Διαβάστε περισσότερα

ΑΣΚΗΣΕΙΣ ΠΙΘΑΝΟΤΗΤΩΝ του Παν. Λ. Θεοδωρόπουλου 0

ΑΣΚΗΣΕΙΣ ΠΙΘΑΝΟΤΗΤΩΝ του Παν. Λ. Θεοδωρόπουλου 0 ΑΣΚΗΣΕΙΣ ΠΙΘΑΝΟΤΗΤΩΝ του Παν. Λ. Θεοδωρόπουλου 0 Η Θεωρία Πιθανοτήτων είναι ένας σχετικά νέος κλάδος των Μαθηματικών, ο οποίος παρουσιάζει πολλά ιδιαίτερα χαρακτηριστικά στοιχεία. Επειδή η ιδιαιτερότητα

Διαβάστε περισσότερα

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL)

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) Pascal- Εισαγωγή Η έννοια του προγράμματος Η επίλυση ενός προβλήματος με τον υπολογιστή περιλαμβάνει, όπως έχει ήδη αναφερθεί, τρία εξίσου

Διαβάστε περισσότερα

ΤΟΠΟΓΡΑΦΙΚΑ ΔΙΚΤΥΑ ΚΑΙ ΥΠΟΛΟΓΙΣΜΟΙ ΑΝΑΣΚΟΠΗΣΗ ΘΕΩΡΙΑΣ ΣΥΝΟΡΘΩΣΕΩΝ

ΤΟΠΟΓΡΑΦΙΚΑ ΔΙΚΤΥΑ ΚΑΙ ΥΠΟΛΟΓΙΣΜΟΙ ΑΝΑΣΚΟΠΗΣΗ ΘΕΩΡΙΑΣ ΣΥΝΟΡΘΩΣΕΩΝ ΤΟΠΟΓΡΑΦΙΚΑ ΔΙΚΤΥΑ ΚΑΙ ΥΠΟΛΟΓΙΣΜΟΙ ΑΝΑΣΚΟΠΗΣΗ ΘΕΩΡΙΑΣ ΣΥΝΟΡΘΩΣΕΩΝ Βασίλης Δ. Ανδριτσάνος Δρ. Αγρονόμος - Τοπογράφος Μηχανικός ΑΠΘ Επίκουρος Καθηγητής ΤΕΙ Αθήνας 3ο εξάμηνο http://eclass.teiath.gr Παρουσιάσεις,

Διαβάστε περισσότερα

ΜΑΘΗΜΑΤΙΚΑ Θετικής & Τεχνολογικής Κατεύθυνσης Β ΜΕΡΟΣ (ΑΝΑΛΥΣΗ) ΚΕΦ 1 ο : Όριο Συνέχεια Συνάρτησης

ΜΑΘΗΜΑΤΙΚΑ Θετικής & Τεχνολογικής Κατεύθυνσης Β ΜΕΡΟΣ (ΑΝΑΛΥΣΗ) ΚΕΦ 1 ο : Όριο Συνέχεια Συνάρτησης ΜΑΘΗΜΑΤΙΚΑ Θετικής & Τεχνολογικής Κατεύθυνσης Β ΜΕΡΟΣ (ΑΝΑΛΥΣΗ) ΚΕΦ ο : Όριο Συνέχεια Συνάρτησης Φυλλάδιο Φυλλάδι555 4 ο ο.α) ΕΝΝΟΙΑ ΣΥΝΑΡΤΗΣΗΣ - ΓΡΑΦΙΚΗ ΠΑΡΑΣΤΑΣΗ.α) ΕΝΝΟΙΑ ΣΥΝΑΡΤΗΣΗΣ - ΓΡΑΦΙΚΗ ΠΑΡΑΣΤΑΣΗ

Διαβάστε περισσότερα

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της;

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της; 1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες (μορφές) της; Η δομή επανάληψης χρησιμοποιείται όταν μια σειρά εντολών πρέπει να εκτελεστεί σε ένα σύνολο περιπτώσεων, που έχουν κάτι

Διαβάστε περισσότερα

Μεθοδολογίες Αξιοποίησης Δεδομένων

Μεθοδολογίες Αξιοποίησης Δεδομένων Μεθοδολογίες Αξιοποίησης Δεδομένων Βλάχος Σ. Ιωάννης Λέκτορας 407/80, Ιατρικής Σχολής Πανεπιστημίου Αθηνών Εργαστήριο Πειραματικής Χειρουργικής και Χειρουργικής Ερεύνης «Ν.Σ. Σ Χρηστέας» Στάδια Αξιοποίησης

Διαβάστε περισσότερα

ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ ΔΕΟ 13 ΠΟΣΟΤΙΚΕΣ ΜΕΘΟΔΟΙ 3 η ΓΡΑΠΤΗ ΕΡΓΑΣΙΑ ΣΤΑΤΙΣΤΙΚΗ ΘΕΜΑΤΑ

ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ ΔΕΟ 13 ΠΟΣΟΤΙΚΕΣ ΜΕΘΟΔΟΙ 3 η ΓΡΑΠΤΗ ΕΡΓΑΣΙΑ ΣΤΑΤΙΣΤΙΚΗ ΘΕΜΑΤΑ ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ ΔΕΟ 13 ΠΟΣΟΤΙΚΕΣ ΜΕΘΟΔΟΙ 3 η ΓΡΑΠΤΗ ΕΡΓΑΣΙΑ ΣΤΑΤΙΣΤΙΚΗ ΘΕΜΑΤΑ ΘΕΜΑ 1 ο Τα δεδομένα της στήλης Grade (Αρχείο Excel, Φύλλο Ask1) αναφέρονται στη βαθμολογία 63 φοιτητών που έλαβαν μέρος σε

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ Η μελέτη διαφόρων στοχαστικών φαινομένων μπορεί γενικά να γίνει χρησιμοποιώντας

ΕΙΣΑΓΩΓΗ Η μελέτη διαφόρων στοχαστικών φαινομένων μπορεί γενικά να γίνει χρησιμοποιώντας ΕΙΣΑΓΩΓΗ Η μελέτη διαφόρων στοχαστικών φαινομένων μπορεί γενικά να γίνει χρησιμοποιώντας κυρίως τρεις μεθόδους:. Αναλυτικές Μέθοδοι: πραγματοποιείται κατάλληλη μαθηματική μοντελοποίηση του στοχαστικού

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 1ο 3ο. ΚΕΦΑΛΑΙΟ 5ο 6ο. ΚΕΦΑΛΑΙΟ 7ο. Δομημένος Προγραμματισμός - Γενικές Ασκήσεις Επανάληψης

ΚΕΦΑΛΑΙΟ 1ο 3ο. ΚΕΦΑΛΑΙΟ 5ο 6ο. ΚΕΦΑΛΑΙΟ 7ο. Δομημένος Προγραμματισμός - Γενικές Ασκήσεις Επανάληψης ΚΕΦΑΛΑΙΟ 1ο 3ο 1. Συμπληρώστε τα κενά με τη λέξη που λείπει. α. Ένα πρόβλημα το χωρίζουμε σε άλλα απλούστερα, όταν είναι ή όταν έχει τρόπο επίλυσης. β. Η επίλυση ενός προβλήματος προϋποθέτει την του. γ.

Διαβάστε περισσότερα

Φροντιστήριο 9 Λύσεις

Φροντιστήριο 9 Λύσεις Άσκηση 1 Φροντιστήριο 9 Λύσεις Να κατασκευάσετε μια μηχανή Turing με δύο ταινίες η οποία να αποδέχεται στην πρώτη της ταινία μια οποιαδήποτε λέξη w {a,b} * και να γράφει τη λέξη w R στη δεύτερη της ταινία.

Διαβάστε περισσότερα

ΔΕΣΜΕΥΜΕΝΕΣ Ή ΥΠΟ ΣΥΝΘΗΚΗ ΠΙΘΑΝΟΤΗΤΕΣ

ΔΕΣΜΕΥΜΕΝΕΣ Ή ΥΠΟ ΣΥΝΘΗΚΗ ΠΙΘΑΝΟΤΗΤΕΣ ΔΕΣΜΕΥΜΕΝΕΣ Ή ΥΠΟ ΣΥΝΘΗΚΗ ΠΙΘΑΝΟΤΗΤΕΣ Έστω ότι επιθυμούμε να μελετήσουμε ένα τυχαίο πείραμα με δειγματικό χώρο Ω και έστω η πιθανότητα να συμβεί ένα ενδεχόμενο Α Ω Υπάρχουν περιπτώσεις όπου ενώ δεν γνωρίζουμε

Διαβάστε περισσότερα

Ε π ι μ έ λ ε ι α Κ Ο Λ Λ Α Σ Α Ν Τ Ω Ν Η Σ

Ε π ι μ έ λ ε ι α Κ Ο Λ Λ Α Σ Α Ν Τ Ω Ν Η Σ Ε π ι μ έ λ ε ι α Κ Ο Λ Λ Α Σ Α Ν Τ Ω Ν Η Σ 1 Συναρτήσεις Όταν αναφερόμαστε σε μια συνάρτηση, ουσιαστικά αναφερόμαστε σε μια σχέση ή εξάρτηση. Στα μαθηματικά που θα μας απασχολήσουν, με απλά λόγια, η σχέση

Διαβάστε περισσότερα

2.6 ΟΡΙΑ ΑΝΟΧΗΣ. πληθυσµού µε πιθανότητα τουλάχιστον ίση µε 100(1 α)%. Το. X ονοµάζεται κάτω όριο ανοχής ενώ το πάνω όριο ανοχής.

2.6 ΟΡΙΑ ΑΝΟΧΗΣ. πληθυσµού µε πιθανότητα τουλάχιστον ίση µε 100(1 α)%. Το. X ονοµάζεται κάτω όριο ανοχής ενώ το πάνω όριο ανοχής. 2.6 ΟΡΙΑ ΑΝΟΧΗΣ Το διάστηµα εµπιστοσύνης παρέχει µία εκτίµηση µιας άγνωστης παραµέτρου µε την µορφή διαστήµατος και ένα συγκεκριµένο βαθµό εµπιστοσύνης ότι το διάστηµα αυτό, µε τον τρόπο που κατασκευάσθηκε,

Διαβάστε περισσότερα

Δύο κύριοι τρόποι παρουσίασης δεδομένων. Παράδειγμα

Δύο κύριοι τρόποι παρουσίασης δεδομένων. Παράδειγμα Δύο κύριοι τρόποι παρουσίασης δεδομένων Παράδειγμα Με πίνακες Με διαγράμματα Ονομαστικά δεδομένα Εδώ τα περιγραφικά μέτρα (μέσος, διάμεσος κλπ ) δεν έχουν νόημα Πήραμε ένα δείγμα από 25 άτομα και τα ρωτήσαμε

Διαβάστε περισσότερα

Αριθμητική εύρεση ριζών μη γραμμικών εξισώσεων

Αριθμητική εύρεση ριζών μη γραμμικών εξισώσεων Αριθμητική εύρεση ριζών μη γραμμικών εξισώσεων Με τον όρο μη γραμμικές εξισώσεις εννοούμε εξισώσεις της μορφής: f( ) 0 που προέρχονται από συναρτήσεις f () που είναι μη γραμμικές ως προς. Περιέχουν δηλαδή

Διαβάστε περισσότερα

ΜΕΘΟΔΟΙ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗΣ ΑΠΟΙΚΙΑΣ ΜΥΡΜΗΓΚΙΩΝ ANT COLONY OPTIMIZATION METHODS

ΜΕΘΟΔΟΙ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗΣ ΑΠΟΙΚΙΑΣ ΜΥΡΜΗΓΚΙΩΝ ANT COLONY OPTIMIZATION METHODS ΜΕΘΟΔΟΙ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗΣ ΑΠΟΙΚΙΑΣ ΜΥΡΜΗΓΚΙΩΝ ANT COLONY OPTIMIZATION METHODS Χρήστος Δ. Ταραντίλης Αν. Καθηγητής ΟΠΑ ACO ΑΛΓΟΡΙΘΜΟΙ Η ΛΟΓΙΚΗ ΑΝΑΖΗΤΗΣΗΣ ΛΥΣΕΩΝ ΣΕ ΠΡΟΒΛΗΜΑΤΑ ΙΑΤΑΞΗΣ (1/3) Ε..Ε. ΙΙ Oι ACO

Διαβάστε περισσότερα

Δομές Δεδομένων και Αλγόριθμοι

Δομές Δεδομένων και Αλγόριθμοι Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου Χειμερινό Εξάμηνο 2014-2015 Παρουσίαση 19 Hashing - Κατακερματισμός 1 / 23 Πίνακες απευθείας πρόσβασης (Direct Access Tables) Οι πίνακες απευθείας

Διαβάστε περισσότερα

7ο ΕΡΓΑΣΤΗΡΙΟ AAAABBBBAAAAABBBBBBCCCCCCCCCCCCCCBBABAAAABBBBBBCCCCD

7ο ΕΡΓΑΣΤΗΡΙΟ AAAABBBBAAAAABBBBBBCCCCCCCCCCCCCCBBABAAAABBBBBBCCCCD ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΛΑΜΙΑΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2010 11 Ιστοσελίδα μαθήματος: http://eclass.teilam.gr/di288 1 Συμπίεση

Διαβάστε περισσότερα

ΑΡΧΗ 2ΗΣ ΣΕΛΙΔΑΣ Γ Α... Β

ΑΡΧΗ 2ΗΣ ΣΕΛΙΔΑΣ Γ Α... Β ΘΕΜΑ Α ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ ΠΡΟΣΟΜΟΙΩΣΗ ΑΠΟΛΥΤΗΡΙΩΝ ΕΞΕΤΑΣΕΩΝ Γ' ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΔΕΥΤΕΡΑ 11 ΑΠΡΙΛΙΟΥ 2011 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ

Διαβάστε περισσότερα

J-GANNO. Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β, Φεβ.1998) Χάρης Γεωργίου

J-GANNO. Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β, Φεβ.1998) Χάρης Γεωργίου J-GANNO ΓΕΝΙΚΕΥΜΕΝΟ ΠΑΚΕΤΟ ΥΛΟΠΟΙΗΣΗΣ ΤΕΧΝΗΤΩΝ ΝΕΥΡΩΝΙΚΩΝ ΙΚΤΥΩΝ ΣΤΗ ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ JAVA Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β,

Διαβάστε περισσότερα

Διαδικασιακός Προγραμματισμός

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 12 η Αναζήτηση/Ταξινόμηση Πίνακα Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην

Διαβάστε περισσότερα

ΟΚΙΜΑΣΙΕΣ χ 2 (CHI-SQUARE)

ΟΚΙΜΑΣΙΕΣ χ 2 (CHI-SQUARE) ΔΟΚΙΜΑΣΙΕΣ χ (CI-SQUARE) ΟΚΙΜΑΣΙΕΣ χ (CI-SQUARE). Εισαγωγή Οι στατιστικές δοκιμασίες που μελετήσαμε μέχρι τώρα ονομάζονται παραμετρικές (paramtrc) διότι χαρακτηρίζονται από υποθέσεις σχετικές είτε για

Διαβάστε περισσότερα

ΦΡΟΝΤΙΣΤΗΡΙΑ ΜΕΣΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΠΡΟΟΔΟΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΟΚΤΩΒΡΙΟΥ 2015

ΦΡΟΝΤΙΣΤΗΡΙΑ ΜΕΣΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΠΡΟΟΔΟΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΟΚΤΩΒΡΙΟΥ 2015 ΦΡΟΝΤΙΣΤΗΡΙΑ ΜΕΣΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΠΡΟΟΔΟΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΟΚΤΩΒΡΙΟΥ 2015 Θέμα 1 (Α) Να απαντήσετε στις παρακάτω προτάσεις χαρακτηρίζοντάς τες με το γράμμα Σ αν

Διαβάστε περισσότερα

Αναδρομή. Τι γνωρίζετε για τη δυνατότητα «κλήσης» αλγορίθμων; Τι νόημα έχει;

Αναδρομή. Τι γνωρίζετε για τη δυνατότητα «κλήσης» αλγορίθμων; Τι νόημα έχει; ΜΑΘΗΜΑ 7 Κλήση αλγορίθμου από αλγόριθμο Αναδρομή Σ χ ο λ ι κ ο Β ι β λ ι ο ΥΠΟΚΕΦΑΛΑΙΟ 2.2.7: ΕΝΤΟΛΕΣ ΚΑΙ ΔΟΜΕΣ ΑΛΓΟΡΙΘΜΟΥ ΠΑΡΑΓΡΑΦΟI 2.2.7.5: Κλήση αλγορίθμου από αλγόριθμο 2.2.7.6: Αναδρομή εισαγωγη

Διαβάστε περισσότερα

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων 2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει

Διαβάστε περισσότερα

ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ

ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ Μ. Γρηγοριάδου Ρ. Γόγουλου Ενότητα: Η Διδασκαλία του Προγραμματισμού Περιεχόμενα Παρουσίασης

Διαβάστε περισσότερα

ΚΑΤΑΝΟΜΗ ΜΑΘΗΜΑΤΩΝ ΣΤΑ ΕΞΑΜΗΝΑ

ΚΑΤΑΝΟΜΗ ΜΑΘΗΜΑΤΩΝ ΣΤΑ ΕΞΑΜΗΝΑ ΚΑΤΑΝΟΜΗ ΜΑΘΗΜΑΤΩΝ ΣΤΑ ΕΞΑΜΗΝΑ Θ = ΘΕΩΡΙΑ Ε = ΕΡΓΑΣΤΗΡΙΟ Σ = ΣΥΝΟΛΟ ΔΜ = ΔΙΔΑΚΤΙΚΕΣ ΜΟΝΑΔΕΣ ECTS = ΠΙΣΤΩΤΙΚΕΣ ΜΟΝΑΔΕΣ 1 ο ΕΞΑΜΗΝΟ Α ΕΤΟΣ 1ΚΠ01 Μαθηματική Ανάλυση Ι 4 1 5 5 5 1ΚΠ02 Γραμμική Άλγεβρα 4 5

Διαβάστε περισσότερα

Β. ΚΑΜΙΝΕΛΛΗΣ ΒΙΟΛΟΓΙΑ. Είναι η επιστήμη που μελετά τους ζωντανούς οργανισμούς. (Αποτελούνται από ένα ή περισσότερα κύτταρα).

Β. ΚΑΜΙΝΕΛΛΗΣ ΒΙΟΛΟΓΙΑ. Είναι η επιστήμη που μελετά τους ζωντανούς οργανισμούς. (Αποτελούνται από ένα ή περισσότερα κύτταρα). ΒΙΟΛΟΓΙΑ Είναι η επιστήμη που μελετά τους ζωντανούς οργανισμούς. (Αποτελούνται από ένα ή περισσότερα κύτταρα). Είδη οργανισμών Υπάρχουν δύο είδη οργανισμών: 1. Οι μονοκύτταροι, που ονομάζονται μικροοργανισμοί

Διαβάστε περισσότερα

Πιο συγκεκριμένα, η χρήση του MATLAB προσφέρει τα ακόλουθα πλεονεκτήματα.

Πιο συγκεκριμένα, η χρήση του MATLAB προσφέρει τα ακόλουθα πλεονεκτήματα. i Π Ρ Ο Λ Ο Γ Ο Σ Το βιβλίο αυτό αποτελεί μια εισαγωγή στα βασικά προβλήματα των αριθμητικών μεθόδων της υπολογιστικής γραμμικής άλγεβρας (computational linear algebra) και της αριθμητικής ανάλυσης (numerical

Διαβάστε περισσότερα

Αλγόριθμοι Τυφλής Αναζήτησης

Αλγόριθμοι Τυφλής Αναζήτησης Τεχνητή Νοημοσύνη 04 Αλγόριθμοι Τυφλής Αναζήτησης Αλγόριθμοι Τυφλής Αναζήτησης (Blind Search Algorithms) Εφαρμόζονται σε προβλήματα στα οποία δεν υπάρχει πληροφορία που να επιτρέπει αξιολόγηση των καταστάσεων.

Διαβάστε περισσότερα

Εισαγωγή στη θεωρία ακραίων τιμών

Εισαγωγή στη θεωρία ακραίων τιμών Εισαγωγή στη θεωρία ακραίων τιμών Αντικείμενο της θεωρίας ακραίων τιμών αποτελεί: Η ανάπτυξη και μελέτη στοχαστικών μοντέλων με σκοπό την επίλυση προβλημάτων που σχετίζονται με την εμφάνιση «πολύ μεγάλων»

Διαβάστε περισσότερα

ΑΛΓΟΡΙΘΜΟΙ. Τι είναι αλγόριθμος

ΑΛΓΟΡΙΘΜΟΙ. Τι είναι αλγόριθμος ΑΛΓΟΡΙΘΜΟΙ Στο σηµείωµα αυτό αρχικά εξηγείται η έννοια αλγόριθµος και παραθέτονται τα σπουδαιότερα κριτήρια που πρέπει να πληρεί κάθε αλγόριθµος. Στη συνέχεια, η σπουδαιότητα των αλγορίθµων συνδυάζεται

Διαβάστε περισσότερα

Εισόδημα Κατανάλωση 1500 500 1600 600 1300 450 1100 400 600 250 700 275 900 300 800 352 850 400 1100 500

Εισόδημα Κατανάλωση 1500 500 1600 600 1300 450 1100 400 600 250 700 275 900 300 800 352 850 400 1100 500 Εισόδημα Κατανάλωση 1500 500 1600 600 1300 450 1100 400 600 250 700 275 900 300 800 352 850 400 1100 500 Πληθυσμός Δείγμα Δείγμα Δείγμα Ο ρόλος της Οικονομετρίας Οικονομική Θεωρία Διατύπωση της

Διαβάστε περισσότερα

ΔΕΟ 40 ΤΟΜΟΣ Β ΘΕΩΡΙΑ ΚΑΙ ΑΣΚΗΣΕΙΣ ΔΙΚΤΥΩΝ ΔΙΟΙΚΗΣΗ ΕΡΓΩΝ

ΔΕΟ 40 ΤΟΜΟΣ Β ΘΕΩΡΙΑ ΚΑΙ ΑΣΚΗΣΕΙΣ ΔΙΚΤΥΩΝ ΔΙΟΙΚΗΣΗ ΕΡΓΩΝ ΔΕΟ 40 ΤΟΜΟΣ Β ΘΕΩΡΙΑ ΚΑΙ ΑΣΚΗΣΕΙΣ ΔΙΚΤΥΩΝ ΔΙΟΙΚΗΣΗ ΕΡΓΩΝ ΟΡΙΣΜΟΣ ΤΟΥ ΕΡΓΟΥ Έργο είναι μια ακολουθία μοναδικών, σύνθετων και αλληλοσυσχετιζόμενων δραστηριοτήτων που αποσκοπούν στην επίτευξη κάποιου συγκεκριμένου

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ

ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΕΡΕΥΝΑΣ ΚΑΙ ΘΡΗΣΚΕΥΜΑΤΩΝ ΙΝΣΤΙΤΟΥΤΟ ΕΚΠΑΙΔΕΥΤΙΚΗΣ ΠΟΛΙΤΙΚΗΣ Γώγουλος Γ., Κοτσιφάκης Γ., Κυριακάκη Γ., Παπαγιάννης Α., Φραγκονικολάκης Μ., Χίνου Π. ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ

Διαβάστε περισσότερα

Περιεχόμενα. Περιεχόμενα

Περιεχόμενα. Περιεχόμενα Περιεχόμενα xv Περιεχόμενα 1 Αρχές της Java... 1 1.1 Προκαταρκτικά: Κλάσεις, Τύποι και Αντικείμενα... 2 1.1.1 Βασικοί Τύποι... 5 1.1.2 Αντικείμενα... 7 1.1.3 Τύποι Enum... 14 1.2 Μέθοδοι... 15 1.3 Εκφράσεις...

Διαβάστε περισσότερα

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον Τμήμα Μηχανικών Πληροφορικής Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον Δρ. Δημήτρης Βαρσάμης Επίκουρος Καθηγητής Οκτώβριος 2014 Δρ. Δημήτρης Βαρσάμης Οκτώβριος 2014 1 / 42 Αριθμητικές Μέθοδοι

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 12: Θεωρία υπολογισµών

ΚΕΦΑΛΑΙΟ 12: Θεωρία υπολογισµών ΚΕΦΑΛΑΙΟ 12: Θεωρία υπολογισµών 1 Συναρτήσεις και ο υπολογισµός τους 2 Μηχανές Turing 3 Καθολικές γλώσσες προγραµµατισµού 4 Μια µη υπολογίσιµη συνάρτηση 5 Πολυπλοκότητα προβληµάτων 1 Συναρτήσεις Μία συνάρτηση

Διαβάστε περισσότερα

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Συμβολοσειρές. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Συμβολοσειρές. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Δομές Δεδομένων Συμβολοσειρές Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Συμβολοσειρές Συμβολοσειρές και προβλήματα που αφορούν συμβολοσειρές εμφανίζονται τόσο συχνά που

Διαβάστε περισσότερα

6.3 Ο ΑΜΦΙΠΛΕΥΡΟΣ ΕΛΕΓΧΟΣ SMIRNOV ΓΙΑ k ΑΝΕΞΑΡΤΗΤΑ ΔΕΙΓΜΑΤΑ

6.3 Ο ΑΜΦΙΠΛΕΥΡΟΣ ΕΛΕΓΧΟΣ SMIRNOV ΓΙΑ k ΑΝΕΞΑΡΤΗΤΑ ΔΕΙΓΜΑΤΑ 6.3 Ο ΑΜΦΙΠΛΕΥΡΟΣ ΕΛΕΓΧΟΣ SMIRNOV ΓΙΑ k ΑΝΕΞΑΡΤΗΤΑ ΔΕΙΓΜΑΤΑ Το 1965, από τον Conover και πάλι προτάθηκε ένας άλλος έλεγχος τύπου Smirnov για k ανεξάρτητα δείγματα. Ο έλεγχος αυτός διαφέρει από τον προηγούμενο

Διαβάστε περισσότερα

Συνήθεις διαφορικές εξισώσεις προβλήματα οριακών τιμών

Συνήθεις διαφορικές εξισώσεις προβλήματα οριακών τιμών Συνήθεις διαφορικές εξισώσεις προβλήματα οριακών τιμών Οι παρούσες σημειώσεις αποτελούν βοήθημα στο μάθημα Αριθμητικές Μέθοδοι του 5 ου εξαμήνου του ΤΜΜ ημήτρης Βαλουγεώργης Καθηγητής Εργαστήριο Φυσικών

Διαβάστε περισσότερα

ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 26-01-2014

ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 26-01-2014 ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 26-01-2014 ΘΕΜΑ Α Α1. Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς από τις παρακάτω προτάσεις 1-5 και δίπλα τη λέξη Σωστό, αν είναι

Διαβάστε περισσότερα

ΘΕΜΑ Α ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ

ΘΕΜΑ Α ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ 1ΗΣ ΣΕΛΙΔΑΣ ΘΕΜΑ Α ΑΝΑΚΕΦΑΛΑΙΩΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ Γ' ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΠΕΜΠΤΗ 26 ΑΠΡΙΛΙΟΥ 2012 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΥΚΛΟΥ

Διαβάστε περισσότερα

Βιοπληροφορική. Ενότητα 14: Μοντέλα Πολλαπλής Στοίχισης (2/2), 1.5ΔΩ. Τμήμα: Βιοτεχνολογίας Όνομα καθηγητή: Τ. Θηραίου

Βιοπληροφορική. Ενότητα 14: Μοντέλα Πολλαπλής Στοίχισης (2/2), 1.5ΔΩ. Τμήμα: Βιοτεχνολογίας Όνομα καθηγητή: Τ. Θηραίου Βιοπληροφορική Ενότητα 14: Μοντέλα Πολλαπλής Στοίχισης (2/2), 1.5ΔΩ Τμήμα: Βιοτεχνολογίας Όνομα καθηγητή: Τ. Θηραίου Μαθησιακοί Στόχοι παρουσίαση των μοντέλων πολλαπλής στοίχισης. κατανόηση των εφαρμογών

Διαβάστε περισσότερα

Μεταθέσεις και πίνακες μεταθέσεων

Μεταθέσεις και πίνακες μεταθέσεων Παράρτημα Α Μεταθέσεις και πίνακες μεταθέσεων Το παρόν παράρτημα βασίζεται στις σελίδες 671 8 του βιβλίου: Γ. Χ. Ψαλτάκης, Κβαντικά Συστήματα Πολλών Σωματιδίων (Πανεπιστημιακές Εκδόσεις Κρήτης, Ηράκλειο,

Διαβάστε περισσότερα

ΓΡΑΠΤΕΣ ΠΡΟΑΓΩΓΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΜΑΪΟΥ-ΙΟΥΝΙΟΥ 2015

ΓΡΑΠΤΕΣ ΠΡΟΑΓΩΓΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΜΑΪΟΥ-ΙΟΥΝΙΟΥ 2015 ΛΥΚΕΙΟ ΑΡΧ. ΜΑΚΑΡΙΟΥ Γ - ΔΑΣΟΥΠΟΛΗ ΣΧΟΛΙΚΟ ΕΤΟΣ 2014-2015 ΓΡΑΠΤΕΣ ΠΡΟΑΓΩΓΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΜΑΪΟΥ-ΙΟΥΝΙΟΥ 2015 ΜΑΘΗΜΑ: ΠΛΗΡΟΦΟΡΙΚΗ ΗΜΕΡΟΜΗΝΙΑ: 10 /6 / 2015 ΒΑΘΜΟΣ:... ΤΑΞΗ: Β ΧΡΟΝΟΣ: 2 ώρες ΥΠ. ΚΑΘΗΓΗΤΗ:...

Διαβάστε περισσότερα

ΣΗΜΑΤΑ ΚΑΙ ΣΥΣΤΗΜΑΤΑ. Εισαγωγή στα Σήµατα Εισαγωγή στα Συστήµατα Ανάπτυγµα - Μετασχηµατισµός Fourier Μετασχηµατισµός Z

ΣΗΜΑΤΑ ΚΑΙ ΣΥΣΤΗΜΑΤΑ. Εισαγωγή στα Σήµατα Εισαγωγή στα Συστήµατα Ανάπτυγµα - Μετασχηµατισµός Fourier Μετασχηµατισµός Z ΣΗΜΑΤΑ ΚΑΙ ΣΥΣΤΗΜΑΤΑ Εισαγωγή στα Σήµατα Εισαγωγή στα Συστήµατα Ανάπτυγµα - Μετασχηµατισµός Fourier Μετασχηµατισµός Laplace Μετασχηµατισµός Z Εφαρµογές Παράδειγµα ενός ηλεκτρικού συστήµατος Σύστηµα Παράδειγµα

Διαβάστε περισσότερα

6.2 Ο ΜΟΝΟΠΛΕΥΡΟΣ ΕΛΕΓΧΟΣ SMIRNOV ΓΙΑ k ΑΝΕΞΑΡΤΗΤΑ ΔΕΙΓΜΑΤΑ

6.2 Ο ΜΟΝΟΠΛΕΥΡΟΣ ΕΛΕΓΧΟΣ SMIRNOV ΓΙΑ k ΑΝΕΞΑΡΤΗΤΑ ΔΕΙΓΜΑΤΑ 6.2 Ο ΜΟΝΟΠΛΕΥΡΟΣ ΕΛΕΓΧΟΣ SMIRNOV ΓΙΑ k ΑΝΕΞΑΡΤΗΤΑ ΔΕΙΓΜΑΤΑ Ο έλεγχος της ενότητας αυτής αποτελεί μία επέκταση του μονόπλευρου ελέγχου Smirnov στην περίπτωση περισσοτέρων από δύο δειγμάτων. Ο έλεγχος αυτός

Διαβάστε περισσότερα

Χαρίλαος Μέγας Ελένη Φωτάκη Ελευθέριος Νεοφύτου

Χαρίλαος Μέγας Ελένη Φωτάκη Ελευθέριος Νεοφύτου Χαρίλαος Μέγας Ελένη Φωτάκη Ελευθέριος Νεοφύτου Απαντήσεις στις ερωτήσεις: Πρόλογος Το βιβλίο αυτό γράφτηκε για να βοηθήσει το μαθητή της Γ Γυμνασίου στην κατανόηση των θεμελιωδών γνώσεων της Βιολογίας

Διαβάστε περισσότερα

Δομές Δεδομένων. Λουκάς Γεωργιάδης. http://www.cs.uoi.gr/~loukas/courses/data_structures/ email: loukas@cs.uoi.gr

Δομές Δεδομένων. Λουκάς Γεωργιάδης. http://www.cs.uoi.gr/~loukas/courses/data_structures/ email: loukas@cs.uoi.gr Δομές Δεδομένων http://www.cs.uoi.gr/~loukas/courses/data_structures/ Λουκάς Γεωργιάδης email: loukas@cs.uoi.gr Αλγόριθμος: Μέθοδος για την επίλυση ενός προβλήματος Δεδομένα: Σύνολο από πληροφορίες που

Διαβάστε περισσότερα

Επιµέλεια Θοδωρής Πιερράτος

Επιµέλεια Θοδωρής Πιερράτος Εισαγωγή στον προγραµµατισµό Η έννοια του προγράµµατος Ο προγραµµατισµός ασχολείται µε τη δηµιουργία του προγράµµατος, δηλαδή του συνόλου εντολών που πρέπει να δοθούν στον υπολογιστή ώστε να υλοποιηθεί

Διαβάστε περισσότερα

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΕΡΩΤΗΣΕΙΣ 1. Τι καλείται ψευδοκώδικας; 2. Τι καλείται λογικό διάγραμμα; 3. Για ποιο λόγο είναι απαραίτητη η τυποποίηση του αλγόριθμου; 4. Ποιες είναι οι βασικές αλγοριθμικές δομές; 5. Να περιγράψετε τις

Διαβάστε περισσότερα