{"_id":"hidden-markov-model-tf","_rev":"100-22b646ac2a4d5f860a55957e607cf0f9","name":"hidden-markov-model-tf","dist-tags":{"latest":"4.0.0"},"versions":{"1.0.0":{"name":"hidden-markov-model-tf","version":"1.0.0","license":"Apache-2.0","_id":"hidden-markov-model-tf@1.0.0","maintainers":[{"name":"andreasmadsen","email":"amwebdk@gmail.com"}],"homepage":"https://github.com/nearform/node-hidden-markov-model-tf#readme","bugs":{"url":"https://github.com/nearform/node-hidden-markov-model-tf/issues"},"dist":{"shasum":"9764361097a16e2103423a53eef945d48466bc12","tarball":"https://registry.npmjs.org/hidden-markov-model-tf/-/hidden-markov-model-tf-1.0.0.tgz","fileCount":38,"integrity":"sha512-LrHzFl5j6zX/1Os2cvjPcKdA5oJgvAE7OJiPPGDHbNQG2mfr2xyjkqvEgznSX2GATUDlKwLnhdCqJSvkSFtpHg==","signatures":[{"sig":"MEUCIF5Ry/3giT9Vctg3KdwGlMHoe13h6LWf3sjmeYOcV0NeAiEA48shI2OZZhB8JOGzF7/hQ/ve1TaK5LemIx6sb2JKPiY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":142067,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbc/wRCRA9TVsSAnZWagAAXAQQAIN4rIJgIE6Iytb6AhkN\ni0G9Ern2BlKQfQdxQAxXGgJ8+EmgkLw/mOuYuWJeoT2XmfZZ5gZp/Wrm75g2\ntGRn5ytdGQHVE4c59PKrVtqpj5qc7GDl8Agw5L+TNQIFepD4wyKGPBjkeGtg\n26nZgHZmKTC2PDRx/FhCkuqsYdHLJEOJapFCDVQqXhkRJclM/nVSv8STDrkS\n7ty9Fa795TIYwX5YHmfuD0WWSwvqyrDKsr0veldLrclOCo6f46l3nw67iXxt\ndk1jbULwf4dOAivsgmxVg8zO6ZKkl4W1DYAV7VqjicZw+XFCj7ojG7ciS4jA\njPGWfsB87UyJtmpSVKNmvbpD7zaTTwSb8tlwIGX7hi+jMmG/dZPOlCtmIzlw\nCvu8fXrY3AWqSnq2/Oxa+Xrg4TI8MuCTVr6eH6ygdsLoBiENZTmAoMWF7waH\nj/ejf+xuhbjyeSJ7IE0a4LXtnkg5N1BZlHZa2U950zevzY4VXmywc9tH8JEe\nmC/3rG5lNahlPabjRyL57EtrS5qrGAskyUVrK6nTjWnWhBtbd6oaExFAD59n\nbRHwy+ieyADDKqtCloXPG3LEehi/ecI4cFIFGFLLA6z6it7j8x0AaR9aUgAQ\nO/mpWayfA7zik0IGI2LPpQmP3/kga5d5G445kp+TXO4qAT1bMlzfGOOIyfmi\n16jm\r\n=y7Vi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/hmm.js","gitHead":"83df6614993064dcf02b14a3ee1fc0b2878f6bb7","scripts":{"test":"tap test/*.test.js"},"_npmUser":{"name":"andreasmadsen","email":"amwebdk@gmail.com"},"repository":{"url":"git+https://github.com/nearform/node-hidden-markov-model-tf.git","type":"git"},"_npmVersion":"5.6.0","description":"A trainable Hidden Markov Model with Gaussian emissions using TensorFlow.js","directories":{},"_nodeVersion":"11.0.0-pre","dependencies":{"ndarray":"^1.0.18","ml-kmeans":"^4.0.1","seedrandom":"^2.4.4","ndarray-inv":"^0.2.0","ndarray-determinant":"^1.0.0","@tensorflow/tfjs-core":"^0.12.10","ndarray-cholesky-factorization":"^1.0.2"},"_hasShrinkwrap":false,"devDependencies":{"tap":"^12.0.1","isndarray":"^1.0.0","ndarray-pack":"^1.2.1","test-allclose":"^1.1.0","ndarray-unpack":"^1.0.0","@tensorflow/tfjs-node":"^0.1.11"},"_npmOperationalInternal":{"tmp":"tmp/hidden-markov-model-tf_1.0.0_1534327825479_0.641936653929817","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"hidden-markov-model-tf","version":"1.0.1","license":"Apache-2.0","_id":"hidden-markov-model-tf@1.0.1","maintainers":[{"name":"addaleax","email":"anna@addaleax.net"},{"name":"alan.slater","email":"alan.slater@nearform.com"},{"name":"andreasmadsen","email":"amwebdk@gmail.com"},{"name":"bridgear","email":"ruben@bridgewater.de"},{"name":"cianfoley_nearform","email":"cian.foley@nearform.com"},{"name":"conoro","email":"conor@conoroneill.com"},{"name":"damianberesford","email":"dberesford@gmail.com"},{"name":"dancork-nf","email":"dan.cork@nearform.com"},{"name":"davidefiorello","email":"davide@codeflyer.com"},{"name":"davidmarkclements","email":"huperekchuno@googlemail.com"},{"name":"filippo.desantis","email":"filippo.desantis@gmail.com"},{"name":"hueniverse","email":"eran@hammer.io"},{"name":"ivanjov","email":"ivanjov96@gmail.com"},{"name":"jasnell","email":"jasnell@gmail.com"},{"name":"jasonmelo","email":"jason.melo@gmail.com"},{"name":"jh3y","email":"jh3y@shiftbear.com"},{"name":"jimmymintzer","email":"jimmymintzer@gmail.com"},{"name":"kamil-mech","email":"kamil.mech@nearform.com"},{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"matteo.collina","email":"hello@matteocollina.com"},{"name":"mattrobinson","email":"matt.robinson@nearform.com"},{"name":"mcdonnelldean","email":"mcdonnelldean@outlook.com"},{"name":"mihaidma","email":"mihaizn@gmail.com"},{"name":"mrister","email":"mihovil.rister@gmail.com"},{"name":"nearformer","email":"david.clements@nearform.com"},{"name":"robbdempsey","email":"robb.dempsey@gmail.com"},{"name":"shaunjbaker","email":"shaun@schb.co.uk"},{"name":"shogun_panda","email":"shogun@cowtech.it"},{"name":"temsa","email":"florian.traverse@gmail.com"},{"name":"thekemkid","email":"glenkeane.94@gmail.com"},{"name":"wprl","email":"william@Kun.io"},{"name":"yoshuawuyts","email":"yoshuawuyts@gmail.com"}],"homepage":"https://github.com/nearform/node-hidden-markov-model-tf#readme","bugs":{"url":"https://github.com/nearform/node-hidden-markov-model-tf/issues"},"dist":{"shasum":"c34fd3c6907f8ac90e2bf4aebd2d853f47344bc8","tarball":"https://registry.npmjs.org/hidden-markov-model-tf/-/hidden-markov-model-tf-1.0.1.tgz","fileCount":38,"integrity":"sha512-h3bZtVPNGplBxovFSIzc868OFLWAiYEYmPKgJkovaDOy6nDQkPGtWYnxDJkQtHWxx6J7fKRDNs62ZdRs6fUiOg==","signatures":[{"sig":"MEUCIQDdrob+HuR3B/oLJHZhAYyk9kjk+CKdnIyj+QjPwsFcpgIgFvNb0owxO2U8VqFSDIIXF8OTwVJpcuYEllM4t4alJaw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":143712,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbe/9UCRA9TVsSAnZWagAA3ewP/2vvK7k/o31es2IE0Zu9\nakV0CUGqGBPC9pw/QjjxFZew0MzlOk6Gnty9HABzQnxf+2HnjKqzVKFN+tkY\n0p8nXeJO1ZyvlZ1/rjczVSNf3S4yhuyRY7tb2hjVpB6/ycnc0RDyNoQFh2mN\nCQkR/HoM+szoAuUCIY5kgOWxai7Ch0Yojx/zp1/SjYjQqmTkPNOxh8Vy9sLy\nC3oeKNK5Gh8hb1025rog1bVVq2kv3th3zDt5lonPuuGtdqdceCO/lR8N1aJQ\ntRt2k7dLupLaJg8//duQ75HnOuj+pP/Ui1NryUvaXNK49XrIGYByHnTd/Pmn\nls3wQ3JR9HI+mC/Al4uINLm7rQS6ozJz7EhqZ2phGrS2WTZ1lg+uWTU189Gm\nIAoabOyasiKQrt8m46t7f6bMHlV/r+//0aZN08v8jSid4AYPfhJD9cPH+AIQ\n2WprYAwwMD/m82utcyW3HYqbZfr5nmTCuJxyn7Uo73GMqHkhA5DKnZo/R+tM\nBvipUJiInzXVrgVNxu4RtwIZYPn3ta3mHzOt+VOSGmXlMYCwjbDXS9PrgEto\nYcb1y3xrtxrCUVcYtMvzMnEx4JwbewXK4mK1PLKl1tO+CP2G1QM9CWPXuLd+\nEYvcpWcNrhkz8w+yOOnLs/eotH/hUc3iNzGKcl1gM5Jk8agMfbTHyVSGa/D9\nBtrR\r\n=L2Z0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/hmm.js","gitHead":"d822f799bedf2845eac66f52a9ee77c8cc463bc1","scripts":{"test":"tap test/*.test.js"},"_npmUser":{"name":"andreasmadsen","email":"amwebdk@gmail.com"},"repository":{"url":"git+https://github.com/nearform/node-hidden-markov-model-tf.git","type":"git"},"_npmVersion":"5.6.0","description":"A trainable Hidden Markov Model with Gaussian emissions using TensorFlow.js","directories":{},"_nodeVersion":"11.0.0-pre","dependencies":{"ndarray":"^1.0.18","ml-kmeans":"^4.0.1","seedrandom":"^2.4.4","ndarray-inv":"^0.2.0","ndarray-determinant":"^1.0.0","@tensorflow/tfjs-core":"^0.12.10","ndarray-cholesky-factorization":"^1.0.2"},"_hasShrinkwrap":false,"devDependencies":{"tap":"^12.0.1","isndarray":"^1.0.0","ndarray-pack":"^1.2.1","test-allclose":"^1.1.0","ndarray-unpack":"^1.0.0","@tensorflow/tfjs-node":"^0.1.11"},"_npmOperationalInternal":{"tmp":"tmp/hidden-markov-model-tf_1.0.1_1534852948033_0.5059547199293379","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"hidden-markov-model-tf","version":"1.1.0","license":"Apache-2.0","_id":"hidden-markov-model-tf@1.1.0","maintainers":[{"name":"addaleax","email":"anna@addaleax.net"},{"name":"alan.slater","email":"alan.slater@nearform.com"},{"name":"andreasmadsen","email":"amwebdk@gmail.com"},{"name":"bridgear","email":"ruben@bridgewater.de"},{"name":"cianfoley_nearform","email":"cian.foley@nearform.com"},{"name":"conoro","email":"conor@conoroneill.com"},{"name":"damianberesford","email":"dberesford@gmail.com"},{"name":"dancork-nf","email":"dan.cork@nearform.com"},{"name":"davidefiorello","email":"davide@codeflyer.com"},{"name":"davidmarkclements","email":"huperekchuno@googlemail.com"},{"name":"filippo.desantis","email":"filippo.desantis@gmail.com"},{"name":"hueniverse","email":"eran@hammer.io"},{"name":"ivanjov","email":"ivanjov96@gmail.com"},{"name":"jasnell","email":"jasnell@gmail.com"},{"name":"jasonmelo","email":"jason.melo@gmail.com"},{"name":"jh3y","email":"jh3y@shiftbear.com"},{"name":"jimmymintzer","email":"jimmymintzer@gmail.com"},{"name":"kamil-mech","email":"kamil.mech@nearform.com"},{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"matteo.collina","email":"hello@matteocollina.com"},{"name":"mattrobinson","email":"matt.robinson@nearform.com"},{"name":"mcdonnelldean","email":"mcdonnelldean@outlook.com"},{"name":"mihaidma","email":"mihaizn@gmail.com"},{"name":"mrister","email":"mihovil.rister@gmail.com"},{"name":"nearformer","email":"david.clements@nearform.com"},{"name":"robbdempsey","email":"robb.dempsey@gmail.com"},{"name":"shaunjbaker","email":"shaun@schb.co.uk"},{"name":"shogun_panda","email":"paolo@cowtech.it"},{"name":"simoneb","email":"simone.busoli@gmail.com"},{"name":"temsa","email":"florian.traverse@gmail.com"},{"name":"thekemkid","email":"glenkeane.94@gmail.com"},{"name":"wprl","email":"william@Kun.io"},{"name":"yoshuawuyts","email":"yoshuawuyts@gmail.com"}],"homepage":"https://github.com/nearform/node-hidden-markov-model-tf#readme","bugs":{"url":"https://github.com/nearform/node-hidden-markov-model-tf/issues"},"dist":{"shasum":"6ce8c75278d4b3fc45390d378d7d823733030ea5","tarball":"https://registry.npmjs.org/hidden-markov-model-tf/-/hidden-markov-model-tf-1.1.0.tgz","fileCount":40,"integrity":"sha512-vl7WejmMaieWElvqlEOKLMuLuXlCqFf5n4c+rBFY/W/8Qk5MfLvSaTgcL5KDBKXnAN41NEQffccWAIrKQF4vaw==","signatures":[{"sig":"MEQCIG/xuoWpwyQQWJd3MxtxuySliujMq/+aDiqKSy1zNAAPAiBmoh+6WwfgxgktEHMn2YBmv5mFoJqDXEqcl4sVeLIhSg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":146552,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbvcGGCRA9TVsSAnZWagAAaw4P/1JJUp6zBG90Qvnsb0Mv\nPEooQJYch6+hZSZtKM5W3D78YyzQ7qsVz5vUYB8lG3zsrOMO3jnc/5d7byQF\n22/5GGQa0LVD732DHIZeN3Rhmbo/k9Ar9c6di+akvhPr3uZcsgQ7sTptiYnj\nwHS/qrLVHQED64ACTWnxT9pePy35He1KYxueJdqYI64OoeHng8zlk4wf5066\nYH6Vs6NpCrU2vJm9nj/JjWWsLRSfAepQE26QB+mZXOLGbhsohJ3VCa3W3Xlk\n9ac6LUPSkIr0nN8zOmxkzSqhv5D7eIiX2h9v1rYFcFgFMOajcakj/fPI64yW\nrOXsVywWw/8IZDqd4ND/VcURTTJFgmawFfceNCP2Q3LAzuPGoRn5rvl/gOql\n6d126gixcYryvH8SvKUJ59979I2/fmHqUjeMCvtkveN3mgw1K9LGMdpC+TVJ\nGjdZYGx/YQuz+t49x+xupqvaIyKeKm1gLduTz3J/wdeFp7UIaizXnpbgKIMY\nDol2b2T50dLL7N0dCpNI3ic0DD3kdTR0ifB1U0uduEmaymv6i566VvqxvEuP\nsV9fIf9pBTSKHzZ/3OvHadXXRyS12C7AWVdKlOD1AFcTPpACVdWcdtKQ5Q+k\nco3zF9bfJjNIrBKHbdZo5AyLK+XIu5svMm7fq3IFKtEheI17SoH1S/szfkua\ndCwM\r\n=L7TV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"ebd6b2b591a13157d25ea80b73645b6f2304011e","scripts":{"lint":"standardx --fix","test":"tap test/*.test.js","test-ci":"tap --100 test/*.test.js"},"_npmUser":{"name":"andreasmadsen","email":"amwebdk@gmail.com"},"repository":{"url":"git+https://github.com/nearform/node-hidden-markov-model-tf.git","type":"git"},"_npmVersion":"6.1.0","description":"A trainable Hidden Markov Model with Gaussian emissions using TensorFlow.js","directories":{},"_nodeVersion":"10.6.1-pre","dependencies":{"semver":"^5.5.1","ndarray":"^1.0.18","ml-kmeans":"^4.0.1","seedrandom":"^2.4.4","ndarray-inv":"^0.2.0","ndarray-determinant":"^1.0.0","ndarray-cholesky-factorization":"^1.0.2"},"eslintConfig":{"rules":{"semi":["error","always"],"camelcase":0}},"_hasShrinkwrap":false,"devDependencies":{"tap":"^12.0.1","isndarray":"^1.0.0","standardx":"^3.0.0","ndarray-pack":"^1.2.1","test-allclose":"^1.1.0","ndarray-unpack":"^1.0.0","@tensorflow/tfjs-core":"^0.13.3","@tensorflow/tfjs-node":"^0.1.18"},"_npmOperationalInternal":{"tmp":"tmp/hidden-markov-model-tf_1.1.0_1539162501255_0.6169570467931453","host":"s3://npm-registry-packages"}},"1.1.1":{"name":"hidden-markov-model-tf","version":"1.1.1","license":"Apache-2.0","_id":"hidden-markov-model-tf@1.1.1","maintainers":[{"name":"addaleax","email":"anna@addaleax.net"},{"name":"alan.slater","email":"alan.slater@nearform.com"},{"name":"andreasmadsen","email":"amwebdk@gmail.com"},{"name":"bridgear","email":"ruben@bridgewater.de"},{"name":"cianfoley_nearform","email":"cian.foley@nearform.com"},{"name":"conoro","email":"conor@conoroneill.com"},{"name":"damianberesford","email":"dberesford@gmail.com"},{"name":"dancork-nf","email":"dan.cork@nearform.com"},{"name":"davidefiorello","email":"davide@codeflyer.com"},{"name":"davidmarkclements","email":"huperekchuno@googlemail.com"},{"name":"filippo.desantis","email":"filippo.desantis@gmail.com"},{"name":"hueniverse","email":"eran@hammer.io"},{"name":"ivanjov","email":"ivanjov96@gmail.com"},{"name":"jasnell","email":"jasnell@gmail.com"},{"name":"jasonmelo","email":"jason.melo@gmail.com"},{"name":"jh3y","email":"jh3y@shiftbear.com"},{"name":"jimmymintzer","email":"jimmymintzer@gmail.com"},{"name":"kamil-mech","email":"kamil.mech@nearform.com"},{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"matteo.collina","email":"hello@matteocollina.com"},{"name":"mattrobinson","email":"matt.robinson@nearform.com"},{"name":"mcdonnelldean","email":"mcdonnelldean@outlook.com"},{"name":"mihaidma","email":"mihaizn@gmail.com"},{"name":"mrister","email":"mihovil.rister@gmail.com"},{"name":"nearformer","email":"david.clements@nearform.com"},{"name":"robbdempsey","email":"robb.dempsey@gmail.com"},{"name":"shaunjbaker","email":"shaun@schb.co.uk"},{"name":"shogun_panda","email":"paolo@cowtech.it"},{"name":"simoneb","email":"simone.busoli@gmail.com"},{"name":"temsa","email":"florian.traverse@gmail.com"},{"name":"thekemkid","email":"glenkeane.94@gmail.com"},{"name":"wprl","email":"william@Kun.io"},{"name":"yoshuawuyts","email":"yoshuawuyts@gmail.com"}],"homepage":"https://github.com/nearform/node-hidden-markov-model-tf#readme","bugs":{"url":"https://github.com/nearform/node-hidden-markov-model-tf/issues"},"dist":{"shasum":"99a6be66e978e4f333a93c6ddd2653f9be551750","tarball":"https://registry.npmjs.org/hidden-markov-model-tf/-/hidden-markov-model-tf-1.1.1.tgz","fileCount":40,"integrity":"sha512-umcO/vti6efCpv6mQw7pM/4HOUS4pp4gs/V6JeeZkXlUrhHRzoIar7+wpdJcpn3R/8yQ/OOSkjC/vU4pMNI84g==","signatures":[{"sig":"MEUCIQDYPCcmqspidSg+ojLKmfKd7X0E+lxw24qQl9sRuaHOnwIgVoSjv7txvbxzXS7lo5uqv44OyY4u3ZxhpzW0nLOB6b8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":146556,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbvhTHCRA9TVsSAnZWagAAc48P/i/CkwdnMn7Kipwf3Ea0\ngAtQUe4LZLDEvJLg1d3c+JDzlQmwLuofUqGg5fpl8J/jbmWRS80ZpAJ36+gQ\nZ5aOJ5vodoRgjGuvTAGSTDbq4MowZR9+YMarhVoDdfrMJ4zV35fY8+fzJ/LH\noz/eEkrOt/Eg6cjdSBkfjyzRTU7o7QSIPUSVGE3bxNg4wdsW9kQrki2PysJh\nwdGSv1wpajbBIso17/Nac0okPCEm7ID1/o1sU4rHFH05dVP6OWLH7cj3dyjo\nBKUEICteV+K3kHX2Uglko4GblBfraODz+d0z15S5+GeOiYeOQcBF1mYhpDzR\nn7JakK+F2sQN8tP8HpTUHwKJuMle0lVocqXbFp0WhKs4Fbb5ABWdcD6yvAc6\nBixHg8SH5QEIdYv7QtriiHNSwW4NZAXy2r1GG/EyMxXNMCT9VyedOlHxO2/z\nhiMwWENNT77JI8CKWWzp8EGk5EmaNTGol1PPfwiS8DYyRF5D39cvQrQ5LtTg\nVQdeFBxVZrXjBu/IVeE/Q9GCzVRjP63djyMbo6RRhl4FxerrtPaGjCEm2m9g\nETPzvfRwTWoMGIa6I+H24sRWlcTKxiSbyd2//2rs93o/UdllO5UaP7G3i7rz\ns93qAdWVVXo2EmJpTl6bSGNBNvtiU9PevasRhjBGeR6sRlTAGGlxa+FK/2Ct\nCBv8\r\n=wWGJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"9d1ecca6f415aa10bb8a8d9871382f4e94ee3fe4","scripts":{"lint":"standardx --fix","test":"tap test/*.test.js","test-ci":"tap --100 test/*.test.js"},"_npmUser":{"name":"matteo.collina","email":"hello@matteocollina.com"},"repository":{"url":"git+https://github.com/nearform/node-hidden-markov-model-tf.git","type":"git"},"_npmVersion":"6.4.1","description":"A trainable Hidden Markov Model with Gaussian emissions using TensorFlow.js","directories":{},"_nodeVersion":"8.12.0","dependencies":{"semver":"^5.5.1","ndarray":"^1.0.18","ml-kmeans":"^4.0.1","seedrandom":"^2.4.4","ndarray-inv":"^0.2.0","ndarray-determinant":"^1.0.0","ndarray-cholesky-factorization":"^1.0.2"},"eslintConfig":{"rules":{"semi":["error","always"],"camelcase":0}},"_hasShrinkwrap":false,"devDependencies":{"tap":"^12.0.1","isndarray":"^1.0.0","standardx":"^3.0.0","ndarray-pack":"^1.2.1","test-allclose":"^1.1.0","ndarray-unpack":"^1.0.0","@tensorflow/tfjs-core":"^0.13.3","@tensorflow/tfjs-node":"^0.1.18"},"_npmOperationalInternal":{"tmp":"tmp/hidden-markov-model-tf_1.1.1_1539183814800_0.8115161004059237","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"hidden-markov-model-tf","version":"1.2.0","license":"Apache-2.0","_id":"hidden-markov-model-tf@1.2.0","maintainers":[{"name":"addaleax","email":"anna@addaleax.net"},{"name":"alan.slater","email":"alan.slater@nearform.com"},{"name":"andreasmadsen","email":"amwebdk@gmail.com"},{"name":"cianfoley_nearform","email":"cian.foley@nearform.com"},{"name":"conoro","email":"conor@conoroneill.com"},{"name":"damianberesford","email":"dberesford@gmail.com"},{"name":"dancork-nf","email":"dan.cork@nearform.com"},{"name":"davidefiorello","email":"davide@codeflyer.com"},{"name":"davidmarkclements","email":"huperekchuno@googlemail.com"},{"name":"filippo.desantis","email":"filippo.desantis@gmail.com"},{"name":"hueniverse","email":"eran@hammer.io"},{"name":"ivanjov","email":"ivanjov96@gmail.com"},{"name":"jasnell","email":"jasnell@gmail.com"},{"name":"jasonmelo","email":"jason.melo@gmail.com"},{"name":"jh3y","email":"jh3y@shiftbear.com"},{"name":"jimmymintzer","email":"jimmymintzer@gmail.com"},{"name":"kamil-mech","email":"kamil.mech@nearform.com"},{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"matteo.collina","email":"hello@matteocollina.com"},{"name":"mattrobinson","email":"matt.robinson@nearform.com"},{"name":"mcdonnelldean","email":"mcdonnelldean@outlook.com"},{"name":"mihaidma","email":"mihaizn@gmail.com"},{"name":"mrister","email":"mihovil.rister@gmail.com"},{"name":"nearformer","email":"david.clements@nearform.com"},{"name":"shaunjbaker","email":"shaun@schb.co.uk"},{"name":"shogun_panda","email":"paolo@cowtech.it"},{"name":"simoneb","email":"simone.busoli@gmail.com"},{"name":"temsa","email":"florian.traverse@gmail.com"},{"name":"thekemkid","email":"glenkeane.94@gmail.com"},{"name":"wprl","email":"william@Kun.io"}],"homepage":"https://github.com/nearform/node-hidden-markov-model-tf#readme","bugs":{"url":"https://github.com/nearform/node-hidden-markov-model-tf/issues"},"dist":{"shasum":"dcc52ade294cbe40fc0f731574276abc127d0172","tarball":"https://registry.npmjs.org/hidden-markov-model-tf/-/hidden-markov-model-tf-1.2.0.tgz","fileCount":40,"integrity":"sha512-ZjpYMbp6VAngltgvP6g7MUP7mvxSJpVRLiKdDe0m7kLbvKpJ8q9ZumJBHcM6XhfIT2vbbgEl6lKbc41txy2jHw==","signatures":[{"sig":"MEUCIQDiP3LStdr1GOOrKDbREKEapL5ZTJhfBWlbMrACxessHwIgOLSdwiJYrHVMG2PJGuM5gYRwEuGso8QQcKlOMtcwTtc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":146815,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb3tX+CRA9TVsSAnZWagAAygkP/RtEd4YlWWbYIk7TB7h5\nByV5iHK3S/Lzvi2eNU2svnvP30Oj22AY0pLj9Ky2WRat2J8OwRU8q1mDG6gt\nVudRliv8Za+EF1yLNHOUXG1uxg6MyZtcxcIKFzt6G7RzAtIXxZkxLcABWako\njaoEEq/R9VbZiVa2zj6Dnw5ehAlFGG2e0p083OHMlryffI6RNKDnLZZBb5fU\nn658+ZAJkdsNU1j9sAX8SA0bcNkVlteUraq3VHCtw5a9I0irjwgBstnk1NTl\nmkvAq3jm5pFB4tdYC57dbqP2vFYfB4QMJz7QK8WYGJIvUfIU2er3DyDkkEXG\nnLg15uozCsS4MrvanSURWa1jv2PM70dfEpltCazCsFmxUz14CvCKZzxkXcuZ\njIcWgMrUtE0S2clxWtSnkQsnxZO/Yf9eXPtasiipJUjyuLqeRVYa2O2ZXTOM\nT6kJuYagJ7H36aQMjXLSIdF7+QNYYp6/lTrVoZ5+59L3Ce70qNdxrhJgBB6c\n+rXaGMqr3607O1pZxc+nnMh0EPOef/wxCgmnxAxn7A5+Zr/vGguC1CTPhgfH\ndyVxR9q46GjOUPONYE654vh1fqQGM7huxDLMbxPgg4RPEDY6kU1U5L2j0DAx\nIVYNgR4A5EddvySxbZv6WwQyNYBTk97gUQiOyF/CAo2F5rUYRLJg2KtcgJOm\nF7LW\r\n=hmr0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"033e5e47dcbe6df05d8bfd0acf6bcfb68936fd57","scripts":{"lint":"standardx --fix","test":"tap test/*.test.js","test-ci":"tap --100 test/*.test.js"},"_npmUser":{"name":"matteo.collina","email":"hello@matteocollina.com"},"repository":{"url":"git+https://github.com/nearform/node-hidden-markov-model-tf.git","type":"git"},"_npmVersion":"6.4.1","description":"A trainable Hidden Markov Model with Gaussian emissions using TensorFlow.js","directories":{},"_nodeVersion":"8.12.0","dependencies":{"semver":"^5.6.0","ndarray":"^1.0.18","ml-kmeans":"^4.0.1","seedrandom":"^2.4.4","ndarray-inv":"^0.2.0","ndarray-determinant":"^1.0.0","ndarray-cholesky-factorization":"^1.0.2"},"eslintConfig":{"rules":{"semi":["error","always"],"camelcase":0}},"_hasShrinkwrap":false,"devDependencies":{"tap":"^12.0.1","isndarray":"^1.0.0","standardx":"^3.0.0","ndarray-pack":"^1.2.1","test-allclose":"^1.1.0","ndarray-unpack":"^1.0.0","@tensorflow/tfjs-core":"^0.13.9","@tensorflow/tfjs-node":"^0.1.19"},"peerDependencies":{"@tensorflow/tfjs-core":"^0.13.9"},"_npmOperationalInternal":{"tmp":"tmp/hidden-markov-model-tf_1.2.0_1541330429153_0.5687206679880787","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"hidden-markov-model-tf","version":"2.0.0","license":"Apache-2.0","_id":"hidden-markov-model-tf@2.0.0","maintainers":[{"name":"adaschevici","email":"a.daschevici@gmail.com"},{"name":"addaleax","email":"anna@addaleax.net"},{"name":"alan.slater","email":"alan.slater@nearform.com"},{"name":"andreasmadsen","email":"amwebdk@gmail.com"},{"name":"cianfoley_nearform","email":"cian.foley@nearform.com"},{"name":"conoro","email":"conor@conoroneill.com"},{"name":"cuginoale","email":"alessio.carnevale@gmail.com"},{"name":"damianberesford","email":"dberesford@gmail.com"},{"name":"dancork-nf","email":"dan.cork@nearform.com"},{"name":"davidefiorello","email":"davide@codeflyer.com"},{"name":"davidmarkclements","email":"huperekchuno@googlemail.com"},{"name":"filippo.desantis","email":"filippo.desantis@gmail.com"},{"name":"goto-bus-stop","email":"renee@kooi.me"},{"name":"hueniverse","email":"eran@hammer.io"},{"name":"ivanjov","email":"ivanjov96@gmail.com"},{"name":"jasnell","email":"jasnell@gmail.com"},{"name":"jasonmelo","email":"jason.melo@gmail.com"},{"name":"jh3y","email":"jh3y@shiftbear.com"},{"name":"jimmymintzer","email":"jimmymintzer@gmail.com"},{"name":"kamil-mech","email":"kamil.mech@nearform.com"},{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"matteo.collina","email":"hello@matteocollina.com"},{"name":"mattrobinson","email":"matt.robinson@nearform.com"},{"name":"mcdonnelldean","email":"mcdonnelldean@outlook.com"},{"name":"mihaidma","email":"mihaizn@gmail.com"},{"name":"mrister","email":"mihovil.rister@gmail.com"},{"name":"nearformer","email":"david.clements@nearform.com"},{"name":"shaunjbaker","email":"shaun@schb.co.uk"},{"name":"shogun_panda","email":"paolo@cowtech.it"},{"name":"simoneb","email":"simone.busoli@gmail.com"},{"name":"thekemkid","email":"glenkeane.94@gmail.com"},{"name":"wprl","email":"william@Kun.io"}],"homepage":"https://github.com/nearform/node-hidden-markov-model-tf#readme","bugs":{"url":"https://github.com/nearform/node-hidden-markov-model-tf/issues"},"dist":{"shasum":"1f7a198b85542e5cb7acee20b0d50d446ca6502c","tarball":"https://registry.npmjs.org/hidden-markov-model-tf/-/hidden-markov-model-tf-2.0.0.tgz","fileCount":40,"integrity":"sha512-zhKUg7bORJ24Us291+fAhbiDYN2AiWiGKFw68hj1Pol3s+unrLpdaOB5HNfO1XUvVhPCRvu4fi8gRfLIn00p6w==","signatures":[{"sig":"MEQCICS6i4oSm8s4DtJGhQjoXSeRpW25QNb2G/69r3L6F1siAiAF5JwVm2cREWfNjt4C9AwUK4hNEMAd/jMGEjY9keGQaw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":146925,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcCpp7CRA9TVsSAnZWagAAu5oP/Atke2hQx5+X9jZLFC2O\nbPimo9yJQ9EHB5OaH2M69i6e9vUtAjDqjhp0UK88nWEAnQJ2z3D61NcEWh7T\nfrXIYGhDqSwV+7F97TJ+EKP7IXtR9Fw/7AsChop2ZqiBXaaFeosGzJ63EEz4\nN97Gx/TB/iPQQtBDDmhkV0k5F8jw0aTCk/AEM3ZFuAheZp0EAA6DKAYatN9A\nWuzZCOp6MroQAZODT1qxINIJVhsaki1FLFChYvWVnopqyc3Wh6eFLaAE+Ufn\nydp4HGD/qNGS+s1WQAOul2g4yDZvcSG4lI0+xtXJ29mqk03KojbzPIsCbzG6\nnz55nPKMLMn1zKxfaGeeM76d3XTWpr8tX7+ppRhaqP6uiJyl0qwtSJavUnys\nI5jQZr9rzM8LMT+lS+/RiQvBHxPq16QtTHyJDXgZe7OJVS3hqDHuLGc4YACU\nxPMEqYybmd/WsQA2T2n/AXVCuoJ98rmWWx5cjwNEhWHDVW9HyP++V3sEJm0Q\n7zZfkJLjQic9GwYu1zfndzALdO8v3olIugE0mAW2waVxaec+vnT+JXQdPCsg\ndlNGD3qIuSITLOLq6hqCf86ocZ7MkkBU+8dJu773NllHOJajb7MmS0Lq7SgX\ns497NrJw2yhWjHrMIPbwkZt0uAp7mM1vDUDKeWEJwPLbmJ0CeYQ/tRAN0Vp5\noK/f\r\n=9bAx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"dc0805ab6ad7aecb997e920da16ccc43983b597d","scripts":{"lint":"standardx --fix","test":"tap test/*.test.js","test-ci":"tap --100 test/*.test.js"},"_npmUser":{"name":"matteo.collina","email":"hello@matteocollina.com"},"repository":{"url":"git+https://github.com/nearform/node-hidden-markov-model-tf.git","type":"git"},"_npmVersion":"6.4.1","description":"A trainable Hidden Markov Model with Gaussian emissions using TensorFlow.js","directories":{},"_nodeVersion":"10.14.0","dependencies":{"semver":"^5.6.0","ndarray":"^1.0.18","ml-kmeans":"^4.0.1","seedrandom":"^2.4.4","ndarray-inv":"^0.2.0","ndarray-determinant":"^1.0.0","ndarray-cholesky-factorization":"^1.0.2"},"eslintConfig":{"rules":{"semi":["error","always"],"camelcase":0}},"_hasShrinkwrap":false,"devDependencies":{"tap":"^12.1.0","isndarray":"^1.0.0","standardx":"^3.0.0","ndarray-pack":"^1.2.1","test-allclose":"^1.1.0","ndarray-unpack":"^1.0.0","@tensorflow/tfjs-core":"^0.14.1","@tensorflow/tfjs-node":"^0.1.21"},"peerDependencies":{"@tensorflow/tfjs-core":"^0.14.1"},"_npmOperationalInternal":{"tmp":"tmp/hidden-markov-model-tf_2.0.0_1544198778513_0.034777934803444044","host":"s3://npm-registry-packages"}},"3.0.0":{"name":"hidden-markov-model-tf","version":"3.0.0","license":"Apache-2.0","_id":"hidden-markov-model-tf@3.0.0","maintainers":[{"name":"addaleax","email":"anna@addaleax.net"},{"name":"admataz","email":"adam@admataz.com"},{"name":"alan.slater","email":"alan.slater@nearform.com"},{"name":"andreasmadsen","email":"amwebdk@gmail.com"},{"name":"chrisdwheatley","email":"chriswheatley87@gmail.com"},{"name":"cianfoley_nearform","email":"cian.foley@nearform.com"},{"name":"ckiss","email":"kissdevel@gmail.com"},{"name":"conoro","email":"conor@conoroneill.com"},{"name":"cuginoale","email":"alessio.carnevale@gmail.com"},{"name":"damianberesford","email":"dberesford@gmail.com"},{"name":"dancork-nf","email":"dan.cork@nearform.com"},{"name":"davidefiorello","email":"davide@codeflyer.com"},{"name":"davidmarkclements","email":"huperekchuno@googlemail.com"},{"name":"donovanhutchinson","email":"donovan.hutchinson@nearform.com"},{"name":"filippo.desantis","email":"filippo.desantis@gmail.com"},{"name":"goto-bus-stop","email":"renee@kooi.me"},{"name":"iamsw","email":"sjwilson89@gmail.com"},{"name":"jackdclark","email":"jack@jackdc.com"},{"name":"jasnell","email":"jasnell@gmail.com"},{"name":"jh3y","email":"jh3yyy@gmail.com"},{"name":"jimmymintzer","email":"jimmymintzer@gmail.com"},{"name":"joezo","email":"joezo156@googlemail.com"},{"name":"kamil-mech","email":"kamil.mech@nearform.com"},{"name":"lpww","email":"thomas.treffry@nearform.com"},{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"matteo.collina","email":"hello@matteocollina.com"},{"name":"mattrobinson","email":"matt.robinson@nearform.com"},{"name":"mcdonnelldean","email":"mcdonnelldean@outlook.com"},{"name":"nearformer","email":"david.clements@nearform.com"},{"name":"ovhemert","email":"osmond@vanhemert.nu"},{"name":"shaunjbaker","email":"shaun@schb.co.uk"},{"name":"shogun_panda","email":"paolo@cowtech.it"},{"name":"simoneb","email":"simone.busoli@gmail.com"},{"name":"thekemkid","email":"glenkeane.94@gmail.com"},{"name":"wprl","email":"william@Kun.io"}],"homepage":"https://github.com/nearform/node-hidden-markov-model-tf#readme","bugs":{"url":"https://github.com/nearform/node-hidden-markov-model-tf/issues"},"dist":{"shasum":"4be9210df7d9a5a6f2bf03e847298777c82c53b9","tarball":"https://registry.npmjs.org/hidden-markov-model-tf/-/hidden-markov-model-tf-3.0.0.tgz","fileCount":40,"integrity":"sha512-HvnuphQ21Q2zd0vhCuus3pZVCiIvarLbmWlz4tH0scjCOykYv11MKYu4gT7scwMxnvyAUNVgT6psWWwC0R/DXQ==","signatures":[{"sig":"MEUCIQD697q0RATOyFQHh792/ZsW0V5u9YOPu7uc/9DO6xuMPgIgWdg9NKCfGYU5JdC8GgmLScW4BXZblDxHHR40ESOOJOo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":146521,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdDJ+yCRA9TVsSAnZWagAAAtgP/jZJCwI/+f55JB0ASMNK\njCv0zSoyoiH2cqoaj/s/P/XoIflGb9Ptir/76Wo11Z85Mfs2uIUV+c2nUMfG\nqVmmEYguuPv4zqy4rxY4ibmEKhsf2TAq2+NsW7To27syEnc5PyXEIWzJ8NhF\nGD5AK5IM3E/Okxwc4YLBx7eEGgwNMkc7l6l3vTv8pE/FIJs2DwUka42xUR1e\ngnqM5f8Ca7puOgUTuwqBhgirMWXAL8xwXy9S8jzsjbSXCsHy66WPtuXgzzpX\n3c/sSVhZlGYsK7H8kA/4MlFC1EjTHfNzpVdGLox/kRm4fM3+CbSYrqyGMQD+\nxzc8/jIn8ZMLXR6mxEBWcGGh9hAOSHpOM5KUoq/jhhth/20GaoqYe9FJd5Y1\n2YYgugwq8xC5t+RUiiI0onNQ7l6RF5DVp79/pH70rRqIm2g2wO7lVCh4q72P\nsL4V9ilxSk0y8ocopQE3s6IWZpOwnNf681rvsS69Nc7ldA/QjJJeaY/bML1q\nEmBd1rMPNqPsK+2aTzJh7hUs67nmpZBmI55SYmKc0GqLv2lNalJ79lA6FDAK\nvG1+fCfwLp2jjFBXJQmmb2/sp7LZXCJf+vw4YhHEnGwI3mueX3wlkFtXXKaJ\n2ssTYBlNVkT4IF46D5ziMUWnih/QzWGAMrRkYIlOb2Mmr3KLl9eJVLLKXfiQ\nOGwr\r\n=2I/c\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"814323d151debc2dd19dccf6ba99397044841508","scripts":{"lint":"standardx --fix","test":"tap test/*.test.js","test-ci":"tap --100 test/*.test.js"},"_npmUser":{"name":"andreasmadsen","email":"amwebdk@gmail.com"},"repository":{"url":"git+https://github.com/nearform/node-hidden-markov-model-tf.git","type":"git"},"_npmVersion":"6.9.0","description":"A trainable Hidden Markov Model with Gaussian emissions using TensorFlow.js","directories":{},"_nodeVersion":"13.0.0-pre","dependencies":{"semver":"^6.1.1","ndarray":"^1.0.18","ml-kmeans":"^4.0.1","seedrandom":"^3.0.1","ndarray-inv":"^0.2.0","ndarray-determinant":"^1.0.0","ndarray-cholesky-factorization":"^1.0.2"},"eslintConfig":{"rules":{"semi":["error","always"],"camelcase":0}},"_hasShrinkwrap":false,"devDependencies":{"tap":"^14.2.4","isndarray":"^1.0.0","standardx":"^3.0.0","ndarray-pack":"^1.2.1","test-allclose":"^1.1.0","ndarray-unpack":"^1.0.0","@tensorflow/tfjs-core":"^1.2.1","@tensorflow/tfjs-node":"^1.2.1"},"peerDependencies":{"@tensorflow/tfjs-core":"^1.2.1"},"_npmOperationalInternal":{"tmp":"tmp/hidden-markov-model-tf_3.0.0_1561108401988_0.07607813884401082","host":"s3://npm-registry-packages"}},"4.0.0":{"name":"hidden-markov-model-tf","version":"4.0.0","license":"Apache-2.0","_id":"hidden-markov-model-tf@4.0.0","maintainers":[{"name":"radomird","email":"radomir.drndarski@nearform.com"},{"name":"rafaelgss","email":"rafael.nunu@hotmail.com"},{"name":"capaj","email":"capajj@gmail.com"},{"name":"alan.slater","email":"alan.slater@nearform.com"},{"name":"davidefiorello","email":"davide@codeflyer.com"},{"name":"filippo.desantis","email":"filippo.desantis@gmail.com"},{"name":"jimmymintzer","email":"jimmymintzer@gmail.com"},{"name":"cianfoley_nearform","email":"cian.foley@nearform.com"},{"name":"mattrobinson","email":"matt.robinson@nearform.com"},{"name":"shogun_panda","email":"paolo@cowtech.it"},{"name":"shaunjbaker","email":"shaun@schb.co.uk"},{"name":"nearformer","email":"david.clements@nearform.com"},{"name":"matteo.collina","email":"hello@matteocollina.com"},{"name":"simoneb","email":"simone.busoli@gmail.com"},{"name":"iamsw","email":"sjwilson89@gmail.com"},{"name":"joezo","email":"joezo156@googlemail.com"},{"name":"jackdclark","email":"jack@jackdc.com"},{"name":"lpww","email":"thomas.treffry@nearform.com"},{"name":"chrisdwheatley","email":"chriswheatley87@gmail.com"},{"name":"admataz","email":"adam@admataz.com"},{"name":"ckiss","email":"kissdevel@gmail.com"},{"name":"ovhemert","email":"hello@ovhemert.dev"},{"name":"fiacc","email":"fiaccobm@gmail.com"},{"name":"zimny","email":"piotr.zimoch@cloudaemons.com"},{"name":"irelandm","email":"mark.ireland@nearform.com"},{"name":"dublx","email":"luis.faustino@gmail.com"},{"name":"paolochiodi","email":"chiodi84@gmail.com"},{"name":"eamonn.frisby","email":"eamonn.frisby@nearform.com"},{"name":"jackmurdoch","email":"jack.murdoch@nearform.com"},{"name":"sameer13","email":"sameer13@gmail.com"},{"name":"gilach","email":"grzegorz@ilach.pl"},{"name":"andreasmadsen","email":"amwebdk@gmail.com"}],"homepage":"https://github.com/nearform/node-hidden-markov-model-tf#readme","bugs":{"url":"https://github.com/nearform/node-hidden-markov-model-tf/issues"},"dist":{"shasum":"26d4f9f4c28c047c54381bceed777089810d362b","tarball":"https://registry.npmjs.org/hidden-markov-model-tf/-/hidden-markov-model-tf-4.0.0.tgz","fileCount":41,"integrity":"sha512-q8VeBNCyQ5CNsUlbt4T5JXc+pUeKqq7LEGjs4HiH+thgZ2fuyJ9pf/V66ZFx9jZobXkwxVuQRWKZa3TwOFW+zw==","signatures":[{"sig":"MEYCIQCXERuxp8RVH038tHXgG6KD6n9om4p12mygjoqhSnVc9gIhAP0M/UDf6AzIRJTRVPJZ0fWrR2//27trZ2pDC57kJIek","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":160273,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh8unlCRA9TVsSAnZWagAAFXkP/32GDMfKEE0GQff3E7Na\n8z6ysiFN0nTaDtLFQb5g8VblpqNZ5vUFIeefTnxOCbcd25+Sq2lgAcMgZ99C\nTjrzEeyuY5uqqGnVlgfiSYR28rlyzGgXrxGo94fcrQKU7+maC4pL2Z0t9dFF\n7dB/F02gEQ9n8MMYURCWBBgd7X9e8u+lJcDtjW1M+1EepvWoj2AhMDGCOVov\ns8tfSIZAfR6HalLswVhq3GY1xE6OZmxvcoEedHjN74DRrGk5Iil55o/4Kpfn\nitUDWS54OJHpur67eIePvDDlsoBIfhApaPYbjk0Tkbam1KoRDEwC4BFCWVLV\nmlHbf+TlKB6psr0l/xlk8uNRkbw3AFv5R/Q9p3Mc/JoVCuHB2pi12jYaSwmV\nKTuS7ok69YNYssan256vSIB7atDc/Ar87swj4xUK0X91UkBx7oglBzT13ge0\nTX01aTSxM6853MoZUZHKslJJIygOOl/x0qESjH+qSezaKxcozP0yTdPKuQPF\nBxetYmcD5UEimu4GFufe0HPwXKsJt527oUxB7xyqsmuZlY9ipejlDvJXoZpn\niFyC7VqOvS1+PJ9mPYpVHEqVCnft17Lp+wWv0KsNzLZPIdqtT67+nzNp6R9r\neul7P/Tnso8pfKdKb05b0859sOzsVl6xIfb9ymrAZwmzcxNI+WlvIgzSvbse\nonEZ\r\n=8KEZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"b5c76e62c2c7dbae3eea3bc1efb3a06d567e5ade","scripts":{"lint":"standardx --fix","test":"tap test/*.test.js","test-ci":"tap --100 test/*.test.js"},"_npmUser":{"name":"rafaelgss","email":"rafael.nunu@hotmail.com"},"repository":{"url":"git+https://github.com/nearform/node-hidden-markov-model-tf.git","type":"git"},"_npmVersion":"6.14.15","description":"A trainable Hidden Markov Model with Gaussian emissions using TensorFlow.js","directories":{},"_nodeVersion":"12.22.7","dependencies":{"semver":"^6.1.1","ndarray":"^1.0.18","ml-kmeans":"^4.0.1","seedrandom":"^3.0.1","ndarray-inv":"^0.2.0","ndarray-determinant":"^1.0.0","ndarray-cholesky-factorization":"^1.0.2"},"eslintConfig":{"rules":{"semi":["error","always"],"camelcase":0}},"_hasShrinkwrap":false,"devDependencies":{"tap":"^15.1.6","isndarray":"^1.0.0","standardx":"^3.0.0","ndarray-pack":"^1.2.1","test-allclose":"^1.1.0","ndarray-unpack":"^1.0.0","@tensorflow/tfjs-core":"^3.13.0","@tensorflow/tfjs-node":"^3.13.0"},"peerDependencies":{"@tensorflow/tfjs-core":"^3.13.0"},"_npmOperationalInternal":{"tmp":"tmp/hidden-markov-model-tf_4.0.0_1643309541378_0.5664351766825657","host":"s3://npm-registry-packages"}}},"time":{"created":"2018-08-15T10:10:25.478Z","modified":"2026-08-31T10:09:07.379Z","1.0.0":"2018-08-15T10:10:25.586Z","1.0.1":"2018-08-21T12:02:28.133Z","1.1.0":"2018-10-10T09:08:21.480Z","1.1.1":"2018-10-10T15:03:34.953Z","1.2.0":"2018-11-04T11:20:29.342Z","2.0.0":"2018-12-07T16:06:18.695Z","3.0.0":"2019-06-21T09:13:22.259Z","4.0.0":"2022-01-27T18:52:21.569Z"},"bugs":{"url":"https://github.com/nearform/node-hidden-markov-model-tf/issues"},"license":"Apache-2.0","homepage":"https://github.com/nearform/node-hidden-markov-model-tf#readme","repository":{"url":"git+https://github.com/nearform/node-hidden-markov-model-tf.git","type":"git"},"description":"A trainable Hidden Markov Model with Gaussian emissions using TensorFlow.js","maintainers":[{"email":"eamonn.frisby@nearform.com","name":"eamonn.frisby"},{"email":"donal.moynihan@nearform.com","name":"donal.moynihan"},{"email":"contato@gbdev.me","name":"gbdev13"},{"email":"steve.goode@nearform.com","name":"sociablesteve"},{"email":"ryan@loose-bits.com","name":"ryan.roemer"},{"email":"elizibin@gmail.com","name":"elizibin"},{"email":"amwebdk@gmail.com","name":"andreasmadsen"}],"readme":"# hidden-markov-model-tf\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/nearform/node-hidden-markov-model-tf.svg)](https://greenkeeper.io/)\n\n**A trainable Hidden Markov Model with Gaussian emissions using TensorFlow.js**\n\n## Install\n\n```\n$ npm install hidden-markov-model-tf\n```\n\nRequire: Node v12+\n\n## Usage\n\n```js\nconst assert = require('assert'):\nrequire('@tensorflow/tfjs-node'); // Optional, enable native TensorFlow backend\nconst tf = require('@tensorflow/tfjs');\nconst HMM = require('hidden-markov-model-tf');\n\nconst [observations, time, states, dimensions] = [5, 7, 3, 2];\n\n// Configure model\nconst hmm = new HMM({\n  states: states,\n  dimensions: dimensions\n});\n\n// Set parameters\nawait hmm.setParameters({\n  pi: tf.tensor([0.15, 0.20, 0.65]),\n  A: tf.tensor([\n    [0.55, 0.15, 0.30],\n    [0.45, 0.45, 0.10],\n    [0.15, 0.20, 0.65]\n  ]),\n  mu: tf.tensor([\n    [-7.0, -8.0],\n    [-1.5,  3.7],\n    [-1.7,  1.2]\n  ]),\n  Sigma: tf.tensor([\n    [[ 0.12, -0.01],\n     [-0.01,  0.50]],\n    [[ 0.21,  0.05],\n     [ 0.05,  0.03]],\n    [[ 0.37,  0.35],\n     [ 0.35,  0.44]]\n  ])\n});\n\n// Sample data\nconst sample = hmm.sample({observations, time});\nassert.deepEqual(sample.states.shape, [observations, time]);\nassert.deepEqual(sample.emissions.shape, [observations, time, dimensions]);\n\n// Your data must be a tf.tensor with shape [observations, time, dimensions]\nconst data = sample.emissions;\n\n// Fit model with data\nconst results = await hmm.fit(data);\nassert(results.converged);\n\n// Predict hidden state indices\nconst inference = hmm.inference(data);\nassert.deepEqual(inference.shape, [observations, time]);\nstates.print();\n\n// Compute log-likelihood\nconst logLikelihood = hmm.logLikelihood(data);\nassert.deepEqual(logLikelihood.shape, [observations]);\nlogLikelihood.print();\n\n// Get parameters\nconst {pi, A, mu, Sigma} = hmm.getParameters();\npi.print();\nA.print();\nmu.print();\nSigma.print();\n```\n\n## Documentation\n\n`hidden-markov-model-tf` is TensorFlow.js based, therefore your input must\nbe povided as a `tf.tensor`. Likewise most outputs are also provided as a\n`tf.tensor`. You can always get a `TypedArray` with `await tensor.data()`.\n\n### hmm = new HMM({states, dimensions})\n\nThe constructor takes two integer arguments. The number of hidden `states` and\nthe number of `dimensions` in the Gaussian emissions.\n\n### result = await hmm.fit(tensor, {maxIterations = 100, tolerance = 0.001, seed})\n\nThe `fit` method, takes an required `tf.tensor` object. That must have the\nshape `[observations, time, dimensions]`. If you only have one observation\nit should have the shape `[1, time, dimensions]`.\n\nThe `fit` method, returns a `Promise` for the `results`. The `results` is\nan object with the following properties:\n\n```js\nconst {\n   // the number of iterations used, will at most be `maxIterations`\n  iterations,\n\n   // if the training coverged, given the `tolerance`,\n   // before `maxIterations` was reached\n  converged,\n\n  // The achived tolerance, after the number of iterations. This can be\n  // useful if the optimizer did not converge, but you want to know how\n  // good the fit is.\n  tolerance\n} = await hmm.fit(tensor);\n```\n\nThe `fit` method uses a KMeans initialization. This initialization algorithm is\nrandom but can be seeded with the optional `seed` parameter.\n\nAfter initialization, the model is optimized using an EM-algorithm called\nthe [Baum–Welch algorithm](https://en.wikipedia.org/wiki/Baum%E2%80%93Welch_algorithm).\n\n### states = hmm.inference(tensor)\n\nThe `inference` method, takes an required `tf.tensor` object. That must have\nthe shape `[observations, time, dimensions]`.\n\nIt uses the [Viterbi algorithm](https://en.wikipedia.org/wiki/Viterbi_algorithm)\nfor infering the hidden state. Which is returned as `tf.tensor` with the\nshape `[observations, time]`.\n\n```js\nconst states = hmm.inference(tensor);\nstates.print();\nconsole.log(await states.data());\n```\n\n### logLikelihood = hmm.logLikelihood(tensor)\n\nThe `inference` method, takes an required `tf.tensor` object. That must have\nthe shape `[observations, time, dimensions]`.\n\nIt uses the forward procedure of the\n[Baum–Welch algorithm](https://en.wikipedia.org/wiki/Baum%E2%80%93Welch_algorithm)\nto compute the logLikelihood for each observation. This is returned as a\n`tf.tensor` with the shape `[observations]`.\n\n### {states, emissions} = hmm.sample({ observations, time, seed })\n\nThe `sample` method, samples data from the Hidden Markov Model distribution\nand returns both the sampled states and Gaussian emissions, as two `tf.tensor`\nobjects.\n\nthe `states` tensor has the shape `[observations, time]`. While the `emissions`\ntensor has the `shape` [observations, time, dimensions].\n\nThe sampling can be seed with the optional `seed` parameter.\n\n### {pi, A, mu, Sigma} = hmm.getParameters()\n\nReturn the underlying parameters:\n\n* `pi`: the hidden state prior distribution. `shape = [states]`\n* `A`: the hidden state transfer distribution. `shape = [states, states]`\n* `mu`: the mean of the Gaussian emission distribution. `shape = [states, dimensions]`\n* `Sigma`: the covariance matrix of the Gaussian emission distribution. `shape = [states, dimensions,  dimensions]`\n\n### await hmm.setParameters({pi, A, mu, Sigma})\n\nSet the underlying parameters of the Hidden Markov Model. Note that some\ninternal properties related to the Gaussian distribution will be precomputed.\nTherefore this returns a `Promise`. Be sure to wait for the promise to\nresolve before calling any other method.\n","readmeFilename":"README.md"}