Необходимо войти или зарегистрироваться

Авторизация

Введите логин, email или номер телефона, начинающийся с символа «+»
Забыли пароль? Регистрация

Новый пароль

Авторизация

Восстановление пароля

Авторизация

Регистрация

Выберите, пожалуйста, ник на пикабу
Номер будет виден только вам.
Отправка смс бесплатна
У меня уже есть аккаунт с ником Отменить привязку?

Регистрация

Номер будет виден только вам.
Отправка смс бесплатна
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
Авторизация

Сообщество

Сообщество

Сообщество - Машинное обучение

Машинное обучение

36 постов 896 подписчиков
Полная информация
Правила сообщества

Нейросеть быстро уберет фон на фотографии

xtr7 в Машинное обучение

Если вам по роду деятельности или просто внезапно нужно быстро убрать фон, а фотошопа под рукой нет, то сегодня я нашел такой полезный сервис основанный на нейронной сети. Фон убирает в большинстве случаев почти идеально, но только с людьми. Животных распознает, но не всегда и иногда не точно. Пробуйте сами адрес сайта: https://www.remove.bg

Нейросеть быстро уберет фон на фотографии Нейронные сети, Новые технологии, Обработка фотографий, Фон, Сайт

Этого человека не существует

Uncle.TOM в Машинное обучение
Этого человека не существует Нейронные сети, Фотография, Наука

Разработчик Uber Филипп Ванг запустил сайт thispersondoesnotexist, на котором раз в несколько секунд генерируется человеческое лицо с помощью алгоритма генеративных нейронных сетей StyleGAN, разработанного Nvidia.


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


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


Теперь, когда на пикабу вас попросят скинуть фотку, просто кидайте ссылку на сайт, а там как повезёт. :)


VC.ru

Искусственный интеллект научился скрытно жульничать на заданиях

geekabu847 в Машинное обучение
Искусственный интеллект научился скрытно жульничать на заданиях Искусственный интеллект, Нейронные сети, Google, Карты, Google Maps, Стеганография, Водяной знак

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


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


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

Искусственный интеллект научился скрытно жульничать на заданиях Искусственный интеллект, Нейронные сети, Google, Карты, Google Maps, Стеганография, Водяной знак

На предыдущей картинке показана разница между "обычной" картой сделанной в Google Maps (a), и картой нейронной сети, созданной из воздушного снимка (b). Между первой и второй есть зашифрованная информация (c), используя которую, можно преобразовать карту обратно в снимок (d). Разница (с) искуственно преувеличена для анализа - в реальных снимках она настолько незаметна, что даже в выделенном формате человек бы ее не заметил.


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

Показать полностью 1

Фотошоп-мастерам на заметку

geekabu847 в Машинное обучение

NVIDIA продемонстрировала искусственный интеллект способный в реальном времени преобразовать рисунок в Paint в фотореалистичное изображение.


Видео с комментариями:

Статья в блоге NVIDIA и репозиторий в котором "скоро" будет исходной код.

Показать полностью 1

«Статья про минет»: ученые обработали 109 часов орального секса, чтобы разработать ИИ, который сосет член

Daneron в Машинное обучение

Анонимные специалисты по машинному обучению написали «статью про минет», чтобы сделать эту машинку для отсоса более реалистичной.


Autoblow AI, секс-игрушка для пользователей с пенисом, состоит из резинового рукава и расположенного внутри корпуса электродвигателя, и пытается имитировать оральный секс. Ее кампания на Indiegogo была запущена на прошлой неделе и быстро достигла своей цели в 50 000 $. Ее главное преимущество над предыдущей моделью, Autoblow 2, выпущенной в 2014 — это алгоритм машинного обучения, который «постоянно меняет технику», чтобы удовлетворить пользователя новыми способами.


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


Результатом исследования стала "Статья про минет", исследование (очевидно, не рецензировавшееся), наполненное сексуальными — или хотя бы имеющими отношение к сексуальной теме — алгоритмическими исследованиями: «В этой работе мы пытаемся количественно описать „общие“ или „типичные“ движения в оральном сексе, выполняемом на мужчинах» — так начинается статья. «Чтобы сделать это, мы анализируем набор данных, содержащий более 108 часов порнографического видео, каждый кадр которого аннотирован позицией губ на стволе пениса. Мы используем технику квантизации, чтобы обнаружить шестнадцать различных движений, и используя эти движения, мы разрабатываем и оцениваем систему, которая процедурно генерирует реалистичные последовательности движений, используя глубокое обучение. Мы количественно показываем, что эта система превосходит простые методы, основанные на цепях Маркова».

«Статья про минет»: ученые обработали 109 часов орального секса, чтобы разработать ИИ, который сосет член Искусственный интеллект, Очень глубокое обучение, Секс-Игрушка, Гифка, Длиннопост, Habr

У меня не было проблем с этим


Я спросил Брайана Слоана (Brian Sloan), разработчика Autoblow AI, о его попытке нанять серьезных ученых для работы над дрочильной машинкой. Его предложение было прямым и лишенным намеков:


«Я сказал им, что разрабатываю секс-игрушку для мужчин, воссоздающую ощущения от минета и спросил, могут ли они использовать ИИ, чтобы изучить, что на самом деле происходит во время минета, чтобы мое устройство могло делать минет, как человек,» — Слоан написал мне в электронном письме. «Этого было достаточно, чтобы семь компаний практически сразу сказали мне, что „эта работа не для них“. Когда я спросил, почему, они не захотели ответить.»


Восьмая команда ответила «да», и написала «Статью про минет», за которую получила, по словам Слоана, 30 000 $. Но несмотря на прекрасные вычисления и методы сбора данных, в этом исследовании, очевидно, отсутствует одна вещь — имена авторов. В статье нет имен, не упомянуты исследовательские группы или учреждения, ответственные за работу. Ученые выполнили работу анонимно, так как считали, что другие клиенты могут отказаться от сотрудничества с ними, если об этой работе станет известно.

Встречайте Слайдермена


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


Исследователи разработали архитектуру плотной нейронной сети (dense neural network, DNN), которая предсказывает следующее движение исполнителя минета на основе анализа предыдущих движений, примерно так же, как работает предиктивный ввод текста в вашем телефоне.


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

«Статья про минет»: ученые обработали 109 часов орального секса, чтобы разработать ИИ, который сосет член Искусственный интеллект, Очень глубокое обучение, Секс-Игрушка, Гифка, Длиннопост, Habr

Передовые технологии


«На самом деле, это довольно интересная задача,» — сказали анонимные ученые, писавшие «Статью про минет»: «Сейчас машинное обучение переживает свою золотую лихорадку, и разработчики могут выбирать, какими проектами заниматься. Мой критерий выбора работы — найти проекты, которые интересны, и за которые хорошо платят. Этот проект удовлетворяет обоим условиям.»


«Если они так открыто хотели работать над автоматизацией минета с помощью ИИ, зачем оставаться анонимными?» — спросил я. Мне ответили, что связались с некоторыми из своих клиентов и спросили, не будет ли проблемой участие в этой работе и публичная ассоциация с ней.


«Ответ был удивительным,» — сказали ученые: «Корпорации не хотят никакой связи с подобными вещами. Для них это неприемлемо, и они видят это, как пиар-кошмар. Поэтому я остался анонимным. На личном уровне я не увидел несогласия, а на корпоративном уровне это считается проблемой. Для понимания контекста — мы много работаем с финансовыми и правительственными организациями. От них мы и получили запрет.»


Это не удивительно. Враждебность к сексуальному контенту проявляют и платежные системы, и законодатели.


Помимо математики, это доступный и понятный пример того, как ИИ встраивается в повседневные продукты, такие, как автодополнение электронных писем и поиск Google. Они изучают наш прошлый опыт, и в теории Autoblow AI ничем не отличается. Он просто обучается на примере порнографии.


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


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


«Секс-игрушки доступны повсюду в развитых странах. Очевидно, люди хотят эти вещи, и они будут становиться умнее по мере того, как ученые и инженеры вроде меня будут делать свою работу,» — сказали они мне: «Это общая картина. Есть, разумеется, и чисто технические улучшения того решения, которое мы построили для этой конкретной секс-игрушки, например, лучшая процедурная генерация имитируемого минета, и другие вещи, помимо минета. Мы обнаружили, например, что анальный секс тоже распознается таким образом.»


Источник: https://habr.com/ru/post/441252/

Показать полностью 2

Нейросеть улучшает внешний вид классических игр

xtr7 в Машинное обучение

Это реально очень круто. Нейронная сеть на основе решений от Nvidia способна изменить текстуры в классических играх, так, что они заиграют новыми красками. Автора проекта и подробную инструкцию, как попробовать все самому можно найти по адресу ниже. Что у вас выйдет - напишите в комментариях. https://kingdomakrillic.tumblr.com/post/178254875891/i-figur...

Нейросеть улучшает внешний вид классических игр Kingdomakrillic, Вернем старые игры, Секрет нейросети
Нейросеть улучшает внешний вид классических игр Kingdomakrillic, Вернем старые игры, Секрет нейросети
Показать полностью 1

Нейросеть, расширяющая фото. Продолжение

WhiteBlackGoose в Машинное обучение

Всем привет. @xtr7 сделал недавно пост (о нейросети, которая улучшала качество картинки), но то ли никто не поделился, то ли не смогли следовать инструкции. Короче, меньше воды - больше дела.

Нейросеть, расширяющая фото. Продолжение Нейронные сети, Искусственный интеллект, Длиннопост
Нейросеть, расширяющая фото. Продолжение Нейронные сети, Искусственный интеллект, Длиннопост
Нейросеть, расширяющая фото. Продолжение Нейронные сети, Искусственный интеллект, Длиннопост
Нейросеть, расширяющая фото. Продолжение Нейронные сети, Искусственный интеллект, Длиннопост
Нейросеть, расширяющая фото. Продолжение Нейронные сети, Искусственный интеллект, Длиннопост
Нейросеть, расширяющая фото. Продолжение Нейронные сети, Искусственный интеллект, Длиннопост
Нейросеть, расширяющая фото. Продолжение Нейронные сети, Искусственный интеллект, Длиннопост
Нейросеть, расширяющая фото. Продолжение Нейронные сети, Искусственный интеллект, Длиннопост
Нейросеть, расширяющая фото. Продолжение Нейронные сети, Искусственный интеллект, Длиннопост
Нейросеть, расширяющая фото. Продолжение Нейронные сети, Искусственный интеллект, Длиннопост
Нейросеть, расширяющая фото. Продолжение Нейронные сети, Искусственный интеллект, Длиннопост
Нейросеть, расширяющая фото. Продолжение Нейронные сети, Искусственный интеллект, Длиннопост

Последние две чет так себе :)

Нейросеть, расширяющая фото. Продолжение Нейронные сети, Искусственный интеллект, Длиннопост
Нейросеть, расширяющая фото. Продолжение Нейронные сети, Искусственный интеллект, Длиннопост
Нейросеть, расширяющая фото. Продолжение Нейронные сети, Искусственный интеллект, Длиннопост
Нейросеть, расширяющая фото. Продолжение Нейронные сети, Искусственный интеллект, Длиннопост
Ну вот как-то так. Если лень разбираться, куда тыкать, присылайте фото/картинки в комменты, по возможности отвечу.


Спасибо за прочтение, присоединяйтесь к нам!

Показать полностью 15

Персонажи последних событий + нейросеть

WhiteBlackGoose в Машинное обучение

Помните, я обучал нейросеть распознавать кошек и собак? В общем, сначала обычные примеры:

Персонажи последних событий + нейросеть Нейронные сети, Интересное, Длиннопост, Кот, Собака
Персонажи последних событий + нейросеть Нейронные сети, Интересное, Длиннопост, Кот, Собака
Персонажи последних событий + нейросеть Нейронные сети, Интересное, Длиннопост, Кот, Собака
Персонажи последних событий + нейросеть Нейронные сети, Интересное, Длиннопост, Кот, Собака

Но это банально и неинтересно. Так что я решил поменять входные картинки на...

Персонажи последних событий + нейросеть Нейронные сети, Интересное, Длиннопост, Кот, Собака
Персонажи последних событий + нейросеть Нейронные сети, Интересное, Длиннопост, Кот, Собака
Персонажи последних событий + нейросеть Нейронные сети, Интересное, Длиннопост, Кот, Собака
Персонажи последних событий + нейросеть Нейронные сети, Интересное, Длиннопост, Кот, Собака

Присылайте ссылочки на фотки в комменты, посмотрим, что скажет сетка на ваши фотки)). Ну и приглашаю на огонек.

Показать полностью 6

4 факта о нейронных сетях

WhiteBlackGoose в Машинное обучение

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



1. Нейронная сеть – это не модель человеческого мозга


Человеческий мозг – одна из самых больших загадок, над которой бьются ученые не одно столетие. До сих пор нет единого понимания, как все это функционирует. Есть две основные теории: теория о «клетке бабушки» и теория дистрибутивного представительства. Первая утверждает, что отдельные нейроны имеют высокую информационную вместимость и способны формировать сложные концепты. Например, образ вашей бабушки или Дженнифер Энистон. Вторая говорит о том, что нейроны намного проще в своем устройстве и представляют комплексные объекты лишь в группе. Искусственную нейронную сеть можно в общих чертах представить как развитие идей второй модели.


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

4 факта о нейронных сетях Нейронные сети, Статья, Длиннопост

Что из этого следует? ИНС создаются по архетипу человеческого мозга в том же смысле, как олимпийский стадион в Пекине был собран по модели птичьего гнезда. Это ведь не означает, что стадион – это гнездо. Это значит, что в нем есть некоторые элементы его конструкции. Лучше говорить о сходстве, а не совпадении структуры и дизайна.



2. Размер имеет значение, но больше – не всегда значит лучше

После выбора архитектуры возникает вопрос, насколько большой или насколько небольшой должна быть нейронная сеть? Сколько должно быть «инпутов»? Сколько нужно использовать скрытых нейронов? Скрытых слоев (в случае с глубокой сетью)? Сколько «аутпутов» нужно нейронам? Если мы промахнемся с размером, сеть может пострадать от переобучения или недообучения. То есть не будет способна грамотно обобщать.


Сколько и какие инпуты нужно использовать?

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


Сколько необходимо скрытых нейронов?

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



3. Нейронным сетям не всегда нужен большой объем данных


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


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


4. Нейронную сеть нельзя обучить на любых данных


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


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


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


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

Спасибо за прочтение!

Часть текста скопировано, а часть урезана (бОльшая часть) и изменена с целью более упрощенной читаемости и меньше_букав. А значит пенять на меня, а не на автора. Источник.

Показать полностью

Xinhua - искусственный интеллект, ведущий новостную передачу

WhiteBlackGoose в Машинное обучение
Xinhua - искусственный интеллект, ведущий новостную передачу Искусственный интеллект, Телеведущие, Китай, Технологии, Новости, Видео

Информационное агентство Китая Синьхуа в четверг представило первого в мире AI-ведущего, который может читать новости на английском и китайском языках.


Синьхуа в сотрудничестве с оператором поисковой системы Sogou представила новую технологию на Всемирной интернет-конференции в Wuzhen, China, South China Morning Post. AI-телеведущий способен принимать форму настоящего человека и вести новости. У них минимальные выражения лица и движения губ, которые выглядят вполне реалистично.


Появляется первый англоговорящий AI Синьхуа. Его внешность во многом основана на Чжан Чжао. Новостное агенство также уверяет, что он «будет неустанно работать» и зачитывать новости без каких-либо перерывов.


Агенство AI также собирает данные и учится развиваться. «Он» сам учится в прямом эфире, и может читать тексты так же естественно, как профессиональный телеведущий », - сообщает Синьхуа.


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


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

Сграблено отсюда. Редко читаю новости, поэтому вероятно не очень хорошо скопировал стиль письма :).

Показать полностью 1

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть I.

WhiteBlackGoose в Машинное обучение

Крутой заголовок, да? На самом деле, дальше будет еще круче. Итак, на линии WBG и мы начинаем!


Теория? К херам теорию, это вы сами легко почитайте. Давайте сразу к делу!


Начало


Что же нам потребуется для самого начала? Поставить чертов питон! Теперь создайте файл с notepad++, заканчивающийся на ".py" (это чертовы американские буковы). Ну и все, открываем его с np++.

Ну давайте чуть-чуть научимся программировать на питоне, а те, кто уже умеют, для вас дорога в следующий пост, в котором будет рассказано про создание уже ИИ. Вероятность того, что будет - зависит от отзывчивости пользователей!


Итак, давайте разберемся, что к чему. В питоне, как и в большинстве языков программирования, есть циклы, условия, функции и прочая ерунда. Давайте создадим "Hello, world":

print("Hello, cruel world!")
input()

Теперь запускаем python-файл, который мы создали.

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть I. Python, Начало, Tutorial by WBG, Гифка, Длиннопост

И находите здесь python (если не нашли - то жмакайте Найти другое приложение на этом компе и ищите там python).


Так, дошли до этого этапа?

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть I. Python, Начало, Tutorial by WBG, Гифка, Длиннопост

Хер знает, зачем вам этот скриншот, но пусть будет.

Так, нам вывело приветствие. А наше чсв взлетело до небес, но надо двигаться дальше!


-----------------------ЦИКЛ-----------------------

Сделаем по-быстрому цикл.

for i in range(100):
print("We don't repeat double times")
input()

Заметьте, перед принтом у нас стоит 4 пробела.

Итак, запустим код:

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть I. Python, Начало, Tutorial by WBG, Гифка, Длиннопост

О БОЖЕ оно работает. У меня. Если у вас не так - срочно пишите в комментариях!

Отлично, едем дальше.


Значит, for i in range(x) означает, что мы произведем операцию x раз, при этом i будет в первой итерации равно 0, во второй 1, в третьей 2 и так далее. В последней i примет значение x-1.


Не верите? Выведем i!

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть I. Python, Начало, Tutorial by WBG, Гифка, Длиннопост

Для этого будет такой кот:

for i in range(100):
print(i)
input()

Если у вас заработало, то вы - отборный красавчик. Иначе срочно в комменты.


-----------------------УСЛОВИЕ-----------------------

Можно много говорить, но у нас нету на это времени. Мы будем много делать.

for i in range(100):
if i == 5 or i == 3:
print("О, кажется мы нашли i, равное 5, либо i, равное 3. i =", i)
input()

P. S. перед if 4 пробела, а вот перед print уже 8

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть I. Python, Начало, Tutorial by WBG, Гифка, Длиннопост

В цикле у нас i проходит все целые значения от 0 до 100, а потому в какой-то момент i станет равным 3, а затем и 5. У нас написано if i == 3 or i == 5 что означает, что print выполнится если i равно 3 либо i равно 5 (порядок условий тут не важен). Если заменить or на and, то условие будет выполняться тогда, когда i равно сразу и 3 и 5. То есть ни-ко-гда. Такие дела.


-----------------------ЗНАЧКИ-----------------------

Помимо арифметических операций (* / + -), у нас есть встроенная степень (**), остаток от деления (%) и частное от деления (//). Смотрим примеры:

print("7 + 2 =", 7 + 2)
print("7 * 2 =", 7 * 2)
print("7 - 2 =", 7 - 2)
print("7 / 2 =", 7 / 2)
print("7 ** 2 =", 7 ** 2)
print("7 % 2 =", 7 % 2)
print("7 // 2 =", 7 // 2)
input()
Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть I. Python, Начало, Tutorial by WBG, Гифка, Длиннопост

Как видите, оно работает. Здорово, не правда ли?


-----------------------input()-----------------------


Я зачем-то использовал эту штуку в конце каждого кода. На самом деле, эта функция делает ввод с клавиатуры. Погнали сразу примеры:

a = input()
print(a)
input()
Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть I. Python, Начало, Tutorial by WBG, Гифка, Длиннопост

То есть в переменную a мы положили ту строчку, которую ввели до Enter. А после этого сразу ее вывели. О как!

А как вам такое:

a = input()
a = int(a)
print(a ** 2)
input()
Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть I. Python, Начало, Tutorial by WBG, Гифка, Длиннопост

Так, какого хрена здесь происходит, спросите вы. Мы ввели строку в переменную a. Затем мы преобразовали ее в числовой тип. А затем возвели в квадрат и вывели.


-----------------------СПИСОК-----------------------


Объяснять? Да сами поймете :), давайте-ка сразу примеры.

a = [1, 2, 3, 5, 8, 13]
print(a[0])
print(a[4])
print(a[5] * a[2])
input()
Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть I. Python, Начало, Tutorial by WBG, Гифка, Длиннопост

Итак, что мы делаем? Мы создали список из 6 элементов, сами элементы наверное вы увидели. Теперь выводим нулевой элемент (это единичка. Нумерация идет с 0), 4-й элемент (для юристов - это пятый элемент :) ), а затем 5-ий умножаем на 2-ой, то есть 13 * 3.


Появились вопросы? Что-то непонятно? Срочно в комменты!


-----------------------ИТЕРАЦИИ ПО СПИСКАМ-----------------------


Ужас как сложно звучит, да? Правильно, нет! Едем!

a = [1, 2, 3, 5, 8, 13]
for el in a:
print(el)
input()
Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть I. Python, Начало, Tutorial by WBG, Гифка, Длиннопост

"ЧЕГО????" - уже слышу я ваш крик, даже не дождавшись опубликования этого поста. Так, успокоились?


Когда мы делали цикл, мы делали for i in range(), но теперь мы заменили range на список, и теперь i (неважно как назвать эту переменную. i, el, ПРЕВЕДМЕДВЕД - это все допустимые переменные) принимает значения ЭЛЕМЕНТОВ гребанного списка!


-----------------------ААА СЛОВАРИ-----------------------


Если очень коротко - то это те же списки, только обращаемся мы к элементам не по номерам, а по ключам. Короче пофиг, чекаем примеры:

зарплата = {"программиста": 300, "дата саентиста": 550, "хахалевой": 10000}
print(зарплата["программиста"])
input()
Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть I. Python, Начало, Tutorial by WBG, Гифка, Длиннопост

Итак, ключами у нас являются строки "программиста", "дата саентиста" и "хахалевой", а значениями - 300, 550 и 10000. Во второй строке мы обратились к элементу словаря "программиста" и получили ответ - 300. Все правильно.


-----------------------ИТЕРАЦИИ ПО СЛОВАРЯМ ЗАБЕРИТЕ МЕНЯ С ЭТОЙ ПЛАНЕТЫ-----------------------


Хотя сложного тут нету :).

зарплата = {"программиста": 300, "дата саентиста": 550, "хахалевой": 10000}
for кого in зарплата:
print("зарплата", кого, "равняется", зарплата[кого])
input()
Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть I. Python, Начало, Tutorial by WBG, Гифка, Длиннопост

Итак, итерируясь по словарю наша цикличная (не, цикловая (бред, переменная цикла)) принимает значения ключей словаря, в нашем случае это три строки "программиста" ну и т. д. А вот дальше мы обращаемся к словарю. Здорово, правда?


Фуууух, ну пока хватит. Давайте попрактикуемся.


-----------------------ПРАКТИКА-----------------------

I)

зарплата = {"программиста": 300, "дата саентиста": 550, "хахалевой": 10000}

for кого in зарплата:
if зарплата[кого] < зарплата["дата саентиста"]:
print("ds имеет зарплату выше зп", кого)
elif зарплата[кого] > зарплата["дата саентиста"]:
print("ds имеет зарплату ниже зп", кого)
else:
print("ds имеет зарплату равную зп", кого)
input()
Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть I. Python, Начало, Tutorial by WBG, Гифка, Длиннопост

II)

ls = [1, 4, 2]
print(ls[2])
ls[2] = 3
print(ls[2])
input()
Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть I. Python, Начало, Tutorial by WBG, Гифка, Длиннопост

III)

kindergarden = {
"Группа А": ["ltomme", "FoxWithoutAName", "Жень"],
"Группа Б": ["SupportCommunity", "WhiteBlackGoose", "moderator"],
"Группа В": ["L4ever", "admin", "mainka"],
}
for groupname in kindergarden:
print("В группе " + groupname + ":")
for user in kindergarden[groupname]:
print(" " + user)
input()
Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть I. Python, Начало, Tutorial by WBG, Гифка, Длиннопост

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


Спасибо за прочтение!

P. S. Во второй части будет создание ИИ, причем на реальной задаче.

Показать полностью 15

Работа нейросети mask rcnn

WhiteBlackGoose в Машинное обучение

Mask rcnn позволяет находить на изображении определенные объекты.

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

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть III.

WhiteBlackGoose в Машинное обучение

Первая, вторая часть

Абсолютно всем добрый день, сегодня мы будем играться с модельками и че-нибудь еще. Запасайтесь чайком либо клавиатурой, и мы начинаем!


В прошлом посту мы остановились на самом интересном месте. Мы обучили модельку:

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть III. Машинное обучение, Tutorial by WBG, Длиннопост

Тут есть сурьезный трабл. Если мы будем проверять на одних и тех же данных, то будет не очень хорошая проверка (ну а что если в обуч. выборке у нас одни нолики, а в тестовой - единички?). Так давайте сделаем кросс-валидацию, о которой все так твердят.

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть III. Машинное обучение, Tutorial by WBG, Длиннопост

Тэк блэт что тут произошло нафиг?

Мы создали модельку в 3 строке, а в 4 самое интересное. Мы просто передаем функции нашу модельку (необученную) и данные. Я еще поставил cv=10, что означает произвести 10 проверок.

Уже более честный результат! Едем дальше. Как видите, я изменил параметр n_estimators на 150. Этот параметр отвечает за количество деревьев.


Так, ну давайте линейную регрессию? "Неа, не давайте", - скажете вы и будете правы: кто ж классификацию делает линейкой? Погнали с логистикой!

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть III. Машинное обучение, Tutorial by WBG, Длиннопост

Так, на этот раз нам дали только 0.8

Теперь почему бы не зарешать методом ближайших соседей?

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть III. Машинное обучение, Tutorial by WBG, Длиннопост

Нда... Ну и черт с ним!

Мы поступим по-другому. Давайте объединим мнения всех трех моделей, ведь если каждая работает с такой эффективностью - то вместе будут работать с большей!

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть III. Машинное обучение, Tutorial by WBG, Длиннопост

Здесь без кросс-валидола зато с ансамблем, написанным на коленке :))). Итак, что мы сделали: просто взяли обученные модельки (rfc, lr, knn - я переименовал model во всех трех случаях) и при каждом решении смотрели: если двеы или более проголосовали за 1, то ответ 1, если 1 или 0: ответ 0.


Ну что ж, попробуем залить на каггл. Для этого еще чуть-чуть попишем код.

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть III. Машинное обучение, Tutorial by WBG, Длиннопост

Не очень красивый код, но я ds и мне как-то пофигу :).

Кстати на второй строке мы заменяем NaN в столбе Fare. А все почему? Потому что не заметили их при обработке! Кто ж знал...


Ладно, проехали. Самое интересное вот прям щас. Гоним на kaggle!

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть III. Машинное обучение, Tutorial by WBG, Длиннопост
Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть III. Машинное обучение, Tutorial by WBG, Длиннопост

Ну и make submission. Смотрим, что вышло :).

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть III. Машинное обучение, Tutorial by WBG, Длиннопост

Поздравляю, если вы дошли до сюда, то вы уже получили 76% точности на финальной выборке и свое почетное 7000+- место :))). Теперь играйтесь с модельками, с их параметрами (о коих буду по-тихоньку рассказывать) и так далее. Обработайте по-другому данные. В общем, творчества тут много.


Спасибо всем за прочтение, заинтересовавшихся приглашаю в сообщягу. Ну и ссылочка на кот.


На этот раз по мнению бм в посту Гитлер...

Показать полностью 7

Нейросеть, читающая посты на Пикабу

WhiteBlackGoose в Машинное обучение

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


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


Без рейтинга

Как я кошек отделил от собак при помощью нейросетки.

WhiteBlackGoose в Машинное обучение

Фух, рассказывать тут можно много, но я расскажу на самой-самой поверхности.

Есть такой датасет на соревновании dogs vs cats, в котором нужно обучить что-нибудь на 25000 картинок собак и котов. Такой вот:

Как я кошек отделил от собак при помощью нейросетки. Нейронные сети, Сверточный слой, Коты и собаки вместе

Посидел я, почесал репу. Сделал на коленке сетку, состоящую из 5 сверточных слоев. Как ни странно, такая сетка не зашла, ибо просто слишком "тупая". Так думал я. Ну хорошо, запиливаю большущую сеть:

Как я кошек отделил от собак при помощью нейросетки. Нейронные сети, Сверточный слой, Коты и собаки вместе

из суммарно 42 сверточных слоев, что уже нереально дохрена. И что вы думаете? Нихрена! Не работает! Угадывает только в половине случаев, но при двух классах это не очень много...


Двое суток мучился, обращался в ods (наше научное сообщество), у друзей спрашивал. Задача простая, обидно прям. Решил уже было забить, как вдруг понял: у нас же между слоями образуется ерунда, надо нормализировать ерунду!


Добавляем слой BatchNorm (это такой слой, который приводит числа к адекватным, например оочень большие делит, а ооочень малькие умножает). И о чудо! 60% точности!


Такие дела :). Довел вот уже до 80%, наверное еще повышу. Если кому интересно - расскажу в следующем посте что означает рисунок выше, как создать такую сетку.


Спасибо за прочтение!


бм нашел в моем посте сиськи...

Показать полностью

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II.

WhiteBlackGoose в Машинное обучение

Итак, с вами WBG и мы начинаем вторую часть создания ИИ. К великому сожалению, вам нужно хоть немножко знать питон, например из первой части или какого-нибудь туториала с ютубчика :). Есть и второй вариант: берите чаек, усаживайтесь поудобнее и просто наслаждайтесь.


Знакомы с python? Тогда погнали!


- Как пройти в библиотеку?

- А вам в какую?

- В sklearn

- Тогда вставьте в cmd

pip install numpy
pip install pandas
pip install sklearn

И если у вас все сработало - мои поздравления! Иначе - возможно, у вас нету pip в PATH. Если что - путь в комменты, задаем любые вопросы.


Я хотел рассказать про работу numpy и pandas, но вы меня разорвете - поэтому сразу переходим к интересному, уверен, вы поймете все и так :))).


Итак, как я и обещал - мы делаем реальную задачу, для этого регаемся на kaggle.com, находим соревнование. Да, соревнование, и не какое-нибудь, а предсказание выживания человека на титанике по различным данным. Еще раз: ПРЕДСКАЗАНИЕ, ВЫЖИВЕТ ЛИ ЧЕЛОВЕК. Отличная первая задача. Скачиваем данные в папку C:\ml_prj\WBG\titanic, предварительно создав ее :). Распаковываем в эту папку.

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

А вот как это выглядит в папке

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

Что необходимо сделать, так это поставить anaconda, обязательно в конце установки жмакнув "Add to PATH". Затем в cmd запустить команду

C:
cd C:\ml_prj
jupyter notebook

Чуть-чуть подождать, и у вас в браузере откроется вот такая штука.

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

Как дела? Все получается? Если нет, то не стоит паниковать, зато задать вопрос в комментах - почему бы и нет?!


Теперь быстренько летим в папку WBG\titanic и создаем New->Python3 как показано выше.

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

Искренне надеюсь, что у вас также. Теперь самое интересное! Быстренько делаем для кого понятные, а для кого непонятные заклинания:

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

И жмем Ctrl+Enter, чтобы запустить ячейку кода.

(Весь код я приложу в конце)


Так, что произошло? Мы загрузили три библиотеки - numpy, отвечающий за создание массивов и тензоров. Pandas - удобно работающий с текстовыми и файловыми данными, таблицами. Sklearn - библиотека, предоставляющая алгоритмы машинного обучения.


Ну что, давайте я не буду погружать никого не во что? Сразу к интересному? Тогда берем попкорн, клавиатуру и погнали.

Тыкаем клавишу B (английская, блэт, ибо Below - ниже). Создается ячейка, заходим в нее и пишем такое:

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

Ну и запускаем (напомню, ctrl+enter).

Здорово, мы загрузили данные в переменные. Правда, ничего не понятно - что за данные такие. Давайте взглянем на них!

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

Мы вставили следующей ячейкой код, который возвращает верхнюю часть наших данных. Как видим, здесь несколько столбцов:

PassengerId - таки Id пассажира

Survived - выжил он (1) или нет (0)

Sex - male (мужчины), female (отгадайте, кто)

Age - возраст

и так далее, в общем по-хорошему надо изучить, но у нас же форсированный курс 8).


Что мы собираемся делать дальше, так это обработать данные (feature engineering нахрен). Во как. Поэтому объединим наши данные, вставив это сразу после последней ячейки:

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

"красненького" бояться нафиг не надо, это просто предупреждения.

Ну давайте взглянем на наши данные

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

А давайте-ка к херам снесем колонку Name, с которой хрен че сделаешь: вряд ли от имени что-нибудь зависит. Да и cabin можно удалить. И PassengerId. Едем:

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

Парочку замечаний:

1) axis = 1 означает, что мы удаляем стоблец

2) data_1 - это не костыль, это нужно, чтобы мы понимали, сколько обработок мы сделали. Можно конечно и

data = data.drop(...

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


Отлично, как мы видим, столбцы удалены. Но нам этого мало: хотелось бы теперь пол преобразовать в числа, 1 либо 0. Извините, фемки, но у нас по-любому будут разные цифры для разных полов. Пусть будет... 1 для мужчин и 0 для женщин (ну все, улетел в минуса).

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

"Какой кошмар" - подумали вы. Но давайте по порядку.

1) data_1["Sex"] - означает, что мы работаем с колонкой "пол".

2) data_1["Sex"].apply - означает, что мы хотим применить функцию для каждого элемента в столбце

3) lambda x: - это конструктор функции, например если обычно мы делаем

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

То с лямбдой мы можем сделать

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

Или даже сразу

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

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

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

Если не поняли - ничего страшного, ПОЙМЕТЕ, НИКУДА НЕ ДЕНЕТЕСЬ УХАХАХА.


Ладно, с полом разобрались. Кстати, уже красивые данные, не правда ли? Не правда!

Если присмотреться, то можно увидеть ЭТО

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

Что это за ПрострелитьСебеКолено.jpg? Это Not a Number, то есть неопределенно. И знаете, что я думаю по этому поводу? Я считаю, что от этой херни надо избавляться словно от трапов. И мы быстренько это сделаем:

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

Здорово, правда? Добавились непонятные нули, ну и шут с ним. Зато №5 успешно был заменен на среднее арифметическое столбца, ведь именно это означает data_1["Age"].mean(). А fillna заменяет NaN на то, что предложено в скобках.


Так, теперь подумаем, что делать с Ticker. О! А давайте возьмем первый символ от строки? Ну, я не против, че

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

Каеф. Теперь все почти ништяк. Осталось придумать, что делать с буковами.

Тут есть одна сверхсекретная тактика, только тссс: one hot encoding. Давайте на нее посмотрим, и вы сами все поймете!

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

1) Что изменилось?

Мы заменили Embarked, который мог быть одной из трех букв (C, Q, S) на три столбца: em_C, em_Q, em_S. Затем для каждого элемента мы ставим во всех трех столбцах 0, а в том, который соответствует - единичку. То есть Например 0-ой элемент: 0 0 1 в столбцах, значит там была буква S. Во втором элементе единица в столбце em_C, значит там буква C.


2) Что за магия?

Предпоследняя строка удаляет столбец, первая - делает копию data_1. А в остальное - забейте вникать :). Хотя это не очень сложно, но думаю со временем это станет очевидно, а стелить простыню ради этого - такое :)).


Так ладно, отвлеклись. Давайте то же самое по-быстрому сделаем еще для Pclass и Ticket.

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

Тут стоило бы оформить в функцию. Но мы делаем понятный код, ок да?


Фух. Почти все готово. Единственное, что осталось - это разбить обратно на тестовую и обучательную, а обучательную - на train и val. Ща все объясню.


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

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

Так, тут значит мы разрезали нашу data обратно: на train и test.

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

Тут значит разбиваем на вход (X) и выход (y). То есть мы будем учить для X предсказывать y.

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

Вот и все. Теперь в X_train и y_train основная часть выборки. Осталось на этом обучить и протестить на X_test и y_test.


УРААААА ОБУЧЕЕЕЕНИЕЕЕ. Поздравляю, если вы не умерли до этого момента. А обучать мы будем (для начала) решающие деревья.

Едем!

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

Все, мы обучили. Да да. Уже обучили. Нет, серьезно. Без подвохов. Мы реально обучили простую модельку. Ну давайте протестим ее на данных из выборки и на тестовых данных!

Как начать создавать искусственный интеллект если вы юрист/рыболов/трубочист или у вас лапки. Часть II. Tutorial by WBG, Python, Kaggle, Длиннопост

То есть на проверочной (валидационной, validation) выборке мы получили 83% точности, когда на тестовой аж 97%. Поздравляю, вы обучили первую свою модель. =))


К сожалению, пикабу пишет "максимально можно добавить 51 блок", и я дошел до лимита. Честно. Так что...


Спасибо всем прочитавшим, а также по два спасибо подписчикам, как моим, так и соответствующего сообщества по этой тематике. Как вы уже догадались, будет третья часть, где уже широко развернемся с модельками. Там мы попробуем еще логистическую регрессию, метод ближайших соседей и что-нибудь еще (идеи можно присылать в комменты). А главное, мы в следующей части сможем отправить наше первое решение на kaggle, заняв какое-нибудь место.


Здесь вы найдете мой код, который был в презентации. Да и вообще всю папку. Жалко для вас что ли?


На этот раз бм сисек в посту не нашел.

Показать полностью 25

Нам нужно больше постов

WhiteBlackGoose в Машинное обучение

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

Друзья мои, наше сообщество по машинному обучению и искусственному интеллекту медленно, но верно увеличивается. А потому хотелось бы узнать в вас - в пользователях этого замечательного сайта - следующих личностей:
1) Крутой data scientist (человек, умеющий рассказать что-нибудь про ml)
2) гениальный статистик (человек, который умеет рассказать мат. часть)
3) таинственный редактор (тот, кто умеет своими легкими движениями рассказывать интересные новости про ml, статьи в доступной форме)
4) юморист, который будет кидать мемасы/шутки/котиков про ML, ибо почему нет?
5) любой желающий (который будет наполнять сообщество блестящим контентом, как мой)


Каждый может заняться созданием ИИ, надо только захотеть! (нет, серьезно. По себе знаю)

А для любимых подписчиков: третья часть скоро будет (я ведь обещал, так?), ибо в третьей мы будем играться с модельками, строить графики и заниматься прочей ерундой!

Спасибо за уделенные 27.84 секунды!
Без рейтинга

Использование DS. Сколько денег получает data scientist? Сколь высок порог? Как начать?

WhiteBlackGoose в Машинное обучение

Ку ку тем, кто не спит. Для тех, кто не в теме - мы тут об искусственном интеллекте. Если вы зашли сюда за котолампой/гифкой/клубничкой - срочно нажмите W и листайте дальше. Для оставшихся: сегодня побазарим о чем-нибудь спокойном, без циферей.


ИСПОЛЬЗОВАНИЕ DS В ОБЫЧНОЙ ЖИЗНИ


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


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


Действительно, с помощью ML (machine learning) можно предсказывать спортивные события и даже делать ставки. Например, по опыту игроков, стране проведения, их полу и возрасту и даже по покрытию поля, если такое имеется. Сам не пробовал и пробовать ставить не буду :).


КАК НАЧАТЬ? КАКОЙ ПОРОГ?


1) Что следует сделать первым делом, так это выучить python.

2) А дальше я бы чекнул курсы на coursera.org.

3) И наконец, имхо, самый эффективный способ изучать и познавать - отправиться в дебри Kaggle.com, выбрать задачку аля Титаник и чекать kernels - то есть чужие решения.

4) Ну а дальше уже по ним читать теорию...


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


СКОЛЬКО БАБЛА ПОЛУЧАЕТ DS И КАКИЕ ТРЕБОВАНИЯ?


Чтобы не быть голословными, открою закрытый (здорово звучит, да?) список вакансий и требований.


Junior:

1) Опыт в python/R

2) Знание теории мат. статистики и машинного обучения

3) Шарить в модельках табличного ML (на нормальном уровне)

4) Шарить в DL (deep learning, нейросетки)

5) Уметь в запросы SQL

6) Хорошо бы уметь успехи на kaggle

Обычно хорошо бы соблюсти какую-то часть из этих требований.

Так, собственно, о бабле

Россия: 40-80к, иногда до 120

Штаты: $1k-1.5k


Middle:

Дополнительно к требованиям к джунам:

1) Опыт год в DS.

2) Опыт в git | sql | jira и всяких других системах, фреймворках бла-бла-бла.

3) "Знать С++ будет плюсом"

4) Знать TF/PyTorch/Keras

Россия: 120-180к

Штаты: $1.5-3k


Senior:

Дополнительно к миддлам:

1) Хорошо уметь в команде работать

2) Опыт в NLP >= год

3) Опыт в DS не менее двух лет (а не двадцати, лол)

4) Иметь завершенные проекты

Россия: 200-300к

Штаты: $3k-4k


Senior++ | Team Lead

Допольнительно к сеньорам:

1) Уметь вести команду

2) Желательно иметь опыт вне DS

Россия: 250к-380к (хотя если вам не повезло, будете получать 150к хаха. Ха.(( )

Штаты: $3.5k-6k.


WhiteBlackGoose

1) Делать посты

2) Отвечать на комменты

3) Не нести хрень

Россия: 300 плюсов в неделю

Штаты: хм, может на reddit выкладывать?


Это был очень примерный список требований.



Спасибо за прочтение, жду новых участников в нашем сообществе!

Показать полностью
Отличная работа, все прочитано!