#!/usr/bin/env python import openpnl import numpy as np np.random.seed(1337) # Still broken ... print " *** SET UP MODEL **" model = openpnl.pnlExCreateRndArHMM() model.GetGraph().Dump() pArHMM = openpnl.CDBN_Create(model) pInfEng = openpnl.C1_5SliceJtreeInfEngine_Create(pArHMM) # generate random slices print " *** SET UP RANDOM SLICES **" nTimeSeries = 500 nSlices = np.random.randint(3, 20, nTimeSeries) print nSlices print " *** GENERATE SAMPLES *** " evidencesOut = pArHMM.GenerateSamples2(nSlices) pDBN = openpnl.CDBN.Create(openpnl.pnlExCreateRndArHMM()) print evidencesOut print pDBN print " *** LEARNING *** " pLearn = openpnl.CEMLearningEngineDBN.Create(pDBN) pLearn.SetData(evidencesOut) pLearn.Learn() print " *** model before learning ... "
#!/usr/bin/env python import openpnl #print dir(openpnl) model = openpnl.pnlExCreateRndArHMM() #model = openpnl.pnlExCreateKjaerulfsBNet() pArHMM = openpnl.CDBN_Create(model) pInfEng = openpnl.C1_5SliceJtreeInfEngine_Create(pArHMM) nTimeSlices = 5 # set up evidence ... pEvidences = openpnl.newCEvidences(nTimeSlices) for i in range(0,nTimeSlices): ev = openpnl.mkEvidence( pArHMM, [1], [1.0] ); openpnl.assignEvidence( pEvidences, ev, i ) pInfEng.DefineProcedure(openpnl.ptSmoothing, nTimeSlices) pInfEng.EnterEvidence(pEvidences, nTimeSlices) pInfEng.Smoothing() queryPrior = [0] #queryPrior = openpnl.intVector([0]) queryPriorSize = 1 slice_ = 0 pInfEng.MarginalNodes(queryPrior, queryPriorSize, slice_) pQueryJPD = pInfEng.GetQueryJPD(); mdl = pQueryJPD.GetModelDomain() mat = pQueryJPD.GetMatrix(openpnl.matTable)
#!/usr/bin/env python import openpnl import numpy as np np.random.seed(1337) # Still broken ... print " *** SET UP MODEL **" model = openpnl.pnlExCreateRndArHMM() model.GetGraph().Dump() pArHMM = openpnl.CDBN_Create(model) pInfEng = openpnl.C1_5SliceJtreeInfEngine_Create(pArHMM) # generate random slices print " *** SET UP RANDOM SLICES **" nTimeSeries = 500 nSlices = np.random.randint(3,20,nTimeSeries); print nSlices print " *** GENERATE SAMPLES *** " evidencesOut = pArHMM.GenerateSamples2( nSlices ); pDBN = openpnl.CDBN.Create(openpnl.pnlExCreateRndArHMM()); print evidencesOut print pDBN print " *** LEARNING *** " pLearn = openpnl.CEMLearningEngineDBN.Create( pDBN ); pLearn.SetData(evidencesOut) pLearn.Learn() print " *** model before learning ... " for i in range(0,4):