Как стать автором
Обновить
-1
0
Дмитрий Болтянсий @Boltyanskiy

Пользователь

Отправить сообщение

GPT для чайников: от токенизации до файнтюнинга

Время на прочтение13 мин
Количество просмотров105K

К моему удивлению, в открытом доступе оказалось не так уж много подробных и понятных объяснений того как работает модель GPT от OpenAI. Поэтому я решил всё взять в свои руки и написать этот туториал.

Читать далее
Всего голосов 26: ↑25 и ↓1+29
Комментарии11

Продвинутое использование библиотеки PYTORCH: от подготовки данных до визуализации

Время на прочтение9 мин
Количество просмотров22K

PyTorch — современная библиотека машинного обучения с открытым исходным кодом, разработанная компанией Facebook. Как и другие популярные библиотеки, такие как TensorFlow и Keras, PyTorch позволяет использовать вычислительную мощность видеокарт, автоматически составлять граф вычислений, дифференцировать и считать его. Но, в отличие от предыдущих библиотек, обладает более гибким функционалом, благодаря тому, что использует динамический граф вычислений.

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

Для начала загрузим нужные библиотеки:

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии4

Векторные пространства

Время на прочтение18 мин
Количество просмотров34K

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

Операция деления как раз одна из самых «дорогих» операций. Дело в том, что в алгебраических полях, а соответственно и в группах операция деления вообще отсутствует и выход из положения (когда не делить нельзя) состоит в том, что операцию деления заменяют умножением, но умножают не на саму координату, а на обращенное ее значение. Из этого следует, что предварительно надо привлекать расширенный алгоритм Евклида НОД и кое что еще. Одним словом, не все так просто как изображают авторы большинства публикаций о ЕСС. Почти все, что по этой теме опубликовано и не только в Интернете мне знакомо. Мало того, что авторы не компетентны и занимаются профанацией, оценщики этих публикаций плюсуют авторов в комментариях, т. е. не видят ни пробелов, ни явных ошибок. Про нормальную же статью пишут, что она уже 100500-я и от нее нулевой эффект. Так все пока на Хабре устроено, анализ публикаций делается огромный, но не качества содержания. Здесь возразить нечего — реклама двигатель бизнеса.
Читать дальше →
Всего голосов 10: ↑7 и ↓3+7
Комментарии3

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

Уровень сложностиСредний
Время на прочтение19 мин
Количество просмотров24K

14 ноября 2023 года команда Google Deepmind официально представила мировой общественности свою модель прогнозирования погоды – GraphCast. Её особенность заключается в том, что она способна рассчитывать погоду на 10 дней вперёд без понимания «физики» атмосферных процессов. Учёные обучали нейросеть на цифровых исторических архивах погоды за период с 1979 по 2017 годы. Сам же прогноз рассчитывается за минуту и не требует огромных суперкомпьютерных ресурсов. В тестах GraphCast смог обойти самую передовую гидродинамическую модель прогнозирования погоды от Европейского центра среднесрочных прогнозов. Рост качества был настолько существенным и резким, что в научной среде уже говорят о революции в сфере прогнозирования погоды. К чему это может привести и где смотреть самые точные прогнозы? Давайте разбираться.

Читать далее
Всего голосов 89: ↑89 и ↓0+89
Комментарии60

Простейшая нейросеть: еще раз и подробнее

Время на прочтение10 мин
Количество просмотров58K

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

Читать далее
Всего голосов 84: ↑83 и ↓1+95
Комментарии27

Что не так с техническими собеседованиями в IT?

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров46K

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

Читать далее
Всего голосов 95: ↑89 и ↓6+100
Комментарии253

«Я в топ 4% мира на LeetCode» — это оказалось на удивление просто и недолго

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров45K

Ко мне в коучинг пришёл джентльмен. Чуть меньше 20 лет опыта в разработке. Одна из ключевых задач, которая ему была интересна — Как начать литкодить каждый день?

«То настроения, то сил нету, то задачи не понимаю.. Начинаю раз в полгода и бросаю» — самый обычный набор приколов, которые мешают.

Я предложил ему обернуть всё это в привычку и дисциплину. Я собрал свою методологию прививания привычек основываясь на:

Ежедневно он тратил на Литкод 15–20 минут. Не более. Иногда участвовал в турнирах, которые и зафиксировали результат в топ 4%.

Читать далее
Всего голосов 98: ↑43 и ↓55+3
Комментарии116

Эх, не люблю писать бойлерплейты, ведь есть IntelliJ IDEA и Apache Velocity

Время на прочтение5 мин
Количество просмотров18K
Добрый день, Хабр!

Речь в этой статье пойдет о том, как частично сократить объем кода, который зачастую приходится набирать вручную или откуда-то копипастить (боже упаси), средствами IntelliJ IDEA, а конкретнее — шаблонами файлов и кода. Если вы не достаточно знакомы с расширенным использованием возможностей этой IDE, то добро пожаловать под кат.

Читать дальше →
Всего голосов 28: ↑26 и ↓2+24
Комментарии8

Советы и хитрости IntelliJ IDEA: 4. Синхронизация и обмен настройками

Время на прочтение5 мин
Количество просмотров13K

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



Этот перевод продолжает серию об IntelliJ IDEA:


Читать дальше →
Всего голосов 8: ↑8 и ↓0+8
Комментарии3

PINN (Physics-informed neural networks) и с чем их едят

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров6.4K

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

Менее известный, но более радостный, факт: Есть нейронные сети, которые делают это быстрее (пусть и с меньшей точностью).

Читать далее
Всего голосов 8: ↑8 и ↓0+8
Комментарии1

Выбираем файловую систему независимую от ОС

Время на прочтение4 мин
Количество просмотров93K
Всем привет. Недавно я задался вопросом как организовать обмен файлами между операционными системами. Предположим, я хочу установить сразу три основные ос на своём ноутбуке: линукс, виндовз и хакинтош. Каждая ос предназначается для своих задач: Линукс — для работы и программирования, винда — для игр и хак — просто для разных экспериментов.

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



Так вот, задача стоит такая: нужен раздел на системном накопителе, причём с такой файловой системой, которая поддерживается на чтение и запись всеми перечисленными операционками. На этом разделе будут храниться скачанные из интернета файлы и меж-операционные проекты.
Читать дальше →
Всего голосов 57: ↑35 и ↓22+13
Комментарии85

Как мы участвовали в соревнованиях автономных дронов Aerobot 2020 от русской DARPA

Время на прочтение10 мин
Количество просмотров5.7K

Немного соревнований автономных дронов, рассчитанных на взрослых разработчиков и организации, проводятся в России. В статье расскажу о нашем участии в Аэробот-2020. Мы и без соревнований работаем с актуальными технологиями локализации дрона в помещении, планирования движения и картографии (exploration), детекции объектов (perception) и оптимального управления движением. В условиях соревнования были задачи как раз из этой области.

Наша команда состояла из сотрудников Центра компетенций НТИ по направлению «Технологии компонентов робототехники и мехатроники» на базе Университета Иннополис и студентов университета.

Под катом много увлекательных полетов и падений дронов.

Читать далее
Всего голосов 16: ↑16 и ↓0+16
Комментарии16

Google Drive папка для Linux

Время на прочтение3 мин
Количество просмотров23K

Целью данного туториала является описание способа подключения Google Диска к файловому менеджеру thunar (Xubuntu). Этот же способ с небольшими доработкими может быть использован и для подключения Google Диск папки у серверного дистрибутива вроде Ubuntu server.

Читать далее
Всего голосов 5: ↑4 и ↓1+3
Комментарии8

Прогнозирование нагрузки солнечных электростанций

Время на прочтение7 мин
Количество просмотров2.5K

Прогнозируем нагрузку группы солнечных электростанций на сутки вперед с помощью машинного обучения. Сравниваем два метода — Random Forest и LSTM.

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии1

Взлом YouTube для быстрого скачивания видео

Время на прочтение9 мин
Количество просмотров75K
Мы неоднократно рассказывали о специальном софте, который позволяет скачивать видео с YouTube. Это в первую очередь youtube-dl (yt-dl) и его клоны, такие как yt-dlp и yt-dlc. С ними воюют могучие копирасты, пытаются удалить их из поисковой выдачи, с хостингов, с Github и так далее, по известной схеме «тотальная война».

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

Сами программки — просто технические инструменты для скачивания общедоступного контента, они ничего не воруют и не пиратят. Просто доступ происходит нестандартным способом, который не предусмотрен официально. Посмотрим, как это делается.
Читать дальше →
Всего голосов 123: ↑113 и ↓10+148
Комментарии421

Анализ 10 000 вопросов с технических интервью: частотность и вероятность встречи

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров36K

Привет, Хабр! Я проанализировал 600 публичных мок-интервью с YouTube и собрал из них 10 000 уникальных вопросов. Затем посчитал, как часто они встречаются, и определил вероятность появления каждого вопроса. У меня есть данные по 20 профессиям, включая frontend, python, java-разработчика, специалиста по тестированию и многих других.

Читать далее
Всего голосов 46: ↑44 и ↓2+50
Комментарии19

Вычисляем на видеокартах. Технология OpenCL. Часть 0. Краткая история GPGPU

Время на прочтение7 мин
Количество просмотров18K
22 июня автор курса «Разработчик C++» в Яндекс.Практикуме Георгий Осипов провёл вебинар «Вычисляем на видеокартах. Технология OpenCL».

Мы подготовили для вас его текстовую версию, для удобства разбив её на смысловые блоки.

  • 0 (вводная часть). Зачем мы здесь собрались. Краткая история GPGPU.
  • 1. Пишем для OpenCL.
  • 2. Алгоритмы в условиях массового параллелизма.
  • 3. Сравнение технологий.

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

Цикл будет полезен и тем, кто уже знаком с OpenCL: в нём мы поделимся некоторыми хаками и неочевидными наблюдениями из собственного опыта.

CPU — в помойку?


В статье будем рассматривать технологию GPGPU. Разберёмся, что значат все эти буквы. Начнем с последних трёх — GPU. Все знают аббревиатуру CPU — Central Processor Unit, или центральный процессор. А GPU — Graphic Processor Unit. Это графический процессор. Он предназначен для решения графических задач.

Но перед GPU есть ещё буквы GP. Они расшифровываются как General-Purpose. В аббревиатуре опускают словосочетание Computing on. Если собрать всё вместе, получится General-Purpose Computing on Graphic Processor Unit, что по-русски — вычисления общего назначения на графическом процессоре.



То есть процессор графический, но мы почему-то хотим вычислять на нём что-то, что вообще к графике никакого отношения не имеет. Например, прогноз погоды, майнинг биткоинов. Моя задача в ближайшее время — объяснить, зачем нужно на процессоре для графики обучать, например, нейросети.
Читать дальше →
Всего голосов 21: ↑21 и ↓0+21
Комментарии29

Как собрать простейшую Java программу с помощью Maven

Время на прочтение6 мин
Количество просмотров183K

Статья написана для тех, кто умеет писать простейшие программы на java, но не умеет их собирать. Этим людям уже известно, что такое классы, что такое пакеты и зачем нужен public static main(String[] argv), но код без среды разработки они не запускали, да и не понимают кому и зачем это вообще может понадобиться.


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


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


Для того, чтобы воспользоваться информацией из статьи нужно знать, что такое xml, переменные окружения, зачем нужна переменная окружения PATH и как пользоваться консолью.

Читать дальше →
Всего голосов 45: ↑31 и ↓14+17
Комментарии64

Особенности Jupyter Notebook, о которых вы (может быть) не слышали

Время на прочтение10 мин
Количество просмотров364K
Jupyter Notebook – это крайне удобный инструмент для создания красивых аналитических отчетов, так как он позволяет хранить вместе код, изображения, комментарии, формулы и графики:



Ниже мы расскажем о некоторых фишках, которые делают Jupyter очень крутым. О них можно прочитать и в других местах, но если специально не задаваться этим вопросом, то никогда и не прочитаешь.
Читать дальше →
Всего голосов 49: ↑45 и ↓4+41
Комментарии14

Как следует писать комментарии к коммитам

Время на прочтение11 мин
Количество просмотров139K


Предисловие от переводчика


На протяжении многих лет разработки ПО, будучи участником многих команд, работая с разными хорошими и опытными людьми, я часто наблюдал (да и чего греха таить, до определенного момента — создавал) одну и ту же проблему — тотальный бардак в репозитории. Каждый писал комментарии к коммитам в своем стиле (и хорошо, если постоянно в одном); половина комментариев была бесполезна (из разряда "это мост"), половина оставшейся половины — едва понятна.

И вот в один прекрасный момент я увидел данную статью, до перевода которой у меня наконец дошли руки. Всего 7 простых и коротких правил, и — о чудо — смотреть на историю коммитов стало не только полезно, но и приятно. Ничего революционного, все довольно очевидно, но сформулировано и резюмировано просто отлично.
Читать дальше →
Всего голосов 55: ↑51 и ↓4+47
Комментарии115
1

Информация

В рейтинге
5 953-й
Откуда
Alicante/Alacant, Испания
Дата рождения
Зарегистрирован
Активность