HTML

Az élet kódjai

Csináld maga. Senki nem csinálja meg helyetted.

Friss topikok

  • sdani: Sajnos nekem is hasonló érzéseim vannak az R kiszorulásával kapcsolatban. Remélem jobban fogja tar... (2024.04.29. 10:48) R meetup
  • sdani: Nagyon jók ezek a bejegyzések! Feszültséggel teli, fordulatos, mint egy jobb krimi. :D Abba ne hag... (2024.04.29. 10:35) Wgel CTF
  • sdani: @Travis.CG: Egy kis szerencse sosem árt. :D (2024.03.01. 13:19) A bioinformatika helyzete 2024-ben
  • Travis.CG: Szóval az akadémiai szféra mazochistává tett, amit a Pinephone-al élek ki? Hmm, érdekes összefüggé... (2023.10.05. 18:23) Új barátom az Informatikai titkárságról
  • Travis.CG: Túl nagy a hype körülötte, ezért túlzó elvárások vannak vele szembe. Ha a korábbi chatbotokhoz kép... (2023.02.28. 06:28) chatGPT, a bioinformatikus

chatGPT, a bioinformatikus

2023.02.23. 15:04 Travis.CG

Megmondom őszintén, én nem értem, mi ez a nagy hype a DumcsiBot körül. Jönnek az arcomba a hírek, hogy a Google felvenné, mint programozót, emberek lelki szemetesládának használják, tízszeresére növeli a produktivitást, vagy egyszerűen csak verset ír Hamupipőke ürítési szokásairól.

Összehasonlítva a StableDiffusion-el, ami egy képességet ad hozzám, ami nincs nekem (nevezetesen a rajzolást), addig DumcsiBot semmi olyat nem tud, amit én ne tudnék. Én is tudok írni, én is tudok programozni, én is képes vagyok nagyobb szöveget összefoglalni. Igaz, engem nem venne fel a Google és Hamupipőke WC használati szokásait sem írnám le olyan odaadással, de ettől függetlenül a képességek csírái megvannak bennem.

Maga a technológia szerintem ígéretes, és már most is jól használható olyan esetben, mikor nem tudom pontosan beírni a Duckduckgo-ba a keresőszót, mert csak homályos fogalmaim vannak a dologról. Ekkor egy beszélgetés során jobban előjön, hogy mit is akarok igazán.

Amit én problémának látok, hogy az emberek azt hiszik, ez a program gondolkodik, mert szöveget generál. De ez nem igaz. Egy politikusokról sem gondolja senki, hogy gondolkodik, csak azért, mert szöveget generál. Onnan lehetne gyanítani, hogy a rendszer gondolkodik, hogy tudja, mikor NE generáljon szöveget. (Amire ugye a chatGPT-hez hasonlóan a politikus is képtelen.)

Szerintem a rendszer azért olyan sikeres, mert az emberek imádják a sok szöveget (gondoljunk csak a pletykákra, meetingekre, vég nélküli telefonbeszélgetésekre), ez a rendszer pedig pontosan ezt adja meg nekik. Rengeteg szöveget. Például az emberek megkérdezik a Dumagépet azokról a dolgokról, amit tudnak. Miért? A Google-be ki szokta beírni, hogy mennyi 5 + 5? Senki. De a chatGPT-nek feltesznek ilyen fajsúlyú kérdéseket, és élvezettel nézik, hogy milyen válaszokad ad.

Viszont feltehetünk olyan kérdést a Szószátyárnak, amire nem tudjuk a választ? A helyzet az, hogy nem érdemes, mert a sok szövegnek sok az alja elv alapján rengeteg marhaságot is kapunk, amit a kellő hozzáértés nélkül nem tudunk kiválogatni. Ilyen esetben nem kapjuk meg a hőn áhított 10x produktivitást. Mint, ahogy a következő eset is mutatja:

A szakdolgozóm is azt gondolhatta, a sok szöveg jó. A témájához eddig írt egy használható Bash szkriptet, ami működött. Azt kértem tőle, hogy írja át Snakemake-be, hogy egy nagyobb adatszetten is lefuttassuk. A Bash szkript 4 lépést tartalmazott, gondoltam ezt elég egyszerű feladat lesz átírni. Azt vártam, hogy a végén megérti a Snakemake működését, ugyanakkor lesz egy hatékony kódunk, ahol nem kell sokat vacakolni, ha munkafolyamatot újra kell indítani.

Pár nap múlva jelezte, hogy a Snakemake fájl elkészült, de valami miatt nem megy, nézzem meg. Megnyitottam a fájlt, és majdnem lefordultam a székről. Néztem a kapott fájlt, és nem értettem, amit láttam. Voltak benne szabályok, voltak benne "dolgok", de az egésznek nem volt semmi értelme. Mivel a szakdolgozóm értelmes, a szkriptet viszont láthatóan egy hülye írta, arra kezdtem gyanakodni, hogy a chatGPT a ludas. Neki is szegeztem a hallgatómnak a kérdést, mire csak annyit mondott, hogy "ötleteket merített". Bizonyára jó nagy kanállal merítette az ötleteket, de az eredmény így sem különbözött egy Hamupipőke-vers alapanyagtól.

Ezek után nem is próbáltam kijavítani a bughalmazt, hanem megírtam nulláról. Lehet, hogy a Google felvenné, de nálam a chatGPT nem lehetne szakdolgozó.

4 komment

Címkék: machine learning

Retro hétvége

2023.02.13. 22:35 Travis.CG

Kislányom mostanában versenyeset szeret játszani. Kiválasztunk játékfigurákat, akik összemérik tudásukat különböző versenyszámokban. Gondoltam, megmutatom neki a Summer Games nevű játékot és egyben beüzemelem a C64-t is, ne csak porosodjon.

A cucc pöccre indult. Szépen betöltődött az intro, ahol meggyújtják az olimpiai lángot. Azután újabb töltés következett. Lányom értetlenül nézett:

- Mikor lehet vele játszani?

- Majd, ha betöltődött.

- És már betöltődött?

- Nem, ennek idő kell, nem olyan, mint egy tablet.

Kb 10 másodperc múlva:

- Még mindig tölt!?

- Igen, ez régi technika. Ennek idő kell.

A játékban ki lehet választani melyik ország színeiben induljunk, és az adott ország himnuszát is lejátssza. Ez már tetszett neki. Nekem is új élmény volt, hogy értettem a játék utasításait. Gyerekkoromban még nem tudtam angolul, mindig csak találomra nyomkodtam a gombokat. Arról viszont megfeledkeztem, hogy ez a játék milyen nehéz. Minden egyes versenyszámnak van egy speciális mozdulatsora, amit végre kell hajtani a joystic-al. Ezek jó részét elfelejtettem, ezért a toronyugrásnál jó nagy hasasokkal placcsantunk a vízbe. A játékban a bírók meg adták a 0 pontokat. A dolgot nehezítette, hogy időnként lefagyott a játék, és újra kellett indítani, betölteni mindent előröl.

Ettől gyermekem nagyon ideges lett, ezért kerestem neki egy másik szórakozást. Ezen a lemezen volt még a Suicide Express is, ezért betöltöttem neki azt. Ez is egy ritka nehéz játék, de ezzel nagyon jól elvolt.

Mikor megunta és magamra hagyott, gondoltam kipróbálom a kazettás egységet is, mert a Wizard of Wor azon van. Arra még emlékeztem, hogy be kell tölteni a Super Turbo-t, de onnantól már nem tudtam, milyen parancsot kell használni. (Később Grass világosított fel, hogy a <-L a megoldás).

Mikor pakoltam el a cuccokat, azt vettem észre, hogy a tápegység vezetékén ragacsos, szürke rágógumi-szerű trutymó van rajta. Megijedtem, hogy a szigetelés kezd leoldódni. Mi lesz, ha tönkremegy a tápegység? Honnan fogok szerezni másikat?

Ahogy törölgettem a ragacsos izét, észrevettem, hogy alóla előtűnik némi szöveg. Hmm, akkor nem a szigetelés válik folyékonnyá, hanem valami ráfolyt. A C64 szekrényében semmilyen vegyszert nem tárolok. Elkezdtem kutakodni, mire megtaláltam a trutymó forrását. A Sun billentyűzetének gumi talpa elfolyt. Ettől egy kicsit megkönnyebbültem, bár a takarítást nem úsztam meg.

trutymo.jpg

Később megismételtük a retro kalandozást. Akkor már a Turbo-t is tudtam kezelni. A Wizardozás után ismét egy nagyot gondoltam, és elővettem az egyik vásárolt játékot. Igen, annak idején vettem játékot! Naivitásomat jelzi, hogy én akkor azt hittem, eredeti játékot veszek egy magyar piacon. Csak otthon derült ki, hogy a kazetta borítóját filctollal rajzolták. Ennek ellenére mind a mai napig megtartottam.

starg3.jpg

Ezzel a játékkal én még egyszer sem tudtam játszani. Ezzel a játékkal még egyszer nem játszottam, mert nem tudtam betölteni. Egy homályos emlékem van, hogy talán egy háttérkép betöltődött, de ez nem biztos. Azt gyanítom, hogy a kazetta rossz. Gondoltam 30 év után itt az ideje kipróbálni.

Most sem töltődött be. Néha villant egyet a képernyő, de más nem történt. A kazetta a végére ért és leállt. Én meg gondoltam egyet és megfordítottam, majd lenyomtam a lejátszás gombját. A töltődés folytatódott, de nem jelent meg semmi, amivel játszani lehetett volna. Újraindítottam a gépet és most a kazetta másik felét kezdtem el betölteni. Régen ugyanis a kazetta két oldalára ugyan azt a játékot másolták fel. A másik oldal is végigért, de nem töltött be semmit. Ismét megfordítottam a kazettát, és hagytam menni.

Ekkor betöltött egy grafikát! Hoppá, működik! Hagytam még forogni, és bejött a játék is.

A sok hűhó, 30 év várakozás után, amit kaptam az egy ritka béna defender klón volt. Mitől béna? Konkrétan vannak benne pályák, ahol az űrhajóval nem lehet mozdulni. Az életek száma nem látszik. Egyes ellenségek csak villognak, de szétlőhetetlenek. Egy idő után a kis űrhajó elhagyja a bolygót, amit véd, és megindul az űrben. Ezt nem jelzi semmi, véletlenül vettem észre, hogy tudok előre mozogni. Néha beleakadtam grafikai elemekbe, amelyeket  végül kikerültem. A játék csúcspontja, amikor elérjük a játék nevét adó G3-as űrállomát. Ez az űrállomás lő kettőt, majd vége a játéknak. Szétlőni azt sem lehet, majd egyszer csak újra a bolygó felszínén vagyunk, és minden kezdődik előről. Olyan, mint egy béta állapotú játék kezdemény. Nem valószínű, hogy még egyszer előveszem.

De ezen felbátorodtam, úgyhogy legközelebb egy másik vásárolt játékot, a Démonok Birodalmát fogom előkaparni. Az biztosan eredeti, és azzal tudtam is játszani, bár nem jutottam el minden pályára. Grass viszont megmutatta, hogy van hozzá végigjátszás, úgyhogy azt még fogom nyüstölni. Összességében elégedett vagyok az eredménnyel.

game.jpg

Szólj hozzá!

Címkék: c64 Sun

TV borzalom

2023.02.10. 22:50 Travis.CG

Az ünnepek alatt a családok látogatásánál van egy kis retro érzés, mert ott még szoktak TV-t nézni, sőt még a beszélgetések egy része is a TV műsorokról szólt. Ez a rosszabb helyeken éneklős-táncolós-SMS-szavazós műsorokat jelent (tudjátok, sztárok, akik más sztárokban vannak, mindenféle szexuális utalás nélkül), a jobb helyeken ismeretterjesztő műsorokat fed le. De azért utóbbiaknál is észnél kell lenni.

Az egyik műsor a Naprendszer bolygóit mutatta be, éppen a Plútónál jártak, ami nem is bolygó, de mindegy. Még én is szívesen belenéztem, mert a New Horizons eredményeit is bemutatta. Az elejével nem is volt semmi baj. Lehetett gyönyörködni a vulkánokban, amik nem lávát, hanem jeget lövelnek ki magukból.

Aztán jöttek a pontatlanságok. Például rámutattak egy vörös foltra, ami szerintük ammónia. Ezen annyira nem akadtam fel, mert az ilyen ismeretterjesztő műsorok szeretnek egyszerűsíteni. Tehát bármilyen ammónia csoportot tartalmazó vegyületre simán rámondják, hogy ammónia, hogy egyszerűbb legyen. Még akkor is, ha minden általános iskolás tudja, hogy az ammónia színtelen.

De amin már összehúztam a szemöldököm, az a következő volt: A Plútó légköre napfény hatására bomlik és a bomlástermék összeáll nehezebb molekulatömegű anyagokká, amelyek eső-szerűen hullanak az égitest felszínére. Bár a képeken ugyan olyan vörös volt, mint az "ammónia", ezek valójában a nukleobázisok. Itt lefagytam egy pillanatra. Mi van? Jó értem? DNS-eső hull a Plútón?

Elkezdtem a netet böngészni, hogy találok-e erre utaló anyagot, de nem leltem. Nem értem, hogy egy tudományosnak nevezett műsorba miért kell ilyen hülyeségeket mondani?

Bár, igazából nem értem, miért vagyok kiakadva a TV-re. Hiszen voltak olyan sorozatok, ahol angliai szellemjárta kastélyokat mutatnak be. Minden hétre jut egy, ezért csakis az én hibám, hogy kint tartózkodásom alatt egyetlen kísértetbe sem botlottam. De említhetnék egy történelmi témájú csatornát is, ahol földönkívüliekről mennek sorozatok.

Anyósom rendszeresen lehord, mert nem nézek TV-t. Azt szokta mondani, ezért nem tudok semmit a világról.

Szólj hozzá!

Címkék: filozofálás

OpenCV GUI Windows-on

2023.02.02. 19:11 Travis.CG

A feleségem pollencsomókat is vizsgál. Anélkül, hogy túlságosan elvesznénk a részletekben, a lényeg az, hogy fotókat készítenek egy nagy tál pollenről és azokat megszámolják, osztályozzák szín szerint.

Mikor megláttam, azonnal felajánlottam, hogy készítek nekik egy elemző programot. A prototípust Linuxon kezdtem el, mert én már csak ilyen vagyok. El is készült a prototípus, ami a lehetőségekhez képest elég jól megszámolja a polleneket. Azért mondom, hogy a lehetőségekhez képest, mert a program nem használ semmilyen mélytanulást, csupán színek alapján különböző maszkokat állít össze, végül pedig a FindContours segítségével körberajzolja a pollencsomónak titulált dolgokat (meg persze néhány műterméket).

A következő lépés az lett volna, hogy az elkészült programot odaadjam neki tesztelésre. Igen, de hogyan készítsek Windows-os programot GUI-val? C#-ban már alkottam dolgokat, ott nagyon könnyű a GUI elkészítése. C++-ban viszont elég kényelmetlen Win32 API-val meg a béna Resource Editorral. Hallottam, hogy van egy MFC is, de azt már 20 évvel ezelőtt sem bírtam megtanulni, nem valószínű, hogy most jön meg az ihlet. Az OpenCV HighGUI modulja meg olyan, mintha párbajhoz egy villát kapnánk.

Azért hagytam, hogy a Visual Studio mindegyik megoldással elém rakjon egy-egy projekt vázat. Néztem őket két percig, majd letöröltem valamennyit. Nem, erre még az asszony sem vesz rá.

Ha már ennyire szeretem a C#-ot, van-e arra OpenCV? Van. Számtalan port, wrapper, minden vacak van. Ez jó hír, már csak azt a megoldást kell kiválasztani, ami a legjobban tetszik nekem. A lustaság az Emgu modult választatta velem. Ez ugyanis a NuGet csomagkezelővel gond nélkül felmászik.

A kód portolása nem ment gond nélkül. Az Emgu ugyanis sok OpenCV-ben megszokott osztályt C#-os megfelelőkkel helyettesít. A függvényeket az Emgu.CV.Invoke-ban találjuk, de bizonyos függvények megtalálhatóak az Image osztály metódusai között is. Ez egy kis kavart jelent, amikor az ember a dokumentációt bújja. A megszokott típusok az Emgu.CV.Structure alatt vannak, de egy M előtaggal. Tehát a legtöbbet használt Mat típus az Emgu.CV.Structure.MCvMat lesz. A konstansok pedig az Emgu.CV.CvEnum alatt gyűlnek. A függvények paraméterezése is változhat a C++-os változathoz képest, amit valamennyire ellensúlyoz az IntelliSense.

Az Emgu igazi erőssége abban rejlik, hogy van saját ImageBox eleme, amit egy egér mozdulattal a formra pakolhatok és használhatom a C# összes további elemét, hogy GUI-t építsek. Az ImageBox ráadásul beépített menükkel érkezik, amivel nagyíthatjuk a képet, hisztogrammokat rajzolhatunk, de akár a képet is lecserélhetjük egyetlen kód beírása nélkül.

Az első fordítással megszenvedtem, mert a kód csak 64 bites architektúrát támogat, és amíg ezt nem állítjuk be a Platform target-et x64-re (Project -> Properties -> Build), addig futási időben kivételt fog dobni. Utána viszont elfelejthetjük a HighGUI összes limitációját.

1 komment

Címkék: programozás opencv

A textúra glitch nyomában

2023.01.16. 09:15 Travis.CG

Mint már említettem, az Experience-re szánt demó nem egészen úgy nézett ki, ahogy szerettem volna. Ezt egy kicsit kifejtem. A textúrázott elemek nagy része jól mutatott, de a modellek bizonyos részei csíkosak maradtak, mintha a GL_CLAMP lett volna beállítva a textúra paraméternek.

Az egyetlen probléma, hogy én ezt a paramétert nem állítottam be. Vagyis egy újabb bugot kell megtalálnom.

Először arra tippeltem, hogy biztos rossz méretet foglaltam le a memóriában a textúra koordináták tárolására, ezért kimászok a rendelkezésre álló memóriából. Azért gondoltam erre, mert a úgy tűnt a glitch modell azon részén jelenik meg, amelyek az utolsó textúra koordinátákat kapják meg.

Hamar kiderült, hogy erről szó sincs.

Jobb híján betöltöttem csak egy textúrázott kockát, és azt kezdtem szemügyre venni. Elsőre úgy tűnt, csak két háromszöget érint a hiba, de nem tudtam melyik kettőt. Fogtam magam, és az összes háromszögnek ugyan azt a textúra koordinátát adtam. Minden háromszög egyforma lett, kivéve a két hibásat, amelyek továbbra is hibásak maradt.

Blenderben a textúrára számokat rajzoltam, hogy lássam, melyik háromszög melyik textúra részletet kapja. És ekkor jött a meglepetés. Eddig azt hittem, csupán két háromszög kap hibás textúra koordinátákat, de a számok szinte mindenhol rosszul jelentek meg. Ez furcsa volt, mert a demóban van egy rész, ahol egy henger belső palástjára rakok textúrát, és az csak a széleken volt hibás.

Akkor arra tippeltem, hogy az OBJ formátum betöltésénél lesz a probléma. Erre korábban azért nem gyanakodtam, mert már régebben is készítettem demót annak a kódnak a felhasználásával, mégsem volt semmi gond.

A printf függvény, mint debug eszköz segítségével megállapítottam, hogy a formátum betöltésével nem is volt baj, még a memória sem szivárgott.

Az adatok beolvasása tehát jó, de amikor átadom az OpenGL-nek, akkor elkövetek valami hibát, ami miatt ott rosszul jelenik meg. Ezzel sikerült a hibás részt két metódusra szűkíteni. Ezt kezdtem el tüzetesebben végignézni.

Legtöbbször amikor nézek egy kódot, akkor általában azt látom, hogy ennek jónak kell lennie, és nem értem miért nem működik. Most viszont nem tudtam megmondani, miért, de úgy éreztem, hogy a kód rossz. Nem tudtam megmondani, miért rossz, de abban biztos voltam, hogy itt a hiba.

Mivel nem jutottam közelebb a megoldáshoz, lekapcsoltam a gépet, és elképzeltem, hogyan is próbálja az OpenGL beállítani a textúra koordinátákat. Azután fürdés előtt beugrott. Hát persze! Amikor betöltöm a modellt, a vertex koordináták megkapják textúra koordinátákat is. Csakhogy én indexeket használok, hogy ne kelljen többször felhasználni a vertex koordinátát. De egy vertex több textúra koordinátát is kaphat, attól függően, hogy melyik síkidomra illesztem a textúrát.

A hengernél nem is láttam hibát, mert ott egy vertex egyetlen textúra koordinátát kap, kivéve ott, ahol a henger záródik. A kockánál viszont minden csúcspont több síkidomnak is része, tehát felülírtam a textúra koordinátákat.

Átírtam a kódot, hogy minden vertex többször forduljon elő, ha több textúra koordinátát is kap, és voilá! A glitch eltűnt.

Szólj hozzá!

Címkék: programozás demoscene opengl

Windows túloptimalizáció

2023.01.14. 15:20 Travis.CG

Sajnos nem értek annyira a Windows-hoz, mint kellene, de ez nem szokott megakadályozni abban, hogy "optimalizáljam" a rendszert. Az optimalizáció abból szokott állni, hogy nézem a szolgáltatásokat, és amelyiknek nem tetszik a neve vagy a leírása, azt lekapcsolom. Ha semmi furcsát nem látok a rendszeren, akkor úgy hagyom.

Egy fél év után kicsit furcsa volt, hogy már egy ideje nem kapok frissítéseket, de nem foglalkoztam vele különösebben, azt hittem ez a rendszer is elérte azt a pillanatot, amikor a Microsoft elengedte a kezét. Én egészen jól megvoltam, ment a videó vágó, a kedvenc játék működött és futottak a demók. A többi nem érdekelt.

Aztán láttam egy jó kis csomagot Sysinternals néven, és úgy gondoltam, hasznos lenne nekem. Mert igaz, hogy nem értek a Windows-hoz, de miért ne állítgassam még jobban? A programot csak és kizárólag a Microsoft Store-ban lehet megszerezni (igen, van live verzió, ami a neten fut, de az nem az én gépemen van). Legnagyobb meglepetésemre a Store nem működött...

Abban biztos voltam, hogy 8 hónappal ezelőtt még működött, mert egy másik programot onnan szereztem be, de hogy mi történt közben, amitől elromlott, azt nem tudtam. Illetve sejtettem, a sok rendszer szolgáltatás kapcsolgatása a ludas, és már a fene sem emlékszik, hogy melyiket mire állítottam.

A legfurcsább az volt, hogy a Store szerint nem kapcsolódok az internetre, holott ment a GTA, ment a böngésző. A programok lelkesen kutattak frissítések után.

Megint elkezdtem visszakapcsolgatni szolgáltatásokat, amelyek neve alapján úgy gondoltam, köze lehet a problémához. Egy csomót visszakapcsoltam, mégsem lett semmi haszna.

Kénytelen voltam a neten túrni segítséget. A legtöbb nagyokos azonnal a teljes rendszervisszaállítást javasolta, de ehhez nekem nem füllött a fogam. Annyi felesleges fájl van a gépemen, hogy azt mind nem akarom lemásolni, majd a visszaállítás végeztével visszamásolni. A sok, elvault fejlesztőkörnyezetről nem is beszélve, ami mind azért van telepítve, hogy egyszer majd egy demó készítésére fogom használni őket. Más megoldás kell.

Találtam egy megoldást, amivel csak egy komponenst lehet visszaállítani. Ez viszont nem akart működni. Továbbra sem látta az internetet.

Mivel igazából a Sysinternals nem nagyon hiányzott, a géppel meg mindent meg tudtam oldani, amit kellett, ezért nem volt nagy hajtóerő, hogy megoldjam a problémát. Minden nap kicsit turkáltam a fórumokat, klikkelgettem öt percig, majd hagytam a fenébe.

Egyik nap viszont valami miatt a frissítés kezelőt kezdtem el nézegetni. Láttam, hogy be van ragadva egy csomó frissítés. Ez az egyetelen dolog, amit soha nem piszkálok. Ha látom, hogy egy szolgáltatásnak köze van a frissítésekhez, akkor békén hagyom. Akkor meg miért nem működik?

Ekkor már gyanús volt, hogy valami nagyon el lett rontva. Észrevettem, hogy a Defender sem szed le újabb adatbázisokat. Mi a fene? Hekker támadás? Mi a túró van itt? Hirtelem megjött a motiváció, hogy rendbe rakjam a dolgokat.

Bár a böngésző és az online játék ment, azért megnéztem az eszköz kezelőt. Az ethernet vezérlő mellett egy sárga háromszög volt, hogy nem megy. Ha nem megy, akkor hogyan böngészek? Itt is rámentem a hibaelhárításra, a Windows dolgozott egy csomót, majd kiírta, hogy a hibát nem tudja kijavítani. He?

Azért még egyszer lefuttattam, de most sem jártam szerencsével. Végül találtam egy olyat, hogy hálózati rendszer alaphelyzetbe állítása. Kicsit hezitáltam, mert még elronthatom úgy a rendszert, hogy sehogy sem lesz internet a gépen, az pedig rosszabb a jelenlegi állapotnál. Végül megvontam a vállam, és ráklikkeltem, újraindítottam, és tényleg nem volt net.

Az eszközkezelőnél most már nem sárga háromszög, hanem egy nagy piros X szerepelt a hálózati vezérlő mellett. Ráklikkeltem a driver telepítésére, mire kiírta, hogy majd megpróbálja a netről is leszedni a megfelelő programot, ha nem sikerül elsőre telepítenie. Gondoltam magamban, azt ugyan próbálhatod.

Meglepetésemre feltette a drivert. Aztán ment a böngésző, ment a GTA. Huh, a nehezén túl vagyunk. Majd a Windows Update behozta a fél éves lemaradást. A vinyó úgy kerregett, azt hittem szét fog esni. Mindezek megkoronázásaként felment a Sysinternals is.

Csak ültem és néztem. Hmm. Ezek szerint nem az "optimalizációm" miatt nem ment a Store. Úgyhogy visszamentem a szolgáltatások listájára és elkezdtem kikapcsolgatni azokat, amelyek neve nem tetszett.

Szólj hozzá!

Címkék: rendszergazda

Befuccsolt ötletek 2: Apró programok Go-ban

2023.01.11. 13:32 Travis.CG

Mikor elkezdtem tanulni a Go-t, egyszerű kis progikkal kezdtem, amik megkönnyítették valamely munkafolyamat egy lépését. Az idők során összefogtam őket BUG néven, utalva rá, hogy a tanulás korai szakaszában még nem ment minden zökkenő mentesen.

Ahogy gyarapodtak a programok, úgy elkezdett érlelődni bennem a gondolat, hogy akár egy publikáció formájában is a világra szabadíthatom a programokat.

Egészen addig jó ötletnek is tűnt, amíg meg nem láttam ezt. A SeqKit nem csak azt tudta, amit az én programjaim, nem csak elegánsabban, de még Go-ban is íródott. Sőt, már négy évvel azelőtt elkészült a cikk, hogy én egyáltalán kitaláltam volna az egész koncepciót.

Mindent kitaláltak, mindent megcsináltak. Minek dolgozzak?

2 komment

Címkék: bioinformatika

Atyai tekintély

2022.12.24. 18:18 Travis.CG

Úgy döntöttem, itt az ideje, hogy frissítsem az asztali konfigurációmat egy jó kis videokártyával. Szét is kaptam a házat és elkezdtem nézni a kígyózó vezetékeket. Eddig két grafikus kártya pihent a gépben, de az új alkatrész önmagában is nagyobb teljesítményre képes, ezért úgy döntöttem, az új kártya egyedül is elég lesz.

Egyszer csak odaült a lányom mellém.

- A számtech tanár megmutatta ám, hogy mi van a gép belsejében - kezdte. Az én tanárom mindent tud a számítógépekről.

Bevallom, egy kis féltékenységet éreztem, de nem akartam a tanár tekitélyét csorbítani.

- Azért én is tudok egy-két dolgot a számítógépekről. Ha nem értesz valamit, amit órán mondanak, tőlem is megkérdezheted.

- Nem kell, mert az én tanárom mindent tud. Miért van itt ilyen nagy propeller?

- Az a központi processzor hűtője. Tudod miért kell rá hűtő?

- Ha nincs rajta, akkor a számítógép felrobban.

- Ezt a tanárod mondta? - erre nem válaszolt, csak megpendítette a hűtőbordákat. Tetszett neki a hangja. Annyira már ismerem a lányomat, hogy tudom, nem mindig úgy meséli el a dolgokat, ahogy azok megtörténtek.

- Tudod, én már sok hülyeséget csináltam számítógépekkel, de még egy sem robbant fel a kezemben. Ha nincs rajta hűtő, akkor túlmelegszik és leáll. Vagy el sem indul.

A hosszú magyarázatokat nem szereti végighallgatni, ezért még a felénél sem tartottam, amikor felállt, és otthagyott a szétszerelt géppel együtt.

Szólj hozzá!

Címkék: életmód

Az adat minden

2022.12.19. 12:07 Travis.CG

A Jurassic Park egyik üzenete, hogy az életet nem lehet bezárni, nem tudjuk irányítani. De ha Szent-Györgyi Albert gondolatait is belekeverjük, akkor mondhatjuk azt, hogy az élő állapotú anyag nem ül meg a fenekén. Banális dolog, de a biológusok könnyen megfeledkeznek erről, hiszen nap. mint nap azon dolgoznak, hogy kontrolláják az élő anyagot, mert ha kontrollálják, akkor megismételhető kísérletet tudnak csinálni.

Nem, ez nem pontos megfogalmazás. A biológusok azért feledkeznek meg erről, mert azt hiszik, amit csinálnak, azzal kontrollálják az élő anyagot. Itt van a logikai bukfenc.

Egy gyors kitérő, miről is van szó. A labormunkám során törzsgyűjteményt is kellett csinálnom, ami azt jelentette, hogy a felnövesztett baktériumokat, ami hordozott a kísérlet szempontjából fontos tulajdonságot, konzerválni kellett. A konzerválás abból állt, hogy glicerines oldatba tettük őket, majd bementek egy mínusz húsz fokos hűtőbe.

Mintha egy YouTube videón megnyomnánk a leállítást, minden életfolyamat megáll, majd ha elővesszük a hűtőből, akkor minden folytatódik, mintha mi sem történt volna. Jó, mi? A helyzet az, hogy az életen nincs stop gomb. A hűtő csak lelassítja a folyamatokat, meg nem állítja. Eléggé lelassítja, de teljesen nem állítja meg.

Mikor évek múlva előszedtek mintákat a törzsgyűjteményemből, egy részük döglött volt (ami jól mutatja, milyen ügyes is voltam a laborban), de amelyik élt is, az sem hordozta azt a fontos tulajdonságot, ami miatt eltettük. Persze lehet, hogy ez is az én ügyetlenségem miatt volt (az akkori témavezetőmnek biztosan még most is ez a véleménye), de az is lehet, hogy a minta megváltozott a hűtőben állás során. Olyan körülmények között, amikor nem kellene változnia.

A legújabb cikk is hasonló módon indult. Azt vették észre, hogy egy külső hatásoktól mentes sejtvonal, amelyiknek nem kellene változást mutatnia, megváltozott. Nem olyan drasztikusan, mint az én törzsgyűjteményemnél, de eléggé ahhoz, hogy felkeltse a kutatók érdeklődését.

Meg kellett mondanom, hogy az eltérés milyen mértékű. Gyakorlatilag mutációkat kellett összehasonlítanom. Akkor még a ritka betegségeken is dologztam, ezért az összehasonlítás mérékeként az oszlopdiagrammok mellé odatettem, hogy mennyi különbség van két testvér között. Ezek alapján látszott, hogy olyan kicsi a különbség, hogy akár ikrek is lehetnének. Illetve ikrek is, mert a minta ugyan az, csak az idő vas foga csócsálta meg kicsit.

A másik dolog, amit kértek, hogy "mi okozhatta"? Ez már egy fogós kérdés, ezért csináltam egy szignatúra elemzést. Ezt a kollégák nem értették, nem is tették bele a cikkbe. Röviden arról van szó, hogy a képződött mutációk nem véletlenszerűek. A mutációs mintázatból következtethetünk a mutációt okozó határsa. Ezt a rákkutatásnál szokták használni, de reménykedtem benne, hogy itt is ad valami kézzel foghatót.

Habár az eredmény nem volt olyan pontos, mint a tumor minták esetén, azért sikerült találni egyetlen szignatúrát. Ez a cirkadián ritmus volt. Ami azt jelenti, hogy az idő volt a főkolompos.

Az eredmény nem meglepő és nem is új. Már jelentek meg publikációk arról, hogy a "tutinak" gondolt sejttenyészetek, amiket a különböző laboratóriumok használnak, hogy "ugyanolyan" mintával dolgozzanak, az idők során labor specifikus tenyészetek lettek. Az evolúció nem áll le, az élő változik.

Ezért a szöveteket több szekvenálási technológiával is megszekvenálták, hogy legyen alapanyaga azoknak a kutatóknak, akiket részletesebben is érdekel a téma. Ez szerintem jó dolog. Jobb, mint ülni rajta, miközben nem jutunk vele semmire. Az adatok megosztásánál igyekeztünk a FAIR ajánlásoknak is megfelelni.

Szólj hozzá!

Címkék: publikáció

Kódolom a kvantumszámítógépet

2022.12.14. 00:17 Travis.CG

Azért még mindig menőnek hangzik a legtöbb dolog, ha beletesszük a kvantum-izét, ezért nem is tudtam ellenállni a lehetőségnek, amikor a Wigner Jenő Központban meghírdettek egy kurzust, ahol kvantumszámítógépek programozását lehetett megismerni.

Milyen kvantumszámítógépet programozni? Az egész olyan, mint a régi viccben: Tudod, milyen a ló? Hát ez egyáltalán nem olyan. A kvantumszámítógép egyáltalán nem olyan, mint a hagyományos gépek, és egyáltalán nem olyan problémákra lehet használni, mint a hagyományos számítógépeket. (Bár van matematikai levezetés, amit azt bizonyítja, hogy a kvantumszámítógéppel minden olyan feladatot meg lehet oldani, amit hagyományos számítógéppel.)

Mivel még csak most kapargatom ezeknek az ismereteknek a felszínét, ezért az itt leírtakat tekintsétek még nagyobb fenntartással, mint az összes többit, amit eddig írtam.

Míg a hagyományos számítástechnika nagyon eltávolodott magától az elektronikus gépek működésétől, ezért manapság egy program tervezése során nyugodtan lehet gondolkodni egy magasabb absztrakciós szinten, nem kell azon agyalni, a tranzisztor milyen áramot enged át.

Mivel a kvantumszámítógépek még eléggé gyerek cipőben járnak, ezért ott ez a luxus nem adatik meg. Pontosan érteni kell, mi történik a kubitek szintjén, hogy értelmes kódot tudjunk írni. A kód, amit írunk, a kubitek kapcsolását adja meg. Valahogy úgy, mint az ENIAC-nál, ahol huzalozással programoztak. Annak idején konkrétan össze kellett kötni az elektronikus alkatrészeket. A kvantumszámítógépeknél is összekötjük őket, csak már nem kézzel, hanem egy Python kóddal. Szóval senki ne számítson arra, hogy Doom-ot portol rá a közeljövőben.

Mivel Python kóddal csak kapcsolásokat készítünk, ezért a végeredményt elég jól lehet emulálni hagyományos számítógépeken is (kevés kubit esetén az eredmény még gyorsabb is lesz, hahaha). Kérdezték is a kurzus során, honnan lehet tudni, hogy valódi kvantumszámítógépen fut-e a kódunk?

Onnan, hogy ezek a fránya kvantumszámítógépek nem általlanak zajosak lenni. Jön egy napkitörés, és azt sem tudja mennyi 2+2, sőt, minél több kubitet kapcsolunk össze, azok egymást is zavarni fogják.

Felmerülhet a kérdés, hogy ha még csak logikai elemeket kell összeilleszteni, akkor hogyan lehet hatékonyabb egy kvantumszámítógép? Nos, mindenben nem hatékonyabb. Viszont van néhány olyan terület, ahol jobb lehet. Az egyik terület a kriptográfia, a másik a mesterséges intelligencia. (A különböző fizikai szimulációkat most hagyjuk, mert az csak az emberek egy szűkebb körét érdekli csak.)

Ennek több oka van, de ami számomra a legérdekesebb, hogy a kubitek artimetikai műveletei között szerepel az állapotok valószínűsége is, emiatt a kubit aritmetika közelebb áll a mátrix műveletekhez, mint a hagyományos bitműveletekhez.

A gyakorlati feladatok között volt egy lineáris regressziós példa, ami bár nem volt szerencsés olyan tekintetben, hogy semmi használható eredményt nem adott (az előadó szerint nem megfelelő optimalizációt választott ), viszont remekül demonstrálta, hogy pár kubittel mindez véghezvihető!

Oké, de mindez hogyan néz ki a gyakorlatban?

Kvantumgép gyanánt az IBM ingyen elérhető felületét használtuk. Ez egy Jupyter Notebook-szerű felület, Python nyelven. A modul, amit használtunk a Qiskit. Mint említettem, a kvantumszámítógépet lehet emulálni, tehát bárki otthon is kipróbálhatja a kódokat.

A rendszer alapja a QuantumCircuit modul, amivel elkészíthejük a kubitek huzalozását. Ha összeállítottuk, amit szerettünk volna, akkor azt el kell küldenünk egy rendszernek az execute() utasítással, ami lefuttatja azt, hasonlóan egy job ütemezőhöz. Sőt, ez maga egy job ütemező, mert ha valódi kvantumszámítógépnek küldjük el a kódot, akkor egy várakozási sorba kerül, majd egy idő után lefut.

Ha már profik vagyunk a huzalozásban, akkor továbbléphetünk, mert vannak magasabb szintű modulok, ahol előre összeállított konfigurációkat is használhatunk.

Az a baj, hogy értelmes dologra nem használható, ezért olyan példát sem tudok adni, amit teljesen értenék. Értelmes alatt azt értem, hogy olyan problémára, ami egy átlagos programozót érdekelhet. Ez inkább csak amolyan érdekesség. Még. De idővel ez is biztosan olyan lesz, mint a mikróhullámú sütő.

Szólj hozzá!

Címkék: programozás

Bioinformatics and Data Science in Genomic Studies 2022 konferencia

2022.12.05. 08:19 Travis.CG

Bevallom, ezen a konferencián meglepődtem. Nem hallottam semmit az előkészületekről, egyszer csak lett. Ráadásul nem is Budapesten. Szerencsére teljesen online volt, így könnyű volt követni. Még az sem volt olyan zavaró, hogy a szervezők nagy része egyben előadó is volt.

Katalin Gombos: Synthesis of molecular genetics and bioinformatics to develop clinical diagnostics and surveillance

A bemutatott intézetben genetikai teszteket csinálnak és diagnosztikát végeznek. Az előadás során ezeket mutatták be. PCR-t vagy NGS-t használnak. Bemutatták a covid azonosítást. covid-pte.vercel.app csináltak saját vizualizációt. Fej és nyak tumor diagnosztikában is használnak bioinformatikát. CT-vel megnézik, hol lehet a tumor, biopsziát vesznek belőle, majd genetikai vizsgálatot csinálnak rétegről rétegre. Mesterséges megtermékenyítésnél beültetés előtt aneuploidiát néznek.

Zoltán Rádai: Complex effects of Next Generation Sequencing error sources on the quality of de novo genome assembly

Az újgenerációs szekvenálások hibákat tartalmaznak, amelyek kihathatnak a metagenomikai elemzések végeredményére. A hibák hatásait szimuláción alapuló elemzéssel vizsgálták. Tizenhárom genomot raktak össze, ahol folyamatosan növelték a hiba mértékét. A statisztikai elemzés GLM-el és meta-regresszióval történt. A szekvenálási hibák mértékét a szekvenálás mélysége erősítette A GC bias mértékét a törzsek kezdeti GC tartalma határozza meg. A PCR és optikai duplikációk hatása nem olyan számottevő, bár PCR hiba hatása a szekvenálási hiba hatásához hasonló.

Alex Váradi: Effects of genome size and composition and duplicate removal on the results of de novo transcriptome assembly and DGE analysis: an in silico study

Milyen hatások befolyásolják a transzkriptóm összeszerelését? Nézték a lefedettséget, expresszáló gének arányát és még sok más hatást. Túl sok változót néztek egyszerre, nem láttak nagy különbségeket. Kevés szisztematikus hatást tudtak azonosítani. Az alkalmazott statisztikai módszerek véleményem szerint kicsit gyengék voltak.

Otília Menyhart: Preserved correlations identify extracellular matrix organization as a critical factor in pancreatic ductal adenocarcinoma

Gén korrelációkat néztek egészséges és tumor szövetekben, hogy további terapeutik targeteket keressenek. Néhány génnek nagyobb volt a korrelációs partnereinek a száma, mint másnak. Nézték azt is, mely gének expressziója emelkedik folyamatosan a normál-tumor-metasztázis összehasonlításnál. Amit találtak: Motility gének, Click1, glikolitikus enzimek. GO elemzés eredményeként az extracellulár mátrix organizáció jött fel. Az előadás végén kaptunk egy kis TNMplot reklámot is.

Serhii Vakal: Why protein folding is not yet solved, and you should be careful when using AlphaFold as a "black box"

Az AlphaFold előtt előtt, ha bioinformatikailag kellett megállapítani egy fehérje térszerkezetét, akkor két módszert használtak. Az elsőben ismert szerkezet alapján megmondták, hogy nézhet ki új szekvencia. Másik módszer molekula dinamika alapján állapította meg a szerkezetet. Ezzel a módszerrel csak kicsi szekvenciákat lehet modellezni, azt is sok számítógép kapacitással. Azután jött az AlphaFold. Kétszázmillió fehérje struktúra van meg, hála az AF2-nek. PDB 194 ezret tartalmazott. De ez nem jelenti azt, hogy minden probléma megoldódott. Azoknak a fehérjéknek, amelyeknek nincs homológ struktúrájuk, most sem tudunk túl sokat. Néha az AF pocsék eredményt ad, különösen repetitív szekvenciálnál. Felbontás sem az igazi. Rendezetlen részek is pontatlanok, de legalább jelöli őket. GPU memóriája is limitáló tényező a predikciónál. AF multimer nem olyan jó. Protein modifikációk valamint a nem természetes aminosavakat tartalmazó fehérjék sem modellezhetőek. Ligandokat, kofaktorokat sem tud értelmezni. Szabad forma sem predikátlható jól, mert a tanulás alapjául szolgáló PDB adatbázis ezt nem tartalmazza. Konformáció változási események sem prediktálhatóak. Az elkészült térszerkezet pontosságáról az AF ad egy becslést, hogy mennyire pontos. Ez hasznos jellemző, de néha korrekt formára is alacsony pontszámot ad. Ezért ellenőrizni kell a kérdéses fehérjével homológ szerkezeteket, érdemes megnézni az Uniprot rekordot is. Érdemes a pLDDT plotot is nézni, és az alacsony pontszámú régiókat óvatosan kezelni. A ligandokat manuálisan adjuk hozzá az elsődleges szerkezet megismerése után.

Szonja Anna Kovács: Investigation of predictive biomarkers in cancer patients treated with immune-checkpoint inhibitors

ROCPlot-ot használtak, azon lehet a címben leírt paramétereket klikkelni. YAP1 kijött. In vivo validációt is csináltak, de az nem tűnik jónak.

János Tibor Fekete: Predictive biomarkers in cancer cell lines

Nem ment az előadó mikrofonja, ezért telefonon felhívta a szekcióelnököt, aki a telefont odatartotta a saját mikrofonjához. Érteni ezért nem sokat lehetett. A diák képei alapján a következő benyomásaim voltak: Gén expresszió és terápiás célpont között néztek ROC görbét és Mann-Whitney alapú differenciál expressziót. Az eredményül kapott géneken random forest klasszifikációt csináltak. A felvetített folyamatábrán az volt a furcsa, hogy a teszt adatszett feldolgozása nem a fenti lépéseken keresztül történt, hanem az közvetlen a ROC görbébe ment. ERBB2-re jól működött a fenti módszer.

Zoltán Pethő: Protein homology modeling as a tool to study intra- and interprotein interactions

Ion csatorna konfrontáció változás után nyílik. Festékkel nézik a konformációt, egy voltage clamp fluorometry nevű módszerrel nézik az ionváltozást. Ez utóbbinak nem tudom, mi lehet a magyar neve. A vizsgált fehérjéknek nem ismert a szekvenciájuk, ezért közel rokon fajok szekvenciáit néztek. Egy másik vizsgálatban a homológiai modelleket használták arra, hogy a mutációk hatásait vizsgálják a fehérje struktúrára.

Péter Oláh: Analysis of whole-genome and marker gene-based cutaneous microbiome signatures in autoimmunity and allergy

Megszekvenálták a bőrön a baktériumokat, különböző technológiákkal. Használtak mikroarray-t, 16S-t, WGS-t, SNP array-t. CoMeanR néven készítettek egy új eszközt is. Elég nehéz volt hallani, néha teljesen elhalkult. Sok antimikribiális gént találtak a transzkripciós vizsgálatokkal. Tanúság: A bioinformatikus tudása a szűk keresztmetszet.

Levente Laczkó: Assessment of the accuracy of plasmid prediction tools using draft genome sequences

Rengeteg eszköz van, amivel el lehet különíteni a genomi és plazmid szekvenciákat. Az előadásban ezeket hasonlították össze. A Plasclass magas szenzitivitású, a mlplasmid viszont magas specificitást ért el. A mutációk nagyon befolyásolják a programok kimenetét, rosszabb eredményt produkálnak, de nem drasztikusan. Plasforest egész jó, rfplasmid, mlplasmid a sorrend. Harmadik generációs szekvenálás segíthet a jövőben, hogy pontosabb módszerek szülessenek.

Valter Péter Pfliegler: Phylogenomics of Saccharomyces yeasts infecting and colonizing humans

Az élesztő házisasított, keresztezett nagyon mixelt a szekvencia. Besznülöttekről izolált élesztő nagyon egyenes leszármazási vonalat mutat, de a kenyér élesztő nagyon változatos. Letöltöttek 10 ezer élesztőt az SRA-ból, voltak közöttük még ősi metagenomok is. Elég jó a lefedettsége ezeknek az ősi szekvenciáknak. Az élesztő mitokondrium máshogy fejlődött evolúciósan, mint a genom, ami azt jelzi, hogy sok horizontális hatás érte ezt a taxont.

Eszter Ari: Global map of evolutionary dependencies between antibiotic resistance and virulence genes in E. coli

Ugyan az volt, mint a Bioinformatika 2022 előadás.

Eszter Virág: Time-course gene expression analysis of the effect of SC-CO2 garlic extract encapsulated in nanoscale liposomes

Az előadásban azt mutatták be, hogyan vizsgálták a fokhagyma kivonatot, mint növényvédő szert. Alacsony hőmérsékleten vonják ki az anyagokat a fokhagymából. A vizsgált anyagok liposzómákban vannak. A liposzómákat TM elektronmikroszkóppal nézték és autómatikusan mérték a liposzóma méretet egy képfeldolgozó algoritmussal. Drónról permetezték a növényekre a fogkagyma kivonatot. A növényekre gyakorolt hatást infravörös kamerákkal, szintén drónokról nézték. A fotoszintetikus aktivitást mérték IR-ben. Nagyobb vegetációs indexet, több terményt kaptak, ha alkalmazták a fokhagyma kivonatot. Fitotronban is neveltek növényeket, azokat is sprézték a kísérleti növényvédő szerrel, majd NGS-alapú transzkripciós meghatározást végeztek. Differenciál expresszió meghatárizása után a reakcióutakat figyelték. Növényi patogén védelemmel kapcsolatos utak jöttek fel.

William Jayasekara Kothalawala: Transcriptomic and cell type enrichment analysis of colorectal cancer by combining multiple independent cohorts

Differenciál expressziót néztek normál és tumoros szövet között. A GEO-ból leszedték az expressziós adatokat, majd Mann-Whitney és Kruskal-Wallis tesztekkel kerestek olyan géneket, amlyek expressziója eltér. Ezek az előadó szerint kandidáns gének, amelyeket immunterápiában lehetne használni.

Eszter Kaszab: Genetic characterization of probiotic candidate microbial strains

Probiotikus törzseket kerestek tejtermékekben, fermentált anyagokban, stb., majd szekvenálták és jellemezték a törzseket különböző módszerekkel, pl. MALDI-TOF-al. Végigcsinálták a klasszikus de-novo munkafolyamatot (denovot, Busco, annotáció). Azt vették észre, hogy ay antimikrobiális gének jelenléte fontos, hogy a probiotikum fennmaradjon. Vegetariánusok probiotikum bevitelét lehetne céklából nyerni, amin van laktobacillus.

Gergely Nagy: Dissecting the cistromes determining bone marrow-derived macrophage identity

Az egér csontvelő eredetű makrofágjaiból van chip-seq, gro-seq, atac-seq, biszulfid szekvenálás. Ezen adatok alapján lehet jellemezni a cisztromokat. Klaszterezték az elemeket. Egy részük metilálható, míg más csoportok nem. Promótereket is klasztereztek, hogy feltárják, hogyan történik a gének szabályozása.

Gyula Hoffka: Structural analysis of the binding of nirmatrelvir to the SARS-CoV-2 main protease

A nirmatrelvir egy Covid-2 ellenes kísérleti fázisban lévő gyógyszer, ami köti a vírus Mpro proteinjét az aktív helyére. Azt vizsgálták a különböző vírus törzsek mutációi okozhatnak-e rezisztenciát a gyógyszerre. Ezért térben modellezték a gyógyszert és a vírus fehérjét, próbáltak meghatározni olyan jövőbeli lehetséges mutációt is, ami rezisztens lenne a gyógyszerre.

Szólj hozzá!

Címkék: bioinformatika

Experience 2022

2022.11.30. 23:56 Travis.CG

Mint tudjátok, a parti nekem már korábban elkezdődik, amikor elkezdem készíteni a release-t. Most minden egy bejegyzéssel kezdődött, amiben Matthew Newcastle szomorúan vette tudomásul, hogy Experience-en nincs zene kompó. Gondoltam, csinálok demót a zenéjéhez.

Először nem fogott meg a zene. Egymás után többször is meghallgattam, de nem tudtam elképzelni, milyen demó illene hozzá.

Aztán lassan kezdtem ráérezni, de még mindig nem volt az igazi. Viszont legalább el tudtam kezdeni készíteni valamit. Fel tudtam osztani a demót részekre, ami valahogy illeszkedett a zene hangulatához is. Félreértés ne essék, a zene fényévekre van attól, amit én össze tudok eszkábálni, csupán nem volt meg az összhang köztem és a ritmus között.

De készültek részek, haladtam megfelelően, majd jött a valóság. Az oktatás kezdte egyre több időmet elvenni, közben az Experience-re való eljutás is egyre esélytelenebbnek tűnt. Próbáltam kibújni a családi kötelezettségek alól, amitől folyamatosan változott, hogy ott tudok-e lenni, vagy nem.

Végül úgy döntöttem, nem fejezem be a demót. Korábban az inkább beadás mellett szoktam dönteni, de most ezzel az elvvel ellentétesen döntöttem. Inkább több időt szánok rá, és elkészítem jobbra. Ha meg úgysem tudok ott lenni, akkor minek erőltessem?

Mikor ezt így eldöntöttem, jött a meglepetés, hogy minden családi összejövetelt töröltek, szabad leszek a hétvégén.

Úgyhogy elmentem.

Szerintem kevesebben voltunk, bár csak becsültem a látogatószámot. Mivel idén nem voltak nagyon kimagasló demók (amire a szervezők a felkonferálás során rendszeresen emlékeztettek is minket), az egésznek olyan hangulata volt, mint amikor mozi helyett leülünk a kanapéra a kereskedelmi TV B-szériás filmjeit nézni. Nézzük, nagyokat röhögünk, és inkább annak örülünk, hogy együtt nézzük, nem annak, amit nézünk.

Ami hiányzott, hogy idén nem kérték meg az alkotókat, hogy kommentálják a demóikat. Korábban azért volt egy-két belső infó is, de idén a kommentár kimerült abban, hogy "mit súgdostak a nézők hátul". Viccesnek vicces volt, de a másik megoldás nekem jobban bejön.

Volt szponzor is, akinek hála jutott mindenkinek egy ingyen ital. Neki rendesen bemutatkozott a magyar demoscene. Bármit mondott, mindig voltak vicces emberek, akik kiforgatták a szavait, elmés megjegyzéseket fűztek hozzá. Gondoltam is magamban, ez volt az utolsó ingyenpia Experience-n.

Természetesen voltak indulók is. Nem tudom, hogy a Lunaticats alkotását is ide vegyem-e. Leírom miért is. Szóval képzeljétek el, hogy valaki, aki életében nem látott még semmilyen hangszert, egy újjal zongorázik. Ez volt a demó zenéje. A vizuális orgia gyanánt meg jobbról, majd balról repülő kocka, gömb és henger szolgált.

Az első valódi induló egy PICO-8 mintakitöltő. Teljesen oké volt.

Kaszi újabb Spectrumos minta kitöltős demóval jött, ami már tudományos munka is egyben, legalábbis a végén megjelenő referencia szerint. Milyen király lenne, ha én is release-t csinálhatnék a publikációkból. (Vagy a publikációkból release-t) Két legyet üthetnék egy csapásra.

A Hardread is csinált valamit, ami annyival volt több, mint az utolsó helyezett, hogy volt egy minimalista zenéje.

Tifecotól megtudtuk, mit érez DemoJoe, ha felteszi a virtuális szemüveget. Teljesen oké volt ez is.

Gargaj demóba öntötte a munkahelyének megszűnését, amit nagyon szeretett. Ez legalább szívből jött.

Netro kicsit elkésett ezzel a demóval. Most akart igazságot szolgáltatni a Plútónak, amiért elvették a bolygó státuszát.

Érdekes volt, jól éreztem magam.

Szólj hozzá!

Címkék: demoscene

Drága kis tanítványok

2022.11.27. 18:51 Travis.CG

Az idei félévben valami miatt a hallgatók egyéb problémákkal is megkerestek, amelyek nem tartoznak a bioinformatika témakörébe. Ez egyrészt megtisztelő, mert azt jelenti, hogy bíznak bennem annyira, hogy elmondják ezeket a dolgokat, másrészt jó látni, mivel múlatják számítógépes idejüket.

Az egyik hallgató például üstökös adatokat elemez. Volt egy nagy táblázata millió egy paraméterrel és az volt a problémája, hogy ha feltűnik egy új objektum, akkor az egyik tetszőleges paramétert össze kellene hasonlítani a táblázat megfelelő oszlopával és kiválasztani azt a sort, ahol a legközelebbi érték van.

Pontosan nem értettem, mit is szeretne tőlem, mert folyamatosan arról beszélt, hogy erre programot kellene írni, de neki nincs ideje, hogy megtanuljon programozni. (Még az a rosszindulatú gondolat is megfordult a fejemben, hogy esetleg velem akarja megíratni.) Ezért inkább azt javasoltam, hogy Excelben (én is mire képes nem vagyok) vigyen fel egy új oszlopot, amiben vizsgálni kívánt oszlopból kivonja a keresett paramétert, majd a különbséget sorba rendezi. Ahol a legkisebb a különbség, az az adat van hozzá legközelebb. És nem kell a drága idejét programozás tanulásra fecsérelni.

Egy másik hallgató kérése viszont nagyon nagyon furcsa volt. Először azzal jött, hogy termesztett növények egymásra hatását akarja vizsgálni. Van egy táblázata, amiben minden oszlop egy növény. A sorok kertek. Ha az adott növény megtalálható a kertben, akkor 1-t kap, egyébként 0-t. Ezen kívül van egy függő változó, amit enzimnek nevezett (itt már gyanús kellett volna, hogy legyen, mert nem nevezte meg az enzimet), ez ha kimutatható, akkor 1-t kap, ha nem kimutatható, akkor 0-t. A feladat, hogy a növények összetételéből ki kell találni, van-e enzim vagy nincs.

Minden áron egy neurális hálót akart ráengedni. Azt javasoltam neki, hogy ez felesleges, a sima, egyszerű statisztikai módszerekkel is célt ér. Nem hatotta meg, továbbra is neurális hálót akart. Le is töltött valami kódot egy YouTube videó alapján, de az nem működött neki. Szerette volna, ha debuggolom.

Már a terem bezárásánál tartottunk, amikor megemlítette, hogy vannak versenyek, ahol szintén használhatná ezt a neurális hálót, és megnyerhetné azokat. Meg indulhatnánk együtt is egy ilyen versenyen. Azt hittem, valamelyik Kaggle megmérettetésre gondol, ezért nem is figyeltem annyira.

Említettem neki, hogy nagyon sok jó szakember rohangál odakint, akik jobban értenek az adatelemzéshez, mint én (de egy olyan diáknál mindenképp jobban, aki egy YouTube példakódot sem tud működésre bírni). Megemlítettem, hogy ezeknél a versenyeknél a pénzdíj igazából másodlagos, nem igazán fedezi a megoldások költségeit, az elsődleges cél a hírnév.

Továbbra is csak arról beszélt, hogy őt nem szokta eltántorítani, mások mit gondolnak, bele szokott vágni olyan dolgokba is, ami kevés sikerrel kecsegtet. Ez egyébként dícséretre méltó hozzáállás, de nem szabad eltávolodni a realitásoktól. Ha soha nem futottam 10km-t, akkor nem indulok a New York-i maratonon.

A következő óra után kibújt a szög a zsákból. Akkor már arról beszélt, hogy benevezett egy versenybe, ahol különböző számítógépekkel kapcsolatos fordulók vannak. Vannak ügyességi számok, logikai számok. Egyedül kell részt venni rajtuk, még mobilt sem vihetnek be magukkal. A kérdéseim nyomán annyit tudtam meg, hogy ez valami titkos verseny, amire meghívással lehet bejutni, a nyertes meg pénzt kap.

Őszintén szólva, valami hiányzik még a történetből, de nem kaptam rájuk soha egyenes választ. Ami nem hagy nyugodni, hogy ha egy verseny meghívásos, akkor nem akarnak sok résztvevőt. Ha pedig pénzdíjas, akkor sok résztvevőt akarnak, akiket a pénzzel motiválnak. A titkos pénzdíjas verseny ellentmondásban van egymással. Rákérdeztem a demós ismerőseimnél is, de nem kaptam választ.

A konkrét versenyszám, ahol most elakadt, egy gömb kinyitása. Be kell menni egy terembe, leülni egy számítógép elé, amely kirajzol egy gömböt. A gömb 86 háromszögből áll. Ebből 6 soha nem változik, azok a referencia pontok, hogy lehessen látni, hogyan fogatja a gömböt. A start gomb megnyomása után 9 és 30 közötti számban háromszögek emelkednek ki. Ezek közül kell megtalálni 4-t, ami kinyitja a gömböt. Minden kör végén lehet blokkolni háromszögeket, amelyek azután nem fognak elmozdulni, mert a következő körben egy rejtett szabályszerűség miatt a csúcsok egy része visszasűlyed, újabbak pedig kiemelkednek.

A gömb egyes háromszögeit hallgatónk növények nevei után nevezte el és ezzel próbálta meg elrejteni előlem a tényt, hogy ez neki egy versenyre kell.

De itt még nincs vége. Azt mondta, ad 50 ezer forintot, ha ránézek a problémára, de ha megíron a neurális hálót is, és ezzel megnyeri a fordulót, akkor a nyeremény felét is odaadja. Eddig csak figyelmeztető üzemmódban csipogott a bullshit detektorom, de a pénz említésénél megszólaltak fejemben a riadó szirénák is.

Mondtam neki, hogy nincs szükségem a pénzére, de a táblázatot megnézem. A táblázat 81 oszlopos volt és több, mint 6000 soros. Mégis hogyan tudott összeállítani egy ekkora táblázatot, ha nem lehet elektronikus kütyüket bevinni? De erre a rejtélyre hamar fény derült.

Elkezdtem olyan szemmel nézni a táblázatot, mintha semmit nem tudnék róla. Megszámoltam a sorokat, oszlopokat. Megszámoltam hány 1-es van egy sorban. Itt jött az első meglepetés: mindig 20. Ez már ellentmondott a 9-30 tüskeszámnak. Csináltam egy egyszerű hierarchikus klaszterezést. Totál random minta jött ki. Főkomponens analízis: detto. Az adat teljesen random volt.

Azért kipróbáltam a YouTube példakódot, még akkor is, ha tudtam, hogy semmi értelme. A háló 63%-nál nem tudott jobb eredményt elérni. Nem is csoda, hiszen random adat volt.

Mikor leírtam a megfigyeléseimet, akkor azt mondta, hogy a táblázatot egy másik vesenyzőtől kapta. Gondolom a másik versenyző nem akart magának konkurenciát, ezért adott a hallgatómnak valami random adatot. Hiába, legjobb, ha mindent maga csinál az ember.

2 komment

Címkék: életmód

Bioinformatika konferencia 2022

2022.11.21. 12:23 Travis.CG

Eljött az első bioinformatikai konferencia is, amit élőben tartottak meg. Egy régi ismerőssel azon viccelődtünk, hogy annak idején a konferenciákon az ember kapott egy kis tatyót füzettel, tollal. Most meg láttam embereket, akik a délutáni szekció első szünetében reménykedve rázták meg az üdítős dobozokat, hátha van még benne innivaló. De aki ide jön, az a tudományra szomjazik, nem a baracklére.

Az idei konferencia is megtalálható YouTube-on, ezért csak röviden írok mindegyik előadásról. Egy-két személyes gondolatot hozzátéve.

Öregedési folyamatok molekuláris mechanizmusainak elemzése értelmezhető gépi tanulással

Mert eddig értelmezhetetlen gépi tanulást használtak :-) Az öregedési folyamatok hátterét sokan kutatták már, és bizonyítottan epigenetikai jellemzői is vannak. Neurális hálót használtak, aminek a rejtett rétege a Reactome-nak feleltethető meg. Az itt található súlyokat nem változtatták a tanítás során. A Reactome miatt lehet tudni, melyik anyagcsere út aktiválódik.

A lineáris SVM-ek néhány szép alkalmazása gráfok és sorozatok elemzésében

Agygráfokra használtak lineáris SVM-t. A férfiak és nők agygráfjait hasonlították össze. Mivel lineáris az elválasztás, az elválasztó vonaltól távol eső agygráfok nagyon fontosak nemek között. Ezek jellemzően hormon receptorok.

Lesz-e az E. coliból szuperbaktérium?

A virulencia faktoroktól veszélyesebb lesz a vírus, míg a rezisztencia génektől nehezebb védekezni ellene. Kérdés, hogy örökölhet-e az E. coli mindkét géncsaládból úgy, hogy egy olyan törzs alakuljon ki, amitől mindannyian megdöglünk. Ezért 21 ezer genomot letöltöttek, törzsfákat építettek. Statisztikai tesztet is csináltak, ami csak egy régi Mac-es program formájában létezett. Az eredmények alapján a virulens törzsek inkább virulencia faktorokat gyűjtöttek, míg a rezisztensek inkább rezisztens géneket. Az eredmények alapján nem lesz szuperbaci.

Egy rács-alapú, malignus sejtek szimulációjára fejlesztett ágens alapú szoftver bemutatása

Több sejt szimulációs alkalmazás is létezik, de egyik sem tökéletes, ezért újabbat fejlesztettek, aminek majd webes felülete is lesz. Példákat láttunk a használatára. Bár a program egyszerűbb modell alapján dolgozik, eredményei pontosságban megegyezik a többivel.

Az autofágia indukciójában kulcsfontosságú mTORC1-ULK1-PP2A szabályozási háromszög működésének rendszerbiológiai vizsgálata

Az mTOR C1 AMPK szabályozási háromszöget vizsgálták rendszerbiológiai megközelítéssel. Differenciál egyenleteket alkottak, a paramétereket kísérletesen állították be. Tudták vizsgálni a szabályozás dinamikáját.

SARS-Cov-2 PCR primerek célrégióiban megjelenő mutációk vizsgálata

Mennyire pontos a PCR, ha a vírus genomja folyamatosan változik? A vizsgálat során 53 primer készletet vizsgáltak. A legtöbb PCR esetén 2-3% a tévedés aránya, csupán négy olyan primer volt, ahol a gond lehet a detektálás hatékonyságával.

A SARS-CoV-2 potenciális új variációi által okozott betegség lefolyás előrejelzése gépi tanulás segítségével mutációs adatok alapján

A mutációból a betegség lefolyására következtetnek. A programnak két módja van, vagy egy szekvenciát kell feltölteni, amiből többszörös illesztéssel meghatározzák a mutációkat, majd prediktálnak egy kimenetet, vagy közvetlenül a mutációkat lehet felvinni. Személy szerint nehezen értelmezhetőnek tartom, mit is takar a betegség lefolyása, ha nincs bemenet a páciensről. covidoutcome.bio-ml.com

A HLA-I és HLA-II variánsok közötti kölcsönhatás befolyásolja a tumorellenes immunválasz erősségét és időzítését melanómás betegeknél

A tumor immunterápia függ a páciens HLA típusától. A HLA-II típusok immunterápiára gyakorolt hatását nem vizsgálták. A vizsgálat során találtak olyan HLA I és II típusokat, amelyek megléte nagyban befolyásolja az immunterápia sikerét.

A TNMPlot bővítése: új analízisek lefuttatási lehetőségei és új grafikus megjelenítési formák bemutatása

A weboldal a tumor-normál és metasztatikus szövetek génexpresszióját hasonlítja össze. Most már több gént is tud egyszerre nézni és gén szignatúrákat is vizsgálhatunk.

Venezuelai ló-láz encephalitis vírus proteáz öninaktivált konformerének vizsgálata molekuladinamikai szimulációkkal

Embert és állatot is megfertőz. Van egy natív és egy inaktív konformációja, amit molekuladinamikai modellezéssel vizsgáltak. Megtalálták miért más a kettő.

Vitális funkciók paraméterezése aktivitásmerő okoskarkötőkkel

Emerekre okoskarkötőt adtak, mértek egy csomó adatot, lépcsőztették őket, majd megmérték ugyan azokat a paramétereket. Az adatokat összegyűjtötték, majd az előadó felsorolta egy gépi tanulás könyv tartalomjegyzékét, hogy majd azokat akarják elvégezni.

A protein-arginin-metil-transzferáz-5 enzim foszforilációjának szerkezeti hatásai a H4 hisztonhoz való kötődésére

Felépítettek egy PRMT5-MEP50 + Hiszton H4 komplexet natív és foszforilált formában, és ezt molekuladinamikával vizsgálták.

GPCRdb, a G protein-kapcsolt receptorok információs adatbázisa

Az adatbázis már '93 óta létezik, folyamatosan fejlesztik. Most AlphaFold-al legeneráltak térszerkezeteket és azokat is belerakták. Ezen kívül egy ligand adatbázist is létrehoztak.

TmAlphaFold adatbázis: AlphaFold2 segítségével becsült transzmembrán fehérje szerkezetek membrán lokalizációja és értékelése

A folding kicsit más membrán fehérjéknél. Meghatározták hol lehet a membrán síkja, mi lehet a transzmembrán domain. Az eredményeiket egy adatbázisba gyűjtötték.

Membránfehérjék szerkezete az AlphaFold AI után

Az AlphaFold jól működik membránokra is, de az AlphaFold-multimer nem olyan jó. Az ABC transzportereken, mint példán keresztül bemutatták, hogy azért a kísérletes szerkezet meghatározást még használni kell.

Fehérjék kötőhelyeinek fragmens alapú azonosítása

A fragmensek kis 10-16 atomos poláros kis molekulák. Bármilyen fehérjén meg tudják keresni a kis molekula kötőhely helyét. Ez azért jó, mert ezzel a módszerrel bonyolult fehérjék kötődési mintázatát tudják vizsgálni.

Az immuneterápia hatékonyságának előrejelzése

A ROC görbe rajzoló alkalmazás megtalált egy cikkben leközölt gént, ami fontos az immunterápiában. Az előadó ezért úgy gondolja, hogy a többi gén, amit megtalált a program, az is biztos jó lehet az immunterápiában. A fals pozitív találatok fel sem merültek senkiben, még a felvetített kérdéses hatékonyságú AUC görbék láttán sem.

Szólj hozzá!

Címkék: bioinformatika

Ritka betegségek noire

2022.11.09. 13:56 Travis.CG

Még esett az eső, mikor megérkeztem az irodába. A nyomozó hellyel kínált, töltött egy whiskeyt először magának, aztán nekem. Ő maga rá is gyújtott. A füstfelhő mögül hosszan fürkészett, majd rám mordult.

- Meséljen az ügyről.

Igen, az ügy. Mintha csak tegnap lett volna. Magánnyomozóként rendszeresen kellett ügyeket megoldanom, és az évek múlásával egyre tapasztaltabb lettem. Differenciál expresszió? Rutin. Blastolás? Pizsamában is.

- Az egész úgy kezdődött - fogtam bele mondandómba - hogy megjelent Ő.

A nyomozó röfögés szerű nevetést hallatott.

- Kitalálom. A vonzó és intelligens PhD hallgató, akinek nem lehet nemet mondani.

Pókerarccal néztem a szemébe. Megvártam, míg kiélvezi pillanatnyi diadalát,

- Majdnem. Egy ötvenes, mocskos szájú csoportvezető. Klinikai mintákat voltak nála.

A nyomozó elkomorult. Egy hajtásra kiitta italát és újabbat töltött.

- Úgy érti emberi adatokkal kellett dolgozni?

Bólintottam.

- Nem volt magának túl nagy falat? A klinikai diagnosztika nem játék.

Ez igaz. A klinikai diagnosztika nem játék. A korábbi munkáknál nem volt baj, ha elvétettem a mutációkat. Alapkutatás, beleférnek az ilyenek. Ha valamit elszúrok, legfeljebb visszavonják a cikket. Vagy nem foglalkoznak vele. Ilyet is láttam már. De a diagnosztikában nincs helye a tévedéseknek. Ez teljesen új élmény volt nekem. Hogyan is mondhatnám el ennek a nyomozónak, mennyire más volt kórtörténetet olvasni. Mikor a sorokat böngészve azon gondolkodtam, mit érezhet az anonimizált kód rejtekében élő emberek.

Még most is emlékszem, mikor az egyik leírásban azt olvastam, hogy a házaspár első gyermeke váratlanul meghalt egy ritka genetikai rendellenességben. Született egy másik gyermekük, aki egészséges volt, majd egy harmadik, aki az elején még egészségesnek tűnt, de idővel az első gyerek tüneteit kezdte mutatni. Nem tudtam a nevüket, nem tudtam a címüket. Mégis tudtam a legnagyobb félelmükről.

- Megbírkóztam vele. Egy csapat tagja voltam. Az eredményeimet többen is ellenőrizték.

- Maga pedig csak ült a számítógépe előtt, és próbált elbújni az azonosítók mögé, hogy ne viselje meg a páciensek szenvedése.

- Ismét téved. Folyamatosan tudatosítottam magamban, hogy valódi emberekkel van dolgom, még akkor is, ha csak azonosítókat látok. Nem akartam, hogy rutinná váljon a munka. Szerencsére a ritka betegség kutatás elég változatos, hogy ne váljon megszokottá. Igaz, csak mutációkat kell keresni, de a körülmények mindig mások.

- Gondolom, akkor ez az ügy is más volt, mint a korábbiak.

- Igen. Mivel ritka betegségekről van szó, soha nem lehetünk biztosak, hogy jó mutációt találtunk-e meg. Korábban, a rákkutatásnál, ha volt egy tippünk, elég volt pár egérben célzottan elrontani a kérdéses genomi pozíciót, és megtudtuk, hogy igazunk volt-e. Diagnosztikában nincs megerősítő kísérlet. Most viszont biztosak voltak a klinikusok, hogy a megtalált mutációk egyike sem lehet felelős a betegségért.

- Miből voltak olyan biztosak?

- Nem tudom, de nekik több információjuk van. Tudnak szöveti vizsgálatokat csinálni, FISH-t, stb.

- Mi történt ezután?

- A konzultációk közötti idők megnövekedtek. Tudtam, mit jelent ez: meg fog szakadni a munkakapcsolat.

- És megszakadt?

- Tudja, ez nem úgy szokott történni, hogy mindenki összegyűlik, elmondja a gondolatait és a végén felállunk egyértelmű válaszokkal, hanem egyszer csak nem jön több elemezni való minta. Ha kérdezünk valamit, halogatás a válasz. Itt is ez történt. Aztán egyszer csak jelentkezik egy másik bioinformatikus, hogy nem érti a jegyzőkönyvedet, vagy csak megkérdezi, milyen programot használjon ehhez vagy ahhoz az elemzéshez. Kérdések és válaszok mennek emailen, te pedig a végére rájössz, hogy azt elemzi újra, amit már megcsináltál.

Ismét felharsant a röfögés-szerű nevetés. Elfordítottam a fejem és az ablakon csordogáló esőcseppeket néztem.

- Gondolom jó dühös volt.

- Nem. Már többször megtörtént velem. Az ember egy idő után hozzászokik. Nem a munkakapcsolatot sajnáltam, hanem a témát. Ez volt az első alkalom, hogy úgy éreztem, amit csinálok, annak valódi, kézzel fogható haszna van.

- Igen. Az időnket el tudjuk tölteni, de tudunk-e valami hasznosat is csinálni? - felelte merengve. Ez volt az első alkalom, hogy a beszélgetés során némi rokonszenvet éreztem iránta. - De azért született valami publikáció is, nemdebár?

- Született - azzal az asztalára dobtam.

- Akkor meg mit szomorkodik? Minden rendben van. Úgyis csak ez számít, az impakt faktor.

- Ahogy mondja - mordultam rá. Nem fogja megérteni, akár hogy is próbálkozom. Vettem a kabátomat, a kalapomat, majd kiléptem az irodából. Már a folyosón voltam, mikor utánam kiáltott:

- Ki sem hagyták a publikációból, ez azért jelent valamit, nem?

Nem méltattam válaszra. Kiléptem az esőbe. Felhajtottam a galléromat, majd elindultam a kihalt utcán, hátha belebotlok egy újabb ügybe.

Szólj hozzá!

Címkék: publikáció

Galaxy - a bioinformatika jövője akar lenni, de nem az

2022.10.25. 08:03 Travis.CG

Kevés a nagy teljesítményű számítógép? Utálod a rendszeradminisztrációt? Gőzöd sincs, hogyan kell parancssorban dolgozni? Nem tudsz programozni? Bioinformatikát akarsz csinálni? Lehet, azt hiszed, ezek a feltételek kizárják egymást, de tévedsz! Ott a Galaxy! Még telepítened sem kell. Ha van akadémiai email címed, amivel bizonyíthatod, hogy csóró vagy, akkor regisztrálhatsz a usegalaxy.eu-ra. Kapsz 250GB tárhelyet, ami elég a legtöbb munkához. de ahhoz a három génhez, amivel foglalkozol, biztosan.

Az egész a felhőben fut, mégsem kell érte fizetni. Feltöltöd a cuccaidat, lefuttatod az elemzést, majd letöltöd az eredményeket. Mindenki ezt használja. Bármelyik kontinensen is vagy, van egy Galaxy csomópont a közeledben, hogy a számítógépkezelés nyűgét-baját levegye a válladról. Mint a mesében, nem igaz? És az örömöd addig is fog tartani, mint egy mese.

Kezdjük az elején. A kezdeményezés jó, hogy biztosítsunk egységes, határokon átívelő felületet a bioinformatikai munkának. Ez az új belépőket segíti, hiszen ha elakadnak, akkor könnyű a jó irányba navigálni őket. A Galaxy elméletileg erre született. Ott vannak az eszközök, vannak előre összeállított munkafolyamatok.

Sajnos a futó folyamatokról egyetlen visszajelzést sem kapunk. Miután elindítottunk, az fut. Ha megszakad a futás, azt nagyon nehéz nyomon követni. A képernyő jobb oldalán található History bonyolult számozással mutatja csak a részeredményeket, ráadásul egyes lépések rejtettek. Ha pedig bekapcsoljuk a rejtett lépések láthatóvá tételét, akkor a nem-rejtettek tűnnek el, tehát a teljes folyamatsort soha nem fogjuk látni.

Rengeteg tutorial van a Galaxy használatáról, és a munkafolyamatok is részletesen le vannak írva. Ez minden olyan program esetén nagyon fontos, ami széles felhasználói bázisra törekszik. Az egyetlen gond, hogy a munkafolyamatok és a belőlük készült dokumentációk nincsenek szinkronizálva. Én például napokat töltöttem azzal, hogy megpróbáljam kitalálni, egy munkafolyamat eredményei között miért nem találok egy fájlt, amit a dokumentáció szerint meg kellene találnom. Végül rájöttem: a munkafolyamat nem tartalmaz olyan kimenetet.

Aprópó munkafolyamatok. Elméletileg ezek azért vannak, hogy egy tevékenységet egységesített módon kezeljenek, hogy ne kelljen a rengeteg programmal és azok paraméterezésével bíbelődni. De erre képtelenek. Például nekem is javasolták, hogy a Galaxyban futtassam le a VGP munkafolyamatot. Nos, VGP pipeline nem létezik. Helyette van 3 különböző VGP pipeline. Egy, ha van Bionano adatunk, egy, ha nincs bionano adat és van egy scaffoldingra. De egy számomra érthetetlen oknál fogva, ebbe nem integráltak egy nagyon fontos kezdeti lépést, a Genoscope2-t. Enélkül pedig lehetetlen lefuttatni a többit.

Az alapértelmezett paraméterek rosszak. Például mondja el nekem valaki, egy dedikáltan gerinces genom-összeszerelőben, miért egy féreg génkészlete alapján mondja meg, hogy jó-e az összeszerelés? Persze, be lehet állítani akár emlőst is, de miért nem a gerinces az alapértelmezett, ha már gerincesre lett optimalizálva?

Ha elindítottunk egy munkafolyamatot, akkor semmi nem tárolja, hogy milyen paramétereket használtunk. Ez pedig a megismételhetőség egy elég komoly akadálya.

Nem akarom azt mondani, hogy a parancssor a jövő, mert nem igaz. A különböző low-code megoldások, mint amilyen a Snakemake is, nagyon népszerűek, és nyilván a kevesebb gépelés felé mutatnak a trendek. De a Galaxy jelen pillanatban még nem áll azon a szinten, hogy teljesen kiváltsa a csúnya fekete képernyő előtti matatást.

Szólj hozzá!

Címkék: bioinformatika

A nemeskei szörny

2022.10.17. 23:44 Travis.CG

Az a jó abban, ha biológiát tanult az ember, hogy időnként állatokat, növényeket kell meghatározni. De nem úgy, hogy odateszik elém, esetleg lefényképezik. Nem, szájhagyomány útját kell megmondani, milyen állatról van szó. Mivel az érdeklődők másokat is bevonnak a játékba, ezért az ő tippjeiket is megkapom, mintegy támpontnak. Ennek eredményeként hihetetlenül komplex, és teljességgel használhatatlan információkat tudnak rám sózni.

Mai állatunk a nemeskei szörny munkanevet kapta. A leírást egy 82 éves, szemüveges néni adta, aki az éjszaka közepén felébredve találta szembe magát ezen ádáz fenevadak csoportjával.

nemeskeiszorny.jpg

Az állatnak sok lába van, így indított a leírás. Ez alapján a feleségemmel százlábúra vagy ászkarákra tippeltünk. Már úgy éreztük, hogy kezdünk közel jutni a bestiához, amikor megkaptuk a következő infót: ugrik. Ha ugrik, akkor ugró lába van, de én egyetlen állatot sem ismerek, amelyiknek ugró lába van és hatnál több.

Valami zavar volt a Mátrixban. Aztán kiderült, hogy nem holmi közönséges szörnnyel van dolgunk, hanem egy igazi médiasztárral. A bestia ugyanis szerepelt a TV-ben. Legalábbis egy kérdéses szavahihetőségű ember szerint. És természetesen kínából jött, mint az olcsó popit.

Ha ez még nem lenne elég, az egyik beleesett egy vödör vízbe! Bár magamban szurkoltam, hogy tudjon úszni, kiderült nem tud, de azért komoly arccal hozzátették, hogy sokára fulladt meg. Hiába, vigyázni kell ezekkel. Egyeseket még az olvadt ólom sem téríti észhez.

Végül a néninek eszébe jutott, hogy egyet agyoncsapott a szobába, és a tetem még ott lehet. Nem vagyok a mindennapos takarítás híve, de egy kínából jött soklábú, ugró izé esetén biztos kivételt tennék. Ilyen mértékű hanyagság már a Déli-sarkon is okozott némi zűrzavart.

Óvatosan közelítettem meg a helyszínt. A néni félrehúzta a szőnyeget, de a tetem már nem volt ott! Csak az egyik lába. Ez némi reményre adott okot. Nem azért, mert ha vérzik, meg is tudjuk ölni, hanem mert így közelebb jutunk, milyen faj is lehet.

Anélkül, hogy tovább húznám mindenki idegeit, a láb alapján úgy tűnt, házi tücsökről lehet szó.

A csáp és a farkserték egy rosszul megvilágított helyen tűnhetnek további lábaknak. De nem Kínából jött. Gyerekkoromban elég sok jött be a szobámba, elbújt valami szekrény mögé, és onnan ciripelt, hogy ne tudjak aludni. Szóval nem kell félni tőle, nem akar gyereket.

Szólj hozzá!

Címkék: életmód

Rajzolj, te gép!

2022.10.10. 00:01 Travis.CG

Vicces, hogy a tudományos-fantasztikus könyvek nagy többsége az öntudatra ébredt robotokat hideg logikával mutatja be, képtelenek a művészetre és bármilyen kreatív tevékenységre, viszont a végletekig racionálisak. Ennek ellenére a valóságban a tanuló algoritmusok tök hülyék, viszont kreatív alkotásban lepipálnak néhány embert.

A változás szele érezhető. A Function idején egy hirtelen szabálymódosítással meg is tiltották a tanuló algoritmussal generált képek nevezését. A döntés érthető. Relatíve olcsón egész jó minőségű képeket lehet létrehozni. Igazából rengeteget lehet vitatkozni arról, hogy ez most jó-e vagy rossz. Előkerül a ki a művész, mi a művészet kérdés. Ehelyett inkább nézzük meg, mire is képes az algoritmus.

Az egyetlen nyílt forráskódú rajzoló program a stable diffusion névre hallgat. Ezt tudjuk lokálisan is futtatni. Ennek is egy memória optimalizált változatát teszteltem, mert ez lefut a 10 éves számítógépemen (bár a videokari csak 7 éves). Először is installáltam a miniconda-t.

git clone https://github.com/basujindal/stable-diffusion
cd stable-diffusion
conda env create -f environment.yaml
conda activate ldm

Ezután le kell tölteni egy 5GB-os modellt (sd-v1-4.ckpt) a HuggingFace oldaláról. Erre nem tudok közvetlen linket adni, mert regisztrálni kell az oldalra. Át kell nevezni model.ckpt-re és bemásolni a stable-diffusion/models/ldm/stable-diffusion-v1 könyvtárba. Ha a könyvtár nem létezik, létre kell hozni. És ennyi.

Az első szkript, amit futtathatunk, a txt2img.py. Angolul írunk egy kifejezést, mire a program a legjobb tudásához mérten előállít egy képet. Mint az elején írtam, ez egy tök hülye algoritmus, és ezt elég könnyű észrevenni. Először is, teljesen hiányzik belőle a "józan paraszti ész". Tehát láthatunk embereket például három lábbal. Vagy a fej teljesen meg is tekeredhet a törzshöz képest. Bevallom néhány kép a Kör című horrort juttatta eszembe.

Az arc sokszor kivehetetlen. Csak mellékesen jegyzem meg, volt egy barátom, aki imádott rajzolni, de az emberi arc neki sem ment jól. Ezért ha embert rajzolt, az mindig csukját viselt. Az ő szintjére már eljutott ez a program.

Tehát minél részletesebb képet akarunk, annál pontosabban kell megmondanunk, mit is akarunk látni. Nézzünk meg egy alkotási folyamatot.

Nekem van egy demó ötletem, ami úgy kezdődne, hogy egy robot kitöri egy felhőkarcoló ablakát és kiugrik. Ehhez kerestem koncepciónak különböző képeket az interneten, de nagyon nyögve nyelős a folyamat. Viszont sokkal jobb, ha a géppel elkészíttetem. Így sokkal hamarabb eljutok egy olyan képhez, ami már közelebb van ahhoz, amit elképzeltem.

Elsőre a következőt írtam be neki:

humanoid robot jumping through skyscaper's window

seed_35_00008.png

Mint látható, az algoritmus hülye. Ha átugrok egy ablakon, akkor kitörik az üveg. Ez egyáltalán nem evidens a programnak. Ezért módosítottam:

python3 optimizedSD/optimized_txt2img.py --prompt "humanoid robot breaking out the skyscaper's window, jumping out, glass debris everywhere" --H 512 --W 512 --seed 27 --n_iter 2 --n_samples 5 --ddim_steps 50

seed_30_00003.png

Ez már egy picit jobb lett. A robot lába még mindig elé béna. Ráadásul a képen úgy tűnik befelé ugrik, nem kifelé.

Azt sem szabad elfelejteni, hogy az algoritmus igencsak függ a tanuló adatoktól. Például mikor egy jövőbeli katonát akartam hatalmas fegyverrel, akkor a fejemben egy brutál Master Chief jelent meg, vagy valami rémálom a Warhammer univerzumból. Ennek ellenére ezt kaptam:

python3 optimizedSD/optimized_txt2img.py --prompt "futuristic soldier with big gun in rural village" --H 512 --W 512 --seed 27 --n_iter 2 --n_samples 5 --ddim_steps 50

seed_153869_00003.png

Az összes elkészített képen vagy feketék vagy koreaiak vannak.

A legkeményebb próbatételnek viszont a lányom kérése bizonyult. Mikor látta, miket művelek, azt kérte, írjam be "pelenka szitál". Két napig próbáltam kiszedni a lányomból, hogy ez mi a túrót jelent, mire képes volt úgy lefordítani, hogy legalább én megértsem.

"Apa, ez azt jelenti, hogy a pelenkának van szeme meg szája és tart egy szitát." Továbbra sem értem, mit is akar ez jelenteni, és pontosabb részleteket is nehéz tőle kérni, mert elkezd röhögni ezen a hülyeségen és utána képtelenség a további kommunikáció. Azért a tőlem telhető legjobbat megpróbáltam kihozni:

python optimizedSD/optimized_txt2img.py --prompt "happy diaper with eyes and mouth and nose holds a sieve" --n_iter 2 --n_samples 6

seed_170694_00010.png

A többi képet inkább nem teszem be, mert a Humángenetika című egyetemi jegyzetemben a születéskori rendellenességek képei kutya fülék ahhoz képest, amit a program kiadott magából.

Egy kép többet ér ezer szónál, és ez a stable diffusion esetén is igaz. Ugyanis ha nem vagyunk elégedettek a képpel, amit kapunk, adhatunk neki némi támpontot saját skiccel.

python optimizedSD/optimized_img2img.py --prompt "humanoid robot breaking out skyscaper's window, jumping out, glass debris everywhere" --init-img ~/tmp/sketch.png --strength 0.8 --n_iter 2 --n_samples 6

Ebből

sketch.png

ezt

seed_747975_00001.png

készítette. Ezt pedig egy következő iterációban is használhatjuk, folyamatosan javítva a képet, egyre közelebb hozva ahhoz, amit elképzeltünk.

Szólj hozzá!

Címkék: machine learning

Oh, my bug

2022.10.03. 23:23 Travis.CG

Az utóbbi időkben a demóim silányságában az is szerepet játszott, hogy nem tudtam két menetben renderelni. Mikor az új engine-t írtam, a Domestic violence-ből átemeltem a framebufferbe renderelés elemeit, becsomagoltam egy tetszetős C++ osztályba, majd vártam a csodás.

A csoda elmaradt. Közben volt néhány demóparti, amire újabb elemekkel bővítettem a kódhalmazt, ez a feature meg közben elmaradt. De eléggé idegesített, hogy amit annak idején viszonylag könnyen leprogramoztam, most nem akar működni. Ezért mident félretettem, és elkezdtem kutatni a hiba okát.

A framebuffer létrehozásáról már írtam korábban. Most csak arról szeretnék írni, hogy milyen lépések és milyen hibaforrások lehetnek. Először is, létre kell hozni a Framebuffer objektumot, textúrákkal, mélységi pufferrel (1). Utána kell egy shader, ami ebbe a pufferbe rajzol (2). Kell maga a geometria kirajzolása (3). Ez az első lépés. A második lépésnél a képernyőt tesszük alapértelmezettnek (4), rajzolunk egy téglalapot (5), és egy második shaderrel kirakjuk rá az előző lépésnél elkészített textúrát (6). Bármelyik lépésnél kudarcot vallunk, nem látunk semmit.

Először egy tutorial alapján újra átnéztem minden utasítást. Természetesen nem találtam a hibát, mint ahogy az előző több tíz alkalommal sem. Ha csak simán a képernyőre rajzoltam a geometriát, akkor minden megjelent, tehát a (2) és (3) jó. A kód összehasonlításánál az (1) is jónak tűnt. Az (5) is jónak tűnt, mert ha a második shadernél csak piros színt raktam ki, akkor az egész képernyő piros lett. Ebből arra következtettem, hogy a (6) lépés is stimmel. A (4) pedig csak egy glBindFramebuffer(0), tehát az is jó. Minden jó, mégsem működik.

Még egyszer végigmentem a lépéseken, másodszor sem láttam a hibát. Harmadszor is végignéztem egy tutorial kóddal összehasonlítva, továbbra sem láttam a megoldást. Viszont volt egy ügyes trükk a kódban. A képernyőtörlést más színnel végezte a két rajzolás alatt. Ezt én is megléptem. Az első framebuffer szürkét kapott, a második, képernyőre író pedig fehéret.

Az eredmény szürke képernyő volt. Tehát (1) jó, (2) jó, (3) nem jó. Ami ellentmondásban volt a korábbi tesztekkel, ahol Framebuffer bűvészkedés nélkül a geometria megjelent. Rájöttem, hogy ha tovább akarok lépni, akkor segítségre van szükségem.

A segítség az NVidia NSight volt, amivel Linux alatt is tudok debuggolni. Még Slackware alá is fel tudtam telepíteni. Egyetlen gondom az volt, hogy visított, hogy régi a videokártyám, ezért nem lesz minden funkció elérhető. De erre csak legyintettem.

Ez a debugger kilistázza a rajzoló műveleteket úgy, ahogy meghívásra kerülnek, nem kell a millió osztály referencián keresztül végigkövetni, mi is történik. Kirajzolja a textúrákat, puffereket, szóval nagyon jól működött. Kb. fél óra után már átláttam, mit is csinál, mire kell klikkelni. Elég intuitív.

Ekkor jött a meglepetés. (3) jó. A textúra ott virított, ahol lennie kellett.(6) megkapta a megfelelő textúrát, mégis csak a nagy szürkeséget rajzolta ki belőle.

Ekkor fogtam magam, átírtam a kódot és a framebufferes textúra helyett egy közönséges jpg-t adtam meg neki. Azt sem rajzolta ki. Illetve olyan volt, mintha csak a textúra teteje jelenne meg, de az is teljesen homogén módon.

Ekkor már tudtam, hogy közel vagyok. Most már egészen biztos voltam, hogy (5) és (6) között lesz a hiba. Ezért nem a (6) shadert kezdtem el használni, hanem a (2)-t, mert az bizonyította, hogy jól működik. Ez egy hiba volt a részemről, mert a két shader ég és föld volt. Aztán elkezdtem heggeszteni a kódot, hogy az inkompatibilitások ellenére is működjön, ezzel pedig rengeteg időt vesztegettem, mert újabb hibaforrásokat vittem az amúgy hibás rendszerbe. De pont ez hozta el a megoldást.

Ugyanis (2) shaderben a vertex shader kicsit bonyolultabb, mert normál vektorokat is kezel a geometria miatt. De a teljes képernyős négyzet esetén nincs szükségem normálokra. Ezért átírtam a kód elejét, mire hirtelen minden tökéletesen megjelent.

A kód akkor már nagyon össze-vissza volt a sok toldozgatás-foltozgatás miatt, ezért további egy óra ment el arra, hogy mindent úgy írjak vissza eredetibe, hogy közben ne vétsek új hibát. (Ezért kell verziókövető rendszert használni, nem igaz?)

Szóval ez a sok hűhó egyetlen sorra vezethető vissza:

layout (location = 2) in vec2 texc;

Átírtam location = 1-re, és minden jó volt. Mint abban a gyerekversben, ahol a szög miatt a patkó elveszett.

Szólj hozzá!

Címkék: programozás opengl

Function 2022, kerek évforduló

2022.09.18. 22:12 Travis.CG

Eljött az ősz, becsöngettek az iskolába, éééééés Function!

A demót már jó ideje írtam, de egyszerűen nem haladtam vele. Az egész demó részecske rendszerekből állt, és úgy gondoltam, milyen jó lenne, ha akadályokat képezhetnék nekik, amivel a részecskéket térbeli formákba tudnám zárni. Arra gondoltam, háromszögek lennének ezek az akadályok. Aztán jöttek az implementálandó algoritmusok: a háromszög-részecske ütközés, a háromszög-részecske visszaverődés, és még ki tudja, mennyi algoritmus. Az ötlet egy véget nem érő fejlesztésbe torkollott, aminek következtében a kódom komplexitása csak nőtt, miközben demót még mindig nem tudtam készíteni. Csak engine-hegesztés folyt.

Végül arra gondoltam, ez így nem mehet tovább. Mi lenne, ha tetszőleges háromszög helyett egy kockába zárnám a részecskéket, és azokból építkeznék, mitha Lego lenne. Voxel formákat könnyebb létrehozni.

A kocka lefejlesztése egy pillanat volt, és már kezdhettem is demót kódolni. Utána, hogy már láttam is a haladást, könnyebben ment a demó készítése is, több motivációt kaptam. Végül két nappal határidő előtt készen voltam.

De arra gondoltam, ha már van két napom, megpróbálhatnék egy videót is készíteni. Nos, a videó alapanyaga már hónapok óta készen volt, ami hiányzott, az a zene. Ezzel a zenével vért izzadtam. Pontosan tudtam, hogy olyan hangzást akartam elérni, mint a Rupture, ezért egyfolytában az hallgattam. Még a konditeremben is ezt tettem be, ha éppen hozzáfértem a terem zenelejátszását biztosító mobiltelefonhoz.

Nem haladtam. A zene, amit csináltam, még csak nem is emlékeztetett a Rupture zenéjére. Ha pedig mégis, akkor szörnyű volt a kontraszt. Ebben az állapotban voltam a parti előtt két nappal.

Itt is taktikát váltottam. Gondoltam, lemehetne a videó alatt az eredeti zene. Ezt elég hamar elvetettem, mert az eredeti zenében rengeteg háttér hang is volt, ami csak felesleges zavart keltett. Ha a másolás nem megy, akkor eredeti zene kell. Végül ez bizonyult ha nem is esztétikusnak (hiszen nem vagyok zenész), de legalább produktívnak.

Az eredmény elég elkeserítő lett. Még az is felmerült bennem, hogy álnéven adom be, annyira rossz lett. Vagy be sem adom. Elrejtem egy hosszú könyvtárszerkezet legmélyére xls kiterjesztéssel, hogy még véletlenül se nyissam meg.

Végül mégis a beadás mellett döntöttem. Miért? Mert eddig soha, egyetlen alkalommal sem csináltam semmi maradandót, tehát semmilyen reputációt nem teszek tönkre vele. Utolsó lesz? Fújjogni fognak? És akkor mi van? Ha nem adom be, olyan leszek, mint a partira járók 80%-a, akik nekilátnak valaminek, de soha nem fejezik be. Elvesztik a motivációt, nem találnak rá időt, és csak panaszkodnak, hogy most sem készültek el semmivel, pedig már mennyit dolgoztak vele. Most, a partin is beszéltem ilyen emberre, és a parti után is hallgattam a sztorikat. Én elkészültem vele. Igaz, hogy én is látom, hogy milyen minőséget képviselnek, de én ennyit tudok. A videó témája pedig jó ötlet, csak a zenével van gond.

Egyébként azzal, hogy megpróbáltam lemásolni a zenét, és ezért nagyon sokszor meghallgattam, elkezdtem észrevenni azokat az apró struktúrákat, amiből felépül. Úgy érzem, ebből megtanultam, hogyan lehet elkerülni, hogy ne legyen olyan monoton egy zene felépítése, valamint miként lehet előkészíteni a zenei témák váltását.

Ráadásul csak úgy tudok fejlődni, hogy megmutatom ezt a rossz zenét valami hozzáértőnek, aki tud javaslatot tenni a javításra. Ha nem mutatok semmit, nem lehet mihez képest fejlődni.

Szombaton a gyér látogatószám idején érkeztem. Sokan épp ebédelhettek, de legalább volt szabad helyem, ahova lecuccolhattam. Feltöltöttem a releaseket, és körbenéztem. Megcsodálhattam egy Mega 65-t.

function2.jpg

Később, mikor visszamentem a gépemhez, addigra egy német kontingens elfoglalta a helyemet, valamit nagyon kódolhattak, azért kellett egy csomóban lenniük. Addig elmentem ismerősöket üdvözölni. Volt egy érdekes beszélgetésem Aha-val, aki a JS jövőjéről beszélt a demosceneben. A lényege, hogy a scenerek már annyira lusták lettek, hogy sajnálják az időt a letöltésre és kicsomagolásra. Ha JS-ben van a demó, akkor elég egy link és a böngészőből fog futni.

Ratman talált egy C64-t még két éve egy bokorban. A megtalálás körülményeit még mindig viselte a gép. Az egyik német annyira meghatódott ettől, hogy össze-vissza járta a partit egy diagnosztikai cartrige után kutatva.

Blala DJ lett. Ez a dolog, csak engem ért meglepetésként, úgy tűnt mindenki más tisztában van vele, hogy a Haskell programozási nyelv elkötelezett térítője DJ lett. Hiába, nem lehet tudni, milyen rejtett értékek rejlenek egy-egy emberben.

Zene kompóra már ismét szabad volt a gépem előtti hely, gyorsan el is foglaltam. Az indulók száma nem hagyott kétséget afelől, hogy már komoly partival van dolgunk. Voltak igazán jó zenék is, úgyhogy bizalommal tekintettem a többi kompó elé.

A játékok igen színvonalasak voltak. Négyen indultak, és mindegyik nívós induló volt. Még ahol csak ötletet villantottak, ott is látszott az igényes kidolgozás.

A fotón előzsűrizték a képemet. Ettől egy kicsit letörtem, mert azért így is maradt bent olyan kép, ami sem kompozícióban, sem témában nem kimagasló (khm Autók (5).jpg). De az is lehet, csak én nem vagyok a megvilágosodás ezen szintjén. Az volt a legelkeserítőbb, hogy ez volt az első képem, amiben tudatosan megterveztem a kép felépítését. Amikor nem gondolok semmire, csak kattintok egyet, akkor ilyen nem történik.

A grafikák többsége nagyon jó volt. Grass és SP képe különösen tetszett. Grass egyébként a Vakondok következő filmjéhez készítette ezt a posztert. A kézirajzok nagyon különböző technikával készültek, változatos stílust követtek.

A wild-ok változatosak voltak. Láthattunk Arduino cuccot, videót. Valahogy nem volt nagy viszhangja a videómnak, mikor lement. Szerencsére utolsó sem lett. Mint utólag megtudtam, a legtöbben nem is értették, hogy a Rupturt vettem alapul. Úgy tűnik, az elvont figurák között is kezdek elvont lenni, ami már hatványozott elvontságot jelent egy átlagemberhez képest. Ha így folytatom tovább, a végén egyedül fogok röhögni a saját vicceimen. Bár a díjkiosztó után Slyspy elmondt, hogy neki átjöttek a poénok, úgyhogy még van némi remény számomra.

Viszont a nyertes alkotás, a Poligon nagyot ütött. Nem állítom, hogy a teljes szimbólum rendszert értettem, és a teljes díszlet elégetése nagyon lehangolt, de akkor is torony magasan verte a mezőnyt.

A Sequence is elég jó volt, bár ott nem értettem, hogy most az elvált nő (vagy annak lánya?) hogyan jutott el a NASA űrhajós kiképző programjába. Bizonyára nem is ez volt a célja a filmnek.

A 256byte kivételével az összes intrót összevonták. Probléma nem volt velük, élvezetesek voltak. Na de, a 256-ok! A néző kezdi azt hinni, hogy már mindent látott, de kiderül, hogy nem. Azt hiszem az új trend a true color, de a részecske rendszer is népszerű effekt volt idén.

Öt demó volt, ebből az első három korábbi ötletek felfrissítése volt egy magasabb szinten, ha lehet ez mondani. Az Away jól illeszkedik a Rainbow Clash sorozathoz, amit Slyspy évek óta visz, de a tiritarka színorgia helyett egy melankólikus demót kapunk, az elmúlást bemutatva. Netro az Night M. Shyamalan-i hagyományokat követte, amikor is csak a végére áll össze a kép. Talán a fáradság volt az oka, de most tényleg nem értettem, mit is látok. Ezen az sem segített sokat, hogy az egyetlen általam felismert formánál, a vörös vértestnél valaki felkiáltott mögöttem: vérlemezke. Mikor eljött a döntő pillanat, akkor kezdett világossá válni, hogy ja, azok a polipok neuronok voltak. Így már oké! Gargaj pedig a Piledriver stílusát emelte meg egy esztergapaddal:

A díjkiosztón Gargaj azt mondta, hogy szerinte Netronak kellett volna nyernie, ezért át is adta a díját neki.

Összességében elmodható, hogy a demoscene punnyadás véget ért. A Revision - QBParty - Assembly fáradt, néhol erőltetett vonaglása helyett kaptunk egy igazi demópartit, igazi release-ekkel. Mondhatni a Function saját gravitációs mezőt fejlesztett. Annyian jöttek el, hogy alig fértek el a teremben. Plusz szavazólapokat kellett nyomtatni, mert elfogytak. Még Spenót is eljött, pedig korábban nagyon aggódott, hogy elkapja a koronavírust, és meghal. Ha így nézzük, akkor az élete kockáztatása árán is eljött. Remélem nem hirtelen fellángolás volt ez, hanem egy új trend kezdete.

function1.jpg

Szólj hozzá!

Címkék: demoscene

Klikk, klikk, PhD dolgozat

2022.09.04. 16:39 Travis.CG

Nem szoktam túl kritikus lenni a PhD dolgozatokkal. Egyrészt, mert az én PhD dolgozatom sem túl kiváló, ráadásul elég élénken él még bennem, milyen a PhD-sok élete. Ezért is volt nehéz számomra, hogyan is bíráljam el a most bemutatásra kerülő PhD dolgozatot.

A dolgozat röviden abból állt, hogy megnézték egy növény biotikus stresszre milyen válaszreakciókat ad. Azon belül is egy gént emeltek ki, mert abból a génből már volt eredményük, hogy egy teljesen másik növénybe transzformálva hogyan működik. Látszott, hogy biztosra akartak menni. Ismert gén, ismert módszer, csak a növényt változtatták meg. Gondolom azt várták, hogy hasonló eredményt is kapnak.

A dolgozat bevezetője alapján a laborvizsgálatok mellé bioinformatikai vizsgálatokat is végeztek. Ezek leírása viszont meglepően pontatlan volt, nem érte el egy BSC-s előadás szintjét sem. Ráadásul letöltöttek a GEO-ról egy adatsort, ami pont ugyan azt a stresszt vizsgálta, pont ugyan azon a növényen, mint ők. Viszont nem a nyers adatokat szedték le, hogy újraelemezzék, hanem a végső expressziós táblázatot. Tehát más tollával akartak ékeskedni. Ez már kiváltott némi duzzanatot néhány homlokomon kanyargozó éren.

Amikor meg tényleg saját bioinformatikai vizsgálatot csináltak (ami igazából abból állt, hogy egy weboldalra feltöltötték az adatokat, klikkeltek, majd letöltötték a kimeneti táblázatot), akkor sem kezdtek semmit az eredménnyel, csak leírták, hogy ezt köpte ki a program. Semmi értelmezése nem volt az eredményeknek, csak puszta leírása.

Mindegy - gondoltam magamban -, ha a bioinformatikai munka nem is volt nagy eresztés, a kísérletek önmagukban mégis csak képviselnek valami értéket. Megpróbáltam átrágni rajta magam, tudván, hogy nem sok kapcsolatom van a laboros módszertannal. Mint kiderült, alaptalan volt a félelmem. A laborvizsgálatok eredményeinél derült ki, hogy a vizsgált növények elrohadtak, és nem ismételték meg a kísérletet.

Hogy pontosan miért nem ismételték meg a kísérleteket, nem derült ki egyértelműen. Az összefoglalásnál még a COVID-19 miatti karantén intézkedéseket említették, de az eredmények és megvitatásuknál már a kísérletek költségeit nevezték meg oknak.

Szép lassan kezdett számomra kirajzolódni, mi is történhetett. Labor Jani elkezdett kísérletezni egy olyan témán, ami nem világmegváltó, de biztosan nem kudarcra ítélt. Hónapokat dolgoztak a növények nevelésén, majd azok megdöglöttek. Valami határidő biztosan elkezdte őket szorítani, ezért elkezdtek pánik-szerűen gondolkodni, hogyan lehetne mégis valami PhD dolgozatot összehozni. Erre jöhetett a világmegváltó ötlet: akkor csináljunk bioinformatikát mások eredményét felhasználva.

Mert milyen menő már, hogy a bioinformatikus csak nyomkodja a gombokat egy fekete képernyő előtt, meg klikkel a weboldalon, és kész a kutatás. Hiszen ezt egy majom is meg tudja csinálni. Azt hiszem, ez a dolgozat is bizonyítja, hogy ez nem így van. De akár ezt a mémet is hozhatnám példának. Valóban könnyebb egy program kimenetére várni, mint transzformált növényeket növeszteni vagy egereket keresztezni, de érteni is kell, miért kapjuk, amit kapunk.

Ugyanis még nem tartunk ott, hogy pusztán bioinformatikai módszerekkel megoldjuk a biológiai problémákat. Még mindig szükség van a kísérletekre, azok nélkül továbbra is csak predikciókat tudunk mondani. A predikciók pedig tévedhetnek, mint ahogy tévedni is szoktak. Elég csak megnézni különböző szakértők előrejelzéseit, amikről utólag kiderül, hogy hamisak. Nem azért hamisak, mert ezek a szakértől hülyék lennének, hanem azért, mert az eddigi ismereteik alapján az adatokból ezt tudják előre jelezni. De a biológiában szerencsénk van, mert lehet kísérletesen ellenőrizni ezeket a predikciókat.

Ezért voltam dilemmában a PhD dolgozat bírálata idején. A legegyszerűbb megoldás az lett volna, hogy leírjuk, ez egy használhatatlan dolgozat, elkaszálni az egészet, és kész. Csakhogy ez nem a hallgató hibája. Biztos, hogy nem ő találta ki, hogy mostantól bioinformatikai munkát fog végezni. Ha igaz a karantén-kifogás, arról sem tehet a hallgató. Viszont szánalomból sem lehet átengedni valakit.

Ezért írtam vagy két oldalt, hogyan lehetne többet kihozni az eredményekből. Milyen további vizsgálatokat érdemes végezni, azokhoz milyen weboldalakat használhat (annyi ideje úgysem lenne a hallgatónak, hogy konzolos programokkal foglalkozzon). Ha megfogadja, megfogadja, ha nem, akkor nem.

Szólj hozzá!

Címkék: bioinformatika

Borban az igazság

2022.08.28. 21:15 Travis.CG

Ide első publikációm két élesztő hibridről szólt. Az egész úgy kezdődött, hogy elhívtak egy megbeszélésre, ahol arról megtudtam, hogy izoláltak két Saccharomyces törzset, amelyek az elsődleges vizsgálatok alapján hibrideknek tűntek. A feladat a szülő fajok azonosítása lett volna.

A témát két részletre bontottuk, hogy még több cikkünk legyen, és minden cikkben mindenki szerepel, mert ki ne örülne még potya publikációknak? A most megjelent cikk inkább az élesztők által készített bor fizikai tulajdonságokról szólt, nem az élőlények genetikájáról (ami később fog megjelenni), ezért eredetileg úgy tűnt, nem is lesz szerepem benne. A bírálók viszont máshogy gondolták.

Történt ugyanis, hogy a kézirat első verziója után plusz kísérleteket kértek, amitől a szerzők száma megemelkedett. Azt is kritizálták, hogy a fizikai tulajdonságokat elemző ANOVA túl nagy szórást mutatott, ami állítólag rendes fermentálás esetén nem szabadna, hogy bekövetkezzen.

Ezt úgy oldották meg, hogy a 3 ismétlésből kivették a kiugró értéket, és újraszámoltattak velem mindent, mert én tudok for ciklust írni R-ben. Úgyhogy az én munkám egyetlen nagy ANOVA táblázat elkészítése volt. Arra számítottam, hogy a kisebb adatmennyiségen fenn fognak akadni a bírálók, de nem tették. Ebből is látszik, hogy ha a bírálóknak megírod, hogy javítottad, amit kértek, akkor már nem olvassák el újból, hogy hogyan is javítottad azt.

Kis kitérőként megemlítem, hogy tavasszal pont ezzel a módszerrel akartak átverni egy cikket rajtam, amit bíráltam. Abban a cikkben kifogásoltam, hogy az RNA-seq nem tartalmaz párhuzamos mérést, mire azt válaszolták a szerzők, hogy azt a módszert alkalmazták, amit XY et al. 2019-ben. Dobtak valami csontot a kutyának, hogy elhallgattassák. Sajnos vettem a fáradságot, és elolvastam XY cikkét, amiben nyoma sem volt ismétlés nélküli RNA-seq-nek.

De térjünk vissza a mostani cikkhez. Egy másik táblázatból is kellett volna ANOVA-t számolni, de ez végül mégsem számoltam, mert nem találták az eredeti adatokat! Mai tanúságunk, hogy ha van egy szakdolgozónk/PhD hallgatónk, akkor a nyers adatokat ne hagyjuk náluk úgy, hogy nálunk nincs belőle másolat. Az eredeti, nyers adatok a kincsek. A belőlük készült színes-szagos Excel tábla nem kincs, csak egy eredmény. Azt újra lehet generálni. A nyers adatért viszont meg kell szenvedni, azt nem könnyű pótolni.

Miután kijavítottunk mindent, amit kértek, elfogadták a cikket, de még nem ért véget a tortúra. Maguk a formai változások is három vagy négy revíziót éltek meg, amivel a levelező szerző igencsak megszenvedett, mert szűk határidőket szabtak, miközben mindenki szabadságon volt. Minden második levélváltás az editorokkal arról szólt, hogy haladékot kérjen nekünk.

Szerencsére megértőek voltak, úgyhogy minden elkészült. Nem valószínű, hogy ezeknek a hibrideknek a hatására jobb borok fognak megjelenni a piacon, de azért jó volt dolgozni a projekten. Remélem nemsokára azt is megmutathatom, hogyan dolgoztam fel a genomokat.

Szólj hozzá!

Címkék: publikáció

sudo finomhangolás

2022.08.21. 18:18 Travis.CG

A sudo parancs a legtöbb felhasználó számára egyet jelent a root-al. Egy kis kellemetlenségért cserébe (be kell gépelni, hogy sudo + jelszó) megkapjuk az isteni hatalmat a gép felett. Aki viszont veszi a fáradságot, az a beállításokkal nagyon részletesen előírhatja, hogy mennyit is kaphat valaki ebből a hatalomból.

A sudo beállításai az /etc/sudoers fájlban és az /etc/sudoers.d/ könyvtár fájljaiban található. Ez utóbbi azért alakult ki, mert a csomagkezelők előszeretettel írják felül a konfigurációs állományokat egy program frissítése során. A sudoers.d fájljai viszont értintetlenek maradnak.

A konfigurációs állomány szintakája nagyon egyszerű:

user host = (otheruser) cmd

A user lehet egy felhasználó neve, de akár egy csoport is, ha % jellel kezdődi. A host annak a gépnek a nevét jelenti, ahol a jogokat ki szeretnénk adni. Ez a megoldás lehetővé teszi, hogy egy sudoers fájlt több gép között is megoszthassunk. Az otheruser annak a felhasználónak a neve, akinek a nevében futni fog a parancs. Mint látható, nem muszáj root-nak lennie. Ha például az adatbázis felügyelet egy dedikált user nevében fut, akinek még home könyvtára sincs, akkor itt beállíthajuk, hogy a felhasználó ezen néven adatbázis műveleteket végezzen. A cmd a futtatni kívánt parancs. Mivel a sudo alapból nem ismeri a PATH-t, ezért célszerű teljes elérési utat megadni. A parancs esetén van egy érdekes dolog! Nevezetesen megadhatunk paramétereket is. Ezzel olyan érdekes helyzeteket hozhatunk létre, hogy a felhasználó nem tud tetszőleges paraméterekkel parancsot futtatni. Ha mondjuk egy felhasználónak csak egy szolgáltatás indítását és leállítását akarjuk engedélyezni, akkor a következő módon tehetjük meg:

dummy ALL = /sbin/systemctl start dummy.service, /sbin/systemctl stop dummy.service

Ebben az esetben a dummy felhasználó bármely gépen el tudja indítani a dummy szolgáltatást és le is tudja állítani. De az állapotát már nem tudja lekérdezni!

Ez így mind szép, de mi van, ha több host-ot, több felhasználót, netalántán több parancsot szeretnénk megadni? A konfiguráció során létrehozhatunk aliasokat. A Host_Alias a számítógépek neveit gyűjti egy azonosító alá. A User_Alias a felhasználókat. A Cmnd_Alias szerepe ezek alapján már egyértelműen beazonosítható.

Az aliasok felépítése is nagyon egyszerű:

User_Alias DB = adam, eve

Tehát a DB alias alatt adam és eve fog szerepelni. Az így definiált aliasokat utána használhatjuk a fenti struktúrában.

Azt is szabályozhatjuk, hány esetben kelljen beírni a jelszót. Ha a kiadni kívánt parancs előtt szerepel a NOPASSWD:, akkor a jelszó beírása nem kötelező, ami szkripteléskor jön jól.

Ez persze még mindig csak a jéghegy csúcsa. Nem említettem a reguláris kifejezéseket, környezeti változókat, stb. Aki még mélyebbre szeretne ásni a témában, itt teheti meg.

Szólj hozzá!

Címkék: rendszergazda

Cseppet sem objektíven: Assembly 2022

2022.08.18. 15:05 Travis.CG

Majdnem lemaradtam az idei Assembly-ről! Mindenre úgy rákészültem, mégis az utolsó pillanatban majdnem lemaradtam. De úgy látom, mások is.

Remélem ez nem egy trend része, de a Revision és a QBParty után az Assembly is visszafogottabb volt, mint korábban. Remélem a Function fogja megtörni a jeget. De addig is lássuk, mit kaptunk idén.

A zenei és grafikai compókra nem lehetett panasz, elég induló is volt, és végignézve a mezőnyt, a felhozatal sem volt rossz. Zenéből négy kategória is volt: Dance, Fast, Listening, Tracked. Tulajdonképpen nem is tudom, mi a különbség a Dance és a Listening között. Egyszer majd utánajárok.

A gyors zenék közül egyedül Melod száma tetszett, de ezzel úgy tűnik egyedül voltam, mert csak a 10. helyezést érte el.

Egyik kedvenc zenészem, Aikapallo kivételesen szakított a metálos hangzással, de az új stílusa is megkapó. Nem tudom, hogy ez egy kísérletezés eredménye, vagy erre a vonalra szeretne ráállni, de jó volt hallgatni.

A grafikák is népes számban képviseltették magukat. A fast graphics esetén kivételesen nem egy firkát kellett értelmes képpé varázsolni, hanem egy témát adtak, a szavazást. Bár voltak ügyes témák, a legtöbb kép nagyon nyers volt. Sajnos a scene.org FTP-jén nem volt fenn az összes kép, de amiket láttam, azok közül a Get free oil volt a legjobb (ami valami miatt Vote for roboboy néven található meg, de ezen nem kell fennakadni).

A Freestyle grafikák már nem tűntek félkész munkáknak. A résztvevők száma is viszonylag kevés volt. Darkki első helyezett képe nagyon megkapó. Torony magasan nyert is.

A videók idén nem voltak túl jók. Általában ezekkel szoktam a releasekre hangolódni, mert könnyű megnézni őket, és többnyire szórakoztatóak. Gyanítom, az in-game videóra nem készültek sokan, mert összesen egy induló lehetett, azt pedig áttették ebbe a kategóriába. Mivel nem ismerem a játékot, ami a videó alapjául szolgált, ezért nem is értettem az egészet.

A futtatható alkotások láthatóan hátrányban voltak az előző évekhez képest. A régi hardverek kedvelői nem valószínű, hogy emlékezni fognak egyetlen indulóra is. A változatosságra nem lehetett panasz: volt DOS, C64, Amiga és Gameboy demó is. A megvalósítás viszont uncsi volt.

Az 1k indulókkal nem találtam meg a hangot. Több helyből gazdálkodhatnak, mint egy 256b, mégis az embernek olyan érzése van, mintha kevesebb lehetősége lenne az indulóknak. Például biztos nehéz volt megoldani, hogy a JS intrók menjenek ebben a mérettartományban, de az eredmény mégis kevésnek hat. Olyanok voltak, mint a Linux intrók. Tök nehéz összehozni őket, az eredmény mégis lesújtó.

A 4k intrók sem villanyoztak fel. Mondjuk, a második helyezett be is vallotta, hogy előző este összedobott valamit, majd beadta. Egy kisebb hazai partin látni ilyeneket nem lenne gond, de ez az Assembly és most ünnepelték a 30 éves fennállásukat!

Volt egy öszvér compó is wild screen néven, amiben voltak demók, videók, képek. Ennek a kategóriának a létére nem jöttem rá. Ettől az oldalaránytól csak azok élvezhetik ezt, akiknek ilyen széles monitoruk van. A halandók alig látnak belőle valamit. De legalább volt HBC demó. Örülök, hogy a csapat nem adta még fel.

A kegyelemdöfést a PC demók adták meg. Egyáltalán nem éreztem a nagy katarzist, hogy demókat nézhetek, inkább az órát néztem, hogy mikor lesz végük. Az Adapt demója nagyon látványos volt, de nem éreztem benne a kohéziót, csak azt, hogy "pakoljunk bele még egy folyadékszimulációt". A Fairlight demók a vége felé szintén inkább techdemók voltak, de ott a technológia állt a középpontban, ezért mindig egyféle effektet mutattak be. Itt meg volt valami jeti, ami csak lépett egyet jobbra, egyet meg balra. Víz kockában, aztán emberi szökőkút. Oké, de nem tartotta össze a demót semmi. Ráadásul nálam el sem indult, kénytelen voltam TeCsőről nézni.

Egyébként más is észrevette már, hogy a Notch demók mindig egy mozgó emberi karakter köré épített részecske rendszerek? Érdekes lenne megtudni, hogy ez az engine sajátságából adódik, vagy valami más oka van.

Akkor már inkább az MFX álomszerű demóját érdemes megemlíteni, ami egy teljesen korrekt alkotás volt. Egyszerű, de fülbemászó zene, egységes képi világ és elég gyors vágások, nehogy észrevegyük, milyen repetitív a karakterek mozgása. Ezt a demót látszik, hogy szívvel készítették.

 

Szólj hozzá!

Címkék: demoscene

Slackware: öregfiúknak

2022.08.07. 19:58 Travis.CG

Régen minden jobb volt! Régen a számítógép azt csinálta, amit mi akartunk. Ha hülyeséget csináltunk, nem működött a rendszerünk. Ma meg csak azt csinálhatjuk, amit a cégek megengednek. Lejár a terméktámogatás a jó kis Windows 8.1-hez, erre mit csinálnak? Figyelmeztető üzeneteket küldenek. Kérte valaki? Telepítettem én Microsoft üzengető modult a gépemre? Hát erről beszélek, kérem alásan!

Még a Linuxok is jobbak voltak. A mai Linuxosok? Pfff. Egy lépést sem tudnak tenni a grafikus képernyő nélkül. Ha valami nincs a csomagkezelőben, akkor már nem is tudják telepíteni. Régen mi még forráskódból fordítottunk!

Bezzeg a Slackware követi a régi értékeket. Minden egy telepítő DVD-n van, nem ám felhőben, meg ilyen repóban, meg olyan repóban! Még mit nem! És olyan huncuttságok sincsenek, mint csomagfüggőség! Minek? Aki telepít, az úgyis mindent felrak. Ha meg nem akar mindent felrakni, akkor nem rak fel. Nem a gép mondja meg, mit lehet csinálni.

Grafikus felület? Csak ha én el akarom indítani. Senki nem kényszerít, hogy ostoba homokórákat bámuljak. Userek? Ott a root. Ezek a mostani rendszerek úgy félnek a rendszergazdai jogosultságoktól, mintha valami betegség lenne. Pedig a beállításoknak ez a módja. Nem ilyen sudo puhaság. Hogy meri megtiltani a rendszer, hogy én kiadjam a rm -fr a gyökérben? Persze, én nem akarom kiadni. De ha ki akarnám adni? Mi van, ha olyan napom van? Nekem ne adjon hibaüzenetet egy gép! És ha vészhelyzet van?

Már egy jó ide megvoltam a CentOS-el, de egyre több olyan apróság jött elő, amivel nem tudtam mit kezdeni. Egyik ilyen probléma a középső egérgomb volt. Elkövettem azt a hibát, hogy Logitech egeret választottam, aminél a középső egérgomb nem szabványos üzenetet generál. (Bezzeg egy régi jó kis görgős egérrel ilyen nem fordulhatna elő!) Windowshoz persze van driver, mert a Windows az csókos, de Linux alatt valami miatt a Gnome alapú rendszereknél nem működik.

A fiatalok biztos a gatyájukba csinálnának, vagy ami még rosszabb, kérdéseket tesznek fel a StackOverflow-n, de nálam ez nem volt gond, mert összesen két helyen használok csak középső egérgombot: a konzolban, szöveg bemásolásához, és Blenderben. Mindkét esetben van alternatív megoldás, ezért ez nem fájt olyan nagyon.

A másik apróság a Bluetooth volt. Ez már nagyobb probléma volt. Elkezdtem ugyanis egy rajztáblával szerencsétlenkedni, ami így kommunikál a géppel, de valami miatt nem jött létre a kapcsolat a két eszköz között. A logok alapján a bluez démon nem tudott rendesen elindulni. Ez egy ismert hiba, amire a program frissítést javasolták.

Viszont megjelent az új Slackware is, ami a legrégebb Linux disztribúció, tele olyan hasznos funkciókkal, amire egy magam fajta régivágású embernek szüksége lehet. A mostani kiadásra hat évet kellett várni, de hát az öregeknek van rá idejük. Aki Ubuntun nevelkedett, az ezt biztos nem érti. Azért mégsem írom, hogy megáll az idő a Slackware használata közben, mert a rendszer használata közben azért érezni, amikor a böngésző egyre kevesebb oldalt hajlandó betölteni az újabb és újabb webes szabványoknak hála.

Az öregedéssel persze óvatosság is társul, ezért először egy tesztgépre telepítettem, és kipróbáltam az egeret, valamint a rajztáblát. Nehogy belefogjak egy mindent átfogó telepítésbe, és még a problémáim se csökkenjenek. Patricknak hála működött mindkettő.

Telepítés előtt egy biztonsági mentést is akartam csinálni, mert a CentOS LVM partíciót hozott létre a home könyvtárra, amit nem tudtam volna kevés munkával Slackware alá csatolni. (És mint írtam, fő az óvatosság!) A biztonsági mentés három órát vett igénybe, pedig csak 560GB-t kellett átmásolni.

A Secure Boot megtréfált elsőre. Elindítottam a Slackware telepítőt, majd a cfdisk-el letöröltem az összes partíciót, újakat készítettem, telepítettem. Érdekes módon az initram készítésénél csak malmozott a gép, látszólag nem csinált semmit. Itt össze-vissza nyomkodtam a gombokat, majd egyszer csak a telepítő végére értem.

Újraindítottam, és legnagyobb meglepetésemre a CentOS visszajött! A kutya meg a macska! Miféle ezredfordulós humbug ez meg? Még kétszer megismételtem a mutatványt, mire rájöttem, hogy UEFI alatt GPT partíciókat kell csinálni. Az a 2048-as szektornál kezdődik, tehát hiába hoztam létre régi típusú partíciókat, azok nem jelentettek semmit. Az initram készítés is azért "fagyott" mert a nem tudta kiírni a fájlokat.

Szóval a partíciókat a jó öreg cfdisk helyett cgdisk-el kell elkészíteni, és akkor már minden rendben volt. Legalábbis a telepítéssel. A telepítő a rendszer indítót a Windows EFI partíciójára írta a telepítő, amitől először megijedtem. Régi reakció ez, amikor még az operációs rendszerek előszeretettel írták felül egymás MBR rekordjait. Manapság már kisebb a stressz emiatt.

A biztonsági mentésből csak két óra volt a visszamásolás, úgyhogy az értékes, a web számára rég elfelejtett programverziók biztonságban voltak (meg az olyan nagyon fontos videók, amiket a YouTube is rég letörölt, mert csak 640x480-as felbontásban vannak meg.)

Mivel már rutinosabb voltam, a Tensorflow telepítése gyerekjáték volt. Az NVCC fordítóról most inkább ne beszéljünk.

Azért ez az öreg is tud új trükköket. Már van hármas Python is, 11-es GCC, de aki úgy szereti, annak az LLVM is ott figyel, és a cmake is elérte a 3-as verziót. Amint látható, már az EFI alaplapokkal is megbírkózik. Úgy érzem, nem lesz gond. Egy ideig legalábbis.

Szólj hozzá!

Címkék: rendszergazda

süti beállítások módosítása