I'm currently developping an application which allows psychologists to manage their schedule and budget. As a proof of concept, I would like to create an intelligent appointment service. There can be 3 cases:
- I know the client, I need to guess the day and time for his next appointment
- I know the day, I need to guess which client and at what time
- I know nothing, I need to guess which client, which day and what time
I'm currently in the process of learning deep learning algorithms just to get a bit of theory, but it's a little bit overwhelming.
There are features I know I can extract from the appointments:
- Day preference in the week (always on monday, say)
- Reccurence (every two weeks or such)
- Nb of days since last appointment
- Whether the client was present or not to his last appointment
I know there are things like "features extraction" that you can train a neural network to find the features itself, but all examples refers to image recognition or speech analysis.
I want the algorithm to train on the existing and future appointments (stored in a MongoDB). I would also like that the algorithm trains live, that is if it proposes an appointment to the user and the user takes it, it should train positively. On the other hand, if the user navigates or change any parameter, the algorithm should adjust its weights accordingly.
I also know I should start by extracting data from the DB that will be transformed in a vector or matrix, then the algorithm is supposed to train on that data.
Is this correct? How can I start and what kind of architecture do I need?