Публикации по теме 'algorithms'


Ошибка в нашем подходе: что вы делаете неправильно при реализации рекуррентной нейронной сети-LSTM!
Я начал углубляться в области машинного обучения несколько месяцев назад и, выполнив несколько проектов, подумал про себя: «Это не так уж сложно». Так было до тех пор, пока я не столкнулся с глубоким обучением. Совершенно новая область исследования, глубокое обучение, требует огромного количества математических, а также аналитических знаний. Создание нейронной сети в основном эквивалентно созданию человеческого мозга! Когда я готовился познакомиться с нейронными сетями, я понял,..

Стремление к совершенству — O(n) (Удаление повторяющихся элементов)
Однажды профессор сказал: Чтобы стать старшим инженером, вам необходимо изучить структурное программирование, функциональное программирование, полиморфизм, множество архитектур, шаблоны проектирования, тестирование, TDD, BDD, гибкое и экстремальное программирование. Вам нужно много пар. Здесь много движущихся частей! Но чтобы выйти за рамки и стать игроком мирового класса, вам нужно владеть одной вещью и только одной: алгоритмами! Некоторые говорят, что Вселенная и жизнь..

Бритва Оккама: код должен быть коротким и простым
Фон В моем приложении Group Randomizer одна из функций моего MVP (минимально жизнеспособный продукт) - это создание функции сохранения группы. Когда пользователь нажимает кнопку «Сохранить группу», он сохраняет текущий список параметров как новую группу. Однако основная функциональность этой функции заключается в том, что если она находит существующую сохраненную группу с теми же параметрами, независимо от порядка, появится предупреждение о том, что группа с вашим текущим списком..

Алгоритм JavaScript: преобразование строки в верблюжий регистр
Преобразование тире и/или подчеркивания слов с разделителями в верблюжий регистр Мы напишем функцию toCamelCase() , которая будет принимать строку str в качестве аргумента. Для этой функции вам дается строка, и слова в строке разделяются дефисом — или символом подчеркивания _ , или и тем, и другим. Цель функции — удалить все тире и/или символы подчеркивания, а первое слово, следующее за этим подчеркиванием или тире, должно быть заглавным. Возвращаемая строка должна напоминать..

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

LeetCode — Обход порядка уровней зигзага бинарного дерева
Постановка задачи Учитывая root бинарного дерева, вернуть зигзагообразный обход значений его узлов на уровне уровней (т. е. слева направо, затем справа налево для следующего уровня и поочередно). Постановка задачи взята с: https://leetcode.com/problems/binary-tree-zigzag-level-order-traversal/ Пример 1: Input: root = [3, 9, 20, null, null, 15, 7] Output: [[3], [20, 9], [15, 7]] Пример 2: Input: root = [1] Output: [[1]] Пример 3: Input: root = [] Output: []..

Изучите динамическое программирование: руководство для начинающих по проблеме размена монет
Повысьте свои навыки проведения собеседований и станьте лучшим разработчиком, изучив основы динамического программирования. Динамическое программирование — это подход к решению сложных задач, который включает в себя разбиение задачи на более простые задачи и их решение. Если бы вас попросили умножить 21 * 5, вы, вероятно, вместо этого умножили бы (20 * 5) и добавили (1 * 5). Вместо того, чтобы решать одну сложную проблему, вы разбили ее на три более простые задачи и решили их. 20 *..