Neuroscience in the Wolfram Language

Keiko Hirayama, Wolfram|Alpha

Join the Conversation #WolframTechConf

Contents

Brain Anatomy

Brain regions

Brain network (connectivity)

Neuron Characteristics

Physical characteristics

Spiking (firing) ability

Cognitive Map

Cognitive concept

Statistical map of brain activities

Brain Anatomy

Expanded AnatomyData to include more detailed brain anatomy information

Data is based on UMLS (Unified Medical Language System), NeuroLex (Neuroscience Lexicon), BodyParts3D (3D Anatomography)

Data includes computable information about ~3000 brain structures from the the large cortical area to small nucleus

Entities associated with brain structures

NestList[Cases[EntityValue[#,"ConstitutionalParts"],_Entity,Infinity]&,Entity["AnatomicalStructure","Brain"],2]

Properties of neuroanatomy

Entity["AnatomicalStructure"]["Properties"]

{(EntityProperty["associated cerebral lobe", EntityProperty["AnatomicalStructure","AssociatedCerebralLobe"], "EntityProperty[\"AnatomicalStructure\", \"AssociatedCerebralLobe\"]"]),(EntityProperty["associated cortical area", EntityProperty["AnatomicalStructure","AssociatedCorticalArea"], "EntityProperty[\"AnatomicalStructure\", \"AssociatedCorticalArea\"]"]),(EntityProperty["axons", EntityProperty["AnatomicalStructure","Axons"], "EntityProperty[\"AnatomicalStructure\", \"Axons\"]"]),(EntityProperty["dendrites", EntityProperty["AnatomicalStructure","Dendrites"], "EntityProperty[\"AnatomicalStructure\", \"Dendrites\"]"]),(EntityProperty["innervations", EntityProperty["AnatomicalStructure","Innervations"], "EntityProperty[\"AnatomicalStructure\", \"Innervations\"]"]),(EntityProperty["nerve supply", EntityProperty["AnatomicalStructure","NerveSupply"], "EntityProperty[\"AnatomicalStructure\", \"NerveSupply\"]"]),(EntityProperty["neuronal input", EntityProperty["AnatomicalStructure","NeuronalInput"], "EntityProperty[\"AnatomicalStructure\", \"NeuronalInput\"]"]),(EntityProperty["neuronal output", EntityProperty["AnatomicalStructure","NeuronalOutput"], "EntityProperty[\"AnatomicalStructure\", \"NeuronalOutput\"]"]),(EntityProperty["neurons", EntityProperty["AnatomicalStructure","Neurons"], "EntityProperty[\"AnatomicalStructure\", \"Neurons\"]"]),(EntityProperty["primary innervations", EntityProperty["AnatomicalStructure","PrimaryInnervations"], "EntityProperty[\"AnatomicalStructure\", \"PrimaryInnervations\"]"]),(EntityProperty["primary segmental supply", EntityProperty["AnatomicalStructure","PrimarySegmentalSupply"], "EntityProperty[\"AnatomicalStructure\", \"PrimarySegmentalSupply\"]"]),(EntityProperty["secondary innervations", EntityProperty["AnatomicalStructure","SecondaryInnervations"], "EntityProperty[\"AnatomicalStructure\", \"SecondaryInnervations\"]"]),(EntityProperty["secondary segmental supply", EntityProperty["AnatomicalStructure","SecondarySegmentalSupply"], "EntityProperty[\"AnatomicalStructure\", \"SecondarySegmentalSupply\"]"]),(EntityProperty["segmental supply", EntityProperty["AnatomicalStructure","SegmentalSupply"], "EntityProperty[\"AnatomicalStructure\", \"SegmentalSupply\"]"]),(EntityProperty["spinal nerve innervations", EntityProperty["AnatomicalStructure","SpinalNerveInnervations"], "EntityProperty[\"AnatomicalStructure\", \"SpinalNerveInnervations\"]"])}

Prefrontal cortex

(Entity["prefrontal cortex", Entity["AnatomicalStructure","PrefrontalCortex"], "Entity[\"AnatomicalStructure\", \"PrefrontalCortex\"]", "anatomical structure"])[]

AnatomyPlot3D[(Entity["prefrontal cortex", Entity["AnatomicalStructure","PrefrontalCortex"], "Entity[\"AnatomicalStructure\", \"PrefrontalCortex\"]", "anatomical structure"]),"PlotTheme"->"Scientific"]

LinguisticAssistant

Brodmann areas

Classical classification of brain areas based on cytoarchitecture

(Entity["Brodmann area 4", Entity["AnatomicalStructure","BrodmannArea4"], "Entity[\"AnatomicalStructure\", \"BrodmannArea4\"]", "anatomical structure"])[]

Adjacent Structures:

(Entity["Brodmann area 4", Entity["AnatomicalStructure","BrodmannArea4"], "Entity[\"AnatomicalStructure\", \"BrodmannArea4\"]", "anatomical structure"])[(EntityProperty["adjacent structures", EntityProperty["AnatomicalStructure","AdjacentStructures"], "EntityProperty[\"AnatomicalStructure\", \"AdjacentStructures\"]"])]

Associated Cerebral Lobe:

(Entity["Brodmann area 4", Entity["AnatomicalStructure","BrodmannArea4"], "Entity[\"AnatomicalStructure\", \"BrodmannArea4\"]", "anatomical structure"])[(EntityProperty["associated cerebral lobe", EntityProperty["AnatomicalStructure","AssociatedCerebralLobe"], "EntityProperty[\"AnatomicalStructure\", \"AssociatedCerebralLobe\"]"])]

Associated Cortical Area:

(Entity["Brodmann area 4", Entity["AnatomicalStructure","BrodmannArea4"], "Entity[\"AnatomicalStructure\", \"BrodmannArea4\"]", "anatomical structure"])[(EntityProperty["associated cortical area", EntityProperty["AnatomicalStructure","AssociatedCorticalArea"], "EntityProperty[\"AnatomicalStructure\", \"AssociatedCorticalArea\"]"])]

Brain Anatomy

Amygdala

Primal part of the brain

Key roles in emotional process, memory, and recognition

LinguisticAssistant

light=Join[{{"Ambient",Black}},Table[{"Directional",Hue[.58,.5,1],ImageScaled[{Sin[x],Cos[x],-.5}],Pi/2},{x,0,2 Pi-2 Pi/8,2 Pi/8}]];
AnatomyPlot3D[{AnatomyForm[<|_->Directive[Specularity[White,30],Hue[.58,0,1,.12],Lighting->light],(Entity["amygdala", Entity["AnatomicalStructure","Amygdala"], "Entity[\"AnatomicalStructure\", \"Amygdala\"]", "anatomical structure"])->Glow[Red]|>],(Entity["amygdala", Entity["AnatomicalStructure","Amygdala"], "Entity[\"AnatomicalStructure\", \"Amygdala\"]", "anatomical structure"]),(Entity["brain", Entity["AnatomicalStructure","Brain"], "Entity[\"AnatomicalStructure\", \"Brain\"]", "anatomical structure"]),(Entity["skin", Entity["AnatomicalStructure","Skin"], "Entity[\"AnatomicalStructure\", \"Skin\"]", "anatomical structure"])},Background->Hue[.58,1,.3],ViewPoint->Right,SphericalRegion->True,PlotRange->{{Automatic,0},Automatic,{1400,Automatic}},BaseStyle->{RenderingOptions->{"DepthPeelingLayers"->20}},ImageSize->500]

Brain Anatomy (connectivity)

Output areas

Neuronal connectivity information includes ~1500 input/output relations across different brain regions

Network can be analyzed with built-in Mathematica graph functionality

output=(Entity["amygdala", Entity["AnatomicalStructure","Amygdala"], "Entity[\"AnatomicalStructure\", \"Amygdala\"]", "anatomical structure"])[(EntityProperty["neuronal output", EntityProperty["AnatomicalStructure","NeuronalOutput"], "EntityProperty[\"AnatomicalStructure\", \"NeuronalOutput\"]"])]

ag=NestGraph[Cases[EntityValue[#,(EntityProperty["neuronal output", EntityProperty["AnatomicalStructure","NeuronalOutput"], "EntityProperty[\"AnatomicalStructure\", \"NeuronalOutput\"]"])],_Entity]&,(Entity["amygdala", Entity["AnatomicalStructure","Amygdala"], "Entity[\"AnatomicalStructure\", \"Amygdala\"]", "anatomical structure"]),2,VertexSize->1.5,EdgeStyle->LightGray,GraphStyle->"SmallNetwork",GraphLayout->"RadialEmbedding",VertexLabels->Placed["Name",Tooltip],GraphHighlight->(Entity["amygdala", Entity["AnatomicalStructure","Amygdala"], "Entity[\"AnatomicalStructure\", \"Amygdala\"]", "anatomical structure"]),ImageSize->400]

Find loop

Feedback is one of the key features of the information transmission in our brain network

It allows the augmentation/decrease of the efficacy of transmission and fine-tuning for the outputs

cycle=FindCycle[ag,Infinity,All];

HighlightGraph[ag,cycle,GraphHighlightStyle->"DehighlightFade"]

Find specific circuit

Amygdala-Prefrontal cortex circuit plays an essential role in modulating responses to emotional experiences

circuit=y[{ag,(Entity["prefrontal cortex", Entity["AnatomicalStructure","PrefrontalCortex"], "Entity[\"AnatomicalStructure\", \"PrefrontalCortex\"]", "anatomical structure"])}]

HighlightGraph[ag,Join[circuit,VertexList[Graph[First@circuit]]],GraphHighlightStyle->"Thick"]

Animate[HighlightGraph[ntwk,Join[cycl[[n]],VertexList[Graph[cycl[[n]]]]],GraphHighlightStyle->"DehighlightFade"],{{n,1,"cycle"},1,20,1},Initialization:>{cycl=FindCycle[NestGraph[Cases[EntityValue[#,(EntityProperty["neuronal output", EntityProperty["AnatomicalStructure","NeuronalOutput"], "EntityProperty[\"AnatomicalStructure\", \"NeuronalOutput\"]"])],_Entity]&,(Entity["amygdala", Entity["AnatomicalStructure","Amygdala"], "Entity[\"AnatomicalStructure\", \"Amygdala\"]", "anatomical structure"]),3],{4,Infinity},20],ntwk=NestGraph[Cases[EntityValue[#,(EntityProperty["neuronal output", EntityProperty["AnatomicalStructure","NeuronalOutput"], "EntityProperty[\"AnatomicalStructure\", \"NeuronalOutput\"]"])],_Entity]&,(Entity["amygdala", Entity["AnatomicalStructure","Amygdala"], "Entity[\"AnatomicalStructure\", \"Amygdala\"]", "anatomical structure"]),2,VertexSize->1.5,EdgeStyle->LightGray,VertexStyle->Orange,GraphStyle->"SmallNetwork",GraphLayout->"RadialEmbedding",VertexLabels->Placed["Name",Tooltip],ImageSize->400]},SynchronousInitialization->False,AppearanceElements->All,DisplayAllSteps->True,AnimationRate->8,RefreshRate->20]

Minimum-cost flow

Signals from the brain reaches the spinal cord to excite motor response

f=FindMinimumCostFlow[ag,(Entity["amygdala", Entity["AnatomicalStructure","Amygdala"], "Entity[\"AnatomicalStructure\", \"Amygdala\"]", "anatomical structure"]),(Entity["spinal cord", Entity["AnatomicalStructure","SpinalCord"], "Entity[\"AnatomicalStructure\", \"SpinalCord\"]", "anatomical structure"]),"OptimumFlowData"]

f["FlowGraph"]

Brain Anatomy (connectivity)

Visual pathway

AnatomyPlot3D[{(Entity["eye", Entity["AnatomicalStructure","Eye"], "Entity[\"AnatomicalStructure\", \"Eye\"]", "anatomical structure"]),(Entity["optic nerve", Entity["AnatomicalStructure","OpticNerve"], "Entity[\"AnatomicalStructure\", \"OpticNerve\"]", "anatomical structure"]),(Entity["optic chiasm", Entity["AnatomicalStructure","OpticChiasm"], "Entity[\"AnatomicalStructure\", \"OpticChiasm\"]", anatomical structure]),(Entity["optic tract", Entity["AnatomicalStructure","OpticTract"], "Entity[\"AnatomicalStructure\", \"OpticTract\"]", "anatomical structure"]),(Entity["lateral geniculate body", Entity["AnatomicalStructure","LateralGeniculateBody"], "Entity[\"AnatomicalStructure\", \"LateralGeniculateBody\"]", anatomical structure]),(Entity["occipital lobe", Entity["AnatomicalStructure","OccipitalLobe"], "Entity[\"AnatomicalStructure\", \"OccipitalLobe\"]", "anatomical structure"])}]/.Annotation[a_,b_]:>Tooltip[a,"Name"/.b]

Peripheral nerve innervating the left hand

The motor commands eventually reach the periphery

Find nerves that innervate the left hand:

nerve=(Entity["left hand", Entity["AnatomicalStructure","LeftHand"], "Entity[\"AnatomicalStructure\", \"LeftHand\"]", "anatomical structure"])[(EntityProperty["nerve supply", EntityProperty["AnatomicalStructure","NerveSupply"], "EntityProperty[\"AnatomicalStructure\", \"NerveSupply\"]"])]

And visualize them in 3D with the AnatomyPlot3D function:

AnatomyPlot3D[{nerve,Opacity[.3],(Entity["skeleton of left free upper limb", Entity["AnatomicalStructure","SkeletonOfLeftFreeUpperLimb"], "Entity[\"AnatomicalStructure\", \"SkeletonOfLeftFreeUpperLimb\"]", "anatomical structure"]),(Entity["left hand", Entity["AnatomicalStructure","LeftHand"], "Entity[\"AnatomicalStructure\", \"LeftHand\"]", "anatomical structure"])}]/.Annotation[x_,y_]:>Tooltip[x,"Name"/.y]

Neuron Characteristics

Information on over 300 types of neurons based on NeuroLex (Neuroscience Lexicon) and NeuroElectro (Neuron's electrophysiology information) database

Entity["Neuron"]["SampleEntities"]

(Joan Stiles,et al.,2010)

33 properties are available to describe physical, electrophysiological, and spatial characteristics of individual types of neurons

Entity["Neuron"]["Properties"]

Neurotransmitter released

EntityValue[(Entity["cerebellum Purkinje cell", Entity["Neuron","CerebellumPurkinjeCell"], "Entity[\"Neuron\", \"CerebellumPurkinjeCell\"]", "neuron"])[(EntityProperty["neurotransmitter released", EntityProperty["Neuron","NeurotransmitterReleased"], "EntityProperty[\"Neuron\", \"NeurotransmitterReleased\"]"])],{(EntityProperty["alternate names", EntityProperty["Chemical","AlternateNames"], "EntityProperty[\"Chemical\", \"AlternateNames\"]"]),(EntityProperty["molecule plot", EntityProperty["Chemical","MultiBondMoleculePlot"], "EntityProperty[\"Chemical\", \"MultiBondMoleculePlot\"]"])},"EntityPropertyAssociation"]

Soma location

(Entity["taste bud type 1 cell", Entity["Neuron","TasteBudType1Cell"], "Entity[\"Neuron\", \"TasteBudType1Cell\"]", "neuron"])[(EntityProperty["soma location", EntityProperty["Neuron","SomaLocation"], "EntityProperty[\"Neuron\", \"SomaLocation\"]"])]

Type of neurons found in Retina

(Entity["retina", Entity["AnatomicalStructure","Retina"], "Entity[\"AnatomicalStructure\", \"Retina\"]", "anatomical structure"])[(EntityProperty["neurons", EntityProperty["AnatomicalStructure","Neurons"], "EntityProperty[\"AnatomicalStructure\", \"Neurons\"]"])]

Neurons whose axons arborize at the auditory cortex

EntityList[]

Neuron Characteristics

Neurons use electrical signals to communicate with one another

Characteristics of spikes (action potentials) differ across different neuron types

Experimentally measured electrophysiological data

Dataset@EntityValue[(Entity["amygdala basolateral nuclear complex pyramidal neuron", Entity["Neuron","AmygdalaBasolateralNuclearComplexPyramidalNeuron"], "Entity[\"Neuron\", \"AmygdalaBasolateralNuclearComplexPyramidalNeuron\"]", "neuron"]),"NonMissingPropertyAssociation"][[2;;11]]

(Bruce P. Bean, 2007)

Spike frequency

ListLogPlot[{Callout[{1,#[[2]]},#[[1]],Appearance->"Leader"]}&/@SortBy[Normal@EntityValue[EntityList["Neuron"],(EntityProperty["average spontaneous firing rate", EntityProperty["Neuron","AverageSpontaneousFiringRate"], "EntityProperty[\"Neuron\", \"AverageSpontaneousFiringRate\"]"]),"NonMissingEntityAssociation"],Last],Axes->{None,True},AspectRatio->1.5,LabelStyle->12,PlotRangePadding->{{10,100},{1,.1}},FrameTicks->{None,Automatic},PlotTheme->"Business",PlotLabel->"Log-Spike frequency (Hz)"]

Excursion: model spiking neuron

Spike activity of a neuron can be simulated with Hodgkin and Huxley (HH) model

There are numerous variations of HH model that allow to simulate ensembles of spikes in a population of neurons

Manipulate[Block[{dcI,tr,s},
s=NDSolve[{
dcI=10 (* dc current *);
tr=200 (* time range *);
(* membrane potential *)
v'[t]==0.04v[t]^2+5v[t]+140-u[t]+dcI,
(* membrane recovery variable *)
u'[t]==a(b v[t]-u[t]),
v[0]==c,
u[0]==0,
WhenEvent[v[t]≥30,{v[t]->c,u[t]->u[t]+d}]},
{v,u},{t,tr}];
(* a: time scale of the recovery variable u *)
(* b: sensitivity of the recovery variable u to the subthreshold fluctuations of the membrane potential v *)
(* c: after-spike reset value of membrane potential v based on fast K+ conductances *)
(* d: after-spike reset of the recovery variable u based on slow Na+ and K+ 
conductances *)
Plot[Evaluate[v[t]/.s],{t,0,tr},PlotRange->All,PlotLabel->"Bursting neuron",AxesLabel->{"(ms)","(mv)"}]],{{a,.02,"time scale"},0,.1},{{b,.2,"sensitivity"},0,.5},{{c,-50,"fast reset"},-70,-20},{{d,2,"slow reset"},0,10}]

(Ref: E.M. Izhikevich, 2003)

Cognitive Map

Cognitive concepts represent brain's executive function such as memory, decision making, language, emotional state, perception...etc.

These concepts are hierarchically categorized

Over 800 concepts from CognitiveAtlas database are available to describe brain's cognitive function

Dataset@EntityValue[(Entity["decision making", Entity["AnatomicalFunctionalConcept","DecisionMaking"], "Entity[\"AnatomicalFunctionalConcept\", \"DecisionMaking\"]", "anatomical functional concept"]),{(EntityProperty["definition", EntityProperty["AnatomicalFunctionalConcept","Definition"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"Definition\"]"]),(EntityProperty["associated anatomical sites", EntityProperty["AnatomicalFunctionalConcept","AssociatedAnatomicalSites"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"AssociatedAnatomicalSites\"]"]),(EntityProperty["broader concepts", EntityProperty["AnatomicalFunctionalConcept","BroaderConcepts"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"BroaderConcepts\"]"]),(EntityProperty["narrower concepts", EntityProperty["AnatomicalFunctionalConcept","NarrowerConcepts"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"NarrowerConcepts\"]"]),(EntityProperty["superset concepts", EntityProperty["AnatomicalFunctionalConcept","SupersetConcepts"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"SupersetConcepts\"]"]),(EntityProperty["subset concepts", EntityProperty["AnatomicalFunctionalConcept","SubsetConcepts"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"SubsetConcepts\"]"]),(EntityProperty["standard experimental tasks", EntityProperty["AnatomicalFunctionalConcept","StandardExperimentalTasks"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"StandardExperimentalTasks\"]"])},"PropertyAssociation"]

Categorical relations across Decision making, Memory, and Perception

cog={(Entity["decision making", Entity["AnatomicalFunctionalConcept","DecisionMaking"], "Entity[\"AnatomicalFunctionalConcept\", \"DecisionMaking\"]", "anatomical functional concept"]),(Entity["memory", Entity["AnatomicalFunctionalConcept","Memory"], "Entity[\"AnatomicalFunctionalConcept\", \"Memory\"]", "anatomical functional concept"]),(Entity["perception", Entity["AnatomicalFunctionalConcept","Perception"], "Entity[\"AnatomicalFunctionalConcept\", \"Perception\"]", "anatomical functional concept"])};

g=NestGraph[Cases[EntityValue[#,(EntityProperty["narrower concepts", EntityProperty["AnatomicalFunctionalConcept","NarrowerConcepts"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"NarrowerConcepts\"]"])],_Entity,Infinity]&,cog,4,PlotTheme->"Marketing",GraphHighlight->cog,GraphLayout->"RadialEmbedding",VertexSize->2,EdgeStyle->LightGray,VertexStyle->Orange,VertexLabels->Placed["Name",Tooltip]]

CommunityGraphPlot[g,VertexSize->.7]

Cognitive Map

Cognitive concepts associated with each cerebral lobe

lobes={(Entity["frontal lobe", Entity["AnatomicalStructure","FrontalLobe"], "Entity[\"AnatomicalStructure\", \"FrontalLobe\"]", "anatomical structure"]),(Entity["insula", Entity["AnatomicalStructure","Insula"], "Entity[\"AnatomicalStructure\", \"Insula\"]", "anatomical structure"]),(Entity["parietal lobe", Entity["AnatomicalStructure","ParietalLobe"], "Entity[\"AnatomicalStructure\", \"ParietalLobe\"]", "anatomical structure"]),(Entity["temporal lobe", Entity["AnatomicalStructure","TemporalLobe"], "Entity[\"AnatomicalStructure\", \"TemporalLobe\"]", "anatomical structure"]),(Entity["limbic lobe", Entity["AnatomicalStructure","LimbicLobe"], "Entity[\"AnatomicalStructure\", \"LimbicLobe\"]", "anatomical structure"]),(Entity["occipital lobe", Entity["AnatomicalStructure","OccipitalLobe"], "Entity[\"AnatomicalStructure\", \"OccipitalLobe\"]", "anatomical structure"])};

(Entity["frontal lobe", Entity["AnatomicalStructure","FrontalLobe"], "Entity[\"AnatomicalStructure\", \"FrontalLobe\"]", "anatomical structure"])[(EntityProperty["functional categories", EntityProperty["AnatomicalStructure","FunctionalCategories"], "EntityProperty[\"AnatomicalStructure\", \"FunctionalCategories\"]"])]

Manipulate[ImageCollage[{(lobe/.lobeToConcept)[[1]],WordCloud[(lobe/.lobeToConcept)[[2]],PlotTheme->"Marketing",WordSpacings->3,ImagePadding->30]},ImageSize->600],{lobe,{(Entity["frontal lobe", Entity["AnatomicalStructure","FrontalLobe"], "Entity[\"AnatomicalStructure\", \"FrontalLobe\"]", "anatomical structure"]),(Entity["insula", Entity["AnatomicalStructure","Insula"], "Entity[\"AnatomicalStructure\", \"Insula\"]", "anatomical structure"]),(Entity["parietal lobe", Entity["AnatomicalStructure","ParietalLobe"], "Entity[\"AnatomicalStructure\", \"ParietalLobe\"]", "anatomical structure"]),(Entity["temporal lobe", Entity["AnatomicalStructure","TemporalLobe"], "Entity[\"AnatomicalStructure\", \"TemporalLobe\"]", "anatomical structure"]),(Entity["limbic lobe", Entity["AnatomicalStructure","LimbicLobe"], "Entity[\"AnatomicalStructure\", \"LimbicLobe\"]", "anatomical structure"]),(Entity["occipital lobe", Entity["AnatomicalStructure","OccipitalLobe"], "Entity[\"AnatomicalStructure\", \"OccipitalLobe\"]", "anatomical structure"])}},Initialization:>{lobeToConcept=#->EntityValue[#,{,(EntityProperty["functional categories", EntityProperty["AnatomicalStructure","FunctionalCategories"], "EntityProperty[\"AnatomicalStructure\", \"FunctionalCategories\"]"])}]&/@{(Entity["frontal lobe", Entity["AnatomicalStructure","FrontalLobe"], "Entity[\"AnatomicalStructure\", \"FrontalLobe\"]", "anatomical structure"]),(Entity["insula", Entity["AnatomicalStructure","Insula"], "Entity[\"AnatomicalStructure\", \"Insula\"]", "anatomical structure"]),(Entity["parietal lobe", Entity["AnatomicalStructure","ParietalLobe"], "Entity[\"AnatomicalStructure\", \"ParietalLobe\"]", "anatomical structure"]),(Entity["temporal lobe", Entity["AnatomicalStructure","TemporalLobe"], "Entity[\"AnatomicalStructure\", \"TemporalLobe\"]", "anatomical structure"]),(Entity["limbic lobe", Entity["AnatomicalStructure","LimbicLobe"], "Entity[\"AnatomicalStructure\", \"LimbicLobe\"]", "anatomical structure"]),(Entity["occipital lobe", Entity["AnatomicalStructure","OccipitalLobe"], "Entity[\"AnatomicalStructure\", \"OccipitalLobe\"]", "anatomical structure"])}},SynchronousUpdating->False,SynchronousInitialization->False]

Cognitive Map

fMRI based brain activation map

Statistical maps of brain activity

Based on meta-analysis of task-based fMRI

Decision making

(Entity["decision making", Entity["AnatomicalFunctionalConcept","DecisionMaking"], "Entity[\"AnatomicalFunctionalConcept\", \"DecisionMaking\"]", "anatomical functional concept"])[(EntityProperty["brain image coronal slices", EntityProperty["AnatomicalFunctionalConcept","BrainImageCoronalSlices"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"BrainImageCoronalSlices\"]"])]

(Entity["decision making", Entity["AnatomicalFunctionalConcept","DecisionMaking"], "Entity[\"AnatomicalFunctionalConcept\", \"DecisionMaking\"]", "anatomical functional concept"])[(EntityProperty["standard experimental tasks", EntityProperty["AnatomicalFunctionalConcept","StandardExperimentalTasks"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"StandardExperimentalTasks\"]"])]

(Entity["Iowa gambling task", Entity["CognitiveTask","IowaGamblingTask"], "Entity[\"CognitiveTask\", \"IowaGamblingTask\"]", "cognitive task"])[(EntityProperty["definition", EntityProperty["CognitiveTask","Definition"], "EntityProperty[\"CognitiveTask\", \"Definition\"]"])]

(Entity["Iowa gambling task", Entity["CognitiveTask","IowaGamblingTask"], "Entity[\"CognitiveTask\", \"IowaGamblingTask\"]", "cognitive task"])[(EntityProperty["contrasts", EntityProperty["CognitiveTask","Contrasts"], "EntityProperty[\"CognitiveTask\", \"Contrasts\"]"])]

Play Iowa gambling task

c=0;Manipulate[Column[{Grid[{Graphics[{FaceForm[If[MatchQ[#,StringTrim[deck,"Deck "]],LightRed,LightGray]],EdgeForm[Directive[Thick,GrayLevel[.4]]],Polygon[{{0,0},{1,0},{1,2},{0,2}}]},{Epilog->Text[Style[#,FontSize->20,GrayLevel[.4]],{.5,1}]},ImageSize->38]&/@{"A","B","C","D"}}],"",Grid[{{"Trial #",("Trial#"/.scorefun)},{"Current Gain","$"<>ToString@("Gain"/.scorefun)},{"Current Loss","$"<>ToString@("Loss"/.scorefun)},{"Previous Total","$"<>ToString@lastTotal},{"Current Total","$"<>ToString@(lastTotal+("Total"/.scorefun))}},Spacings->{{3,2},1},BaseStyle->{FontFamily->"Arial"},Frame->All,FrameStyle->Directive[Thick,White],Background->GrayLevel[.94]]}],{{deck,"",""},{"Deck A","Deck B","Deck C","Deck D"},TrackingFunction->{deck=#;&,(lastTotal=lastTotal+("Total"/.scorefun));&,scorefun=score[deck];&},Appearance->"Palette"},{{lastTotal,2000},None},{{scorefun,{"Loss"->0,"Gain"->0,"Total"->0,"Trial#"->Dynamic[c]}},None},Initialization:>{deck1Loss=RandomSample[{0,0,0,0,0,-150,-200,-250,-300,-350},10];deck2Loss=RandomSample[{0,0,0,0,0,0,0,0,0,-1250},10];deck3Loss=RandomSample[{0,0,0,0,0,-50,-50,-50,-50,-50},10];deck4Loss=RandomSample[{0,0,0,0,0,0,0,0,0,-250},10];
deck1Gain=100;
deck2Gain=100;
deck3Gain=50;
deck4Gain=50;
score[d_]:=Block[{rand,loss,gain,total},
c++;
rand=Last@IntegerDigits[c]/.(0->10);
loss=Which[MatchQ[d,"Deck A"],deck1Loss[[rand]],MatchQ[d,"Deck B"],deck2Loss[[rand]],MatchQ[d,"Deck C"],deck3Loss[[rand]],MatchQ[d,"Deck D"],deck4Loss[[rand]],True,{0}];gain=Which[MatchQ[d,"Deck A"],deck1Gain,MatchQ[d,"Deck B"],deck2Gain,MatchQ[d,"Deck C"],deck3Gain,MatchQ[d,"Deck D"],deck4Gain,True,0];
total=loss+gain;
{"Trial#"->c,"Gain"->gain,"Loss"->loss,"Total"->total}]},SynchronousUpdating->False]

Image recognition test

Animate[{"",,,,,,,,,,,,,,,""}[[n]],{n,1,16,1},AnimationRate->8,DisplayAllSteps->True,AnimationRepetitions->3,AnimationRunning->False,AppearanceElements->All,ContentSize -> {200,200},SynchronousInitialization->False]

Cognitive Map

Higher activity in specific areas of brain

Arithmetic processing

(Entity["arithmetic processing", Entity["AnatomicalFunctionalConcept","ArithmeticProcessing"], "Entity[\"AnatomicalFunctionalConcept\", \"ArithmeticProcessing\"]", "anatomical functional concept"])[(EntityProperty["definition", EntityProperty["AnatomicalFunctionalConcept","Definition"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"Definition\"]"])]

(Entity["arithmetic processing", Entity["AnatomicalFunctionalConcept","ArithmeticProcessing"], "Entity[\"AnatomicalFunctionalConcept\", \"ArithmeticProcessing\"]", "anatomical functional concept"])[(EntityProperty["brain activation 3D graphic", EntityProperty["AnatomicalFunctionalConcept","BrainActivation3DGraphic"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"BrainActivation3DGraphic\"]"])]

Language

ImageCollage@EntityValue[(Entity["language", Entity["AnatomicalFunctionalConcept","Language"], "Entity[\"AnatomicalFunctionalConcept\", \"Language\"]", "anatomical functional concept"]),{(EntityProperty["brain graphic front", EntityProperty["AnatomicalFunctionalConcept","BrainGraphicFront"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"BrainGraphicFront\"]"]),(EntityProperty["brain image coronal slices", EntityProperty["AnatomicalFunctionalConcept","BrainImageCoronalSlices"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"BrainImageCoronalSlices\"]"]),(EntityProperty["brain image horizontal slices", EntityProperty["AnatomicalFunctionalConcept","BrainImageHorizontalSlices"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"BrainImageHorizontalSlices\"]"]),(EntityProperty["brain image sagittal slices", EntityProperty["AnatomicalFunctionalConcept","BrainImageSagittalSlices"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"BrainImageSagittalSlices\"]"])}]

Emotion

ImageCollage@EntityValue[(Entity["emotion", Entity["AnatomicalFunctionalConcept","Emotion"], "Entity[\"AnatomicalFunctionalConcept\", \"Emotion\"]", "anatomical functional concept"]),{(EntityProperty["brain graphic front", EntityProperty["AnatomicalFunctionalConcept","BrainGraphicFront"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"BrainGraphicFront\"]"]),(EntityProperty["brain image coronal slices", EntityProperty["AnatomicalFunctionalConcept","BrainImageCoronalSlices"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"BrainImageCoronalSlices\"]"]),(EntityProperty["brain image horizontal slices", EntityProperty["AnatomicalFunctionalConcept","BrainImageHorizontalSlices"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"BrainImageHorizontalSlices\"]"]),(EntityProperty["brain image sagittal slices", EntityProperty["AnatomicalFunctionalConcept","BrainImageSagittalSlices"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"BrainImageSagittalSlices\"]"])}]

Further computation

3D graphic of brain activation area associated with emotion:

em=(Entity["emotion", Entity["AnatomicalFunctionalConcept","Emotion"], "Entity[\"AnatomicalFunctionalConcept\", \"Emotion\"]", "anatomical functional concept"])[(EntityProperty["activation areas 3D graphic", EntityProperty["AnatomicalFunctionalConcept","ActivationAreas3DGraphic"], "EntityProperty[\"AnatomicalFunctionalConcept\", \"ActivationAreas3DGraphic\"]"])]

Combine above graphic together with the brain model for visual comparison:

AnatomyPlot3D[{em/.Opacity[_]:>Opacity[.4],{Directive[Specularity[White,30],Hue[.58,0,1,.12],Lighting->light],(Entity["right cerebral hemisphere", Entity["AnatomicalStructure","RightCerebralHemisphere"], "Entity[\"AnatomicalStructure\", \"RightCerebralHemisphere\"]", "anatomical structure"])},{Glow[Red],(Entity["right amygdala", Entity["AnatomicalStructure","RightAmygdala"], "Entity[\"AnatomicalStructure\", \"RightAmygdala\"]", "anatomical structure"])}},PlotRange->(Entity["right cerebral hemisphere", Entity["AnatomicalStructure","RightCerebralHemisphere"], "Entity[\"AnatomicalStructure\", \"RightCerebralHemisphere\"]", "anatomical structure"]) ,Background->Hue[.58,1,.3],ViewPoint->Right,SphericalRegion->True,BaseStyle->{RenderingOptions->{"DepthPeelingLayers"->20}}]

Cognitive Map

Visual perception

Brain categorizes our visually perceived faces, places, string, numbers...etc. with distinctive patterns of activity

Graph below illustrates how these concepts are hierarchically organized

Summary

New set of neuroscience data is accessible in Wolfram Language

Information about brain's regional anatomy, neuronal connectivity, and statistical cognitive maps are available

Neuroanatomically divided areas of the brain describe the structural and functional organization of the human nervous system

Connectivity across brain areas can be computed and visualized

Individual types of neurons can be characterized for spike analysis

Brain activity associated with a particular cognitive process can be mapped and visualized

Future plans

Pathway

Information on individual brain circuits

Sensorimotor pathways

Further detailed Connectome map

(Human Connectome Project)

Future plans

Animal Anatomy

In addition to human anatomy data, anatomical information for other species including dogs will be added.

Model examples:

({{Skeletal System, Cardiovascular System, Muscular System}, {, , }})

To scale to human: