Документация ============ Хотя мы не можем охватить каждую функцию и класс PyTorch (и информация может быстро устареть), `документация по API `__, а также дополнительные `руководства `__ и примеры предоставляют такие сведения. В этом разделе мы дадим некоторые рекомендации по изучению API PyTorch. .. raw:: latex \diilbookstyleinputcell .. code:: python import torch Функции и классы в модуле ------------------------- Чтобы узнать, какие функции и классы можно вызвать в модуле, мы используем функцию ``dir``. Например, мы можем запросить все свойства модуля для генерации случайных чисел: .. raw:: latex \diilbookstyleinputcell .. code:: python print(dir(torch.distributions)) Как правило, можно игнорировать функции, названия которых начинаются и заканчиваются ``__`` (специальные объекты в Python), а также функции, названия которых начинаются с одного символа ``_`` (обычно внутренние функции). Судя по оставшимся именам функций и атрибутов, можно предположить, что данный модуль предоставляет различные методы для генерации случайных чисел, включая выборку из равномерного (``uniform``), нормального (``normal``) и мультиномиального (``multinomial``) распределений. Специальные функции и классы ---------------------------- Для получения конкретных инструкций по использованию заданной функции или класса мы можем вызвать функцию ``help``. В качестве примера давайте изучим инструкции по использованию функции ``ones`` для тензоров. .. raw:: latex \diilbookstyleinputcell .. code:: python help(torch.ones) Из документации видно, что функция ``ones`` создаёт новый тензор с указанной формой и устанавливает всем элементам значение 1. По возможности следует запустить быструю проверку, чтобы подтвердить правильность вашего понимания: .. raw:: latex \diilbookstyleinputcell .. code:: python torch.ones(4) В Jupyter-блокноте мы можем использовать ``?`` для отображения документа в другом окне. Например, ``list?`` создаст содержимое, практически идентичное ``help(list)``, и отобразит его в новом окне браузера. Кроме того, если мы используем два знака вопроса, как в ``list??``, будет также показан код на Python, реализующий функцию. Официальная документация содержит множество описаний и примеров, выходящих за рамки этой книги. Мы делаем акцент на важных случаях использования, которые помогут вам быстро приступить к решению практических задач, а не на полноте охвата материала. Мы также рекомендуем вам изучать исходный код библиотек, чтобы увидеть примеры высококачественной реализации кода для продакшена. Это поможет вам не только стать лучшим исследователем, но и улучшить свои инженерные навыки. `Обсуждения `__