Калькулятор специально заточен для быстрого составления еженедельных подкормочных смесей для выращивания по методу доктора Джекоба Миттлайдера. используя только доступные в продаже удобрения.
Смеси создаются по шагам, и в процессе сразу видно, какой из компонентов не позволяет получить желаемый результат.
Хотя Markdown стал де-факто стандартом разметки в комментариях и некоторых блогах, он довольно ограничен в выразительности, особенно когда речь идет о создании насыщенных онлайн-публикаций. "Пиши HTML", - говорит Markdown, а это не всегда приемлемо.
Textile, напротив, был создан с учетом особенностей CMS и сложных публикаций. Например, он позволяет создавать нестандартные блоки контента без необходимости прибегать к HTML. Лично я довольно часто использовал Textile в своей практике, и, когда возникла необходимость, я портировал парсер PHP-Textile на Rust.
Порт не красив и не идиоматичен Rust'у, поскольку я умышленно старался сохранить оригинальную структуру PHP-кода, чтобы упростить перенос новых функций в будущем (Textile продолжает улучшаться). Но, свою работу порт выполняет :)
Пока я возился с CNN и Трансформерами для обработки текста, я решил попробовать их в прогнозировании временных рядов, например, стоимости акций и криптовалют.
Поэтому я написал инструмент, который
Богатым я не стал, но понял, что WaveNet хорош не только работы с человеческой речью :)
Я положил глаз на Transformer сразу после выхода оригинальной публикации "Attention is All you need" в 2017ом, и сразу влюбился в идею.
Мой Keras-transformer - это библиотека, реализующая базовый конструктор для построения (универсальных) моделей-Трансформеров с помощью Keras. Она позволяет гибко собирать многоступенчатые модели. Это не "подключи, загрузи веса и используй", а скорее исследовательский инструмент, в котором мне хотелось собрать лучшие идеи и поделиться собственной, хорошо аннотированной реализацией. Судя по большой волне положительных откликов, у меня получилось.
Библиотека поддерживает позиционное кодирование и эмбеддинги, маскировку внимания, сжатие внимания в памяти, ACT (адаптивное время вычислений) и другие плюшки.
Все части модели (такие как само-внимание, функция активации, нормализация слоев) доступны как слои Keras, так что при необходимости, вы можете построить свою версию Transformer, перекомпоновав их как-то иначе, или вовсе заменив.
Для тех, кто не в курсе, (Универсальный) Трансформер - это архитектура глубокого обучения, описанная, пожалуй, в одной из самых впечатляющих DL-статей 2017 и 2018 годов: Attention is All you need и "Universal Transformers" команды Google Brain.
Авторы выдвинули идею рекуррентного многоголового само-внимания, которая вдохновила большую волну новых исследовательских моделей, которые продолжают появляться с тех пор, демонстрируя новые передовые результаты во многих задачах обработки естественного языка, включая перевод, синтаксический разбор, ответы на вопросы и даже алгоритмические задачи.
В отличие от классических рекуррентных нейронных сетей, Трансформер обучается гораздо быстрее. Он также способен эффективно обрабатывать многочисленные дальние зависимости в текстах.
При генерации текстов Transformer создает более связные истории, качество которых не ухудшается с ростом их длины, как это обычно происходит с рекуррентными сетями.
Именно Трансформер лежит в основе потрясающих успехов ChatGPT и подобных ИИ моделей последних лет.
KERL - это моя коллекция различных алгоритмов Reinforcement Learning и связанных с ними техник, реализованных исключительно с помощью Keras.
Цель проекта - создать реализацию современных алгоритмов RL, а также платформу для разработки и тестирования новых алгоритмов, сохраняя при этом простоту и переносимость кода благодаря Keras и его возможности использовать различные бэкенды (код писался до того, как Keras стал частью Tensorflow). Это делает KERL очень похожим на OpenAI Baselines, только с упором на Keras.
Что попало в KERL:
Все алгоритмы поддерживают адаптивную нормализацию подкреплений Pop-Art, описанную в работе DeepMind "Learning values across many orders of magnitude". Это значительно упрощает обучение, часто позволяя просто бросить алгоритм в задачу и получить достойный результат.
С помощью KERL можно быстро обучить различных агентов играть в игры Atari просто по картинке, а затем погрузиться в детали реализации. Вот пример такого агента, обученного с помощью KERL (видео на youtube): A2C-Агент, играющий в Ms. Pacman
Ограничения: В настоящее время KERL не поддерживает задачи непрерывного управления и пока что тестировался только на различных играх Atari, поддерживаемых The Arcade Learning Environment через OpenAI Gym.
Avalanche - это простой фреймворк для глубокого обучения, вроде Tensorflow или PyTorch, написанный с нуля на C++ и Python. В отличие от большинства существующих инструментов, он основан на OpenCL, открытом вычислительном стандарте. Это позволяет Avalanche работать практически на любом GPU, включая GPU от Intel и AMD, даже на довольно старых моделях.
Проект был создан как попытка лучше понять, как работают современные фреймворки глубокого обучения (а построены они на одинаковых принципах), и попрактиковаться в программировании GPU. Avalanche основан на модели вычислительного графа. Он поддерживает автоматическое дифференцирование, широковещательные операции (broadcasting), автоматическое управление памятью, при необходимости может использовать несколько GPU.
Фреймворк также работает как бэкенд для Keras, поэтому если вы знаете Keras, вы можете начать использовать Avalanche без необходимости изучать что-либо о нем.
Я всегда был большим фанатом генетических алгоритмов. Среди них, Картезианское Генетическое Программирование (в разных формах) много лет остаётся моим самым любимым, за его изящность, эффективность, и подобие во многом реальному поведению биологических геномов.
CartGP - это очень простая и минималистичная библиотека C++/Python, реализующая картезианское генетическое программирование (CGP). В настоящее время библиотека поддерживает классическую форму CGP, когда узлы расположены в виде сетки и не допускаются рекуррентные связи.
Этот Jupyter-блокнот содержит демонстрацию использования библиотеки из Python.