Евгений Штольц - Машинное обучение на практике – от модели PyTorch до Kubeflow в облаке для BigData

Здесь есть возможность читать онлайн «Евгений Штольц - Машинное обучение на практике – от модели PyTorch до Kubeflow в облаке для BigData» — ознакомительный отрывок электронной книги совершенно бесплатно, а после прочтения отрывка купить полную версию. В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Год выпуска: 2021, Жанр: Прочая научная литература, Программирование, Программы, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Машинное обучение на практике – от модели PyTorch до Kubeflow в облаке для BigData: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Машинное обучение на практике – от модели PyTorch до Kubeflow в облаке для BigData»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

В этой книге Главный Архитектор Департамента Архитектуры Управления Технической Архитектуры (Центра Облачных Компетенций Cloud Native и Корпоративного университета архитекторов) и архитектор решения Сбербанка делится знаниями и опытом с читателей в области ML, полученных в работе Школе архитекторов. Автор:
* проводит читателя через процесс создания, обучения и развития нейронной сети, показывая детально на примерах
* повышает кругозор, показывая, какое она может занимать место в BigData с точки зрения Архитектора
* знакомит с реальными моделями в продуктовой среде

Машинное обучение на практике – от модели PyTorch до Kubeflow в облаке для BigData — читать онлайн ознакомительный отрывок

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Машинное обучение на практике – от модели PyTorch до Kubeflow в облаке для BigData», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

import torch a = torch.FloatTensor([ [1, 2, 3], [5, 6, 7], [8, 9, 10] ]) b = torch.FloatTensor([ [–1, –2, –3], [–10, –20, –30], [–100, –200, –300] ])

Поэлементные операции, такие как "+", "–", "*", "/" над двумя матрицами одинаковых габаритов производят операции с соответствующими их элементами:

a + b tensor([ [ 0., 0., 0.], [ –5., –14., –23.], [ –92., –191., –290.] ])

Другим вариантом поэлементной операции является применение одной операции ко всем элементом по одиночке, например умножение на –1 или применение функции:

a tensor([ [ 1., 2., 3.], [ 5., 6., 7.], [ 8., 9., 10.] ]) a * –1 tensor([ [ –1., –2., –3.], [ –5., –6., –7.], [ –8., –9., –10.] ]) a.abs() tensor([ [ 1., 2., 3.], [ 5., 6., 7.], [ 8., 9., 10.] ])

Также имеются операции свёртки, такие как sum, min, max, которые на входе дают сумму всех элементов, самый маленький или самый большой элемент матрицы:

a.sum() tensor(51.) a.min() tensor(1.) a.max() tensor(10.)

Но нам будут больше интересны постолбцовые операции (операция будет производиться над каждым столбцом):

a.sum(0) tensor([14., 17., 20.]) a.min(0) torch.return_types.min( values=tensor([1., 2., 3.]), indices=tensor([0, 0, 0]) ) a.max(0) torch.return_types.max( values=tensor([ 8., 9., 10.]), indices=tensor([2, 2, 2]) )

Как мы помним, нейронная сеть состоит из слоёв, слои состоят из нейронов, а нейрон содержит на входе связи с весами в виде простых чисел. Вес задаётся обычным числом, тогда входящие связи в нейрон можно описать последовательностью чисел – вектором (одномерным массивом или списком), длина которого и есть количество связей. Так как сеть полносвязная, то все нейроны этого слоя связаны с предыдущим, а, следовательно, демонстрирующие их вектора имеют тоже одинаковую длину, создавая список равных по длине векторов – матрицу. Это удобное и компактное представление слоя, оптимизированное для использования на компьютере. На выходе нейрона имеется функция активации (сигмойда или, ReLU для глубоких и сверхглубоких сетей), которая определяет, выдаст на выходе нейрон значение или нет. Для этого необходимо применить её к каждому нейрону, то есть к каждому столбцу: мы уже видели операцию к столбцам.

Способы ускорения обучения

Пробежимся по истории развития вычислительных систем которая давала вычислительную основу для развития искусственного интеллекта:

* 1642 – механические вычислительные машины, * 1940 – ламповые вычислительные машины, * 1955 – транзисторные вычислительные машины, * 1965 – компьютеры на интегральных схемах, * 1980 – компьютеры с центральными процессорами, * 1995 – многоядерные видеокарты, * 2006 – компьютеры с многоядерными процессорами, * 2017 – компьютеры с матричными процессорами.

На универсальных процессорах можно выделить три пути обеспечения ускорения вычислений, в частности, ускорения обучения нейронных сетей, – распараллеливание вычислений, увеличение количества операций за единицу времени и увеличение объёма вычислений за операцию. Рассмотрим с самой однозначной и имеющей богатую историю способа повышения производительности – увеличение количества операций за единицу времени. Достигается это за счёт увеличения тактовой частоты процессора. Исторически мы можем проследить её историю на примерах процессоров компании Intel серии Pentium для домашних рабочих станций и игровых персональных компьютеров, которые сделали ставку именно в том числе на неё и сильно продвинулись в этом направлении. Важно заметить, что Intel имела время (история от процессоров Intel Pentium 1 100 Мегагерц до Intel Pentium 4 5600 Мегагерц), средства (эта ниша на была лидером по объёму продаж и были популярны компьютерные игры) и необходимость (имела конкурента AMD, который имел архитектурные преимущества в виде разрядности шины в 64 вместо 32, и в случае смены лидера мог договориться адаптировать программное обеспечение под эту разрядность) для того, чтобы реализовать это направление по максимуму. Процессора Intel Pentium 1 100 Мегагерц работали с охлаждающим модулем, Intel Pentium 2 400 Мегагерц – с радиатором, выше уже требовался, как минимум, вентилятор. Начиная с частоты 3200, пользователи ставили вместо полностью алюминиевого радиатора, сперва алюминиевого с медной подложкой, потом полностью медные, так как теплоёмкость у алюминия 904 Дж/(кг*град), а у менди кратно меньше 381 Дж/(кг*град), что позволяет ему быстрее отдавать тепло дальше. Большие показатели дают другие металлы не слишком мягкие и не слишком легкоплавкие, такие как серебро (250) и золото (130), поэтому пошли не по теплопроводности самого материала, а по забору тепла при плавлении материала в тепловых трубках. Пепловые трубки отходят от подложки и ведут через закреплённые на них пластины, обдуваемые двумя вентиляторами, образуя прямой поток воздуха. Тепловые трубки оказывают хороший результат (100 Вт для 3 штук, 180 Вт для 6 штук), перенос тепла которыми осуществляется за счёт испарения жидкости в них находящийся в испарительной камере у радиатора, но большая площадь меди и большая разность температуры водяного охлаждения предоставило большую популярность, а вот в ноутбуках – наоборот, тепловые трубки очень популярны, а движение возврат конденсата обусловлен капиллярной структурой в самих трубках. А для поддержки больших частот продавались процессоры, которые выбирались из партии экспериментальным путём по возможности стабильно работать на этих частотах, и требовали, зачастую, водяного охлаждения и вынесенным радиатором из их системного блока персонального компьютера. Экстремальные же частоты достигались индивидуально и требовали криогенных установок, иногда в несколько контуров. При всём при этом, с каждым 100 Мегагерц повышение частоты достигалось большими затратами с высокими рисками повреждения процессора и не получало стабильную вычислительную производительность. На 2021 проверяются решение по литографии капилляров для охлаждающей жидкости внутри процессора, что может быть особенно актуально для многослойных процессоров. Приведу процессоры без бюджетных вариантов и серверных версий компании Intel с лидирующей архитектурой x86 в CISC:

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Машинное обучение на практике – от модели PyTorch до Kubeflow в облаке для BigData»

Представляем Вашему вниманию похожие книги на «Машинное обучение на практике – от модели PyTorch до Kubeflow в облаке для BigData» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Евгений Штольц - Облачная экосистема
Евгений Штольц
Отзывы о книге «Машинное обучение на практике – от модели PyTorch до Kubeflow в облаке для BigData»

Обсуждение, отзывы о книге «Машинное обучение на практике – от модели PyTorch до Kubeflow в облаке для BigData» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x