Как стать автором
Обновить
9
5.6
Skillfactory School @skillfactory_school

Школа Computer Science

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

Как избирательное забывание помогает в обучении ИИ

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

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

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

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

Не становитесь безопасниками

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

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

Возможно, в комментариях напишут «Не надо обобщать, у меня все не так» — это правда, многое зависит от конкретной компании или специализации. Но в ИБ есть общие «болячки», о которых нельзя молчать.

Читать далее
Всего голосов 26: ↑15.5 и ↓10.5+5
Комментарии40

Как работает нативная поддержка категорий в XGBoost

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

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


Ниже объясняется, какие есть варианты, подробно рассказывается об их плюсах и минусах. Особое внимание уделяется встроенной поддержке категориальных функций, представленных недавно в XGBoost и LightGBM.


Если вас интересует градиентный бустинг и его применение к дереву решений, посмотрите мою книгу.

Читать дальше →
Всего голосов 4: ↑2 и ↓20
Комментарии0

Как запустить часть большого ИИ на слабом железе

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

Начало работы с Petals


Этот блокнот познакомит вас с основами Petals — системы логического вывода и точной настройки языковых моделей с сотнями миллиардов параметров без необходимости использования высокопроизводительных GPU. С помощью Petals вы можете объединять вычислительные ресурсы с другими людьми и запускать большие языковые модели с миллиардами параметров, например BLOOM-196B или BLOOMZ того же размера, что и GPT-3.

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

Исследование винтажной компьютерной техники: 4 бита драконов: игра-лабиринт Dungeons & Dragons от Mattel

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


Когда мои родители продали дом и перебрались на белоснежные просторы Великого севера, они вывезли несколько коробок моего барахла, которое долго пылилось в гараже. Мы сейчас разбираем вещи и роемся в этих коробках на случай, если в не столь далёком будущем нам самим понадобится переехать. В одной из коробок нашлась моя старая компьютерная игра-лабиринт DUNGEONS & DRAGONS™ от Mattel Electronics.


Это большая, «делюксовая» из двух игр D&D от Mattel (у Intellivision, конечно, был свой набор, а у нас был Tandyvision), вторая — DUNGEONS & DRAGONS™ компьютерная игра в жанре фэнтези. Это было портативное устройство с неожиданно привлекательной реинкарнацией игры Hunt the Wumpus, о которой мы поговорим в другой раз. Эта игра больше похожа на настолку, но в ней есть компьютерный антагонист и звуковое сопровождение.

Читать дальше →
Всего голосов 19: ↑17 и ↓2+15
Комментарии4

Градиентные тени на CSS

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

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


Но для начала… ещё одна статья о градиентных тенях? Серьёзно?

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

Как работает поиск по коду на Github

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


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


Нам часто задают вопрос о новом поиске по коду: «Как он работает?». В дополнение к моей лекции на GitHub Universe, я в общих чертах отвечу на этот вопрос, а также немного расскажу о системной архитектуре и технических основах данного продукта.


Так как же он работает? Мы создали собственный поисковый движок с нуля на Rust специально для поиска по коду. Наш поисковый движок называется «Blackbird», но прежде чем я стану описывать как он работает, думаю, что нужно понять наши предпосылки. На первый взгляд, создание поискового движка с нуля выглядит спорно. Зачем это делать? Разве уже нет большого количества существующих решений с открытым исходным кодом?

Читать дальше →
Всего голосов 12: ↑11 и ↓1+10
Комментарии10

Квантовая теория поля открывает пути к решению математической головоломки

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

В январе Карен Фогтманн и Майкл Борински опубликовали доказательство того, что в до сих пор недоступном математическом мире, называемом пространством модулей, существует множество математических структур — графов, которые Фогтманн и ее коллеги впервые описали в середине 1980-х.


«Это сверхсложная задача. Удивительно, что у них получилось», — считает Дэн Маргалит, математик из Технологического института Джорджии.

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

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

OpenAPI Comparator — детектор изменений, ломающих [большие] API

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

Защита от изменений API, которые могут повлиять на ваших клиентов, — одна из самых больших проблем при разработке HTTP API. Если вы вносите критические изменения, то создаете клиентам серьёзные проблемы. Стабильный API — ключ к удовлетворенности клиентов и, в конечном счете, к успеху в бизнесе.


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

Читать дальше →
Всего голосов 4: ↑2 и ↓20
Комментарии4

Сказ о поддержке подсказок типов для функции сложения в Python, или Вот как непросто бывает идти в IT…

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

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


Думаю, многие отнеслись к этому скептически, а потому посмотрим на одну полностью выдуманную ситуацию. Если явно не указано иное, всё в ней вымышлено. Редактируя текст, я понял, что в попытках 4–6 ошибок даже больше, чем предполагалось, но переписывать снова не буду.


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


def slow_add(a, b):
    time.sleep(0.1)
    return a + b
Читать дальше →
Всего голосов 13: ↑11 и ↓2+9
Комментарии9

Реверс-инжиниринг искусного двоичного сложения в нейросети

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


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

Читать дальше →
Всего голосов 17: ↑13 и ↓4+9
Комментарии11

[Научпоп с кодом] Что такое «жидкая» нейросеть и как научить её играть в Atari?

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


Алгоритмы в основе традиционных сетей настраиваются во время обучения, когда подается огромное количество данных для калибровки наилучших значений их весов, ликвидные («текучие») нейронные сети лучше адаптируются.


«Они способны изменять свои основные уравнения на основе входных данных, которые они наблюдают», в частности, изменяя скорость реакции нейронов, — рассказывает директор Лаборатории компьютерных наук и искусственного интеллекта Массачусетского технологического института Даниэла Рус.
Читать дальше →
Всего голосов 7: ↑7 и ↓0+7
Комментарии5

Как я написала веб-плеер с искусственным интеллектом

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


Идея создать собственный веб-плеер с музыкой лоу-фай пришла мне в голову однажды воскресным днём во время изучения глубоких генеративных моделей. Я занялась этим проектом и закончила его за время каникул. Веб-плеер имеет две опции: пользователи могут выбрать трек лоу-фай на основе реальной песни, преобразованной с помощью библиотеки Tone.js, или трек, сгенерированный искусственным интеллектом. В обоих случаях поверх накладываются барабанные ритмы, атмосферные звуки и цитаты, которые пользователь сам выбрал на предыдущем шаге. В этом посте речь пойдёт в основном о том, как использовать нейросети LSTM для генерации midi-треков, а в конце я кратко расскажу о том, как с помощью Tone.js создаются песни.

Читать дальше →
Всего голосов 12: ↑11 и ↓1+10
Комментарии5

Представление, кластеризация и подобие в примерах, иллюстрациях и таблицах

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

Ключевые элементы машинного обучения и скрытых пространств



Эта статья послужит введением в представление (embedding), подобие (similarity) и кластеризацию (clustering).


Знать эти ключевые понятия машинного обучения нужно, чтобы понять, что такое скрытое пространство.


  • Под представлением понимается представление реального мира в виде данных. Только после представления мы сможем анализировать и использовать в приложениях объекты и явления реального мира.
  • Подобие определяет степень сходства между представлениями реального мира и позволяет, например, рекомендовать тот или иной товар.
  • Кластеризация позволяет объединить представления реального мира в группы, например, чтобы найти книги по заданной тематике.

За подробностями приглашаем под кат.

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

Логистическая регрессия: подробный обзор

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


Рисунок 1. Модель логистической регрессии. Источник.


Логистическая регрессия использовалась в области биологических исследований ещё в начале двадцатого века. Затем её стали применять во многих общественных науках. Логистическая регрессия применима, когда зависимая переменная (целевое значение) является категориальной. Подробности в иллюстрациях — в материале, а практика — на нашем курсе, посвящённом Data Science.

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

Bittorrent с нуля на Go

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


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

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

PyTorch разоблачил вредоносную цепочку зависимостей

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

pypi


PyTorch обнаружил вредоносную зависимость с тем же именем, что и у библиотеки torchtriton во фреймворке. Это привело к успешной компрометации через вектор атаки путаницы зависимостей. Подробности — к старту нашего курса «Белый хакер».

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

Как включить в модель знания предметной области

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

Зачем это нужно?


Представьте, что вам дали размеченный набор данных, и ваша задача — предсказать новый. Что вы будете делать? Вероятно, сперва вы попробуете обучить модель машинного обучения поиску правил для разметки новых данных. А что дальше? Подробности — к старту нашего флагманского курса по науке о данных.

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

Как писать код на Go? Подход Google. Часть первая

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

Рекомендации по стилю для проектов из Google с открытым исходным кодом


Руководство по стилю Go


Принципы стиля


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


  1. Ясность: Назначение и обоснованность кода должны быть понятны читателю.
  2. Простота: Код должен выполнять свою задачу самым простым способом.
  3. Лаконичность: Код должен содержать как можно меньше воды.
  4. Сопровождаемость: Код должен быть написан так, чтобы его легко было поддерживать.
  5. Согласованность: Код должен согласоваться с более масштабной кодовой базой Google.

Подробности — к старту курса по Backend-разработке на Go.

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

Таинственный мир информационной геометрии. Введение

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


Изображение создано автором с помощью искусственного интеллекта


У многих из нас в старших классах отношения с геометрией напоминали несчастную любовь, переходящую в ненависть. Особенно нелегко было, когда речь зашла о координатах и объёме. Даже расчёты с использованием геометрии вызывали отторжение. А впереди ждал бум информационных технологий и шумиха вокруг машинного обучения, ИИ и науки о данных. Всё это побудило многих нырнуть в тёмные глубины математики, где среди прочих дисциплин нас снова ждала геометрия. Информационная геометрия применима в статистическом многомерном обучении (statistical manifold learning), которое недавно зарекомендовало себя в обучении на высокоразмерных наборов данных без учителя. Также информационная геометрия позволяет вычислять расстояние между двумя вероятностными мерами, что находит применение при подборе шаблонов, построении альтернативных функций потерь для обучения нейронной сети, сети распространения убеждений и решении задач оптимизации. Подробности — к старту нашего флагманского курса по Data Science.

Читать дальше →
Всего голосов 13: ↑9 и ↓4+5
Комментарии4
1
23 ...

Информация

В рейтинге
771-й
Откуда
Россия
Работает в
Зарегистрирован
Активность