tarasfrompir1 писал(а): ↑Вт июл 17, 2018 4:12 pm
Как раз в данном случае нейронные сети будут работать не правильно (во всяком случае так как это сделано у автора) - так как для вытяжки нужен гистерезис - включать её когда достигнута максимальная влажность, а выключать - когда влажность упала до какой-то минимальной отметки. Правильней будет задать функцию для управления вытяжкой самому, а вот два параметра для функции брать усредняя то, что получила система от пользователя. В результате вы получите однозначный ответ - включить или выключить вытяжку, а не с вероятностью 80 процентов вытяжку надо включить/выключить
Что касается включения-выключения освещения, то тут обучение не подходит совершенно. Ни один человек никогда не повторяет свои действия с точностью до минуты, а толку в лампочке, включенной через минуту после того как вы вышли из комнаты? Лампочка завязанная на датчик движения будет гораздо точнее
А здесь время как раз в расчет и не берется...
По поводу света - Тут будут такие факторы для обучения нейросети :
1. освещенность на улице
2. сработка датчика движения.
3. освещенность до определенного уровня в комнате (если включена неумная подсветка и на улице смеркает (тоесть общая освещенность комнаты составляет ну скажем 60%) - зачем тогда свет? ).
4. включен ли свет вообще в этой комнате.
Ну где то как то так для начала...
Это был ответ на
Интересен был бы модуль сбора обучающих данных для сети, типа пользователь выбирает свойства объектов системы:
день недели, время, сработка датчиков движения, включ/выкл света пользователем -- спустя некоторое время нейросеть будет иметь данные для частых маршрутов по помещению для вкл света и тп
Даже для такой задачи нейронные сети излишни и не совсем правильно работают. Вернее неправильно работает подход зафигачить в сеть кучу параметров, наделать кучу нейронов - авось найдёт какие-то закономерности
Обязательно найдёт, но учитывая очень маленький массив данных для обучения, то эти закономерности будут иметь мало общего с реальностью. Скажем тут есть вполне однозначные триггеры - движение и состояние лампы. К чему там нужно обучение, когда и без обучения понятно что свет надо включать, только если он выключен. И не надо включать свет если не было движения, даже если освещенность упала. Т.е. по сути остаётся один параметр - освещенность в комнате. Вычислить какой-то гистерезис с 2 средними значениями и подставить. Это конечно будет очень грубая модель, но она будет работать лучше нейронной сети, например, она не будет включать/выключать лампу, если по небу пробежали облока.
А по уму для правильной автоматизации освещения надо учитывать кучу факторов и не виде весов, а в виде матрицы да/нет - есть ли в помещении кто-то (в свою очередь это тоже сложная задача - было ли движение, было ли движение в соседних комнатах, а после в нашей не было, сработал ли датчик открытой двери), хочет ли этот кто-то чтобы свет горел (спит/не спит)
Ну и нейросеть всегда выдает только вероятность надо ли влючать свет или нет а уж эта вероятность зависит только от заданных параметров
тоесть от ИСТОРИИ работы данного включателя и датчиков на которые вы опираетесь для этой комнаты...
Ну в таких пределах я нейронные сети понимаю
Просто в контексте умного дома нужна не вероятность, а однозначный 0 или 1. И повторюсь этот 0 или 1 зависит от массы факторов, влияние которых сильное, но в нейронную сеть не поступающее, так как такие датчики отсутствуют. Я к тому что чудес не бывает и если каких-то данных у сети нет, то она их ниоткуда не возьмёт