Pull to refresh
0
@lehasergeev2010read⁠-⁠only

User

Send message

О 3D-графике простыми словами

Reading time24 min
Views54K

Часть 1. Введение


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

Идея этой серии постов уже давно витала где-то на периферии моего сознания, и снова всплыла после прочтения интересной статьи с разбором последней Deus Ex.

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


Есть много составляющих, необходимых для создания даже простой 3D-игры, не говоря уж о таком проекте, как Watch Dogs.

У меня есть только общее представление о том, что нужно рассмотреть в этой статье, но это будет зависеть от того, какие темы вызовут интерес. Тем не менее, основная идея заключается в том, чтобы создать общее описание того, что происходит внутри современной игры, не отпугнув при этом никого из читателей — я буду предполагать, что у вас нет знаний математики и программирования. Если вы знаете разницу между ЦП и графической картой, и отличаете оперативную память от жёсткого диска, то этого будет вполне достаточно, а остальное я объясню.

Магистратура по ИТ Сколковского института науки и технологий

Reading time4 min
Views39K
В этом году я поступил в магистратуру Сколковского института науки и технологий, кратко Сколтех, на направление IT. Про сам университет много писать не буду, так как эта информация есть на их сайте. Скажу лишь, что это новый ВУЗ, который будет являться ядром Инновационного Центра «Сколково». Кампус еще не построен, но университет уже функционирует и студентов уже набирают. Далее прошу под кат.
Читать дальше →

Как была устроена графика NES

Reading time14 min
Views23K
image

Выпущенная в 1983 году домашняя консоль Nintendo Entertainment System (NES) была дешёвой, но мощной машиной, достигшей феноменального успеха. При помощи блока обработки изображений (Picture Processing Unit, PPU) система могла создавать достаточно впечатляющую по тем временам графику, которая и сегодня в нужном контексте выглядит вполне неплохо. Самым важным аспектом была эффективность памяти — при создании графики приходилось обходиться как можно меньшим количеством байтов. Однако вместе с этим NES предоставила разработчикам мощные и простые в использовании функции, позволившие ей выделиться на фоне более старых домашних консолей. Поняв принципы создания графики NES, можно проникнуться техническим совершенством системы и осознать, насколько проще работать современным разработчикам игр.

Фоновая графика NES собиралась из четырёх отдельных компонентов, комбинация которых образовывала изображение, которое мы видим на экране. Каждый компонент отвечал за отдельный аспект; цвет, расположение, «сырая» пиксельная графика и т.д. Такая система может показаться излишне сложной и громоздкой, но в конечном итоге она намного эффективнее использовала память и позволяла создавать простые эффекты в малом объёме кода. Если вы хотите понимать графику NES, то ключевой информацией будут эти четыре компонента.

В этой статье подразумевается, что вы знакомы с компьютерной математикой, и в частности с тем, что 8 бит = 1 байт, а 8 бит могут обозначать 256 значений. Также необходимо понимание того, как работает шестнадцатеричная запись. Но даже без этих технических знаний статья может показаться интересной.
Читать дальше →

Создание системы формальной верификации с нуля. Часть 1: символьная виртуальная машина на PHP и Python

Reading time10 min
Views6.4K
Формальная верификация — это проверка одной программы либо алгоритма с помощью другой.

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

Более подробное описание формальной верификации можно увидеть на примере решения задачи о Волке, Козе, и капусте в моей предыдущей статье.

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

Для этого я написал свой аналог виртуальной машины, на символьных принципах.

Она разбирает код программы и транслирует его в систему уравнений (SMT), которую уже можно решить программным способом.

Так как информация о символьных вычислениях представлена в интернете довольно обрывочно,
я вкратце опишу что это такое.
Читать дальше →

Ищем свободное парковочное место с Python

Reading time14 min
Views66K
image

Меня зовут Рушан, и я автор Telegram‑канала Нейрон. Не забудьте поделиться с коллегами или просто с теми, кому интересны такие статьи.

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

Поэтому я решил направить камеру в окно и использовать глубокое обучение, чтобы мой компьютер сообщал мне, когда освободится место:

image

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

Поэтому давайте немного развлечёмся и напишем точную систему уведомлений о свободной парковке с помощью Python и глубокого обучения
Читать дальше →

NLU по-русски: ELMo vs BERT

Reading time9 min
Views10K
В данной статье речь пойдет о машинном обучении как части искусственного интеллекта. ИИ во многом подразумевает под собой разговорную составляющую, ведь общение – то, что делает нас людьми. Соответственно, если мы будем делать системы, которые могут нас понимать, отвечать на наши слова, мы в какой-то степени приблизимся к разработке искусственного интеллекта. Однако это все теория на грани философии. Давайте перейдем к практике.


Читать дальше →

Сбер выложил русскоязычную модель GPT-3 Large с 760 миллионами параметров в открытый доступ

Reading time10 min
Views176K
Последнее десятилетие в области компьютерных технологий ознаменовалось началом новой «весны искусственного интеллекта». Впрочем, ситуацию в индустрии в наши дни можно, наверное, охарактеризовать уже не как весну, а полноценное «лето ИИ». Судите сами, за последние неполные 10 лет только в области обработки естественного языка (Natural language processing, NLP) произошли уже две настоящие технологические революции. Появившаяся в результате второй из них модель GPT-3 произвела настоящий фурор не только в технологических медиа, но стала знаменитой далеко за пределами научного сообщества. Например, GPT-3 написала для издания «The Guardian» эссе о том, почему ИИ не угрожает людям. GPT-3 сочиняет стихи и прозу, выполняет переводы, ведёт диалоги, даёт ответы на вопросы, хотя никогда специально не училась выполнять эти задачи. До недавних пор все возможности GPT-3 могли по достоинству оценить лишь англоязычные пользователи. Мы в Сбере решили исправить эту досадную оплошность. И сейчас расскажем вам, что из этого получилось.


Источник изображения
Читать дальше →

Можно ли воссоздать полную нейросеть мыши из тонких послойных разрезов мозга?

Reading time13 min
Views24K
image
Источник фото
Карликовая многозубка, самое маленькое млекопитающее по массе. Внутри маленький целостный сложный мозг, который уже принципиально можно картировать

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

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

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

Военный нейроанатом Джек Стил стал одним из людей, заметно повлиявших на дальнейший прогресс в области технологий, в том числе в области ИИ, где развитие получили такие направления, как нейроморфная инженерия и биоинспирированные вычисления. Стил был медиком, разбирался в психиатрии, увлекался архитектурой, умел управлять самолётом и сам чинил свою технику, то есть был вполне неплохим прикладным инженером. Научная работа Стила стала прообразом сценария фильма «Киборг». Так что с некоторой натяжкой можно назвать его прадедушкой Терминатора. А где Терминатор, там и Скайнет, как известно.

Этот пост написан на основе материалов будущей книги нашего коллеги Сергея Маркова «Охота на электроовец: большая книга искусственного интеллекта».
Читать дальше →

Пишем операционную систему на Rust. Страничная организация памяти

Reading time17 min
Views32K
В этой статье представляем страницы, очень распространённую схему управления памятью, которую мы тоже применим в нашей ОС. Статья объясняет, почему необходима изоляция памяти, как работает сегментация, что такое виртуальная память и как страницы решают проблему фрагментации. Также исследуем схему многоуровневых таблиц страниц в архитектуре x86_64.

Этот блог выложен на GitHub. Если у вас какие-то вопросы или проблемы, открывайте там соответствующий запрос.
Читать дальше →

От блокчейна к DAG: избавляемся от посредников

Reading time6 min
Views14K
В этой статье я расскажу вам о DAG (Directed Acyclic Graph, направленный ациклический граф) и его применении в распределённых реестрах, и мы сравним его с блокчейном.



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

Подробный обзор HFT-трейдинга: Кто им занимается, стратегии торговли и влияние на финансовую систему

Reading time6 min
Views35K


В нашем блоге мы неоднократно писали о высокочастотном или HFT-трейдинге. Читателям не всегда понятны некоторые моменты, связанные с этим типом торговли, например, является ли она однозначно вредным спекулятивным явлением, или может оказывать и какое-то положительное влияние на финансовую систему? Кто вообще этим занимается и какие стратегии торговли позволяют им зарабатывать?

В сегодняшнем материале мы постараемся дать ответы на эти вопросы.
Читать дальше →

Ответ: что же происходит с наукой в России

Reading time19 min
Views79K
Эту статью решил написать как ответ к вот этой. Не знаю, заметят ли, автор поставил какие-то лютые хабы [которые модератор уже изменил — прим. мод.], в которые я оффтопить не хочу.

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

Я подтверждаю: в России с наукой во многих аспектах хуже, чем в развитых странах. Но в целом не безнадежно. Худшие времена сейчас позади, и они также могут быть впереди, если не принять определенные меры. Описанные в указанной статье проблемы присутствуют, но являются второстепенными, существуют скрытые ямы и посерьезнее, чем отсутствие графы «наука» в программных документах неокомсомольских движений. Давайте же я их перечислю, а также приложу свой инсайдерский взгляд на современное состояние отрасли.

image
Читать дальше →

Как разработчики бегут из Сан-Франциско

Reading time6 min
Views68K

Власти Сан-Франциско предупреждают, что переезд IT-работников может иметь «серьезные» экономические последствия для жизни города. По их словам, развитие удаленной работы во время пандемии вызвало резкий отток IT-сотрудников. В новом отчете они представили «убедительные доказательства эмиграции», в том числе снижение стоимости квартир на 25% за последний год — особенно в районах, где раньше жили сотрудники IT-гигантов.

Количество поисковых запросов о том, как выехать из города, у Сан-Франциско и Сан-Хосе на 120-150% превышает средний показатель по Штатам. Десятки тысяч людей уже уехали из города, ещё сотни тысяч — об этом задумались. Поскольку большинство крупных компаний объявили о перманентной удаленке, вероятность того, что все они вернутся, кажется очень призрачной. Эра Кремниевой долины как рая и итоговой цели многих айтишников — возможно, подходит к концу.

Читать далее

Спать нельзя кодить: как собрать команду и подготовиться к хакатону?

Reading time6 min
Views7.9K
Я организовывал хакатоны по Python, Java, .Net, каждый из которых посетило от 100 до 250 человек. Как организатор я наблюдал за участниками со стороны и убедился, что хакатон – это не только про технологии, но и про грамотную подготовку, слаженную работу и коммуникацию. В этой статье я собрал самые частые ошибки и неочевидные лайфхаки, которые помогут начинающим хакатонщикам подготовиться к наступающему сезону.

Читать дальше →

Построение модели SARIMA с помощью Python+R

Reading time7 min
Views62K

Введение


Добрый день, уважаемые читатели.
После написания предыдущего поста про анализ временных рядов на Python, я решил исправить замечания, которые были указаны в комментариях, но при их исправлении я столкнулся с рядом проблем, например при построении сезонной модели ARIMA, т.к. подобной функции а пакете statsmodels я не нашел. В итоге я решил использовать для этого функции из R, а поиски привели меня к библиотеке rpy2 которая позволяетиспользовать функции из библиотек упомянутого языка.
У многих может возникнуть вопрос «зачем это нужно?», ведь проще просто взять R и выполнить всю работу в нем. Я полность согласен с этим утверждением, но как мне кажется, если данные требуют предварительной обработки, то ее проще произвести на Python, а возможности R использовать при необходимости именно для анализа.
Кроме этого, будет показано как интегрировать результаты выдачи работы функции R в IPython Notebook.
Читать дальше →

Квантовое машинное обучение: знакомимся с Tensorflow Quantum

Reading time12 min
Views22K

На Хабре практически нет информации про квантовое машинное обучение (Quantum Machine Learning), и в этой статье я постараюсь подробнее раскрыть тему. Сразу скажу, что промышленных квантовых компьютеров сегодня не существует, все основные разработки в этой области носят теоретический характер, а задачу, которую мы будем разбирать в статье можно решить «по классике» за доли секунд. Но ведь еще 30 лет назад была так называемая «зима искусственного интеллекта», а сегодня нейронные сети буквально окружают нас. Кто знает, может быть вскоре и квантовые компьютеры станут неотъемлемой частью нашей жизни? К тому же область квантовых вычислений, а тем более область QML, обладает особой притягательностью и таинственностью и, как минимум, стоит быть замеченной.


Head image


В статье я постарался рассказать о QML в целом, а также об основном строительном блоке QMLVariational Quantum Circuit. Большую часть статьи я постарался сделать практической, c примерами кода на Cirq, а в конце — добавил реализацию одного из базовых алгоритмов QML на Tensorflow Quantum.

Читать дальше →

Сократить время вычислений от нескольких лет до минут. Разбираемся с квантовым машинным обучением

Reading time9 min
Views10K
Я давно интересуюсь квантовыми вычислениями и пишу программы для 5- и 14-кубитных квантовых компьютеров IBM Q Experience. Сегодня я расскажу о технологиях, которые можно будет применять в машинном обучении после того, как квантовые вычисления завоюют мир. Спойлер для дата сайентистов: в будущем у вас не получится запустить модель и уйти пить кофе на полдня. Квантовый компьютер щелкает задачи машинного обучения на раз, и отговорки вроде “модель обучается” уже не пройдут. Придется запускать не одну модель, а по меньшей мере миллион.

image
Читать дальше →

Вижу, значит существую: обзор Deep Learning в Computer Vision (часть 2)

Reading time18 min
Views43K
Продолжаем постигать современную магию (компьютерное зрение). Часть 2 не значит, что нужно сначала читать часть 1. Часть 2 значит, что теперь всё серьёзно — мы хотим понять всю мощь нейросетей в зрении. Детектирование, трекинг, сегментация, оценка позы, распознавание действий… Самые модные и крутые архитектуры, сотни слоёв и десятки гениальных идей уже ждут вас под катом!


Читать дальше →

Марковские случайные поля

Reading time4 min
Views47K
Статья посвящена описанию метода CRF (Conditional Random Fields), являющимся разновидностью метода Марковских случайных полей (Markov random field). Данный метод нашел широкое применение в различных областях ИИ, в частности, его успешно используют в задачах распознавания речи и образов, обработки текстовой информации, а также и в других предметных областях: биоинформатики, компьютерной графики и пр.
Читать дальше →

Object Detection. Распознавай и властвуй. Часть 1

Reading time10 min
Views40K


Технологии компьютерного зрения позволяют в сегодняшних реалиях сделать жизнь и бизнес проще, дешевле, безопаснее. По оценкам разных экспертов этот рынок будет двигаться в ближайшие годы только в сторону роста, что и позволяет развиваться соответствующим технологиям как в сторону производительности, так и качества. Одним из наиболее востребованных разделов является Object Detection (обнаружение объектов) – определение объекта на изображении или в видео потоке.

Времена, когда обнаружение объектов решалось исключительно путем классического машинного обучения (каскады, SVM...) уже прошли – сейчас в этой сфере царят подходы, основанные на Deep Learning. В 2014 году был предложен подход, существенно повлиявший на последующие исследования и разработки в этой области – R-CNN модель. Последующие его улучшения (в виде Fast R-CNN и Faster R-CNN) сделали его одним из самых точных, что и стало причиной его использования по сей день.

Помимо R-CNN есть еще много подходов реализующих поиск объектов: семейство Yolo, SSD, RetinaNet, CenterNet… Кто-то из них предлагает альтернативный подход, а кто-то развивает текущий в сторону увеличения показателя производительности. Обсуждение почти каждого из них можно вынести в отдельную статью, по причине обилия фишек и ухищрений :)

К изучению предлагаю набор статей с разбором двухступенчатых Object Detection моделей. Умение разбираться в их устройстве приносит понимание базовых идей, применяемых и в других реализациях. В этом посте рассмотрим самую базовую и, соответственно, первую из них – R-CNN.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity