ТРАНСФОРМАЦИЯ МОБАЙЛА
18 ноября в Нижнем Новгороде пройдет международная конференция GDG Gorky. В преддверии нее мы поговорили со спикерами о том, как меняется мобильная отрасль под влиянием развития таких областей: машинного обучения, интернета вещей. И вспомнили, как происходила эволюция Android.
Машинное обучение и искусственный интеллект
Сергей Мелехин
лидер GDG Владивосток,Team Lead в Ramax International
На днях появилась новость о самообучающейся версии AlphaGo. Какие для неё могут быть применения и значит ли это, что системам машинного обучения больше не нужны большие объемы данных?
Именно для этой нейронной сети практического применения особого нет - для игры с человеком и прошлая версия слишком хороша. Ценность исследования в том, что показана (впрочем, не впервые) возможность достигать сверхчеловеческого уровня решения задачи без использования обучения с учителем и вообще какого либо вмешательства человека. AlphaGo Zero - это пример обучения с подкреплением (reinforcement learning) и совместного обучения ансамбля нейронных сетей, играющих друг против друга. Ценность reinforcement learning заключается в том, что действительно можно обойтись без предварительно размеченных данных, но нужно иметь чётко сформулированный и измеримый критерий оценки результата (reward function) и способ быстро эмулировать среду, в которой происходят действия агента (так как обучение агента происходит методом проб и ошибок). Есть возможность обучать и в реальном мире, но это обычно медленно и дорого. То есть, например, для задачи классификации собак по породам "в лоб" применить обучение с подкреплением не выйдет, так как у нас нет измеримой метрики "пуделистости", "овчарости" и "бультерьерности".
Какие достижения в области искусственного интеллекта за последнее время вы можете выделить?
Кроме того же AlphaGo Zero стоит отметить результат, показанный Inception ResNet V2, внедрение WaveNet в качестве движка text-to-speech и Seq2Seq перевода в Google Translate, Dota2 бот от OpenAI.
Какие инструменты вы можете порекомендовать начинающим?
Я рекомендую начинать с курсов Andrew Ng на Coursera и курсов от Google и Kaggle на Udacity. В этих курсах вы познакомитесь с большим набором инструментов, от octave/matlab до keras и tensorflow.
Какой потенциал есть у систем машинного обучения on-device?
Потенциал большой: благодаря распределённости такое обучение может быть доступно компаниям, не обладающим ресурсами Google и Facebook. Сдерживающим фактором является ограниченность ресурсов устройств, с их помощью сейчас можно обрабатывать только сравнительно небольшие нейронные сети или классические ml модели.
Как сейчас развиваются голосовые помощники?
Основное направление - попытки всё больше заменять заскриптованные диалоги на Machine Learning. Тут ещё предстоит большая работа, интересные результаты есть у команды Facebook.
Какие успехи уже есть у проекта AutoML?
К сожалению, почти ничего конкретного о нём не слышал с анонса на Google I/O. Пожалуй, единственное упоминание, на которое я натыкался:
Как системы машинного обучения могут помочь с созданием приложений для "следующего миллиарда" пользователей?
Хороший кейс продемонстрировала команда из Google Maps, которые с помощью Street View и машинного обучения построили карту крупного города с хаотичной застройкой, у которого не было карты в принципе.
Как идет развитие TensorFlow?
Одновременно по двум направлениям - во первых расширяется функциональность, добавлен компилятор графов, новые типы слоёв, алгоритмов и т.п. И во-вторых то, что к Google называют Democratizing AI - делают проще и доступней благодаря включению в поставку более высокоуровневого фреймворка Keras, добавлению т.н. canned estimators (готовых алгоритмов оптимизации, предварительно настроенных для вас участков графа tensorflow). То есть одновременно делают TensorFlow мощней и проще в использовании.
"Третья международная техническая конференция, посвященная технологиям Google, подготовленная для вас GDG сообществом, состоится в Нижнем Новгороде! Все про Android, Web, Firebase и Cloud от экспертов из России и других стран мира"

Интернет вещей

Милош Маринкович
разработчик CounterPath, руководитель GDG Novi Sad Сербия
В чем преимущество системы Google Home перед аналогами?
Она идеально интегрируется со всеми продуктами Google, и вы получаете персонализированного помощника, который достаточно знает о вас, вместо преднастроенного голосового движка.
Как в устройствах для дома решается проблема безопасности данных?
Проблема безопасности решается при помощи анализа голоса, а также использования паролей в некоторых случаях.
Могут ли в будущем носимые устройства полностью заменить смартфоны?
Скорее всего, нет. Большое число пользователей используют свои смартфоны и планшеты, чтобы потреблять контент: читать новости, смотреть видео. Это не так удобно делать с носимых устройств.
Какие сферы общества изменит IoT?
Вероятнее всего, транспорт, социальную жизнь внутри дома и, возможно, медицинскую работу.
Что такое Android Things и что можно создать с её помощью?
Это вариант операционной системы Android, адаптированный для эффективной работы с платой разработки IoT с медленным или миниатюрным микроконтроллером. Она является более мощной по сравнению с другими IoT-платформами и позволяет разработчикам использовать многие из знакомых API Android. Android Things поддерживает графические пользовательские интерфейсы использует тот же самый набор инструментов для создания интерфейсов в традиционных приложениях Android, в которых окно приложения занимает весь дисплей.
Как изменился Android Things за год? Можно ли уже использовать ОС в продакшене?
Официально платформа пока находится в фазе превью, но она уже была протестирована многими разработчиками и доказала свою стабильность. Так что, вероятно, её уже можно применять в продакшене.
Так ли необходима Android Things для интернета вещей? Какие проекты можно создать без использования системы?
Использовать Android Things необязательно. Другие платформы поддерживают традиционные платы Raspberry Pi, Arduino, Particle и другие, но ни в одной из них нет доступа к знакомым API Android по умолчанию. Без использования Android Things разработчики могут использовать сторонние сервисы и провайдеров облачных хранилищ, чтобы собирать данные, следить за сенсорами при помощи ручной разработки модулей платы и писать собственные наборы модулей для отображения данных на экране. Это может быстро выйти из-под контроля.
Эволюция Android
2008
Android 1.0 Apple Pie
Впервые операционная система Android была анонсирована как продукт только в 2007 году. Это случилось два года спустя поглощения компании Android корпорацией Google.

Эра операционной системы Android официально стартует 22 октября 2008 года, когда в США начались продажи смартфона T-Mobile G1 под управлением Android 1.0. Также это устройство известно под названием HTC Dream.
2009
Android 1.5 Cupcake
В феврале 2009 года выходит первое обновление Android 1.1. Banana Bread. В обновлении добавились несколько небольших функций. Например, появился голосовой поиск Google Voice Search и платные приложения в магазине Play Market. Помимо этого, появилась поддержка обновлений прошивки «по воздуху».

В апреле 2009 года вышло обновление Android 1.5 Cupcake, в котором появилась экранная клавиатура. Производители теперь могли выпускать новые телефоны без физических клавиш для ввода. Первым Android-смартфоном с полностью сенсорным управлением стал HTC Magic.

Позже в 2009 году вышло третье обновление под версией 1.6 Donut. Одним из самых главных нововведений стала поддержка сетей CDMA, что позволило Verizon и другим операторам продавать смартфоны для своих абонентов. Также немаловажным изменением стала поддержка экранов с разрешением больше 480×320 пикселей.
В Android Market наконец-то на страницах приложений появились скриншоты — пользователь мог посмотреть на то, что он скачивает.
2009
Android 2.0 Eclair
Эпохальным событием в истории развития платформы стало обновление Android 2.0, представленное в ноябре 2009 года. Начиная с версии 2.0 мобильные устройства Android начали распространяться по миру.
Изменения в ОС
  • Обновление камеры: поддержка вспышки, цифрового увеличения и эффектов
  • Улучшена раскладка экранной клавиатуры и механизм обучения словаря
  • Новый пользовательский интерфейс браузера и поддержка HTML5
  • Обновлён календарь
  • Обновление графической архитектуры, позволившее улучшить аппаратное ускорение
  • Поддержка Bluetooth 2.1.
  • Добавлена поддержка новых размеров и разрешений экранов
  • Изменён пользовательский интерфейс
  • Улучшен класс MotionEvent для поддержки нескольких касаний

2010
В январе 2010 года Google выпускает минорное обновление — Android 2.1 Eclair. На базе этой ОС выходит первый смартфон из линейки Nexus.

В середине 2010 года выходит обновление Android 2.2 Froyo (замороженный йогурт), которое сразу обозначило одно из основных преимуществ линейки Nexus — смартфон One первым обновился до этой версии. В обновлении 2.2 разработчики из Google сосредоточились на увеличении производительности и оптимизации. Одним из важных нововведений стал компилятор JIT, который мог конвертировать Java-код в нативный для быстрого выполнения.

Также в Froyo появилась возможность раздавать Wi-Fi, то есть превращать устройство в портативную точку доступа.

В декабре 2010 Google выпускает еще один крупный апдейт — Android 2.3 Gingerbread (имбирный пряник). Первым устройством с «пряником» стал Nexus S от Samsung. В то же время вышел хитовый iPhone 4, а Microsoft выпустила не самую успешную систему Windows Phone.
Изменения в ОС
  • Обновлённый дизайн пользовательского интерфейса
  • Поддержка сверхвысоких размеров экранов и разрешений (WXGA и выше)
  • Встроенная поддержка протокола SIP VoIP-телефонии
  • Поддержка проигрывания видео форматов WebM/VP8, а также поддержка аудио стандарта AAC
  • Поддержка стандарта Near Field Communication
  • Переработанная программная клавиатура с поддержкой нескольких касаний
  • Улучшения для разработчиков игр в области аудио, графической части и ввода информации
  • Встроенная поддержка большего числа сенсоров (например, гироскопы и барометры)
  • Встроенная поддержка нескольких камер
2010
Android 3.0 Honeycomb
Операционная система Android 3.0 Honeycomb создавалась исключительно для планшетов в качестве ответа на iPad от компании Apple. Третья версия Андроида вышла в феврале 2011 года — через год после презентации первого поколения iPad Стивом Джобсом. Для полного редизайна и переделки одного года было недостаточно, поэтому обновление выпустили незавершенным.

Внешний вид системы преобразился благодаря синей цветовой схеме, вместо зеленой в предыдущих версиях. Основная ставка была сделана на эффективное использование рабочего стола с виджетами и иконками.
2011
Android 4.0 Ice Cream Sandwich
Именно в Android 3.0 появился виртуальный навигационный бар с тремя кнопками управления. Теперь производители могли выпускать устройства без кнопок софт-тач. Также в третьей версии прорисовывалось некое подобие полноценной многозадачности. В меню недавних приложений были полноценные превью-карточки программ.

Несмотря на то, что Android 3.0 не стала популярной версией системы, она задала тон для дальнейшего развития платформы.

После планшетного провала в версии 3.0 в Google решили вернуться к смартфонному направлению. В октябре 2011 года выходит обновление Android 4.0 Ice Cream Sandwich (сэндвич с мороженым). Именно эта версия установила внешний вид и основные функции, которые закрепились в умах пользователей Android.

Язык дизайна Holo из планшетного Android 3.0 перекочевал в четвертую версию вместе с наэкранными кнопками управления.
Изменения в ОС
  • Использование единой оболочки для планшетов, смартфонов и других устройств на базе OS Android
  • Open Accessory API — API для интеграции с разнообразным оборудованием
  • Поддержка Real-time Transport Protocol API для аудио
  • Изменённая панель блокировки с вынесением ярлыков для быстрого запуска камеры, доступа к функциям телефона (вызовов), доступа к текстовым сообщениям и меню для работы с электронной почтой
  • Система контроля использования интернет-трафика
  • Программное улучшение камеры: внедрение режима панорамной съёмки, программная стабилизация изображения, эффекты в реальном времени при видеосъёмке
  • Расширенные возможности безопасности: разблокировка устройства через распознавание лица владельца, полное шифрование аппарата, ASLR, новый VPN API
  • Поддержка Wi-Fi Direct
2012
Android 4.1 Jelly Bean
27 июня 2012 года на Google I/O, компания Google представила следующую версию Android 4.1 Jelly Bean вместе с планшетом Nexus 7. Изменения в основном коснулись плавности работы интерфейса. Новое обновление принесло улучшения в производительности — центральный и графический процессор работают параллельно. Благодаря этому на некоторых устройствах Android 4.1 будет работать с частотой 60 кадров в секунд.
Именно после релиза Android 4.1 Jelly Bean в 2012 году появилась первая версия Сервисов Google. Они задумывались компанией Google как некий мост между приложениями и системой. Этот «мост» можно было обновлять отдельно от всей системы. Сервисы Google Play 1.0 получили все гаджеты под управлением Android 2.2 и новее. Таким образом, Google частично решила проблему фрагментации Android: старые устройства могли получать свежие API и функции из сервисов Google Play для работы со всеми нужными сторонними приложениями.
Изменения в ОС
  • Обновлённый интерфейс, использование технологии Project Butter для получения более плавного UI.
  • Автоматическое масштабирование виджета и изменение расположения остального содержимого, если он не вмещается на рабочий стол.
  • Обновление виртуальной клавиатуры.
  • Возможность голосового ввода в автономном режиме.
  • Слепые или слабовидящие получили возможность подключить к смартфону или планшету на Android 4.1 устройство ввода со шрифтом Брайля.
  • Обновлённый поиск, благодаря которому на манер голосового помощника можно получить ответы на заданные голосовые вопросы.
  • Добавлен сервис Google Now. Он будет снабжать пользователя полезной информацией, опираясь на календарь, историю поисковых запросов и маршруты перемещений телефона.
  • Новый интерфейс для планшетов, классический интерфейс Android 3.0—4.0.4 доступен через редактирование Build.Prop изменение DPI на значение ниже 140.
В версии 4.2 появилась поддержка нескольких аккаунтов, технологии Miracast, минорные изменения в дизайне.

Между выходом версий 4.2 и 4.3 большое обновление получил магазин приложений Google Play. Уже тогда он выглядел примерно так, как и сейчас.
2013
Android 4.4 KitKat.
В июле 2013-го Google анонсирует очередное минорное обновление для Android — 4.3 Jelly Bean. Апдейт вышел вместе с обновленным планшетом Nexus 7 (2013). На нем эта линейка и оборвалась.

На Хэллоуин, 31 октября 2013 года, компания Google запускает крупное обновление — Android 4.4 KitKat.
Вместе с Android 4.4 KitKat был запущен новый флагман линейки Nexus — смартфон Nexus 5.

В тестовом режиме была введена среда ART для выполнения приложений.
Изменения в ОС
  • Google Now, активный голосовой помощник
  • Центр общения в приложении Hangouts.
  • Поддержка Chromecast.
  • Запуск веб-приложений через Chrome.
  • Запуск приложений в песочнице.
  • Поддержка шагомеров.
  • Осуществление платежей через Google Кошелёк и хранение статистики.
  • Бета-версия Android Runtime (ART)
Операционная система этой версии действительно достигла того уровня развития, когда ей могли пользоваться все пользователи и для выполнения любых задач.