Uppgiften att samla en uppsättning objekt baserat på flera datakällor uppstår i flera moderna applikationer. Vi föreslår en integrativ statistisk modell som möjliggör en separat samling av objekten för varje datakälla. Dessa separata kluster klamrar sig löst fast vid ett allmänt samförståndskluster, och därför är de inte oberoende. Vi beskriver ett beräkningsmässigt skalbart Bayesianskt ramverk för samtidig uppskattning av både konsensuskluster och källspecifika kluster. Vi visar att denna flexibla strategi är mer robust än gemensam klusterbildning av alla datakällor, och är mer kraftfull än att samla varje datakälla separat. Detta arbete motiveras av den integrerade analysen av heterogena biomedicinska data, och vi presenterar en ansökan till subtyp identifiering av bröstcancer tumörprover med hjälp av allmänt tillgängliga data från cancergenometlas. Programvaran finns tillgänglig på http://people.duke.edu/~el113/software.html. Flera forskningsområden analyserar nu data från flera källor (även kallade multimodala data), där flera heterogena datauppsättningar beskriver en gemensam uppsättning objekt. Varje datauppsättning representerar ett distinkt mätsätt eller domän. I tabell 1 ges exempel på data med flera källor från mycket olika forskningsområden. Även om den metod som beskrivs i denna artikel är allmänt tillämplig, är vår främsta motivering den integrerade analysen av heterogena biomedicinska data. Mångfalden av plattformar och tekniker som används för att samla in genomiska data, i synnerhet, växer snabbt. Ofta samlas flera typer av genomiska data, som mäter olika biologiska komponenter, in för en komen uppsättning prover. Till exempel Cancer Genome Atlas (TCGA) är ett storskaligt samarbete för att samla in och katalogisera data från flera genomiska tekniker. Den integrativa analysen av data från dessa olika källor ger en mer omfattande förståelse för cancergenetik och molekylärbiologi. I Avsnitt 6 presenterar vi en analys av RNA uttryck, DNA metylering, mikroRNA uttryck, och proteomiska data från TCGA för en vanlig uppsättning av bröstcancer tumörprover. Separata analyser av varje datakälla kan sakna kraft och kommer inte att fånga inter-source associationer. På den andra ytterligheten, en gemensam analys som ignorerar heterogeniteten i data kanske inte fångar viktiga funktioner som är specifika för varje datakälla. Förberedande metoder som samtidigt modellerar delade funktioner och funktioner som är specifika för varje datakälla har nyligen utvecklats som flexibla alternativ [10, 9, 20, 16]. Efterfrågan på sådana integrativa metoder motiverar ett mycket dynamiskt område för statistik och maskininlärning. Den här artikeln handlar om integrativ klusterbildning. Kluster är ett mycket allmänt använt undersökande verktyg för att identifiera liknande grupper av objekt (t.ex. kliniskt relevanta sjukdomssubtyper). Hundratals allmänna algoritmer för att utföra klusterbildning har föreslagits i litteraturen. Vårt arbete motiveras dock av behovet av en integrativ klustermetod som är beräknings skalbar och robust för de unika egenskaperna hos varje datakälla. 2 2 Relaterat arbete De flesta tillämpningar av att samla in data från flera källor följer en av två allmänna metoder: 1. Sammanslagning av varje datakälla separat, eventuellt följt av en post hoc-integration av dessa separata kluster. 2. Utgångspunkten är följande: Kombinera alla datakällor för att bestämma en enda "gemensam" klusterbildning. Vid inflygning (1) kan överenskommelsen mellan de separata klustren mätas med justerat randindex [6] eller en liknande statistik. Dessutom kan samsynskluster användas för att bestämma en övergripande partition av de objekt som överensstämmer mest med dataspecifika kluster. Flera objektiva funktioner och algoritmer för att uppnå samförstånd har föreslagits (för en undersökning se Nguyen & Caruana [13]). Dessa metoder används oftast för att skapa samförstånd bland flera klusteralgoritmer, eller flera realiseringar av samma klusteralgoritm, på en enda datauppsättning. Konsensuskluster har också använts för att integrera data från flera källor [4, 1]. Ett sådant tillvägagångssätt är attraktivt eftersom det modellerar källspecifika egenskaper men ändå avgör en övergripande klusterbildning, som ofta är av praktiskt intresse. Den tvåstegsprocess som syftar till att genomföra helt separata kluster, följt av integration efter behov, begränsar dock förmågan att identifiera och utnyttja den gemensamma strukturen (se avsnitt 5.2 för en illustration av detta fenomen). Tillvägagångssätt (2) utnyttjar effektivt den delade strukturen på bekostnad av att man inte känner igen särdrag som är specifika för varje datakälla. Inom en modellbaserad statistisk ram kan man hitta den klusterbildning som maximerar en gemensam sannolikhet. Förutsatt att varje källa är villkorligt oberoende med tanke på klusterbildningen är den gemensamma sannolikheten produkten av sannolikhetsfunktionerna för varje datakälla. Detta tillvägagångssätt används av Kormaksson m.fl. [8] i samband med integrering av genuttryck och DNA-metyleringsdata. ICluster-metoden [18, 11] utför klustring genom att först montera en Gaussisk latent faktormodell på den gemensamma sannolikheten; kluster bestäms sedan av K-means klustring av faktorpoängen. Rey & Roth [17] föreslår en beroendesökande modell där målet är att hitta en klusterbildning som står för föreningar i datakällorna. Kanske mest lik vår strategi i anda och motivation är metoden Multiple Dataset Integration (MDI) [7], som använder en statistisk ram för att samla varje datakälla separat samtidigt modellera beroendet mellan kluster. Genom att uttryckligen modellera beroendet tillåter 3 MDI lånestyrka mellan olika datakällor. Den grundläggande skillnaden mellan MDI och det tillvägagångssätt som vi beskriver i det följande handlar om hur beroendet modelleras. I synnerhet modellerar MDI beroendet mellan varje par av datakällor snarare än att ansluta sig till en övergripande klusterbildning. Vi går närmare in på denna distinktion i avsnitten 3.1 och 5.2. Här beskriver vi kortfattat den finita Dirichlet-blandningsmodellen för att samla ihop en enda datauppsättning, med syftet att lägga grunden för den integrativa modellen som ges i avsnitt 3. Eftersom data X n för N objekt (n = 1,..., N ), är målet att partitionera dessa objekt till som mest K kluster. Vanligtvis X n är en flerdimensionell vektor, men vi presenterar modellen i tillräcklig allmänhet för att möjliggöra mer komplexa datastrukturer. Låt f (X n...) definiera en sannolikhetsmodell för X n angivna parameter(er).... Till exempel kan f vara en Gaussian densitet definieras av medelvärdet och variansen  på = (μ, σ 2 ). Varje X n dras oberoende av en blandning fördelning med K-komponenter, som anges av parametrarna 1,. ., K. Låt C n {1,.., K} representera den komponent som motsvarar X n, och π k vara sannolikheten att ett godtyckligt objekt tillhör kluster k: Sedan, den generativa modellen är Vi vidare antar att Π = (π 1,. .., π K ) har en Dirichlet fördelning parameteriserad av en K-dimensionell vektor β av positiva reals. Detta gör att vissa π k att vara liten, och därför N objekt kan inte representera alla K kluster. Att låta K → ∞ ger en Dirichlet-process. Under ett Bayesianskt ramverk kan man sätta en tidigare fördelning på Π och parametern som  ska = ( ska 1,. ..,  på K ). Standard beräkningsmetoder som Gibbs provtagning kan sedan användas för att approximera den bakre fördelningen för Π,  och C = (C 1,. ., C N ) (för en översikt se Neal [12]). Vi utökar Dirichlet blandning modell för att rymma data från M källor X 1,. .., X M. Varje datakälla är tillgänglig för en gemensam uppsättning av N objekt, där X mn representerar data m för objekt n. Varje datakälla kräver en sannolikhetsmodell f m (X n  på m ) parametrized av m. Under den allmänna ramen 4 presenteras här varje X m kan ha olika struktur. Till exempel X 1n kan ge en bild där f 1 definierar spektraltätheten för ett Gaussiskt slumpmässigt fält, medan X 2n kan ge en kategorisk vektor där f 2 definierar en multivariat sannolikhetsmassa funktion. Vi antar att det finns en separat klunga av objekten för varje datakälla, men att dessa ansluter löst till en övergripande klunga. Formellt, varje X mn n = 1,..., N dras oberoende av en K-komponent blandningsfördelning som anges av parametrarna  på m1,. .., mk................................................................... Låt L mn {1,.., K} representera den komponent som motsvarar X mn. Dessutom, låt C n... {1,.., K} representerar den totala blandningen komponent för objekt n. Källspecifika kluster L m = (L m1,. .., L mN ) är beroende av den totala kluster C = (C 1,. .., C N ): där α m justerar beroendefunktionen.............................................................................................................................. Datan X m är oberoende av C villkorad av den källspecifika kluster L m. Därför C tjänar bara för att ena Under hela denna artikel, vi antar att v har den enkla formen där, 1] kontrollerar anslutningen av datakälla m till den övergripande klusterbildning. Mer enkelt α m är sannolikheten att L mn = C n. Så, om α m = 1 sedan L m = C. α m beräknas från data tillsammans med C och L 1,. .., L m. I praktiken uppskattar vi varje α m separat, eller antar att α 1 =. . = α M och därmed varje datakälla ansluter sig lika till den totala klusterbildningen. Den senare favoriseras när m = 2 av identififierbara skäl. Mer komplexa modeller som tillåter beroende av αM är också potentiellt användbara. Låta π k vara sannolikheten att ett objekt tillhör den totala kluster k: Vi antar Π = (π 1,. .., π K ) följer en dirichlet(β) distribution. Sannolikheten för att ett föremål tillhör en given källspecifik kluster följer direkt: 5 Dessutom ger en enkel tillämpning av Bayes regel den villkorliga fördelningen av C: där v definieras som i (1). Även om antalet möjliga kluster K är samma för L 1,. .., L M och C, antalet kluster som faktiskt representeras kan variera. I allmänhet kommer de källspecifika klustren L m att representera fler kluster än C, snarare än tvärtom. Detta följer av ekvation (2) och illustreras i bilagarefSec2. Intuitivt om objekt n inte allokeras till någon övergripande kluster i datakälla m (dvs. L mn /  på C) då X mn inte överensstämmer väl med något övergripande mönster i data. Datakälla m X mn Data för objekt n, source m f m Sannolikhetsmodell för källm  och mk Parametrar för f m, kluster k p m Previous distribution for  och mk C n Total kluster för objekt n π k Sannolikhet att C n = k L mn Kluster specifik för X mn mot Beroende funktion för C n och L mn α m Sannolikhet att L mn = C n Integrering över den totala klustret C ger den gemensamma marginalfördelningen av L 1,. .., L M : 6 under antagandet att α 1 =. . = α M modellen förenklar: där t k är antalet kluster lika med k och U = (K‐1)α 1 1‐α 1 ≥ 1. Denna marginella form underlättar jämförelsen med MDI-metoden för beroende klusterbildning. I MDI-modellen styr ij > 0 hållfastheten i associationen mellan klustren L i och L j : därπ mk = P (L mn = k). För M = 2 ochπ 1· =π 2· är det enkelt att visa att (4) och (5) är funktionellt likvärdiga under en parametersubstitution (se bilaga C). Det finns ingen sådan likvärdighet för M > 2, oavsett begränsningar av II och 0. Detta är inte förvånande, eftersom MDI ger en allmän modell av parvis beroende mellan kluster snarare än en modell för anslutning till en övergripande klusterbildning. Här presenterar vi ett allmänt Bayesianskt ramverk för uppskattning av den integrativa klustermodellen. Vi använder Gibbs provtagningsförfarande för att uppskatta den bakre fördelningen för de parametrar som införs i avsnitt 3. Algoritmen är allmän i att vi inte antar någon specifik form för f m och parametrarna  på mk. Vi använder konjugerade tidigare distributioner för α m, Π och (om möjligt) mk. •............................................................... Som standard väljer vi en m = b m = 1, så att föregående för α m är jämnt fördelad mellan 1 K och 1. • Dirichlet(β 0 )......................................................................................................................... Som standard väljer vi β 0 = (1, 1,..., 1), så att föregående för Π är jämnt fördelade på standarden (M − 1)-simplex. • MK har tidigare distribution p m. I praktiken bör man välja pm så att provtagning från den villkorliga bakre Markovkedjan Monte Carlo (MCMC) sker genom iterativ provtagning från följande villkorliga bakre fördelningar: • L m  till X m, m, α m, C (k till X mn, C n, C n,  på mk, α m ) för n = 1,....., N, där τ m är antalet prov n som uppfyller L mn = C n. • C till L m, Π, α P (k), {L mn, } M m=1) för n = 1,....., N, där • Π och C (β 0 + ρ), där ρ k är antalet prov som tilldelas k i C. Denna algoritm kan ändras på lämpligt sätt under antagandet att α 1 =. . = α M (se tillägg A.2). Varje provtagning iteration producerar en annan förverkligande av kluster C, L 1, · · ·, L m, och tillsammans dessa prover ungefär den bakre fördelningen för den totala och källspecifika kluster. Dock kan en punkt uppskattning önskas för var och en av C, L 1, · · ·, L m för att underlätta tolkningen av kluster. I detta avseende kan metoder som aggregeras över MCMC iterationer för att producera en enda kluster, såsom den som beskrivs i [3], användas. Det är möjligt att härleda ett liknande provtagningsförfarande med endast det marginella formuläret för de källspecifika kluster som anges i ekvation 3. Den övergripande kluster C är dock också av intresse för de flesta tillämpningar. Dessutom, att införliva C i algoritmen kan faktiskt förbättra beräkningseffektiviteten dramatiskt, särskilt om M är stor. Som presenterats kan varje MCMC iteration slutföras i O(M N K) verksamhet. Om den fullständiga gemensamma marginalfördelning av L 1,. .., L M används beräkningsbördan ökar exponentiellt med M (detta utgör också en flaskhals för MDI-metoden). För varje iteration, C n bestäms slumpmässigt från en distribution som ger högre sannolikhet för kluster som är vanliga i {L 1n,. ....,........................................................... I detta avseende bestäms C av en slumpmässig konsensusklustring av de källspecifika klustren. Därför hänvisar vi till denna strategi som Bayesian consensus clustring (BCC). BCC skiljer sig från det traditionella samförståndet i tre nyckelaspekter. Vad är det för fel på dig? Både de källspecifika klusteren och samsynsklustren modelleras på ett statistiskt sätt som möjliggör osäkerhet i alla parametrar. 2. Utgångspunkten är följande: De källspecifika klusteren och samsynsklustren uppskattas samtidigt, snarare än i två steg. Detta gör det möjligt att låna information från olika källor för mer exakta klusteruppdrag. 3. Vad är det som händer? Styrkan i samband med samsynsklustret för varje datakälla hämtas från uppgifterna och redovisas i modellen. Vi har utvecklat programvara för R-miljön för statistisk databehandling [15] för att utföra BCC på multivariata kontinuerliga datakällor (finns på http://people.duke.edu/~el113/software.html). Specifikt använder vi ett Normal-Gamma konjugat innan distribution till modellera kluster-specifika medel och varianser. Se bilaga A för mer information. I teorin kan det angivna maximala antalet kluster K vara stort, till exempel K = N. Antalet kluster som realiseras i C och L m kan fortfarande vara litet. Vi finner dock att detta inte är fallet för högdimensionella strukturerade data som den som används för genomikapplikationen i avsnitt 6. Modellen tenderar att välja ett stort antal kluster även om Dirichlet tidigare koncentrationsparametrar β 0 är mycket små. Ur ett undersökande perspektiv skulle vi vilja identifiera ett litet antal tolkningsbara kluster. Av denna anledning Dirichlet process modeller som möjliggör ett oändligt antal kluster är inte heller lämpliga. Vi överväger därför en alternativ heuristisk åtgärd som väljer värdet av K som ger maximal följsamhet till en övergripande klusterbildning. De justerade anslutningsparametrarna α * m  och [0, 1] som anges av beräknas för varje kandidatvärde av K. Vi väljer sedan K som ger det högsta medelvärdet justerad vidhäftning i praktiken, vi finner att denna metod väljer ett litet antal kluster som avslöjar delad struktur över datakällorna. 9 Här presenterar vi applikationer av BCC till enkla simulerade datauppsättningar. Såvitt vi vet finns det ingen befintlig metod som är direkt jämförbar med BCC när det gäller den motiverande modellen. Vi illustrerar dock BCC:s flexibilitet och potentiella fördelar jämfört med andra modellbaserade klustermetoder för data från flera källor. Vi finner att med rimlig signal kan αm i allmänhet uppskattas med noggrannhet och utan betydande fördomar. För att illustrera detta genererar vi simulerade datauppsättningar X 1 : 1 × 200 och X 2 : 1 × 200 enligt följande: 1. Låt C definiera två kluster, där C n = 1 för n... {1,.., 100} och C n = 2 för n... {101,.., 200} 2. Dra α från en uniform (0, 5, 1) fördelning. 3. Vad är det som händer? För m = 1, 2 och n = 1,..., 200, generera L mn {1, 2} med sannolikheter 4. För m = 1, 2 dragvärden X mn från en Normal(1.5, 1) distribution om L mn = 1 och från en Normal(−1.5, 1) distribution om L mn = 2 Vi genererar 100 realiseringar av ovanstående simulering, och uppskattar modellen via BCC för varje förverkligande. Vi antar α 1 = α 2 i vår uppskattning och använder en enhetlig tidigare; ytterligare beräkningsdetaljer anges i avsnitt 4 i den kompletterande artikeln. Figur 1 visar α, den bästa uppskattningen för både α 1 och α 2, jämfört med den sanna α för varje förverkligande. Den punktuppskattning som visas är medelvärdet över MCMC-dragningar, och vi visar också ett 95% trovärdigt intervall baserat på 2,5 av 97,5 percentiler av MCMC-dragningar. Den uppskattade α är i allmänhet nära α, och det trovärdiga intervallet innehåller det verkliga värdet i 91 av 100 simuleringar. Se avsnitt 4 i den kompletterande artikeln för en mer detaljerad studie, inklusive en simulering som visar effekten av den tidigare distributionen påα. För att illustrera flexibiliteten och fördelarna med BCC när det gäller klusternoggrannhet, genererar vi simulerade datakällor X 1 och X 2 som i avsnitt 5.1 men med Normal (1,1) och Normal (-1,1) som vår blandning distributioner. Därför är signalen som skiljer de två klusteren tillräckligt svag så att det finns betydande överlappningar inom varje datakälla. Vi genererar 100 simuleringar och jämför resultaten för fyra modellbaserade klustermetoder: 1. Separat klustring, där en ändlig Dirichlet blandningsmodell används för att bestämma en klustring separat för X 1 och X 2. 2. Utgångspunkten är följande: Gemensam klustring, där en ändlig Dirichlet blandning modell används för att bestämma en enda kluster för de concatenated data X 1 X 2. 3. Vad är det som händer? Beroende kluster, där vi modellerar det parvisa beroendet mellan varje datakälla, i anda av MDI. De fullständiga genomförandeuppgifterna för varje metod anges i avsnitt 5 i den kompletterande artikeln. Vi anser att det relativa felet för varje modell är det genomsnittliga antalet felaktiga klusteruppdrag: där 1 är indikatorfunktionen. Observera att för gemensam klustringL 1 =L 2. Det relativa felet för varje klustermetod på M = 3 datauppsättningar visas i figur 2 (topppanel). Smidiga kurvor passar till data med LOESS [2] och visar det relativa klusterfelet för varje metod som funktion av α. Det är inte förvånande att gemensam klustring fungerar bra för α 1 (perfect agreement) och separat klustring är överlägsen när α 0.5 (ingen relation). BCC och beroende klusterbildning lär sig nivån på klusteravtal och fungerar därför som en flexibel bro mellan dessa två ytterligheter. Den nedre panelen i figur 2 visar resultaten för en liknande simulering där M = 3 datakällor genereras. Återigen, BCC är konkurrenskraftig med separat klusterbildning när α 0.5 och gemensam klusterbildning när α 1 1. Dependent clustering fungerar inte lika bra i detta exempel. Den parvisa beroendemodellen antar inte en övergripande klusterbildning och därmed har den mindre kraft att lära sig den underliggande strukturen för M > 2. Vi tillämpar BCC på multi-source genomic data om bröstcancer tumörprover från TCGA. För en gemensam uppsättning av 348 tumörprover, innehåller vår fullständiga datauppsättning • RNA-uttryck (GE) data för 645 gener. • DNA- metyleringsdata (ME) för 574 sonder. • miRNA uttryck (miRNA) data för 423 miRNAs. • Data från omvänd fasproteinarray (RPPA) för 171 proteiner. Dessa fyra datakällor mäts på olika plattformar och representerar olika biologiska komponenter. De representerar dock alla genomiska data för samma prover och det är rimligt att förvänta sig en viss delad struktur. Dessa uppgifter är allmänt tillgängliga från TCGA:s dataportal. Se http: // people.duke.edu/~el113/software.html för R-kod för att fullständigt reproducera analysen, inklusive instruktioner om hur man laddar ner och behandlar dessa data från TCGA-dataportalen. Tidigare identifierades fyra omfattande urvalssubtyper på grundval av en samsyn med flera källor för att samla in dessa uppgifter [1]. Dessa subtyper visade sig vara kliniskt relevanta, eftersom de kan användas för mer riktade Ther-13-apies och prognoser. Vi väljer K = 3 kluster för BCC, baserat på den heuristiska beskrivs i Avsnitt 4.1. Fullständiga beräkningsdetaljer, liksom diagram som illustrerar blandning över MCMC-dragningarna, finns i bilaga F. Tabell 3 visar en matchande matris som jämför den totala klusterbildningen C med de omfattande subtyper som definieras av TCGA. De två partitionerna har ett betydande men svagt samband, och detta tyder på att de kanske inte drivs av samma biologiska signal. Liknande tabeller som jämför de källspecifika klustren L mn med källspecifika subtyper finns i bilaga F.3. TCGA subtyp 1 13 6 20 2 66 2 4 3 80 78 4 0 3 73 Figur 3 ger en punkt-molnbild av varje datauppsättning som ges av en spridningsyta av de två första huvudkomponenterna. Det totala och källspecifika klusterindexet visas för varje prov samt en punktuppskattning för anslutningsparametern α (alternativt anges klustervärmekartor för varje datakälla i tillägg F.4). De fyra datakällorna uppvisar olika struktur, och de källspecifika klustren är mer distringuiserade än de totala klustren i varje tomt. De totala klustren är dock i viss mån representerade i alla fyra tomterna. BCC:s flexibla men integrativa tillvägagångssätt förefaller därför motiverat för dessa uppgifter. Detta arbete motiverades av det upplevda behovet av ett allmänt, flexibelt och beräkningsbart tillvägagångssätt för att samla in data från flera källor. Vi föreslår BCC, som modellerar både en övergripande klustering och en klustering specifik för varje datakälla. Vi ser BCC som en form av samförståndskluster, med fördelar jämfört med traditionella metoder när det gäller modellering av osäkerhet och möjligheten att låna information från olika källor. BCC-modellen förutsätter ett mycket enkelt och allmänt beroende av datakällor. När en övergripande klusterbildning inte söks, eller när en sådan klusterbildning inte är meningsfull som ett antagande, en mer allmän modell av figur 3 : PCA-ytor för varje datakälla. Provpunkterna färgas av den totala klustret; klustret 1 är svart, klustret 2 är rött och klustret 3 är blått. Symboler anger källspecifikt kluster; kluster 1 är '•', kluster 2 är '+' och kluster 3 är '*'. Klusterberoende (t.ex. MDI) kan vara lämpligare. Dessutom kan ett sammanhangsspecifikt tillvägagångssätt vara nödvändigt när mer är känt om det underliggande beroendet av uppgifterna. Till exempel [14] utnyttja funktionella covariance-modeller för tidsdata för att fastställa övergripande och tidsspecifika kluster. Vår implementering av BCC förutsätter att data normalt distribueras och modeller klusterspecifika medelvärdes- och variansparametrar. Det är enkelt att utvidga detta tillvägagångssätt till mer komplexa klustermodeller. I synnerhet finns det modeller som antar kluster på ett glest set [19] eller som möjliggör en mer allmän struktur för kovarians [5] som växer i popularitet. Medan vi fokuserar på biomedicinska data med flera källor, är tillämpningar av BCC potentiellt utbredda. Utöver data från flera källor kan BCC användas för att jämföra kluster från olika statistiska modeller för en enda homogen datauppsättning. Detta beslut träder i kraft den tjugonde dagen efter det att det har offentliggjorts i Europeiska unionens officiella tidning.
I REF föreslås en klustermetod för Bayesiskt samförstånd.
Bayesian Consensus Clustering
{'venue': 'Bioinformatics 29 (2013) 2610-2616', 'journal': None, 'mag_field_of_study': ['Computer Science', 'Medicine', 'Mathematics']}