Skip to main content

Численные методы оптимизации для машинного обучения и автоматизации ИИ

Project description

numoptml

numoptml — это лёгкая и понятная Python-библиотека численных методов оптимизации, разработанная с нуля для образовательных, исследовательских и экспериментальных целей в области машинного обучения и автоматизации ИИ.

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

🚀 Основные возможности

  • Градиентный спуск (Gradient Descent)
  • Метод Ньютона (Newton's Method)
  • Поддержка подбора длины шага (Backtracking Line Search)
  • Подходит для интеграции в AutoML, обучение моделей, RL-агентов

🔧 Установка

pip install numoptml

📌 Примеры использования

Gradient Descent

from numoptml.optimizers.gradient_descent import gradient_descent
import numpy as np

f = lambda x: (x[0] - 3)**2
grad = lambda x: np.array([2 * (x[0] - 3)])
x0 = [0.0]

res = gradient_descent(f, grad, x0, lr=0.1)
print(res)  # -> [3.]

Newton's Method

from numoptml.optimizers.newton_method import newton_method
import numpy as np

f = lambda x: (x[0] - 3)**2
grad = lambda x: np.array([2 * (x[0] - 3)])
hess = lambda x: np.array([[2]])
x0 = [0.0]

res = newton_method(f, grad, hess, x0)
print(res)  # -> [3.]

Backtracking Line Search

from numoptml.utils.line_search import backtracking_line_search
import numpy as np

f = lambda x: (x[0] - 3)**2
grad = lambda x: np.array([2 * (x[0] - 3)])
x = np.array([0.0])
direction = grad(x)

alpha = backtracking_line_search(f, grad, x, direction)
print(alpha)

🧠 Использование в ИИ

  • Минимизация функции ошибки при обучении моделей
  • AutoML: подбор гиперпараметров
  • Оптимизация политик RL-агентов
  • Edge AI: сжатие и оптимизация моделей
  • Использование в MLOps пайплайнах

🗂 Структура проекта

  • optimizers/: алгоритмы градиентного спуска и Ньютона
  • utils/: утилиты (линейный поиск и т.д.)
  • examples/: примеры
  • tests/: автоматические тесты

📄 Лицензия

MIT — свободно используйте и модифицируйте.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

numoptml-0.1.1.tar.gz (3.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

numoptml-0.1.1-py3-none-any.whl (3.8 kB view details)

Uploaded Python 3

File details

Details for the file numoptml-0.1.1.tar.gz.

File metadata

  • Download URL: numoptml-0.1.1.tar.gz
  • Upload date:
  • Size: 3.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.0

File hashes

Hashes for numoptml-0.1.1.tar.gz
Algorithm Hash digest
SHA256 5bc499469b66fafe8a9f2f1b080698b63f87c02e75dad87043193ac8ae7584d4
MD5 a8b8e7387362d1e7844013850bb127f0
BLAKE2b-256 62f86b13e3ef3c2b7edea181cc31bb69503226decaaa5b461cbb6810fd0b9d2a

See more details on using hashes here.

File details

Details for the file numoptml-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: numoptml-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 3.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.0

File hashes

Hashes for numoptml-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ccb0039d92d2e0fc284be04a194c04a7d95ff2355a89a4c3571ba6c99b5747c4
MD5 0f0054cd9e725e3c3092cb0c4249fda4
BLAKE2b-256 db69ef913b2d2b1ad58d396d24291db75325d90670833d2ef246543c6281120f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page