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

Зани­мал­ся вче­ра созда­ни­ем ней­ро­се­тей под руко­вод­ством 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, что­бы так не про­ис­хо­ди­ло.
–А чо сра­зу-то не ска­зал?
–Изви­ня­юсь.

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

Фотодурдом

Пен­такс выка­тил новую плё­ноч­ную каме­ру Пен­такс-17, с фикс-объ­ек­ти­вом 25mm, экви­ва­лент­ным 37mm. Ага, я ска­зал «экви­ва­лент­ным». «Тоись, как это с «экви­ва­лент­ным» фокус­ным рас­сто­я­ни­ем, это же плён­ка??» Фото­гра­фы — вы там при­сядь­те на вся­кой слу­чай, если сто­и­те.

Дан­ная каме­ра сни­ма­ет ДВА кроп­ну­тых кад­ра в порт­рет­ном режи­ме, раз­ме­ром 17mmx24mm, рядыш­ком, на один стан­дарт­ный плё­ноч­ный кадр 36mmx24mm. Отсю­да и экви­ва­лент­ные фокус­ные рас­сто­я­ния.

Вот это, блин, я пони­маю, АРТЕФАКТ нече­ло­ве­че­ско­го разу­ма! Очень инте­рес­но, будет ли про­да­вать­ся, осо­бен­но за объ­яв­лен­ную цену в 500 монет. Полу­чить 72 кад­ра из плён­ки в 36 кад­ров — идея, конеч­но, инте­рес­ная. Толь­ко на обыч­ной плён­ке на таких раз­ме­рах изоб­ра­же­ния с раз­ре­ше­ни­ем уже будет — окон­ча­тель­но тово. При иде­аль­ных усло­ви­ях с обыч­ной ч/б плён­ки с пол­но­го кад­ра мож­но достать при­мер­но десять мега­пись­ке­лей. Тут, полу­ча­ет­ся, на одно изоб­ра­же­ние будет пять мега­пись­ке­лей. Я, конеч­но, знаю, что не в одних пись­ке­лях дело, и что опти­ка есть опти­ка, но ёлки-пал­ки, на таких кро­шеч­ных раз­ме­рах изоб­ра­же­ния даже на про­стень­ких вед­ро­ид­ных теле­фо­нах будет полу­чать­ся ЛУЧШЕ, чем тут.

Объ­ек­тив, опять же, тем­но­ват. f/3.5? Как-то это… не то.

В‑общем, НЕПОНЯТЬ.

Импортонезамещение

Вре­мя нын­че такое, что теги «73» и «поли­ти­ка» нако­нец-то встре­ти­лись.

Укра­ин­ский сайт выкла­ды­ва­ет дан­ные по запад­ным мик­ро­схе­мам, исполь­зу­е­мым в рус­ском ору­жии. И их там тыся­чи.

Види­мо, соби­ра­ют облом­ки вся­ко­го, и тща­тель­но доку­мен­ти­ру­ют.

Так, напри­мер, при­ём­ник сиг­на­лов GPS/Beidu/ГЛОНАСС в рус­ской бал­ли­сти­че­ской раке­те 9M723‑1 «Искандер‑М» (СС-26 «Сто­ун» в НАТОв­ской номен­кла­ту­ре) — швей­цар­ский U‑BLOX UBX-M10050-KB.

Что, кста­ти, инте­рес­но, так это то, что в роз­нич­ной про­да­же я его не нашёл, даже на Мау­зе­ре. Хотя дата­шит, вот он, лежит сво­бод­но

А вот мик­ро­кон­трол­лер серии ATTiny24A‑U из рус­ской раке­ты «Кин­жал» (АС-24 «Кил­джой») как раз най­ти не про­бле­ма.

Вот он, в роз­ни­цу 89 цен­тов сто­ит.

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

Про сотовые в (гре)бенях

Пишут, что Спейс-Экс нача­ли запус­кать на орби­ту низ­ко­ле­тя­щие спут­ни­ки, спо­соб­ные рабо­тать с обыч­ны­ми теле­фо­на­ми LTE. Таким обра­зом, самые обык­но­вен­ные, не-спут­ни­ко­вые теле­фо­ны полу­чат покры­тие, срав­ни­мое с «Ири­ди­ем» или «Инмар­сат». Очень, очень инте­рес­ная новость. Могу толь­ко при­вет­ство­вать — там, куда на охо­ту езжу, сото­вое покры­тие архих­ре­но­вое.

Про замерзающий бутан

Не пом­ню, кто посо­ве­то­вал при­об­ре­сти плит­ку со шлан­гом, и греть бал­лон рядом с плит­кой, но это ока­за­лось архи­вер­ным реше­ни­ем. Ника­ких про­блем с кипя­че­ни­ем воды у меня не воз­ник­ло, а с утра сто­ял неболь­шой моро­зец, гра­ду­са на два Цель­сия. Бла­го­да­рю за совет.

Про ТикТок

ВНЕЗАПНО выяс­ни­лось, что Байт­Денс про­во­дит актив­ную поли­ти­ку, иску­ствен­но зани­жая рей­тинг видео, иду­щих про­тив инте­ре­сов пра­ви­тель­ства Китая, вклю­чая:

1. Про-укра­ин­ские
2. Про-изра­иль­ские
3. Спор­ную Каш­мир­скую область

Хы-хы, ну про­сто таки реши­тель­но ничто, ничто не пред­ве­ща­ло!!!! Кто бы мог поду­мать???!!!

Позажигал

Взял ново­год­ний отпуск — поде­лать вся­ко­го. В част­но­сти, чинил свой пикап. Преды­ду­щий вла­де­лец выво­ро­тил с мясом перед­нее креп­ле­ние под­нож­ки, и надо было металл зава­рить. Залез под гру­зо­вик, варю. Вдруг чую — палё­ным пах­нет. Мать чест­ная, внут­ри порож­ка какой-то зву­ко­по­гло­ти­тель заго­рел­ся. И отку­да он толь­ко там взял­ся?

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

Всё это дей­ство попа­ло на мои каме­ры наблю­де­ния. Высо­кий дун­дук в дра­ных джин­сах и белой фут­бол­ке — это йа! Да, у нас в декаб­ре так теп­ло, что рабо­тать на ули­це в джин­сах и фут­бол­ке вполне ком­форт­но… хотя, конеч­но, варить металл в фут­бол­ке неко­миль­фо.

Потом сду­вать поро­шок листо­ду­вом зако­ле­бал­ся. Надо было угле­кис­лот­ный огне­ту­ши­тель взять.

Про оптический HDMI кабель

Рас­ска­зы­вал я тут про ново­мод­ные опти­че­ские кабе­ли HDMI, при­чём, даже хва­лил. Мол, и тон­кие, и гиб­кие. И всё это прав­да, но рабо­тать при раз­ре­ше­нии 3840×2160@HDR оно пере­ста­ло после несколь­ких часов рабо­ты. 2k HDR — нор­маль­но, 4k — фигуш­ки. На экране какой-то шум, снег, и глю­ки. «Ока­зал­ся наш отец, не отцом, а сукою», если выра­жать­ся непри­лич­но. Види­мо, схе­ма-кон­вер­тер меди в опти­ку какая-то дешё­вая, пере­гре­лась и под­го­ре­ла.

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

Вот это дыра

В БИО­Се прак­ти­че­ски всех суще­ству­ю­ших совре­мен­ных ком­пью­те­ров есть дыра по обра­бот­ке лого­ти­па, изоб­ра­жа­е­мо­го при вклю­че­нии ком­пью­те­ра. Его мож­но под­ме­нить, при­чём из ОС, на точ­но так же выгля­дя­щее изоб­ра­же­ние, но содер­жа­щее вре­до­нос­ный код. Этот вре­до­нос­ный код обыч­ный анти­ви­рус уда­лить не может — он не уме­ет писать в БИОС.

https://arstechnica.com/security/2023/12/just-about-every-windows-and-linux-device-vulnerable-to-new-logofail-firmware-attack/

Вот это кру­то, блин. Послед­ствия могут быть самые шикар­ные. Неуда­ля­е­мый мал­варь хоти­те?

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

Настроился

symbolith, спа­си­бо тебе, доб­рый чело­век. Я не знаю, что я там рань­ше намо­тал, но не сим­мет­ри­ру­ю­щий транс­фор­ма­тор 4:1 точ­но. Изго­то­вил по чер­те­жу, что ты при­слал, нор­маль­ный, и всё сра­зу зара­бо­та­ло. На тесто­вой нагруз­ке в 200Ω КСВ был 1:1 аж до 900 мега­герц (я какой-то доволь­но при­коль­ный фер­рит ухва­тил, види­мо).

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

При настрой­ке я наткнул­ся на непо­нят­ный эффект. Вот когда при помо­щи NanoVNA ты стро­ишь гра­фик согла­со­ва­ния антен­ны, по оси Х идёт часто­та, а по оси У — коэф­фи­ци­ент сто­я­чей вол­ны (КСВ, SWR). Для тех, кто не раз­би­ра­ет­ся, пояс­ню, что чем КСВ ниже, тем луч­ше. Мини­маль­ное зна­че­ние: 1:1. Вот, напри­мер, финаль­ный гра­фик для моей антен­ны, на нём вид­но, что КСВ про­се­да­ет в диа­па­зоне 7 мега­герц, 14 мега­герц, и 28 мега­герц (несим­мет­рич­ный диполь согла­со­вы­ва­ет­ся на ЧЁТНЫХ гар­мо­ни­ках: 7MHz x 1, x2, x4…) Зна­чит, на них антен­на согла­со­ва­на непло­хо, и мож­но её исполь­зо­вать:

Так вот, ниж­няя точ­ка гра­фи­ка — на отмет­ке в 6.9MHz. Я дело­ви­то при­нял­ся отре­зать кус­ки антен­ны, думая, что этот овраг ста­нет сдви­гать­ся впра­во. Да? А вот хрен! Не стал он сдви­гать­ся впра­во, он стал ГЛУБЖЕ, так, что на радио­лю­би­тель­ских 7.0–7.3MHz КСВ всё рав­но нахо­дил­ся в при­ем­ле­мых зна­че­ни­ях (при­ем­ли­мые — это 2:1 или ниже), но ниж­няя его точ­ка оста­лась на 6.9 мега­гер­цах, как вко­пан­ная.

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

А он дей­стви­тель­но нор­маль­ный. Даже на участ­ках, где антен­на стро­ит уже не так хоро­шо (десять мет­ров), её всё рав­но мож­но исполь­зо­вать, КСВ 2.07:1. Поте­ря­ешь тут при­мер­но 10% мощ­но­сти, неве­ли­ка беда.

А вот что уди­ви­ло — так это как заме­ча­тель­но эта антен­на согла­со­ва­на на ОВЧ и УВЧ. На всём диа­па­зоне 2M и даже 70cm она демон­стри­ру­ет какие-то смеш­ные зна­че­ния КСВ типа 1.73:1.

Не то это ошиб­ка изме­ре­ния, не то дей­стви­тель­но не антен­на, а диво див­ное. Прав­да, вряд­ли её мож­но будет исполь­зо­вать на двух мет­рах — она име­ет гори­зон­таль­ную поля­ри­за­цию, а там обыч­но надо вер­ти­каль­ную. Впро­чем, конеч­но, мож­но было бы и попро­бо­вать. Жаль толь­ко, что мой Айком-735 не уме­ет в более корот­кие вол­ны, чем десять мет­ров. Но у меня ещё есть «двой­ка» Yaesu, мож­но попро­бо­вать её.

Теперь надо допа­ять интер­фейс для ком­пью­те­ра, и вплот­ную занять­ся Вин­лин­ком — систе­мой элек­трон­ной почты на радио­вол­нах. Это нату­раль­но прак­ти­че­ски Фай­до­нет полу­чит­ся, хе-хе.