Как раз к последнему дню 2020 года MindSpore, универсальная среда искусственного интеллекта проекта с открытым исходным кодом Gitee star, также выпустила версию 1.1, что также означает, что MindSpore открыла новую отправную точку и новый путь. Мероприятия MindCon Geek Week в конце года принесли мне многое.Вышла новая версия.Как я могу пропустить Hello World of Copy Siege Lion?
новый опыт
После официального выпуска MindSpore с открытым исходным кодом в марте 2020 года и официального выпуска версии 1.0 в сентябре 2020 года MindSpore делала один шаг за шагом и, наконец, получила награду OSC China Open Source Project за лучший проект за популярность в ноябре 2020 года. В 2021 году MindSpore выпустила версию 1.1.В новой версии был добавлен унифицированный формат IR, MindIR, для реализации нескольких развертываний одновременно, он предоставил возможности полноэкранного развертывания для реализации взаимодействия терминал-облако MindSpore, улучшенный режим PyNative, делает разработку и отладку более удобной; переработана возможность проверки отладчика проще в использовании и точнее; добавлена функция сквозного обучения, что делает приложение ИИ все более и более точным... И для копирования Siege Lion, самое любимое из них — крупномасштабное обновление учебника и открытие единой платформы ModelArts, платформы для разработки ИИ, которая также может изучать разработку и обучение моделей на мобильных телефонах; еще одним любимым моментом является то, что он имеет лучший опыт установки в Windows. Сегодня я дам вам простую прогонку HelloWorld от MindSpore 1.1 — прогоню модель классификации изображений LeNet, чтобы компенсировать сожаление о том, что бросил обучение после неудачной установки в Windows раньше!
Установить
В новой версии процесс установки Windows, кажется, стал более плавным, с одной строкой командной установки и одной строкой команды для проверки результата установки. При установке используется скрипт из официальной документации, а также собственные ресурсы HUAWEI CLOUD и изображение пипа Tsinghua.Возможно, это единственное пересечение между мной и Tsinghua:
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.1.0/MindSpore/cpu/windows_x64/mindspore-1.1.0-cp37-cp37m-win_amd64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
# 注意参考官方文档的安装指南,确保安装依赖以及环境变量配置正确
# 本次选择选项 1.1.0 Windows CPU Python3.7.5 pip
После завершения установки необходимо проверить, прошла ли установка успешно:
python -c "import mindspore;print(mindspore.__version__)"
# 1.1.0
Приведенное выше может нормально выводить номер версии MindSpore, и MindSpore 1.1.0 успешно установлен в Windows. Давайте начнем копировать код с ума!
Практичный
Эта практика реализует простую функцию классификации изображений на основе Lenet, включая подготовку и обработку наборов данных, определение сети и функции потерь и оптимизатора, загрузку набора данных, загрузку\сохранение\вывод\проверку модели и другие процессы.Некоторые основные операции, начиная с уровня многоэтажки, с этого уровня начинается Copy siege lion!
Подготовка набора данных
набор данных:yann.lecun.com/exdb/mnist/
Умейте двигаться самостоятельно, а не руками! Мы загружаем набор данных через скрипт Python. Мы представим необходимые зависимости для загрузки файлов и сжатых gzip-файлов, определим метод распаковки gzip-файлов, определим метод загрузки и удаления распакованных файлов после загрузки, наконец, определим основную функцию загрузки набора данных.
Пожалуйста, обратитесь к конкретному коду:git ee.com/minds-pore/…
Подготовка набора данных в основном заключается в создании следующей структуры папок, в тесте хранятся данные вывода, а в поезде хранятся обучающие данные:
└─MNIST_Data
├─test
│ t10k-images.idx3-ubyte
│ t10k-labels.idx1-ubyte
│
└─train
train-images.idx3-ubyte
train-labels.idx1-ubyte
обучение и вывод
Мы будем использовать некоторые библиотеки python и некоторые модули в MindSpore, такие как os для указания пути к набору данных, контекстный модуль для настройки информации, необходимой для запуска, модуль набора данных для обработки наборов данных, таких как определение наборов данных, улучшение данных и т. д. ., наследованиеmindspore.nn.Cell
Определить нейронную сеть, начиная сmindspore.nn.loss
Внедряя функции потерь и т.д., мы можем вводить нужные нам зависимости в начале файла. затем используйтеmindspore.dataset
Модуль выполняет обработку набора данных, затем определяет сеть Lenet, определяет функцию потерь и оптимизатор, а также настраивает сеть сохранения и обучения модели.
Пожалуйста, обратитесь к конкретному коду:git ee.com/minds-pore/…
Наконец, выполните команду python для обучения, и вы сможете просмотреть результаты после обучения и вывода:
epoch: 1 step: 1866, loss is 0.1575163
epoch: 1 step: 1867, loss is 0.31445956
epoch: 1 step: 1868, loss is 0.043173585
epoch: 1 step: 1869, loss is 0.12036275
epoch: 1 step: 1870, loss is 0.12131009
epoch: 1 step: 1871, loss is 0.3510599
epoch: 1 step: 1872, loss is 0.078447945
epoch: 1 step: 1873, loss is 0.08664515
epoch: 1 step: 1874, loss is 0.15272087
epoch: 1 step: 1875, loss is 0.007838262
============== Starting Testing ==============
============== Accuracy:{'Accuracy': 0.9649439102564102} ==============
резюме
Весь процесс занимает не более 15 минут, и он может работать без проблем на моем крупнозернистом ноутбуке 16 лет.Хотя это легко запустить из-за кода, это не то, что можно сделать за одну ночь, если вы действительно хотите понять все сопутствующие аспекты. Впереди долгий путь, и Копирующий осадный лев тоже будет искать вверх и вниз!