Модное окрашивание — краска 2019 на средние волосы (фото)!
Модное окрашивание волос женщины (смотрите в статье примеры на фото) всегда популярно, ведь волосы любой длины, и средней тоже – истинное украшение леди, дарованное ей природой. В 2019 году вы имеете шанс привнести в свой и без того классный образ некую изюминку, оттенив на первый взгляд простенькую прическу модным цветом.
Окрашивание волос средней длины в 2019 году — какие цвета модны?
Как всегда, законы моды позволяют нам придать своим прическам новые запоминающиеся оттенки. Волосы бывают разные, правда, для этой статьи мы отсортировали варианты окраса для средней длины. Так вот, обладательницам такой шевелюры стилисты окрасили бы волосы в блонд. Вы думаете, в надоевший всем блонд золотистого тона? Что вы! Платина на пике моды. Хотя модницы не обходят стороной и рыжеватый или пшеничный отлив.
А что говорить о пикантном оттенке блонда – клубничном. В 2019 году ахнут все, кто глянет на вас с прической, которую вам оттенил блонд «Клубника». Это восхитительный стиль.
Модное окрашивание волос (перед вами фото) подразумевает лишь блонд? Никак нет! Остановите взор на изысканном кофейном тоне. А яркости и выразительности вам добавит тон корицы, к примеру. Согласны? Оригинален и отлив шоколада.
Цвет корицы на волосах в 2019 году
Если у вас средние волосы, то не бойтесь экспериментировать с черным. Парикмахеры любят этот цвет. А им нужно доверять.
«Рыжеволосая лисичка» также в 2018 году привлечет внимание прохожих. Причем, палитра цветов и здесь многогранна – от теплого нежно-золотистого до рыжего огненно-яркого.
А новшество этого года в том, что волосы окрашивать модно теперь путем перехода из омбре приглушенного в контрастное.
Броско, но привлекательно! Экстравагантные стильные леди, попробуйте пряди прически окрасить в яркие цвета. Не окажется лишней и экзотика. Разумеется, это не для всех, зато это уж точно модно для года капризной обезьяны.Но кому, как ни модницам, знать о таком явлении, как сезонность в моде? Для снежных времен, весеннего таяния, летней бодрости и осеннего спокойствия, к примеру, есть некие рамки в стильном приукрасе женских причесок. И если мы не хотим выходить за их пределы, то обратим внимание на окрашивание волос средней длины в 2019 году, законами которого руководят сами диктаторы мод.
Как мы уже сказали, блонд «Платина» будет уместен этой зимой, удачно отражая модную во все времена недоступность и некую холодность девушки. Конечно, для зимы и пепельные тона стильны.
Далее грядет весенняя откровенность, потому волосы стоит обратить в цвета рыжеватые. Решение окажется модным, если придадите волосам охристый оттенок.
Какими должны быть волосы летом 2019 года? Натуральность в летней моде, и только она! Потому не прогадаете, если окрасите волосы средней длины в какао или каштан.
Кстати, самый удачный для волос летний вариант – обмре. Яркость никто не отменял! Об этом уже шла речь ранее.
Что же делать с волосами осенью? Мы уже обмолвились о спокойствии, которую несет в себе осень, по этой причине прическа должна приобрести шоколадный или черный оттенок. Такие тона сотворят чудесный образ страстной, но недосягаемой и в то же время спокойной натуры.
Роскошность женской шевелюры подчеркнут все перечисленные в статье цвета. Но если однотонность вам не по душе и вы считаете себя более оригинальной особой, прибегните к подчеркиванию нескольких прядей более оживляющими отливами.
Модное окрашивание на средние волосы (фотоколлекция 2019)
Перед вами коллекция примеров леди с волосами средней длины, окрашенными в модные тона года обезьяны:
Ну, вот, теперь как красить волосы средней длины в 2019-ом, вам известно. Дерзайте!
Если вы нашли ошибку в статье, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Понравилась статья? Поделитесь с друзьямиТатьяна Гордеева. Все работы автора
Еще по этой теме
Окрашивание волос может изменить образ любой женщины кардинально. Поэтому в текущем сезоне модное окрашивание волос фото 2018 будет головокружительно ярким. Стоит …
Подробности…Стрижки на средние волосы в 2019 будут яркими и разнообразными, с оригинальными окрашиваниями и текстурами. Сегодня мы рассмотрим 14 самых креативных …
Подробности…Когда приходит осень, то природа словно обновляется. Вместе с ней стремятся к обновлению и женщины, и их первостепенной задачей становится …
Подробности…Отчего стрижки на средние волосы так всех интересуют? Кстати, фото, отображающие модные в 2019 году прически, вы увидите в этой …
Подробности…Модное окрашивание волос фото 2018
Свадебные прически на средние волосы с фатой и без: 100 фото 2019 года
Модные стрижки на средние волосы в 2019 году — 150 фото
Стрижки и модное окрашивание волос в 2018 году
Стильная фотоподборка «Модные стрижки на средние волосы 2019»
Щадящее окрашивание волос омбре – модные цвета волос осень 2019 — фото
Омбре модное окрашивание 2019 Instagram
glavred.info/2019_10/thumb_files/120×90/1570514514-9615.jpg» data-src=»https://images.glavred.info/2019_10/1570514514-9615.jpg»>Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
glavred.info/2019_10/thumb_files/120×90/1570514524-5438.jpg» data-src=»https://images.glavred.info/2019_10/1570514524-5438.jpg»>Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
glavred.info/2019_10/thumb_files/120×90/1570514538-6484.jpg» data-src=»https://images.glavred.info/2019_10/1570514538-6484.jpg»>Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
glavred.info/2019_10/thumb_files/120×90/1570514547-3282.jpg» data-src=»https://images.glavred.info/2019_10/1570514547-3282.jpg»>Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
glavred.info/2019_10/thumb_files/120×90/1570548145-6159.jpg» data-src=»https://images.glavred.info/2019_10/1570548145-6159.jpg»>Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
glavred.info/2019_10/thumb_files/120×90/1570565823-6780.jpg» data-src=»https://images.glavred.info/2019_10/1570565823-6780.jpg»>Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
glavred.info/2019_10/thumb_files/120×90/1571246355-8574.jpg» data-src=»https://images.glavred.info/2019_10/1571246355-8574.jpg»>
Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
Омбре модное окрашивание 2019 Instagram
Говорят, что для изменения жизни к лучшему следует поменять ее сценарий. Но есть и другой способ – можно изменить цвет волос при помощи модно окрашивания волос омбре.
Окрашивание волос омбре имеет настолько чудодейственный эффект, что даже меняет походку женщин. Еще бы, ведь цвет волос – невероятной красоты, образ сразу – как у голливудской звезды.
Кстати, окрашивание волос омбре появилось в 2013 году, и многие вначале думали, что очень скоро мода на омбре канет в лету. Но из яркого и незабываемого тренда сезона омбре превратилось в настоящую классику.
Правда, с каждым годом окрашивание волос омбре обрастает новыми «фишками».
Если говорить в общем, то технология окрашивания омбре — это вытягивание цвета по всей длине волос, при этом верх всегда темный, а низ — всегда светлый. К слову, верх чаще всего остается нетронутым или затемняется, что делает это окрашивание довольно щадящим.
Главред собрал самые свежие варианты окрашивания волос из Instagram.
Окрашивание волос омбре 2019: новые тренды и цвета
В 2019 году в моде натуральные сочные тона — золотистый блонд, карамельный блонд, пряный шоколад, а также вся каштановая гамма.
Важно, омбре в 2019 – очень плавные переходы цвета, поэтому от резкого перехода цвета лучше отказаться.
В сезоне осень 2019 красивое и модное омбре – это большое обилие оттенков, которое создает шикарный объем шевелюре.
Омбре 2019 для холодных оттенков — это перламутровый блонд, пепельный жемчуг, платину, порцеляновый блонд.
Новым трендом в окрашивании волос при помощи технологии омбре в 2019 году стало зональное осветление волос – только отдельные пряди, кончики волос или только верхний слой шевелюры.
В 2019 году модными стали темные шоколадные оттенки, вся красно-огненная палитра, каштановый, кофейный тон, темная корица и горькое какао.
В 2019 году, омбре и короткие волосы, наконец, «подружились», поэтому омбре стало доступным для всех без исключения.
Читайте такжеШатуш – самое модное окрашивание 2019, которое растягивает цвет — фотоНапомним, ранее сообщалось, розовый блонд – стильное окрашивание волос 2019-2020 со вкусом свободы. Розовый блонд – идеальное решение только для девушек и молоденьких женщин. Стилисты категорически не советуют тонировать волосы в розовый цвет дамам постарше – ибо эффект, по их мнению, может не оправдать ожидания – им подходит только окрашивание клубничный блонд.
самые модные окрашивания волос зимы 2019
Иван Савски, арт-директор салона профессионального окрашивания волос WOW: «Этой зимой можно все! Актуальными остаются как натуральные оттенки волос, так и приглушенные неоновые (голубой, лавандовый, розовый, лимонный — выбирайте тот, что сочетается с вашим цветотипом). Главное — чтобы это смотрелось гармонично, волосы были ухоженными, а цвет — в меру ярким.
Среди фаворитов в светлых оттенках — платина, медовый блонд, спокойная медь и розовое золото. И никакого красного!
Если вы предпочитаете темные оттенки, то обратите внимание на горький шоколад и каштан, а также натуральные насыщенные цвета с золотым или пепельным подтоном.
Благодаря огромному разнообразию техник окрашивания, которые сейчас в тренде, вы можете позволить себе как однотонное окрашивание (от корней и до кончиков), так и более сложные варианты. Например, шатуш (эффект выгоревших на солнце волос), при котором краска наносится непосредственно от корней и тон ее постепенно становится более светлым. Такой вариант больше подходит блондинкам, хотя брюнетки также могут сделать такое окрашивание, чтобы освежить образ.
ШатушМожно выбрать балаяж — окрашивание, при котором светлые и темные пряди гармонично сочетаются друг с другом. Краситель наносится с небольшим отступом от корней: таким образом достигаются глубина и контрастность цветов. Балаяж я обычно рекомендую брюнеткам.
БалаяжКонтуринг — эта техника, позволяющая корректировать овал лица, перекочевала в окрашивание из макияжа. Общую массу волос затемняют, а пряди по контуру лица и кончики осветляют. На мой взгляд, это самое эффектное окрашивание, которое очень популярно среди знаменитостей и обычных девушек уже не первый сезон. Что особенно приятно, контуринг подходит абсолютно всем.
КонтурингAir Touch — универсальная техника, с помощью которой можно выполнить любой из вышеперечисленных вариантов окрашивания, только с еще более плавными переходами. Air Touch подходит обладательницам тонких волос, мечтающих отрастить длину. Мастер берет небольшую прядь и выдувает волосы феном на протяжении нескольких секунд. Таким образом тонкие, поврежденные отделяются, а та часть, что осталась у мастера в руках, затем осветляется.
Air TouchЦвет ваших волос не должен быть плоским и однородным. Пара золотистых прядей у лица или по всей длине на темных волосах придадут прическе визуальный объем. Эти цветные блики могут быть слабо выраженными или, наоборот, контрастирующими с общей массой волос. Выбор только за вами!»
Источник фотографий: Getty Images, архив пресс-служб, @izabelgoulart, @gigihadid
100 лучших идей и новинок на фото
Хотите перемен в своем образе? Тогда начните с прически. Не обязательно кардинально менять стрижку и длину волос, достаточно освежить оттенок локонов, преобразив себя с новыми трендами 2018.
Предлагаем вашему вниманию самые модные техники окрашивания волос, которые будут на пике популярности в 2018 году. Воспользовавшись ими, вы без сомнения будете выглядеть роскошно и привлекательно.
Актуальные тренды в окрашивании волос 2018
Однотонное окрашивание волос давно перестало удовлетворять модниц, желающих выразить с помощью цвета локонов свой характер и предпочтения.
В моде градиентное и трафаретное окрашивание, колоризация отдельных прядей и что самое важное изменилась цветовая гамма красок для волос.
Наряду с привычными сочетаниями темный-светлый, все чаще модницы останавливают свой выбор на ярких сочных оттенках, которые поражают своей экстравагантностью.
Сплэшлайтс: Тренд 2018
Технология окрашивания сплэшлайтс достаточно новая, но уже полюбилась модницами всех возрастов.
Splashlight позволяет создать на волосах подобие солнечного перелива, который коснулся волос и освещает их ровной полоской.
Для создания солнечного «поцелуя», так еще называют технологию Splashlight, используется желтая цветовая палитра. Чаще всего это медный, золотой, бронзовый цвет, песочный или соломенный.
Создать солнечный блик на волосах самостоятельно вряд ли получится, поэтому для получения эффекта дневного света на шевелюре лучше обратиться к мастеру.
Модное 3-D окрашивание 2018
Брондирование настолько популярно среди девушек, что применяется ими на протяжении уже нескольких лет. Для гармоничного и действительно красивого брондирования необходимо взять сразу три оттенка, именно тогда результат будет выглядеть естественно.
Основная задача 3-D брондирования – создание природного натурального объема, при котором шевелюра будет выглядеть пышно и объемно.
Преимущество брондирования в том, что эта техника подходит обладательницам абсолютно любого цвета волос, как темноволосым, так и светловолосым девушкам. Но на последних она выглядит намного эффектнее.
Плавный градиент: Омбре-сомре 2018
Омбре сложно назвать новинкой. Градиентное окрашивание – классика современного парикмахерского искусства, которое надолго останется в предпочтениях модниц.
Техника омбре представляет собой сочетание двух и более тонов одного и того же цвета, либо совершенно разных по тону цветов.
Изюминка техники омбре – переход от одного цвета к другому. Он должен быть максимально плавным и лаконичным. Даже если при окрашивании используются разные контрастные цвета, то переход между ними не бросается в глаза.
Омбре – универсальная техника, которая подойдет для волос разной длины от ультра-коротких до длинных. При этом не ограничен возраст использования этой техники, меняются только цвета. Для дам постарше – это светлые спокойные оттенки, для молоденьких девушек можно использовать совершенно иные яркие бросающиеся в глаза цвета.
Техника омбре прекрасно выглядит с различными укладками – прямыми волосами, волнистыми локонами и даже с завитыми волосами.
Переход между цветами не теряется даже если собрать волосы в хвост, косичку или пучок – все это смотрится привлекательно и красиво.
Омбре – та техника, где можно дать волю фантазии и выбрать любые цвета для окрашивания, порой даже те, которые на первый взгляд не сочетаются.
В тренде холодные цвета – медный, пшеничный, пастельно-розовый, черный самых различный оттенков.
Мелирование: Привычная классика с новыми гранями
Техника мелирования – первые попытки мастеров разнообразить образ девушки с помощью выделения отдельных прядей другим цветом.
К тому же мелирование можно сделать в домашних условиях, что быстро подхватили модницы всех возрастов.
Мелирование предполагает использование комбинации нескольких светлых оттенков, незначительно отличающихся друг от друга.
В новом 2018 году в тренде натуральные цвета с использование естественной палитры, которые гармонично выглядят на коротких, средних и длинных волосах. Подобное сочетание позволяет создать эффект чуть-чуть выгоревших прядей.
Наиболее актуальны для мелирования платиновые и приглушенные красные оттенки.
Техника балаяж: Модная альтернатива омбре
Балаяж – одна из самых модных новинок 2018. Для окрашивания используются различные оттенки одного и того же цвета, которые создают естественный эффект выгоревших на солнце волос.
Переход от одного цвета к другому аналогичен технике омбре. В балаяже используется плавный градиентный переход с захватом отдельных прядей на голове.
Шатуш: модная тенденция 2018
Впервые взглянув на технику окрашивания шатуш можно с легкостью ступать ее с омбре и балаяж. Действительно все эти техники имеют что-то общее, но шатуш лучше выглядит на темных волосах.
Эффект выгоревших прядей в технике шатуш также плавно переходит от одного цвета к другому, но в отличие от омбре, окрашенные локоны расположены хаотично, поэтому эффект четкого градиентного перехода отсутствует.
Техника шатуш великолепно выглядит на средних и длинных волосах, на которых наиболее выгодно открывается игра красок.
В тренде темные выразительные сочетание оттенков – кофе с молоком, темной и бежевый, янтарный, медовый, лесной орех, тициан. Именно эти тона прекрасно выглядят на темных волосах, для обладательниц которых собственно и предназначена техника шатуш.
Трафарет на волосах: Актуальный тренд для ярких личностей
Хотите выглядеть стильно и необычно, то техника трафарет именно то, что вам нужно.
Техника трафарет позволяет нанести на волосы разнообразные рисунки и принты, которые выглядят смело и экстравагантно.
Наиболее популярны принты с геометрическими и животными тематиками, элементами флоры. Для тех, кто жаждет большей креативности, может создать трафарет по собственному эскизу.
Чаще всего трафаретное окрашивание привлекает молодых неформальных девушек. Сложно себе представить деловую леди с выразительными принтами на голове.
В тренде леопардовые трафареты, витиеватые волны, растительные узоры – крупные цветы, листья, восточные узоры, кружево и другие.
Яркие цвета 2018: Модное окрашивание color melting
Модные техники окрашивания волос не обходятся без ярких радужных прядей. Невероятное сочетание перламутровых цветов, драгоценных опалов наполняет шевелюру великолепным сиянием.
Эффект таяния цвета создает яркий и красивый результат окрашивания, позволяя забыть о сложных укладках.
Само окрашивание color melting уже позволяет говорить о законченной и гармоничной прическе.
Натуральность и естественность по-прежнему в тренде 2018. Даже если используются яркие тона, то они максимально приближены к натуральным.
В 2018 модны нескучные сложные техники окрашивания, призванные внести нотку разнообразия в вашу природную красоту.
The Paris Review — Горчица, цвет кандидатов в миллениалы, проблемные латте и картины аборигенов
ФОТО: СЮЗАНН КОРДЕЙРО / AFP / GETTY IMAGES.
В конце прошлого года я оказался на встрече с тремя другими женщинами, и все мы были одеты одинаково. Синие джинсы разной стирки, неуклюжие, черные ботинки в стиле Челси с застежками, парки (падающие на спинку наших стульев) и горчично-желтые свитера. Мы заметили это и засмеялись. «Это единственный вид желтого, который я ношу», — сказала женщина с тонкими светлыми волосами.«Это единственное, что мне нравится».
Этот коричневатый, оранжево-желтый цвет универсален? Учитывая, сколько людей я вижу в нем, должно быть. (Или, возможно, мы решили массово, что то, что «лестно» больше не имеет значения.) Увлечение горчицей конца 2010-х, похоже, началось на подиумах и в бутиках, но быстро распространилось на товары для дома и другие потребительские товары. продукты. Вы можете купить горчично-желтые современные диваны середины века у модных стартапов и горчично-желтые лампы у дизайнеров высокого класса.Кашемир цвета приправы свешивается на сделанных на заказ вешалках в обычных магазинах, а акриловые смеси цвета приправы продаются онлайн в Target. Он стал на удивление повсеместным, особенно для цвета, который так сильно склоняется к коричневому. Это не первичный, игривый, ярко-желтый цвет одуванчика. Это не цвет нарциссов, весны или цветов. Для этого это слишком мутно. Это цвет поздней летней аллергии, хорошо укомплектованных кладовых и хэштегов. Это цвет бархатцев, отпугивающих вредителей, и высокорослых культур.Это цвет урожая, который обычно проявляется в конце года, когда трава начинает сохнуть и дикие индейки начинают выходить на дорогу. Но в этом году, вместо того, чтобы ждать, когда вернется сезон, горчица повисла. Он продержался всю зиму, и теперь, когда обычно приходит очередь пастели и цветов, это горчичное пятно остается.
Он тоже становится больше. Я впервые узнал о желтых тенденциях благодаря мощным навыкам распознавания тенденций редактора моды Харлинга Росс из Man Repeller.Еще в 2017 году она призывала к полностью желтым нарядам и провозглашала желтое поколение Z наследником розового тысячелетия. Два года спустя оба цвета остаются в моде, а горчичный становится чуть заметнее. В начале апреля 2019 года писательница Эмили Гулд заметила в Твиттере о промывании горчицей. «Как мы называем этот цвет, от которого сейчас невозможно избавиться?» спросила она. «Горчица? Золотарник? Поколение Z желтый? » Посыпались предложения: куркума справедливой торговли, микадо, желтый аура, желтый «сухой бар» и золотой час, каждый из которых пытается превзойти другого с насмешливой, самосознательной модностью.Разговор имел тон статьи Максуини. Забавно, но только если вы уже получите .
Затем, всего несколько недель спустя, новый представитель крутых миллениалов и нетерпеливых победителей, кандидат в президенты Пит Буттигиг, запустил свой веб-сайт, который фанаты встретили с волнением, обычно присущим неожиданному падению Бейонсе. Честно говоря, официальное объявление Буттигига о его кандидатуре было не такой неожиданностью, как его дизайнерские решения. Для этой самой большой возможности брендинга в своей жизни Буттиджич привлек бруклинскую студию Hyperakt.Они создали онлайн-набор инструментов для дизайна, в котором вы можете настроить свое снаряжение Buttigieg. Вы можете выбирать из ограниченной коллекции шрифтов и цветов. Надпись в стиле ретро, возврат к ранней Америке, а оттенки, вероятно, можно было бы охарактеризовать как «классические — с изюминкой». Или, как выразилась Эстер Ван, «мягкий, запутанный, простой… идеальное воплощение его кампании, а также его идеологии». В этой минималистичной палитре, между «речным синим» и «спокойным синим», находится золотой оттенок. Критики окрестили его горчицей-миллениалом.Но мэр Пит, всегда политический деятель и всегда выступавший за настоящую Америку, вместо этого называет ее «желтым сердцем».
Понятно, что это цвет многих имен, и все они исправны. В наши дни вы можете назвать цвет, как хотите, исключительно благодаря влиянию Интернета. Но стоит помнить, что до того, как появилась желтая или куркума или даже сама горчица, была охра. До того, как у нас появились крупные корпорации, продающие одни и те же недолговечные товары по всему миру, у нас была охра.
Охра была одним из первых пигментов, используемых людьми, и она была получена в готовом виде из недр земли. Хотя охра обычно относится к матовому золотому цвету, пигмент может варьироваться по оттенку от светло-желтого до кирпично-красного до шоколадно-коричневого (хотя название происходит от древнегреческого слова, обозначающего бледно-желтый, в настоящее время его обычно понимают как «желтовато-коричневый»). »). Пигмент изготовлен из встречающейся в природе смеси глины, песка и гидроксида железа. Иногда древние люди использовали эту минеральную смесь и превращали ее в цветные карандаши старой школы.(Археологи полагают, что самым ранним известным в истории рисунком был узор, заштрихованный небольшим количеством красной охры, созданный около 73000 лет назад в южноафриканской пещере.) Иногда они натирали его своей кожей, изменяя линии и плоскости. их лица, превращающие их тела в странные, новые создания. Иногда они измельчали его в порошок и добавляли связующее для создания краски. Доисторические люди в Африке, Австралии, Европе и Америке использовали охру для украшения скал, пещер и, вероятно, других вещей, которые разложились, сгнили и были потеряны для истории. Они рисовали силуэты бизонов и оленей, силуэты своих рук и абстрактные узоры, известные как «взмахи пальцами». Хотя эти ранние художники явно обладали навыками — их чудовищные портреты демонстрируют пристальное внимание к анатомии и чувству движения — они обычно изображали людей в виде маленьких фигурок из палочек. Возможно, существовало религиозное табу на рисование изображений людей, а возможно, они просто не хотели рисовать себя. Либо они считали себя слишком важными, либо слишком незначительными — мы, наверное, никогда не узнаем.
Рисунок быка, выполненный охрой, обнаруженный в пещере Лубанг Джериджи Сале, Восточный Калимантан, Борнео, Индонезия, датированный 40 тыс. Лет назад.
Но охра была важна. Это был один из первых материалов, которые мы когда-либо добывали. Задолго до того, как мы начали копать золото, люди эксгумировали железо. Самая ранняя охровая шахта расположена в западном Свазиленде. «Львиная пещера» использовалась людьми каменного века еще 43 000 лет назад (сравните это с самым ранним золотым рудником, который, вероятно, действовал 7 000 лет назад).Охра была не просто краской — это был способ обрести цвет, способ помазать мертвых и прославить живых. Охра позволила древним людям контролировать то, что они видели в мире. Его было много, и оно есть до сих пор: железо составляет 35 процентов массы Земли и 5 процентов земной коры. Хотя производство других цветов было сочтено слишком опасным для окружающей среды, охра никуда не денется. В отличие от коричневого цвета мумие, зеленого или берлинского синего цвета Шееле, вы все равно можете купить в Интернете чистую порошкообразную охру (красную или желтую) менее чем за 10 долларов и воссоздать наскальные рисунки у себя на заднем дворе.
Ocre de Rustrel (Провансал в Колорадо)
Но материал отделился от названия цвета, и вы также можете купить акриловую краску под названием «желтая охра», которая стала краской, которую выбирают многие художники-аборигены. Самая долгая непрерывная художественная практика в мире находится в Австралии, где художники десятки тысяч лет использовали земные пигменты, собранные прямо из выжженной апельсиновой пустыни. В книге Виктории Финли « Color » она путешествует в поселение аборигенов Папунья, где в 1971 году, после столетий притеснения со стороны европейских колонизаторов, молодой учитель по имени Джеффри Бардон подарил некоторым своим ученикам акриловые краски.Он наблюдал, как дети рисуют узоры на песке, и хотел увидеть, что получилось, когда у них была разноцветная краска. Полученные произведения искусства не были похожи ни на что на европейском арт-рынке. Он был заполнен абстрактными фигурами (животных и людей), окруженными завитками и точками, мерцающими узорами, которые, казалось, двигались, как мираж.
Произведение Эмили Пверле на выставке Wentworth Gallery
Старейшины племени заинтересовались тем, что происходит с Бардоном и его учениками, поэтому они подошли к нему, чтобы попросить их собственную краску.Они хотели создать фреску на стене школы, которая отражала бы их культурное наследие и их философию. Используя традиционную палитру желтого, красного, черного и белого цветов, они создали произведение под названием «Медовые сны муравья», которое, по словам Финли, было бы «одним из величайших произведений искусства Австралии», если бы оно существовало до сих пор. Не получается, потому что его закрашивали несколько раз. Во-первых, художниками-аборигенами, которые считали, что оригинальная фреска раскрывает слишком много их секретов, узоров и мифологии, слишком священных для всеобщего потребления.Следующую итерацию Бардон не любил. Это было слишком образно. На нем были изображены муравьи, более или менее существующие в природе. Бардон считал, что этот полуреалистичный образ слишком похож на картины «белоснежки», которые художники-аборигены создавали, чтобы удовлетворить европейские вкусы и соблазнить покупателей в галереях. Окончательная версия была компромиссом между двумя (священным и фигуративным), но она тоже была написана несколько лет спустя.
Художник-абориген Мундара Куранг перед своей работой
Эта история одновременно печальна и торжествует.Прискорбно, что работа была потеряна, но есть некоторые вещи, которые следует оставить в тайне, а некоторые убеждения слишком важны и преобразуют, чтобы их можно было отнести к стене. Желание сохранить свое искусство «в секрете», предполагает Финли, может быть еще одной причиной, по которой художники-аборигены предпочитают использовать нетрадиционные краски. Вместо охры, которую легко найти на австралийских холмах и дорогах (ее так много, что пыль используется для окрашивания бетона), многие художники предпочитают материалы на основе пластика.Возможно, говорит Финли, это сделало «для них менее сложным представлять свои истории сновидений для посторонних, если сами материалы не были священными, а только представляли священные цвета — как изображения в зеркале».
Мик Намарари Тьяпалтьярри, 1996
Охра использовалась для создания произведений искусства на всех обитаемых континентах (что исключает Антарктиду). Археологи обнаружили желтый, коричневый и красный пигменты, нанесенные на стены пещер по всему миру. А поскольку это дешево и полезно, художники долгое время продолжали использовать охру.Этот тонкий коричнево-желтый оттенок можно найти в работах одноименных художников, таких как Тициан, Рембрандт, Ван Гог, Кандинский, Моне, Сёра, Эль Греко, Сезанн, Дега — список можно продолжать и продолжать. Иногда на куске есть только немного желтого, представляющее цветок, луч солнечного света, засохшее сенокосное поле или бледное лицо. Но некоторые художники максимально использовали охру — немногие европейские мастера могут прикоснуться к мастерству Вермеера в материале.
Йоханнес Вермеер, Доярка , ок.1660
Для Вермеера охра была важным инструментом, одним из его семи основных пигментов, в список которых также входят свинцово-белый, киноварь (сделанный из порошка киновари), марена озера, зеленая земля (селадонит и глауконит), необработанная умбра (оксид железа и оксид марганца) и черная слоновая кость (полученная из обугленных костей животных). Вермеер также использовал свинцово-оловянно-желтый цвет, когда хотел получить более светлую и маслянистую стирку. Но охра была дешевле и хорошо сочеталась с его нейтральными красками. Композиции Вермеера никогда не бывают особенно яркими — они тихо натуралистичны.Он мог залить комнаты золотым светом, добавив немного охры к своей свинцовой краске и используя ее, чтобы закрасить фон, плитку на полу и область сразу за окном. Он также любил использовать охру в оттенках своей кожи. Он отдавал предпочтение бледным, желтоватым женщинам, которые молча смотрят на зрителя с маской на лице. Девушка с жемчужной сережкой — прекрасный пример его стиля в желтых тонах. Используя ограниченный диапазон цветов, он построил композицию, которая конкурирует с Mona Lisa .
Иоганнес Вермеер, Девушка с жемчужной серьгой , 1665.
Вермеера и художников-аборигенов также связывает общее понимание света. Как для известного европейского мастера, так и для еще относительно невоспетых австралийских художников охра была инструментом, с помощью которого можно было наделить изображение силой солнца. («Невоспетые», возможно, недооценивают это. Даже в Национальной галерее Австралии на сайте представлено менее десяти картин в пустыне.) Эти художники на разных континентах собрали что-то из глубин земли и сделали это неземным, превратили в цвет жизни, в цвет небес.
Американцы тоже понимают согревающие свойства желтого цвета. В то время как художники используют его, чтобы запечатлеть мимолетную красоту, мы, обычные люди, используем его, чтобы добавить яркости в нашу жизнь. Возможно, это одна из причин того, что полужелтый горчично-желтый цвет так распространен в обычно уравновешенной и холодной области архитектуры Новой Англии. Я всю зиму проезжаю по штатам Мэн, Нью-Гэмпшир и Вермонт, сообщая о работе, и часто проезжаю мимо белых снежных полей, перемежающихся с домами цвета кетчупа и горчицы — единственным цветным пятном в монохромном пейзаже.Они выделяются рядом с выцветшей кедровой черепицей, серой выветренной древесиной, которая так популярна в этой местности. Эта тенденция продолжается и в современном строительстве (редко можно увидеть новый дом, выкрашенный, скажем, в кобальтово-синий или бирюзовый цвет в моем лесу) с глубокими историческими прецедентами. Первые дома, построенные в этом регионе, часто оставляли неокрашенными или использовали дешевые обильные цвета, такие как горчично-желтый (сделанный с желтой охрой), красный фалу (то есть красная охра) и свинцово-белый. С 1740 по 1780 год, как пишет Энни Грейвс в журнале Yankee , «если цвет вообще использовался, это часто была простая желтая охра и оксид железа… смешанные с белым свинцом и льняным маслом и нанесенные на месте.”
Просматривая свои книги цветов, трудно найти период, когда горчица или охра не входили в американскую цветовую палитру. У меня есть книга Pantone: The 20 th Century in Color , в которой каждое десятилетие разбивается по цветовым трендам. Перелистывая страницы, я заметил кое-что любопытное. Практически в каждом десятилетии были свои обожженные, коричневатые, золотисто-желтые. В 1900-х годах был яркий «желточный желтый цвет» Поля Пуаре, в двадцатые годы было «богатое золото».«Желток появляется снова, когда принципы дизайна Баухауса становятся все более популярными, а« сияющий желтый »имеет важное значение в тридцатые годы благодаря глянцевому пластиковому дизайну Лео Бэкеланда. Есть целый список Эдварда Хоппера, который использовал горчично-оранжевые тона, чтобы нарисовать свои меланхолические пейзажи и обедающих, и другой, посвященный модернистам середины века, которые использовали немного более светлый (но все же коричневатый) желтый, называемый «мимозой», для своих урезанных. конструкции. Возможно, самый известный желтый цвет двадцатого века — это урожайное золото, которое было популярно в семидесятых годах и часто появлялось в тандеме с зеленым авокадо и ржаво-красным.Единственным десятилетием, в котором действительно не было коричнево-желтого тона, были девяностые. В ту эпоху предпочтение отдавалось зеленовато-зеленым и неоново-желтым с примесью тосканского бежевого и шалфейно-зеленого (как и в начале 2000-х).
Кухня семидесятых
Несмотря на то, что сейчас у нас особенно горчичный момент, этот цвет всегда был глубоко в нашей земле и в нашей истории. Название, которое вы называете, не имеет большого значения, хотя в последнее время я неравнодушен к куркуме.Точно не молоко или специи. Я пробовал наслаждаться модными продуктами с добавлением куркумы, включая блины и латте (последний из которых, как указывает писатель Хушбу Шах, представляет собой причудливую переупаковку очень распространенного южноазиатского напитка, который вы пьете только тогда, когда «чувствуете себя дерьмом») ). Куркума подходит нашему времени. Это новое название старого цвета, но это также невольная поправка, вызванная внезапным «открытием» Америки обычных специй. Горчица имеет желтый цвет из-за куркумы .Сами семена горчицы довольно коричневые. Англоговорящие люди называют этот цвет «горчичным» с 1840-х годов, и все это время мы отдавали должное не той специи. Горчично-желтый всегда был желтым как куркума. Я полностью за то, чтобы отдать должное куркуме. Для этого жителя Новой Англии это звучит более инклюзивно, чем желтый цвет центральной части страны.
Кэти Келлехер — писательница, которая живет в лесах сельской местности Новой Англии со своими двумя собаками и одним мужем.Она является автором книги Handcrafted Maine .
Тенденция градиентного дизайна: как это выглядит и как использовать
Многие тренды 90-х снова в моде! Укороченные топы, чокеры, даже резинки для волос (… серьезно). И есть одна тенденция, которая штурмом захватывает мир дизайна и которая в 1995 году будет чувствовать себя как дома, — это градиенты.
Несколько десятилетий назад градиенты были популярным способом добавить цвет и глубину дизайну. Они оставались довольно заметной тенденцией в дизайне до конца 2000-х, когда они уступили место плоскому дизайну.Но в 2018 году градиенты снова стали популярными, и мы видим их повсюду. Они позволяют улучшить плоский дизайн (обновление дизайна, известное как Flat 2.0), добавить цветное наложение к фотографиям и добавить текстуру к фону.
Угадайте, что? Тенденция градиента не показывает никаких признаков замедления в 2019 году.
Так как же работают градиенты? Почему они сейчас такие горячие? И как мы продолжим видеть развитие градиентов в 2019 году и далее?
Что такое градиенты?
–
Градиенты, также известные как цветовые переходы, представляют собой постепенное наложение одного цвета на другой (или, если вы находитесь в ярком настроении, от одного цвета к другому цвету к другому цвету — градиенты не ограничиваются двумя оттенками) .
с помощью Walker ArtГрадиенты могут смешивать или переходить похожие цвета (например, разные оттенки синего или светло-оранжевого на темно-красный) или совершенно разные или контрастные цвета (например, фиолетовый и красный или синий и желтый).
Градиентный тренд чрезвычайно разнообразен. Он может быть жирным или тонким, центральным элементом дизайна или элементом фона. А поскольку они смешивают и смешивают разные оттенки цвета, градиенты могут создавать новые цветовые комбинации, которые кажутся разными и современными, придавая дизайну совершенно уникальный вид.
Прекрасное фото, сделанное еще красивее с наложением розового градиента. Изображение с Creative Market. Градиентный дизайн добавляет глубины и размера плоской графике лисы. Дизайн логотипа Cross The Lime.Вы можете использовать градиенты, чтобы добавить глубины плоскому дизайну, создать интересную текстуру для фона или вдохнуть новую жизнь (и цвет!) В фотографию — возможности безграничны!
Почему сейчас в моде градиенты?
–
Итак, почему градиентный тренд сейчас имеет такой момент? Потому что они такие привлекательные и привлекающие внимание.Энергия этих потрясающе ярких цветовых переходов выделяет их и помогает улучшить любой дизайн.
Изображение через InstagramКогда градиенты вернулись на сцену дизайна в 2018 году, многие дизайнеры были удивлены, особенно когда к ним присоединились более крупные бренды (мы смотрим на вас, Instagram). Многие люди думали, что переход по градиентному маршруту — это слишком серьезное отступление. Ностальгия — это одно, но действительно ли люди связаны с тенденцией, которую мы наблюдали раньше?
Оказывается, людям это понравилось, особенно потому, что градиентный тренд 2018 года вовсе не старомоден.Он кажется более сложным и высококачественным (от фона до текстуры и наложений) — и менее «Спасенным звонком». В этих новых градиентах используются яркие, светящиеся цвета и интересные цветовые комбинации, которые делают их свежими и современными.
И помимо фактора ностальгии, люди сходят с ума по градиентной тенденции для более широкой цели. С огромным количеством контента, с которым потребители сталкиваются ежедневно, брендам необходимо найти способ преодолеть беспорядок и привлечь внимание своих идеальных клиентов.Градиенты, которые добавляют цвет и интерес к дизайну, — идеальный способ сделать это.
Градиентный тренд в действии
—
Gradients универсальны, и они являются хорошим выбором практически для любой дизайнерской среды под солнцем.
Вот несколько примеров градиентного тренда в действии:
Логотипы
Градиентымогут добавить уникальности вашему логотипу, который поможет вам выделиться среди конкурентов (и поскольку ваш логотип выступает в качестве лица вашего бренда, это фантастический способ включить цветовую палитру вашего бренда новаторским и заметным образом).Попробуйте использовать смелые цвета, чтобы почувствовать себя на вашем лице, или более мягкие цвета для более тонкого эффекта.
Дизайн Мила Джонс КэннУпаковка
Вы хотите, чтобы ваша упаковка сразу же соскочила с полок, и градиенты — лучший способ сделать это.
Ключ к использованию градиентов в качестве фонового элемента в упаковке? Убедитесь, что он соответствует вашему бренду. Если вы разрабатываете упаковку для нового продукта, ориентированного на любителей экстремальных видов спорта, вам подойдет что-нибудь смелое и смелое (например, наложение фотографий с неоновым градиентом или яркая цветовая палитра).Если вы хотите получить более мягкий и утонченный вид — скажем, для нового умывания лица — возможно, лучше подойдет однотонный градиент или палитра, в которой используются пастельные оттенки.
Изображение через The DrumКогда дело доходит до вашей упаковки, жирный или тонкий может быть столь же впечатляющим, если он соответствует вашему продукту и бренду.
Веб-дизайн
Есть масса возможностей включить градиентный тренд в ваш веб-дизайн.
Серьезно. Тонна.
Вы можете использовать сочетание мягких цветов для создания нежного фона.Вы можете добавить веселую, веселую атмосферу с помощью наложения фотографий. Вы можете произвести большое впечатление — не будучи визуально подавляющим — добавив градиент ярких цветов к дизайнерским акцентам. Когда дело доходит до градиентов в веб-дизайне, подходит практически все, поэтому воспользуйтесь шведским столом возможностей и включите эту тенденцию в свой веб-дизайн.
через АсануПриложения
В море приложений вам нужно найти способ выделиться. И используете ли вы его в своих маркетинговых материалах, в качестве фона приложения или в качестве элемента пользовательского интерфейса или акцента, градиенты — отличный способ сделать это.В зависимости от того, какие цвета вы выберете, вы можете настроить настроение для своего приложения: смелые цвета для энергичного ощущения, пастельные для успокаивающего воздействия.
через ClassPassМатериалы для печати
Визитные карточки, обложки для книг и постеры: материалы для печати — это фантастическая возможность буквально воплотить градиентную тенденцию в жизнь. Вы можете включить логотип с градиентом, использовать тонкую цветовую комбинацию в качестве фона (что поможет вашему тексту выделяться) или использовать его в качестве акцента в иллюстрации. Возможности безграничны, так что дерзайте!
Дизайн CR75 ™ для ЭллингтонаКак заставить градиенты работать на вас
—
Тенденция градиента сохранится до 2019 года.Итак, вопрос в том, как заставить его работать на вас?
1. Выберите правильные цвета
Самый важный аспект градиентной тенденции — это цвета, которые вы выбираете. Чтобы градиентный тренд выглядел хорошо продуманным, вам нужно выбрать цвета, имеющие одинаковый оттенок и оттенок (например, градиент, переходящий от голубого к темно-синему), или цвета, которые «работают» вместе в соответствии с к теории цвета; так, дополнительные цвета (цвета, противоположные друг другу на цветовом круге), аналогичные цвета (три цвета рядом на цветовом круге) или триадные цвета (три цвета, равномерно разнесенные на цветовом круге).
Также важно выбирать цвета, соответствующие тем чувствам и эмоциональной реакции, которые вы пытаетесь вызвать у аудитории. Вы хотите, чтобы люди чувствовали себя спокойно и безмятежно, когда они посещают ваш сайт? Градиент, переходящий от мягкого зеленого к синему, сделает свое дело. Хотите, чтобы у людей было правильное настроение покупать? Выбирайте более смелые цвета, например красный или оранжевый, чтобы люди захотели делать покупки. Психология цвета — мощная вещь, поэтому не забывайте об этом, выбирая цвета для градиента.
Дизайн: CalmSpark. Дизайн приложения. И последнее (но не менее важное): убедитесь, что цвета, которые вы выбираете для своих градиентов, соответствуют цветам вашего существующего бренда; Если цветовая палитра вашего бренда — красный и синий, то использование градиента зеленого и неоново-желтого, вероятно, не будет выглядеть так привлекательно.
2. Используйте градиенты с умом
Как мы уже говорили, градиенты универсальны. Вы можете использовать их, чтобы добавить глубины плоскому дизайну, добавить визуального интереса к сплошному цветному фону, в качестве наложения… Список можно продолжать и продолжать.
Но то, что они универсальны, не означает, что #allthegradients должен стать вашим девизом в новом дизайне. Как и в случае с любой другой тенденцией, когда дело доходит до градиентов, меньше значит (вероятно) больше. Сохраняйте простой дизайн. Не переусердствуйте. Вам следует использовать градиенты, но убедитесь, что вы используете их с умом.
3. Знайте свою аудиторию
Если вы хотите, чтобы ваши градиенты производили нужный эффект, вам нужно действительно знать свою аудиторию и на какой дизайн они будут реагировать. Например, если вы продаете группе более традиционных бизнесменов, неоновый розово-желтый градиент, вероятно, не будет вашим лучшим выбором.
Знайте свою аудиторию, а затем выберите правильный градиент — цвета, то, как вы включаете их в свой дизайн, и выбираете ли вы громкий или более тихий подход.
4. Развлекайся
Это забавный тренд, так что получайте удовольствие! Поиграйте с разными цветами, попробуйте использовать градиенты в качестве фона и в качестве фокуса, чтобы найти то, что лучше всего подходит для вас, поиграйте с наложениями … Дело в том, что это не та тенденция, к которой следует относиться очень серьезно. Так что расслабьтесь и получайте удовольствие от своих градиентов!
Затухание
—
В отличие от других реликвий 90-х (джинсы JNCO, кто-нибудь?), Похоже, тенденция градиента сохраняется.И теперь, когда вы понимаете все тонкости градиентов, у вас есть все необходимое, чтобы включить эту тенденцию в свои дизайны в 2019 году.
Выходи и двигайся градиентом!
От логотипов до приложений и всего остального — мы в этом!
Black Beauty: Фотография между искусством и модой
Антваун Сарджент адаптировал это эссе из своей новой книги «Новый черный авангард: фотография между искусством и модой», , которая будет опубликована в следующем месяце Aperture.
В 2018 году американский Vogue опубликовал две обложки с изображением всемирно известной иконы Бейонсе в своем уважаемом сентябрьском номере. Хотя это был ее четвертый раз, когда она возглавляла почтенный ежемесячный журнал, об этой съемке слышали во всем мире: впервые за столетнюю историю журнала чернокожему фотографу Тайлеру Митчеллу было поручено создать его обложки.
На одной обложке музыкант передает временную мягкость и атмосферу современной домашней жизни в белом платье Gucci с рюшами и цветочном головном уборе Rebel Rebel; на другой обложке она стоит среди природы, в многоярусном платье от Alexander McQueen панафриканских цветов, ее волосы заплетены в косички.Уверенный взгляд, символ чернокожего материнства, красоты и гордости.
«Передать черную красоту — это акт справедливости», — говорит г-н Митчелл, которому было всего 23 года, когда фотографии были опубликованы.
Для г-на Митчелла портреты Бейонсе, один из которых недавно был приобретен Смитсоновской национальной портретной галереей, наводят на мысль о его более широком стремлении создавать фотографии, содержащие «определенный автобиографический элемент». Мистеру Митчеллу 25 лет, он вырос в Атланте и был очарован изображениями искусства и моды, которые он видел на Tumblr.«Мода всегда была для меня чем-то далеким», — говорит он.
Его собственные образы вызывают то, что он называет «черной утопией» — телеграфирование черного человечества, долгое время невидимое в воображении публики. В «Без названия (Близнецы II)» 2017 года он изображает братьев (и манекенщиц) Тори и Хори Макдональдов из Бруклина, украшенных жемчугом и отдыхающих на розово-кремовом фоне. Фотографии документируют стиль, самобытность и красоту чернокожей молодежи — «то, что я считаю полным спектром самовыражения, возможного для чернокожего мужчины в будущем», — объясняет он.Его объекты часто играют в траве, улыбаются в покое и иногда смотрят честным взглядом в камеру.
Г-н Митчелл является частью растущего нового авангарда молодых чернокожих фотографов, в том числе Дэниела Обаси, Эдриен Ракель, Микайя Картер, Надин Ижевере, Ренелла Медрано и Дана Скраггс, которые работают над тем, чтобы расширить представление чернокожих во всем мире. — действительно, чтобы расширить представление о черноте во всем ее разнообразии. При этом они бросают вызов современной культуре, которая все еще полагается на коварные стереотипы в изображении жизни чернокожих.
Яркие портреты и концептуальные изображения этих художников объединяют жанры искусства и модной фотографии таким образом, что разрушают их давно установленные границы. Их широко используют в традиционных журналах о стиле жизни, в рекламных кампаниях, в музеях. Но из-за того, что чернокожие работы не показываются на основных модных страницах и в стенах галерей, эти художники также проводят свои собственные выставки, разрабатывают собственные журналы и интернет-сайты и используют свои платформы социальных сетей для непосредственного взаимодействия со своей растущей аудиторией. , которые часто комментируют, как их фотографии отражают их собственную жизнь.
В 2015 году южноафриканский фотограф Джамал Нседлана, 34 года, стал соучредителем Bubblegum Club, издательской платформы, цель которой — объединить маргинальные и разрозненные голоса в Южной Африке и «помочь сформировать веру в себя талантливых умов. там в музыке, искусстве и моде ». Афросюрреалистические изображения г-на Нкседланы иллюстрируют истории молодых художников из африканской диаспоры. Он видит свою работу как форму визуального активизма, стремящегося бросить вызов «идее, что чернота однородна».
Эту точку зрения часто можно увидеть в работе этого свободного движения молодых талантов, которые создают фотографию в совершенно разных контекстах — Нью-Йорке и Йоханнесбурге, Лагосе и Лондоне. Результаты — часто в сотрудничестве с чернокожими стилистами и модельерами — представляют новые взгляды на среду фотографии и представления о расе и красоте, поле и власти.
Их деятельность основана на долгой истории создания портретной фотографии в черном цвете, которая восходит к появлению медиума в середине 1800-х годов.Более того, их изображения намекают на идеи самопрезентации, захваченные такими предшественниками, как Кваме Братвейт, Кэрри Мэй Уимс и Микален Томас. То, что разворачивается, — это современное переосмысление возможностей черного изображения художниками, которые иллюстрируют свои собственные желания и контролируют свои собственные образы. И в сфере моды, и в сфере искусства фотография борется с фотографией.
«Модный имидж имеет жизненно важное значение для визуализации меньшинств в сценариях, отличных от тех, что были ранее в истории», — отмечает 26-летний Кэмпбелл Адди, британско-ганский фотограф.В новом архиве мистера Адди почетное место занимает более плавное выражение сексуальности и мужественности в стилизованных изображениях — например, его безымянный портрет черного мужчины без рубашки, лицо которого покрыто импровизированной красно-белой маской, а его шея украшена жемчугом и жемчугом. четки. «Играть с модой — значит играть со своим представлением в мире», — добавляет г-н Адди, который также основал модельное агентство и журнал Niijournal, который документирует религию, поэзию, моду и тенденции в фотожурналистике. «Есть смысл просвещать зрителя», — говорит он.
Вдохновение для изображений черных фигур Ариэль Бобб-Уиллис, чьи лица обычно скрыты от взгляда камеры и чьи тела запечатлены в неестественных позах, можно найти на ярких полотнах афроамериканских художников-модернистов, таких как Джейкоб Лоуренс и Бенни. Эндрюс.
МС. Бобб-Уиллис интересуется, как эти художники применили хитрое чувство абстракции в своих портретах, продвигая репрезентацию за пределы реализма и стереотипов. В своих работах, таких как «Новый Орлеан» (2018), изображена женская фигура в одежде конфетного цвета, когда ее тело сгибается во все стороны перед заброшенной витриной магазина, г-жа Мисс.24-летняя Бобб-Уиллис демонстрирует то, что она называет личным «напряжением» из-за желания быть заметным в культуре, которая долгое время искажала реалии чернокожих.
Для Quil Lemons понятие семьи является центральным вопросом. 22-летний г-н Лемонс говорит, что его серия «Пурпурный» (2018), поразительные портреты его бабушки, матери и сестер из его родного города Филадельфия, основана на черно-белой фотографии его бабушки в платье пограничного стиля. Четыре поколения женщин на его фотографиях носят платья Batsheva с цветочным принтом, которые он выбрал, чтобы выразить чувство дома и интимности.«Изображения пропагандируют, освещают и укрепляют существование других», — говорит г-н Лемонс. «В целом, я предлагаю понимание или взгляд на мир или жизнь, на которые можно не обращать внимания».
Британо-нигерийский фотограф Рут Оссай, 28 лет, также рассказывает о своей семье Ибо в восточной Нигерии и родственниках в Йоркшире, Англия. «Я пытаюсь показать текстуру, глубину и любовь — силу, упорство и изобретательность моих героев», — объясняет она. На замысловатых, игривых и модных портретах г-жи Оссай они одеты в сочетание традиционной и западной одежды.Она говорит о своих фотографиях: «Молодые или старые, мои тети и дяди без извинений выставляют напоказ нашу культуру и чувство идентичности, с чувством гордости и уверенности».
В ее сериале 2017 года «Хороший мальчик без прыщей» изображен ее младший кузен Кингсли Оссай, лежащий в большом красном костюме и желтом дураге с зонтиком в руке, на фоне с принтом, изображающим пасторальный пейзаж. Большая часть ее работ, которые иногда включают коллаж и публиковались в модных кампаниях Nike и Kenzo, вдохновлены современной западноафриканской поп-музыкой, фильмами Нолливуда и пышностью нигерийских похорон.Это напоминает студийный портрет африканской мизансцены 1960-х годов, созданный такими художниками, как Санле Сори в Буркина-Фасо и Малик Сидибе в Мали.
Документальный характер уличных снимков Стивена Тайо стильных лавочников, пожилых людей и молодежи в Лагосе свидетельствует об интересе этого поколения к отражению современной идентичности чернокожих и использованию фотографий в качестве пространства для новых изобретений. Его безымянный групповой снимок 2019 года, на котором модные молодые люди сбились в кучу на улице в ярких костюмах, демонстрирует традиционные нигерийские техники ткачества и намекает на движение «молодежного землетрясения», захлестнувшее его город.Изображение также вызывает в воображении уличную фотографию ганского художника Джеймса Барнора после обретения независимости.
«Нынешнее поколение стремится просто верить в свои ремесла», — говорит 25-летний г-н Тайо, чьи работы в настоящее время выставлены в «Городском принце» во Дворце Токио в Париже. «Это также очень важно быть частью поколения, которое так много делает, чтобы вернуть то, что можно было бы назвать« свободой »».
Изображения черного тела — не единственный способ, которым эти фотографы рассматривают понятия идентичности и наследия.Швейцарско-гвинейский фотограф Намса Леуба фокусируется на конкретных объектах, используемых в племенных ритуалах африканской диаспоры, чтобы концептуально исследовать то, как чернота определяется в западном воображении. 36-летняя г-жа Леуба создает то, что она называет «документальной беллетристикой», обладающей антропологическими качествами. В таких сериалах, как «Африканские королевы» (2012) и «Коктейль» (2011), ее фигуры задрапированы церемониальными костюмами и окружены статуями, проникнутыми благородством.
Авол Эризку, в дополнение к его знаменитым портретам черных актеров и музыкантов, таких как Майкл Б.Джордан и Виола Дэвис создают мощные образы натюрморта, наполненные найденными объектами на монохроматическом фоне. Они ссылаются на историю искусства, черную музыку, культуру и природу. Работы также подчеркивают интерес г-на Эризку к исследованию истории фотографии, разрушая существующие иерархии.
В фильме «Азиатские лилии» (2017) черная рука с золотым браслетом держит сломанную карту Kodak Shirley Card, названную в честь белой модели, оттенок кожи которой использовался для калибровки стандарта цветной пленки.Рука сравнивает карту с побеленными предметами, включая бюст Нефертити, окрашенный в черный цвет. 31-летний г-н Эризку также включает в свою фотографию небольшую золотую скульптуру Тутанхамона и свежие лилии, цветок удачи.
Послание его поколению имиджмейкеров ясно: «Я пытаюсь создать новый жаргон — черное искусство как универсальное».
Анализ цвета: мода в поисках идеального оттенка | Beauty
Вероника Хендерсон — это «круто», «прозрачно» и «светло».Она светится темно-синим и серым цветом, отлично смотрится с фуксией, но с горчичным или хаки она говорит: «Я бы выглядела зеленой. Как смерть ».
Если кто и должен быть уверен в подходящих оттенках, так это Хендерсон, управляющий директор имидж-консалтинговой компании Color Me Beautiful. Книга, положившая начало этому бизнесу, «Раскрась меня красиво» Кэрол Джексон, была впервые опубликована 35 лет назад в этом году, опередив на два десятилетия раньше «Чего не носить» Тринни и Сюзанны и телесериала Гок Вана в прайм-тайм.
В 80-е годы книга Джексона стала феноменальным явлением, было продано 13 миллионов копий и породило десятки последователей. Любопытно, что сама Джексон была выкуплена у компании в середине 1990-х и с тех пор «исчезла» (Хендерсон тактично сказала мне, что не совсем понимает, что произошло), но бизнес остался. Помимо книг («Раскрась меня моложе», «Раскрась меня уверенно» и «Имидж имеет значение для мужчин: как одеваться для успеха» — это всего несколько), компания теперь управляет косметической линией, а в Европе — бизнесом, консультантами по обучению и продавцами. в искусстве стилизации и теории цвета.
Раскрась меня в синий… Ханна Марриотт с Энджи Джонс. Фотография: Александра Ралука Драгой / The GuardianПервоначально клиенты CMB были разделены на весенние, летние, осенние и зимние, но в Европе и на Ближнем Востоке, где Хендерсон владеет франшизой, были разработаны шесть новых тем: легкая, глубокая, теплый, мягкий, прозрачный и прохладный, с 42 возможными палитрами, если учитывать подразделения. В рамках первой системы: «Любого цветного человека можно отнести к категории« зимнего », независимо от того, был ли он с Ближнего Востока или Индии, — говорит Хендерсон, — и мне очень жаль, но это просто не работает.«Новая теория (основанная на цветовой системе Манселла) основана на идее, что людям нужны не только разные оттенки, но и разные уровни яркости или контрастности, чтобы выглядеть наилучшим образом.
Если CMB звучит как модные советы из другой эпохи — до того, как Рэйчел Зои приняла голливудские советы по стилю в мейнстрим; Раньше можно было написать селфи из примерочной модному другу — бизнес-модель тоже старая. Консультанты платят за обучение и аккредитацию в системе (1295 фунтов стерлингов за пятидневный курс), а затем ведут свой собственный бизнес на местном уровне, ориентируясь на группы родителей или Висконсин для бизнеса и взимая от 100 фунтов стерлингов за услуги от сторон по анализу цвета до индивидуальный шоппинг.По словам Хендерсона, из 200 консультантов только один мужчина. Очень часто консультантами становятся матери, ищущие вторую карьеру или дополнительный заработок; иногда они также являются лайф-коучами или обученными учителями нейролингвистического программирования и пилатеса. «У одних дела обстоят лучше, у других», — говорит она. «Один делает это, чтобы заплатить за обучение своих детей; другой, чтобы оплатить отпуск своей семьи. Некоторые делают это для себя, просто чтобы водить своих подруг по магазинам ». Один из ее главных консультантов — Энджи Джонс из Хайгейта на севере Лондона, которая будет анализировать меня.
Ханна Марриотт и Энджи Джонс. Фотография: Александра Ралука Драгой / The GuardianДжонс — «мягкий» и «теплый» человек (сапоги медного цвета, джинсы папоротниково-зеленого цвета, джемпер цвета яблока, авокадо и шарф в угольную полоску). Она приветствует меня в своей гостиной (светлые горчичные стены с маленькими плюшевыми диванчиками цвета охры) и оценивает меня, пока на заднем плане успокаивающе играет Радио 3.
Во-первых, на мою одежду надевается большой белый воротничок, как у монахини, о чем Джонс вежливо не упомянул (грязный серый топ с темно-синими джинсами — довольно стандартно для меня).Далее сверху размещаются нагрудники цветовой палитры. В комбинезоне шоколадно-коричневого, темно-красного, бирюзового и бирюзового цвета я выгляжу так, как будто я хорошо выспался. В розовом, ледяном голубом, бледно-желтом и каменном цвете сходит с моего лица, как принцесса Диснея, которая была заморожена. Конечно, этот эксперимент дал четкие результаты — и Джонс проводит свой анализ. Я «теплый» человек с рыжими волосами и розовой кожей, но немного хитрый. Я тоже немного «крут» (серые глаза), хотя окончательный вердикт — «теплый», «глубокий» и «ясный».Что, давайте посмотрим правде в глаза, означает, что у меня есть всего понемногу, кроме «легкого» и «мягкого», поэтому необходима дополнительная информация.
Глубокий фиолетовый… Ханна Марриотт с Энджи Джонс. Фотография: Alecsandra Raluca Dragoi / The GuardianНа следующем этапе мне выдают кошелек из розовой кожи, содержащий образцы цветов, каждый из которых подносим к моему лицу, пока мы определяем мои лучшие оттенки. Мы их узнаем, говорит Джонс, потому что первое, что мы заметим, — это мои глаза. Мои лучшие нейтральные оттенки выбраны (древесный уголь, мягкий белый, оловянный), а также синие (светло-синий, голубой, бирюзовый и бирюзовый) пурпурные, барвинковые и коричневые.Затем мы достигаем «страсти» Джонса — нахождения моего лучшего красного: розово-оранжевого оттенка и терракотового. Красный цвет важен не только для одежды, говорит Джонс, но и для губной помады, которую я, признаюсь, на самом деле не использую. «Разве у тебя в жизни не бывает помады?» — спрашивает она с грустью, как будто я призналась, что никогда не знала настоящей любви, прежде чем накрасить мне рот и любезно преподнести мне трубку при отбытии.
Драпировка тканью, безусловно, показательна, но вызывает у меня определенные образы — ледяную синюю красную ковровую дорожку salwar kameez Джуди Денч, любую диктатор новостей ITV в цветном платье в стиле Роланда Муре и очки Су Полларда в красной оправе. изображения, которые не далеки от изображений, представленных в книгах CMB.Лично для меня все это не является источником вдохновения для стиля. Действительно, сейчас цвета не играют особой роли в моде. От подиумов Céline и Alexander Wang до шика Кремниевой долины, воплощенного в вездесущей серой футболке Марка Цукерберга, — стиль в настоящее время находится в довольно сдержанном месте. Помимо заметных исключений — искусственный мех сахарной ваты креветок; подиумы Джонатана Сондерса — самых модных людей, которых я знаю, обычно одевают в серое, темно-синее или верблюжье, за исключением небольшого количества неонового света на ремешке сумки.
Оттенки модного серого… Стелла Маккартни на своем показе AW15 в Париже 2014. Фотография: Патрик Коварик / AFP / Getty ImagesНо CMB не для них. Джонс видит больше бухгалтеров и юристов, чем творческих людей, которые, как она находит, уже уверены в своей одежде. «Журналы показывают, что хорошо работает с людьми ростом 6 футов 2 дюйма и очень худыми, — говорит Хендерсон. CMB, с другой стороны, для всех: Хендерсон полна историй о женщинах, которые перестали тратить время и деньги на себя, когда их дети были маленькими, а позже появились в поисках новой отдушины — будь то советы по гардеробу или тренировка. консультант.Хендерсон говорит, что клиенты обычно в возрасте от 35 до 55 лет; У Джонса есть клиенты всех возрастов, но считает, что наиболее восприимчивыми являются люди в возрасте от 40 до 68 лет. По словам Джонс, работа может иметь терапевтический эффект — как для нее самой, так и для клиента. Веб-сайт Color Me Beautiful, лента Twitter, страница Facebook и аккаунт Pinterest полны историй трансформации. «Спасибо, что разъяснили мне, — говорится в сообщении одного клиента в Facebook, — я чувствую себя совершенно новой женщиной. Удивительно, жизнь меняет. Я бесконечно благодарен! »
Джонатан Сондерс, AW15, на лондонской неделе моды — заметное исключение из нынешней тенденции сдержанного стиля.Фотография: Pixelformula / Sipa / RexБоюсь, что я не новая женщина — и я не уверен, что когда-нибудь стану обладателем терракотовой помады, — но я научилась парочке уловок. Я действительно начал думать о цвете. Светло-синий действительно смотрится на мне лучше, чем что-либо более темное, о чем я раньше даже не думал. И я очень хорошо выгляжу в воде.
Какой цвет года по версии Pantone и почему он важен?
Каждый год в первые дни декабря Институт цвета Pantone объявляет новый цвет года.Было сказано, что это лучшая часть года для всех, кто работает с цветом.
Мы взволнованы, как насчет вас?
Представляем: Ultimate Gray 17-5104 и Illuminating 13-0647
В честь появления новых цветов давайте посмотрим, как система цветов Pantone и институт цвета Pantone на протяжении многих лет оказывали влияние на все аспекты цветового дизайна и цветовых тенденций.
Система подбора цветов Pantone
Цветовая система Pantone — самая важная в мире система согласования цветов.Система возникла в 1963 году для решения проблемы сложного согласования цветов в полиграфической промышленности.
Вскоре после этого Pantone стал самым простым и простым способом классификации, передачи и сопоставления цветов с использованием каталога цветов в веерном формате.
Каждому цвету, каждому тону и оттенку был присвоен номер для классификации. Pantone буквально написал книгу о подборе цветов. На протяжении более 40 лет Pantone является системой подбора цветов не только для индустрии дизайна, но и для производителей красок, текстиля и пластика.
Институт цвета Pantone
Институт цвета Pantone предлагает дизайнерам, маркетологам, авторам и брендам возможность работать вместе и создавать сильное и мощное цветовое присутствие. Как ведущая система подбора цветов, их знания о цвете не имеют себе равных. Они знают, как цвет влияет не только на дизайн, но и на потребительский стиль.
Цвет года
В 2000 году Институт цвета Pantone создал цвет года Pantone как определяющую тенденцию для брендинга, маркетинга и творческого общества в целом.Введение цвета года Pantone подтвердило, что Институт цвета Pantone является лидером во всем, что связано с цветом.
Неудивительно, что цвет года Pantone с нетерпением ждут каждый декабрь.
Как цвет года влияет на маркетинговые тенденции?
Институт цвета Pantone изучает тенденции в цвете в течение года, чтобы выбрать следующий цвет года Pantone.Они принимают во внимание все аспекты общества: моду, маркетинг, социальные сети и даже политику. Оттенок, выбранный Цветом года, становится все более влиятельным в огромном мире дизайна и брендового маркетинга.
Первый цвет года был выбран еще в 2000 году, но только в 2007 году прогнозирование цветовых тенденций начало жить собственной жизнью. В настоящее время, когда объявляется новый цвет, Pantone предлагает любителям цвета множество вдохновляющих продуктов и цветовых комбинаций палитр, разработанных специально с учетом соответствующего цвета.
Сотни брендов берутся за создание продуктов с Цветом года. Это подчеркивает важность и влияние прогнозов цветовых трендов Pantone.
В последние несколько лет объявление о новом цвете года широко освещалось в СМИ. Блогеры написали статьи о том, как использовать цвет; домашние производители создали товары на продажу; графические дизайнеры создали шаблоны социальных сетей … и это лишь поверхностно.
Источник изображения
Как включить цвет года в свой бизнес?
Обширное исследование цветовых тенденций, проведенное Pantone Color Institute, сэкономит вам бесчисленные часы маркетинговых исследований для вашего собственного бизнеса. Когда в декабре будет объявлен новый цвет, вы или ваши дизайнеры должны подумать, как его можно использовать в вашем бизнесе.
Цвет года Pantone — это прогноз цветовых тенденций для потребителя. Это означает, что он предназначен для использования в потребительских товарах и дизайне, созданном для клиентов.Некоторые креативные бренды ежегодно обновляют свой внешний вид в соответствии с новым цветом, но большинство компаний не могут справиться с такими изменениями.
Цвет года предназначен для использования в маркетинге и создании продуктов, не обязательно для ребрендинга. Это означает, что вы можете создавать объявления с новым цветом, но не меняйте цвета логотипа или бренда.
При размещении в социальных сетях своих визуальных маркетинговых проектов Ultimate Grey и Illuminating, не забывайте использовать специальный хэштег # COY2021, чтобы получить дополнительную (и неожиданную) рекламу.
Некоторые творческие идеи- Швейные компании могут создавать одежду в цветах Ultimate Grey и Illuminating.
- Макияжные компании могут создать коллекции Ultimate Grey и Illuminating.
- Фирмы по производству тортов и десертов могут создавать деликатесы Ultimate Grey и Illuminating.
- Графические дизайнеры, продающие готовые дизайны, могут создавать шаблоны Ultimate Gray и Illuminating или графику для социальных сетей.
- Ultimate Grey и Illuminating можно использовать в домашних изделиях и декоративных принтах.
- Дизайнеры интерьера могут предложить своим клиентам декоративные элементы Ultimate Grey и Illuminating.
- Мерчандайзинговые компании могут предлагать продукты Ultimate Grey и Illuminating.
Используйте инструменты цвета Pantone
С 2013 года Pantone предлагает дополнительные инструменты цвета и дизайна, соответствующие объявленному цвету года. Графические дизайнеры, модельеры, визажисты, декораторы интерьеров и производители продукции имеют доступ ко всем видам инструментов системы цвета Pantone, доступных для создания новых и популярных продуктов и графики с Цветом года.
Цвет года может быть изготовлен для любого продукта. Например, у Pantone есть линейка продуктов, которая обновляется каждый год новым цветом: кружки, брелки и специальные цветные чипы. Pantone также предлагает специальную систему подбора цветов пластика для изготовления пластиковых изделий.
Графические дизайнеры могут включать оттенок в цветовые схемы для брендинга, публикаций или упаковки. Модельеры могут создавать одежду и аксессуары, которые либо демонстрируют цвет, либо используют его в качестве акцента.Дизайнеры тканей могут использовать цвет в текстурированных тканях или узорах для штор, подушек и пледов. Когда дело доходит до использования цвета года в потребительских товарах, возможности поистине безграничны.
Ознакомьтесь с удивительным набором продуктов, доступных в этом году, с Ultimate Grey и Illuminating. Pantone и их сотрудники также продают продукты с Цветом года. Ниже вы найдете информацию о партнерах Pantone и их кампаниях.
4 партнера Pantone, использующих Ultimate Grey и Illuminating
Cariuma — Из Бразилии для всего мираCariuma, бразильский бренд парусиновых кроссовок, является одним из новых партнеров Pantone в этом году.Их команда выпустила ограниченную серию кроссовок OCA Low Sneaker в цветах года по версии Pantone.
Носите пару одного цвета или сочетайте и сочетайте с двумя парами!
Источник изображения
Локаи — Обретение баланса в жизниКогда дело доходит до поиска идеального бренда, воплощающего цвета Pantone 2021 года, Lokai идеально подходит. Их фирменный браслет Lokai — это баланс: одна бусина наполнена гималайской ледяной водой, а другая — грязью мертвого моря.
В этом году они объединились с Pantone, чтобы создать браслет Ultimate Grey и Illuminating Lokai. Тонкий, но мощный намек на цвета года. Два контрастных цвета, которые объединяют в себе баланс и инклюзивность.
VDL Cosmetics — Яркие желания оживаютКорейская косметическая компания VDL Cosmetics в этом году объединилась с Pantone для создания коллекции Ultimate Grey и Illuminating. В набор входят средства для макияжа с упаковкой в цветах года и набор теней для век, в которых цвета являются главным украшением.
Adobe Stock — тщательно отобранная коллекция визуальных эффектов в оттенках серого и с подсветкойИ снова Adobe Stock и Pantone объединились, чтобы создать подборку изображений в цвете года Pantone. Фотографии, иллюстрации, фоны и шаблоны в цветах Ultimate Grey и Illuminating готовы к тому, что каждый может приступить к созданию всего, что ему заблагорассудится.
Источник изображения
Как использовать цвета Pantone в Интернете
Система соответствия Pantone (PMS) была и всегда была системой для печатных материалов.Цвет Pantone на печати по сравнению с тем же цветом на экране никогда не будет точно таким же, но будет очень близким. Вот почему Pantone предлагает несколько различных систем для использования цветов Pantone в Интернете.
Одна из главных причин этого заключается в том, что бренд может сохранять свои цветовые схемы от печати до Интернета. Эти системы также были созданы потому, что Pantone знает, что некоторые проекты остаются на компьютере и никогда не печатаются, например, веб-сайты и социальные сети.
Pantone также хочет упростить для веб-дизайнеров и маркетологов использование цвета года Pantone.
Система цветов Pantone Color System предлагает набор инструментов для дизайнеров и маркетологов, которые упрощают перенос цветовых идей с образцов на компьютеры и на печать. Pantone также предлагает системы для моды и дизайна продукции.
Для более быстрого решения вы также можете легко использовать Pantone Color Finder.
Введите любой номер PMS в поле поиска, и он покажет вам соответствующие коды RGB и HEX для использования в Интернете. Редактор визуального контента, такой как Visme, принимает шестнадцатеричные числа.Продвинутые редакторы, такие как Photoshop, принимают значение RGB.
Если вы не уверены в номере цвета, вы можете выбрать цвет в палитре цветов слева, и тогда веб-сайт покажет вам все образцы Pantone, похожие по тональности. Затем вы можете выбрать свой точный оттенок, и он покажет коды RGB и HEX.
Это цветовые коды для цветов этого года: Ultimate Grey и Illuminating.
Цвета года по Pantone: с 2000 по 2021 годПрежде чем рассматривать все предыдущие цвета года, давайте взглянем на совершенно новые цвета года: Ultimate Grey и Illuminating.
2021: Ultimate Grey 17-5104 и подсветка 13-0647
Это второй раз за 21 год, когда институт Pantone выбрал два цвета вместо одного. Когда мы заканчиваем один из самых странных лет в новейшей истории, цвет года Pantone просто должен был последовать нашему примеру и быть столь же неожиданным.
Сочетание твердого и надежного Ultimate Grey и яркого сияющего желтого цвета — это праздник человеческого духа. Люди ищут некой стабильности и уверенности, но при этом стремятся к надежде.
2020: классический синий 19-4052
Создайте свою собственную графику с новым цветом года Pantone. Попробуйте это бесплатноПрежде чем рассматривать все предыдущие цвета года, давайте взглянем на новый цвет года — классический синий.
Вступая в новое десятилетие, Classic Blue дает ощущение надежности и уверенности. Этот темно-синий — классический, элегантный и неподвластный времени. Ощущение, которое этот цвет вызывает у зрителя, немного удивляет, поскольку это цвет, который мы привыкли видеть вокруг себя.
По данным Института Pantone, это и была основная идея. Иметь выделяющийся цвет, но при этом быть знакомым. Это дает каждому ощущение прочного основания веры и мира.
С 2019 по 2007 годС появлением каждого цвета года влияние на дизайн и общество в целом стремительно растет. С распространением интернет-маркетинга и социальных сетей цвет года по версии Pantone получает все большее признание.Pantone не новичок в тенденциях, и они использовали всевозможные творческие решения для каждого объявленного цвета.
Раньше этого не было. Фактически, первым цветом года, о котором было объявлено в пресс-релизе, стал перец чили 2007 года. После этого каждый цвет сопровождался все большим количеством фона и узнаваемости. Давайте посмотрим на все цвета с 2018 по 2007 год.
2019: Живой коралл 16-1546
Не каждый цвет года вызвал у людей такой же резонанс, как «Живой коралл» в прошлом году.Коралловые тона в макияже были повсюду в течение всего года, модные подиумы были украшены коралловой одеждой в течение всего сезона, а в тенденциях декора интерьера также использовались коралловые обои и ткани. Это было приятным сюрпризом, когда всего за пару месяцев до объявления цвета года Apple выпустила новый телефон точно такого же цвета.
Согласно Pantone, «Живой коралл» был « n оживляющим и жизнеутверждающим коралловым оттенком с золотистым оттенком, который наполняет энергией и оживляет с более мягкими краями.»
Теплый, мягкий и яркий тон Living Coral был выбран, чтобы обеспечить комфорт в нашей постоянно меняющейся среде. Поскольку мы были окружены цифровыми технологиями и социальными сетями, нам нужен аутентичный и захватывающий опыт, который позволил бы нам тесно общаться. Легкая природа Живого Коралла способствовала веселью и беззаботным занятиям. Он представлял собой сплав современной жизни.
2018: Ультрафиолетовый 18-3838
Цветом 2018 года стал ультрафиолетовый.Ультрафиолетовый цвет олицетворяет «грядущее», олицетворяет мистицизм космоса, важность воображения и изобретательности, силу неизвестного и поиск большего.
Ультрафиолетовый цвет имеет более глубокое магическое значение из-за своего названия. С научной точки зрения, ультрафиолетовый цвет обычно не виден человеческому глазу. Ультрафиолет — это свет, излучаемый солнцем. Назвав эту тональность глубокого сине-фиолетового оттенка Ultra Violet, Pantone наделил ее волшебством.Исторически пурпурный цвет связан с духовностью и внимательностью. Цвет года Pantone 2018 соединил науку и мистику в одной чудесной упаковке.
2017: Зелень 15-0343
Цветом 2017 года стала зелень. Названная «нейтральной природой», зелень была цветом новых начинаний и прихода весны. Идея Greenery заключается в том, что, видя цвет, потребители визуализируют красоту природы и зов природы. Зелень отражает изменение того, как зелень вошла в архитектуру, городское планирование, моду и образ жизни.
Источник изображения
2016: Rose Quartz и Serenity
2016 был единственным годом, когда цвет года Pantone фактически состоял из двух цветов. Вместе Rose Quartz и Serenity олицетворяли собой стремление к благополучию и умиротворению. Сочетание теплого розового тона и холодного синего также бросило вызов обычному цветовому восприятию гендерной дифференциации. Двойной цвет символизировал растущую тенденцию гендерного нейтралитета в мире моды и то, как это повлияло на другие аспекты дизайна.
Источник изображения
2015: Марсала 18–1438
Создайте свою собственную графику, подобную этой, и примените любой цвет Pantone. Попробуйте это бесплатноМарсала, цвет года 2015 года, представляет собой изысканный темно-красно-коричневый оттенок, напоминающий винные и землистые тона. Насыщенный плюшевый оттенок идеально подходит для элегантной домашней и кухонной мебели. Марсала очень хорошо сочеталась с фактурными коврами и шторами как главная достопримечательность комнаты или как дополнение к другим элегантным земляным тонам.
Источник изображения
Источник изображения
2014: Сияющая орхидея 18-3224
В 2014 году Radiant Orchid был цветом, который вдохновлял на творчество и оригинальность. Это было очаровательно и вселяло уверенность. В 2014 году Radiant Orchid добилась больших успехов в моде и красоте. От подиумов до красных дорожек Radiant Orchid использовалась как для мужчин, так и для женщин.
Источник изображения
Источник изображения
2013: Изумруд 17-5641
Изумруд, украшенный драгоценными камнями, был признан цветом года в 2013 году.Элегантный, утонченный и роскошный, этот насыщенный зеленый цвет олицетворяет обновление, отрастание и омоложение. Изумруд идеально подходил как для модного, так и для домашнего интерьера из-за своего привлекательного тона. Изумруд также использовался в коллекции под названием «Коллекция красоты Sephora + Pantone Universe ™ 2013 Цвет года», в которую вошли тени для век, лак для ногтей и аксессуары.
Источник изображения
Источник изображения
2012: мандариновое танго 17-1463
Tangerine Tango был цветом движения вперед.Цвет года 2012 был глубоким, соблазнительным и напоминал закат над океаном. Tangerine Tango был представлен на показе мод Pantone Fashion Color Report Spring 2012 с такими дизайнерами, как Томми Хилфигер и Нанетт Лепор.
Источник изображения
2011: Жимолость 18-2120
Цвет года 2011, розовый жимолость, был очаровательным цветом, который внушал веселье, уверенность и смелость в повседневной работе. Жимолость была здоровым и поднимающим настроение цветом, обладающим некоторыми положительными качествами своего теплого родственного цвета — красного.Этот цвет входит в число 200 свадебных цветов Pantone от Dessy. В 2011 году Visa объединилась с Pantone и создала карту Visa Honeysuckle.
Источник изображения
, 2010 г .: бирюзовый 15-5519
Бирюза, цвет года 2010 года, была цветом безмятежного тропического рая и мощных защитных талисманов. Бирюза была важным цветом, потому что ее положительно воспринимали как мужчины, так и женщины. Цвет идеально подходил к аксессуарам и хорошо сочетался с землистыми тонами.
Источник изображения
Источник изображения
Источник изображения
2009: Мимоза 14-0848
Мимоза, цвет года по версии Pantone 2009, была названа в честь цветка мимозы и напитка из шампанского и апельсинового сока. Мимоза воспринималась как динамичный и энергичный цвет, вдохновляющий на инновации во времена экономической нестабильности.
Источник изображения
Источник изображения
Источник изображения
2008: Голубой Ирис 18-3943
В 2008 году Голубой Ирис был выбран Цветом Года за его смешанные синие и пурпурные качества, которые вдохновили на медитативное состояние.Он хорошо сочетается с темно-сливовыми и красно-коричневыми оттенками для украшения интерьера.
2007: перец чили 19-1557
Цвет года по версии Pantone 2007 года был первым, о котором было объявлено в пресс-релизе, посвященном его вдохновению. Перец чили был цветом пламенной страсти и духа приключений.
Источник изображения
Источник изображения
Как насчет цветов до 2007 года?К сожалению, Pantone не выпускал официальных пресс-релизов по цветам года до 2007 года.Благодаря магии Интернета мы немного знаем о том, как и почему был выбран каждый цвет. Давайте посмотрим на первые цвета года и коллекции цветов, на которые они вдохновили.
2006: Песочный доллар 13-1106
В 2006 году цвет года приобрел нейтральный оттенок с песочным долларом. Он был выбран, чтобы выразить озабоченность по поводу экономических проблем, происходящих в то время. Этот нейтральный цвет был очень популярен в моде и декоре интерьеров, напоминающих пустыню и песчаные пляжи.
Источник изображения
Источник изображения
2005: Голубая бирюза 15-5217
Вдохновленный природой в прошлом году, цвет года 2005 года стал сине-бирюзовым. Это цвет океана в спокойный солнечный день. Голубая бирюза отличается от настоящей бирюзы тем, что в ней меньше зеленого, что делает ее более прохладным оттенком.
Источник изображения
Источник изображения
2004: Tigerlily 17-1456
Цвет года 2004 года, тигровая лилия, представлял собой сильное сочетание красного и желтого, призванное вдохновить на смелое творчество.Вдохновленный одноименным цветком, он был демонстрацией того, как дизайн вдохновлен природой.
Источник изображения
Источник изображения
2003: Аква Скай 14-4811
Цветом 2003 года стал Aqua Sky, мягкий и спокойный тон, призванный вселить новую надежду и чувство безмятежности.
Источник изображения
Источник изображения
Источник изображения
2002: Настоящий красный 19-1664
В 2002 году True Red был выбран в качестве патриотического памятника событиям 11 сентября.Истинно-красный был сильным и мощным оттенком, олицетворяющим павших и отважных в тот роковой день.
Источник изображения
Источник изображения
2001: Фуксия Роза 17-2031
Яркий и страстный цвет Fuchsia Rose изменил направление по сравнению с прошлым годом.
Источник изображения
Источник изображения
2000: Церулеан 15-4020
Пудрово-лазурный был выбран, чтобы представить новое тысячелетие как образ безмятежности и спокойствия.Pantone опубликовал заявление об этом цвете года, потому что он был самым первым. Они выбрали синий потому, что это наиболее приемлемый цвет для всех, независимо от расы, пола или национальности. То, как синий цвет используется в потребительских товарах во всем мире и для любой аудитории, стало причиной, по которой он был выбран первым в истории Цветом года.
Источник изображения
Твоя очередь
Как вы включите цвет года Pantone в свои маркетинговые кампании? Дайте мне знать в разделе комментариев ниже…
цветов и настроения: как цвета, которые вы носите, влияют на вас
Этот пост может содержать партнерские ссылки, что означает, что мы можем получать комиссию, если вы совершаете покупку по нашим ссылкам. Пожалуйста, прочтите наше полное раскрытие здесь.
Цвета, которые мы выбираем для окружения, влияют на нас больше, чем мы думаем. Как общество, мы ассоциируем цвета со многими разными вещами — они имеют значение, выходящее за рамки простой визуальной стимуляции. Некоторые исследования даже предполагают, что мы ощущаем на цветов больше, чем видим их.
Вы, наверное, знаете, что дизайнеры интерьеров используют цвет для создания разного настроения в разных комнатах — чтобы вдохновлять, заряжать энергией или успокаивать. Почему бы не применить эту концепцию к своей одежде? Добавьте немного силы цвета в свои наряды и посмотрите, что из этого получится.
Вот краткое изложение всех самых популярных цветов, их значения и того, как вы можете использовать их в своих нарядах.
КрасныйХотите привлечь чье-то внимание? Красный твой цвет! Красный цвет придает силы и привлекает внимание к владельцу.Он также тесно связан с романтикой и страстью, что делает его идеальным цветом для свидания. Но будьте осторожны — также было сказано, что красный цвет стимулирует аппетит и заставляет нас хотеть нездоровой пищи, поэтому носите его с осторожностью, если вы пытаетесь питаться более здоровой пищей.
Товары : Платье — Lulu’s, кроссовки — Keds (Zappos), блузка — ASOS, сумка через плечо — Guess, каблуки — Madden Girl (Macy’s), юбка — Revolve
ОранжевыйКак и красный, оранжевый привлекает внимание и энергию, но, в отличие от насыщенного красного, он немного успокаивает.В то время как оранжевый является трудным цветом для некоторых оттенков кожи, если у вас есть цвет, который с ним работает, оранжевый поможет вам поднять позитивное, энергичное настроение.
Продукты : шорты — Romwe, сумка через плечо — Arcadia (TJMaxx), платье — Leith (Nordstrom), Pashmina — Gearonic TM (Amazon), верх — Forever 21, Jelly Sandals — Coach
ЖелтыйСолнечных оттенков желтого — идеальный вариант, чтобы подбодрить вас в плохой день, поэтому, если вы чувствуете себя подавленным, надевание желтого может помочь вам взбодриться.Желтый также ассоциируется с интеллектом и вдохновением, поэтому надев что-нибудь желтое в день большого экзамена, вы можете найти дополнительные ответы.
Товары : Каблуки — Worthington (JCPenney), юбка — американская одежда, Серьги — Aldo, рубашка — Banana Republic, мокасины — Klub Nico , платье — Lulu’s
ЗеленыйОттенки зеленого цвета спокойные и успокаивающие, а также ассоциируются с природой и окружающей средой.Вот почему зеленый — такой популярный весенний оттенок. Зеленый также освежает и снижает стресс у тех, кто на него смотрит.
Зеленый может оказаться еще одним сложным цветом, поэтому экспериментируйте, пока не почувствуете себя комфортно!
Если вы чувствуете себя подавленным во время финальной недели, добавьте к своей одежде зеленого цвета, и вы почувствуете себя более расслабленным.
Товары : Блузка — Modcloth, повязка на голову — Lele Sadoughi , платье — ASOS, каблуки — Steve Madden (DSW), шорты — J.Экипаж, сумка — Botkier
СинийСиний — это цвет, который может быть как мирным и успокаивающим, так и холодным и сдержанным. Если вы действительно переживаете стресс, синий цвет поможет вам расслабиться. Однако, если вам грустно, вы можете держаться подальше — синий цвет подсознательно может заставить вас чувствовать себя более «синим». Исследования также показывают, что синий может сделать вас более креативным, поэтому, если вы хотите направить немного гения в свой художественный проект, синий цвет может вам помочь.Это ведь не больно?
Товары : Платье — ASOS, Обувь — Lulu’s, Топ — Chicwish, Юбка — J.Crew Factory, Сумка — Kate Spade (Shopbop), Платье — Loft
ФиолетовыйЦарственный и изысканный фиолетовый ассоциируется с творчеством и роскошью. Как и красный, фиолетовый — это очень стимулирующий цвет, который может повысить ваш уровень энергии, когда вы его увидите. Это также цвет, который иногда ассоциируется с духовностью и интуицией, поэтому, если вам не удается принять решение, наденьте фиолетовый и посмотрите, что к вам приходит.
Товары : Блузка — Anthropologie, Сумочка — Buddy Supplies (Amazon), Платье — Lulu’s, Каблуки — Steve Madden (DSW), Юбка — Little Mistress (ASOS), Штаны — 7 For All Mankind
РозовыйКонечно, все мы знаем, что розовый любимый цвет настоящих девушек, но он также ассоциируется с романтикой и счастьем. Розовый очень успокаивает, поэтому не носите его, если вам нужно много энергии. Из-за своей романтической ассоциации розовый — хороший выбор для свидания.Вы также можете носить его в любое время, когда вам немного не по себе. Конечно, если вы лично ненавидите розовый, это вам не поможет.
Продукты: Юбка — J.Crew Factory, большая сумка — Ted Baker, платье — Gal Meets Glam, блузка — Neiman Marcus Last Call, каблуки — Sam Edelman (DSW), платье — Adrianna Papell (Macy’s)
БелыйСкучаете по лету в холодный день? Носите белое! Он отражает свет и напоминает нам о более солнечных днях.Он также ассоциируется с миром, невинностью, простотой и чистотой. В Японии белые гвоздики означают смерть — кто знал? Носите белый цвет, если хотите подчеркнуть любые другие цвета, которые вы носите — он оживит все, что вы с ним сочетаете.
Продукты : шорты — Gap Factory, кроссовки — Keds x Kate Spade , топ — Express, платье — Lulu’s, сумка через плечо — French Connection (Nordstrom Rack) , юбка — Lou & Серый
ЧерныйЕсли вы собираетесь продвигаться по службе или проходить собеседование для получения новой работы, вы можете носить черное — это означает силу, серьезность, авторитет и ответственность — все качества, которые, вероятно, ищет ваш начальник.Вне офиса черный — это тоже цвет, который придаст вам нотки рокера. Если вы стесняетесь, но когда-нибудь хотите почувствовать себя хулиганом, вам подойдет черный лак для ногтей!
Продукты : повязка на голову — Banana Republic, блузка — ASOS, каблуки — Banana Republic, платье — Charles Henry (Nordstrom), сумочка — Ted Baker, юбка — DKNY (Macy’s)
Как вы думаете?
Это всего лишь несколько идей о том, как по-новому взглянуть на цвет в вашем гардеробе — очевидно, они не являются твердыми рекомендациями, которые вы должны планировать каждый день.
Что для вас значат указанные выше цвета? Влияет ли ваше настроение на цвета, которые вы носите? Что вы думаете о соотношении цветов и настроения? Оставьте комментарий и поделитесь с нами своими мыслями.
Примечание редактора: Этот пост был первоначально опубликован в 2009 году; он был полностью обновлен и обновлен в 2019 году с добавлением новых фотографий, комплектов одежды и информации.
CNN с глубоким обучением для классификации одежды Fashion-MNIST
Последнее обновление 28 августа 2020 г.
Проблема классификации одежды Fashion-MNIST — это новый стандартный набор данных, используемый в компьютерном зрении и глубоком обучении.
Несмотря на то, что набор данных относительно прост, его можно использовать в качестве основы для обучения и практики разработки, оценки и использования сверточных нейронных сетей с глубокими сверточными данными для классификации изображений с нуля. Это включает в себя то, как разработать надежную систему тестирования для оценки производительности модели, как изучить улучшения модели и как сохранить модель, а затем загрузить ее, чтобы делать прогнозы на новых данных.
В этом руководстве вы узнаете, как с нуля разработать сверточную нейронную сеть для классификации одежды.
После прохождения этого руководства вы будете знать:
- Как разработать тестовую программу для разработки надежной оценки модели и установления базового уровня производительности для задачи классификации.
- Как изучить расширения базовой модели для улучшения обучения и возможностей модели.
- Как разработать окончательную модель, оценить производительность окончательной модели и использовать ее для прогнозирования новых изображений.
Начните свой проект с моей новой книги «Глубокое обучение для компьютерного зрения», включающей пошаговых руководств и файлов исходного кода Python для всех примеров.
Приступим.
- Обновление июнь / 2019 : исправлена незначительная ошибка, из-за которой модель определялась вне цикла CV. Обновленные результаты (спасибо Адитье).
- Обновлено октябрь / 2019 : Обновлено для Keras 2.3 и TensorFlow 2.0.
Как разработать глубокую сверточную нейронную сеть с нуля для моды Классификация одежды MNIST
Фото Здровита Скурца, некоторые права защищены.
Обзор учебного пособия
Это руководство разделено на пять частей; их:
- Fashion Классификация одежды MNIST
- Методология оценки модели
- Как разработать базовую модель
- Как разработать улучшенную модель
- Как завершить модель и сделать прогнозы
Хотите результатов с помощью глубокого обучения для компьютерного зрения?
Пройдите мой бесплатный 7-дневный ускоренный курс электронной почты (с образцом кода).
Нажмите, чтобы зарегистрироваться, а также получите бесплатную электронную версию курса в формате PDF.
Нажмите здесь, чтобы подписаться
Модная классификация одежды MNIST
Набор данных Fashion-MNIST предлагается как более сложный набор данных, заменяющий набор данных MNIST.
Это набор данных, состоящий из 60 000 небольших квадратных изображений в оттенках серого размером 28 × 28 пикселей 10 типов одежды, таких как обувь, футболки, платья и т. Д. Сопоставление всех целых чисел 0–9 с метками классов приведено ниже.
- 0: футболка / топ
- 1: Брюки
- 2: Пуловер
- 3: Платье
- 4: Пальто
- 5: Сандалии
- 6: Рубашка
- 7: Кроссовки
- 8: Сумка
- 9: Ботинки по щиколотку
Это более сложная проблема классификации, чем MNIST, и лучшие результаты достигаются за счет сверточных нейронных сетей с глубоким обучением с точностью классификации примерно от 90% до 95% на удерживаемом наборе тестовых данных.
В приведенном ниже примере загружается набор данных Fashion-MNIST с помощью API Keras и создается график первых девяти изображений в наборе обучающих данных.
# пример загрузки набора данных fashion mnist из matplotlib import pyplot из keras.datasets импортировать fashion_mnist # загрузить набор данных (trainX, trainy), (testX, testy) = fashion_mnist.load_data () # суммировать загруженный набор данных print (‘Поезд: X =% s, y =% s’% (trainX.shape, trainy.shape)) print (‘Тест: X =% s, y =% s’% (testX.shape, testy.shape)) # построить первые несколько изображений для i в диапазоне (9): # определить подзаговор pyplot.subplot (330 + 1 + я) # построить необработанные пиксельные данные пиплот.imshow (trainX [i], cmap = pyplot.get_cmap (‘серый’)) # показать рисунок pyplot.show ()
# пример загрузки набора данных fashion mnist из matplotlib import pyplot from keras.datasets import fashion_mnist # load dataset (trainX, trainy), (testX, testy) = fashion_mnist.load_data () # суммировать загруженный набор данных print (‘Train: X =% s, y =% s’% (trainX.shape, trainy.shape)) print (‘Test: X =% s, y =% s’% (testX.shape, testy.shape)) # построить первые несколько изображений для i в диапазоне (9): # определить подзаголовок pyplot.subplot (330 + 1 + i) # построить необработанные данные пикселей pyplot.imshow (trainX [i], cmap = pyplot.get_cmap (‘gray’)) # показать рисунок pyplot.show () |
При выполнении примера загружается набор данных для обучения и тестирования Fashion-MNIST и распечатывается их форма.
Мы видим, что есть 60 000 примеров в наборе обучающих данных и 10 000 в наборе тестовых данных, и что изображения действительно квадратные с размером 28 × 28 пикселей.
Поезд: X = (60000, 28, 28), y = (60000,) Тест: X = (10000, 28, 28), y = (10000,)
Поезд: X = (60000, 28, 28), y = (60000,) Тест: X = (10000, 28, 28), y = (10000,) |
Также создается график первых девяти изображений в наборе данных, показывающий, что на самом деле изображения являются фотографиями предметов одежды в оттенках серого.
График подмножества изображений из набора данных Fashion-MNIST
Методология оценки модели
Набор данных Fashion MNIST был разработан в ответ на широкое использование набора данных MNIST, который был эффективно « решен » с учетом использования современных сверточных нейронных сетей.
Fashion-MNIST был предложен в качестве замены MNIST, и, хотя он не был решен, можно регулярно достигать коэффициента ошибок 10% или меньше. Как и MNIST, он может быть полезной отправной точкой для разработки и отработки методологии решения классификации изображений с использованием сверточных нейронных сетей.
Вместо того, чтобы изучать литературу по хорошо работающим моделям в наборе данных, мы можем разработать новую модель с нуля.
В наборе данных уже есть четко определенный набор данных для обучения и тестирования, который мы можем использовать.
Чтобы оценить производительность модели для данного обучающего прогона, мы можем дополнительно разделить обучающий набор на набор данных для обучения и проверки. Затем можно построить график производительности набора данных по обучению и валидации для каждого прогона, чтобы представить кривые обучения и понять, насколько хорошо модель изучает проблему.
API Keras поддерживает это, указав аргумент « validation_data » для функции model.fit () при обучении модели, которая, в свою очередь, вернет объект, описывающий производительность модели для выбранных потерь и метрики на каждую тренировочную эпоху.
# запись производительности модели в наборе данных проверки во время обучения history = model.fit (…, validation_data = (valX, valY))
# запись производительности модели в наборе данных проверки во время обучения history = model.fit (…, validation_data = (valX, valY)) |
Чтобы оценить производительность модели по проблеме в целом, мы можем использовать k-кратную перекрестную проверку, возможно, 5-кратную перекрестную проверку. Это даст некоторый учет дисперсии модели как в отношении различий в наборах данных для обучения и тестирования, так и в отношении стохастической природы алгоритма обучения. Производительность модели может быть принята как средняя производительность в k-кратном масштабе, заданная со стандартным отклонением, которая при желании может быть использована для оценки доверительного интервала.
Мы можем использовать класс KFold из scikit-learn API, чтобы реализовать k-кратную оценку перекрестной проверки данной модели нейронной сети. Есть много способов добиться этого, хотя мы можем выбрать гибкий подход, при котором KFold используется только для указания индексов строк, используемых для каждого разделения.
# пример k-кратного резюме для нейронной сети данные = … # подготовить перекрестную проверку kfold = KFold (5, shuffle = True, random_state = 1) # перечислить разбиения для train_ix, test_ix в kfold.split (данные): модель = … …
# пример k-кратного cv для нейронной сети data = … # подготовить перекрестную проверку kfold = KFold (5, shuffle = True, random_state = 1) # перечислить разбиения для train_ix, test_ix в kfold.split (данные): модель = … … |
Мы воздержимся от фактического набора тестовых данных и будем использовать его для оценки нашей окончательной модели.
Как разработать базовую модель
Первым шагом является разработка базовой модели.
Это критически важно, поскольку оно включает в себя разработку инфраструктуры для тестовой оснастки, чтобы любую модель, которую мы разрабатываем, можно было оценить на наборе данных, и устанавливает базовый уровень производительности модели по проблеме, с помощью которого можно сравнивать все улучшения.
Испытательная привязь имеет модульную конструкцию, и мы можем разработать отдельную функцию для каждой детали. Это позволяет при желании модифицировать или заменять данный аспект тестовой оснастки отдельно от остальных.
Мы можем разработать эту испытательную систему с пятью ключевыми элементами. Это загрузка набора данных, подготовка набора данных, определение модели, оценка модели и представление результатов.
Загрузить набор данных
Мы кое-что знаем о наборе данных.
Например, мы знаем, что все изображения предварительно сегментированы (например, каждое изображение содержит один предмет одежды), что все изображения имеют одинаковый квадратный размер 28 × 28 пикселей и что изображения имеют оттенки серого.Следовательно, мы можем загружать изображения и изменять форму массивов данных, чтобы они имели единственный цветовой канал.
# загрузить набор данных (trainX, trainY), (testX, testY) = fashion_mnist.load_data () # преобразовать набор данных в один канал trainX = trainX.reshape ((trainX.shape [0], 28, 28, 1)) testX = testX.reshape ((testX.shape [0], 28, 28, 1))
# загрузить набор данных (trainX, trainY), (testX, testY) = fashion_mnist.load_data () # преобразовать набор данных в один канал trainX = trainX.reshape ((trainX.shape [0], 28, 28, 1)) testX = testX.reshape ((testX.shape [0 ], 28, 28, 1)) |
Мы также знаем, что существует 10 классов и что классы представлены как уникальные целые числа.
Таким образом, мы можем использовать одно горячее кодирование для элемента класса каждой выборки, преобразовывая целое число в двоичный вектор из 10 элементов с 1 для индекса значения класса.Этого можно добиться с помощью служебной функции to_categorical () .
# одно горячее кодирование целевых значений trainY = to_categorical (trainY) testY = to_categorical (testY)
# one целевые значения горячего кодирования trainY = to_categorical (trainY) testY = to_categorical (testY) |
Функция load_dataset () реализует это поведение и может использоваться для загрузки набора данных.
# загрузить поезд и тестовый набор данных def load_dataset (): # загрузить набор данных (trainX, trainY), (testX, testY) = fashion_mnist.load_data () # преобразовать набор данных в один канал trainX = trainX.reshape ((trainX.shape [0], 28, 28, 1)) testX = testX.reshape ((testX.shape [0], 28, 28, 1)) # одно горячее кодирование целевых значений trainY = to_categorical (trainY) testY = to_categorical (testY) вернуть trainX, trainY, testX, testY
# загрузить поезд и тестовый набор данных def load_dataset (): # загрузить набор данных (trainX, trainY), (testX, testY) = fashion_mnist.load_data () # преобразовать набор данных в один канал trainX = trainX.reshape ((trainX.shape [0], 28, 28, 1)) testX = testX.reshape ((testX.shape [0 ], 28, 28, 1)) # one целевые значения горячего кодирования trainY = to_categorical (trainY) testY = to_categorical (testY) return trainX, trainY, testX, testY |
Подготовка пиксельных данных
Мы знаем, что значения пикселей для каждого изображения в наборе данных представляют собой целые числа без знака в диапазоне от черного до белого или от 0 до 255.
Мы не знаем наилучшего способа масштабирования значений пикселей для моделирования, но мы знаем, что потребуется некоторое масштабирование.
Хорошей отправной точкой является нормализация значений пикселей изображений в градациях серого, например масштабируйте их до диапазона [0,1]. Это включает в себя сначала преобразование типа данных из целых чисел без знака в числа с плавающей запятой, а затем деление значений пикселей на максимальное значение.
# преобразовать целые числа в числа с плавающей запятой train_norm = train.astype (‘float32’) test_norm = тест.astype (‘float32’) # нормализовать до диапазона 0-1 train_norm = train_norm / 255.0 test_norm = test_norm / 255.0
# преобразовать целые числа в числа с плавающей запятой train_norm = train.astype (‘float32’) test_norm = test.astype (‘float32’) # нормализовать до диапазона 0-1 train_norm = train_norm / 255.0 test_norm = test_norm / 255,0 |
Приведенная ниже функция prepare_pixels () реализует это поведение и предоставляет значения пикселей как для обучающего, так и для тестового наборов данных, которые необходимо масштабировать.
# масштабный пиксель def Prep_pixels (поезд, тест): # преобразовать целые числа в числа с плавающей запятой train_norm = train.astype (‘float32’) test_norm = test.astype (‘float32’) # нормализовать до диапазона 0-1 train_norm = train_norm / 255.0 test_norm = test_norm / 255.0 # вернуть нормализованные изображения вернуть train_norm, test_norm
# масштабировать пиксели def Prep_pixels (train, test): # преобразовать из целых чисел в числа с плавающей запятой train_norm = train.astype (‘float32’) test_norm = test.astype (‘float32’) # нормализовать до диапазона 0-1 train_norm = train_norm / 255.0 test_norm = test_norm / 255.0 # вернуть нормализованные изображения return train_norm, test_norm |
Эта функция должна быть вызвана для подготовки значений пикселей перед любым моделированием.
Определить модель
Затем нам нужно определить базовую модель сверточной нейронной сети для проблемы.
Модель имеет два основных аспекта: интерфейс извлечения признаков, состоящий из сверточных и объединяющих слоев, и бэкэнд классификатора, который будет делать прогноз.
Для сверточного интерфейса мы можем начать с одного сверточного слоя с небольшим размером фильтра (3,3) и скромным количеством фильтров (32), за которым следует максимальный слой объединения. Затем карты фильтров могут быть сглажены, чтобы предоставить классификатору функции.
Учитывая, что проблема заключается в классификации нескольких классов, мы знаем, что нам потребуется выходной слой с 10 узлами, чтобы предсказать распределение вероятностей изображения, принадлежащего каждому из 10 классов.Это также потребует использования функции активации softmax. Между экстрактором признаков и выходным слоем мы можем добавить плотный слой для интерпретации признаков, в данном случае со 100 узлами.
Все уровни будут использовать функцию активации ReLU и схему инициализации весов He, оба являются передовыми методами.
Мы будем использовать консервативную конфигурацию оптимизатора стохастического градиентного спуска со скоростью обучения 0,01 и импульсом 0,9. Категориальная функция кросс-энтропийных потерь будет оптимизирована, подходящая для мультиклассовой классификации, и мы будем отслеживать метрику точности классификации, которая подходит, учитывая, что у нас одинаковое количество примеров в каждом из 10 классов.
Функция define_model () ниже определит и вернет эту модель.
# определить модель cnn def define_model (): model = Последовательный () model.add (Conv2D (32, (3, 3), активация = ‘relu’, kernel_initializer = ‘he_uniform’, input_shape = (28, 28, 1))) model.add (MaxPooling2D ((2, 2))) model.add (Сглаживание ()) model.add (Dense (100, активация = ‘relu’, kernel_initializer = ‘he_uniform’)) model.add (Плотный (10, активация = ‘softmax’)) # скомпилировать модель opt = SGD (lr = 0.01, импульс = 0,9) model.compile (optimizer = opt, loss = ‘category_crossentropy’, metrics = [‘precision’]) вернуть модель
# define cnn model def define_model (): model = Sequential () model.add (Conv2D (32, (3, 3), activate = ‘relu’, kernel_initializer = ‘he_uniform’, input_shape = (28, 28, 1))) model.add (MaxPooling2D ((2, 2))) model.add (Flatten ()) model.add (Dense (100, activate = ‘relu’, kernel_initializer = ‘he_uniform’)) model.add (Dense (10, activate = ‘softmax’)) # скомпилировать модель opt = SGD (lr = 0,01 , импульс = 0,9) model.compile (optimizer = opt, loss =’ategorical_crossentropy ‘, metrics = [‘ precision ‘]) return model |
Оценить модель
После того, как модель определена, нам нужно ее оценить.
Модель будет оцениваться с использованием 5-кратной перекрестной проверки.Значение k = 5 было выбрано, чтобы обеспечить основу как для повторной оценки, так и не быть слишком большим, чтобы требовать длительного времени. Каждый набор тестов будет составлять 20% обучающего набора данных или около 12 000 примеров, что близко к размеру фактического набора тестов для этой задачи.
Обучающий набор данных перетасовывается перед разделением, и выборка перетасовывается каждый раз, так что любая модель, которую мы оцениваем, будет иметь одинаковые обучающие и тестовые наборы данных в каждом сгибе, обеспечивая сравнение яблок с яблоками.
Мы обучим базовую модель для скромных 10 эпох обучения с размером пакета по умолчанию из 32 примеров. Набор тестов для каждой складки будет использоваться для оценки модели как в каждую эпоху тренировочного прогона, так что мы можем позже создать кривые обучения, так и в конце прогона, чтобы мы могли оценить производительность модели. Таким образом, мы будем отслеживать итоговую историю каждого запуска, а также точность классификации сгиба.
Приведенная ниже функция calculate_model () реализует это поведение, принимая набор обучающих данных в качестве аргументов и возвращая список оценок точности и историй обучения, которые впоследствии можно обобщить.
# оценить модель с помощью k-кратной перекрестной проверки def оценивать_модель (dataX, dataY, n_folds = 5): оценки, истории = список (), список () # подготовить перекрестную проверку kfold = KFold (n_folds, shuffle = True, random_state = 1) # перечислить разбиения для train_ix, test_ix в kfold.split (dataX): # определить модель модель = define_model () # выбираем строки для обучения и тестирования trainX, trainY, testX, testY = dataX [train_ix], dataY [train_ix], dataX [test_ix], dataY [test_ix] # подходящая модель история = модель.fit (trainX, trainY, epochs = 10, batch_size = 32, validation_data = (testX, testY), verbose = 0) # оценить модель _, acc = model.evaluate (testX, testY, verbose = 0) print (‘>% .3f’% (согласно * 100.0)) # добавить оценки scores.append (acc) history.append (история) вернуть результаты, истории
1 2 3 4 5 6 7 8 9 10 11 12 13 140002 14 18 19 20 | # оценить модель с помощью k-кратной перекрестной проверки def Assessment_model (dataX, dataY, n_folds = 5): scores, history = list (), list () # подготовить перекрестную проверку kfold = KFold (n_folds, shuffle = True, random_state = 1) # перечислить разбиения для train_ix, test_ix в kfold.split (dataX): # определить модель model = define_model () # выбрать строки для обучения и тестирования trainX, trainY, testX, testY = dataX [train_ix], dataY [train_ix], dataX [test_ix] , dataY [test_ix] # fit model history = model.fit (trainX, trainY, epochs = 10, batch_size = 32, validation_data = (testX, testY), verbose = 0) # оценить модель _ , acc = model.evaluate (testX, testY, verbose = 0) print (‘>%.3f ‘% (acc * 100.0)) # append scores scores.append (acc) history.append (history) return scores, history |
Представить результаты
После того, как модель будет оценена, мы можем представить результаты.
Необходимо представить два ключевых аспекта: диагностику обучающего поведения модели во время обучения и оценку производительности модели. Их можно реализовать с помощью отдельных функций.
Во-первых, диагностика включает создание линейного графика, показывающего производительность модели на поезде и наборе тестов во время каждого раза k-кратной перекрестной проверки. Эти графики полезны для понимания того, соответствует ли модель набору данных переоснащенной, недостаточной или хорошо подходящей.
Мы создадим одну фигуру с двумя частями графика, одна для потерь, а другая для точности. Синие линии будут указывать на производительность модели в наборе обучающих данных, а оранжевые линии — на производительность на удерживаемом наборе тестовых данных.Приведенная ниже функция summarize_diagnostics () создает и показывает этот график с учетом собранных историй обучения.
# построить кривые диагностического обучения def summarize_diagnostics (истории): для i в диапазоне (len (истории)): # потеря сюжета pyplot.subplot (211) pyplot.title (‘потеря перекрестной энтропии’) pyplot.plot (history [i] .history [‘loss’], color = ‘blue’, label = ‘train’) pyplot.plot (history [i] .history [‘val_loss’], color = ‘orange’, label = ‘test’) # точность сюжета пиплот.подсюжет (212) pyplot.title (‘Точность классификации’) pyplot.plot (history [i] .history [‘точность’], color = ‘blue’, label = ‘train’) pyplot.plot (history [i] .history [‘val_accuracy’], color = ‘orange’, label = ‘test’) pyplot.show ()
# график диагностических кривых обучения def summarize_diagnostics (история): для i в диапазоне (len (истории)): # потеря графика pyplot.subplot (211) pyplot.title (‘Перекрестная потеря энтропии’) pyplot.plot (history [i] .history [‘loss’], color = ‘blue’, label = ‘train’) pyplot. plot (histories [i] .history [‘val_loss’], color = ‘orange’, label = ‘test’) # точность графика pyplot.subplot (212) pyplot.title (‘Точность классификации’) pyplot.plot (history [i] .history [‘precision’], color = ‘blue’, label = ‘train’) pyplot.plot (history [i] .history [‘val_accuracy’], color = ‘orange’, label = ‘test’) pyplot.показать () |
Затем оценки точности классификации, полученные во время каждой кратности, можно суммировать, вычислив среднее значение и стандартное отклонение. Это обеспечивает оценку средней ожидаемой производительности модели, обученной на этом наборе данных, с оценкой средней дисперсии в среднем. Мы также подведем итоги распределения оценок, создав и отобразив график в виде прямоугольников и усов.
Функция summarize_performance () ниже реализует это для заданного списка оценок, собранных во время оценки модели.
# подвести итоги работы модели def summarize_performance (баллы): # распечатать сводку print (‘Точность: среднее =%. 3f стандартное =%. 3f, n =% d’% (среднее (баллы) * 100, стандартное (баллы) * 100, len (баллы))) # график результатов в виде квадратов и усов pyplot.boxplot (баллы) pyplot.show ()
# суммировать производительность модели def summarize_performance (scores): # print summary print (‘Точность: среднее =%.3f std =%. 3f, n =% d ‘% (среднее (баллы) * 100, std (баллы) * 100, len (баллы))) # диаграммы результатов в виде прямоугольников и усов pyplot.boxplot (баллы ) pyplot.show () |
Полный пример
Нам нужна функция, которая будет управлять тестовым жгутом.
Это включает вызов всех функций определения.
# запускаем тестовую программу для оценки модели def run_test_harness (): # загрузить набор данных trainX, trainY, testX, testY = load_dataset () # подготовить данные пикселей trainX, testX = Prep_pixels (trainX, testX) # оценить модель оценки, истории = оценка_модель (trainX, trainY) # кривые обучения summarize_diagnostics (истории) # подвести итоги расчетной производительности summarize_performance (баллы)
# запустить тестовый набор для оценки модели def run_test_harness (): # загрузить набор данных trainX, trainY, testX, testY = load_dataset () # подготовить данные пикселей trainX, testX = Prep_pixels trainX, testX) # оцените модель оценки, истории = оценка_модели (trainX, trainY) # кривые обучения summarize_diagnostics (истории) # суммируйте оценочную производительность summarize_performance ( | баллов)
Теперь у нас есть все необходимое; Полный пример кода для базовой модели сверточной нейронной сети в наборе данных MNIST приведен ниже.
# базовая модель cnn для fashion mnist из среднего значения импорта из numpy import std из matplotlib import pyplot из sklearn.model_selection импорт KFold из keras.datasets импортировать fashion_mnist from keras.utils import to_categorical из keras.models импортировать Последовательный из keras.layers импортировать Conv2D из keras.layers импорт MaxPooling2D from keras.layers import Плотный из keras.layers import Flatten из кераса.оптимизаторы импортируют SGD # загрузить поезд и тестовый набор данных def load_dataset (): # загрузить набор данных (trainX, trainY), (testX, testY) = fashion_mnist.load_data () # преобразовать набор данных в один канал trainX = trainX.reshape ((trainX.shape [0], 28, 28, 1)) testX = testX.reshape ((testX.shape [0], 28, 28, 1)) # одно горячее кодирование целевых значений trainY = to_categorical (trainY) testY = to_categorical (testY) вернуть trainX, trainY, testX, testY # масштабный пиксель def Prep_pixels (поезд, тест): # преобразовать целые числа в числа с плавающей запятой train_norm = поезд.astype (‘float32’) test_norm = test.astype (‘float32’) # нормализовать до диапазона 0-1 train_norm = train_norm / 255.0 test_norm = test_norm / 255.0 # вернуть нормализованные изображения вернуть train_norm, test_norm # определить модель cnn def define_model (): model = Последовательный () model.add (Conv2D (32, (3, 3), активация = ‘relu’, kernel_initializer = ‘he_uniform’, input_shape = (28, 28, 1))) model.add (MaxPooling2D ((2, 2))) model.add (Сглаживание ()) модель.добавить (Плотный (100, активация = ‘relu’, kernel_initializer = ‘he_uniform’)) model.add (Плотный (10, активация = ‘softmax’)) # скомпилировать модель opt = SGD (lr = 0,01, импульс = 0,9) model.compile (optimizer = opt, loss = ‘category_crossentropy’, metrics = [‘precision’]) модель возврата # оценить модель с помощью k-кратной перекрестной проверки def оценивать_модель (dataX, dataY, n_folds = 5): оценки, истории = список (), список () # подготовить перекрестную проверку kfold = KFold (n_folds, shuffle = True, random_state = 1) # перечислить разбиения для train_ix, test_ix в kfold.split (dataX): # определить модель модель = define_model () # выбираем строки для обучения и тестирования trainX, trainY, testX, testY = dataX [train_ix], dataY [train_ix], dataX [test_ix], dataY [test_ix] # подходящая модель history = model.fit (trainX, trainY, epochs = 10, batch_size = 32, validation_data = (testX, testY), verbose = 0) # оценить модель _, acc = model.evaluate (testX, testY, verbose = 0) print (‘>% .3f’% (согласно * 100.0)) # добавить оценки scores.append (acc) истории.добавить (история) вернуть оценки, истории # построить кривые диагностического обучения def summarize_diagnostics (истории): для i в диапазоне (len (истории)): # потеря сюжета pyplot.subplot (211) pyplot.title (‘потеря перекрестной энтропии’) pyplot.plot (history [i] .history [‘loss’], color = ‘blue’, label = ‘train’) pyplot.plot (history [i] .history [‘val_loss’], color = ‘orange’, label = ‘test’) # точность сюжета pyplot.subplot (212) pyplot.title (‘Точность классификации’) пиплот.сюжет (истории [i]. история [‘точность’], цвет = ‘синий’, метка = ‘поезд’) pyplot.plot (history [i] .history [‘val_accuracy’], color = ‘orange’, label = ‘test’) pyplot.show () # подвести итоги работы модели def summarize_performance (баллы): # распечатать сводку print (‘Точность: среднее =%. 3f стандартное =%. 3f, n =% d’% (среднее (баллы) * 100, стандартное (баллы) * 100, len (баллы))) # график результатов в виде квадратов и усов pyplot.boxplot (баллы) pyplot.show () # запускаем тестовую программу для оценки модели def run_test_harness (): # загрузить набор данных trainX, trainY, testX, testY = load_dataset () # подготовить данные пикселей trainX, testX = Prep_pixels (trainX, testX) # оценить модель оценки, истории = оценка_модель (trainX, trainY) # кривые обучения summarize_diagnostics (истории) # подвести итоги расчетной производительности summarize_performance (баллы) # точка входа, запускаем тестовый жгут run_test_harness ()
1 2 3 4 5 6 7 8 9 10 11 12 13 140002 18 19 20 21 22 23 24 25 26 27 28 29 30 000 000 34 35 36 37 38 39 40 41 42 43 44 45 46 49 0002 4700030002 47000351 52 53 54 55 56 57 58 59 60 61 62 63 9 0002 6465 66 67 68 69 70 71 72 73 74 75 76 77 81 82 83 84 85 86 87 88 89 90 91 92 93 000 93 000 97 98 99 100 101 102 103 104 105 106 107 108 109 | # базовая модель cnn для fashion mnist из numpy import mean из numpy import std из matplotlib import pyplot из sklearn.model_selection import KFold from keras.datasets import fashion_mnist from keras.utils import to_categorical from keras.models import Sequential from keras.layers import Conv2D ers from keras.layers import d maxPo Dense из keras.layers import Flatten from keras.optimizers import SGD # load train and test dataset def load_dataset (): # load dataset (trainX, trainY), (test testY) = fashion_mnist.load_data () # преобразовать набор данных в один канал trainX = trainX.reshape ((trainX.shape [0], 28, 28, 1)) testX = testX.reshape ((testX.shape [0 ], 28, 28, 1)) # one целевые значения горячего кодирования trainY = to_categorical (trainY) testY = to_categorical (testY) return trainX, trainY, testX, testY # scale def Prep_pixels (train, test): # преобразовать из целых чисел в числа с плавающей запятой train_norm = train.astype (‘float32’) test_norm = test.astype (‘float32’) # нормализовать до диапазона 0-1 train_norm = train_norm / 255.0 test_norm = test_norm / 255.0 # вернуть нормализованные изображения return train_norm, test_norm # define cnn model def define_model (): model = Sequential () model.add (Conv2D (32, (3, 3), activate = ‘relu’, kernel_initializer = ‘ he_uniform ‘, input_shape = (28, 28, 1))) модель.add (MaxPooling2D ((2, 2))) model.add (Flatten ()) model.add (Dense (100, Activation = ‘relu’, kernel_initializer = ‘he_uniform’)) model.add ( Dense (10, activate = ‘softmax’)) # скомпилировать модель opt = SGD (lr = 0,01, импульс = 0,9) model.compile (optimizer = opt, loss = ‘categoryorical_crossentropy’, metrics = [‘ точность ‘]) return model # оценить модель с помощью k-кратной перекрестной проверки def Assessment_model (dataX, dataY, n_folds = 5): баллов, history = list (), list () # подготовить перекрестную проверку kfold = KFold (n_folds, shuffle = True, random_state = 1) # перечислить разбиения для train_ix, test_ix в kfold.split (dataX): # определить модель model = define_model () # выбрать строки для обучения и тестирования trainX, trainY, testX, testY = dataX [train_ix], dataY [train_ix], dataX [test_ix] , dataY [test_ix] # fit model history = model.fit (trainX, trainY, epochs = 10, batch_size = 32, validation_data = (testX, testY), verbose = 0) # оценить модель _ , acc = model.evaluate (testX, testY, verbose = 0) print (‘>%.3f ‘% (acc * 100.0)) # добавить оценки scores.append (acc) history.append (history) return scores, history # построить диагностические кривые обучения def summarize_diagnostics ( историй): для i в диапазоне (len (истории)): # потеря графика pyplot.subplot (211) pyplot.title (‘Cross Entropy Loss’) pyplot.plot (history [i ] .history [‘loss’], color = ‘blue’, label = ‘train’) pyplot.plot (histories [i] .history [‘val_loss’], color = ‘orange’, label = ‘test’) # точность графика pyplot.subplot (212) pyplot.title (‘Точность классификации’) pyplot.plot (history [i] .history [‘precision’], color = ‘blue’, label = ‘train’) pyplot.plot (history [i] .history [‘val_accuracy’], color = ‘orange’, label = ‘test’) pyplot.show () # суммировать производительность модели def summarize_performance (scores): # print summary print (‘Accuracy: mean =%.3f std =%. 3f, n =% d ‘% (среднее (баллы) * 100, std (баллы) * 100, len (баллы))) # графики результатов в виде прямоугольников и усов pyplot.boxplot (баллы ) pyplot.show () # запустить тестовую программу для оценки модели def run_test_harness (): # загрузить набор данных trainX, trainY, testX, testY = load_dataset () пиксельные данныеtrainX, testX = Prep_pixels (trainX, testX) # оцените модель оценки, истории = eval_model (trainX, trainY) # кривые обучения summarize_diagnostics (history) # summarize_diagnostics (history) # summarize summarize_performance (scores)# точка входа, запустить тестовую программу run_test_harness () |
При выполнении примера печатается точность классификации для каждого этапа процесса перекрестной проверки.Это помогает понять, что оценка модели продолжается.
Примечание : Ваши результаты могут отличаться из-за стохастической природы алгоритма или процедуры оценки или различий в числовой точности. Попробуйте запустить пример несколько раз и сравните средний результат.
Мы видим, что для каждой кратности базовая модель достигла уровня ошибок ниже 10%, а в двух случаях — 98% и 99% точности. Это хорошие результаты.
> 91.200 > 91,217 > 90,958 > 91,242 > 91,317
> 91.200 > 91.217 > 90.958 > 91.242 > 91.317 |
Далее показан диагностический график, дающий представление о поведении модели при обучении по каждой складке.
В этом случае мы видим, что модель в целом хорошо подходит, при этом кривые обучения и тестирования сходятся.Могут быть некоторые признаки небольшого переобучения.
Кривые обучения-потери и точности-для-базовой-модели-в-моде-MNIST-Dataset-Во время перекрестной проверки k-Fold
Затем рассчитывается сводка производительности модели. Мы видим, что в этом случае оценка модели составляет около 96%, что впечатляет.
Точность: среднее значение = 91,187 стандартное отклонение = 0,121, n = 5
Точность: среднее = 91.187 std = 0,121, n = 5 |
Наконец, создается диаграмма «прямоугольник» и «усы», чтобы суммировать распределение оценок точности.
Ящик и усы-график-оценки-оценки-базовой-модели-на-моде-MNIST-Dataset-Evaluated-Using-k-Fold-Cross-Validation
Как и следовало ожидать, распределение распространилось на низкие девяностые.
Теперь у нас есть надежная испытательная система и хорошо работающая базовая модель.
Как разработать улучшенную модель
Есть много способов улучшить базовую модель.
Мы рассмотрим области, которые часто приводят к улучшениям, так называемые низко висящие плоды. Первый будет изменением сверточной операции для добавления заполнения, а второй будет основываться на этом, чтобы увеличить количество фильтров.
Свертки с заполнением
Добавление заполнения к сверточной операции часто может привести к повышению производительности модели, поскольку большему количеству входных изображений карт функций предоставляется возможность участвовать или вносить свой вклад в выходные данные
По умолчанию сверточная операция использует заполнение « действительных », что означает, что свертки применяются только там, где это возможно.Это можно изменить на заполнение « тот же », чтобы вокруг входа добавлялись нулевые значения, так что выход имел тот же размер, что и вход.
… model.add (Conv2D (32, (3, 3), padding = ‘same’, activate = ‘relu’, kernel_initializer = ‘he_uniform’, input_shape = (28, 28, 1)))
… model.add (Conv2D (32, (3, 3), padding = ‘same’, activate = ‘relu’, kernel_initializer = ‘he_uniform’, input_shape = (28, 28, 1))) |
Полный список кода, включая изменение заполнения, приведен ниже для полноты.
# модель с заполненными свертками для набора данных fashion mnist из среднего значения импорта из numpy import std из matplotlib import pyplot из sklearn.model_selection импорт KFold из keras.datasets импортировать fashion_mnist from keras.utils import to_categorical из keras.models импортировать Последовательный из keras.layers импортировать Conv2D из keras.layers импорт MaxPooling2D from keras.layers import Плотный из keras.layers import Flatten из кераса.оптимизаторы импортируют SGD # загрузить поезд и тестовый набор данных def load_dataset (): # загрузить набор данных (trainX, trainY), (testX, testY) = fashion_mnist.load_data () # преобразовать набор данных в один канал trainX = trainX.reshape ((trainX.shape [0], 28, 28, 1)) testX = testX.reshape ((testX.shape [0], 28, 28, 1)) # одно горячее кодирование целевых значений trainY = to_categorical (trainY) testY = to_categorical (testY) вернуть trainX, trainY, testX, testY # масштабный пиксель def Prep_pixels (поезд, тест): # преобразовать целые числа в числа с плавающей запятой train_norm = поезд.astype (‘float32’) test_norm = test.astype (‘float32’) # нормализовать до диапазона 0-1 train_norm = train_norm / 255.0 test_norm = test_norm / 255.0 # вернуть нормализованные изображения вернуть train_norm, test_norm # определить модель cnn def define_model (): model = Последовательный () model.add (Conv2D (32, (3, 3), padding = ‘same’, activate = ‘relu’, kernel_initializer = ‘he_uniform’, input_shape = (28, 28, 1))) model.add (MaxPooling2D ((2, 2))) model.add (Сглаживание ()) модель.добавить (Плотный (100, активация = ‘relu’, kernel_initializer = ‘he_uniform’)) model.add (Плотный (10, активация = ‘softmax’)) # скомпилировать модель opt = SGD (lr = 0,01, импульс = 0,9) model.compile (optimizer = opt, loss = ‘category_crossentropy’, metrics = [‘precision’]) модель возврата # оценить модель с помощью k-кратной перекрестной проверки def оценивать_модель (dataX, dataY, n_folds = 5): оценки, истории = список (), список () # подготовить перекрестную проверку kfold = KFold (n_folds, shuffle = True, random_state = 1) # перечислить разбиения для train_ix, test_ix в kfold.split (dataX): # определить модель модель = define_model () # выбираем строки для обучения и тестирования trainX, trainY, testX, testY = dataX [train_ix], dataY [train_ix], dataX [test_ix], dataY [test_ix] # подходящая модель history = model.fit (trainX, trainY, epochs = 10, batch_size = 32, validation_data = (testX, testY), verbose = 0) # оценить модель _, acc = model.evaluate (testX, testY, verbose = 0) print (‘>% .3f’% (согласно * 100.0)) # добавить оценки scores.append (acc) истории.добавить (история) вернуть оценки, истории # построить кривые диагностического обучения def summarize_diagnostics (истории): для i в диапазоне (len (истории)): # потеря сюжета pyplot.subplot (211) pyplot.title (‘потеря перекрестной энтропии’) pyplot.plot (history [i] .history [‘loss’], color = ‘blue’, label = ‘train’) pyplot.plot (history [i] .history [‘val_loss’], color = ‘orange’, label = ‘test’) # точность сюжета pyplot.subplot (212) pyplot.title (‘Точность классификации’) пиплот.сюжет (истории [i]. история [‘точность’], цвет = ‘синий’, метка = ‘поезд’) pyplot.plot (history [i] .history [‘val_accuracy’], color = ‘orange’, label = ‘test’) pyplot.show () # подвести итоги работы модели def summarize_performance (баллы): # распечатать сводку print (‘Точность: среднее =%. 3f стандартное =%. 3f, n =% d’% (среднее (баллы) * 100, стандартное (баллы) * 100, len (баллы))) # график результатов в виде квадратов и усов pyplot.boxplot (баллы) pyplot.show () # запускаем тестовую программу для оценки модели def run_test_harness (): # загрузить набор данных trainX, trainY, testX, testY = load_dataset () # подготовить данные пикселей trainX, testX = Prep_pixels (trainX, testX) # оценить модель оценки, истории = оценка_модель (trainX, trainY) # кривые обучения summarize_diagnostics (истории) # подвести итоги расчетной производительности summarize_performance (баллы) # точка входа, запускаем тестовый жгут run_test_harness ()
1 2 3 4 5 6 7 8 9 10 11 12 13 140002 18 19 20 21 22 23 24 25 26 27 28 29 30 000 000 34 35 36 37 38 39 40 41 42 43 44 45 46 49 0002 4700030002 47000351 52 53 54 55 56 57 58 59 60 61 62 63 9 0002 6465 66 67 68 69 70 71 72 73 74 75 76 77 81 82 83 84 85 86 87 88 89 90 91 92 93 000 93 000 97 98 99 100 101 102 103 104 105 106 107 108 109 | # модель с заполненными свертками для набора данных fashion mnist из numpy import mean из numpy import std из matplotlib import pyplot from sklearn.model_selection import KFold from keras.datasets import fashion_mnist from keras.utils import to_categorical from keras.models import Sequential from keras.layers import Conv2D ers from keras.layers import d maxPo Dense из keras.layers import Flatten from keras.optimizers import SGD # load train and test dataset def load_dataset (): # load dataset (trainX, trainY), (test testY) = fashion_mnist.load_data () # преобразовать набор данных в один канал trainX = trainX.reshape ((trainX.shape [0], 28, 28, 1)) testX = testX.reshape ((testX.shape [0 ], 28, 28, 1)) # one целевые значения горячего кодирования trainY = to_categorical (trainY) testY = to_categorical (testY) return trainX, trainY, testX, testY # scale def Prep_pixels (train, test): # преобразовать из целых чисел в числа с плавающей запятой train_norm = train.astype (‘float32’) test_norm = test.astype (‘float32’) # нормализовать до диапазона 0-1 train_norm = train_norm / 255.0 test_norm = test_norm / 255.0 # вернуть нормализованные изображения return train_norm, test_norm # define cnn model def define_model (): model = Sequential () model.add (Conv2D (32, (3, 3), padding = ‘same’, activate = ‘ relu ‘, kernel_initializer =’ he_uniform ‘, input_shape = (28, 28, 1))) модель.add (MaxPooling2D ((2, 2))) model.add (Flatten ()) model.add (Dense (100, Activation = ‘relu’, kernel_initializer = ‘he_uniform’)) model.add ( Dense (10, activate = ‘softmax’)) # скомпилировать модель opt = SGD (lr = 0,01, импульс = 0,9) model.compile (optimizer = opt, loss = ‘categoryorical_crossentropy’, metrics = [‘ точность ‘]) return model # оценить модель с помощью k-кратной перекрестной проверки def Assessment_model (dataX, dataY, n_folds = 5): баллов, history = list (), list () # подготовить перекрестную проверку kfold = KFold (n_folds, shuffle = True, random_state = 1) # перечислить разбиения для train_ix, test_ix в kfold.split (dataX): # определить модель model = define_model () # выбрать строки для обучения и тестирования trainX, trainY, testX, testY = dataX [train_ix], dataY [train_ix], dataX [test_ix] , dataY [test_ix] # fit model history = model.fit (trainX, trainY, epochs = 10, batch_size = 32, validation_data = (testX, testY), verbose = 0) # оценить модель _ , acc = model.evaluate (testX, testY, verbose = 0) print (‘>%.3f ‘% (acc * 100.0)) # добавить оценки scores.append (acc) history.append (history) return scores, history # построить диагностические кривые обучения def summarize_diagnostics ( историй): для i в диапазоне (len (истории)): # потеря графика pyplot.subplot (211) pyplot.title (‘Cross Entropy Loss’) pyplot.plot (history [i ] .history [‘loss’], color = ‘blue’, label = ‘train’) pyplot.plot (histories [i] .history [‘val_loss’], color = ‘orange’, label = ‘test’) # точность графика pyplot.subplot (212) pyplot.title (‘Точность классификации’) pyplot.plot (history [i] .history [‘precision’], color = ‘blue’, label = ‘train’) pyplot.plot (history [i] .history [‘val_accuracy’], color = ‘orange’, label = ‘test’) pyplot.show () # суммировать производительность модели def summarize_performance (scores): # print summary print (‘Accuracy: mean =%.3f std =%. 3f, n =% d ‘% (среднее (баллы) * 100, std (баллы) * 100, len (баллы))) # графики результатов в виде прямоугольников и усов pyplot.boxplot (баллы ) pyplot.show () # запустить тестовую программу для оценки модели def run_test_harness (): # загрузить набор данных trainX, trainY, testX, testY = load_dataset () пиксельные данныеtrainX, testX = Prep_pixels (trainX, testX) # оцените модель оценки, истории = eval_model (trainX, trainY) # кривые обучения summarize_diagnostics (history) # summarize_diagnostics (history) # summarize summarize_performance (scores)# точка входа, запустить тестовую программу run_test_harness () |
Повторный запуск примера сообщает о производительности модели для каждого этапа процесса перекрестной проверки.
Примечание : Ваши результаты могут отличаться из-за стохастической природы алгоритма или процедуры оценки или различий в числовой точности. Попробуйте запустить пример несколько раз и сравните средний результат.
Мы можем увидеть, возможно, небольшое улучшение производительности модели по сравнению с базовой линией во всех сегментах перекрестной проверки.
> 90,875 > 91,442 > 91,242 > 91,275 > 91,450
> 90.875 > 91,442 > 91,242 > 91,275 > 91,450 |
Создается график кривых обучения. Как и в случае с базовой моделью, мы можем увидеть небольшое переоснащение. Это можно было бы решить, возможно, с использованием регуляризации или обучения меньшему количеству эпох.
Кривые обучения-потери и точности-для-того же-заполнения-в-моде-MNIST-Dataset-во время-k-Fold-Cross-Validation
Далее представлена расчетная производительность модели, показывающая производительность с очень небольшим снижением средней точности модели, 91.257% по сравнению с 91,187% с базовой моделью.
Это может быть или не быть реальным эффектом, поскольку он находится в пределах стандартного отклонения. Возможно, большее количество повторений эксперимента сможет выявить этот факт.
Точность: среднее значение = 91,257 стандартное отклонение = 0,209, n = 5
Точность: среднее значение = 91,257 стандартное значение = 0,209, n = 5 |
Диаграмма-квадратик и усы-оценки-оценки-для-же-заполнения-на-моде-MNIST-Dataset-Evaluated-Using-k-Fold-Cross-Validation
Увеличивающие фильтры
Увеличение количества фильтров, используемых в сверточном слое, часто может улучшить производительность, поскольку может предоставить больше возможностей для извлечения простых функций из входных изображений.
Это особенно актуально, когда используются очень маленькие фильтры, такие как 3×3 пикселя.
В этом изменении мы можем увеличить количество фильтров в сверточном слое с 32 до удвоения по сравнению с 64. Мы также будем опираться на возможное улучшение, предлагаемое с помощью заполнения « тот же ».
… model.add (Conv2D (64, (3, 3), padding = ‘same’, activate = ‘relu’, kernel_initializer = ‘he_uniform’, input_shape = (28, 28, 1)))
… model.add (Conv2D (64, (3, 3), padding = ‘same’, activate = ‘relu’, kernel_initializer = ‘he_uniform’, input_shape = (28, 28, 1))) |
Полный список кода, включая изменение заполнения, приведен ниже для полноты.
# модель с двойными фильтрами для набора данных fashion mnist из среднего значения импорта из numpy import std из matplotlib import pyplot из sklearn.model_selection импорт KFold из кераса.наборы данных импортировать fashion_mnist from keras.utils import to_categorical из keras.models импортировать Последовательный из keras.layers импортировать Conv2D из keras.layers импорт MaxPooling2D from keras.layers import Плотный из keras.layers import Flatten от keras.optimizers импортные SGD # загрузить поезд и тестовый набор данных def load_dataset (): # загрузить набор данных (trainX, trainY), (testX, testY) = fashion_mnist.load_data () # преобразовать набор данных в один канал trainX = поездX.изменить форму ((trainX.shape [0], 28, 28, 1)) testX = testX.reshape ((testX.shape [0], 28, 28, 1)) # одно горячее кодирование целевых значений trainY = to_categorical (trainY) testY = to_categorical (testY) вернуть trainX, trainY, testX, testY # масштабный пиксель def Prep_pixels (поезд, тест): # преобразовать целые числа в числа с плавающей запятой train_norm = train.astype (‘float32’) test_norm = test.astype (‘float32’) # нормализовать до диапазона 0-1 train_norm = train_norm / 255.0 тест_норма = тест_норм / 255.0 # вернуть нормализованные изображения вернуть train_norm, test_norm # определить модель cnn def define_model (): model = Последовательный () model.add (Conv2D (64, (3, 3), padding = ‘same’, activate = ‘relu’, kernel_initializer = ‘he_uniform’, input_shape = (28, 28, 1))) model.add (MaxPooling2D ((2, 2))) model.add (Сглаживание ()) model.add (Dense (100, активация = ‘relu’, kernel_initializer = ‘he_uniform’)) model.add (Плотный (10, активация = ‘softmax’)) # скомпилировать модель opt = SGD (lr = 0.01, импульс = 0,9) model.compile (optimizer = opt, loss = ‘category_crossentropy’, metrics = [‘precision’]) модель возврата # оценить модель с помощью k-кратной перекрестной проверки def оценивать_модель (dataX, dataY, n_folds = 5): оценки, истории = список (), список () # подготовить перекрестную проверку kfold = KFold (n_folds, shuffle = True, random_state = 1) # перечислить разбиения для train_ix, test_ix в kfold.split (dataX): # определить модель модель = define_model () # выбираем строки для обучения и тестирования trainX, trainY, testX, testY = dataX [train_ix], dataY [train_ix], dataX [test_ix], dataY [test_ix] # подходящая модель история = модель.fit (trainX, trainY, epochs = 10, batch_size = 32, validation_data = (testX, testY), verbose = 0) # оценить модель _, acc = model.evaluate (testX, testY, verbose = 0) print (‘>% .3f’% (согласно * 100.0)) # добавить оценки scores.append (acc) history.append (история) вернуть оценки, истории # построить кривые диагностического обучения def summarize_diagnostics (истории): для i в диапазоне (len (истории)): # потеря сюжета pyplot.subplot (211) пиплот.title («Перекрестная потеря энтропии») pyplot.plot (history [i] .history [‘loss’], color = ‘blue’, label = ‘train’) pyplot.plot (history [i] .history [‘val_loss’], color = ‘orange’, label = ‘test’) # точность сюжета pyplot.subplot (212) pyplot.title (‘Точность классификации’) pyplot.plot (history [i] .history [‘точность’], color = ‘blue’, label = ‘train’) pyplot.plot (history [i] .history [‘val_accuracy’], color = ‘orange’, label = ‘test’) pyplot.show () # подвести итоги работы модели def summarize_performance (баллы): # распечатать сводку print (‘Точность: среднее =%.3f std =%. 3f, n =% d ‘% (среднее (баллы) * 100, стандартное (баллы) * 100, len (баллы))) # график результатов в виде квадратов и усов pyplot.boxplot (баллы) pyplot.show () # запускаем тестовую программу для оценки модели def run_test_harness (): # загрузить набор данных trainX, trainY, testX, testY = load_dataset () # подготовить данные пикселей trainX, testX = Prep_pixels (trainX, testX) # оценить модель оценки, истории = оценка_модель (trainX, trainY) # кривые обучения summarize_diagnostics (истории) # подвести итоги расчетной производительности summarize_performance (баллы) # точка входа, запускаем тестовый жгут run_test_harness ()
1 2 3 4 5 6 7 8 9 10 11 12 13 140002 18 19 20 21 22 23 24 25 26 27 28 29 30 000 000 34 35 36 37 38 39 40 41 42 43 44 45 46 49 0002 4700030002 47000351 52 53 54 55 56 57 58 59 60 61 62 63 9 0002 6465 66 67 68 69 70 71 72 73 74 75 76 77 81 82 83 84 85 86 87 88 89 90 91 92 93 000 93 000 97 98 99 100 101 102 103 104 105 106 107 108 109 | # модель с двойными фильтрами для набора данных fashion mnist из numpy import mean из numpy import std из matplotlib import pyplot from sklearn.model_selection import KFold from keras.datasets import fashion_mnist from keras.utils import to_categorical from keras.models import Sequential from keras.layers import Conv2D ers from keras.layers import d maxPo Dense из keras.layers import Flatten from keras.optimizers import SGD # load train and test dataset def load_dataset (): # load dataset (trainX, trainY), (test testY) = fashion_mnist.load_data () # преобразовать набор данных в один канал trainX = trainX.reshape ((trainX.shape [0], 28, 28, 1)) testX = testX.reshape ((testX.shape [0 ], 28, 28, 1)) # one целевые значения горячего кодирования trainY = to_categorical (trainY) testY = to_categorical (testY) return trainX, trainY, testX, testY # scale def Prep_pixels (train, test): # преобразовать из целых чисел в числа с плавающей запятой train_norm = train.astype (‘float32’) test_norm = test.astype (‘float32’) # нормализовать до диапазона 0-1 train_norm = train_norm / 255.0 test_norm = test_norm / 255.0 # вернуть нормализованные изображения return train_norm, test_norm # define cnn model def define_model (): model = Sequential () model.add (Conv2D (64, (3, 3), padding = ‘same’, activate = ‘ relu ‘, kernel_initializer =’ he_uniform ‘, input_shape = (28, 28, 1))) модель.add (MaxPooling2D ((2, 2))) model.add (Flatten ()) model.add (Dense (100, Activation = ‘relu’, kernel_initializer = ‘he_uniform’)) model.add ( Dense (10, activate = ‘softmax’)) # скомпилировать модель opt = SGD (lr = 0,01, импульс = 0,9) model.compile (optimizer = opt, loss = ‘categoryorical_crossentropy’, metrics = [‘ точность ‘]) return model # оценить модель с помощью k-кратной перекрестной проверки def Assessment_model (dataX, dataY, n_folds = 5): баллов, history = list (), list () # подготовить перекрестную проверку kfold = KFold (n_folds, shuffle = True, random_state = 1) # перечислить разбиения для train_ix, test_ix в kfold.split (dataX): # определить модель model = define_model () # выбрать строки для обучения и тестирования trainX, trainY, testX, testY = dataX [train_ix], dataY [train_ix], dataX [test_ix] , dataY [test_ix] # fit model history = model.fit (trainX, trainY, epochs = 10, batch_size = 32, validation_data = (testX, testY), verbose = 0) # оценить модель _ , acc = model.evaluate (testX, testY, verbose = 0) print (‘>%.3f ‘% (acc * 100.0)) # добавить оценки scores.append (acc) history.append (history) return scores, history # построить диагностические кривые обучения def summarize_diagnostics ( историй): для i в диапазоне (len (истории)): # потеря графика pyplot.subplot (211) pyplot.title (‘Cross Entropy Loss’) pyplot.plot (history [i ] .history [‘loss’], color = ‘blue’, label = ‘train’) pyplot.plot (histories [i] .history [‘val_loss’], color = ‘orange’, label = ‘test’) # точность графика pyplot.subplot (212) pyplot.title (‘Точность классификации’) pyplot.plot (history [i] .history [‘precision’], color = ‘blue’, label = ‘train’) pyplot.plot (history [i] .history [‘val_accuracy’], color = ‘orange’, label = ‘test’) pyplot.show () # суммировать производительность модели def summarize_performance (scores): # print summary print (‘Accuracy: mean =%.3f std =%. 3f, n =% d ‘% (среднее (баллы) * 100, std (баллы) * 100, len (баллы))) # графики результатов в виде прямоугольников и усов pyplot.boxplot (баллы ) pyplot.show () # запустить тестовую программу для оценки модели def run_test_harness (): # загрузить набор данных trainX, trainY, testX, testY = load_dataset () пиксельные данныеtrainX, testX = Prep_pixels (trainX, testX) # оцените модель оценки, истории = eval_model (trainX, trainY) # кривые обучения summarize_diagnostics (history) # summarize_diagnostics (history) # summarize summarize_performance (scores)# точка входа, запустить тестовую программу run_test_harness () |
Выполнение примера показывает производительность модели для каждого этапа процесса перекрестной проверки.
Примечание : Ваши результаты могут отличаться из-за стохастической природы алгоритма или процедуры оценки или различий в числовой точности. Попробуйте запустить пример несколько раз и сравните средний результат.
Оценка на кратность может указывать на некоторое дальнейшее улучшение по сравнению с исходным уровнем и с использованием только одного и того же заполнения.
> 90,917 > 90,908 > 90,175 > 91,158 > 91,408
> 90.917 > 90,908 > 90,175 > 91,158 > 91,408 |
Создается график кривых обучения, в данном случае показывающий, что модели все еще имеют разумное соответствие задаче с небольшим признаком переобучения некоторых прогонов.
Кривые потерь и точности обучения для дополнительных фильтров и заполнения в моде-MNIST-Dataset-In-k-Fold-Cross-Validation
Далее представлена расчетная производительность модели, показывающая небольшое улучшение производительности по сравнению с базовой линией 90.С 913% до 91,257%.
Опять же, изменение все еще находится в пределах стандартного отклонения, и неясно, является ли эффект реальным.
Точность: среднее значение = 90,913 стандартное отклонение = 0,412, n = 5
Точность: среднее значение = 90,913 стандартное значение = 0,412, n = 5 |
Как завершить модель и сделать прогнозы
Процесс улучшения модели может продолжаться до тех пор, пока у нас есть идеи, время и ресурсы для их проверки.
В какой-то момент должна быть выбрана и принята окончательная конфигурация модели. В этом случае мы будем простыми и будем использовать базовую модель в качестве окончательной.
Сначала мы завершим нашу модель, но подгоним модель ко всему набору обучающих данных и сохраним модель в файл для дальнейшего использования. Затем мы загрузим модель и оценим ее производительность на тестовом наборе данных, чтобы получить представление о том, насколько хорошо выбранная модель работает на практике. Наконец, мы будем использовать сохраненную модель, чтобы сделать прогноз на одном изображении.
Сохранить окончательную модель
Окончательная модель обычно подходит для всех доступных данных, таких как комбинация всех наборов данных для поездов и тестов.
В этом руководстве мы намеренно удерживаем тестовый набор данных, чтобы мы могли оценить производительность окончательной модели, что может быть хорошей идеей на практике. Таким образом, мы подгоним нашу модель только к набору обучающих данных.
# подходящая модель model.fit (trainX, trainY, epochs = 10, batch_size = 32, verbose = 0)
# подходит модель модель.fit (trainX, trainY, эпохи = 10, размер_пакета = 32, подробный = 0) |
После подгонки мы можем сохранить окончательную модель в файл h5, вызвав для модели функцию save () и передав выбранное имя файла.
# сохранить модель model.save (‘final_model.h5’)
# сохранить модель model.save (‘final_model.h5’) |
Примечание : для сохранения и загрузки модели Keras требуется, чтобы на вашей рабочей станции была установлена библиотека h5py.
Полный пример подгонки окончательной модели к набору обучающих данных и ее сохранения в файл приведен ниже.
# сохраняем окончательную модель в файл из keras.datasets импортировать fashion_mnist from keras.utils import to_categorical из keras.models импортировать Последовательный из keras.layers импортировать Conv2D из keras.layers импорт MaxPooling2D from keras.layers import Плотный из keras.layers import Flatten от keras.optimizers импортные SGD # загрузить поезд и тестовый набор данных def load_dataset (): # загрузить набор данных (trainX, trainY), (testX, testY) = fashion_mnist.load_data () # преобразовать набор данных в один канал trainX = trainX.reshape ((trainX.shape [0], 28, 28, 1)) testX = testX.reshape ((testX.shape [0], 28, 28, 1)) # одно горячее кодирование целевых значений trainY = to_categorical (trainY) testY = to_categorical (testY) вернуть trainX, trainY, testX, testY # масштабный пиксель def Prep_pixels (поезд, тест): # преобразовать целые числа в числа с плавающей запятой train_norm = train.astype (‘float32’) test_norm = test.astype (‘float32’) # нормализовать до диапазона 0-1 поезд_норм = поезд_норм / 255.0 test_norm = test_norm / 255.0 # вернуть нормализованные изображения вернуть train_norm, test_norm # определить модель cnn def define_model (): model = Последовательный () model.add (Conv2D (32, (3, 3), активация = ‘relu’, kernel_initializer = ‘he_uniform’, input_shape = (28, 28, 1))) model.add (MaxPooling2D ((2, 2))) model.add (Сглаживание ()) model.add (Dense (100, активация = ‘relu’, kernel_initializer = ‘he_uniform’)) model.add (Плотный (10, активация = ‘softmax’)) # скомпилировать модель opt = SGD (lr = 0.01, импульс = 0,9) model.compile (optimizer = opt, loss = ‘category_crossentropy’, metrics = [‘precision’]) модель возврата # запускаем тестовую программу для оценки модели def run_test_harness (): # загрузить набор данных trainX, trainY, testX, testY = load_dataset () # подготовить данные пикселей trainX, testX = Prep_pixels (trainX, testX) # определить модель модель = define_model () # подходящая модель model.fit (trainX, trainY, epochs = 10, batch_size = 32, verbose = 0) # сохранить модель модель.сохранить (‘final_model.h5’) # точка входа, запускаем тестовый жгут run_test_harness ()
1 2 3 4 5 6 7 8 9 10 11 12 13 140002 18 19 20 21 22 23 24 25 26 27 28 29 30 000 000 34 35 36 37 38 39 40 41 42 43 44 45 46 49 0002 4700030002 47000351 52 53 54 55 56 57 58 59 60 61 | # сохраняем окончательную модель в файл из keras.наборы данных import fashion_mnist from keras.utils import to_categorical from keras.models import Sequential from keras.layers import Conv2D from keras.layers import MaxPooling2D from keras.layers Import from keras.layers import from keras.layers import from keras.layers import D Flatten из keras.optimizers import SGD # загрузить поезд и тестовый набор данных def load_dataset (): # загрузить набор данных (trainX, trainY), (testX, testY) = fashion_mnist.load_data () # преобразовать набор данных в один канал trainX = trainX.reshape ((trainX.shape [0], 28, 28, 1)) testX = testX.reshape ((testX.shape [0 ], 28, 28, 1)) # one целевые значения горячего кодирования trainY = to_categorical (trainY) testY = to_categorical (testY) return trainX, trainY, testX, testY # scale def Prep_pixels (train, test): # преобразовать из целых чисел в числа с плавающей запятой train_norm = train.astype (‘float32’) test_norm = test.astype (‘float32’) # нормализовать до диапазона 0-1 train_norm = train_norm / 255.0 test_norm = test_norm / 255.0 # вернуть нормализованные изображения return train_norm, test_norm # define cnn model def define_model (): model = Sequential () model.add (Conv2D (32, (3, 3), activate = ‘relu’, kernel_initializer = ‘ he_uniform ‘, input_shape = (28, 28, 1))) модель.add (MaxPooling2D ((2, 2))) model.add (Flatten ()) model.add (Dense (100, Activation = ‘relu’, kernel_initializer = ‘he_uniform’)) model.add ( Dense (10, activate = ‘softmax’)) # скомпилировать модель opt = SGD (lr = 0,01, импульс = 0,9) model.compile (optimizer = opt, loss = ‘categoryorical_crossentropy’, metrics = [‘ точность ‘]) return model # запустить тестовую программу для оценки модели def run_test_harness (): # загрузить набор данных trainX, trainY, testX, testY = load_dataset () # prepare данные пикселей trainX, testX = Prep_pixels (trainX, testX) # define model model = define_model () # fit model model.fit (trainX, trainY, epochs = 10, batch_size = 32, verbose = 0) # save model model.save (‘final_model.h5’) # точка входа, запуск тестовой среды run_test_harness () |
После выполнения этого примера в вашем текущем рабочем каталоге будет файл размером 1,2 мегабайта с именем « final_model.h5 ».
Оценка окончательной модели
Теперь мы можем загрузить окончательную модель и оценить ее на имеющемся тестовом наборе данных.
Это то, что мы могли бы сделать, если бы были заинтересованы в представлении эффективности выбранной модели заинтересованным сторонам проекта.
Модель может быть загружена с помощью функции load_model () .
Полный пример загрузки сохраненной модели и ее оценки в тестовом наборе данных приведен ниже.
# оценить глубинную модель на тестовом наборе данных из keras.datasets импортировать fashion_mnist из keras.models импортировать load_model из кераса.utils import to_categorical # загрузить поезд и тестовый набор данных def load_dataset (): # загрузить набор данных (trainX, trainY), (testX, testY) = fashion_mnist.load_data () # преобразовать набор данных в один канал trainX = trainX.reshape ((trainX.shape [0], 28, 28, 1)) testX = testX.reshape ((testX.shape [0], 28, 28, 1)) # одно горячее кодирование целевых значений trainY = to_categorical (trainY) testY = to_categorical (testY) вернуть trainX, trainY, testX, testY # масштабный пиксель def Prep_pixels (поезд, тест): # преобразовать целые числа в числа с плавающей запятой train_norm = поезд.astype (‘float32’) test_norm = test.astype (‘float32’) # нормализовать до диапазона 0-1 train_norm = train_norm / 255.0 test_norm = test_norm / 255.0 # вернуть нормализованные изображения вернуть train_norm, test_norm # запускаем тестовую программу для оценки модели def run_test_harness (): # загрузить набор данных trainX, trainY, testX, testY = load_dataset () # подготовить данные пикселей trainX, testX = Prep_pixels (trainX, testX) # модель нагрузки model = load_model (‘final_model.h5 ‘) # оценить модель на тестовом наборе данных _, acc = model.evaluate (testX, testY, verbose = 0) print (‘>% .3f’% (согласно * 100.0)) # точка входа, запускаем тестовый жгут run_test_harness ()
1 2 3 4 5 6 7 8 9 10 11 12 13 140002 14 18 19 20 21 22 23 24 25 26 27 28 29 30 000 000 34 35 36 37 38 39 40 41 42 | # оценить глубокую модель на тестовом наборе данных от keras.наборы данных import fashion_mnist from keras.models import load_model from keras.utils import to_categorical # загрузить поезд и тестовый набор данных def load_dataset (): # загрузить набор данных (поезд,) testX, testY) = fashion_mnist.load_data ()# преобразовать набор данных в один канал trainX = trainX.reshape ((trainX.shape [0], 28, 28, 1)) testX = testX.reshape ((testX.shape [0], 28, 28, 1)) # целевые значения one hot encode trainY = to_categorical (trainY) testY = to_categorical (testY) return trainX, trainY, testX, testY # масштабировать пиксели def Prep_pixels (train, test): # преобразовать из целых чисел в числа с плавающей запятой train_norm = train.astype (‘float32’) test_norm = test.astype (‘float32’) # нормализовать до диапазона 0-1 train_norm = train_norm / 255.0 test_norm = test_norm / 255.0 # вернуть нормализованные изображения return train_norm, test_norm # запустить тестовую программу для оценки модели def run_test_harness (): # загрузить набор данных trainX, trainY, testX, testY = load_dataset () # подготовить данные пикселей , testX = Prep_pixels (trainX, testX)# загрузить модель model = load_model (‘final_model.h5 ‘) # оценить модель в наборе тестовых данных _, acc = model.evaluate (testX, testY, verbose = 0) print (‘>% .3f ‘% (acc * 100.0)) # точка входа, запускаем тестовый жгут run_test_harness () |
При выполнении примера загружается сохраненная модель и оценивается модель в удерживаемом наборе тестовых данных.
Точность классификации для модели в тестовом наборе данных вычисляется и распечатывается.
Примечание : Ваши результаты могут отличаться из-за стохастической природы алгоритма или процедуры оценки или различий в числовой точности. Попробуйте запустить пример несколько раз и сравните средний результат.
В этом случае мы видим, что модель достигла точности 90,990% или чуть менее 10% ошибки классификации, что неплохо.
Сделайте прогноз
Мы можем использовать нашу сохраненную модель, чтобы делать прогнозы на новых изображениях.
Модель предполагает, что новые изображения имеют оттенки серого, они сегментированы так, что одно изображение содержит один предмет одежды по центру на черном фоне, и что размер изображения квадратный с размером 28 × 28 пикселей.
Ниже приведено изображение, извлеченное из тестового набора данных MNIST. Вы можете сохранить его в текущем рабочем каталоге с именем файла « sample_image.png ».
Образец одежды (пуловер)
Мы представим, что это совершенно новое и невидимое изображение, подготовленное должным образом, и посмотрим, как мы можем использовать нашу сохраненную модель, чтобы предсказать целое число, которое представляет изображение.В этом примере мы ожидаем класс « 2 » для « Пуловер » (также называемый джемпером).
Во-первых, мы можем загрузить изображение, сделать его форматом в градациях серого и установить размер 28 × 28 пикселей. Затем загруженное изображение может быть изменено, чтобы иметь один канал и представлять одну выборку в наборе данных. Функция load_image () реализует это и возвращает загруженное изображение, готовое для классификации.
Важно отметить, что значения пикселей подготавливаются таким же образом, как значения пикселей были подготовлены для обучающего набора данных при подгонке окончательной модели, в данном случае нормализованной.
# загрузить и подготовить изображение def load_image (имя файла): # загрузить изображение img = load_img (имя файла, оттенки серого = True, target_size = (28, 28)) # преобразовать в массив img = img_to_array (img) # преобразовать в один сэмпл с 1 каналом img = img.reshape (1, 28, 28, 1) # подготовить данные пикселей img = img.astype (‘float32’) img = img / 255,0 вернуть img
# загрузить и подготовить изображение def load_image (filename): # загрузить изображение img = load_img (filename, grayscale = True, target_size = (28, 28)) # преобразовать в массив img = img_to_array (img) # преобразовать в один образец с 1 каналом img = img.reshape (1, 28, 28, 1) # подготовить данные пикселей img = img.astype (‘float32’) img = img / 255.0 return img |
Затем мы можем загрузить модель, как в предыдущем разделе, и вызвать функцию pred_classes () , чтобы предсказать одежду на изображении.
# предсказать класс результат = model.predict_classes (img)
# прогнозировать класс result = model.pred_classes (img) |
Полный пример приведен ниже.
# сделать прогноз для нового изображения. из keras.preprocessing.image import load_img из keras.preprocessing.image import img_to_array из keras.models импортировать load_model # загрузить и подготовить изображение def load_image (имя файла): # загрузить изображение img = load_img (имя файла, оттенки серого = True, target_size = (28, 28)) # преобразовать в массив img = img_to_array (img) # преобразовать в один сэмпл с 1 каналом img = img.изменить форму (1, 28, 28, 1) # подготовить данные пикселей img = img.astype (‘float32’) img = img / 255,0 вернуть img # загружаем изображение и прогнозируем класс def run_example (): # загрузить изображение img = load_image (‘sample_image.png’) # модель нагрузки модель = load_model (‘final_model.h5’) # предсказать класс результат = model.predict_classes (img) печать (результат [0]) # точка входа, запустим пример run_example ()
1 2 3 4 5 6 7 8 9 10 11 12 13 140002 18 19 20 21 22 23 24 25 26 27 28 29 30 | # сделать прогноз для нового изображения. из keras.preprocessing.image import load_img из keras.preprocessing.image import img_to_array из keras.models import load_model # загрузить и подготовить изображение def load_image (имя файла) def load_image (имя файла) изображение img = load_img (filename, grayscale = True, target_size = (28, 28)) # преобразовать в массив img = img_to_array (img) # преобразовать в один образец с 1 каналом img = img.reshape (1, 28, 28, 1) # подготовить данные пикселей img = img.astype (‘float32’) img = img / 255.0 return img # загрузить изображение и спрогнозировать class def run_example (): # загрузить изображение img = load_image (‘sample_image.png’) # загрузить модель model = load_model (‘final_model.h5’) # предсказать класс result = model.predict_classes (img) print (result [0]) # точка входа, запустите пример run_example () |
При выполнении примера сначала загружается и подготавливается изображение, загружается модель, а затем правильно прогнозируется, что загруженное изображение представляет пуловер или класс «2».
Расширения
В этом разделе перечислены некоторые идеи по расширению учебника, которые вы, возможно, захотите изучить.
- Регуляризация . Узнайте, как добавление регуляризации влияет на производительность модели по сравнению с базовой моделью, например на снижение веса, раннее прекращение и прекращение обучения.
- Настройте скорость обучения . Узнайте, как разные скорости обучения влияют на производительность модели по сравнению с базовой моделью, например 0,001 и 0,0001.
- Глубина настройки модели . Изучите, как добавление дополнительных слоев к модели влияет на производительность модели по сравнению с базовой моделью, такой как другой блок сверточных и объединяющих слоев или другой плотный слой в части классификатора модели.
Если вы изучите какое-либо из этих расширений, я хотел бы знать.
Разместите свои выводы в комментариях ниже.
Дополнительная литература
Этот раздел предоставляет дополнительные ресурсы по теме, если вы хотите углубиться.
API
Статьи
Сводка
В этом руководстве вы узнали, как с нуля разработать сверточную нейронную сеть для классификации одежды.
В частности, вы выучили:
- Как разработать тестовую программу для разработки надежной оценки модели и установления базового уровня производительности для задачи классификации.
- Как изучить расширения базовой модели для улучшения обучения и возможностей модели.
- Как разработать окончательную модель, оценить производительность окончательной модели и использовать ее для прогнозирования новых изображений.
Есть вопросы?
Задайте свои вопросы в комментариях ниже, и я постараюсь ответить.
Разрабатывайте модели глубокого обучения для Vision сегодня!
Разрабатывайте собственные модели видения за считанные минуты
… всего несколькими строками кода Python
Узнайте, как это сделать, в моей новой электронной книге:
Deep Learning for Computer Vision
Он предоставляет самоучителей по таким темам, как:
классификация , обнаружение объектов (yolo и rcnn) , распознавание лиц (vggface и facenet) , подготовка данных и многое другое…
Наконец-то привнесите глубокое обучение в проекты вашего видения
Пропустить академики.