Необходимые предпосылки, чтобы Прочитать Книги по Нейронным сетям (и понять их)

Это основано на решении Рейда. За исключением:

  • Я не изменяю прототип Array.
  • Перемещение элемента из границ вправо не создает элементы undefined, оно просто перемещается

Функция:

function move(array, oldIndex, newIndex) {
    if (newIndex >= array.length) {
        newIndex = array.length - 1;
    }
    array.splice(newIndex, 0, array.splice(oldIndex, 1)[0]);
    return array;
}

Единичные тесты:

describe('ArrayHelper', function () {
    it('Move right', function () {
        let array = [1, 2, 3];
        arrayHelper.move(array, 0, 1);
        assert.equal(array[0], 2);
        assert.equal(array[1], 1);
        assert.equal(array[2], 3);
    })
    it('Move left', function () {
        let array = [1, 2, 3];
        arrayHelper.move(array, 1, 0);
        assert.equal(array[0], 2);
        assert.equal(array[1], 1);
        assert.equal(array[2], 3);
    });
    it('Move out of bounds to the left', function () {
        let array = [1, 2, 3];
        arrayHelper.move(array, 1, -2);
        assert.equal(array[0], 2);
        assert.equal(array[1], 1);
        assert.equal(array[2], 3);
    });
    it('Move out of bounds to the right', function () {
        let array = [1, 2, 3];
        arrayHelper.move(array, 1, 4);
        assert.equal(array[0], 1);
        assert.equal(array[1], 3);
        assert.equal(array[2], 2);
    });
});
33
задан bias 19 July 2009 в 05:16
поделиться

4 ответа

Если Вы хотите список курсов колледжа, что необходимо будет понять книгу, здесь это:

  • Исчисление (я, II и III)
  • Дифференциальные Уравнения
  • Линейная алгебра
  • Статистика (или хорошее покрытие Bayes)

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

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

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

14
ответ дан 27 November 2019 в 19:28
поделиться

Вы не можете реализовать "нейронные сети" - Вы закончите тем, что реализовали определенный вид NN (например, perceptron). Существует много различных видов NNS, каждый более подходящий для некоторого определенного вида задачи, и каждый вид использует некоторую математику (и не только математику) понятия, которые являются специфически только к тому конкретному виду. Например, машины Больцмана используют понятия от статистической термодинамики (основанный Boltzmann).

Что касается Вашего вопроса: без ясной цели, там не ясно (даже не "полуясный") путь.

8
ответ дан 27 November 2019 в 19:28
поделиться

Я идея второго zvrba, что Вы принимаетесь ясная цель. Несколько направляющих вопросов: a. Вы хотите изучить NNS как модель биологических сетей или как вычислительный аппарат? b. Интересуются Вы их изучением аспекта? ассоциативная память? обработка сигналов? c. Вы хотите понять сложную теорию? или как раз записать программное обеспечение моделирования?

кроме того, я начал бы с малого: реализуйте perceptron на Вашем любимом языке программирования. Математика не то, что плохо, и это, вероятно, сфокусирует Вас на Ваших следующих шагах. Используйте набор данных бинарной классификации, скажите tic-tac-toe эндшпиль UCI .

8
ответ дан 27 November 2019 в 19:28
поделиться

Для основного, нейронных сетей заднего перерыва в работе парламента, самые важные вещи:

  • Исчисление

  • Линейная алгебра

  • Основная Статистика / Вероятность

, Если Вы просто ищете более определенные темы (Вы сказали, Вы уже взяли Calc, таким образом, я пропущу это), вот некоторые предметы, которые будут полезны для знания, если не обязательно непосредственно применимый к созданию нейронной сети:

  • Решающие Линейные Системы уравнений (Вы изучили бы это в курсе Линейной алгебры)

  • Регрессия Наименьших квадратов

  • теория

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

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

3
ответ дан 27 November 2019 в 19:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: