Страница 4 из 5

Re: Нейроуправление выключателем

Добавлено: Вт июл 17, 2018 5:19 pm
fandaymon
tarasfrompir1 писал(а):
Вт июл 17, 2018 4:43 pm
Logrus писал(а):
Вт июл 17, 2018 4:34 pm
и в данном случае это лишние усложнения, решаемые простыми условиями и прямой командой
выше же пример с поливом приводил, он актуален при отсутствии датчиков влажности почвы (дождя, т.е. для финта ушами используя другие каналы получения данных), тогда анализируя другие параметры можно принять решение
аналогично с учетом и определением нагрузки, сомневаюсь что для правильного анализа будут все входные параметры и достаточная дискретность (она и вредить работе мдм будет)
ДА ЭТО УСЛОЖНЕНИЕ....

Поскольку любое приближение к АИ и есть усложнение...
А мы ведь уже хотим АИ.... ведь к этому можна поцепить еще и кто приходит домой и в какое время и уж система даже без опознавания по лицу может определить кто это по характеру поведения выключателей... кто появился в доме. и сказать Привет Членомеро...
Ведь я например редко захожу в детскую - моему меньшему 16 лет (что мне там делать ?). Разве ноут украсть.. для всяких проб...
Да и мы же тут обсуждаем теоретическую составляющую данного вопроса..
Скажу банальность - для того чтобы изучать характер поведения выключателей надо изучать именно его, а не состояние выключателей в каждый момент времени 8-) Т.е. совсем не так как это сделано у топикстартера

Re: Нейроуправление выключателем

Добавлено: Вт июл 17, 2018 5:31 pm
xor
Имея вероятность, сетка может попросить Алису уточнить голосом у пользователя нужно действие или нет. В своё время делал обучение дома на правилах нечётких с режимом обучения, в трудных случаях Алиса спрашивала подтверждение, если да, вероятность как свойство увеличивалась, нет - уменьшалась. Такая обратная связь. Типа, вечер понедельника, приход с работы вовремя, музыку включать или нет, ну и тыды. Устал цепочки правил прописывать. А модуль Рулес чего-то заглох

Отправлено с моего Redmi 4X через Tapatalk


Re: Нейроуправление выключателем

Добавлено: Вт июл 17, 2018 5:36 pm
fandaymon
tarasfrompir1 писал(а):
Вт июл 17, 2018 5:17 pm
По поводу данных - туда можна запихать все что угодно ....
А если вы держите историю срабатывания датчиков скажем за 1 год то что скажете данных недостаточно ?
Для того чтобы сказать есть человек в комнате или нет и то, спит он или нет, конечно данных не достаточно

По поводу матрицы
А разве нейросеть - не матрица данных ?
Которая еще и вычисляет вероятность какогото результата ?
Она конечно матрица, но не из единиц и ноликов. Получается переусложнение там, где оно только вредит. Если что-то мы можем описать функцией, то проще всего и правильней эту функцию и и использовать, вычисляя параметры функции по опытным данным.
Нейронные сети хороши, когда функция не очевидна и параметров слишком много, чтобы их можно было умозрительно учесть.
Ну допустим пример с паттернами поведения, наверное, это хорошее поле применения сетей - только там надо правильно задать изначальные данные - ответ будет следовать не из набора состояния выключателей в какой-то момент времени, а из истории включений/выключений/срабатываний разных датчиков. Сам бы с удовольствием посомтрел на реализацию 8-)

Re: Нейроуправление выключателем

Добавлено: Вт июл 17, 2018 7:19 pm
tarasfrompir
Так а вводить момент времени как раз и не нужно - нужно просто брать состояние датчиков Всех типов и по ним получать результат - то есть сработал датчик движения в комнате, на улице тёмно, значит кто то вошёл в комнату включает свет. Ну а если днём он сработал то кто бы не входил пусть идут гулять. Света не будет.
Вот так где то . время как параметр плавающий не использовать.

По поводу первого согласен. Но ведь есть же гпс и всякие датчики давления в кровати и ещё чего.
Голь на выдумки хитра :roll: :roll: :P

ПС
Ну а результат бы да ещё и видео исполнении вообще канечно да... Интересно посмотреть...

Re: Нейроуправление выключателем

Добавлено: Вт июл 17, 2018 8:20 pm
fandaymon
xor писал(а):
Вт июл 17, 2018 5:31 pm
Имея вероятность, сетка может попросить Алису уточнить голосом у пользователя нужно действие или нет. В своё время делал обучение дома на правилах нечётких с режимом обучения, в трудных случаях Алиса спрашивала подтверждение, если да, вероятность как свойство увеличивалась, нет - уменьшалась. Такая обратная связь. Типа, вечер понедельника, приход с работы вовремя, музыку включать или нет, ну и тыды. Устал цепочки правил прописывать. А модуль Рулес чего-то заглох
Вот кстати над чем-то таким, вроде хитрого модуля можно было бы и подумать. Задаём триггер (допустим датчик двери), задаём действие (включить музыку) и задаём условия, которые по мнению юзера могут влиять на принятие решения (попадание в интервал времени, рабочий/выходной, порог какого-нибудь датчика). Задаём какие-то начальные условия для инициализации весов, а потом Алиса пытается угадать по срабатыванию триггера и в зависимости от ответа юзера подкручивает веса, накапливая статистику для обучения. Что-то типа Рулес, но с обратной связью и не настолько детерминированными цепочками условий...

Re: Нейроуправление выключателем

Добавлено: Вт июл 17, 2018 8:32 pm
fandaymon
tarasfrompir1 писал(а):
Вт июл 17, 2018 7:19 pm
Так а вводить момент времени как раз и не нужно - нужно просто брать состояние датчиков Всех типов и по ним получать результат - то есть сработал датчик движения в комнате, на улице тёмно, значит кто то вошёл в комнату включает свет. Ну а если днём он сработал то кто бы не входил пусть идут гулять. Света не будет.
Вот так где то . время как параметр плавающий не использовать.
Тогда сеть не обнаружит паттерны поведения + простой набор если/то будет работать не хуже, а возможно и лучше
По поводу первого согласен. Но ведь есть же гпс и всякие датчики давления в кровати и ещё чего.
Голь на выдумки хитра :roll: :roll: :P
Есть - да. Пытался как-то даже повторить датчик с сайта MySensors, но дальше макетки не ушёл. К тому же он может определить только лежит ли кто-то на кровати, а вот определить спит ли этот кто-то или читает - не сможет.

Re: Нейроуправление выключателем

Добавлено: Вт июл 17, 2018 9:03 pm
tarasfrompir
По поводу времени написал хрень.
Да действительно надо брать какой то временной отрезок для сработки датчиков...
И вводить этот параметр в нейронку ...
Ведь логика работает мгновенно но не мгновенно работает выключатель а тем более с контролем обратной связи.

Re: Нейроуправление выключателем

Добавлено: Вс окт 21, 2018 11:08 pm
C_3AXAPOB
Решил вернутся к этой теме но с использованием tensorflow. По примерам сделал два скрипта на питоне. Обучающий и предсказывающий.
Вроде все работает. Но столкнулся с тем, что не могу сделать скрипт для сбора обучающих данных.
Мне нужно собрать исторические данные например трех объектов.

В формате:
СтатусОбъекта1,СтатусОбъекта2,СтатусОбъекта3
СтатусОбъекта1,СтатусОбъекта2,СтатусОбъекта3
СтатусОбъекта1,СтатусОбъекта2,СтатусОбъекта3
СтатусОбъекта1,СтатусОбъекта2,СтатусОбъекта3
СтатусОбъекта1,СтатусОбъекта2,СтатусОбъекта3

Пример:

Код: Выделить всё

1,0,1
1,0,1
0,1,0
0,1,0
1,0,1
0,1,0
1,0,1
1,0,1

Вот так получаю данные за два дня одного объекта

Код: Выделить всё

$device=getHistory("Relay01.status", strtotime("-2 day"));
$result = $device;
$i = 1; // переменная для нумерации строк
foreach ($result as $result)
{
if ($result['VALUE']){
// обрезаем строку дата_время для отображения только статуса
$reztab = $reztab.substr($result['ADDED'],20).' '.$result['VALUE'].'<br>';
$i ++;} 
}
echo ($reztab);
А мне нужно трех объектов через запятую. Прошу помочь.

Re: Нейроуправление выключателем

Добавлено: Ср окт 24, 2018 12:29 pm
skysilver
C_3AXAPOB писал(а):
Вс окт 21, 2018 11:08 pm
А мне нужно трех объектов через запятую. Прошу помочь.
Но ведь у разных объектов за один и тот же временной отрезок будет разное число смены статусов. И смена статусов происходит в разное время у каждого. Каким образом при таких исходных данных ты будешь формировать строки СтатусОбъекта1,СтатусОбъекта2,СтатусОбъекта3 ?

Вот я щас сделал выборку

Код: Выделить всё

$devices = array('XiRelay01', 'XiRelay02', 'XiRelay03');
foreach ($devices as $device) {
 	$results = getHistory($device . '.status', strtotime('-2 day'));
 	var_dump($results); echo '<br><br>';
}
И выдало мне три массива и все три разного размера - 31, 25 и 20. И естественно время в ["ADDED"] у них у всех разное.

Re: Нейроуправление выключателем

Добавлено: Чт окт 25, 2018 10:30 am
C_3AXAPOB
skysilver писал(а):
Ср окт 24, 2018 12:29 pm
Каким образом при таких исходных данных ты будешь формировать строки СтатусОбъекта1,СтатусОбъекта2,СтатусОбъекта3 ?
По времени же можно сортировать