I have to automatically analyse json log files using Machine Learning techniques in order to better understand the user behavior and recognise frequently performed actions to improve the usability of a application. The log file contains entries like Filesystem Events, Mouse Events, Keyboard Event, Application Events (launched, terminated, active, deactivated, ...), ... which were logged during the usage of a specific application.
The Logged entries look like this:
{
"timestamp" : "20150427T100724.571637",
"entry" :
{
"eventType" : 1,
"eventTypeString" : "created",
"nodePath" : "/Applications/Firefox.app",
"nodeType" : 3,
"nodeTypeString" : "directory"
},
"entryType" : 4
},
{
"timestamp" : "20150427T100729.072595",
"entry" :
{
"eventType" : 2,
"eventTypeString" : "clickRight",
"mouseType" : 1,
"mouseTypeString" : "local",
"positionX" : 2517,
"positionY" : 166,
"scrollWheel" : 0.0
},
"entryType" : 1
},
{
"timestamp" : "20150427T100730.270000",
"entry" :
{
"eventType" : 2,
"eventTypeString" : "unmounted",
"volumeName" : "Firefox",
"volumePath" : "/Volumes/Firefox"
},
"entryType" : 9
},
{
"timestamp" : "20150427T100730.281202",
"entry" :
{
"eventType" : 2,
"eventTypeString" : "removed",
"nodePath" : "/Volumes/Firefox",
"nodeType" : 3,
"nodeTypeString" : "directory"
},
"entryType" : 4
},
{
"timestamp" : "20150427T100732.668000",
"entry" :
{
"eventType" : 4,
"eventTypeString" : "activated",
"launchDate" : "20150427T100732.668000",
"ownsMenuBar" : true,
"processId" : 7011,
"processName" : "TeamViewer"
},
"entryType" : 5
},
I already got into the topic of machine learning but i have no idea which specific technique or even sub area of the field could help me solving this. Maybe someone has a hint or idea where to find the right information or concept for a solution?