Tavaly ilyenkor próbáltam kitalálni, mit csináljak a nyarammal. Ez egy meglehetősen pokoli félév volt a posztgraduális iskolában, de végül végeztem a Louisiana State University szociológia doktori programjában az alapvető kurzusokkal. A szemeszter végén úgy döntöttem, hogy Baton Rouge-ból Knoxville-be vezetek, ahol a meleg és a páratartalom nem okozza a bőr olvadását. Arról vitatkoztam, hogy a nyár „szabadságáról” beszéljek, bár a posztgraduális iskolában ez jellemzően adatgyűjtést és papírmunkát jelent. Mivel 2009 nyarán vagy dolgoztam és iskolába jártam, vagy önálló olvasástanfolyamokon vettem részt, úgy gondoltam, megérdemlem a szünetet.

Engem azonban túlságosan lefoglalt a szövegelemzés és a szakdolgozati projektem ahhoz, hogy pihenjek. Az egyik utolsó szeminárium, amelyen részt vettem, a közösségi hálózatok elemzése volt. A szemináriumot vezető professzor a Duke Egyetemen végzett disszertációja részeként ("PDF link") egy újszerű módszert talált ki az interjúk átiratainak elemzésére. A hálózati szövegelemzést javasolta nagy mennyiségű interjúadat elemzésére.

Ha nem ismeri az ilyen típusú adatokat, a szociológusok gyakran a mélyinterjúk átirataira támaszkodnak, hogy jobban megértsék a társadalmi világot. Például az MA munkám 20 témával készült interjúkat tartalmazott. (Itt olvashatsz róla a VICE.com-on, és itt olvashatod el, hogy miért döntöttem úgy, hogy közzéteszem a munkát egy nem akadémiai csatornán.)

Egyes esetekben a szociológusok több száz alany interjúadatait használják fel. Azt terveztem, hogy felmérések és interjúk adatainak kombinációját felhasználva megvizsgálom az "expozíció előtti profilaxis" és a "Truvada" gyógyszer alkalmazását a HIV-pozitív személyek és a HIV-fertőzés kockázatának kitett személyek körében.

MA munkám során a mentoraim megtanítottak arra, hogyan használjam az úgynevezett „földelt elméletet”, kézzel írt jegyzeteket és egy „Atlas.ti” nevű szoftvert az interjúk adatainak rendszerezésére és elemzésére.

A folyamat… ijesztő volt, szervezetlen és nem reprodukálható. Ez is hihetetlenül régimódi volt. Ezért próbáltam jobb és hatékonyabb módszereket kitalálni az interjúk adatainak elemzésére. Találkoztam néhány szoftvercsomaggal, köztük a Provalis QDA Miner-rel, amelyek úgy tűnt, elég tisztességes munkát végeznek a szövegbányászatban, de még mindig nem volt elég jó. Elkezdtem keresgélni az interneten, és ráakadtam a „Wolfram Research’s Mathematicára”.

Valamennyire ismertem a komplexitáskutatást, és azon is gondolkodtam, hogyan kapcsolhatom be a szociológiai elméletbe, különös tekintettel arra, hogy a nyelv és az interakció hogyan generatív a jelentésalkotásban, így Stephen Wolfram munkája nem volt teljesen ismeretlen számomra. Miközben a Wolfram webhelyén keresgéltem a Mathematica szövegelemzésére vonatkozó oktatóanyagokat, egy linkre bukkantam a „Wolfram Summer School”-ra. Felkeltette az érdeklődésem, ezért megkérdeztem néhány kollégát, hogy tudnak-e valamit erről, és egyikük azt mondta, mindenképpen jelentkeznem kell. Így is tettem, mert azt hittem, a földön nincs mód arra, hogy egy szociológiát végző hallgatót felvegyenek egy olyan programba, amely inkább a programozókra, fizikusokra, informatikusokra és más STEM-területekre irányult.

Az volt az érdekes, hogy amikor jelentkeztem, a jelentkezésem elbírálása előtt egy kódolási kihívást kellett teljesíteni. Ez valami ilyesmi volt: „Írjon egy függvényt úgy, hogy az egész számok listájából minden más egész szám el legyen távolítva.” Mivel kevés programozási tapasztalattal rendelkeztem, eltekintve néhány statisztikai szoftver alapismeretétől, ez kissé megfélemlítő volt. Elmentem azonban a Wolfram Dokumentációs Központba, és néhány próbálkozás után rájöttem, hogyan kell csinálni. A következő dolog, amit tudok, e-mailt kaptam az akadémiai igazgatótól, hogy ütemezzek be egy rövid interjút. És miután beszéltem vele érdeklődési köreimről, kutatásaimról és céljaimról, kaptam egy e-mailt, amelyben értesítettek, hogy felvettem. Meglehetősen elragadtattam, mert végignéztem néhány „elbűvölő projektet, amin a korábbi hallgatók dolgoztak”, valamint a „jelenlegi és korábbi oktatók” lenyűgöző önéletrajzát. Ó, és Stephen Wolframmal találkozni nagyon izgalmas volt.

Ezért azt javasolták, hogy olvassam el, vagy legalább ismerkedjek meg az "New Kind of Science"-vel (NKS), és gyakoroljam a Wolfram nyelv használatát, mielőtt megérkeznék a massachusettsi Walthambe a nyári iskolára. Ha nem tudná, az NKS körülbelül 1200 oldal hosszú. Egy barátom elvitt a knoxville-i könyvtárba, hogy az ő könyvtári kártyájával néhány héten belül megoldhassam ezt a témát (akkor még nem Knoxville-ben éltem). A teljes szöveg megtalálható az interneten, de én inkább a valódi könyveket részesítem előnyben, bármilyen okból is. Mindenesetre a lehető legtöbben túljutottam rajta, és lenyűgözött az olyan egyszerű programok, mint a "sejtautomaták" a természetben és máshol.

Ebből a célból, amikor a Bentley Egyetem nyári iskolájában voltam, az első feladatunk az volt, hogy a számítási univerzumban egy érdekes 2-D, háromszínű, totalisztikus celluláris automatát (CA) keressünk. Az alábbiakban néhány kép található a CA-ról, amit találtam. Ami érdekes volt, az a szabálytalan élek fejlődésük során.

Mindegyik hasonló tulajdonságokkal rendelkezik, de eltérő a határ és a növekedési minta.

És ha elkezdünk felfedezni néhány ilyen szabályteret, azaz a számítási univerzumban érdekes CA-t keresünk, az egyfajta pihentető lesz – az idegen tájak és lehetőségek egy másik vizuális terébe vezet. Egyes minták úgy néznek ki, mintha tervezési célokra használhatók volna, vagy már felhasználták olyan alkalmazásokban, mint például a textil. Vizuálisan a CA lenyűgöző lehet. Tudományosan kimutatták, hogy a biológiában látott mintákat hoznak létre. Gyakorlatilag véletlen számok generálására használhatók. Például Newton kora óta használnak egyenleteket a fizikai jelenségek leírására. Azonban egyre több bizonyíték utal arra, hogy a CA és más típusú programok jobban modellezhetik a valóságot. Az „ügynök alapú modellezés” jó példa erre. De ahogy Thomas Kuhn a The Structure of Scientific Revolutions-ben érvelt, ez a fajta haladás gyakran valós időben történő felismerés nélkül történik. Inkább történelmi folyamatként történik.

A Nyári Iskola első hete elsősorban előadásokból és Stephen Wolfram élő kísérletből állt. A második héten mindannyian ebéd közben találkoztunk Stephen Wolfram-mal, hogy ki tudja választani azt a projektet, amelyen mentorainkkal együtt dolgozunk. Ezt nevezte éves „extrém professzori” pillanatának.

Az ebéd nagyon klassz volt, mert ott volt még vagy fél tucat diák. Stephen érdeklődési körünkről és kutatásainkról kérdezett minket. Nagyon lenyűgöző volt, mert annyi kérdése volt a tudományterületek széles skálájával kapcsolatban. Voltak elméleti fizikusok, valaki, aki algoritmikus pénzügyeket tanult, és volt, aki a C. elegans idegsejtek.

Ebéd után személyesen találkoztunk Istvánnal és mentorainkkal. Amikor bementem a szobába, már volt egy projekt a fejükben, és nagyon klassz volt. Egy új funkciót akartam használni a Wolfram nyelvben, amely a Reddit API-t használja. Amikor megkérdeztem Stephent, hogy pontosan mit kellene tennem a projektben, azt válaszolta: „Mutasd meg a Reddit szociológiáját.” Azta. Magas megrendelés, de lehetővé tette számomra, hogy bárhová vigyem a projektet. Szóval azonnal elkezdtem egy kis kutatást végezni. Kezdetben azt szerettem volna kitalálni, hogy bizonyos felhasználók profilját a „Big Five pszichológiai séma” segítségével, a felhasználók által generált szövegből lehessen profilozni. Hálózati szövegelemzést is akartam használni, hogy hatékonyan feltérképezzem, mi történik a subredditekben. A mentorom és néhány másik diák segítségével pedig fel tudtam építeni egy kis kódot néhány hálózat létrehozásához.

Először elemeztem egy AMA-t (kérdezzen bármit), amit "Stephen Wolfram csinált" néhány nagyon egyszerű kóddal, és kaptam egy szép hálózatot.

Innentől megszabadultam az irányított élektől, és elhelyeztem egy elemleírást a grafikonon, így amikor a csomópontok fölé viszem az egeret, láthatja, hogy milyen szövegrészt (az AMA-ban egy kérdés) képvisel.

Így aztán egy kicsit tovább mentem, hogy kipróbáljam a Wolfram nyelv és a Mathematica gráf/hálózati funkcióit. A közösségi hálózatok elemzése során gyakran érdekelnek bennünket a hasonlóságok, a klikkek, a társadalmi tőke és egyéb intézkedések. A Wolfram nyelvnek van egy "CommunityGraphPlot" nevű része, amely megkönnyíti a csomópontok csoportosítását. Ebben az esetben az AMA hasonló kérdéseit csoportosítja.

És ennek további megjelenítéséhez beállíthatjuk a csomópont méretét egy adott kérdés pozitív szavazatpontszáma alapján.

Innentől mindenfélét csináltam, például „beépített érzelemosztályozót”, „Facebook-adatokat használó témaosztályozót” használtam képzési készletként, és elkezdtem dolgozni egy olyan osztályozón, amely képes lenne azonosítani bizonyos társadalmi pszichológiai jellemzők a szövegben. De ez egy másik bejegyzéshez tartozik.

Amint látja, rengeteg mindent elérhettem két hét alatt a projekten dolgozva mentorom kiváló segítségével. Valójában annyira hasznos volt, hogy dolgoznom kellett, amikor az IRB kikapta a HIV/PrEP munkám jóváhagyását a klinikák egészségügyi problémáinak kényes természete miatt. Tekintettel arra, hogy meglehetősen kezdő szintű programozási képességekkel léptem be az iskolába, elég lenyűgöző volt (legalábbis én így gondoltam), hogy tovább tudtam vinni ezt a projektet.

És bónuszként, találd ki mit? Felajánlottak nekem egy állást a Wolfram Researchnél, akárcsak több más öregdiáknak az évek során. Így nem csak értékes új készségeket sajátítottam el, hanem egy technológiai cégnél is dolgoztam.

Tehát, ha valami elfoglaltságot keres a nyár folyamán, vagy meg szeretne tanulni programozni, fontolja meg a „Wolfram Summer School”-t, vagy játsszon a „Wolfram|Alpha” „Open Code” funkciójával. Soha nem tudhatod, hova visz, és még munkát is kaphatsz tőle.