UserX, I’m totally with you on this. What you are describing not only does make sense, it is a logical evolution of HA. Nest Thermostat tried to do something like that probably a decade ago - use current time, weather forecast, interior temperature, target temperature, and built-in motion sensor readings to train an ML model so that it could learn to set the right temperature at the right time on it’s own. It had limited success probably because of very limited inputs/data.
If I may share some thoughts…
Are user actions learnable in principle? ML can only learn something what has patterns and correlations. It can’t learn user turning lights on an off every hour based on flipping a coin. Or guess that a user has a fever today and wants different thermostat setting than usual. But it could learn that user always turns on the living room lights a minute after the car beacon gets back in range while it’s dark outside. Or that user dims kitchen lights to 10% every time after turning them on between 2 am and 5 am. Or that user turns AC off after opening 2 or more windows.
A thought experiment: could you ask somebody to observe you using HA for a month and then ask that person to control your devices the way you would, without talking with you? If the answer is yes, chances are it’s possible to train an ML model to do the same - but have to make sure ML model gets the same inputs (e.g. espresense detecting person’s apple watch moving from one room to another may be an equivalent of seeing the person walking).
What model to chose? My expertise in this is very limited, but I suppose it would need to be one of the time series forecasting models where every second (?) you’d give it entire state of the system (every value of every entity/attribute), and get the prediction of the entire state for the upcoming second. The controllable entities (e.g. value of the light switch) could be used as triggers if they differ from the previous second. Probably it would take a lot of fine-tuning and filtering. Maybe actual trigger should be enacted only after e.g. 10 consecutive predictions that the light should be on.
I tried something like that years ago by feeding values of everything I could get out of my SmartThings into a recurrent neural network. I never completed the project because of how massive the datasets turned out to be and the lack of user friendly ML platforms for time series forecasting back then.
Today there are lots turn-key models on AWS, Azure, and elsewhere. This may be worth another try.
One part which I find very confusing is the feedback loop. The model like that would inevitably make mistakes and will need continuous refinement. How would that work? Simply turning off the light which model turned on undesirably would just create a wrong correlation - the model would learn that the light was needed very briefly. Maybe the only way is to go back and retrain with the corrected value, but that would be very expensive/cumbersome.
It would be interesting to hear from ML experts.
The “GPT Took Over My Home” video seems to be about the challenges of using GPT to translate vague natural language requests into HA commands. I didn’t spot anything about training a ML model HA user behavior in order to replicate it.