Введение в искусственный интеллект
331 subscribers
63 photos
2 videos
170 links
Просто об искусственном интеллекте и его возможностях. Помогу разобраться в базовых понятиях и создать собственную нейросеть. Рассказываю, что у ИИ под кожей.
Елена Михалькова
Download Telegram
Дорогие подпИИсчики! Если вы здесь, значит, вы знаете, кто я (Елена Михалькова, преподаватель, работала в ТюмГУ и Европейском университете в Санкт-Петербурге). А если всё-таки не знаете и попали сюда через поиск в тг, то читайте описание канала. Ну или если вам лень искать описание канала, то вот же оно:
«А, нет, я вас обманула. Это не оно.»
Вы все ещё здесь? Ну лан, тогда начнём. Конечно, опять издалека. Итак, если вы хотите постичь азы ИИ (AI) вроде как хобби, но мало ли.. вдруг пригодится, и спрашиваете своих знакомых, которые трудятся в этой области, «А че почитать? Ну типа основные какие-нибудь труды по ИИ», и знакомые отвечают вам: «Ой, ну вот такое-то, только отстань», то... (Да, уже пора было закончить предыдущее предложение.) То вот вам материалы к моим курсам. Особенно, если вы - мои студенты и хотите больше, чем мы успеваем за пару.
Что здесь есть и еще будет?
Разбор базовой терминологии - это #база
Ссылки на допматериалы #чепочитать #чепосмотреть
Кейсы и мои петпроекты, связанные с ИИ #иипетпроект
Мои скромные мыслишки #эссеиистика
Списки годноты про ИИ #спискии
Байки про ИИ, юмор #байкиизсклепа
Ноутбуки с кодом #notebook
Посты с карточками - когда без визуала никак #карточкИИ
Лайфхаки, связанные с использованием ИИ #лайфхакИИ
Я не только компьютерный лингвист, но ещё и хороший тамада. И конкурсы у меня интересные. И мероприятия #конкурс #меропрИИятия
А еще недавно я запустила подкаст "А смысл?", где ИТ-специалисты и ученые а-а-асмысляют место ИИ в современном мире. #асмысл
Внимание! В моих постах есть НЕмат (что-то типо слэнг, но мата нет). Если это оскорбляет вашу персону, то лучше дальше этого поста не читать.
18+
Контакты: если есть вопросы, предложения.. заметили ошибку? Пишите на evrog2009@gmail.com - там быстрее увижу.
Этот пост будет обновляться. Ну, а пока, рада встрече с вами! ❤️ И да пребудет с нами Скайнет!
🔥71
Введение в искусственный интеллект pinned «Дорогие подпИИсчики! Если вы здесь, значит, вы знаете, кто я (Елена Михалькова, преподаватель, работала в ТюмГУ и Европейском университете в Санкт-Петербурге). А если всё-таки не знаете и попали сюда через поиск в тг, то читайте описание канала. Ну или если…»
Ну и в догонку к первому посту - начну с разбора термина ИИ (сиречь AI). Конечно, есть же статья на Википедии, озаглавленная «ИИ». Но мало кто помнит, как менялось содержание этой статьи последние лет 15. В далекие нулевые ИИёй называли класс задач и методов их решения (solutions), которые заменяли человека при принятии решений (decisions, decision-making). Вот, положим, есть у вас робот, который дергает рубильник. Это ещё не ИИ. Вы сами решаете, когда включить робота и сколько раз и с какой силой он будет дергать рубильник. А вот когда вы изучили себя и поняли, что в определённых условиях вы включали, выключали и перенастраивали робота, а затем создали программу, которая стала командовать роботом вместо вас - вот это уже ИИ. А ваш робот стал smart (или умным, интеллектуальным).
А что поменялось за 15 лет на Википедии? Там как шла дискуссия о том, что такое ИИ, так она по сей день и идёт. Например, русскоязычная статья подчёркивает, что ИИ выполняет творческие функции, а англоязычная уходит в перечисление индустриальных направлений, где ИИ заменяет человека.
Ну и у меня готово первое задание на почитать: зайдите в Википедию, найдите историю редактирования статьи об ИИ на русском и английском и проведите собственное журналистское расследование: что же на ваш взгляд осталось неизменным сквозь года и языки? (У меня есть свой ответ на этот философский вопрос, но я приберегу его для следующего поста.)

#база #эссеиистика
🔥3
Что нужно начинающему ИИшнику?

Конечно, освоить самый великий язык программирования на свете - Питон (он же Python).
Почему он? Потому что на нем есть много высококачественных халявных тьюториалов (вот как этот мой канал) и облачных сервисов для быстрого старта.
Но питонов много.. Какой брать? Сейчас (as of 21 June 2023) все активно переходят на тридесятую версию, выпущенную в 2021. Уже появилась 3.11 и она смело заявляет, что на 10-60% быстрее тридесятой. В общем, если вы решили ставить Питон и работать локально (выполнять код на своем компе), то не опускайтесь ниже Python 3.10. А в облачных сервисах обычно стоит самая проверенная и актуальная версия.
Где лучше кодить? О том, как и куда ставить Питон, у меня будет отдельный пост. Тем, кто вкатывается в айти, рекомендую все-таки не париться с установками, а воспользоваться облачными версиями, чтобы сначала освоиться с довольно простыми азами кодинга. (Иными словами: Внимание! Во время установки питона может так подгореть, что вы просто бросите все, толком не вкусив мэджика от возможностей, которые дает современное программирование.)
На какое облачко лучше сесть? Ну, конечно, Google Colaboratory. И пусть они мне ничего не заплатили за этот пост, лучшей альтернативы имхо пока нет. Знакомиться с колабом надо тут.
А какой тьюториал по питону посоветуете? Ну, конечно, Django-girls! Самое важное: не надо ставить все, что они там просят, к себе на комп. И Django пока не берите. Возьмите именно вот этот один тьюториал "Введение в Python" и прогоните его в гугл-колабе. Время освоения: 1-2 вечера посидеть.
И напоследок, если вы все это умеете, то вот вам простенькая нейронка в колабе с разбором азов машин лернинга. Читайте описание, жмякайте треугольничек, и волшебная среда Jupyter сама все сделает. Рекомендую, прежде чем запускать, залить файл себе на гуглодиск.

аза
5🔥1
Продолжу тему: что такое ИИ? (философский длиннопост)
Если вы почитали Википедию, как я советовала ранее, то у вас уже точно есть собственное уверенное представление об этом вопросе. (Да, я реально считаю, что Википедии достаточно для азов.) Мое экспертное мнение, скорее всего, с вашим пересечется, но лишь частично. The truth is out there.
Мое вхождение в ИИ началось с проекта по комьютерному юмору: мне захотелось создать собственную систему распознавания юмора, основанную на концепции инвективных имен. Эту концепцию я предложила в кандидатской диссертации. Оказалось, что распознавание юмора - это так называемая ИИ-полная (AI-complete) задача. За этим термином кроется сосуществование в представлениях об ИИ двух противоположностей: "ИИ может обладать сознанием, как человек", и "ИИ только делает вид, имитирует сознание". Всем известный тест Тьюринга должен показать, что сознание есть. И, наоборот, логический эксперимент Китайская комната поддерживает теорию имитации.
Так вот с точки зрения полного ИИ (aka сильного, hard) распознавать юмор он сможет, когда станет "действительно мыслящим" - как человек.
В моем недавнем примере с рубильником вместо машины можно представить и человека, который делает монотонную, рутинную работу. О таком человеке, скорее всего, скажут, что он низко-квалифицирован и вообще туповат для более интеллектуальных задач. При этом, чем больше он ошибается, становится нерутинным - недостаточно монотонно дергает рубильник, тем хуже получается результат. И беднягу будут сильнее ругать за тупизну. А вот его начальник, который решает, сколько раз и в каких случаях дергать рубильник, считается уважаемым человеком, экспертом в заводских делах.
Таким образом, умная машина - это та, которая выходит за рамки рутины, но не как-то случайно, а так, что это приводит к улучшению результата. The better the result, the smarter the machine.
Программу, которая распознает юмор, я в итоге написала. Она это делает не идеально (есть более сильные конкуренты), но вполне себе наравне с не-в-совершенстве-говорящими-на-английском людьми. Да и проект все еще развивается - думаю, мы сможем лучше. Главное тут то, что мне не нужна действительно думающая машина для решения очень трудных экспертных задач. Но сама разработка алгоритма дала мне очень много для понимания природы юмора.
Некоторые современные программы типа ChatGPT позволяют измерить свой IQ. По разным оценкам он уже выше 120. Привет, Элджернон!

#база
#иипетпроект
🔥41
Написав прошлый пост, я подумала, что интеллектуальность ИИ можно оценить ещё и через сравнение с поведением человека по отношению к окружающей среде. Условно можно разделить это поведение на три типа (я с этим делением столкнулась на каком-то тренинге от нашего hr-отдела; откуда у него ноги растут, не знаю, но оно реально щас хорошо все проиллюстрирует):
- консервативное среда меняется, но я буду дергать рубильник как мои деды сто лет назад
- реактивное среда поменялась, надо подстроиться (и в воздухе переобуться; эйчары, кстати, это хорошо умеют)
- проактивное неизвестно, как там поменяется среда завтра; попробую уже сейчас сколотить себе бункер со всеми удобствами, чтобы меня это задело по минимуму.
Консервативная машина только и умеет, что дергать рубильник. Умная подстраивается под меняющийся мир с его растущими запросами. Проактивная плюнет на это дело, положит людей в капсулы и будет использовать как батарейки.
3
ДорогИИе подписчики! Пока идёт лето и контент-план на академический год ещё не готов, позвольте представить вам своего соавтора и админа этого канала: Артём Пищулин - студент направления «Информационные системы и технологии», в ближайшем будущем преподаватель, интересуется анализом данных и связкой данных с ИИ. В этом канале будет помогать писать посты и мониторить маты, если вдруг вы затеете дискуссию ;) А мне маты можно? Пока не решила.
(Артём говорит, что подключит бота, который будет искать маты вместо него. Ждём!)
Ну а вот так мы выглядим в повседневной жизни.
👍71🔥1
Сентябрь горит, убийца плачет, календарь перевернуть мы не успели, зато у нас готов контент-план на месяц, уииии! План такой:

Сентябрь 2023
14 Бинарная классификация
17 А кто такие фиксики компьютерные лингвисты?
19 Anaconda - фу (на самом деле нет)
21 Линейная регрессия
24 Популярные каналы про ИИ
26 10 советов как достичь SOTA
28 Что такое NLP? (И как не путать его с НЛП и НЛО)

И сегодня по просьбе Артема, которому надо сделать домашку по бинарной классификации (да, этот пост “заказной”, но админов тоже надо кормить), разжевываю именно эту тему.
Начну с главного слова в теме: классификация - почему это про ИИ? Искусственный интеллект принято определять как класс задач, в которых автомат может заменить человека без потери эффективности. Классификация, наряду с кластеризацией и прогнозированием, это одна из таких типичнейших задач, где ИИ активно применяется. Кроме того, с нее удобно начинать обучение. Задача классификации ставится так: есть объекты нескольких классов (про них мы уже знаем, что они принадлежат именно этим классам) и есть признаки этих объектов (длина, ширина, вкус, цвет..); а теперь надо на основании того, что нам известно об объектах классов, классифицировать новые объекты, при условии, что мы у них те же самые признаки померяли. Пример: есть три класса ирисов (цветочки такие) - Ирис щетинистый (Iris setosa), Ирис виргинский (Iris virginica) и Ирис разноцветный (Iris versicolor). (Кто ж их так назвал то?) У них есть 4 признака: длина и ширина чашелистика (вот-зе-хелл-из-зыс?) и длина и ширина лепестка (ну это более-менее понятно). Берем по 40 экземпляров каждого класса и обучаем ИИчко, а затем на еще 10 проверяем, насколько хорошо оно обучилось. Как проверить, хорошо ли, это тема отдельного номера нашего замечательного журнала. А пока попробуем просто понять: вот у нас (40+10)*3=150 ирисов - этого вообще достаточно, чтобы создать хороший классификатор? Зависит от задачи. С датасета ирисов Фишера, про который был мой пример, началось широкое шагание ИИ по миру. Этот маленький датасет и простенький к нему алгоритм линейной регрессии дают понимание, как легко, за считанные доли секунд ИИ может решить задачу, для которой потребовались бы часы ручного труда.
Классификация ирисов по трем классам называется multiclass (многоклассовой). Если класса два, то классификация binary (бинарная). На практике мультиклассовая классификация часто сводится именно к задаче бинарного по-классового сравнения (этот или этот? - ну, скорее, этот.. - ок, тогда этот или вот этот?..).
Завершаю пост традиционным колаб-ноутбуком. Прожимайте треугольнички и классифицируйте. А на подумать: разберитесь, что в моем ноутбуке изображено на картинке и что за scikit-learn такой, зачем он все еще нужен, когда есть всякие пайторчи и керастензорфлоу.

#база
#notebook
👍31
А кто такие Фиксики компьютерные лингвисты?
Придирчивый читатель, наверно, спросит, есть ли смысл описывать компьютерных лингвистов, не рассказав о том, что такое компьютерная лингвистика (computer/computational linguistics, CL). А смысл я в этом вижу такой: через рассказ о профессии я попробую донести, что такое, с моей точки зрения, есть сегодня компьютерная лингвистика. Мой рассказ основан исключительно на собственном опыте и опыте людей, которых я знаю или читаю в блогах про ИИ. Вот только я не уверена, что компьютерный лингвист - это именно профессия.
CL появилась недавно; люди, которые ее двигают, это ученые, исследователи по призванию, а на деле они работают преподавателями, сотрудниками лабораторий, ИТ-девелоперами или вообще не работают, а учатся. Итак, есть две большие сферы, где люди могут быть компьютерными лингвистами: academia и industry, но работают они там не (или не совсем) лингвистами. А если человек представляется как «компьютерный лингвист», то его понимают, скорее, так: «На работе я вынужден делать всякие обязанности типа вести пары, рецензировать статьи для журналов и параллельно могу решать задачи обработки естественного языка и/или публиковать статьи по CL. Возможно, в универе/лабе/компании больше никого, кроме меня, не нашлось, чтобы этим заниматься. Когда у меня получается что-то действительно значимое, то… хм.. в моих должностных обязанностях ничего не меняется, но я могу устроиться в вуз или компанию получше, т.к. у меня в анамнезе появляется успешный кейс внедрения или статья в сборнике Ассоциации компьютерной лингвистики (ACL)». Ну и, конечно, поиск по хх.ру тоже не даёт вакансий для «компьютерного лингвиста». При этом из каждого утюга слышится, как важна CL сегодня и как она улучшает производительность труда. В чем же дело? Вроде все просто: наймите сотрудников и пусть они вам внедрят чат-боты, умный поиск и прочее. На практике, если технология успешно внедрена, то для ее поддержки компьютерный лингвист не особо нужен. Держать лингвиста на целую ставку не требуется. В науке, если закончился грант, где были задачи в области CL, лингвист становится просто преподавателем или исследователем без гранта и, вполне вероятно, следующий его проект будет вообще не по CL - смотря, что подвернётся. Больше всего шансов, что вы будете заниматься CL профессионально, ИМХО, в крупных компаниях типа FANG, где есть отделы для научных исследований, ресеча (research). Они могут себе позволить такую роскошь. Потому что, как проходит день, если вы компьютерный лингвист? Вы много сидите и думаете, возможно, даже читаете, а потом пишете один абзац в статью. Или вы очень много плохо кодите, так что тру разрабы ужасаются или громко смеются. И главное, совершенно непонятно, как это оценить в зарплате.
Итак, CL - это молодая область науки на стыке ИТ и лингвистики, в которой, по моему мнению, очень много интересного, но совершенно непонятно, что из этого будет полезно. Поэтому ни рынок, ни наука пока не могут сформулировать четкие требования к профессии компьютерного лингвиста. Реально какие-то Фиксики получаются: их как бы нет, но кто-то их иногда видит и даже с ними разговаривает. Так что, если вы решили освоить CL как профессию, то будьте готовы, что это просто один из навыков, который, если вам повезёт, вы будете как можно чаще использовать в работе.

#эссеиистика
🫡1