Приведите пример библиотеки для создания графиков
Leather используется для создания графиков. В отличие от ряда подобных библиотек, Leather способна взаимодействовать с широким разнообразием данных и выводить их через векторную графику.
В примере используются следующие функции:
leather.Chart() — создает график с заданным заголовком.
chart.add_dots() — добавляет точки на график. Также в ней можно указать функцию для определения цвета точек.
chart.to_svg() — позволяет сохранить график в формате .svg в указанный файл.
На втором изображении представлен результат работы программы.
Leather используется для создания графиков. В отличие от ряда подобных библиотек, Leather способна взаимодействовать с широким разнообразием данных и выводить их через векторную графику.
В примере используются следующие функции:
leather.Chart() — создает график с заданным заголовком.
chart.add_dots() — добавляет точки на график. Также в ней можно указать функцию для определения цвета точек.
chart.to_svg() — позволяет сохранить график в формате .svg в указанный файл.
На втором изображении представлен результат работы программы.
👍4⚡1🔥1
Объясните, как работает функция map
Она возвращает объект (итератор), который перебирает значения, применяя функцию к каждому элементу. В случае необходимости объект можно преобразовать в список:
def add_three(x):
return x + 3
li = [1,2,3]
list(map(add_three, li))
#=> [4, 5, 6]
Здесь к каждому элементу в списке мы добавляем число 3.
Она возвращает объект (итератор), который перебирает значения, применяя функцию к каждому элементу. В случае необходимости объект можно преобразовать в список:
def add_three(x):
return x + 3
li = [1,2,3]
list(map(add_three, li))
#=> [4, 5, 6]
Здесь к каждому элементу в списке мы добавляем число 3.
👍7
Как работает умножение списка?
Посмотрим на результат умножения списка [1,2,3] на 2:
[1,2,3] * 2
#=> [1, 2, 3, 1, 2, 3]
Содержание списка [1,2,3] повторяется дважды.
Посмотрим на результат умножения списка [1,2,3] на 2:
[1,2,3] * 2
#=> [1, 2, 3, 1, 2, 3]
Содержание списка [1,2,3] повторяется дважды.
👍4
Предложите библиотеку для прогнозирования временных рядов.
PyFlux — это библиотека для прогнозирования временных рядов. Она предоставляет удобный интерфейс для работы с моделями временных рядов, такими как анализ авторегрессии (AR), интегрированной скользящей средней (ARIMA), авторегрессии скользящего среднего (ARMA) и др.
В этом примере создается искусственный временной ряд и на его основе модель ARMA обучается для прогнозирования следующих 10 значений этого ряда.
PyFlux — это библиотека для прогнозирования временных рядов. Она предоставляет удобный интерфейс для работы с моделями временных рядов, такими как анализ авторегрессии (AR), интегрированной скользящей средней (ARIMA), авторегрессии скользящего среднего (ARMA) и др.
В этом примере создается искусственный временной ряд и на его основе модель ARMA обучается для прогнозирования следующих 10 значений этого ряда.
👍10
Какая разница между словарями и JSON?
Dict (словарь) — это тип данных Python, представляющий собой набор индексированных, но неупорядоченных пар ключ-значение.
JSON — просто строка, которая следует заданному формату и предназначена для передачи данных.
Dict (словарь) — это тип данных Python, представляющий собой набор индексированных, но неупорядоченных пар ключ-значение.
JSON — просто строка, которая следует заданному формату и предназначена для передачи данных.
👍2
В чем разница между append и extend?
append добавляет значения в список, а extend добавляет в список значения из другого списка:
a = [1,2,3]
b = [1,2,3]
a.append(6)
print(a)
#=> [1, 2, 3, 6]
b.extend([4,5])
print(b)
#=> [1, 2, 3, 4, 5]
append добавляет значения в список, а extend добавляет в список значения из другого списка:
a = [1,2,3]
b = [1,2,3]
a.append(6)
print(a)
#=> [1, 2, 3, 6]
b.extend([4,5])
print(b)
#=> [1, 2, 3, 4, 5]
👍4👏2
Как вернуть двоичный код целого числа?
Используйте функцию bin():
bin(5)
#=> '0b101'
Используйте функцию bin():
bin(5)
#=> '0b101'
👍2
Что такое градиентный спуск? Как это работает?
Градиентный спуск — это алгоритм, который использует концепцию исчисления градиента, чтобы попытаться достичь локальных или глобальных минимумов. Он работает, беря отрицательное значение градиента в точке заданной функции и многократно обновляет эту точку, используя вычисленный отрицательный градиент, пока алгоритм не достигнет локального или глобального минимума, что приведет к тому, что будущие итерации алгоритма будут возвращать значения, которые равны или слишком близки к текущей точке. Он широко используется в приложениях машинного обучения.
Градиентный спуск — это алгоритм, который использует концепцию исчисления градиента, чтобы попытаться достичь локальных или глобальных минимумов. Он работает, беря отрицательное значение градиента в точке заданной функции и многократно обновляет эту точку, используя вычисленный отрицательный градиент, пока алгоритм не достигнет локального или глобального минимума, что приведет к тому, что будущие итерации алгоритма будут возвращать значения, которые равны или слишком близки к текущей точке. Он широко используется в приложениях машинного обучения.
👍6👎3❤1
Что произойдет с нашей моделью линейной регрессии, если у нас есть три столбца в наших данных: x, y, z — и z является суммой x и y?
Мы не смогли бы выполнить регрессию. Поскольку z линейно зависит от x и y, поэтому при выполнении регрессии будет сингулярная (не обратимая) матрица.
Мы не смогли бы выполнить регрессию. Поскольку z линейно зависит от x и y, поэтому при выполнении регрессии будет сингулярная (не обратимая) матрица.
🤔5👍1
Что такое оверфиттинг (переобучение)?
Когда ваша модель очень хорошо работает на вашем тренировочном наборе, но не может обобщить тестовый набор, потому что она сильно адаптирована к тренировочному набору.
Когда ваша модель очень хорошо работает на вашем тренировочном наборе, но не может обобщить тестовый набор, потому что она сильно адаптирована к тренировочному набору.
👍7
Какие методы регуляризации применимы к линейным моделям?
AIC/BIC, Ридж-регрессия, Лассо, Эластичная сеть, Basis pursuit denoising, модель Рудина – Ошера – Фатеми, модель Поттса, RLAD, селектор Данцига, SLOPE.
️
AIC/BIC, Ридж-регрессия, Лассо, Эластичная сеть, Basis pursuit denoising, модель Рудина – Ошера – Фатеми, модель Поттса, RLAD, селектор Данцига, SLOPE.
️
👍6😱2
Чем временные ряды отличаются от обычной задачи регрессии?
Принцип причинного прогнозирования заключается в том, что значение, которое необходимо спрогнозировать, зависит от входных характеристик (причинных факторов). Ожидается, что при прогнозировании временных рядов прогнозируемое значение будет следовать определенной закономерности с течением времени.
Принцип причинного прогнозирования заключается в том, что значение, которое необходимо спрогнозировать, зависит от входных характеристик (причинных факторов). Ожидается, что при прогнозировании временных рядов прогнозируемое значение будет следовать определенной закономерности с течением времени.
❤3🤯1😱1😢1
Как регуляризация L2 влияет на веса линейной модели?
Регуляризация L2 более сильно влияет на большие веса (из-за квадрата), что способствует уменьшению значений веса к нулю.
Регуляризация L2 более сильно влияет на большие веса (из-за квадрата), что способствует уменьшению значений веса к нулю.
👍1
Каковы основные параметры в модели повышения градиента?
Существует множество параметров, но ниже приведены несколько ключевых значений по умолчанию.
learning_rate=0.1.
n_estimators=100 (количество деревьев).
max_depth=3.
min_samples_split=2.
min_samples_leaf=1.
subsample=1.0.
Существует множество параметров, но ниже приведены несколько ключевых значений по умолчанию.
learning_rate=0.1.
n_estimators=100 (количество деревьев).
max_depth=3.
min_samples_split=2.
min_samples_leaf=1.
subsample=1.0.
👍4😁1
Зачем нам нужны функции активации?
Основная идея использования нейронных сетей — обучение сложных нелинейных функций. Если мы не используем функцию активации между различными уровнями нейронной сети, мы просто накладываем несколько линейных слоев один на другой, и это приводит к обучению линейной функции. Нелинейность присутствует только в функции активации.
Основная идея использования нейронных сетей — обучение сложных нелинейных функций. Если мы не используем функцию активации между различными уровнями нейронной сети, мы просто накладываем несколько линейных слоев один на другой, и это приводит к обучению линейной функции. Нелинейность присутствует только в функции активации.
Как работает обычная полносвязная нейронная сеть прямого распространения?
В обычной полносвязной сети прямого распространения каждый нейрон получает входные данные от каждого элемента предыдущего слоя, и, таким образом, рецептивным полем нейрона является весь предыдущий слой. Они обычно используются для представления векторов признаков для входных данных в задачах классификации, но их обучение может быть дорогостоящим из-за количества задействованных вычислений.
В обычной полносвязной сети прямого распространения каждый нейрон получает входные данные от каждого элемента предыдущего слоя, и, таким образом, рецептивным полем нейрона является весь предыдущий слой. Они обычно используются для представления векторов признаков для входных данных в задачах классификации, но их обучение может быть дорогостоящим из-за количества задействованных вычислений.
👍2
Как выбрать количество деревьев в модели повышения градиента?
Большинство реализаций повышения градиента по умолчанию настраиваются с относительно небольшим количеством деревьев, например сотнями или тысячами. Используя scikit-learn, мы можем выполнить поиск по сетке параметра модели n_estimators.
Большинство реализаций повышения градиента по умолчанию настраиваются с относительно небольшим количеством деревьев, например сотнями или тысячами. Используя scikit-learn, мы можем выполнить поиск по сетке параметра модели n_estimators.
🌚3
Можно ли распараллелить обучение модели повышения градиента? Как это сделать?
Да, разные платформы предоставляют разные варианты ускорения обучения, используя графические процессоры для ускорения процесса за счет высокой степени распараллеливания. Например, для XGBoost параметр Tree_method = 'gpu_hist' ускоряет обучение за счет использования графических процессоров.
Да, разные платформы предоставляют разные варианты ускорения обучения, используя графические процессоры для ускорения процесса за счет высокой степени распараллеливания. Например, для XGBoost параметр Tree_method = 'gpu_hist' ускоряет обучение за счет использования графических процессоров.
👍2
Хотим ли мы иметь постоянную скорость обучения или лучше менять ее в ходе обучения?
Как правило, рекомендуется начинать скорость обучения с относительно высокого значения, а затем постепенно уменьшать скорость обучения, чтобы модель не превышала минимальные значения, и в то же время мы не хотим начинать с очень низкой скорости обучения, поскольку обучение модели займет слишком много времени.
Существует множество доступных методов снижения скорости обучения. Например, в PyTorch вы можете использовать функцию под названием StepLR, которая снижает скорость обучения каждого параметра на значение гаммы, которое мы должны передать через аргумент, после n числа эпох, которое вы также можете установить через аргумент функции с именем epoch_size.
Как правило, рекомендуется начинать скорость обучения с относительно высокого значения, а затем постепенно уменьшать скорость обучения, чтобы модель не превышала минимальные значения, и в то же время мы не хотим начинать с очень низкой скорости обучения, поскольку обучение модели займет слишком много времени.
Существует множество доступных методов снижения скорости обучения. Например, в PyTorch вы можете использовать функцию под названием StepLR, которая снижает скорость обучения каждого параметра на значение гаммы, которое мы должны передать через аргумент, после n числа эпох, которое вы также можете установить через аргумент функции с именем epoch_size.
👍6
Как мы можем использовать нейронные сети для компьютерного зрения?
Нейронные сети, используемые в области компьютерного зрения, обычно представляют собой сверточные нейронные сети (CNN). Они весьма эффективны при работе с изображениями и видео благодаря их способности извлекать и изучать сложные фичи. Таким образом, CNN являются подходящим методом решения любой проблемы компьютерного зрения.
Нейронные сети, используемые в области компьютерного зрения, обычно представляют собой сверточные нейронные сети (CNN). Они весьма эффективны при работе с изображениями и видео благодаря их способности извлекать и изучать сложные фичи. Таким образом, CNN являются подходящим методом решения любой проблемы компьютерного зрения.
👍5🤯1