1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/blake2002-NumSharp

Клонировать/Скачать
README.md 4.6 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 08.06.2025 09:11 3209ce7

NumSharp

Порт NumPy на C# .NET Standard

Присоединяйтесь к обсуждению на https://gitter.im/publiclab/publiclab NumSharp NuGet

Трудно ли перевести код машинного обучения на Python на C#? Потому что слишком много функций не могут быть найдены в соответствующем коде в .Net SDK. NumSharp — это версия на C# библиотеки NumPy, которая максимально соответствует интерфейсу программирования NumPy, включая названия функций и расположение параметров. Введя библиотеку инструментов NumSharp, вы можете легко переводить код Python в код C#. Вот сравнение кода между NumSharp и NumPy (слева — Python, справа — C#):

Сравнение

NumSharp реализовал интерфейсы arange, array, max, min, reshape, normalize, unique. Все больше и больше интерфейсов будут постепенно добавлены в библиотеку. Если вы хотите начать работу с машинным обучением с использованием .NET, NumSharp станет вашим лучшим инструментом.

Реализованные API

Класс NumPy представляет собой высокий уровень абстракции NDArray, который позволяет использовать NumSharp таким же образом, как и Python's NumPy, минимизируя различия API, вызванные особенностями языка программирования, что позволяет разработчикам .NET максимально использовать широкий спектр ресурсов кода NumPy для плавного перевода кода Python в код .NET.* NumPy

  • absolute
  • amax
  • amin
  • arange
  • array
  • hstack
  • linspace
  • max
  • power
  • random
    • normal
    • randint
    • randn
    • standard_normal
  • reshape
  • sin
  • vstack
  • zeros

Как использовать

// инициализация экземпляра NumPy, который сохраняет целочисленный тип данных
var np = new NumPy<int>();
// создание двумерного вектора
var nd = np.arange(12).reshape(3, 4);

// доступ к данным по индексу
var data = nd[1, 1];

// создание трехмерного вектора
nd = np.arange(12).reshape(2, 3, 2);
// получение второго вектора в первой оси
data = nd[new Shape(1)];

// получение третьего вектора во второй и третьей оси
data = nd[new Shape(1, 2)];

// итерация по ndarray
foreach (var data in nd)
{
	// data является ndarray или значением
}

Установка NumSharp через NuGet

PM> Install-Package NumSharp

Как создать документацию

$ pip install sphinx
$ pip install recommonmark
$ cd docs
$ make html

Как запустить бенчмарк

C:\> dotnet NumSharp.Benchmark.dll

Ссылка на онлайн документацию.

NumSharp используется в следующих проектах:

NumSharp является частью проекта SciSharp.org, который представляет собой экосистему open-source программного обеспечения для математики, науки и инженерии на основе .NET. Приветствуем вклад в проект через форки и pull requests для добавления новых API и расширения списка ссылок.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/blake2002-NumSharp.git
git@api.gitlife.ru:oschina-mirror/blake2002-NumSharp.git
oschina-mirror
blake2002-NumSharp
blake2002-NumSharp
master