Answer the question
In order to leave comments, you need to log in
Neural networks, identification by keyboard handwriting - how to figure it out?
I'm trying to figure out my degree.
Topic: Identification by rhythm of work on the keyboard. Or in other words: Identification by keyboard handwriting.
The task was set as follows: First, train the neural network to recognize images - the intervals between keystrokes, presented in vector form.
Then, based on the trained neural network, write a simple program where you need to enter lines, and the network will recognize the user by the rhythm of typing.
Finally, conduct experiments with recognition.
Maybe someone has experienced something similar?
The questions are:
- What type of neural network is best suited for such a task?
- AND THE MOST IMPORTANT: how to correctly feed the network input data, how to interpret these intervals between clicks, I don’t know?
Maybe someone has done something similar
(the task is formulated as the development of simple approaches to identification).
I would be very grateful for any information, resources, articles where I could read and deal with this.
Answer the question
In order to leave comments, you need to log in
Quite IMHO - a graduation project of this level should involve a study of which NS is best suited. Offhand - an ordinary multilayer perceptron, an activation function - of your choice. You can try to break the vector into small time segments, in the segment count the time how long each key was pressed. The segment vector is the input of the network. The output is the user ID. This is written almost from the bulldozer, of course, you need to experiment.
To get started, take some simple network implementation, such as pybrain. With feature enginering (converting data to the input of a neural network), you need to try different options. Immediately come to mind: the average interval between clicks, dispersion, the average interval between "close" and "far" keys.
I think you can try to implement on the basis of the Hopfield network, the data for analysis can be collected as follows, I think.
I think that any period when a person enters text should be considered the minimum fragment for analysis, from this period you can take the time that he spent entering a particular character, analysis can be carried out from the resulting data set.
The data will be character-number pairs. Accordingly, if you enter a certain number in correspondence with each character, you can get a 2-dimensional array, the size of which will be static.
Since Hopfield networks require preliminary training, this array can be filled statistically, that is, having received a certain number of measurements, that is, arrays can be taken as the arithmetic average for each of the cells, the resulting matrix will be the "handwriting" of this person.
For subsequent analysis, it will be enough to get several consecutive matrices (you need to choose how many) for a more accurate comparison result, get a handwriting matrix from them (arithmetic mean for each matrix element) and compare with the standard (for example, calculate the delta for each non-zero element in both matrices) and in Depending on the size of the delta average over the cells, it will be possible to say how close the signature of a given person is to the reference one.
I liked the idea, so I painted it in as much detail as possible. If you need help with implementation please contact us.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question