Τεχνθτι Νοθμοςφνθ Ιωάννθσ Χατηθλυγεροφδθσ Πολυτεχνικι Σχολι Τμιμα Μθχανικϊν Η/Υ & Πλθροφορικισ
Σθμαντικά Δίκτυα
Σθμαντικά Δίκτυα Βαςίηονται ςτθν αίςκθςθ ότι ζνα χαρακτθριςτικό τθσ ανκρϊπινθσ μνιμθσ είναι θ φπαρξθ μεγάλου αρικμοφ ςυςχετίςεων μεταξφ των τμθμάτων πλθροφορίασ που βρίςκεται αποκθκευμζνθ ς αυτι. Ονομάηονται ςθμαντικά ι ςθμαςιολογικά ι ςυςχετιςτικά δίκτυα (semantic or associative networks). Ο όροσ ςθμαντικά προιλκε από το γεγονόσ ότι χρθςιμοποιικθκαν πρωταρχικά (από τον Quillian, 1968) για αναπαράςταςθ τθσ ζννοιασ (ςθμαντικισ ι ςθμαςιολογίασ) λζξεων τθσ Αγγλικισ γλϊςςασ. Υπάρχουν πολλοί τφποι ςθμαντικϊν δικτφων. Κοινό γνϊριςμα, θ χριςθ των ςτοιχείων κόμβοσ (node) και ςφνδεςμοσ (link) για τθν αναπαράςταςθ γνϊςθσ. 3
Βαςικζσ Ζννοιεσ (1) Βαςικά ςτοιχεία είναι ενόσ ςθμαντικοφ δικτφου είναι οι ζννοιεσ κόμβοσ και ςφνδεςμοσ. Οι κόμβοι παριςτάνουν οντότθτεσ (φυςικά αντικείμενα, ζννοιεσ, γεγονότα, καταςτάςεισ κλπ). Οι ςφνδεςμοι ςυνδζουν τουσ κόμβουσ μεταξφ τουσ και παριςτάνουν δυαδικζσ ςχζςεισ μεταξφ τουσ. Η αναπαράςταςθ μζςω ενόσ ςθμαντικοφ δικτφου αποτυπϊνεται καλφτερα γραφικά. Η βαςικι δομικι μονάδα ενόσ τζτοιου γραφιματοσ είναι: κόμβος1 ζύνδεζμος12 κόμβος2 4
Βαςικζσ Ζννοιεσ (2) Ζνα απλό Σθμαντικό Δίκτυο book person Comp. Sc. field AI isa author Rich isa Yannis owner professor occupation 5
Βαςικζσ Ζννοιεσ (3) Κάκε βαςικι μονάδα ενόσ ςθμαντικοφ δικτφου μπορεί να κεωρθκεί ότι παριςτάνει ζνα κατθγόρθμα 2-κζςεων. Π.χ. ςτο προθγοφμενο παράδειγμα μποροφμε να διακρίνουμε, μεταξφ άλλων, τισ παρακάτω ατομικζσ προτάςεισ για τα κατθγοριματα isa, author, owner: isa (AI, book), author (Rich, AI), owner (Yannis, AI) Οι κόμβοι μπορεί να παριςτάνουν είτε γενικζσ (generic) οντότθτεσ είτε ατομικζσ (individual). Π.χ. ςτο προθγοφμενο παράδειγμα οι κόμβοι book και person παριςτάνουν γενικζσ οντότθτεσ, δθλ. κλάςεισ αντικειμζνων, ενϊ οι Yannis και AI ατομικζσ οντότθτεσ, δθλ. ςυγκεκριμζνα αντικείμενα 6
Βαςικζσ Ζννοιεσ (4) Η βάςθ γνϊςθσ (ΒΓ) ενόσ ςθμαντικοφ δικτφου είναι μια ςυλλογι αντικειμζνων (κάκε είδουσ) και ςχζςεων μεταξφ τουσ ϊςτε να αντιπροςωπεφουν το αντίςτοιχο δίκτυο. Οι τροποποιιςεισ ςτθ ΒΓ, δθλ. ειςαγωγι ι διαγραφι αντικειμζνων και ςχζςεων, απαιτοφν τθ ςχεδίαςθ ενόσ ιςχυροφ μθχανιςμοφ διαχείριςθσ. 7
Ιεραρχικά Δίκτυα (1) Οι κόμβοι είναι οργανωμζνοι ςε μια ιεραρχία. Οι κόμβοι ενόσ επιπζδου είναι υπο-περιπτϊςεισ (υποκατθγορίεσ) των κόμβων του παραπάνω επιπζδου και ζχουν ςαν υπο-περιπτϊςεισ (υπο-κατθγορίεσ) τουσ κόμβουσ του παρακάτω επιπζδου. Οι κόμβοι ενόσ επιπζδου ςυνδζονται με αυτοφσ του παραπάνω ι παρακάτω επιπζδου με ςυνδζςμουσ τφπου isa. Γι αυτό καλοφνται και ιεραρχίεσ isa. Υπάρχουν ςφνδεςμοι που ςυςχετίηουν ζνα ςφνολο χαρακτθριςτικϊν ι ιδιοτιτων με κάκε κόμβο και λζγονται ςφνδεςμοι ιδιοτιτων (property links). Οι ιδιότθτεσ αυτζσ χαρακτθρίηουν (ι ορίηουν) το αντικείμενο. Ζνασ ςυνικθσ ςφνδεςμοσ ιδιοτιτων είναι ο has_part ι has_property ι απλϊσ has. 8
Ιεραρχικά Δίκτυα (2) Παράδειγμα ιεραρχικοφ ςθμαντικοφ δικτφου has skin animal can move can eat isa isa isa mammal bird fish Σύνδεζμοι ιδιοηήηων has fins can swim has gills isa isa isa 9
Κλθρονόμθςθ Ιδιοτιτων Σ ζνα ιεραρχικό δίκτυο, ιδιότθτεσ που ιςχφουν για ζνα αντικείμενο-κόμβο ςτθν ιεραρχία, ιςχφουν επίςθσ και για αντικείμενα-κόμβουσ που βρίςκονται χαμθλότερα ςτθν ιεραρχία και ςυνδζονται μαηί του με ςυνδζςμουσ isa, χωρίσ να είναι αναγκαίο να αναπαραςτακοφν φανερά και ς αυτοφσ. Αυτό ειςάγει ζνα μθχανιςμό εξαγωγισ ςυμπεραςμάτων που ονομάηεται κλθρονόμθςθ ιδιοτιτων (property inheritance). Σφμφωνα μ αυτόν, για να εξάγουμε ςυμπεράςματα, αρκεί να προχωράμε προσ τα πάνω ςτθν ιεραρχία, μζχρι να ςυναντιςουμε τον ηθτοφμενο ιςχυριςμό. Π.χ. από το προθγοφμενο δίκτυο, μποροφμε να ςυνάγουμε τα ςυμπεράςματα ότι ζνα ψάρι (fish), εκτόσ από το ότι has fines, can swim και has gills, επίςθσ has skin, can move και can eat, λόγω κλθρονομικότθτασ από το animal. 10
Δίκτυα με Στιγμιότυπα (1) Μια επζκταςθ των ιεραρχικϊν δικτφων ιταν θ ειςαγωγι τθσ ζννοιασ τθσ ςτιγμιοτυποποίθςθσ (instantiation) ς αυτά, δθλ. θ χριςθ ςτιγμιοτφπων (instances) για τθν αναπαράςταςθ ςυγκεκριμζνων αντιπροςϊπων μιασ κλάςθσ. Π.χ. αν κζλουμε να αναπαραςτιςουμε το γεγονόσ Jack uses an office, δεδομζνου ότι είναι λζκτορασ (lecturer) και δάςκαλοσ (tutor), κα χρθςιμοποιιςουμε το επόμενο δίκτυο, όπου office- 1 είναι ζνα ςτιγμιότυπο τθσ πιο γενικισ ζννοιασ office. 11
Δίκτυα με Στιγμιότυπα (2) lecturer isa tutor office isa isa Jack uses office-1 12
Δίκτυα με Στιγμιότυπα (3) Γενικότερα, ς ζνα ςφγχρονο ιεραρχικό δίκτυο ξεχωρίηουμε δφο τφπουσ κόμβων: κόμβοσ-κλάςθ (που παριςτάνει μια γενικι ζννοια, μια κλάςθ αντικειμζνων) και κόμβοσςτιγμιότυπο (που παριςτάνει μια ςυγκεκριμζνθ οντότθτα, μια ατομικι ζννοια). Συνικωσ χρθςιμοποιείται ξεχωριςτι ςχζςθ για τθ ςφνδεςθ ενόσ κόμβου-ςτιγμιοτφπο και ενόσ κόμβου-κλάςθ απ αυτι μεταξφ δφο κόμβων-κλάςθ. Τζτοιεσ δυάδεσ ςυμβολιςμοφ των ςχζςεων αυτϊν είναι: (sub, inst), (ako, isa), (isa, inst) 13
Δίκτυα με Στιγμιότυπα (4) animal ako bird ako canary isa Tweety has has color lungs feathers yellow Εδϊ, χρθςιμοποιείται το ηεφγοσ ako (από το a kind of) και isa για αναπαράςταςθ ιεραρχικϊν ςχζςεων. Θα μποροφςαμε αντ αυτϊν να χρθςιμοποιιςουμε τα sub και inst αντίςτοιχα. Η κλθρονόμθςθ ιδιοτιτων ιςχφει και για τουσ κόμβουσ ςτιγμιότυπα. Κλθρονομοφν ιδιότθτεσ από τθν κλάςθ τουσ μζςω του isa και από τισ κλάςεισ πάνω απ αυτιν μζςω των ςυνδζςμων ako Π.χ. αν ο προσ απόδειξθ ιςχυριςμόσ είναι Tweety has feathers, τότε επειδι θ ιδιότθτα αυτι δεν υπάρχει ςτον κόμβο Tweety, θ διαδικαςία προχωρά ςτον κόμβο canary μζςω του isa. Επειδι και κει δεν υπάρχει, προχωρά ςτον κόμβο bird, όπου υπάρχει θ ιδιότθτα και επομζνωσ επιςτρζφει ότι ο ιςχυριςμόσ είναι αλθκισ. 14
Δίκτυα με Στιγμιότυπα (5) bird ako has feathers Εδϊ, χρθςιμοποιείται θ τριάδα ako, isa και inst για τθ αναπαράςταςθ ιεραρχικϊν ςχζςεων. isa african canary canary inst Tweety color yellow yellow Στθν περίπτωςθ αυτι θ ςχζςθ isa αναφζρεται ςε δφο κόμβουσ-κλάςεισ, όπου ο χαμθλότερα ευριςκόμενοσ δεν μπορεί να ζχει νζεσ ιδιότθτεσ, μόνο κλθρονομεί αυτζσ του πιο πάνω κόμβου. inst Speeky Το μόνο που επιτρζπεται είναι θ αλλαγι τιμϊν ςτισ ιδιότθτεσ. 15
Ιεραρχικά Δίκτυα Με Στιγμιότυπα Σχζςθ ako Χρθςιμοποιείται για τθ διλωςθ ιεραρχικισ ςχζςθσ μεταξφ δφο κόμβων-κλάςεων. Μποροφν να προςτεκοφν νζοι ςφνδεςμοι ιδιοτιτων ςτον κόμβουποκλάςθ. Σχζςθ isa Χρθςιμοποιείται για τθ διλωςθ ιεραρχικισ ςχζςθσ μεταξφ δφο κόμβων-κλάςεων. Δεν μποροφν να προςτεκοφν νζοι ςφνδεςμοι ιδιοτιτων ςτον κόμβουποκλάςθ. Σχζςθ inst Χρθςιμοποιείται για τθ διλωςθ ιεραρχικισ ςχζςθσ μεταξφ ενόσ κόμβου-ςτιγμιοτφπου και ενόσ κόμβου-κλάςθσ. Δεν μποροφν να προςτεκοφν νζοι ςφνδεςμοι ιδιοτιτων ςτον κόμβουποκλάςθ. 16
Εξ Οριςμοφ Συλλογιςμόσ has elephant color inst color Clyde trunk gray yellow white Εδϊ, φαίνεται πόςο φυςικά ζνα ςθμαντικό δίκτυο μπορεί να χειριςτεί εξαιρζςεισ. Ο Clyde είναι λευκόσ ελζφαντασ, ενϊ ςυνικωσ οι ελζφαντεσ είναι γκρίηοι. Όταν ηθτιςουμε το χρϊμα του Clyde, επειδι ςυναντάμε πρϊτα τον δικό του ςφνδεςμο ιδιότθτασ για το χρϊμα, απαντάμε λευκό (white), χωρίσ να χρειαςτεί να ανζβουμε ςτον elephant. Δθλ. ζνασ ςφνδεςμοσ ιδιότθτασ επιςκιάηει (ι καλφπτει) ζνα ίδιο ςφνδεςμο που βρίςκεται πιο ψθλά ςτθν ιεραρχία. 17
Προβλιματα (1) Είναι κυρίωσ προβλιματα ερμθνείασ κόμβων και ςυνδζςμων. Ασ υποκζςουμε ότι κζλουμε να αναπαραςτιςουμε τα παρακάτω γεγονότα: Jone s height is 1.7, John s height is greater than 1.7m John s height is greater than Mary s. Τότε καταςκευάηουμε τα παρακάτω ςθμαντικά δίκτυα. John height 1.7 John height John s height greater than John height Greater than 1.7 Mary height Mary s height Προςζξτε ότι οι κόμβοι προοριςμοφ του ςυνδζςμου height ζχουν διαφορετικζσ ζννοιεσ, παριςτάνουν εντελϊσ διαφορετικζσ οντότθτεσ. 18
Προβλιματα (2) Επίςθσ, αν κάποιοσ δει ζνα κόμβο-κλάςθ με το όνομα τθλζφωνο, δεν είναι κακαρό το τι ακριβϊσ ςθμαίνει: τθν ζννοια τθλζφωνο, τθν κλάςθ (δθλ. το ςφνολο) των τθλεφϊνων ι ζνα τυπικό τθλζφωνο. Παρομοίωσ και ζνασ κόμβοσ-ςτιγμιότυπο μπορεί να ερμθνευκεί πολλαπλά: ζνα ςυγκεκριμζνο τθλζφωνο ι ζνα τυχαίο τθλζφωνο. Ασ υποκζςουμε τϊρα ότι κζλουμε να αναπαραςτιςουμε τα γεγονότα: Jone s height is 1.7, John hit Mary. Οι αναπαραςτάςεισ είναι: John John height hit 1.7 Mary Παρατθροφμε ότι ςτθ μια περίπτωςθ ο ςφνδεςμοσ αντιπροςωπεφει μια ιδιότθτα, ενϊ ςτθν άλλθ μια ενζργεια, δθλ. δφο διαφορετικά πράγματα. 19
Προταςιακά Δίκτυα (1) Ζνασ άλλοσ τφποσ ςθμαντικϊν δικτφων είναι τα λεγόμενα προταςιακά δίκτυα (proposition nets). Χρθςιμοποιοφν τθν ζννοια του προταςιακοφ κόμβου (proposition node) και προςπακοφν να μιμθκοφν τθν κατθγορθματικι λογικι. Π.χ. το απλό γεγονόσ (κατθγόρθμα 1ου βακμοφ ι μιασ κζςθσ) Jack is a boy, παριςτάνεται ωσ εξισ: κόμβοι εννοιών Jack A PRED boy προηαζιακός κόμβος 20
Προταςιακά Δίκτυα (2) Το οποίο απλοποιείται ωσ εξισ: Jack boy όπου ο προταςιακόσ κόμβοσ αντιπροςωπεφεται από το όνομα (boy) του κατθγοριματοσ (ϊςτε να κυμίηει το boy(jack)). Το όνομα ενεργεί ςαν φφλακασ-κζςθσ για τον προταςιακό κόμβο. Ο ςφνδεςμοσ προσ τον κόμβο του κατθγοριματοσ είναι κρυμμζνοσ/υπονοείται. 21
Προταςιακά Δίκτυα (3) Ζνα πιο ςφνκετο γεγονόσ, π.χ. Jack gives the key to Paul, που περιζχει ζνα κατθγόρθμα τρίτου βακμοφ (ι τριϊν κζςεων) παριςτάνεται με το επόμενο δίκτυο. προηαζιακός κόμβος Jack A PRED gives B C Key1 Paul 22
Προταςιακά Δίκτυα (4) Η απλοποιθμζνθ του παράςταςθ είναι: Jack A gives B Key1 C Paul Τα A, B, C δείχνουν τθ ςειρά των οριςμάτων του κατθγοριματοσ 23
Διαδικαςτικά Δίκτυα (1) Τα διαδικαςτικά ςθμαντικά δίκτυα (procedural semantic nets- PSNs) χρθςιμοποιοφν τουσ όρουσ κλάςθ (class) και ςχζςθ (relation) για τθν αναπαράςταςθ του τφπου μιασ ζννοιασ (κόμβοσ) και του τφπου μιασ ςχζςθσ (ςφνδεςμοσ) ςτο δίκτυο. Μια κλάςθ είναι μια ςυλλογι από αντικείμενα με κοινζσ ιδιότθτεσ. Τα ςυγκεκριμζνα αντικείμενα μιασ κλάςθσ ονομάηονται ςτιγμιότυπα (instances) τθσ κλάςθσ και μπορεί να είναι κι αυτά κλάςεισ. Μια ςχζςθ είναι μια απεικόνιςθ από μια κλάςθ, που ονομάηεται πεδίο οριςμοφ (domain) ςε μια άλλθ κλάςθ, που ονομάηεται πεδίο τιμϊν (range). Οι ςχζςεισ μπορεί να κεωρθκοφν ςαν κλάςεισ με ςτιγμιότυπα ιςχυριςμοφσ (assertions). 24
Διαδικαςτικά Δίκτυα (2) Π.χ. το γεγονόσ John is a person whose age is 23, παριςτάνεται ωσ εξισ: AGE PERSON NUMBER John 23 PERSON, NUMBER: κλάζεις AGE: ζτέζη (πεδίο οριζμού: PERSON, πεδίο ηιμών: NUMBER) Σύνδεζμοι: δείτνοσν ηον ηύπο ( John και 23 ζηιγμιόησπα ηων PERSON και NUMBER) 25
Διαδικαςτικά Δίκτυα (3) Η κφρια ιδζα είναι να ςυςχετίςουμε προγράμματα με κάκε τφπο κλάςθσ και ςχζςθσ ανεξάρτθτα μεταξφ τουσ. Ζνα πρόγραμμα κεωρείται ςαν μια κλάςθ τθσ οποίασ τα ςτιγμιότυπα καλοφνται διαδικαςίεσ και αντιςτοιχοφν ςε ενεργοποιιςεισ προγραμμάτων Υπάρχουν τζςςερεισ βαςικζσ λειτουργίεσ ςε κάκε κλάςθ και ςχζςθ: πρόςκεςε (add) ζνα ςτιγμιότυπο ςε μια κλάςθ, διάγραψε (remove) ζνα ςτιγμιότυπο από μια κλάςθ, ανάκτθςε (fetch) όλα τα ςτιγμιότυπα μιασ κλάςθσ, ζλεγξε (test) αν ζνα ςτιγμιότυπο ανικει ςε μια κλάςθ. Κάκε λειτουργία αποτελεί ζνα πρόγραμμα προςαρτθμζνο ςε κάκε κλάςθ ι ςχζςθ. Π.χ. για να εκφράςουμε το γεγονόσ ότι θ ζννοια τθσ ςχζςθσ PROFIT (κζρδοσ) είναι θ διαφορά τθσ τιμισ μείον το κόςτοσ, δθμιουργοφμε ζνα πρόγραμμα για τθ λειτουργία fetch που φζρνει τθν τιμι και το κόςτοσ ενόσ προϊόντοσ και υπολογίηει τθ διαφορά. 26
Πλεονεκτιματα-Μειονεκτιματα Πλεονεκτιματα Η αναπαράςταςθ με ςθμαντικά δίκτυα ανταποκρίνεται ςτθ δομι του πραγματικοφ κόςμου, οπότε δθμιουργεί αναπαραςτάςεισ με μεγάλθ φυςικότθτα. Οδθγεί ςε ςυμπαγείσ αναπαραςτάςεισ, δθλ. αναπαραςτάςεισ όπου όλεσ οι εμπλεκόμενεσ οντότθτεσ ςχετίηονται ςε μια ενιαία περιγραφι. Εφκολθ αναπαράςταςθ και χειριςμόσ εξαιρζςεων (μθ μονότονθ αναπαράςταςθ). Μειονεκτιματα Προβλιματα ερμθνείασ. Πολφπλοκθ διαδικαςία αναηιτθςθσ και κλθρονόμθςθσ πλθροφορίασ. Πολφπλοκοσ μθχανιςμόσ διαχείριςθσ τθσ βάςθσ γνϊςθσ (ζλλειψθ τμθματικότθτασ) Τίτλοσ Ενότθτασ 27
Σθμείωμα Ιςτορικοφ Εκδόςεων Ζργου Το παρόν ζργο αποτελεί τθν ζκδοςθ 1.0. 28
Σθμείωμα Αναφοράσ Copyright Πανεπιςτιμιο Πατρϊν, Ιωάννθσ Χατηθλυγεροφδθσ 2015. «Ευφυισ Προγραμματιςμόσ». Ζκδοςθ: 1.0. Πάτρα 2015. Διακζςιμο από τθ δικτυακι διεφκυνςθ: https://eclass.upatras.gr/courses/ceid1095/ 29
Σθμείωμα Αδειοδότθςθσ Το παρόν υλικό διατίκεται με τουσ όρουσ τθσ άδειασ χριςθσ Creative Commons Αναφορά, Μθ Εμπορικι Χριςθ Παρόμοια Διανομι 4.0 *1+ ι μεταγενζςτερθ, Διεκνισ Ζκδοςθ. Εξαιροφνται τα αυτοτελι ζργα τρίτων π.χ. φωτογραφίεσ, διαγράμματα κ.λ.π., τα οποία εμπεριζχονται ςε αυτό και τα οποία αναφζρονται μαηί με τουσ όρουσ χριςθσ τουσ ςτο «Σθμείωμα Χριςθσ Ζργων Τρίτων». [1] http://creativecommons.org/licenses/by-nc-sa/4.0/ Ωσ Μθ Εμπορικι ορίηεται θ χριςθ: που δεν περιλαμβάνει άμεςο ι ζμμεςο οικονομικό όφελοσ από τθν χριςθ του ζργου, για το διανομζα του ζργου και αδειοδόχο που δεν περιλαμβάνει οικονομικι ςυναλλαγι ωσ προχπόκεςθ για τθ χριςθ ι πρόςβαςθ ςτο ζργο που δεν προςπορίηει ςτο διανομζα του ζργου και αδειοδόχο ζμμεςο οικονομικό όφελοσ (π.χ. διαφθμίςεισ) από τθν προβολι του ζργου ςε διαδικτυακό τόπο Ο δικαιοφχοσ μπορεί να παρζχει ςτον αδειοδόχο ξεχωριςτι άδεια να χρθςιμοποιεί το ζργο για εμπορικι χριςθ, εφόςον αυτό του ηθτθκεί. 30
Διατιρθςθ Σθμειωμάτων Οποιαδιποτε αναπαραγωγι ι διαςκευι του υλικοφ κα πρζπει να ςυμπεριλαμβάνει: το Σθμείωμα Αναφοράσ το Σθμείωμα Αδειοδότθςθσ τθ διλωςθ Διατιρθςθσ Σθμειωμάτων το Σθμείωμα Χριςθσ Ζργων Τρίτων (εφόςον υπάρχει) μαηί με τουσ ςυνοδευόμενουσ υπερςυνδζςμουσ. 31