«Умная пыль»: как устроен самый маленький компьютер Michigan Micro Mote. Умный компьютер
Программное обеспечение для умного дома / Хабр
Включение и выключение ZWave лампочки через мобильное приложение | |
При появлении устройства в сети (по приходу пользователя домой) происходит включение ZWave лампочки, релейного модуля Modbus RTU, запуск компьютера через WakeOnLan и включение ТВ | |
Запуск браузера, переход на яндекс.радио, перелистывание треков (эмуляция горячих клавиш) |
1. Основная часть ПО — сервер, который крутится на ОС Windows, написан на C#;2. Клиент на ОС Android, написан на Java;3. Планируются клиенты на UWP и IOS, web-клиент.
Некоторые особенности ПО:
1. Конструктор сценариев. Создание сложных сценариев с циклами и условиями;2. Работа с устройствами ZWave и Modbus;3. Вложенность сценариев. Можно один сценарий использовать в другом в качестве процедуры;4. Запуск удаленного сценария. В сценарии текущего сервера можно запускать сценарий удаленного;5. Возможность добавлять в систему свою функциональность посредством создания модулей;6. Запуск сценариев с помощью смартфона.
Конструктор сценариев
Программа позволяет создавать как сложный сценарий, так и одиночное действие.Одиночное действие — это сценарий, который содержит только одно действие. В нем нет возможности создавать циклы и условия, а можно лишь “замапить” определенное действие на кнопку в UI клиента.
В качестве примера приведу свой способ их использования: создал категорию “Розетки”, в ней собрал все лампы, бытовой вентилятор, светильники, телевизор и компьютер. Теперь, чтобы включить одно из этих устройств, следует открыть клиент на андроиде, зайти в категорию “Розетки” и выбрать соответствующий пункт меню.
Обычно, одиночные действия использовать неудобно, так как различные устройства удобно запускать при каком-то условии или хотя бы не по одному. Именно для этого нужен “сложный сценарий”, о чем далее.
Конструктор сложного сценария позволяет создавать сценарии с циклами и условиями. Имеет два режима: просмотр и редактирование.
Пример сценария в режиме просмотра | Пример сценария в режиме редактирования |
Есть некоторое количество встроенных проверок (такие как проверка на дату, время и т.д.), а также некоторое количество в качестве подключаемых модулей.
Цикл ПОКА в конструкторе. Цикл состоит из условия и тела. Условие создается аналогично тому, как он создается в конструкции ЕСЛИ (группы условий, операторы НЕ, ИЛИ, И).
Оператор ЕСЛИ и возможные условия | Оператор ПОКА |
Тела ЕСЛИ, ИНАЧЕ и ПОКА нужно чем-то заполнять. Собственно, это содержимое и есть самое важное в сценарии. |
Основное окно конструктора сценариев |
— Запуск извне (вкл/выкл), позволяет запретить или разрешить запуск сценария с другой машины или из клиента; — Автоматический запуск сценария при старте системы; — Выбор категории сценария, позволяет отображать в UI клиента пункт меню для запуска сценария в определенной категории.
Работа с устройствами ZWave и Modbus
На данный момент система поддерживает устройства ZWave (на основе openzwave) и Modbus RTU (на основе nmodbus).ZWave — это беспроводной протокол связи, использующийся в домашней автоматизации. Для реализации протокола используются миниатюрные маломощные радиочастотные модули. Сейчас на рынке ZWave представлен довольно обширный перечень устройств, таких как ZWave лампочки, розетки, релейные модули, переключатели, замки, датчики температуры (влажности, движения, протечки), терморегуляторы, устройства управления кондиционером и т.д. Также распространены мультисенсоры — устройства, сочетающие несколько датчиков (например, датчик освещенности, присутствия, температуры, дверной датчик и т.д.), что весьма привлекательно с точки зрения финансовых затрат и расположения в помещении.
В моей программе модуль ZWave позволяет производить все стандартные операции с устройствами, такие как удаление, добавление устройств, сброс контроллера. Также можно использовать несколько ZWave контроллеров, конечный пользователь не увидит разницы. К примеру, можно осуществить снятие показаний температуры с датчика, который соединён с контроллером «А», и запустить кондиционер с помощью контроллера «Б». Тут нет ни каких ограничений, любое действие и проверка осуществляются стандартными способами и добавляются в конструкторе сценариев.
Рынок ZWave устройств достаточно широк. Имеется множество исполнительных устройств, таких как релейные модули, лампочки, устройства для работы с кондиционером, терморегуляторы, регуляторы теплого пола, розетки, переключатели. Так же существует множество датчиков: датчик открытия двери, температуры, датчик протечки, датчик присутствия и т.д. В качестве контроллера ZWave можно использовать USB stick. | |
Основное окно ZWave модуля | |
Окно выбора контроллера и операций с ним | |
Выбор узла (датчики, переключатели и т.д.) | |
Выбор параметра узла (включен/выключен, различные числовые параметры, такие как температура, влажность и т.д.) |
Релейный модуль Modbus. Соединяется с контроллером через COM-порт | |
Основное окно Modbus RTU модуля |
Вложенность сценариев
Вложенность сценариев используется для декомпозиции сценариев умного дома. Часто бывают такие ситуации, когда одно действие участвует во многих сценариях (например, отключение всех бытовых устройств может происходить по нажатию на пункт меню в программе, по сценарию выхода всех wi-fi устройств из сети, просто по таймеру), и поэтому каждый раз создавать (или править) одинаковый алгоритм в каждом из сценариев не представляется удобным. Для этого существует такое встроенное действие, которое позволяет запускать уже созданный сценарий в текущем. Также это может быть удобно, когда часто добавляются новые бытовые устройства (или другие частые изменения в алгоритме работы “умного дома”), для изменения работы всех сценариев достаточно будет изменить лишь один сценарий, который используется в них.Действие «Существующий сценарий» в списке | Выбор существующего сценария |
Запуск удаленных сценариев
Посредством запуска удаленных сценариев можно запускать сценарий одного сервера в сценарии другого. В качестве примера хочу привести мой вариант использования этого функционала: создал сценарий (на домашнем сервере) под названием “свет+мультимедиа”, который включает свет в помещении, запускает мой десктоп (используя WakeOnLan), включает тв, к которому подключен десктоп и ждет пока на нем (десктопе) запустится экземпляр нашей программы, затем запускает на ней сценарии “включить музыку” и “звук на 20 единиц” с помощью запуска удаленных сценариев.«Запуск удаленного сценария» в списке | Выбор сервера и его сценария |
Написание собственных модулей
Помимо того, что пользователь может создавать сложные сценарии штатными средствами, программа позволяет “расширять” ее пользовательскими модулями на C#. Все элементы действий и проверок в сценариях (такие как “Проверка по дате”, “Показать сообщение”, “Действие Modbus”, “Действие ZWave” и т.п.) это классы, унаследованные от ICustomAction и ICustomChecker. Следуя определенным правилам, любой пользователь может создать свой модуль, который может быть как очень простым (например, озвучивание текущей температуры воздуха за окном), так и сложным, за которым может крыться целый фреймворк. Достаточно наследоваться от интерфейсов ICustomAction или ICustomChecker, расставить несколько атрибутов, скомпилировать DLL и добавить в программу через вкладку “МОДУЛИ” (полная инструкция создания модулей).Вкладка «МОДУЛИ» |
Запуск сценариев с помощью смартфона
*пока только OS AndroidСценарии отображаются на главном экране и в категориях. Категория является виртуальной “папкой”. При запуске сценария обновляется статус соответствующей кнопки.
Экран настроек соединения | Экран с запуском сценариев |
Меню быстрого запуска |
Видео напоследок:
» Страничка программы » Ссылка для скачивания » Инструкция для пользования » Инструкция для создания собственных модулей
P.S.: Если нашли ошибку в программе, то пожалуйста, перешлите её на почту.
habr.com
Умный компьютер
Еще пару десятилетий назад мы с удивлением смотрели фантастику, а теперь многие кадры из подобных фильмов стали реальностью. Вспомните, какого было ваше удивление, когда вы впервые увидели робота в кино, вам, скорее всего, показалось, что подобное невозможно. Только не сейчас. Нельзя назвать страну, исключая лишь некоторые африканские, где бы не производились роботы разного уровня интеллекта. Роботы далеко не единственное изобретение нанотехнологий. Вся техника, окружающая нас и дома, и в офисе от простых калькуляторов до современных компьютеров, все было создано благодаря изучению наночастиц.
На изобретении компьютерной техники ученые не остановились. Всемирная сеть интернет – вот без чего не может жить не один человек. У всех есть хотя бы одна страничка в социальных сетях, почтовый электронный ящик, любимый сайт. Многие не расстаются с интернетом даже когда едут в транспорте, принимают ванну, едят. Иногда кажется, что интернет может заменить реальное общение, но компьютер не может с нами разговаривать. Компьютер понимающий человеческую речь это реально. Да, одна из всемирно известных компьютерных компаний сделала это реальным. Как это возможно? Ученые нанотехнологи разработали специальную карту, получившую название семантическая карта. При ее внедрение в компьютер, устройство сможет распознавать слова. Словарный запас первого образка не большой, но планируется создание нового варианта, включающего десятки тысяч слов. Всегда можно смотреть кино онлайн в хорошем качестве и совершено бесплатно.
Такое изобретение может позволить решить огромное количество проблем. Только представьте, с помощью одного лишь голоса можно будет пользоваться сетью интернет. Это важное открытие, на его разработку были потрачены огромные суммы и велись работы самых талантливых ученых.
Планируется внедрение таких карт во многих областях. Первые образцы уже используются в американской судебной практике. Медицина также надеется на подобное открытие, ведь тогда можно будет создать совершенно новые способы диагностики, лечения, консультирования. Экономика также сможет открыть для себя новые пути развития благодаря широкому распространению семантических карт.
Нанотехнологии делают нашу жизнь невероятно интересной и высокотехнологичной. Поскольку вся человеческая деятельность сосредоточена на компьютерах, возможность управления голосом откроет перед нами невероятные возможности. Будем ждать новостей от компании, возможно, скоро и мы заговорим со своим компьютером.
www.nanoware.ru
Умный компьютер для автомобиля | Статьи на srinest.com
Электроника ворвалась в нашу жизнь. Всего лишь за один десяток лет мы привыкли к жидкокристаллическим экранам, многофункциональным приборам, сенсорным панелям. Вместе с ними стал нормой и бортовой автомобильный компьютер. Современный автомобилист уже не представляет своих поездок без помощи бортового компьютера.
Подавляющее большинство покупателей импортных дорогих автомобилей вместе с транспортным средством становятся обладателями и бортового компьютера. Еще на заводе вся электронная начинка закладывается в автомобиль. Наши автомобилисты чаще всего вынуждены сами покупать и устанавливать бортовые компьютеры. Их, кстати, можно купить в интернет-магазинах, в которых выполняется также продажа запчастей Mercedes или комплектующих для других моделей.
Установленный бортовой компьютер существенно удорожает стоимость автомобиля. Это является причиной того, что не все производители спешат оснащать ими свои изделия, предпочитая давать возможность покупателям самим заниматься поиском нужного бортового помощника.
Большинство приборов способно выполнять десятки функций. Многие модели устроены таким образом, что их можно настраивать на работу в универсальном или диагностическом режиме. Универсальный режим позволяет отслеживать пройденное расстояние, получать данные о расходе топлива, о количестве оставшегося в баке топлива, о качестве топлива. Данный режим хорош в основном во время путешествий. Поэтому отправляясь в путь, загляните в интернет магазин или сервисный центр – там же где осуществляется продажа запчастей Audi, например, всегда можно найти и подходящий бортовой компьютер.
Если необходимо найти неисправность, то бортовой компьютер настраивается на работу в диагностическом режиме. Прибор получает информацию от множества автомобильных датчиков, обрабатывает их и отображает на дисплее. Хорошему мастеру этих данных вполне достаточно, чтобы выполнить правильную диагностику всех систем машины.
Помимо того, что автомобильный компьютер обеспечивает своего владельца самыми необходимыми данными, он способен также собирать и хранить показатели за разные периоды. Это позволяет выполнять сравнительный анализ и определять еще не проявившие себя неисправности.
Обслуживать и выполнять ремонт транспортного средства становится проще и дешевле. Имея в своем распоряжении такого помощника, возможно, что и продажа запчастей для Рено вас будет интересовать только в качестве информации «на всякий случай». Ведь умные электронные системы позволяют выявлять неисправность намного раньше, чем она проявит себя в полной мере.
www.srinest.com
как устроен самый маленький компьютер Michigan Micro Mote / Блог компании ИТ-ГРАД / Хабр
Ожидается, что в ближайшее время стоимость рынка программного обеспечения, использующего возможности глубокого обучения, превысит 1 миллиард долларов. Поэтому исследователи занимаются проектированием специальных чипов, способных справиться с такими приложениями.
Среди них выделяются Google, Nvidia, Qualcomm и др. Но сегодня мы бы хотели поговорить о разработке ученых Мичиганского университета — проекте Michigan Micro Mote — компьютере объемом в один кубический миллиметр.
/ фото rawdonfox CC
Генеральный директор SoftBank Масаёси Сон (Masayoshi Son) предположил, что к 2035 году количество гаджетов Интернета вещей достигнет 1 триллиона. Однако у современных устройств, например камер, микрофонов, замков, термостатов, есть недостаток — они не способны анализировать информацию самостоятельно, потому постоянно передают её в облако, затрачивая энергию.
Исследователи из Мичиганского университета поставили перед собой задачу решить эту проблему и сделать умные и маленькие компьютеры с сенсорами для IoT.
«Сложно представить, сколько данных сгенерирует триллион устройств, — говорит профессор Мичиганского университета Дэвид Блааув (David Blaauw). — Создав маленькие энергоэффективные сенсоры, способные проводить анализ «на лету», мы сделаем наше окружение более безопасным и сэкономим электричество» Именно проблему энергопотребления должен решить компьютер Michigan Micro Mote, который настолько маленький, что сопоставим размерами с рисовым зернышком.Тем не менее он является полнофункциональной вычислительной системой, способной действовать как умный датчик. Например, его используют для мониторинга внутриглазного давления.
Удивительно маломощный
В основе решения лежит крошечный процессор Phoenix с очень низким энергопотреблением. Процессор Phoenix разделен на ядро и периферию. Ядро состоит из 8-битного CPU, 52-х 40-битных ЗУ с произвольным доступом для данных (DMEM), 64-х 10-битных ЗУ с произвольным доступом (IMEM) и 64-х 10-битных ПЗУ (IROM) для команд, а также блока управления электропитанием.Периферия включает в себя контрольный таймер и датчик температуры, но к их числу можно добавить еще 8 сенсоров, в зависимости от требуемого функционала.
Схема процессора Phoenix (Источник)Ядро и периферия взаимодействуют с помощью системной шины, использующей простой асинхронный протокол. Большую часть времени процессор Phoenix проводит в режиме готовности. Контрольный таймер, который является осциллятором с низким потреблением тока, «будит» процессор и запускает процесс обработки и сохранения показаний температурного датчика. После выполнения задачи, процессор возвращается в режим готовности и ожидает следующей команды — такой подход позволяет серьезно сократить энергопотребление.
CPU и другие логические модули могут быть отключены от источников питания, когда их услуги не требуются, а вот память (IMEM и DMEM) — нет, поскольку она должна хранить записанные в неё данные. Поэтому модули SRAM остаются главными потребителями энергии. По этой причине разработчики применяют методики, призванные снизить утечки тока, например высокий уровень напряжения на входах транзисторов. С той же целью была увеличена длительность стробирующего импульса.
Архитектура памяти данных (DMEM) с ячейкой SRAM (Источник)Чтобы еще сильнее снизить энергопотребление, DMEM работает с так называемым списком свободной памяти. Этот список, управляемый CPU, содержит информацию об используемых строках в памяти DMEM. DMEM имеет 26 переключателей (каждый подключен к 2 строкам), которые выборочно отключают подачу тока в режиме готовности, учитывая состояние списка свободной памяти.
Разработчики также оптимизировали работу CPU с IMEM и DMEM. Для работы с IMEM используется минимальный набор базовых команд. Длина команды ограничена 10 битами, при этом популярные операции используют гибкие способы адресации, а менее популярные — неявные операнды. Также в процессоре имеется аппаратная поддержка сжатия, чтобы максимизировать емкость памяти.
Отображение адресов виртуальной памяти в DMEM выполняется с использованием фиксированного алгоритма Хаффмана. Сама DMEM разделена на статические и динамически определяемые блоки. Каждые 16 байт виртуальной памяти получают одну строку статического раздела. Если запись в память вызывает переполнение, избыток переносится в динамический раздел по указателю.
Схема температурного датчика (Источник)Что касается встроенного температурного датчика, то его схема представлена на рисунке выше. Температуронезависимый источник тока (Iref) и источник тока, показания которого меняются согласно абсолютной температуре (Iptat), подключены к кольцевому генератору, переводящему температурную информацию в импульсы. Затем эти сигналы поступают на суммирующий счетчик, генерирующий цифровые данные. Поскольку значение температурного датчика сохранять надолго не требуется, он отключается во время простоев, чтобы дополнительно сэкономить энергию.
В своей работе ученые провели тестирование процессора Phoenix и установили, что он потребляет 297 нВт в активном режиме и всего 29,6 пВт в режиме готовности.
Из чего сделан «бутерброд»
Помимо процессора, Michigan Micro Mote имеет несколько других «слоев», выполняющих свои функции. Одним из них являются солнечные панели — солнечная батарея площадью 1 квадратный миллиметр способна производить 20 нВт мощности.Разрез Michigan Micro Mote (Источник)Помимо солнечных батарей, устройство состоит из управляющего модуля, радиомодуля, интерфейса сенсорной системы, самого процессора, батареи и элемента регулирования мощности.
Слои общаются между собой с помощью специально разработанного универсального интерфейса, названного MBus. При этом ученые могут просто заменить один из слоев на другой, реализовав новый тип следящего устройства. Такой дизайн значительно снижает стоимость производства.
Путь в микробудущее
«Сейчас мы работаем над улучшением технологии обмена сообщениями между компьютерами, — говорит Блааув. — Пока что нам удалось достигнуть расстояния в 20 метров. Это серьезное улучшение, поскольку первые версии устройства могли передавать информацию лишь на 50 сантиметров» Возможности технологии ученые из Мичигана продемонстрировали на конференции ISSCC.Камнями преткновения к расширению зоны покрытия остаются размер антенны и необходимость увеличения мощности для передачи информации на большие расстояния, что сказывается на энергопотреблении.
Исследователи предпринимают и другие шаги к улучшению микрокомпьютера. Например, они постоянно совершенствуют память устройства — предыдущие поколения Micro Mote использовали лишь 8 килобайт SRAM, что делало их непригодными для обработки звука и видео. Поэтому команда ученых снабдила новые компьютеры флеш-памятью в 1 мегабайт.
Более того, одно из устройств Micro Mote, представленных на ISSCC, имело на борту процессор для глубокого обучения. Микрогаджет оказался способен управлять нейронной сетью, потребляя при этом всего 288 мкВт. Обычно такие задачи требуют больших банков памяти и вычислительных мощностей, предоставляемых современными GPU.
Блааув говорит, что их стартап CubeWorks уже занимается прототипированием устройств и исследованием рынков. Ученые надеются, что через 2 года появятся камеры наблюдения, способные вычислить разыскиваемого правонарушителя прямо среди проходящих мимо людей, и другие умные устройства из мира IoT.
«Дополнительное чтение»: Какие новинки были представлены совсем недавно«Первый блог о корпоративном IaaS»: Все о виртуальной инфраструктуреhabr.com
Умный таймер выключения компьютера
За две недели сентября мой младший сын Сашка уже два раза проспал в школу — никак не может перестроиться с летних каникул ложиться спать раньше, а не сидеть за компьютером до часа ночи. Вот и решил научить его компьютер принудительно отключаться в определённое время .
Помог мне в этом антидемократическом деле таймер выключения компьютера — абсолютно бесплатная, простая и мощная (как оказалось) программа PClimiter.
Компьютерная программа PClimiter не просто выключает компьютер в определённое время — она позволяет установить различные ограничения на использование компьютера в любой день недели, устанавливать лимиты разным пользователям — например, 2-3… часа на день в период с 8.00 до 22.00 .
Этот таймер выключения компьютера не так прост, как кажется с первого взгляда — он не позволит сменить системное время или пользователя, удалить себя без введения пароля…
…продолжает работать после снятия задачи в диспетчере задач и даже будет запускаться вместе с компьютером после исключения его из автозагрузки- я всё это перепробовал.
Заинтриговал? Давайте рассмотрим PClimiter поближе и научимся им пользоваться…
PClimiter — умный таймер выключения компьютера
Итак, самое главное — во время установки таймера выключения компьютера Вас попросят ввести родительский пароль.
Мой мир
Вконтакте
Одноклассники
Google+
...
Очень прошу ответственно подойти к этому моменту и запомнить этот пароль, чтоб не задавать потом глупые вопросы в комментариях к статье- никто, кроме Вас, не сможет разблокировать компьютер, если что …
После своей установки программа появится в трее (возле часиков) — кликаем по значку левой кнопкой мыши и в появившемся окне тыкаем на зелёный замочек в правом углу…
…вводим родительский пароль и приступаем к ограничению времени работы компьютера…
Баланс — время, доступное пользователю на конкретный день неделиБонус — дополнительное время, которое может быть использовано в любой день неделиЛимит — максимально допустимое время на конкретный день недели(Баланс+Бонус).
Я установил баланс на весь период ограничения, но Вы можете выставить 2-3… часа — сколько хотите. Таким образом Ваш ребёнок (или Вы) сможет выключать компьютер и включать его сколько угодно раз, а программа будет следить за использованным временем. Когда лимит будет исчерпан — компьютер выключится.
Авторы обещают, что при установке бонуса, будет появляться оповещение об оставшемся дополнительном времени — проверю вечером, когда подойдёт время.
Я слегка отвлёкся — продолжаем. После того, как пропишите все балансы, лимиты и бонусы по дням недели — нужно выбрать пользователя для которого Вы всё это готовили и кликнув на его иконку…
… «включить временные ограничения»…
Осталось кликнуть на красный замочек, что справа вверху — всё, поздравляю, узурпаторский таймер выключения компьютера работает.
Как выключить PClimiter
А никак!
Его можно только деинсталлировать, зная родительский пароль или «отключить временные ограничения» там, где Вы их активировали (под значком пользователя), но программа продолжит работать при этом .
Как выключить PClimiter если нет значка в трее и вышел весь лимит на день (именно так получилось у меня, когда я убрал программу из автозагрузки — засада, компьютер после включения сразу выключался)?
Рассказываю, у Вас есть всего пару минут — после очередного запуска системы, очень быстро проходим в папку с установленной программой и тыкаем на её ярлык…
…появится значок в трее — кликаем по нему, в появившемся окне программы ещё быстрее тыкаем на замочек, затем на иконку пользователя и «отключить временные ограничения». Не забываем снова тыкнуть по замочку, чтоб применить изменения. Успели ?
Рекомендую установить надёжные пароли всем учётным записям пользователей компьютера.
Скачать PClimiter
Размер скачиваемого установочного файла — 3.1 Мб. Вирусов и дополнительного «полезного» софта в нём нет. Программа понимает ВСЕ версии операционной системы Windows (включая десятую).
Этот простой и надёжный таймер выключения компьютера — отличный способ ограничить время, проведенное ребенком за компьютером, а также эффективный метод самоконтроля для взрослых. Лично я его буду использовать — установил его сыну и себе .
P.S. Уверен, что опытные пользователи будут искать способ обхода защиты этой программы (как в случае с программой Predator было). Если найдёте, то НЕ пишите в комментариях — лучше мне на почту («Вопросы, жалобы, предложения» внизу каждой страницы сайта). Наши детки тоже читают этот сайт.
До новых интересных и полезных компьютерных программ.
С уважением, Сергей Трофимов (не певец).
Поделитесь с друзьями в социальных сетях...
Мой мир
Вконтакте
Одноклассники
Google+
Рекомендую ещё посмотреть...
Я только обозреваю программы! Любые претензии - к их производителям!
Сообщения с ссылками проходят модерацию и публикуются с задержкой.
optimakomp.ru
Разработчики компьютеров постоянно удивляют своих покупателей. И вот теперь компания Intel сообщила прессе, что в ближайших планах у нее разработка нового портативного компьютера, который можно будет использовать в функции «секретарь». И возможно, в будущем в процессии появятся электронные помощники.
Новые компьютеры смогут выполнять большинство функциональных обязанностей обычного секретаря. Новые аппараты будут располагать исчерпывающими сведениями о своих владельцах. Чем больше информации они смогут получить, тем больше вероятности, что они будут угадывать все желания и потребности своего владельца. По утверждению представителей компании Intel данные аппараты смогут выполнять некоторую работу, даже не получая от своего владельца специального распоряжения. Новые «умные» компьютеры смогут планировать предстоящие важные встречи, звонки. Кроме этого компьютер сможет самостоятельно составлять график работы, давать своему владельцу ценные рекомендации и даже критичные замечания. И хотя кажется, что подобные технологии фантастичны на сегодняшний день, уже в ближайшие годы они начнут воплощаться во многих персональных компьютерах. Если обратиться во всемирную сеть, то можно найти разные программы, которые могут высказывать свою точку зрения на определенные действия. Это может быть оценка написанного письма или любого текстового сообщения. Для того чтобы программа была более точна в своих предположениях, догадках, ей приходится анализировать всю прежнюю переписку своего хозяина. Компаниz Intel в данном направлении планирует сделать еще один, очень важный шаг, используя для этого самые последние разработки в сфере машинного самообучения. На одной из конференций, проходимых в Тель-Авиве, технический руководитель компании Intel Джастин Раттнер сообщил, что те смартфоны, которые в настоящее время находятся в пользовании человека, по своей сути являются еще довольно «глупыми» созданиями. Ведь это мобильное устройство, хоть и находится в постоянном использовании человека, се равно о нем ничего не знает. По его словам, в ближайшем будущем ситуация изменится. Портативный компьютер сможет узнавать своего владельца. Помимо этого Джастин Раттнер заявил, что смартфон в скором будущем сможет распознавать все индивидуальные особенности и привычки своего владельца, а значит «поумнеет». |
joomlovod.ru
как это работает и где этому научиться. Лекция Максима Мусина в Яндексе / Блог компании Яндекс / Хабр
Если вспомнить фильм «Терминатор» и технологии, которыми по сюжету пользовались киборги, то можно будет выделить и нейронные сети, и возможность беспроводной связи с внешним источником интеллекта (Skynet), и компьютерное зрение, и распознавание звука, понимание различных языков. На момент выхода фильма на экраны все это было абсолютной фантастикой, технологиями далекого будущего. Но сегодня большая часть этих технологий реализована в том или ином виде. Попробуем разобраться, что же из всего перечисленного уже используется.
На картинке выше можно увидеть результат работы полностью автономного алгоритма распознавания. Практически все объекты на картинке распознаны верно. Что касается распознавания голоса, то с ними в наше время сталкивался почти каждый обладатель смартфона: голосовой ввод поисковых запросов и голосовые команды GPS-навигатору уже не кажутся чем-то необычным. Технологии машинного перевода благодаря переходу на статистическую модель также за последние пару десятилетий продвинулись очень далеко и плотно вошли в нашу жизнь. В большинстве случаев перечисленные технологии применяют передачу данных на сервер, который распознает, переводит или еще каким-либо образом обрабатывает данные. Так что и беспроводная связь с внешним интеллектом уже реализована и широко применяется.
Но отойдем от «Терминатора» и попробуем определить, что же понимается под искуственным интеллектом, и в какой момент мы сможем с уверенностью сказать, что машина сравнялась по интеллекту с человеком. На ум сразу приходит всем известный тест Тьюринга, в котором человеку нужно определить, с кем он общается: с человеком или машиной.
Как работают умные компьютеры
Человеческое мышление построено на основе сетей нейронов головного мозга. Эти нейроны вдохновили ученых на создание искусственного нейрона. Искуственный нейрон получает на вход несколько значений с различными весами, зависящими от важности входящей связи. Нейрон проводит взвешенное суммирование и выдает предсказанное значение и принимает некоторое решение:Если представить нейрон как классификатор точек в трехмерном пространстве, то для каждой точки, взвешенная сумма которой будет положительна, он будет присваивать значение 1, а тем точкам, у которых взвешенная сумма отрицательна – значение -1. Предположим, что у нас есть нейрон с двумя входами, тогда взвешенная сумма будет уравнением прямой на плоскости.
Если сигнал оказывается справа от прямой, он становится синим, а если слева – красным. Нейрон раскрашивает часть плоскости в плюс, а часть плоскости – в минус. Таким образом, у нас появляется способ тренировать искусственные нейроны. Предположим, у нас есть некоторое количество точек, про которые мы знаем, плюсовые они или минусовые. Мы берем наш нейрон и за счет манипуляции с весами мы получаем каждый раз новое уравнение плоскости. И мы подбираем это уравнение плоскости таким образом, чтобы все синие точки были по одну сторону прямой, а все красные – по другую.
Если нам повезет, то нам удастся разделить их ровно, чтобы ни одна точка не осталась на неправильной стороне. Но так получается не всегда, поэтому нам нужно стремиться к тому, чтобы с одной стороны оставалось побольше синих точек, а с другой – побольше красных. Постараемся описать это с точки зрения математики. Математика хорошо умеет искать максимумы функций, для чего нужно найти точку, где производная равна нулю. Мы можем взять сигмоиду – функцию близкую к нашему индикатору, но из которой при этом можно извлечь производную. Ее можно дифференцировать и использовать всю мощь математического анализа для решения нашей задачи.
Если мы возьмем yi за правильные значения, а xi за входящие значения, то мы можем получить вот такой квадрат:
Эту функцию мы можем дифференцировать, а значит мы можем найти ее минимум, так как это и есть ошибка – отклонение настоящих значений от предсказанных. Так можно натренировать нейрон, который достаточно хорошо разделяет точки.
Благодаря этому алгоритму удалось добиться очень неплохих результатов, в частности – в распознавании букв. Допустим, у нас есть у нас есть сетка пять на пять ячеек – двадцать пять клеток. Для каждой клетки мы можем посчитать, какой процент клетки заполнен. Получившиеся 25 значений мы подаем на вход одному нейрону. Натренировав нейрон по нашему алгоритму, мы сможем распознать все буквы алфавита.
Однако так все это работает только до тех пор, пока буквы стоят в сетке ровно. Из-за слишком большого количества вариантов расположения букв, алгоритм уже не справляется распознаванием. Как можно решить эту проблему? Первое, что приходит в голову – попытаться вместо сетки использовать для букв набор каких-нибудь отличительных признаков. Будем смотреть на букву не как на 25 пикселей, а как на набор характеристик, которые не зависят от поворотов. Например, рассмотрим ее как граф, вытащим оттуда вершины первой степени, второй степени, третьей степени, вытащим циклы.
Нейронная сеть
Если мы возьмем три значения и каждое из них отправим на три нейрона первого слоя, каждый из них посчитает взвешенную сумму, посчитает сигмоиду и переправит ее на следующий слой, в итоге все они соберутся на выходной нейрон, который построит предсказанное значение. Зачем это нужно? Примерно так организован наш мозг: нейроны связаны друг с другом, у них есть входные и выходные ответвления. Обучается такая есть примерно следующим образом:
Досмотрев лекцию до конца, вы узнаете, как именно обучаются нейронные сети, какие у них бывают архитектуры, почему матан – добро, а функан – еще большее добро, что такое клеточные автоматы и как же тренируют роботов.
habr.com