Про автоматические кассы в магазинах

Не знаю, как другие, а я из принципа не хожу через автоматические кассы (self-checkout).

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

Лем — голова

Всё же не перестаю удивляться прозорливости талантливого польского писателя. В каких только вещах он не оказался прав! Даже его Свободная Рыбиция очень сильно напоминает некоторых современных политических жуликов. А наблюдая современную беготню с системами искуственного интеллекта, просто поражаешься, настолько точно Лем предугадал некоторые тенденции, и самое главное — он предугадал, что искуственный интеллект во многих областях, традиционно считающимися именно что присущими только человеку, будет этого самого человека превосходить. Конечно, едкий интеллект Лема пишет обо всём этом с сарказмом, оборачивая всё в шутку. Но в каждой шутке, как известно…

Наткнулся на совершенно превосходный рассказ “Стиральная трагедия”, из серии путешествий Тихого, про то, как в стиральные машины стали встраивать ИИ, и чем всё в результате закончилось. Приведу несколько цитат, но поверьте, рассказ великолепен, и стоит того, чтобы прочитать его целиком.

“Вскоре после моего возвращения из одиннадцатого звездного путешествия газеты стали уделять все больше внимания конкурентной борьбе двух крупных фирм, производивших стиральные машины, — Наддлегга и Снодграсса.

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

“Купив за 350 000 долларов соответствующие права и согласие заинтересованных лиц, он сконструировал стиральную машину для холостяков, наделенную формами знаменитой сексбомбы Лиан Карворс, платиновой блондинки, и другую — подобие Фирли Мак Фейн, брюнетку. Оборот тут же подпрыгнул на 87 процентов. Тогда противник обратился в конгресс, воззвал к общественному мнению, к Лиге дщерей революции, а также к Лиге девиц и матрон, однако Снодграсс продолжал непрерывно поставлять в магазины стиральные машины обоих полов, все более пикантные и вводящие в искушение. Наддлегг капитулировал и начал производить стиральные машины по индивидуальным заказам, придавая им по вкусу клиента фигуру, масть, упитанность и портретное сходство с фотографией, приложенной к заказу.”

“…их продукция начала проявлять неожиданные и явно отрицательные наклонности. Прачки-няньки не были еще самым большим злом, однако секспрачки, с которыми прожигала жизнь золотая молодежь, которые склоняли к грехопадению, подрывали моральные устои, учили детей непристойным словам, стали уже педагогической проблемой. Что уж говорить о стиральных машинах, с которыми можно было изменить жене или мужу! Удержавшиеся еще на рынке фабриканты стиральных средств и механизмов тщетно доказывали в публичных выступлениях, что стиральные машины — Лиан или Фирли — представляют собой профанацию высоких идеалов автоматизированной стирки, которая должна консолидировать семью и поддерживать прочность супружеских уз, — ибо они могут вместить не более дюжины носовых платков или одну наволочку, остальную же часть их нутра занимают агрегаты, не имеющие ничего общего со стиркой, скорее совсем наоборот.”

И так далее, и тому подобное. И как бы выдумка Лема не обернулась вдруг былью.

Рассказ, если что, нашёл тут: https://litmir.club/br/?b=143801

Люблю я генеративный ИИ!

Создание любой бредятины на ваш заказ!

Наконец-то я накреативил и узрел старый айтишный мем/байку про экскаватор марки “Cablefinder” (ищущий кабели).

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

Про ИИ и резюме, заключительное

Зифф-Дэвисы разразились вполне толковой статьёй о том, как именно использовать ЧатоЖоПТу для написания резюме.

А теперь — слайды, вернее, цитаты:

“…вам следует отредактировать текст таким образом, чтобы он соответствовал вашему опыту и не выглядел так, как будто его написал чат-бот. Работодатели хотят узнать о том, что делает вас уникальным. Без вашей помощи чат-бот сможет получить доступ только к общей информации о вашей должности.”

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

В-общем, всё то, что я написал ранее, только другими словами. Общие фразы (“работал работу, поддерживал поддерживаемое, сделал сделанное”) и прочее механическое перечисление ключевых слов в резюме — это ничего не значащая мура, и только раздражает потенциального работодателя. Чего ты конкретно сделал-то, чего совершил — вот, что необходимо указать.

И, опять же, ИИ прекрасен не столько когда текст надо писать с нуля, а именно, что подрихтовать существующий: “ChatGPT – отличный ресурс для доработки текста. Все, что вам нужно сделать, это скопировать и вставить свой текст и попросить ChatGPT улучшить его. Например, я попросил ChatGPT: “Не могли бы вы сделать так, чтобы в резюме фраза “Я пишу истории о технологиях” звучала бы лучше?” Через несколько секунд он выдал тщательно продуманный текст, в котором чувствовался профессиональный тон и который усложнял это простое предложение…”

Тем, кто настаивает на том, что в резюме сисадмина надо писать “работал работу”, что никаких “достижений” у сисадминов нет — рекомендую взять на заметку.

ImageFX

Однако, прогресс в генеративном ИИ идёт семимильными шагами. ImageFX (Гугл) на моей памяти первый генеративный ИИ, относительно правильно вставляющий нужный пользователю текст в создаваемое изображение.

До этого постоянно вставляло что-то не так написанное, либо не в том порядке, или с какими-то пропусками.

Дають ось туточки.

Ну, и чисто для фана.

“Мусульманин и еврей вместе весело едят бекон”:

Вот, оказывается, чего не хватает для счастливого разрешения противоречий между религиями!!!!

Вдогонку

Не буду голословным. Вот часть резюме человека (большая картинка — по щелчку), которое было написано либо целиком ИИ, либо явно с его применением. Написано оно крайне гладко, без ошибок, с “умными” словесами и интересными речевыми оборотами. Но вот скажите мне, ЧЕМ человек конкретно занимался, с каким софтом работал, какие технологии знает и применяет, какие системы создал? Единственное, что я там конкретного нашёл — так это то, что человек работал с Windows 11. Ну, работал и работал, а что ты делал-то, вообще? Не “создал лучшее в мире фуе-мае”, а в деталях? Можете понять? И я не могу.

Кстати, с создателем этого резюме я так и не смог пообщаться. Договорились о интервью, я честно прождал его 15 минут, он так и не пришёл, после чего я послал его к соответствующей матери. Выбесил конкретно прямо с самого начала.

Про ентот ваш ИИ

Ув. giovanni1313 написал статью на (лично мне) наболевшую тему. Как использование ИИ превратило поиск кандидатов на рабочие места в тупорылый балаган.

https://giovanni1313.livejournal.com/137894.html

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

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

1. Все ключевые слова, например, Active Directory, DNS, DHCP и т.д. в этих резюме присутствуют.
2. Понять, какие конкретно у человека были рабочие достижения и чем он конкретно занимался, по этому резюме решительно невозможно. Всё ограничивается общими фразами.

При этом очевидно, что ИИ не может начать галлюцинировать какие-то достижения за человека, потому что если оно напишет, например что “организовал защиту нашей сети по стандарту NIST 800-171”, при первом же вопросе кандидату, “а как конкретно вы это делали, какие инструменты использовали” — кандидат, что называется, “поплывёт”.

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

–Ага! — сказали мужики

Пытаюсь нащупать границы возможностей своей предсказательной модели на TensorFlow. Точность предсказания, кстати, после чтения комментов, стал оценивать по трём параметрам: среднему (по модулю) отклонению, минимальному отклонению, и максимальному отклонению (всё в процентах).

Так вот какие-то там сложения, деления, вычитания и умножения в самых разных комбинациях — без проблем.

–Вжик — сказала нейросеть

Ах вот ты как? А логаритм10 суммы двух дробей, помноженных на значение, возведённое в квадрат, могёшь?

–Дыр-дыр-ддд — сказала нейросеть. И стала ошибаться аж на двести процентов.

Примитивное наращивание количества параметров результатов пока не даёт. Видимо, предсказание резко нелинейных функций (особенно если их там >1) оно всё же не очень.

Хочу зачесть литературу:

Я уверен, что просто что-то не так делаю.

Математическое и компьютерное

Вот некоторые думают, что если вычисления перенести на ГПУ вместо ЦПУ, то:

1. Всё сразу заработает в сто раз быстрее.
2. Будет сразу работать лучше.

АвотшЫш. Не всегда, и не везде.

Вот сделал я нейросеть, модель одинаковая, довольно несложная, пятислойная, сто нейронов в каждом слое, итого 50 тысяч параметров — по нынешним меркам вообще три копейки.

Запускаю на ЦПУ — сеть тренируется за три минуты, и выдаёт довольно нормальный результат, с точностью в пределах 0.7%

Запускаю на ГПУ — сеть тренируется уже за пять минут, а не за три, а результат у ней — заметно хреновей, с погрешностью уже 1.23%

Я полагаю, что последнее это потому, что TensorFlow, будучи запущенным на ГПУ, по умолчанию до сих пор использует 16 бит для представления чисел с плавающей запятой, вместо 32 бит или даже 64. Надо будет поглядеть, можно ли его заставить использовать больше бит. Хотя, конечно, математика на компьютерах — она дело такое, что вообще-то никто гарантии, что результат вычислений будет одинаковым, если программа запускается на процессорах разной архитектуры, никогда не давал. Особенно, если числа такие, что представить их точно в формате IEEE-754 невозможно (например, десятичная дробь 0.2).

А вот почему оно ничуть не быстрее работает на ГПУ, чем на ЦПУ — для меня уже загадка. RTX3080 вроде как пошЫрше должен быть во флопсах, чем i9-11900k @ 3.5GHz. Может быть, такая маленькая модель его просто нагрузить толком не в состоянии.

И да, “чтобы два раза не вставать”.

Как наиболее правильно считать и представлять среднюю ошибку в вычислениях?

Вот, например, если в одном предсказании из двух программа ошиблась на +100%, а во втором — на -100%, врядли заявление о том, что средняя ошибка составляет 0% (100-100)/2, будет представляться нам истинным.
Но с другой стороны, если тупо считать ошибки по модулю, а программа при этом стабильно ошибается то на +1%, то на -1%, статистически-то ведь она, можно сказать, что не ошибается вовсе.
Как обычно действуют, вдруг кто знает?

ИИ-погромизм

Занимался вчера созданием нейросетей под руководством ChatGPT. По итогам я имею сказать вот что.

В целом — впечатляет. Даёт не самый плохой код на Питоне для создания нейросети на TensorFlow, что характерно — используя keras. Практически то же самое, что я сам рисовал четыре года назад.

Только в этот раз я замахнулся пошЫрше и решил нейросети скормить csv с “финансовыми транзакциями”. Внутри csv было одиннадцать колонок, десять просто с числами, а одиннадцатая — с довольно сложным вычислением из данных, находящихся в шести колонках (сложение двух дробей, вычисление 10% от полученного, и складывание с ещё двумя колонками). Четыре оставшиеся колонки не делали ничего.

Модель делал пятислойную, сто нейронов в четырёх слоях, один нейрон в выходном слое (это уже не ЧатЖПТ предлагал, это уже я сам). Наверное, это даже избыточно сложная модель.

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

Скажу сразу, всё получилось. Конечно, математика на нейросетях довольно неаккуратна, но после 5000 эпох тренировки она смогла предугадывать значения с точностью, не выходящей за рамки 5%. Планирую показать результат начальнику, контора сильно озаботилась встраиванием ИИ в продукцию.

Но помимо этого, у меня возникли небольшые сложности, и возникли они именно от применения ИИ.

Во-первых, ЧатЖПТ нередко даёт код для Питоновских библиотек, который уже является устаревшим (deprecated). Например, свойство pandas.DataFrame.iloc — вытаскивание индивидуальных колонок из pandas.DataFrame.

Во-вторых, ЧатЖПТ создаёт в коде баги. Например, вместо десяти строк в тестовом наборе данных у меня почему-то считывались только девять. Разговор шёл примерно вот так:

–А у меня вместо десяти ожидаемых строк только девять.
–Может, данные кривые? Вот как их надо нормализировать.
–Данные нормальные, но считывается только девять строк вместо десяти. Первая строка проглатывается.
–Не должна. Вот код, как правильно считывать csv через pandas.read_csv
–Я этот код и использую, но первой строки нет.
–Ну, правильно, потому что по умолчанию первая строка считывается в имена колонок. В pandas.read_csv надо ставить параметр header=None, чтобы так не происходило.
–А чо сразу-то не сказал?
–Извиняюсь.

Но в целом (в целом) — впечатляет, да. Далеко не с каждым человеком я на эту тему могу поговорить, более того, не каждый сразу “на гора” выдаст работающий (более-менее) код. Ошибается иногда? Ну да, ошибается. Покажите мне человека, который не ошибается, и я покажу вам лентяя, который никогда ничего не делает. Тем не менее, лентяю в способности рассуждать почему-то не отказывают, а искуственному интеллекту — таки да. Неправильно это, ИМХО. ИИ вполне способен на рассуждения.