Практика построения модели машинного обучения с помощью TensorFlow.js

Sdílet
Vložit
  • čas přidán 28. 08. 2024
  • Продолжение темы машинного обучения с помощью библиотеки Tensorflow.js.
    Сегодня уже будет практический урок, а построем однослойную линейную модель машинного обучения, которая умеет предсказывать в цена на дома исходя из площади и количества спален.
    Ссылка на данные для обучения:
    storage.google...
    Код урока:
    github.com/ate...
    #нейронныесети #javascript #tensorflowjs #ai #исскуственныйинтелект #машинноеобучение #програмированние #уроки #js

Komentáře • 13

  • @AterosDev
    @AterosDev  Před rokem +1

    Как настроить зависимости для @tensorflow/tfjs-node (Windows):
    1. Установить Python 2.7 - www.python.org/downloads/release/python-270/
    2. Установить глобально node-gyp (npm i -g node-gyp).
    3. Установить инструменты сборки (npm i -g --production windows-build-tools).
    4. После установки tfjs-node, в папке проекта вызвать команду - node-gyp configure --verbose.
    Если возникнут проблемы, либо у вас другая ОС, здесь мануал - github.com/tensorflow/tfjs/tree/master/tfjs-node

  • @alexandrs7563
    @alexandrs7563 Před rokem +1

    Круто, можно соединить с курсом по визуализации данных

    • @AterosDev
      @AterosDev  Před rokem

      Да, конечно. В качестве практики можете попробовать сделать интерфейс - вывести данные на график (подойдет "bubble"), добавить два input range, для ввода площади и количества комнат, кнопку "predict", а после предсказания - отображать цену в теге p и плюс добавлять на график еще одну точку, например красным цветом.

  • @sinyavsky
    @sinyavsky Před rokem +1

    Супер🎉

  • @user-sh6uu8rx2u
    @user-sh6uu8rx2u Před 8 měsíci +1

    Спасибо! Классный быстрый формат и все понятно. До этого пользовался ТФ на питоне. А вот сейчас решил написать с нуля свою простую XOR нейронку на js, чтобы понять, что "под капотом". К сожалению, не срабатывает идеально, если указать все входные данные при обучении :(( Придется видимо все же прибегать к библиотекам.

    • @AterosDev
      @AterosDev  Před 8 měsíci

      Спасибо 🙏🙏 Круто, что решил сам с нуля написать xor 👍
      Так как ты уже работал с tensorflow на питоне, тебе будет легко вникнуть, это полностью та же библиотека. Но может и что-то новое для себя найдешь.
      Надеюсь курс понравится, я старался)

    • @user-sh6uu8rx2u
      @user-sh6uu8rx2u Před 8 měsíci +1

      Мне все понравилось. Реально классно!@@AterosDev

    • @AterosDev
      @AterosDev  Před 8 měsíci

      Спасибо большое, рад что все понравилось 🙏🙏

  • @user-zg8bf4iy4y
    @user-zg8bf4iy4y Před 9 měsíci

    1. корректно ли использовать нормализацию таким образом? первое число в тензоре больше на три порядка, получается после нормализации второе станет ~0.0002, можно ли нормализовать правильней?
    2. можно ли как-то обозначить для модели, если нам известно что число комнат приоритетней чем площадь? начальные веса например?

    • @AterosDev
      @AterosDev  Před 9 měsíci

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

    • @user-zg8bf4iy4y
      @user-zg8bf4iy4y Před 9 měsíci +1

      @@AterosDev спасибо за ответ, я еще раз внимательно посмотрел ролик и повторил код, нормализация происходит по каждому компоненту вектора и проблемы о которой я написал в #1 - ee нет, в моем коде была ошибка.
      по #2 продолжаю изучать вопрос, хочу научиться задавать приоритеты входящим значениям. решаю задачу предсказания выручки компании на месяц вперед по предыдущим 3 месяцам, модель не всегда показывает нулевую выручку в выходные дни, было бы здорово как-то обозначить что этот входной параметр важнее чем месяц, число или предыдущие значения выручки.

    • @AterosDev
      @AterosDev  Před 9 měsíci

      Я думаю здесь скорее проблема в том, что обучающий набор сформирован не совсем корректно. Ну, то есть сложно предсказывать какая будеть выручка основываясь только на дате, либо дне недели, так как это слишком случайные значения.
      Ну например, представим что есть магазин, который продает ручки, карандаши и фломастеры (пускай это будут просто числа 1, 2, 3), по разным ценам (допустим по три цены на каждый вид товара). В итоге имеем два нейрона на входе - вид товара и цена, а на выходе количество проданных экземпляров за день
      Теперь мы можем загрузить эти данные в модель, и понять какой товар лучше продается, и соответсветственно отрегулировать проценты поставок разных видов. Допустим, на следующую неделю нам надо заказать ручек, по такой-то цене 120 штук, а фломастеров по такой-то цене, например только 30.