Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
#Круги добра
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Испытайте захватывающие сражения Второй мировой войны: быстрые бои, огромный арсенал, настройка, танки и стратегия на разнообразных картах!

Warfare 1942 - онлайн шутер

Мультиплеер, Шутер, Мидкорные

Играть

Топ прошлой недели

  • SpongeGod SpongeGod 1 пост
  • Uncleyogurt007 Uncleyogurt007 9 постов
  • ZaTaS ZaTaS 3 поста
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
2
DotaAnalysis
DotaAnalysis
3 года назад

Dota Analysis - анализ данных для Dota 2⁠⁠

Всем привет!


Я со школьных лет играл сначала в DotA Allstars, а сейчас в Dota 2. Думаю, мне, как и многим игрокам, хочется знать объективные преимущества героев и предметов, чтобы принимать лучшие решения перед и во время матча. Эти преимущества отражаются в статистических показателях, например, в среднем проценте побед. Однако данных, представленных на сайтах с внутреигровой статистикой, таких как Dotabuff или Opendota, недостаточно для того, чтобы делать выводы. Например, мы можем посмотреть предметы, обладающие наибольшим средним процентом побед, но в топе этого списка находятся самые дорогие предметы, и оказываются они там не потому, что игроки, купившие этот предмет, чаще побеждают, а потому, что игроки, которые побеждают, могут купить дорогие предметы. Другими словами, одного винрейта недостаточно, чтобы оценить предмет, нужно учитывать также его стоимость, частоту покупок и другие показатели. Такой информации на указанных сайтах нет.

Dota Analysis - анализ данных для Dota 2 Dota 2, Data Science

Однако так получилось, что я занимаюсь еще и научными исследованиями в области анализа данных, машинного обучения и искусственного интеллекта. И мне всегда хотелось применить эти методы к данным доты. Результатом моего стремления стал проект Dota Analysis. Цель проекта - предоставить инструменты принятия решений для игроков в Dota 2 на основе анализа данных. Мы не собираем данные матчей сами (это было бы слишком трудоемкой задачей для нашего небольшого коллектива энтузиастов), а берем уже готовые статистические показатели из открытых источников. Проект еще только развивается. На данный момент реализован анализ зависимостей между статистическими показателями героев, предметов и нейтральных предметов. Наиболее интересные случаи вынесены на главную. Например, на странице Heroes Pick Rate vs Win Rate можно найти метовых или наоборот неметовых героев, а на странице Items Cost vs Win Rate - лучшие для победы предметы с учетом стоимости. Для расчетов используются алгоритмы кластеризации, регрессии и различные статистические методы. Данные автоматически обновляются раз в сутки.

Dota Analysis - анализ данных для Dota 2 Dota 2, Data Science

Приглашаю всех попробовать применить результаты анализа на практике! Буду рад комментариям и пожеланиям, что бы вы еще хотели увидеть на нашем сайте. Можно писать здесь или на почту: contacts@dotaanalysis.com.

Показать полностью 2
[моё] Dota 2 Data Science
6
5
vikent.ru
vikent.ru
3 года назад
Читатели VIKENT.RU

Кибернетические модели решений / творчества – бывают слишком упрощёнными по оценке А.Н. Колмогорова⁠⁠

Внимательно еженедельно изучая материалы нашего канала + рекомендованные ссылки, Вы можете пройти спецкурс по Теории творчества, который НЕ читается ни в одном университете мира.


Данная статья относится к Категории: Лженаука

Кибернетические модели решений / творчества – бывают слишком упрощёнными по оценке А.Н. Колмогорова Кибернетика, Ошибка, Математика, Математическое моделирование, Упрощение, Псевдоинтеллектуалы, Творчество, Мифы, Колмогоров, Data Science, Digital, Аналитика, Видео, Длиннопост

«В настоящее время для кибернетики, пожалуй, больше, чем для всякой другой науки, важно, что о ней пишут.


Я не принадлежу к большим энтузиастам всей той литературы по кибернетике, которая сейчас так широко издаётся, и вижу в ней большое количество, с одной стороны, преувеличений, а с другой - упрощенчества.


Нельзя, конечно, сказать, что в этой литературе утверждается то, что на самом деле недостижимо, но в ней часто встречаются восторженные статьи, сами заглавия которых уже кричат об успехах в моделировании различных сложных видов человеческой деятельности, которые в действительности моделируются пока совсем плохо.


Например, в американской кибернетической литературе и у нас, порой даже в совсем серьёзных научных журналах, можно встретить работы о так называемом машинном сочинении музыки (это не относится к работам P.X. Зарипова).


Под этим обычно подразумевается следующее: в память машины «закладывается» нотная запись большого числа (скажем, 70) ковбойских песен или, например, церковных гимнов; затем машина по первым четырём нотам одной из этих песен отыскивает все те песни, где эти четыре ноты встречаются в том же порядке и, случайным образом выбрав одну из них, берёт из неё следующую, пятую ноту. Теперь перед машиной вновь четыре ноты (2, 3, 4 и 5), и она снова таким же способом осуществляет поиски и выбор. Так машина как бы на ощупь «создаёт» некую новую мелодию. При этом утверждается, что если в памяти машины были ковбойские песни, то и в её творении слышится нечто «ковбойское», а если это были церковные гимны, - то нечто «божественное».

Кибернетические модели решений / творчества – бывают слишком упрощёнными по оценке А.Н. Колмогорова Кибернетика, Ошибка, Математика, Математическое моделирование, Упрощение, Псевдоинтеллектуалы, Творчество, Мифы, Колмогоров, Data Science, Digital, Аналитика, Видео, Длиннопост

Спрашивается, а что произойдёт, если машина будет производить поиск не по четырём, а по семи идущим подряд нотам? Поскольку в действительности двух произведений, содержащих семь одинаковых нот подряд, почти не встретишь, то, очевидно, «запев» семь нот из какой-нибудь песни, машина вынуждена будет пропеть её до конца. Если же, наоборот, машине для собственного творчества достаточно знать только две ноты (а произведений с двумя одинаковыми нотами сколько угодно), то здесь ей представился бы такой широкий выбор, что вместо мелодии из машины послышалась бы какофония звуков.


Вся эта несложная схема преподносится в литературе как «машинное сочинение музыки», причём всерьёз заявляется, что с увеличением числа нот, нужных «для затравки», машина начинает создавать музыку более серьёзного, классического характера, а с уменьшением этого числа переходит на современную, джазовую.


На сегодня мы ещё очень далеки от осуществления анализа и описания высших форм человеческой деятельности, мы даже ещё не научились в объективных терминах давать определения многих встречающихся здесь категорий и понятий, а не только моделировать такие сложные виды этой деятельности, к каким относится создание музыки.


Если мы не умеем понять, чем отличаются живые существа, нуждающиеся в музыке, от существ, в ней не нуждающихся, то, приступая сразу к машинному сочинению музыки, мы окажемся в состоянии моделировать лишь чисто внешние факторы.


«Машинное сочинение музыки» - это только пример упрощённого подхода к проблемам кибернетики.


Другой распространённый недостаток заключается в том, что сторонники кибернетики настолько увлеклись возможностями кибернетического подхода к решению любых самых сложных задач, что позволяют себе пренебрегать опытом, накопленным другими науками за долгие века их существования.

Кибернетические модели решений / творчества – бывают слишком упрощёнными по оценке А.Н. Колмогорова Кибернетика, Ошибка, Математика, Математическое моделирование, Упрощение, Псевдоинтеллектуалы, Творчество, Мифы, Колмогоров, Data Science, Digital, Аналитика, Видео, Длиннопост

Часто забывают о том, что анализ высших форм человеческой деятельности был начат давно и продвинулся довольно далеко. И хотя он и ведётся в других, не кибернетических терминах, но по существу объективен, и его необходимо изучать и использовать. А то, что сумели сделать кибернетики «голыми руками» и вокруг чего поднимают такую шумиху, зачастую не выходит за рамки исследования самых примитивных явлений.


Однажды на вечере в московском Доме литераторов один из участников вёл с трибуны разговор о том, что наше время должно было создать и уже создало новую медицину. Эта новая медицина есть достояние и предмет изучения не медиков, а специалистов по теории автоматического регулирования! Самое главное в медицине, по мнению выступавшего, - это циклические процессы, происходящие в человеческом организме.


А такие процессы как раз и описываются дифференциальными уравнениями, изучаемыми в теории автоматического регулирования. Так что изучать медицину в медицинских институтах теперь вроде как устарело - её надо передать в ведение втузов и математических факультетов.


Может быть, и верно, что специалисты по теории автоматического регулирования могут сказать своё слово в разрешении отдельных проблем, стоящих перед медициной. Но если они захотят принять участие в этой работе, то прежде всего им потребуется колоссальная доквалификация, ибо опыт, накопленный медициной, этой старейшей из наук, огромен, и для того чтобы сделать в ней что-то серьёзное, надо сначала овладеть им.


Вообще анализ высшей нервной деятельности в кибернетике сосредоточен пока на двух крайних полюсах.

Кибернетические модели решений / творчества – бывают слишком упрощёнными по оценке А.Н. Колмогорова Кибернетика, Ошибка, Математика, Математическое моделирование, Упрощение, Псевдоинтеллектуалы, Творчество, Мифы, Колмогоров, Data Science, Digital, Аналитика, Видео, Длиннопост

С одной стороны, кибернетики активно занимаются изучением условий рефлексов, т. е. простейшего типа высшей нервной деятельности. Всем, вероятно, известно, что такое условный рефлекс. Если два каких-нибудь раздражителя многократно осуществляются одновременно друг с другом (например, одновременно с подачей пищи включается звонок), то через некоторое время уже один из этих раздражителей (звонок) вызывает ответную реакцию организма (слюноотделепие) на другой раздражитель (подачу пищи). Это сцепление является временным и, если его не подкреплять, постепенно исчезает.


Значительная часть кибернетических проблем, которые известны сейчас под названием математической теории обучения, охватывает такие очень простые схемы, которые не исчерпывают и малой доли всей сложной высшей нервной деятельности человека и в анализе самой условно-рефлекторной деятельности представляют собой лишь начальную её ступень.


Другой полюс - это теория формально-логических решений. Эта сторона высшей нервной деятельности человека хорошо поддаётся изучению математическими методами, и с созданием вычислительной техники и вычислительной математики исследования такого рода быстро двинулись вперед. И здесь кибернетики во многом преуспели.


А всё огромное пространство между этими двумя полюсами - самыми примитивными и самыми сложными психическими актами (даже такие простые формы синтетической деятельности, как, скажем, механизм точно рассчитанного геометрического движения, о котором говорилось выше, пока плохо поддаются кибернетическому анализу) - изучается крайне мало, чтобы не сказать вовсе не изучается».


Колмогоров А.Н., Автоматы и жизнь, в Сб.: Математика – наука и профессия / Сост.: Г.А. Гальперин, М., «Наука», 1988 г., с. 56-58.


Источник — портал VIKENT.RU


+ Ваши дополнительные возможности:

Плейлист из 23-х видео: ИНТЕЛЛЕКТУАЛЬНЫЕ РАЗОБЛАЧЕНИЯ от портала VIKENT.RU

Изображения в статье

Изображение Gerd Altmann с сайта Pixabay

Изображение chenspec с сайта Pixabay

Изображение Gerd Altmann с сайта Pixabay

Изображение Pete Linforth с сайта Pixabay

Показать полностью 4 1
Кибернетика Ошибка Математика Математическое моделирование Упрощение Псевдоинтеллектуалы Творчество Мифы Колмогоров Data Science Digital Аналитика Видео Длиннопост
1
Denitaliano
Denitaliano
3 года назад
Серия Производственный консалтинг

Как актуализировать НСИ?⁠⁠

Как актуализировать нормативно-справочную информацию на предприятии?


По запросу @SerLev решил расписать кейс по приведению в порядок нормативно-справочной информации (НСИ). Поделюсь этой информацией со всеми бесплатно – может кому-то пригодится в работе, может где-то сделают еще один шажок в сторону цифровизации, адептом которой я являюсь. В общем, работайте братья! //для тех, кто не хочет читать всю портянку целиком: мотайте вниз – там будет алгоритм действий.


Так сложилось исторически на постсоветских предприятиях, что НСИ по большей части на все изделия есть, есть разработанные техпроцессы, но времена на операции не актуальны вследствие разных причин. Например, для повышения ЗП рабочему, работающему на «сделке», просто увеличивали норму времени на операцию, при этом оставляя старой стоимость нормо-часа. Хотя надо было делать наоборот, но…

Или, например, увеличивали нормы времени на операции (и как следствие, увеличивали трудоемкость изготовления продукции) для обоснования высокой стоимости изделий перед госзаказчиком. Есть, конечно, предприятия, которые в своих информационных системах хранят два вида времен: одни реальные, а другие для начисления ЗП. Но сейчас не про такие предприятия рассказ.

Также в этой истории оставлю за рамками предприятия, на которых всяких внедренцев-цифровизаторов воспринимают как инфоцыган )) На таких предприятиях работают суровые специалисты, которые не верят таким инфоцыганам и просто «шлют их лесом»… Такие предприятия мне попадались преимущественно на Урале, например, в Магнитогорске )) Правда, в Челябинске на одном предприятии видел «сильно допиленную» 1С:УПП, в которой было занесено технологическое (а не только конструкторское) дерево ДСЕ (деталей и сборочных единиц) и все сборочные этапы были представлены диаграммой Ганта, к каждому подэтапу составлен сборочный комплект, и запуск в работу деталей идет этими сборочными комплектами. Ну, и вишенка на торте: поскольку вся продукция предприятия «кастомная», то сначала все НСИ рождается в PDM-системе, а потом уже передается в 1С. Это самое правильное решение для поддержания актуальности НСИ. И только так.


Вернемся к нашему рассказу про неактуальное НСИ и неправильные нормы времени в частности:

Норма времени на операцию рассчитывается по формуле: Тнв = Тшт +Тпз/n, где Тшт – норма штучного времени; Тпз – подготовительно-заключительное время; N – размер изготавливаемой партии, в шт.

Рассчитывает Тнв обычно Отдел труда и заработной платы (ОТиЗ) по старым советским справочникам, т.е. оборудование стало более высокопроизводительное, а нормы времени остались советскими. Иногда ОТиЗ (если у них есть время или кто-то в цехе недоволен нормами времени) выходит в «поля» и проводит реальные замеры Тшт, но в целом это не меняет картины на предприятии – нормы остаются в большинстве своем старыми, ибо замерить времена миллиона операций просто невозможно. Для понимания приведу пример: консоль крыла планера Ил-76 – это более 780 тыс. операций! И это всего лишь консоль – просто два крыла, а есть еще фюзеляж… А пять путевых машин, составляющих основу номенклатуры машиностроительного предприятия, – тоже почти 1 млн. операций.

Так что имеем то, что имеем: например, расточник закрывает за месяц 450-460 нормо-часов. Он конечно, ебошит как проклятый: задерживается после работы, ест на ходу, выходит в субботу на работу, но по факту он на предприятии присутствует (с вычетом обеденных и технологических перерывов) только 210-220 часов в месяц (блядь, это при 167 часах по Трудовому Кодексу!). Т.е. мы имеем в этом случае завышение норм времени как минимум в два раза! В этой статье я рассматриваю корректировку Тнв только с точки зрения приведения к достоверности, а не с точки зрения снижения ЗП расточника.


Также здесь надо отметить, что актуальное НСИ должно содержать не только верные нормы времени, но информацию на каком рабочем центре (РЦ) выполняется конкретная информация. А вот такой информации зачастую на постсоветских предприятиях нет.


И вот перед предприятием ставится задача в духе сегодняшнего времени: реализовать проект по цифровизации предприятия – внедрить систему класса APS (сокр. от англ. Advanced Planning & Scheduling – программное обеспечение для производственного планирования, главной особенностью которого является возможность построения расписания работы оборудования в рамках всего предприятия).

Т.е. необходимо построить цифровой двойник производственной системы предприятия – имитационную модель со всеми ресурсами, связями и правилами организовывания для построения оптимального расписания работы оборудования в рамках всего предприятия или проверки на модели гипотез типа «а что будет если…».

Как вы понимаете, сия имитационная модель будет основываться на НСИ предприятия, которое лежит в какой-то информационной системе (ИС), например, 1С:УПП или 1С:ERP. Какое расписание построит модель при недостоверных Тнв? Есть известное выражение в ИТ-индустрии: «Shit in – shit out», т.е. «дерьмо на входе – дерьмо на выходе». Вот…


И вот на предприятие приезжает команда цифровизаторов… На совещании у генерального директора сидят: технический директор, коммерческий директор, главный конструктор, главный технолог, начальник планово-диспетчерского отдела, начальник ИТ-службы… Цифровизаторы говорят: «Мы вам построим цифровой двойник предприятия, вы сможете управлять всеми ресурсами на новом уровне, сможет рассчитать сроки выполнения заказов, расписание работы рабочих центров (РЦ) будет построено из учета управления «узкими местами». Генеральный директор говорит: «О! Отлично!», а технический директор спрашивает: «А на каких данных вы построите сие чудо?» Цифровизаторы отвечают: «Так на ваших данных, мы их из ИС выгрузим!». И тут происходит немая сцена как у Гоголя: гендир еле сдерживает улыбку, техдир тихонько «прыскает в кулачок», главный технолог отводит глаза, главный конструктор выходит поговорить по телефону… и только начальник ИТ-службы смотрит на тебя прямо своими грустными усталыми еврейскими глазами… «На наших данных?! Ну, стройте…»


И цифровизаторы побегут строить имитационную модель, которая потом покажет «узкие места», которые вовсе, при ближайшем рассмотрении, таковыми не являются. Ну, вы помните: «Shit in – shit out».


Вот здесь мы прервем наш рассказ и перейдем к решению проблемы по актуализации НСИ.

Рассмотрим три варианта решения данной задачи:


1-й вариант (простой): На всех предприятиях сейчас уже внедрены электронные системы допуска сотрудников – АСКУД (автоматизированная Система контроля и управления доступом). В этой системе собирается информация, когда работник зашел на предприятие и когда вышел, т.е. мы знаем время фактического нахождения работника на предприятии. И так:

- шаг 1: из фактического нахождения работника на предприятии за месяц (несколько месяцев или год) вычитаем время технологических и обеденных перерывов;

- шаг 2: делаем связку «рабочий – РЦ». Эта информация есть у мастера участка – он знает какой рабочий за каким станком работает.

- шаг 3: делаем связку «рабочий – операция – РЦ». Информация «рабочий – операция» есть в ОТиЗ: по всем выполненным операция работнику начисляется ЗП, все есть в ИС.

- шаг 4: Делим суммарное время выполненных операций конкретным рабочим за месяц (несколько месяцев или год) на суммарное время его присутствия на предприятии (за минусом технологических и обеденных перерывов), получаем коэффициент приведения Тнв для конкретного РЦ

- шаг 5: Зная связку «рабочий – операция – РЦ», делим на коэффициент приведения все Тнв операций, выполняемых на данном РЦ. Получаем актуальные Тнв в первом приближении

- шаг 6: делаем замеры Тнв для нескольких операций на особо загруженных РЦ. Смотрим соотнесение с рассчитанным Тнв, делаем корректировки.


2-й вариант (сложный): Похож на Вариант 1, но более точный, но сука сложный. Надеваем на себя личину DataScientist’а: нам потребуется выгрузка из ИС факта выполнения всех операций за год по всем рабочим. Выполняем первые три шага из Варианта 1.

- шаг 4: На основе выгрузки из ИС факта выполнения всех операций за год по всем рабочим составляем управления по каждому рабочему за каждый день (будет 248 уравнений по одному рабочему – по количеству рабочих дней в году):

К1Х1 + К2Х2+ …+… КNХN = Y/Z

Где ХN – Тнв на N-ую операцию, КN – коэффициент приведения для N-ой операции, Y – суммарное время всех выполненных операций в этот день, Z – время нахождения на рабочем месте в этот день.

- шаг 5: Полученную систему из 248-ми уравнений упрощаем, исключая повторяющиеся

- шаг 6: Полученную систему из 248-ми уравнений решаем методом наименьших квадратов и получаем коэффициенты приведения для каждой операции на данном РЦ.

- шаг 7: Делим на коэффициент приведения все Тнв операций, выполняемых на данном РЦ. Так делаем по каждому рабочему/РЦ. Получаем актуальные Тнв. Пусть теперь ОТиЗ отсосёт!


3-й вариант (для случая, когда надо актуализировать не только Тнв, но и всё НСИ требует корректировки):

- шаг 1: внедряем на предприятии систему диспетчеризации через «тонкий клиент» к 1С УПП или ERP (где взять «тонкий клиент» спросите у меня – у нас дешевле всех, ну или возьмите у других ))).

- шаг 2: всем рабочим, всем РЦ, всем деталям присваиваем штрих-коды.

- шаг 3: начинаем сбор данных через ТСД (терминалы сбора данных) на которых стоит мобильное приложение («тонкий клиент»): рабочий авторизуется на РЦ считывая ТСД свой штрих-код и штрих-код РЦ, начиная операцию рабочий считывает ТСД штрих-код детали, по окончании операции рабочий снова считывает штрих-код. Таким образом в систему заносится фактическое время исполнения операции на конкретном РЦ. Время, которое потребуется на актуализацию НСИ зависит от длительности ваших производственных циклов - надо чтобы все детали прошли через все РЦ. Получаем актуальные Тнв с маршрутами и привязкой к РЦ.


И самое важное: после того как вы выбрали и согласовали с Заказчиком вариант актуализации НСИ, нужно это зафиксировать протоколом, в котором будет сказано, как вы достигаете актуальности данных, какие есть допущения при их актуализации, и что на этих данных будет построена имитационная модель. И вот тогда Заказчик уже не скажет: «А я вот не верю этим данным»!

Показать полностью
[моё] Производство Завод Data Science Нормативы Нормирование Информация Цифровизация Цифровые технологии Консалтинг Мат Длиннопост Текст
10
1561
Timeweb.Cloud
Timeweb.Cloud
3 года назад
Лига математиков
Серия Математика и физика

Как воссоздать изображение всего по нескольким пикселям⁠⁠

Эта статья дает возможность познакомиться с такой методикой получения и восстановления сигнала, как Compressive Sensing.
Как воссоздать изображение всего по нескольким пикселям Машинное обучение, Программирование, Data Science, Длиннопост

Множество всех возможных изображений 2 на 2 с цветами, закодированными одним битом

Пространство изображений огромно, невероятно огромно, но при этом очень мало. Задумайтесь об этом на минуту. Из сетки размером всего 8 на 8 пикселей можно создать 18 446 744 073 709 551 616 различных чёрно-белых изображений. Однако из этих 18 квинтиллионов изображений очень немногие покажутся осмысленными человеческому взгляду. Большинство изображений, по сути, выглядит как QR-коды. Те, которые покажутся человеку осмысленными, принадлежат к тому множеству, которое я называю естественными изображениями. Они представляют крошечную долю пространства изображений 8 на 8. Если мы рассмотрим мегапиксельные изображения, то доля естественных изображений становится ещё меньше, почти ничтожной, однако содержит любое изображение, которое можно придумать. Так чем же эти естественные изображения так уникальны? И можем ли мы использовать эту фундаментальную разницу в собственных интересах?


Спектральное пространство


Рассмотрим два представленных ниже изображения. Оба изображения имеют размер 512 на 512 пикселя. Если вычислить гистограмму значений пикселей, то можно понять, что эти распределения идентичны. И это на самом деле так. Левое изображение такое же, как правое, только пиксели перемешаны случайным образом. Тем не менее между ними есть фундаментальное отличие. Одно выглядит как «снег» на экране старого телевизора, а другое — это лицо человека.

Как воссоздать изображение всего по нескольким пикселям Машинное обучение, Программирование, Data Science, Длиннопост

Слева: случайное изображение. Справа: классическое тестовое изображение женщины с тёмными волосами. Оба изображения принадлежат к пространству изображений 512 на 512

Чтобы понять фундаментальную разницу между этими изображениями, нам нужно покинуть пространство пикселей и войти в мир частотного диапазона. С точки зрения математики, преобразование Фурье — это линейное сопоставление пиксельного описания изображения с описанием в виде суммы синусов и косинусов, колеблющихся в двух измерениях. Вместо задания изображения значениями, принимаемыми каждым пикселем, мы задаём его по амплитудам каждого из составляющих его двухмерных синусов и косинусов.


Описание этих двух изображений в пространстве Фурье представлено ниже. Для отображения величины коэффициента Фурье использована логарифмическая шкала. Разница между двумя изображениями теперь очевидна. Одно имеет гораздо больше ненулевых коэффициентов Фурье, чем другое. На языке математики говорится, что естественное изображение является разреженным по базису Фурье. Именно разреженность отличает естественные изображения от случайных. Давайте же используем эту разницу с пользой для себя!

Как воссоздать изображение всего по нескольким пикселям Машинное обучение, Программирование, Data Science, Длиннопост

Амплитуда преобразований Фурье обоих изображений. Использована логарифмическая шкала

Воссоздание изображений по нескольким пикселям, задача с высокой степенью неопределённости

Как воссоздать изображение всего по нескольким пикселям Машинное обучение, Программирование, Data Science, Длиннопост

Записано всего 10% пикселей

Рассмотрим следующую ситуацию: по какой-то неизвестной причине большинство фотодатчиков камеры оказалось неисправным. Скопировав на компьютер только что сделанную фотографию своей жены (или матери, или друга), вы обнаружили, что изображение получилось таким, как показано выше. Можно ли как-то восстановить изображение?


Допустим, что мы точно знаем, какие фотодатчики исправны. Обозначив как x ∊ ℝⁿ неизвестное изображение (где n — общее количество пикселей, и мы считаем, что оно представлено в виде вектора), а как y ∊ ℝᵐ ненулевые яркости пикселей, зафиксированные датчиками, мы можем записать

Как воссоздать изображение всего по нескольким пикселям Машинное обучение, Программирование, Data Science, Длиннопост

Здесь C — это разреженная матрица измерений m × n. Все элементы, соответствующие неисправным фотодатчикам, равны нулю, и она содержит только m ненулевых элементов, соответствующих исправным датчикам. Следовательно, наша задача — выяснить, каким был x исходного изображения, учитывая, что мы наблюдаем только несколько его пикселей.


С точки зрения математики, это задача с высокой степенью неопределённости. У нас гораздо больше неизвестных, чем уравнений. Эта задача имеет бесконечное количество решений. Значит, вопрос сводится к тому, какое решение из бесконечного множества является тем, которое мы ищем. Естественным способом решения такой задачи было бы принятие того, что решение имеет наименьшую норму ℓ₂. Это можно формализовать как следующую задачу оптимизации:

Как воссоздать изображение всего по нескольким пикселям Машинное обучение, Программирование, Data Science, Длиннопост

решение которой задаётся так:

Как воссоздать изображение всего по нескольким пикселям Машинное обучение, Программирование, Data Science, Длиннопост

Матрица C соответствует измерениям единичных пикселей, её строки получены из единичной матрицы n × n. В такой ситуации решение задачи оптимизации не особо нам поможет, поскольку оно вернёт только повреждённое изображение (произведение матриц справа сводится к Cᵀ). Очевидно, что это нам не подходит. Но можно ли найти решение получше?


Используем разреженность в спектральном пространстве


При обсуждении уникальных особенностей естественных изображений мы увидели, что они являются разреженными в пространстве Фурье, поэтому давайте этим воспользуемся. Обозначив как Ψ отображение матрицы n × n из пространства Фурье в пространство пикселей, мы получим следующий вид уравнения измерений:

Как воссоздать изображение всего по нескольким пикселям Машинное обучение, Программирование, Data Science, Длиннопост

где s — преобразование Фурье x (т. е. x = Ψs). Это по-прежнему задача с высокой степенью неопределённости, но теперь у нас есть дополнительная информация о решении, которое мы ищем. Мы знаем, что оно должно быть разреженным. Введя псевдонорму ℓ₀ для s (т. е. его число ненулевых элементов), мы сможем сформулировать следующую задачу оптимизации:

Как воссоздать изображение всего по нескольким пикселям Машинное обучение, Программирование, Data Science, Длиннопост

К сожалению, это задача комбинаторики, очень быстро становящаяся нерешаемой. Чтобы найти её решение, потребуется проверить все возможные сочетания. К счастью в своей революционной работе 2006 года Канде et al. [1, 2] показал, что при условии разумных допущений решение изложенной выше задачи можно получить (с высокой вероятностью) при помощи решения более простой задачи:

Как воссоздать изображение всего по нескольким пикселям Машинное обучение, Программирование, Data Science, Длиннопост

Здесь норма ℓ₁ — это сумма абсолютных значений вектора s. Сегодня хорошо известно, что использование нормы ℓ₁ кроме превращения задачи оптимизации в выпуклую, склонно отдавать предпочтение разреженным решениям. Несмотря на свою выпуклость, эту задачу всё равно может быть достаточно сложно решить на стандартном компьютере. В дальнейшем мы используем более ослабленную версию, задаваемую следующим образом:

Как воссоздать изображение всего по нескольким пикселям Машинное обучение, Программирование, Data Science, Длиннопост

где λ — это задаваемый пользователем параметр, управляющий равновесием между соответствием ограничениям и необходимой разреженностью решения. Эту задачу оптимизации называют Basis Pursuit Denoising. При помощи проксимальных операторов она решается чрезвычайно быстро. Ниже представлена реализация на Julia с использованием StructuredOptimization.jl.

using StructuredOptimization
" " "
Simple implementation of basis pursuit denoising using StructuredOptimization.jl
INPUT
- - - - -
C : The measurement matrix.
Ψ : Basis in which x is assumed to be sparse.
y : Pixel measurements.
λ : (Optional) Sparsity knob.
OUTPUT
- - - - - -
x : Estimated image.
" " "
function bpdn(C, Ψ, y ; λ=0.1)
# - - > Initialize variable.
x = Variable(eltype(y), size(Ψ, 2))
# - - > Solve the compressed sensing problem.
@minimize ls(C * Ψ * x - y) + λ*norm(x, 1)
return ~x
end

Кроме того, мы можем воспользоваться тем фактом, что для спектральных преобразований произведение матрицы и вектора Ψs при помощи алгоритма быстрого преобразования Фурье можно вычислить за O(n log n) операций вместо O(n²).

using StructuredOptimization
" " "
Simple implementation of basis pursuit denoising using StructuredOptimization.jl
INPUT
- - - - -
m, n : Size of the image in both direction.
idx : Linear indices of the measured pixels.
y : Pixel measurements.
λ : (Optional) Sparsity knob.
OUTPUT
- - - - - -
x : Estimated image.
" " "
function bpdn(m, n, idx, y ; λ=0.1)
# - - > Initialize variable.
x = Variable(eltype(y), m, n)
# - - > Solve the compressed sensing problem.
@minimize ls(idct(x)[idx] - y) + λ*norm(x, 1)
return ~x
end

Хотя до сих пор мы предполагали, что Ψ является преобразованием Фурье, в этом фрагменте кода мы использовали косинусное преобразование, являющееся более эффективным преобразованием для изображений. Теперь у нас есть всё необходимое, поэтому давайте вернёмся к исходной задаче. На изображении ниже сравнивается истинное изображение с его реконструкцией при помощи ℓ₁.

Как воссоздать изображение всего по нескольким пикселям Машинное обучение, Программирование, Data Science, Длиннопост

Слева: оригинал изображения. Справа: изображение, воссозданное при помощи compressive sensing на основании данных всего 10% пикселей

Даже несмотря на то, что исправно работало всего 10% фотодатчиков камеры, формулировка этой задачи восстановления изображения в рамках Compressed Sensing позволяет нам воссоздать достаточно точное приближение к тому, каким было исходное изображение! Очевидно, что оно всё равно неидеально, однако учитывая обширность пространства изображений и бесконечное количество решений нашей задачи, нужно признать, что результат довольно хорош!


Заключение


Методика Compressed Sensing совершила революцию в сфере обработки сигналов. Если мы заранее знаем, что сигнал, с которым работаем, разрежен по указанному базису, то compressed sensing позволяет восстановить его по гораздо меньшему количеству сэмплов, чем предполагается по теореме выборки Найквиста-Шеннона. Кроме того, она позволяет значительно сжимать данные непосредственно на этапе получения, уменьшая таким образом необходимый объём хранилища данных. Также Compressed Sensing привела к возникновению неожиданных новых технологий, например, однопиксельной камеры, разработанной Университетом Райса, или новых техник обработки для создания визуализаций МРТ в медицине. Я не сомневаюсь, что в ближайшие несколько лет мы станем свидетелями множества новых способов применения этой методики.


Compressed sensing — это гораздо более глубокая область математики, чем можно судить по этому ознакомительному посту. Существует ещё множество не рассмотренных нами вопросов, например:


- Каково наименьшее количество необходимых измерений?


- Могут ли некоторые измерения быть информативнее других?


- Как выбирать эти измерения, имея базис Ψ?


- Существуют ли другие нормы, лучше подходящие для изображений?


Для ответа на эти вопросы потребуется гораздо больше математики, чем можно представить в посте. Если вы хотите знать больше, то крайне рекомендую изучить оригиналы статей, ссылки на которые я указал в конце. Также стоит изучить потрясающий веб-сайт Numerical Tours Габриеля Пейре или последнюю книгу Брантона и Кутца [3], а также соответствующий канал на YouTube (здесь и здесь).


Ссылки на научные работы


[1] Candès E., Romberg J., Tao T. Stable signal recovery from incomplete and inaccurate measurements. Communications on Pure and Applied mathematics. 58(8): 1207–1223. 2006.


[2] Candès E. Compressed sensing. IEEE Transactions on Information Theory. 52(4): 1289–1306. 2006.


[3] Brunton S. L. and Kutz J. N. Data-driven science and engineering: machine learning, dynamical systems, and control. Cambridge University Press, 2019.

Автор оригинала: Jean-Christophe B. Loiseau

Перевод: https://habr.com/ru/company/timeweb/blog/549024/

Показать полностью 12
[моё] Машинное обучение Программирование Data Science Длиннопост
168
176
BreadForObed
3 года назад
Искусственный интеллект

Нейрокепчук⁠⁠

Нейрокепчук Бред на обед, Data Science, Кетчуп, Юмор, Нейронные сети

Автор: vk.com/bread_for_obed

[моё] Бред на обед Data Science Кетчуп Юмор Нейронные сети
10
Ki1rea1
3 года назад

Урок по Машинному обучению⁠⁠

Урок по Машинному обучению Python, IT, IT юмор, Машинное обучение, Data Science, Том и Джерри, Патрик Стар
Показать полностью 1
Python IT IT юмор Машинное обучение Data Science Том и Джерри Патрик Стар
4
8
ekarma
ekarma
3 года назад

Из юристов в IT. План обучения. Клич о помощи опытных камрадов. "Очередной войтивайтишник"⁠⁠

Привет, Пикабушники!

Лет 10 вас почитываю, решил все-таки зарегистрироваться.


Стою сейчас на пороге кардинальных изменений в жизни, и мне как воздух нужны советы опытных ITшников, а еще лучше - конкретно Data Scientist'ов.


Если коротко, меняю сферу деятельности, история моя ниже, а кому не интересно читать можно сразу перейти к концу поста.


Собственно, моя история:

В школьные годы единственное что любил (кроме физкультуры) это математику. И в средней, и в старшей школе. Был прекрасный педагог, домой уходил всегда с задачами повышенной сложности, так называемые "со звёздочкой". Наверное, больше нравилась даже геометрия, так как была сложнее. Алгебра работала с формулами и особых сложностей не вызывала, в то время как задачи по геометрии заставляли думать, придумывать решение. Всё остальное интереса не вызывало никакого, особенно гуманитарные направления.


Лет в 12-15 что-то там кодил. Немного, помнится в паскале экспериментировал, пробовал написать сайт на html в блокноте. Баловался всякими конструкторами типа CMS Joomla, но всё оставалось на зачаточных состояниях, потому что конечного продукта не было (задачи для которой нужен сайт, наполнение и т.д.), мне был интереснее процесс.

И так сложилось, что волею судеб я оказался на юрфаке, в прокуратуре.

Еще на первом курсе я прекрасно понимал, что попал не туда. Единственный предмет, который вызывал интерес - логика. Подпитывало это чувство еще и то, что кроме меня в группе её не понимал никто, я ведь в гуманитарий ушел. Чем дальше шла учеба тем сильнее укреплялась мысль, что повернул я не туда. Мне было скучно, не интересно, местами даже отвращение вызывало обучение. Так или иначе отступать было нельзя, так как деньги уплачены, а чем дальше идешь тем ближе такая нужная корочка.


На 3 курсе пошел работать в прокуратуру общественным помощником, чтобы посмотреть к чему меня готовят. Проработал полгода, но в первый же месяц понял, что на гос. службу и в прокуратуру в частности я не пойду. Ушел в коммерцию после 3 курса и там и остался.


Последние несколько лет занимаюсь обслуживанием бизнеса, в том числе крупного, от А до Я. Условия, казалось бы, прекрасные: высокая для моего возраста и опыта зарплата, серьезные задачи и проекты, свой кабинет, кожаное кресло и т.д. и т.п. НО!

С завидной периодичностью (а на самом деле на постоянной основе) еще с первого места работы меня одолевают мысли что занимаюсь я совсем не тем, хоть и занимаюсь хорошо. Я понимаю, что меня тянет к числам, формулам, символам, операциям.


Была даже попытка связать это всё: прошел курсы и стал членом палаты налоговых консультантов. Вроде бы логично: там цифры, расчеты, но, как оказалось, всё те же неинтересные споры просто оппонент один - ФНС.


Удовольствие в работе доставляет только какой-нибудь сложный расчет неустойки в иске, всё остальное вызывает приступы рвоты, гнев и апатию.

Любовь к математике, логике, порядку и систематизации прослеживается и в личной жизни. Мне нужно всё упорядочить, структурировать, рассчитать. Все что можно оформлено в таблицах (к которым у меня тоже какая-то нездоровая тяга).


Не раз думал всё бросить, уйти куда-нибудь, но, разумеется, ипотека, маленький ребенок ясно дают мне понять: сиди работай. И дело было скорее всего именно в "куда-нибудь".


В очередной такой приступ залипал на ютубе по какой-то теме и попал на интервью А. Хачуяна по Big Data, ох! как мне стало интересно. Начал немного копать, узнал что есть такая профессия Data scientist. Позже понял чем они +/- занимаются и меня накрыло. Ну вот же оно: тут тебе и код, и математика, и анализ, и статистика с вероятностью - бомба! К тому же, вроде как DS входит в IT и вознаграждение грамотных специалистов очень и очень конкурентное. Я продолжил собирать информацию о специальности, необходимых навыках, как мне туда попасть ("Войти в айти" как оказалось сейчас мейнстрим, но что поделать). Неоднократно взвесив все "за" и "против" было принято твердое решение во что бы то ни стало стать тем самым Data Scientist.

Накидав план самообучения из заготовок на этапе сбора информации и увидев объем, немного подкосились ноги, но мыслей сдать назад не возникло.

Мой план (большую часть брал из какого-то видео на ютубе, откуда точно не помню, источник не записал. На каждый курс есть ссылка, но правила пикабу написаны не совсем однозначно, решил не рисковать и всё что с ютуба начало судорожно вставляться видеороликами прям по тексту, потому оставил только названия источника):


1. Курс гарварда "CS50" (YouTube)

2. Python

2.1. "Основы Python и анализа данных" (Я.Практикум)

2.2. "Программирование на Python" (Stepic)

2.3. "Python: основы и применение" (Stepic)

2.4. Книга "Укус питона"

2.5. "Поколение Python": курс для начинающих" (Stepic)

2.6. "Программирование на Python" CSC (YouTube)

2.7. "Как научиться разработке на Python" Яндекс

3. Статистика:

3.1. "Статистика" (Stepic)

3.2. Несколько плейлистов StatQuest (YouTube)

4. Математика:

4.1. "Основы линейной алгебры" - 3Blue1Brown (YouTube)

4.2. "Матанализ" - 3Blue1Brown (YouTube)

4.3. "Введение в DS и машинное обучение" (Stepic)

4.4. Курс лекций mlcourse (YouTube)

5. Нейронные сети:

5.1. "Нейронные сети" (Stepic)

5.2. "Deep learning@ (dlcourse)

5.3. "Intro to Deep Learning with PyTorch" (Udacity)

6. SQL

6.1. "Интерактивный тренажер по SQL" (Stepik)

6.2. "Свободное погружение в СУБД" (Stepik)

6.3. "Практическое владение языком SQL" (sql-ex)

7. Английский

8. Практика на kaggle, сделать свой проект.

К сожалению, знакомых ITшников и тем более DS нет, потому хотелось бы выслушать мнение опытных людей по вопросам:


1. Правильно ли я представляю себе работу DS?

2. Нужно ли вносить корректировки в план обучения? (Может что лишнее, не хватает чего)?

3. Какой минимальный набор компетенций необходим чтобы работать? (Отдельно по питону, математике и т.д.).

4. На какие компании ориентироваться? Тут чуть подробнее: так как сфера скажем так для меня новая, я не особо то знаю какие-нибудь ITшные компании. Сейчас ориентируюсь на Контур. Почему? 1. Знаком с их продуктами - Фокус, Диадок, Экстерн и т.д., нравится как реализовывают их. 2. Слышал, что внутри компании для сотрудников всё очень даже хорошо; 3. Центральный офис в Екб (я тут живу); 4. Отгрохали недавно новое супер-здание)))

5. Есть ли вероятность попасть куда-то ранее освоения минимально необходимых знаний? (Наслышан, да и на практике сам лично видел, когда берут человека со склонностями и горящими глазами, обучая в процессе работы). Уточню: тут вопрос не поиска "халявы", а вопрос скорейшего и полного погружения, готов работать, а обучаться в свободное время.

Прекрасно понимаю, что передо мной на вакансию стоят сотни школьников-самоучек, студентов и т.д. И, казалось бы, кому я 26-летний юрист с семьёй нужен, но, как мне кажется у меня имеется ряд преимуществ перед вчерашними школьниками:


1. Меня не нужно "учить работать", общий стаж работы около 10 лет;

2. Не у всех есть склонности к математике и не всем это нравится, потому есть риск, что вчерашний студент выгорит и уйдет;

3. Я много работаю с бизнесом и представляю что нужно самому бизнесу, руководителю, менеджеру, бухгалтеру и т.д.;

4. У меня был не один коллектив, работать приходилось с разными людьми, везде уживался и был "своим";

5. Ненавистная профессия тоже дала полезные навыки:

5.1. сроки. Большинство деятельности завязано на процессуальных и договорных сроках, нарушать которые нельзя, отсюда привычка делать всё либо точно в срок, либо заранее, но никак не с опозданием;

5.2. ответственность. Цена ошибки может быть фатальной, отсюда максимальное качество работы

5.3. многозадачность. В нормальном (здоровом) понимании этого слова: не делать три дела одновременно (как показывают исследование это всё чушь, мозгу просто приходится многократно переключаться и разрываться между задачами), а вести много дел, проектов, задач одновременно;

5.4. исполнительность. Хотя тут скорее не профессия, а личные качества. Даже не смотря на отвращение к работе приезжаю и в выходные работать и задерживаюсь (без какого-либо принуждения), потому что есть работа и её надо работать.


P.S.

Отговаривать нет смысла, решение принято твёрдое. В своих силах уверен. Потому прошу по теме.

Отозвавшихся на клич о помощи заранее благодарю.

Показать полностью
[моё] IT Data Science Смена профессии Помощь Нужен совет Длиннопост Текст
16
2
Mastodontozaurus
Mastodontozaurus
3 года назад
Искусственный интеллект

Совет по поводу пути Data Scientist⁠⁠

Сейчас в рамках "Университет 2035" предлагается покрыть 50% стоимости обучения по некотрым онлайн курсам.

Давно облизываюсь по поводу DS - уж очень медленно самообразование идет и не помешала бы систематизация процесса с контролем деятельности "кураторами, наставниками, кодревьерами и прочей живностью", равно как и не хватает единомышленников в данной сфере - не с кем делиться наблюдениями, кодом, проблемами и достижениями.

Из предложенного - присмотрелся к курсам Data Scientist от Яндекс.Практикум и от СберУниверситета. Первый 8 месяцев, второй - 4.

К Яндекс.Практикуму у меня лично весьма скептическое отношение (примерно как ко всяким инфоцыганам типа БреинГикс и БоксКиллам) и отзывы там смешаные, а о ДС от СберУниверситета отзывов вообще не нашел.

Попробовал бесплатную версию Яндекс.Практикум тренажера и вводной части по питону - мне кажется, если бы я не знал питон, было бы непонятно. Ясное дело там не будут сильно углубляться в структуры данных, но как-то уж слишком все поверхностно показалось.

По СберУниверситету пишут:

Совет по поводу пути Data Scientist Обучение, Data Science, Яндекс, Вопрос, Онлайн-курсы, Инфоцыгане

первое очень похоже на стандартную проблему распознования раковых опухолей, второе, без уточнений - вообще будто постройте регрессию. Не хотелось бы за немалую сумму листики iris распределять,распознавать циферки, виды одежды и высчитывать кто выживет на Титанике. Точнее я готов очередной раз через это пройти без подключения библиотек, но не как выпускной проект, обидно было бы.

С другой стороны для подачи заявки в Школу Анализа Данных в апреле я не обладаю достаточной базой знаний и опытом.


Если кто-нибудь и присутствующих проходил курс по ДС у Яндекс.Практикум и СберУниверситета, какие ваши ощущения и отзывы?

Показать полностью 1
[моё] Обучение Data Science Яндекс Вопрос Онлайн-курсы Инфоцыгане
20
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии