Einfache HMM mit BioJava occasionally dishonest casino Casino mit 2 Wüfeln: –Fair –Unfair (loaded) loaded Wüfel: 50% erscheint 6 Zusätzlich: magischer.

Slides:



Advertisements
Ähnliche Präsentationen
der Universität Oldenburg
Advertisements

der Universität Oldenburg
Statistische Aspekte der PSG
Komplexität und Phasenübergänge
Rekursive Grafiken Reklursive Grafiken.
PG 487 Methoden der Computational Intelligence in der Bioinformatik
1 Computergestützte Verifikation SAT-basiertes Model Checking Ansatz: Übersetze das Model Checking Problem in ein aussagenlogisches Erfüllbarkeitsproblem.
Qualitätssicherung von Software (SWQS) Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin und Fraunhofer FOKUS : Software Model Checking.
Alignments mit Hidden Markov Modellen. Wofür sind HMMs gut? Gehört eine Sequenz zu einer bestimmten Familie? Falls eine Sequenz aus einer Familie stammt,
Threads Richard Göbel.
Java: Objektorientierte Programmierung
FH-Hof Verwaltung von Zeichenketten Richard Göbel.
Java: Grundlagen der Objektorientierung
Moore E A Zustands- speicher (ZS) Übergangs- logik (ÜL) Folgezustand
Assoziationen (Beziehungen) 1 : n. Zu einem Auto gibt es mehrere Fahrer (2) und zu diesen 2 Fahrern gibt es genau dieses Auto.
FOR Anweisung.
1 Endliche Automaten in der Sprachtechnologie Kursthemen Karin Haenelt
3.1.4 Leser/Schreiber-Ausschluß (reader/writer exclusion)
PG 520 Intelligence Service – gezielte Informationen aus dem Internet
PG 487 Methoden der Computational Intelligence in der Bioinformatik
DVG Gaußscher Algorithmus1 Gaußscher Algorithmus.
Gaußscher Algorithmus
DVG Verkettete Listen Verkettete Listen. DVG Verkettete Listen 2 Primitive Datentypen Vorteile: –werden direkt vom Prozessor unterstützt.
Java in 9 Folien Besser: Online-Buch Go to Java 2.
Eigene Metoden (Turtle-Paket (C) Taulien 2003)
Bestimmung des ggT zweier Zahlen
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Inhalt danach. inhalt danach inhalt danach inhalt danach inhalt danach inhalt danach.
Struktogramme IF-ELSE FOR – Schleife
Template Pattern Richard Göbel.
Seite 1 Interface - Konzept Ein Interface führt einen neuen Datentyp ein: interface Frau {... } Das Interface enthält Deklarationen ( keine Definitionen.
ETS4 - Was ist neu? - Wie fange ich an? - Noch Fragen?
Bsafe Software Solutions zeigt heute Dataflow … Bsafe/Global Security for iSeries Version 3.5.
PHP und MYSQL am FUNKTIONEN (Wiederholung) Klassen Objekte Anwendungsbeispiele MYSQL Theorie mehrerer Tabellen Historisch Kulturwissenschaftliche.
Die Zählschleife int s = 0 for (int k=1; k
Informatik 1 Übung 7.
Informatik 1 Übung 4.
Technische Informatik Reihungen – Felder - Arrays.
XML IV: Cocoon 2.
Grundlagen wissenschaftlichen Arbeitens An Overview of C++ Ali CICEK
Aufruf einer Methode eines Objektes vom Typ „Bruch“
Client-Server-Architektur
Kapitel 6: Suchbäume und weitere Sortierverfahren
Informatik Grundlagen, Seminar 8 WS04 1 Informatik Grundlagen, WS04, Seminar 8 Informatik.
Vorlesung 5. #include double fv(double x) { return sin(x); } int main(){ int i,N=10; double a=1,b=2,del,x,sum,f,integral; for(i=1,sum=0.0,del = (b-a)/N;i
Programmiervorkurs WS 2014/15 Methoden
Java-Kurs - 8. Übung Besprechung der Hausaufgabe.
3. Beschreibung von Abläufen durch Algorithmen 3.4 Zufall
Übung Informatik I exercise01. 2 Inhaltsübersicht Nachbesprechung Übung 1 Individuelle Fragen/Bemerkungen.
Softwaretechnologie für Fortgeschrittene Teil Thaller Stunde III: Bildverarbeitung III Köln 8. Januar 2015.
Sammlungsklassen Array.
Parallel Programming Semaphores / Reader - Writer - Lock
Inhalt Was ist elSitos? Sicht des Schülers Sicht des Lehrers Mögliche Kommunikationsformen Wahl des Contents.
Lenz, M; Buhse, S; Kasper, J; Kupfer, R; Richter, T; Mühlhauser, I Decision Aids for Patients Dtsch Arztebl Int 2012; 109(22-23): 401-8; DOI: /arztebl
Vererbung.
Venusspiegel und Marsschild
JAVA lernen: Methoden.
Wiederholungen mit Zähler
Die Klasse Vielfrass in Java
Die magischen Zahlen.
BOOK OF RA UND ANDEREN AGYPTISCHEN SLOT GAMES
Modul BQ V01, Schlüsselqualifikationen VWL BA, Teil 2, SS 2014 Düsseldorf Institute for Competition Economics Konzeption der Lehrveranstaltung „Präsentieren.
Grundkurs Informatik 11-13
Syntax: while ( BEDINGUNG ) { // Anweisungen die so lange immer wieder ausgeführt // werden, wie die Bedingung zutrifft } for (INITIALISIERUNG; BEDINGUNG;
4. Modellieren und Diagrammarten
Die magischen Zahlen.
Grundkurs Informatik mit Java
Übungen: Mustererzeugen Januar 19 Grundkurs Informatik.
Grundkurs Informatik 11-13
Arrays of Objects, a 3 part process
 Präsentation transkript:

Einfache HMM mit BioJava occasionally dishonest casino Casino mit 2 Wüfeln: –Fair –Unfair (loaded) loaded Wüfel: 50% erscheint 6 Zusätzlich: magischer Zustand zum Starten und Beenden

Das HMM FairLoaded Magic

Die CreateCasino() Methode In 5 Schritten zum HMM Model 1.Würfelalphabet 2.Verteilung (fair, unfair) 3.HMM: Zustände und Übergänge 4.Ausgabewahrscheinlichkeiten hinzufügen 5.Übergangswahrscheinlichkeiten hinzufügen

1. Würfelalphabet 1, 2, 3, 4, 5, 6 Symbol[] rolls=new Symbol[6]; SimpleAlphabet diceAlphabet=new SimpleAlphabet(); diceAlphabet.setName("DiceAlphabet"); for(int i=1;i<7;i++) { rolls[i-1]= AlphabetManager.createSymbol(String.valueOf(i),Annota tion.EMPTY_ANNOTATION); diceAlphabet.addSymbol(rolls[i-1]); } Symbol[] rolls=new Symbol[6]; //set up the dice alphabet SimpleAlphabet diceAlphabet=new SimpleAlphabet(); diceAlphabet.setName("DiceAlphabet"); for(int i=1;i<7;i++) { try { rolls[i-1]= AlphabetManager.createSymbol(String.valueOf(i ),Annotation.EMPTY_ANNOTATION); diceAlphabet.addSymbol(rolls[i-1]); } catch (Exception e) { throw new AssertionFailure( "Can't create symbols to represent dice rolls", e ); }

2. Verteilung (fair/unfair) Distribution fairD; fairD = DistributionFactory.DEFAULT.createDistribution(diceAl phabet); EmissionState fairS = new SimpleEmissionState("fair", Annotation.EMPTY_ANNOTATION, advance, fairD); Entsprechend für loadedD. Achtung: Zustände erst definiert, aber noch nicht initialisiert

3. HMM Zustände definieren das HMM: SimpleMarkovModel casino = new SimpleMarkovModel(1, diceAlphabet, "Casino"); casino.addState(fairS); casino.addState(loadedS); Übergänge im HMM: casino.createTransition(casino.magicalState(),fairS); casino.createTransition(casino.magicalState(),loadedS); casino.createTransition(fairS,casino.magicalState()); usw.

4.Ausgabewahrscheinlichkei- ten initialisieren Zustände aus Schritt 2. for(int i=0;i<rolls.length;i++){ fairD.setWeight(rolls[i],1.0/6.0); loadedD.setWeight(rolls[i], 0.1); } loadedD.setWeight(rolls[5],0.5);

5.Übergangswahrscheinlich- keiten initialisieren Distribution dist; dist = casino.getWeights(casino.magicalState()); dist.setWeight(fairS, 0.8); dist.setWeight(loadedS, 0.2); dist = casino.getWeights(fairS); dist.setWeight(loadedS, 0.04); dist.setWeight(fairS, 0.95); dist.setWeight(casino.magicalState(), 0.01);

Dynamische Programmierung Was fehlt? Modell zur Beurteilung: Wurde ein fairer oder ein unfairer Würfel benutzt? Bereits in BioJava vorhanden: Methoden der dynamischen Programmierung

Ausgabe Sequenz, Würfel, geschätzter Würfel: ffffffllllllllllllllllllllllllllllllllllllllllllllffffffffff ffffffflllllllllllllllllllllllffffffffffffffffffffffffffffff