Главное меню

Швеллер 10п размеры


Швеллер размеры | Таблица размеров швеллера 10, 12, 14, 16, 20, 22

Таблица размеров швеллера

Швеллер горячекатаный стальной ГОСТ 8240-97
Параметры швеллера гк h — высота b — ширина полки s — толщина стенки t — толщина полки Вес 1 мп, кг
Швеллер размер № 5 h=50 мм b=32 мм s=4,4 мм t=7 мм 4,84
Швеллер размер № 6.5 h=65 мм b=36 мм s=4,4 мм t=7,2 мм 5,9
Швеллер размер № 8 h=80 мм b=40 мм s=4,5 мм t=7,4 мм 7,05
Швеллер размер № 10 h=100 мм b=46 мм s=4,5 мм t=7,6 мм 8,59
Швеллер размер № 12       h=120 мм b=52 мм s=4,8 мм t=7,8 мм 10,4
Швеллер размер № 14 h=140 мм b=58 мм s=4,9 мм t=8,1 мм 12,3
Швеллер размер № 16 h=160 мм b=64 мм s=5,0 мм t=8,4 мм 14,2
Швеллер размер № 18 h=180 мм b=70 мм s=5,1 мм t=8,7 мм 16,3
Швеллер размер № 20 h=200 мм b=76 мм s=5,2 мм t=9 мм 18,4
Швеллер размер № 22 h=220 мм b=82 мм s=5,2 мм t=9,5 мм 21
Швеллер размер № 24 h=240 мм  b=90 мм s=5,6 мм t=10 мм 24
Швеллер размер № 27 h=270 мм b=95 мм s=6 мм t=10,5 мм 27,7
Швеллер размер № 30 h=300 мм b=100 мм s=6,5 мм t=11 мм 31,8
Швеллер размер № 40 h=400 мм b=115 мм s=8 мм t=13,5 мм 48,3
Швеллер гнутый
Швеллер гнутый гост 8278-83
 50*40*3        12,0 м
 60*32*2,5     12,0 м
 60*32*4        10,0 м
 80*32*4        10,0 м
 80*60*4        11,5 м
100*50*3       11,5 м
120*50*3       11,5 м
120*60*4       11,5 м
120*60*5       11,7 м
160*80*4       11,7 м

Швеллер размеры

Швеллеры г/к стальные горячекатаные это прокат П или У — образного сечения. Швеллеры г/к делятся на 3 вида: швеллер горячекатаный с уклоном внутренних полок, с параллельными гранями полок и швеллер гнутый холоднокатаный. Швеллер горячекатаный производится двух видов точности: повышенной точности-Б и обычной точности-В. Виды и марки швеллеров завися от марки стали, из которых они изготовлены что определяет их назначение и размеры. Швеллеры изготовляют длиной от 4 до 12 м и высотой от 5 до 40 мм. Швеллер широко используется при строительстве сооружений, а также в качестве каркаса и перегородок, так как их размер позволяет создавать конструкции различных видов.

Узнать цены на швеллер в интернет магазине Металлобазы>>>

Швеллер 10П с параллельными гранями полок по ГОСТ 8240-97

Высота сечения

h=100,0мм

Ширина сечения

b=46,0мм

Толщина стенки

s=4,5мм

Толщина полки

t=7,6мм

Радиус сопряжения

R=7,0мм

Площадь сечения

A=10,9см2

Масса одного метра сечения

M=8,59кг

Момент инреции относительно оси "x"

Ix=175,0см4

Момент сопротивления относительно оси "x"

Wx=34,9см3

Статический момент половины сечения

Sx=20,5см3

Радиус инерции относительно оси "x"

ix=39,9см

Момент инерции относительно оси "y"

Iy=22,6 см4

Момент сопротивления относительно оси "y"

Wy=7,37 см3

Радиус инерции относительно оси "y"

iy=14,4 см

Координаты центра тяжести

X0=15,3 см

Швеллер 10П - размеры и площадь сечения по ГОСТу, вес и стоимость

Сортамент швеллера 10П —  разновидности горячекатаных заготовок, довольно обширный. Все характеристики отдельных образцов можно найти в ГОСТ № 8240 от 1989 года. Их довольно много – параметры полок и стенки (высота, ширина), радиусы кривизны и закругления и ряд других. Кого интересует более подробная информация, может изучить указанный документ самостоятельно.

Мы же рассмотрим лишь один вид швеллера – №10, причем те его параметры, которые имеют значение для непрофессионала.

Прежде всего, уточним, что собой представляет данное изделие. Швеллер 10П является одним из самых используемых в различных сферах, в том числе, и в индивидуальном строительстве (например, в качестве несущих опор). По сути, это металлический брус, имеющий специфический профиль.

Расшифровка обозначения

Параметры сечения

Все линейные размеры – в «мм».

  • Высота (h) – 100.
  • Ширина (b) – 46.
  • Толщина: стенки (s) – 4,5; полки (t) – 7,6.
  • Радиусы: кривизны ® – 7; закругления ® – 3,0.

Иногда нужно знать площадь поперечного сечения. Для швеллера 10П она составляет 10,9 см². Длина швеллера – в пределах от 4 до 12 м. Она может быть и больше, если производство такой заготовки согласовано с заказчиком.

Параметры профиля контролируются на любом участке швеллера, но не ближе 0,5 м от его торцов.

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

Вес

На каждый м.п. – 8,59 кг. При условии, что плотность стали составляет 7,85 г/см³. Допустимые отклонения от указанного значения массы +3% и -5%.

Калькулятор расчета массы Швеллера горячекатаного:

Стоимость

Ориентировочная цена – в пределах 356 руб/м.п.

Швеллер: таблицы размеров согласно ГОСТ

Что такое швеллер? Это продукт металлопроката, имеющий П-образную форму. Конструкция состоит из поперечной балки и двух параллельно расположенных граней, которые могу иметь небольшой угол. Готовые изделия производятся из углеродистой низколегированной стали, по технологии горячего проката. Благодаря своей конструкции, швеллеры обладают повышенной устойчивостью к динамическим нагрузкам, поэтому широко применяются в капитальном строительстве.

Классификация

Разновидности швеллера зависят от нескольких критериев. В частности, продукция подразделяется на такие группы:

  • По технологии изготовления. В этом направлении выделяются две категории: гнутые и горячего проката. Отличия между изделиями заключаются в следующем: горячекатаные швеллеры имеют прямой или острый угол между поперечной балкой и вертикальными гранями, гнутые – имеют изгиб округлой формы. К этой категории можно выделить сварные конструкции, выполненные из двух сваренных уголков и H-образные, получившие название двутаврового швеллера.

  • Точность проката. Здесь существуют три группы: А, Б, В, обозначающие высокую, повышенную и обычную точность соответственно.

  • Прочность. Этот критерий определяет устойчивость изделия к динамическим нагрузкам. В частности, на рынке имеются изделия обычной и повышенной прочности.

Кроме этого, швеллеры разделяются на размерные группы, где определяющими критериями являются длина и ширина изделия.

Маркировка по нормам ГОСТ

Если говорить о стандартизации ГОСТ, швеллеры маркируются буквенными и цифровыми обозначениями. Числовая маркировка указывает на расстояние между параллельными гранями, выраженное в сантиметрах. Литеры определяют дополнительные свойства изделия. Например:

  • П – параллельное расположение внешних граней.

  • У – полки расположены под уклоном.

  • Л – облегчённая конструкция.

  • Э – швеллеры экономичной категории.

  • С – специальная продукция.

Например, маркировка швеллера 18АП обозначает следующее: высокоточное прокатное изделие, имеющее расстояние 18 сантиметров между полками, которые расположены под прямым углом.

Сфера применения

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

Стоит отметить, что в продаже имеются перфорированные изделия. Здесь предусмотрены специальные отверстия, предназначенные для быстрого монтажа без использования электросварки. Кроме этого, между полками могут располагаться трубы для быстрой подводки инженерных коммуникаций и кабельных линий.

Существуют швеллеры, изготовленные из алюминиевого сплава, применяемые для возведения облегчённых конструкций. В частности, внутренних перегородок внутренних помещений, стеллажей, витрин.

Таблицы размеров

Размерный ряд швеллеров довольно разнообразен и не зависит от технологии изготовления или производителя. Здесь применяются стандартные типоразмеры, которые выглядят так:

  • Высота изделия. Это расстояние между параллельно расположенными полками, измеряемое в миллиметрах. Данный параметр варьируется в пределах 50-400 мм.

  • Ширина полки. Это расстояние от внешнего угла швеллера до кончика параллельных граней. Здесь играют размеры 32-115 мм.

  • Толщина поперечной балки. В зависимости от категории, этот параметр составляет 4.4-8 мм.

  • Толщина полок. В зависимости от маркировки изделия, толщина граней может составлять 7-13.5 мм.

Длина стандартного швеллера не превышает 12 метров. Стоит отметить, что на рынке встречается продукция, чья длина превышает это значение. Однако такая продукция в основном изготавливается под заказ.

С уклоном внутренних граней полок. ГОСТ 8240-97

Условные обозначения:

  • h - высота швеллера;

  • b - ширина полки;

  • S - толщина стенки;

  • R - радиус внутреннего закругления полок;

  • t - толщина полки;

  • r - радиус закругления полок.

Номер швеллера серии УРазмеры, ммМасса 1м, кг
hbStRr
не более

швеллер 5У

50

32

4,4

7

6

2,5

4,842

швеллер 6,5У

65

36

4,4

7,2

6

2,5

5,899

швеллер 8У

80

40

4,5

7,4

6,5

2,5

7,049

швеллер 10У

100

46

4,5

7,6

7

3

8,594

швеллер 12У

120

52

4,8

7,8

7,5

3

10,43

швеллер 14У

140

58

4,9

8,1

8

3

12,29

швеллер 16У

160

64

5

8,4

8,5

3,5

14,23

швеллер 15аУ

160

68

5

9

8,5

3,5

15,35

швеллер 18У

180

70

5,1

8,7

9

3,5

16,26

швеллер 18аУ

180

74

5,1

9,3

9

3,5

17,45

швеллер 20У

200

76

5,2

9

9,5

4

18,37

швеллер 22У

220

82

5,4

9,5

10

4

20,98

швеллер 24У

240

90

5,6

10

10,5

4

24,06

швеллер 27У

270

95

6

10,5

11

4,5

27,66

швеллер 30У

300

100

6,5

11

12

5

31,78

швеллер 33У

330

105

7

11,7

13

5

36,53

швеллер 36У

360

110

7,5

12,6

14

6

41,91

швеллер 40У

400

115

8

13,5

15

6

48,32

С параллельными гранями полок. ГОСТ 8240-97

Номер швеллера серии ПРазмеры, ммМасса 1 м, кг
hbStRr
не более

швеллер 5П

50

32

4,4

7

6

3,5

4,840

швеллер 6,5П

65

36

4,4

7,2

6

3,5

5,897

швеллер 8П

80

40

4,5

7,4

6,5

3,5

7,051

швеллер 10П

100

46

4,5

7,6

7

4

8,595

швеллер 12П

120

52

4,8

7,8

7,5

4,5

10,42

швеллер 14П

140

58

4,9

8,1

8

4,5

12,29

швеллер 16П

160

64

5

8,4

8,5

5

14,22

швеллер 16аП

160

68

5

9

8,5

5

15,34

швеллер 18П

180

70

5,1

8,7

9

5

16,26

швеллер 18аП

180

74

5,1

9,3

9

5

17,46

швеллер 20П

200

76

5,2

9

9,5

5,5

18,37

швеллер 22П

220

82

5,4

9,5

10

6

20,97

швеллер 24П

240

90

5,6

10

10,5

6

24,05

швеллер 27П

270

95

6

10,5

11

6,5

27,65

швеллер 30П

300

100

6,5

11

12

7

31,78

швеллер 33П

300

105

7

11,7

13

7,5

34,87

швеллер 36П

360

110

7,5

12,6

14

8,5

41,89

швеллер 40П

400

115

8

13,5

15

9

48,28

Вес

Масса швеллера зависит от нескольких параметров. В частности, ключевую роль играют:

Не нужно объяснять, что швеллер 12П изготовленный из стали и алюминиевого сплава будет относиться к разным весовым категориям при идентичных внешних характеристиках. Кроме этого, встречаются разнополочные изделия, где профиль подразумевает наличие боковых граней разной длины. Разумеется, рассчитать массу таких изделий можно, но это требует использования специальных формул.

Швеллеры, изготовленные по стандартным размерам, имеют вес от 4.8 до 48.3 килограмм. Согласно действующим нормам ГОСТ и европейским стандартам допускается отклонение 6.5% для каждого изделия, при условии, что разность в массе общей партии не будет превышать 4%.

Производители

Швеллеры являются довольно востребованной продукцией, поэтому изготавливаются отечественными и западными компаниями. Учитывая, что производители применяют идентичные технологии, рассматривать продукцию западных компаний не имеет смысла: при аналогичном качестве, изделия отличаются более высокой стоимостью.

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

  • ООО «Гурьевский металлургический завод». Компания расположена в Кемеровской области и по праву считается одним из старейших заводов Сибири. История предприятия началась в 1816 году, в настоящее время функционирует сталеплавильный цех, сорто – и шаропрокатная линии.

  • ОАО «Магнитогорский металлургический комбинат». Это легендарная «Магнитка» выдавшая первый металл в 1932 году. Сейчас компания является объединением из десятка сталелитейных предприятий. Нужно отметить, что ММК является лидером по производству металлопроката в российском регионе.

  • ОАО «Чусовской металлургический завод». Предприятие расположено на Урале, основано князем Голицыным в 1879 году. Сейчас завод специализируется на производстве горячекатаного швеллера и другой продукции металлопроката.

К основным предприятиям России можно отнести и «Верхнесалдинский металлургический завод». Компания специализируется на изготовлении уголков, стальных полос и швеллеров с острым углом полок по технологии горячего проката.

Руководство по размеру и размерам баннеров YouTube 2021

Во многом ваши изображения в социальных сетях похожи на обложку вашей книги. В этой статье мы изложим всю информацию о размере и размерах баннера, которая вам понадобится для создания баннера YouTube, который привлечет внимание людей к вашему каналу!

Представьте, когда вы в последний раз просматривали полки местного книжного магазина. Была ли книга, которая привлекла ваше внимание? Возможно, этот первоначальный визуальный интерес побудил вас открыть книгу, чтобы посмотреть, что находится внутри.Независимо от того, какая книга вам понравилась, велики шансы, что сильные визуальные эффекты сыграли роль в пробуждении вашего любопытства и желания узнать больше.

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

В этом посте мы расскажем, что нужно знать каждому бизнесу, чтобы создавать баннеры YouTube с правильными размерами и размером файла для разных устройств. Мы также познакомим вас с некоторыми из наших самых любимых примеров баннеров YouTube, чтобы у вас было много вдохновения для создания собственных.

Давайте начнем с болтов и гаек выбора размера вашего баннера.

Размер баннера YouTube

Есть несколько терминов и ключевых понятий, которые нужно понять, чтобы понять способ отображения изображений на разных устройствах, которые мы рассмотрим в следующем разделе.А пока вот краткий контрольный список, чтобы убедиться, что ваш баннер соответствует требованиям YouTube к размеру баннера:

  • Рекомендуемый размер баннера YouTube: 2560 x 1440 пикселей
  • Минимальные размеры изображения: 2048 x 1152 пикселя
  • Минимальная безопасная область изображения для текста и логотипов: 1546 x 423 пикселя
  • Максимальная ширина изображения: 2560 x 423 пикселя
  • Размер файла ограничение: 6 МБ

Рекомендации по размеру оформления канала YouTube

А теперь давайте подробнее рассмотрим рекомендации по размеру обложки для каналов YouTube.Прежде всего, почему так много размеров? Вкратце, все сводится к тому, как ваш баннер YouTube будет отображаться на множестве устройств разного размера, которые используют люди, от Android до iPhone, вплоть до ноутбуков и экранов телевизоров.

Вы хотите, чтобы ваш баннер YouTube выглядел великолепно, независимо от того, отображается ли он на экране самого большого размера с полной шириной 2,560 пикселей, до экрана наименьшего размера с шириной 423 пикселей или любого промежуточного размера. В противном случае вы потенциально теряете просмотры своих видео и новых подписчиков.

Вот наглядное руководство по размерам баннеров YouTube, которое поможет оценить эти цифры:

Как видите, существует довольно большой диапазон размеров, которые нужно запланировать, чтобы обеспечить оптимальное отображение баннеров YouTube на экранах всех размеров. То, что эффектно смотрится на большом экране, может оказаться бессмысленным на экране смартфона. Давайте посмотрим на несколько примеров в действии:

В зависимости от вашего изображения бывает сложно получить его правильное изображение на экране любого размера.Но есть один ключ, который поможет убедиться, что ваши зрители всегда будут видеть ваш баннер YouTube в правильном свете, - это знание вашей «безопасной зоны».

Знайте безопасную зону своего баннера YouTube

Чтобы ваш баннер YouTube просматривался оптимальным образом, вам нужно знать свою «безопасную зону». Если вы слышите их впервые, ваша «безопасная зона» - это минимальная площадь, необходимая для правильного отображения вашего баннера.

Убедитесь, что любая часть вашего изображения, которая важна для вашего баннера YouTube, находится на полностью в пределах безопасной зоны размером 1546 x 423 пикселей.Вы не хотите, чтобы потенциальным зрителям вашего канала YouTube показалось неудобным, что могло бы их отключить.

Умные примеры баннеров YouTube

Теперь, когда у вас есть размеры, размеры файлов и подробные инструкции для ваших баннеров YouTube, пора задуматься о дизайне. Чтобы вдохновить вас, мы собрали несколько наших самых любимых примеров баннеров YouTube. Это одни из самых креативных и эффективных баннеров, которые мы когда-либо видели!

Food Insider

Посетите Food Insider на YouTube

Для страницы Food Insider на YouTube они разработали баннер, показывающий серию вкусных кусочков еды из их историй на YouTube.На баннере есть пять аппетитных проблесков (от сочных десертов до гигантского бургера), разделенных полосами бирюзового цвета, соответствующими их логотипу. Это приятное напоминание о том, что оформление вашего канала YouTube является частью вашего бренда. Оставайтесь верными принципам вашего бренда даже в социальных сетях.

Wyzowl

Посетите Wyzowl на YouTube

Мы являемся одной из ведущих мировых компаний по производству анимационных пояснительных видео. Мы хотели, чтобы баннер нашего канала YouTube отражал это, поэтому мы создали забавный набор иконок, представляющих нашу деятельность и сферу деятельности, с которой мы работаем.Этот стиль оформления канала очень соответствует внешнему виду нашего брендинга в других местах, например, на нашем веб-сайте.

Гуннаролла

Посетите Gunnarolla на YouTube

Gunnarolla - продюсер, путешествующий по миру, который снимает развлекательные короткометражные фильмы и создает музыку, демонстрирующую его уникальный (и юмористический) взгляд на мир. Для своего баннера канала YouTube Гуннаролла использует одно основное изображение самого себя с логотипом и наложением текста. Его баннер сфокусирован на его логотипе с изображением, а также на списке того, на чем он сосредоточен: музыка, путешествия, еда, жизнь.Помните, что он не работает с глобальным признанием имени, как это делают некоторые из крупных брендов из нашего списка (например, наше следующее упоминание о Google). Гуннаролла мудро разъясняет своей аудитории, что он собирается делать.

Google

Посетите Google на YouTube

Кто не любит пикник? На фоне красно-белого одеяла для пикника баннер YouTube на YouTube представляет собой восхитительное сочетание красочных изображений еды, таких как хот-доги и пирог, с логотипами продуктов Google, такими как логотип Gmail.С таким узнаваемым брендом и цветовой палитрой Google может играть более свободно и более имиджево, чем менее узнаваемые бренды, которым нужно подробно описывать, что они делают. Этот красиво оформленный баннер YouTube заставляет нас хотеть откусить большой, вкусный кусок того, что подают на пикнике! Логотипа Google нигде не видно, но он все равно сразу узнаваем как Google.

НПЗ29

Посетите Refinery29 на YouTube.

Обложка канала Refinery29 на YouTube считается одной из самых оригинальных из всех, что мы когда-либо видели.Вместо того, чтобы снова повторить свой логотип, который также является частью домашней страницы, они пошли в совершенно другом направлении. Они написали название своей компании «НПЗ 29» печатными буквами, состоящими из изображений с их веб-сайтов и видеоконтента. Эффект похож на возможность заглянуть в окно и заглянуть внутрь того, что происходит на YouTube-канале Refinery 29, но уловить только дразнящие взгляды. Думаю, нам просто нужно посмотреть и узнать!

GoPro

Посетите GoPro на YouTube

Камеры GoPro известны любителям спорта на открытом воздухе.На канале GoPro на YouTube есть баннер с потрясающим панорамным снимком серфера, ловящего гигантскую волну. Они на 100% вдохновляют. Без наложения. Никаких нескольких изображений, соединенных вместе, чтобы дать разные представления. Всего лишь один длинный великолепный снимок с GoPro. Логотип на изображении минимален, что позволяет этому эффектному кадру сиять, не отвлекая его.

Как загрузить обложку канала YouTube

Теперь, когда вы ознакомились с некоторыми из наших любимых баннеров YouTube, давайте рассмотрим пошаговый процесс загрузки вашего баннера YouTube.

Вот как добавить новые или существующие изображения в баннер вашего канала YouTube.

1. Войдите в свою учетную запись YouTube.

2. Щелкните эскиз в правом верхнем углу, затем щелкните «Ваш канал».

3. Щелкните в любом месте области баннера, затем загрузите (или перетащите) изображение со своего компьютера.

4. Появится предварительный просмотр, показывающий, как выбранный баннер YouTube будет отображаться на разных устройствах. На этом этапе вы можете настроить обрезку, чтобы изменить способ отображения изображения.

5. Нажмите «Выбрать», когда будете довольны своим изображением!

Добавление значков социальных сетей в баннер YouTube

Вы могли заметить баннеры с тремя или четырьмя основными социальными каналами, в то время как в других была только одна ссылка, как в примере с Google. Это потому, что YouTube дает вам возможность включить до пяти ссылок на ваши учетные записи в социальных сетях. Вот как:

1. Убедитесь, что вы вошли в свой аккаунт YouTube.

2. Перейдите на свой канал YouTube и нажмите «Настроить канал.”

3. Щелкните вкладку «О программе», затем перейдите в раздел «Ссылки».

4. Щелкните значок карандаша и введите до 5 URL-адресов для своих учетных записей в социальных сетях.

5. Нажмите «Готово»!

Мы надеемся, что эти примеры вдохновили вас увидеть собственный баннер канала в совершенно новом свете. Все еще жаждете дополнительных советов, как улучшить вашу игру на YouTube? Тогда ознакомьтесь с 21 видео-идеей YouTube и "Как пройти проверку на YouTube".

.Сверточная нейронная сеть

- II | автор: Мандар Дешпанде

Продолжая изучать предыдущий пост, мы рассмотрим следующие темы в этом посте:

  • Свертка по объему
  • Несколько фильтров одновременно
  • Один слой сверточной сети
  • Понимание изменения размеров

Я попытался объяснить большинство тем с помощью иллюстраций, насколько это возможно. Если что-то непонятно, напишите мне.

Приступим!

Не бойтесь читать «объем», это просто способ обозначить изображения с более чем одним каналом, то есть RGB, или любые другие каналы.

До сих пор у нас был только один канал, поэтому нас интересовали только высота и ширина изображения. Но с добавлением более одного канала нам нужно позаботиться об используемых фильтрах, поскольку они также должны охватывать свертку по всем каналам (здесь 3).
Итак, если размер изображения составляет n x n x #channels , значит, фильтр, который раньше был f x f , теперь также должен иметь размер f x f x #channels .

Интуитивно наши входные данные больше не двумерные, а на самом деле трехмерные, если вы рассматриваете каналы, и отсюда и название volume .

Ниже приведен простой пример свертки по объему изображения размером 6 x 6 x 3 , где 3 обозначают 3 канала R, G и B.Аналогично фильтр имеет размер 3 x 3 x 3 .

Рис. 1. Свертка по объему (цветное изображение - 3 канала) с фильтром размерности 3 x 3

В данном примере целью фильтра является обнаружение вертикальных краев. Если край должен быть обнаружен только в канале R , тогда необходимо установить только веса в канале R для требования. Если вам нужно обнаружить вертикальные границы по всем каналам, тогда все каналы фильтра будут иметь одинаковый вес, как показано выше.

Существует высокая вероятность того, что вам может потребоваться извлечь множество различных функций из изображения, для чего вы будете использовать несколько фильтров. Если отдельные фильтры сворачиваются отдельно, это увеличит время вычислений и, следовательно, будет удобнее использовать все необходимые фильтры одновременно напрямую.

Свертка выполняется индивидуально, как и в случае с одним фильтром, а затем результаты обеих сверток объединяются в стопку для формирования выходного объема с 3-м измерением, представляющим количество фильтров.

В приведенном ниже примере рассматривается изображение 6 x 6 x 3 , как указано выше, но мы используем 2 фильтра (для вертикального и горизонтального края) размером 3 x 3 x 3 . Результирующие изображения 4 x 4, каждое складываются вместе, чтобы получить выходной объем 4 x 4 x 2 .

Рис. 2. Свертка по объему с множественным фильтром размеров 3 x 3

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

Рис. 3. Уравнение, определяющее размер выходного изображения / сигнала относительно входа и размер фильтра

, nc - количество каналов во входном изображении, а nf - количество используемых фильтров.

Если рассматривать один слой сверточной сети без слоя объединения и уплощения, то он будет выглядеть примерно так:

Рис. 4. Однослойная сверточная сеть только с активацией Relu

Важно понимать, что, как и в любом другом нейронная сеть, сверточная нейронная сеть также имеет входные данные x , которые здесь являются изображением, и весами модели, заданными фильтрами F1 и F2, то есть W . После свертки весов и входного изображения мы получаем взвешенный выход Вт * x , а затем добавляем смещение b .

Одной из ключевых функций здесь является функция активации RELU , которая является выпрямленным линейным блоком. Relu помогает нам добавить нелинейности к модели обучения и помогает нам лучше обучать / изучать веса модели для обобщенного случая.

Рис. 5. Функция активации Relu

Для значений, которые ниже определенного порога (здесь 0), функция relu вообще не обновляет параметры. Он просто умирает. Чтобы конкретный обучающий пример можно было рассматривать для обучения, он должен иметь установленное минимальное значение для активированного нейрона.Кроме того, Relu помогает нам уменьшить проблему исчезновения и взрыва градиента, с которой сталкивается большинство глубоких нейронных сетей, поскольку Relu обеспечивает эффективное распространение градиента.

Теперь, когда у нас есть концептуальное представление о том, что происходит на одном слое, давайте сформулируем схему для любого заданного слоя - сверточной сети.

Рис. 6. Уравнения, управляющие изменением входных размеров на основе фильтров, заполнения и шага

После вычисления размеров отдельных компонентов, окончательный размер n слоя l может быть вычислен с помощью:

Рис 7.Размеры последнего слоя l с размером фильтра f , заполнением p и шагом s

Мы начали этот пост с изучения свертки по объему, а затем продолжили обсуждение сразу с несколькими фильтрами. Легко понять, что объем здесь просто относится к 3 цветным каналам данных изображения. Обсуждение одного уровня сверточной сети очень важно для понимания всей сетевой архитектуры, поэтому убедитесь, что эти концепции (relu, функции активации) ясны.В последнем разделе говорилось о том, как мы можем оценить размер слоя нашей модели в зависимости от количества отступов и шага, используемых в свертке с фильтром.

В следующем посте я подробно объясню различные архитектуры CNN и оценю их уникальные особенности

.

Размер ТВ в калькулятор расстояния и наука

Наука, лежащая в основе нашего калькулятора размеров телевизора и расстояния

Когда дело доходит до выбора телевизора, идеально подходящего для вашей комнаты, это обычно лучше и лучше. Это не только самый большой фактор, влияющий на цену телевизора, но он также оказывает огромное влияние на воспринимаемое качество изображения.

Поле зрения

ТВ заполняющий 20 градусов поля зрения ТВ, заполняющий 30 градусов поля зрения

Поскольку сегодня найденные разрешения - это почти исключительно 4k / Ultra HD, требуется очень большой телевизор, который следует смотреть очень близко, чтобы увидеть недостатки, связанные с разрешением.Из-за этого можно оценить их телевизоры с гораздо более близкого расстояния для более полного погружения. Думайте об этом как о кинотеатре: чем больше телевизор заполняет ваше поле зрения, тем более захватывающим будет контент.

Это не значит, что вы должны сидеть в футе от телевизора. Не все предпочитают иметь максимально большой экран. Зрительная система человека имеет угол обзора около 135 градусов по горизонтали, и, хотя для фильмов имеет смысл иметь такой большой телевизор, который вы можете получить, контент не создается для просмотра, заполняя все поле зрения.Это становится очень очевидным, если вы пытаетесь смотреть спортивные передачи с близкого расстояния, фиксируя при этом одну часть экрана, поскольку это становится довольно тошнотворным.

Руководство Общества инженеров кино и телевидения рекомендует сидеть на таком расстоянии, чтобы экран занимал около 30 ° поля вашего зрения как минимум для хорошего восприятия.

Для использования поля зрения в театральном стиле нужно сесть поближе

Обычно это дает хорошее руководство, но пользователям, которые используют свои телевизоры в основном для просмотра фильмов, может быть полезно сесть немного ближе, чтобы получить больше похоже на театр.«Эталонное» положение SMPTE для кинотеатров и рекомендация THX - около 40 °. Минимальный угол обзора хорошо подходит для большинства случаев использования, и сидение на расстоянии, где экран заполняет 30 ° вашего горизонтального поля зрения, должно быть комфортным для большинства людей.

Размер экрана Рекомендуемое расстояние для смешанного использования
(30 °)
Рекомендуемое расстояние кинотеатра
(40 °)
25 дюймов 3.4 фута (1,04 м) 2,5 дюйма (0,77 м)
30 " 4,1 '(1,24 м) 3 '(0,92 м)
35 дюймов 4,8 '(1,45 м) 3,5 дюйма (1,07 м)
40 " 5,5 '(1,66 м) 4 фута (1,22 м)
45 дюймов 6,1 '(1,86 м) 4,5 дюйма (1,37 м)
50 " 6,8 дюйма (2,06 м) 5 '(1.53 м)
55 " 7,5 дюйма (2,28 м) 5,5 '(1,68 м)
60 " 8,2 '(2,48 м) 6 футов (1,83 м)
65 дюймов 8,9 '(2,69 м) 6,5 дюйма (1,98 м)
70 дюймов 9,5 '(2,9 м) 7 футов (2,13 м)
75 дюймов 3,1 м (10,2 дюйма) 7,5 дюйма (2,29 м)
80 " 10.9 футов (3,31 м) 8 футов (2,44 м)
85 " 11,6 дюйма (3,52 м) 8,5 дюйма (2,59 м)

Угловое разрешение

Чем ближе вы находитесь, тем ниже будет воспринимаемая вами плотность пикселей.

Более высокое поле зрения впервые стало возможным с разрешениями Full HD, но 4k расширяет эту возможность еще больше. Если вы сидите рядом с телевизором с разрешением 1080p, вам будет казаться, что вы смотрите телевизор через сетку, даже если он воспроизводит высококачественный фильм с разрешением 1080p HD.Увеличивая расстояние от телевизора, вы также увеличиваете плотность деталей, обеспечивая лучшее изображение. Это угловое разрешение: количество пикселей на угол. Чем дальше, тем выше будет угловое разрешение.

.

размеров слоя PyTorch: какой размер и почему? | автор: Jake Krajewski

Документация для линейных слоев сообщает нам следующее:

  "" "
Class

torch.nn.Linear ( in_features , out) Верно ) Параметры in_features - размер каждой входной выборки
out_features - размер каждой выходной выборки "" "

Я знаю, что они похожи, но не путайте:« in_features »и« » in_channels »совершенно разные, новички часто путают их и думают, что это один и тот же атрибут.

  # Запрашивает in_channels, out_channels,  kernel_size и т.д. 
self.conv1 = nn.Conv2d (1, 20, 3) # Запрашивает in_features, out_features
self.fc1 = nn.Linear (2048

Рассчитайте размеры.

Есть два особенно важных аргумента для всех сетей уровня nn.Linear , о которых вы должны знать, независимо от того, сколько уровней в вашей сети. Самый первый аргумент и самый последний аргумент .Неважно, сколько полностью связанных слоев у вас между ними, эти измерения просты, как вы скоро увидите.

Если вы хотите передать изображение 28 x 28 в линейный слой, вы должны знать две вещи:

  1. Изображение 28 x 28 пикселей не может быть введено в качестве тензора [28, 28]. Это потому, что nn.Linear будет читать его как 28 пакетов из 28 векторов размерной длины. Поскольку он ожидает ввода [batch_size, num_features] , вам нужно как-то транспонировать его (см. view () ниже) .
  2. Размер вашей партии проходит через все ваши слои без изменений. Независимо от того, как ваши данные изменяются при прохождении через сеть, вашим первым измерением будет ваш batch_size , даже если вы никогда не увидите это число, явно записанное нигде в определении вашего сетевого модуля.

Используйте view (), чтобы изменить размеры вашего тензора.

image = image.view ( batch_size , -1)

Вы указываете свой batch_size в качестве первого числа, а затем «-1» в основном говорит Pytorch: «Вы выясните это другое число для меня… пожалуйста .«Теперь ваш тензор будет правильно подан в любой линейный слой. Сейчас мы говорим!

Итак, чтобы инициализировать самый первый аргумент вашего линейного слоя, передайте ему количество функций ваших входных данных. Для 28 x 28 наш новый тензор вида имеет размер [1, 784] (1 * 28 * 28):

Пример 3. Измените размер с помощью view (), чтобы он поместился в линейный слой

 batch_size = 1 # Simulate "изображение" в оттенках серого 28 x 28 пикселей 
input = torch.randn (1, 28, 28) # Используйте view (), чтобы получить [batch_size, num_features].
# -1 вычисляет недостающее значение с учетом другого dim.
input = input.view (batch_size, -1) # torch.Size ([1, 784 ]) # Инициализируем линейный слой.
fc = torch.nn.Linear ( 784 , 10) # Перенести смоделированное изображение в слой.
output = fc (input) print (output.shape)
>>> torch.Size ([1, 10])

R Запомните этот - если вы когда-нибудь переходите от вывода сверточного слоя к , вы должны изменить его размер с 4d на 2d, используя вид, как описано в примере изображения выше.

Итак, вывод conv [32, 21, 50, 50] должен быть «сглажен», чтобы стать тензором [32, 21 * 50 * 50]. И in_features линейного слоя также должны быть установлены на [21 * 50 * 50].

Второй аргумент линейного слоя, если вы передаете его другим слоям, называется H для скрытого слоя. Вы просто играете в позиционный пинг-понг с H и делаете его последним из предыдущего и первым из следующего, например:

  "" "Промежуточные измерения - это измерения скрытого слоя, вы просто передаете последний из предыдущего как первый из следующего."" " fc1 = torch.nn.Linear (784, 100)  # 100 - последний.  
fc2 = torch.nn.Linear (100, 50) # 100 - первый, 50 - последний.
fc3 = torch.nn.Linear (50, 20) # 50 - первое, 20 - последнее.
fc4 = torch.nn.Linear (20, 10) # 20 - первое. "" "Это тот же шаблон для сверточных слоев также используются только каналы, а не функции, которые передаются. "" "

Самый последний выход , также известный как выходной слой , зависит от вашей модели и вашей функции потерь.Если у вас есть 10 классов, как в MNIST, и вы решаете задачу классификации, вы хотите, чтобы вся ваша сетевая архитектура в конечном итоге консолидировалась в эти последние 10 единиц, чтобы вы могли определить, какой из этих 10 классов предсказывает ваш ввод.

Последний уровень зависит от того, что вы хотите вывести из своих данных. Действия, которые вы можете выполнить, чтобы получить нужный вам ответ, - это тема для другой статьи, потому что есть еще много чего. Но пока вы должны изучить все основы.

.Сверточная нейронная сеть

. Изучите сверточную нейронную сеть из… | автор: dshahid380

Изучите сверточную нейронную сеть с базового уровня и ее реализацию в Керасе

Содержание

  • Что такое CNN?
  • Почему мы должны использовать CNN?
  • Несколько определений
  • Уровней в CNN
  • Внедрение Кераса

Компьютерное зрение быстро развивается день ото дня. Одна из причин - глубокое обучение. Когда мы говорим о компьютерном зрении, нам приходит в голову термин сверточная нейронная сеть (сокращенно CNN), потому что здесь широко используется CNN.Примерами CNN в компьютерном зрении являются распознавание лиц, классификация изображений и т. Д. Это похоже на базовую нейронную сеть. CNN также имеет обучаемый параметр, такой как нейронная сеть, т.е. веса, смещения и т. Д.

Проблема с нейронной сетью прямого распространения

Предположим, вы работаете с набором данных MNIST, вы знаете, что каждое изображение в MNIST имеет размер 28 x 28 x 1 (черно-белое изображение содержит только 1 канал). Общее количество нейронов во входном слое будет 28 x 28 = 784, этим можно управлять. Что, если размер изображения 1000 x 1000, что означает, что вам нужно 10⁶ нейронов во входном слое.Ой! Кажется, для работы требуется огромное количество нейронов. Это правильно с вычислительной точки зрения. Итак, здесь идет сверточная нейронная сеть или CNN. Проще говоря, CNN извлекает особенности изображения и преобразует их в более низкое измерение, не теряя при этом его характеристик. В следующем примере вы можете видеть, что исходный размер изображения составляет 224 x 224 x 3. Если вы продолжите без свертки, вам понадобится 224 x 224 x 3 = 100, 352 числа нейронов во входном слое, но после применения свертки вы вводите размерность тензора уменьшена до 1 x 1 x 1000.Это означает, что вам нужно всего 1000 нейронов в первом слое нейронной сети прямого распространения.

Рис. Даунсэмплинг

Есть несколько определений, которые вы должны знать, прежде чем разбираться в CNN.

3.1 Представление изображения

Думая об изображениях, легко понять, что они имеют высоту и ширину, поэтому имеет смысл представить содержащуюся в них информацию с двухмерной структурой (матрицей), пока вы не вспомните, что изображения имеют цвета, и чтобы добавить информацию о цветах, нам нужно другое измерение, и именно тогда тензоры становятся особенно полезными.

Изображения кодируются в цветовые каналы, данные изображения представлены в каждой интенсивности цвета в цветовом канале в данной точке, наиболее распространенным из которых является RGB, что означает красный, синий и зеленый. Информация, содержащаяся в изображении, представляет собой интенсивность каждого цвета канала в ширину и высоту изображения, точно так же, как это

Рис. RGB-представление изображения

Таким образом, интенсивность красного канала в каждой точке с шириной и высотой может быть Представленные в матрице, то же самое касается синего и зеленого каналов, поэтому мы получаем три матрицы, и когда они объединяются, они образуют тензор.

3.2 Обнаружение краев

Каждое изображение имеет вертикальные и горизонтальные края, которые фактически объединяются, образуя изображение. Операция свертки используется с некоторыми фильтрами для обнаружения краев. Предположим, у вас есть изображение в градациях серого размером 6 x 6 и фильтр размером 3 x 3 (скажем). Когда изображение с оттенками серого 6 x 6 сворачивается с фильтром 3 x 3, мы получаем изображение 4 x 4. Сначала матрица фильтра 3 x 3 умножается на первый размер 3 x 3 нашего изображения в градациях серого, затем мы сдвигаем один столбец вправо до конца, после этого мы сдвигаем одну строку и так далее.

Операция свертки

Операция свертки может быть визуализирована следующим образом. Здесь размер нашего изображения составляет 4 x 4, а фильтр - 3 x 3, поэтому мы получаем результат после свертки 2 x 2.

Визуализация свертки

Если у нас есть размер изображения N x N и размер фильтра F x F, то после свертки результат будет

 (N x N) * (F x F) = (N-F + 1) x (N-F + 1) (примените это для вышеуказанного случая) 

3.3 Шаг и отступ

Шаг обозначает, сколько шаги мы продвигаемся в каждом шаге по свертке.По умолчанию это один.

Свертка с шагом 1

Мы можем заметить, что размер вывода меньше, чем ввод. Чтобы сохранить размер вывода, как на входе, мы используем отступы. Заполнение - это процесс симметричного добавления нулей во входную матрицу. В следующем примере лишние серые блоки обозначают отступ. Он используется для того, чтобы размер вывода совпадал с размером ввода.

Шаг 1 с отступом 1

Допустим, 'p' - это отступ

Первоначально (без заполнения)

 (N x N) * (F x F) = (N-F + 1) x (N-F + 1 ) --- (1) 

После применения заполнения

После применения заполнения

Если мы применим фильтр F x F во входной матрице (N + 2p) x (N + 2p) с заполнением, то мы получим размер выходной матрицы (N + 2р-Ж + 1) х (Н + 2р-Ж + 1).Как мы знаем, после применения отступов мы получим тот же размер, что и исходный входной размер (N x N). Следовательно, мы имеем

 (N + 2p-F + 1) x (N + 2p-F + 1), эквивалентное NxN 
N + 2p-F + 1 = N --- (2)
p = (F- 1) / 2 --- (3)

Уравнение (3) ясно показывает, что заполнение зависит от размера фильтра.

В CNN есть пять различных уровней

  • Входной уровень
  • Convo слой (Convo + ReLU)
  • Pooling layer
  • Fully connected (FC) layer
  • Softmax / logistic layer
  • Output layer
Различные слои CNN

4.1 Входной уровень

Входной уровень в CNN должен содержать данные изображения. Как мы видели ранее, данные изображения представлены трехмерной матрицей. Вам нужно преобразовать его в одну колонку. Предположим, у вас есть изображение размером 28 x 28 = 784, вам нужно преобразовать его в 784 x 1 перед подачей на ввод. Если у вас есть примеры обучения «m», то размер ввода будет (784, m).

4.2. Слой Convo

Слой Convo иногда называют слоем экстрактора признаков, потому что элементы изображения извлекаются внутри этого слоя.Прежде всего, часть изображения подключается к слою Convo для выполнения операции свертки, как мы видели ранее, и вычисления скалярного произведения между воспринимающим полем (это локальная область входного изображения, имеющая тот же размер, что и у фильтра) и фильтр. Результат операции - одно целое число выходного объема. Затем мы перемещаем фильтр по следующему принимающему полю того же входного изображения с помощью Stride и снова выполняем ту же операцию. Мы будем повторять один и тот же процесс снова и снова, пока не пройдемся по всему изображению.Выходные данные будут входными данными для следующего слоя.

Слой Convo также содержит активацию ReLU для обнуления всех отрицательных значений.

4.3. Уровень объединения

Источник: сверточная нейронная сеть CS231n

Уровень объединения используется для уменьшения пространственного объема входного изображения после свертки. Он используется между двумя сверточными слоями. Если мы применим FC после слоя Convo без применения объединения или максимального объединения, это будет затратно с точки зрения вычислений, и нам это не нужно. Таким образом, максимальное объединение - это единственный способ уменьшить пространственный объем входного изображения.В приведенном выше примере мы применили максимальное объединение в одном срезе глубины со значением Stride, равным 2. Вы можете заметить, что входное значение 4 x 4 уменьшено до измерения 2 x 2.

На уровне объединения нет параметра, но у него есть два гиперпараметра - Фильтр (F) и Шаг (S).

В общем, если у нас есть входной размер W1 x h2 x D1, то

W2 = (W1 − F) / S + 1

h3 = (h2 − F) / S + 1

D2 = D1

Где W2, h3 и D2 - ширина, высота и глубина вывода.

4.4. Полностью связанный уровень (FC)

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

4.5. Softmax / Логистический уровень

Softmax или логистический уровень - последний уровень CNN. Он находится в конце уровня FC. Логистика используется для двоичной классификации, а softmax - для множественной классификации.

4.6. Выходной слой

Выходной слой содержит метку в форме горячего кодирования.

Теперь вы хорошо разбираетесь в CNN. Давайте реализуем CNN в Керасе.

Мы будем использовать набор данных CIFAR-10 для создания классификатора изображений CNN. Набор данных CIFAR-10 содержит 10 различных меток

  • Самолет
  • Автомобиль
  • Птица
  • Кот
  • Олень
  • Собака
  • Лягушка
  • Лошадь
  • Корабль
  • Грузовик

данные для обучения и данные обучения данные изображения. Размер изображения в CIFAR-10 составляет 32 x 32 x 3.Поставляется с библиотекой Keras.

Рис. Визуализация модели

Если вы используете коллаборацию Google, убедитесь, что вы используете графический процессор. Чтобы проверить, включен ли ваш графический процессор или нет. Попробуйте следующий код.

Вывод:

 Найден GPU по адресу: / device: GPU: 0 

Прежде всего, импортируйте все необходимые модули и библиотеки.

Затем загрузите набор данных и разделите его на обучающий и тестовый наборы.

Мы напечатаем форму обучающей выборки, форму тестовой выборки и общее количество классов, присутствующих в CIFAR-10.Как мы видели ранее, существует 10 классов. В качестве примера мы напечатаем два примера изображения из обучающего набора и тестового набора.

Выход:

Найдите форму входного изображения, затем измените его во входной формат для наборов для обучения и тестирования. После этого измените все типы данных на float.

Нормализуйте данные между 0–1, разделив данные поезда и тестовые данные на 255, затем преобразуйте все метки в один горячий вектор с помощью функции to_catagorical () .

Отобразить изменение метки категории, используя однократное кодирование.

Вывод:

 Исходная метка 0: [6] 
После преобразования в категориальную (горячую):
[0. 0. 0. 0. 0. 0. 1. 0. 0. 0.]

Теперь создадим нашу модель. Мы добавим слои Convo, а затем объединим слои. Затем мы подключим слой Dense (FC) для прогнозирования классов. Входные данные подаются на первый уровень Convo, выходные данные этого слоя Convo действуют как входные данные для следующего слоя Convo и так далее. Наконец, данные поступают на уровень FC, который пытается предсказать правильные метки.

Инициализируйте все параметры и скомпилируйте нашу модель с помощью оптимизатора rmsprops.Есть много оптимизаторов, например adam, SGD, GradientDescent, Adagrad, Adadelta и Adamax, не стесняйтесь экспериментировать с ними. Здесь партия 256 с 50 эпохами.

model.summary () используется для просмотра всех параметров и форм в каждом слое наших моделей. Вы можете заметить, что общие параметры составляют 276, 138, а общее количество обучаемых параметров - 276, 138. Необучаемый параметр равен 0.

Выход:

Сводка модели

После компиляции нашей модели мы обучим нашу модель с помощью fit () метод, затем оцените его.

Вывод:

После обучения мы получили точность 83,86% и точность проверки 75,48%. На самом деле это совсем не плохо.

График потерь и эпох, график точности и эпох

Поздравляем! Вы создали сверточную нейронную сеть в Keras, понимая ее основные концепции. Не стесняйтесь экспериментировать с ним, изменяя его гиперпараметры, и дайте мне знать в разделе комментариев.

Вы можете найти весь код в моем Github

Ссылки:

  1. CS231n Сверточная нейронная сеть
  2. Документация Keras
  3. Лаборатория глубокого обучения
  4. углубленное изучение.ai курс по сверточным нейронным сетям
.

6.4. Несколько каналов ввода и несколько каналов вывода - погрузитесь в документацию Deep Learning 0.16.0

Хотя мы описали несколько каналов, составляющих каждое изображение (например, цветные изображения имеют стандартные каналы RGB для обозначения количество красного, зеленого и синего) и сверточных слоев для нескольких каналов в Разделе 6.1.4.1, до сих пор мы упростил все наши числовые примеры, работая только с одним входной и один выходной канал. Это позволило нам подумать о наших входы, ядра свертки и выходы - каждый как двумерный тензоры.

Когда мы добавляем каналы в микс, наши входы и скрытые представления оба становятся трехмерными тензорами. Например, каждое входное изображение RGB имеет форму \ (3 \ раз h \ times w \). Мы называем эту ось размером 3, как канал размер . В этом разделе мы рассмотрим подробнее посмотрите на ядра свертки с несколькими входами и несколькими выходами каналы.

6.4.1. Несколько входных каналов¶

Когда входные данные содержат несколько каналов, нам нужно построить ядро свертки с тем же количеством входных каналов, что и вход data, чтобы он мог выполнять взаимную корреляцию с входными данными.Предполагая, что количество каналов для входных данных равно \ (c_i \), количество входных каналов ядра свертки также должно быть \ (c_i \). Если форма окна нашего ядра свертки \ (k_h \ times k_w \), тогда, когда \ (c_i = 1 \), мы можем думать о нашем ядро свертки как двумерный тензор формы \ (k_h \ times k_w \).

Однако, когда \ (c_i> 1 \), нам нужно ядро, содержащее тензор shape \ (k_h \ times k_w \) для на каждые входных каналов. Конкатенация эти \ (c_i \) тензоры вместе дают ядро ​​свертки формы \ (c_i \ times k_h \ times k_w \).Поскольку ядро ​​ввода и свертки у каждого есть \ (c_i \) каналы, мы можем выполнить взаимную корреляцию над двумерным тензором входа и двумерный тензор ядра свертки для каждого канала, сложение результатов \ (c_i \) вместе (суммирование по каналам) в дают двумерный тензор. Это результат двумерного взаимная корреляция между многоканальным входом и ядро свертки с множеством входов.

На рис. 6.4.1 мы демонстрируем пример двумерная взаимная корреляция с двумя входными каналами.Затененный части - это первый элемент вывода, а также вход и ядро элементы тензора, используемые для вычисления выходных данных: \ ((1 \ times1 + 2 \ times2 + 4 \ times3 + 5 \ times4) + (0 \ times0 + 1 \ times1 + 3 \ times2 + 4 \ times3) = 56 \).

Рис. 6.4.1 Вычисление взаимной корреляции с 2 входными каналами.

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

 из d2l импортировать mxnet как d2l из mxnet импортировать np, npx npx.set_np () def corr2d_multi_in (X, K): # Сначала перебираем 0-е измерение (измерение канала) `X` и # `K`. Затем сложите их вместе вернуть сумму (d2l.corr2d (x, k) для x, k в zip (X, K)) 
 от d2l импортная горелка как d2l импортный фонарик def corr2d_multi_in (X, K): # Сначала перебираем 0-е измерение (измерение канала) `X` и # `K`. Затем сложите их вместе вернуть сумму (d2l.corr2d (x, k) для x, k в zip (X, K)) 
 из d2l импортировать тензорный поток как d2l импортировать тензорный поток как tf def corr2d_multi_in (X, K): # Сначала перебираем 0-е измерение (измерение канала) `X` и # `K`.Затем сложите их вместе return tf.reduce_sum ([d2l.corr2d (x, k) for x, k in zip (X, K)], axis = 0) 

Мы можем построить входной тензор X и тензор ядра K соответствующие значениям на рис. 6.4.1 для проверки результат операции взаимной корреляции.

 X = np.array ([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0]], [[1.0, 2.0, 3.0], [4.0, 5.0, 6.0], [7.0, 8.0, 9.0]]]) K = np.array ([[[0.0, 1.0], [2.0, 3.0]], [[1.0, 2.0], [3.0, 4.0]]]) corr2d_multi_in (X, K) 
 массив ([[56., 72.], [104., 120.]])) 
 X = torch.tensor ([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0]], [[1.0, 2.0, 3.0], [4.0, 5.0, 6.0], [7.0, 8.0, 9.0]]]) K = torch.tensor ([[[0.0, 1.0], [2.0, 3.0]], [[1.0, 2.0], [3.0, 4.0]]]) corr2d_multi_in (X, K) 
 тензор ([[56., 72.], [104., 120.]])) 
 X = tf.constant ([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0]], [[1.0, 2.0, 3.0], [4.0, 5.0, 6.0], [7.0, 8.0, 9.0]]]) K = tf.constant ([[[0.0, 1.0], [2.0, 3.0]], [[1.0, 2.0], [3.0, 4.0]]]) corr2d_multi_in (X, K) 
  

6.4.2. Несколько выходных каналов¶

Независимо от количества входных каналов, до сих пор мы всегда заканчивали с одним выходным каналом. Однако, как мы обсуждали в Раздел 6.1.4.1, оказывается необходимым для иметь несколько каналов на каждом уровне.В самой популярной нейронной сети архитектуры, мы фактически увеличиваем размер канала по мере продвижения выше в нейронной сети, обычно понижающая дискретизация для компромисса пространственное разрешение для большей глубины канала . Интуитивно вы могли думайте о каждом канале как о реагировании на какой-то другой набор функций. Реальность немного сложнее самых наивных интерпретаций эта интуиция, поскольку представления не изучаются независимо, но скорее оптимизированы для совместной работы.Так что не может быть канал изучает краевой детектор, а скорее это какое-то направление канальное пространство соответствует обнаруживаемым краям.

Обозначим \ (c_i \) и \ (c_o \) количество входов и выходов. каналов соответственно, и пусть \ (k_h \) и \ (k_w \) будут высота и ширина ядра. Чтобы получить вывод с несколькими каналами, мы можем создать тензор ядра формы \ (c_i \ times k_h \ times k_w \) для каждые выходных каналов. Объединяем их на выходной канал размерность, так что форма ядра свертки \ (c_o \ times c_i \ times k_h \ times k_w \).В кросс-корреляции операций, результат на каждом выходном канале вычисляется из ядро свертки, соответствующее этому выходному каналу, и принимает входные данные со всех каналов во входном тензоре.

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

 def corr2d_multi_in_out (X, K): # Перебираем 0-е измерение `K` и каждый раз выполняем # операции взаимной корреляции с входом `X`. Все результаты # сложены вместе вернуть нп.стек ([corr2d_multi_in (X, k) для k в K], 0) 
 def corr2d_multi_in_out (X, K): # Перебираем 0-е измерение `K` и каждый раз выполняем # операции взаимной корреляции с входом `X`. Все результаты # сложены вместе вернуть torch.stack ([corr2d_multi_in (X, k) для k в K], 0) 
 def corr2d_multi_in_out (X, K): # Перебираем 0-е измерение `K` и каждый раз выполняем # операции взаимной корреляции с входом `X`. Все результаты # сложены вместе вернуть tf.стек ([corr2d_multi_in (X, k) для k в K], 0) 

Мы строим ядро ​​свертки с 3 выходными каналами с помощью объединяя тензор ядра K с K + 1 (плюс по одному для каждого элемент в K ) и K + 2 .

 К = np.stack ((К, К + 1, К + 2), 0) K.shape 
 K = torch.stack ((K, K + 1, K + 2), 0) K.shape 
 K = tf.stack ((K, K + 1, K + 2), 0) K.shape 
 TensorShape ([3, 2, 2, 2]) 

Ниже мы выполняем операции взаимной корреляции с входным тензором X с тензором ядра K .Теперь на выходе 3 канала. В результат первого канала согласуется с результатом предыдущий входной тензор X и канал с несколькими входами, с одним выходом канальное ядро.

 corr2d_multi_in_out (X, K) 
 массив ([[[56., 72.], [104., 120.]], [[76., 100.], [148., 172.]], [[96., 128.], [192., 224.]]]) 
 corr2d_multi_in_out (X, K) 
.

Смотрите также