(* Content-type: application/vnd.wolfram.mathematica *) (*** Wolfram Notebook File ***) (* http://www.wolfram.com/nb *) (* CreatedBy='Mathematica 11.3' *) (*CacheID: 234*) (* Internal cache information: NotebookFileLineBreakTest NotebookFileLineBreakTest NotebookDataPosition[ 158, 7] NotebookDataLength[ 114701, 2490] NotebookOptionsPosition[ 111718, 2427] NotebookOutlinePosition[ 112026, 2442] CellTagsIndexPosition[ 111983, 2439] WindowFrame->Normal*) (* Beginning of Notebook Content *) Notebook[{ Cell[CellGroupData[{ Cell[TextData[{ StyleBox["Construction Notebook for:", FontSize->24], "\nLeNet Trained on MNIST Data" }], "Title"], Cell[CellGroupData[{ Cell["NetModel Access", "Subsection", CellChangeTimes->{{3.695474314080426*^9, 3.695474346087426*^9}}], Cell[CellGroupData[{ Cell["This Notebook", "Subsubsection", CellChangeTimes->{{3.6954750910664797`*^9, 3.695475092737351*^9}}], Cell[BoxData[ RowBox[{"NetModel", "[", RowBox[{ "\"\\"", ",", " ", "\"\\""}], "]"}]], "Input"] }, Open ]], Cell[CellGroupData[{ Cell["Untrained Net", "Subsubsection", CellChangeTimes->{{3.6954750978333807`*^9, 3.695475133273511*^9}}], Cell[BoxData[ RowBox[{"NetModel", "[", RowBox[{ "\"\\"", ",", "\"\\""}], "]"}]], "Input"] }, Open ]], Cell[CellGroupData[{ Cell["Trained Net", "Subsubsection", CellChangeTimes->{{3.6954751072255173`*^9, 3.6954751086815357`*^9}}], Cell[BoxData[ RowBox[{"NetModel", "[", "\"\\"", "]"}]], "Input"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["Net Construction", "Section", CellChangeTimes->{3.695625386014464*^9}], Cell[CellGroupData[{ Cell["Final Net", "Subsection", CellChangeTimes->{{3.695106779945572*^9, 3.695106780985426*^9}}], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"lenet", "=", RowBox[{"NetChain", "[", RowBox[{ RowBox[{"{", "\[IndentingNewLine]", RowBox[{ RowBox[{"ConvolutionLayer", "[", RowBox[{"20", ",", RowBox[{"{", RowBox[{"5", ",", "5"}], "}"}]}], "]"}], ",", "\[IndentingNewLine]", RowBox[{"ElementwiseLayer", "[", "Ramp", "]"}], ",", "\[IndentingNewLine]", RowBox[{"PoolingLayer", "[", RowBox[{ RowBox[{"{", RowBox[{"2", ",", "2"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", "2"}], "}"}]}], "]"}], ",", "\[IndentingNewLine]", RowBox[{"ConvolutionLayer", "[", RowBox[{"50", ",", RowBox[{"{", RowBox[{"5", ",", "5"}], "}"}]}], "]"}], ",", "\[IndentingNewLine]", RowBox[{"ElementwiseLayer", "[", "Ramp", "]"}], ",", "\[IndentingNewLine]", RowBox[{"PoolingLayer", "[", RowBox[{ RowBox[{"{", RowBox[{"2", ",", "2"}], "}"}], ",", RowBox[{"{", RowBox[{"2", ",", "2"}], "}"}]}], "]"}], ",", "\[IndentingNewLine]", RowBox[{"FlattenLayer", "[", "]"}], ",", "\[IndentingNewLine]", RowBox[{"DotPlusLayer", "[", "500", "]"}], ",", "\[IndentingNewLine]", RowBox[{"ElementwiseLayer", "[", "Ramp", "]"}], ",", "\[IndentingNewLine]", RowBox[{"DotPlusLayer", "[", "10", "]"}], ",", "\[IndentingNewLine]", RowBox[{"SoftmaxLayer", "[", "]"}]}], "\[IndentingNewLine]", "}"}], ",", "\[IndentingNewLine]", RowBox[{"\"\\"", "\[Rule]", RowBox[{"NetDecoder", "[", RowBox[{"{", RowBox[{"\"\\"", ",", RowBox[{"Range", "[", RowBox[{"0", ",", "9"}], "]"}]}], "}"}], "]"}]}], ",", "\[IndentingNewLine]", RowBox[{"\"\\"", "\[Rule]", RowBox[{"NetEncoder", "[", RowBox[{"{", RowBox[{"\"\\"", ",", RowBox[{"{", RowBox[{"28", ",", "28"}], "}"}], ",", "\"\\""}], "}"}], "]"}]}]}], "\[IndentingNewLine]", "]"}]}]], "Input"], Cell[BoxData[ StyleBox[ TagBox[ TagBox[ RowBox[{"NetChain", "[", PanelBox[ TagBox[GridBox[{ {"\<\"\"\>", "\<\"Input\"\>", TagBox[GridBox[{ {"\<\"image\"\>"}, { TemplateBox[{ "\"3-tensor\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{ "\[Times]", "\"\[Times]\"", "\"1\"", "\"28\"", "\"28\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]} }, BaselinePosition->2, DefaultBaseStyle->"Column", GridBoxAlignment->{"Columns" -> {{Left}}}, GridBoxItemSize->{ "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}], "Column"]}, { StyleBox["\<\"1\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["ConvolutionLayer", StripOnInput->False, FontColor->RGBColor[ Rational[2, 3], 0, 0], $CellContext`LineColor -> RGBColor[ Rational[2, 3], 0, 0], $CellContext`FrontFaceColor -> RGBColor[ Rational[2, 3], 0, 0], $CellContext`BackFaceColor -> RGBColor[ Rational[2, 3], 0, 0], $CellContext`GraphicsColor -> RGBColor[ Rational[2, 3], 0, 0]], TemplateBox[{ "\"3-tensor\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{ "\[Times]", "\"\[Times]\"", "\"20\"", "\"24\"", "\"24\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"2\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["Ramp", StripOnInput->False, FontColor->GrayLevel[0], $CellContext`LineColor -> GrayLevel[0], $CellContext`FrontFaceColor -> GrayLevel[0], $CellContext`BackFaceColor -> GrayLevel[0], $CellContext`GraphicsColor -> GrayLevel[0]], TemplateBox[{ "\"3-tensor\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{ "\[Times]", "\"\[Times]\"", "\"20\"", "\"24\"", "\"24\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"3\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["PoolingLayer", StripOnInput->False, FontColor->GrayLevel[0], $CellContext`LineColor -> GrayLevel[0], $CellContext`FrontFaceColor -> GrayLevel[0], $CellContext`BackFaceColor -> GrayLevel[0], $CellContext`GraphicsColor -> GrayLevel[0]], TemplateBox[{ "\"3-tensor\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{ "\[Times]", "\"\[Times]\"", "\"20\"", "\"12\"", "\"12\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"4\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["ConvolutionLayer", StripOnInput->False, FontColor->RGBColor[ Rational[2, 3], 0, 0], $CellContext`LineColor -> RGBColor[ Rational[2, 3], 0, 0], $CellContext`FrontFaceColor -> RGBColor[ Rational[2, 3], 0, 0], $CellContext`BackFaceColor -> RGBColor[ Rational[2, 3], 0, 0], $CellContext`GraphicsColor -> RGBColor[ Rational[2, 3], 0, 0]], TemplateBox[{ "\"3-tensor\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{ "\[Times]", "\"\[Times]\"", "\"50\"", "\"8\"", "\"8\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"5\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["Ramp", StripOnInput->False, FontColor->GrayLevel[0], $CellContext`LineColor -> GrayLevel[0], $CellContext`FrontFaceColor -> GrayLevel[0], $CellContext`BackFaceColor -> GrayLevel[0], $CellContext`GraphicsColor -> GrayLevel[0]], TemplateBox[{ "\"3-tensor\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{ "\[Times]", "\"\[Times]\"", "\"50\"", "\"8\"", "\"8\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"6\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["PoolingLayer", StripOnInput->False, FontColor->GrayLevel[0], $CellContext`LineColor -> GrayLevel[0], $CellContext`FrontFaceColor -> GrayLevel[0], $CellContext`BackFaceColor -> GrayLevel[0], $CellContext`GraphicsColor -> GrayLevel[0]], TemplateBox[{ "\"3-tensor\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{ "\[Times]", "\"\[Times]\"", "\"50\"", "\"4\"", "\"4\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"7\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["FlattenLayer", StripOnInput->False, FontColor->GrayLevel[0], $CellContext`LineColor -> GrayLevel[0], $CellContext`FrontFaceColor -> GrayLevel[0], $CellContext`BackFaceColor -> GrayLevel[0], $CellContext`GraphicsColor -> GrayLevel[0]], TemplateBox[{ "\"vector\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{"\[Times]", "\"\[Times]\"", "\"800\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"8\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["LinearLayer", StripOnInput->False, FontColor->RGBColor[ Rational[2, 3], 0, 0], $CellContext`LineColor -> RGBColor[ Rational[2, 3], 0, 0], $CellContext`FrontFaceColor -> RGBColor[ Rational[2, 3], 0, 0], $CellContext`BackFaceColor -> RGBColor[ Rational[2, 3], 0, 0], $CellContext`GraphicsColor -> RGBColor[ Rational[2, 3], 0, 0]], TemplateBox[{ "\"vector\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{"\[Times]", "\"\[Times]\"", "\"500\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"9\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["Ramp", StripOnInput->False, FontColor->GrayLevel[0], $CellContext`LineColor -> GrayLevel[0], $CellContext`FrontFaceColor -> GrayLevel[0], $CellContext`BackFaceColor -> GrayLevel[0], $CellContext`GraphicsColor -> GrayLevel[0]], TemplateBox[{ "\"vector\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{"\[Times]", "\"\[Times]\"", "\"500\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"10\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["LinearLayer", StripOnInput->False, FontColor->RGBColor[ Rational[2, 3], 0, 0], $CellContext`LineColor -> RGBColor[ Rational[2, 3], 0, 0], $CellContext`FrontFaceColor -> RGBColor[ Rational[2, 3], 0, 0], $CellContext`BackFaceColor -> RGBColor[ Rational[2, 3], 0, 0], $CellContext`GraphicsColor -> RGBColor[ Rational[2, 3], 0, 0]], TemplateBox[{ "\"vector\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{"\[Times]", "\"\[Times]\"", "\"10\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"11\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["SoftmaxLayer", StripOnInput->False, FontColor->GrayLevel[0], $CellContext`LineColor -> GrayLevel[0], $CellContext`FrontFaceColor -> GrayLevel[0], $CellContext`BackFaceColor -> GrayLevel[0], $CellContext`GraphicsColor -> GrayLevel[0]], TemplateBox[{ "\"vector\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{"\[Times]", "\"\[Times]\"", "\"10\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, {"\<\"\"\>", "\<\"Output\"\>", "\<\"class\"\>"}, { ItemBox[ StyleBox["\<\"(uninitialized)\"\>", StripOnInput->False, FontSize->Small, FontColor->RGBColor[ Rational[2, 3], 0, 0], $CellContext`LineColor -> RGBColor[ Rational[2, 3], 0, 0], $CellContext`FrontFaceColor -> RGBColor[ Rational[2, 3], 0, 0], $CellContext`BackFaceColor -> RGBColor[ Rational[2, 3], 0, 0], $CellContext`GraphicsColor -> RGBColor[ Rational[2, 3], 0, 0]], Alignment->Center, StripOnInput->False], "\[SpanFromLeft]", "\[SpanFromLeft]"} }, AutoDelete->False, GridBoxAlignment->{"Columns" -> {{Left}}}, GridBoxItemSize->{"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, GridBoxSpacings->{"Columns" -> {{1.1}}}], "Grid"], BaselinePosition->Automatic], "]"}], False], Deploy], LineBreakWithin->False]], "Output"] }, Open ]] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["Training", "Section", CellChangeTimes->{{3.695474798960601*^9, 3.69547479969661*^9}}], Cell["Obtain the training and validation data:", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"resource", " ", "=", " ", RowBox[{"ResourceObject", "[", "\"\\"", "]"}]}]], "Input"], Cell[BoxData[ InterpretationBox[ RowBox[{ TagBox["ResourceObject", "SummaryHead"], "[", DynamicModuleBox[{Typeset`open$$ = False}, PanelBox[ PaneSelectorBox[{False->GridBox[{ { PaneBox[ ButtonBox[ DynamicBox[FEPrivate`FrontEndResource[ "FEBitmaps", "SquarePlusIconMedium"], ImageSizeCache->{12., {0., 12.}}], Appearance->None, ButtonFunction:>(Typeset`open$$ = True), Evaluator->Automatic, Method->"Preemptive"], Alignment->{Center, Center}, ImageSize-> Dynamic[{ Automatic, 3.5 CurrentValue["FontCapHeight"]/AbsoluteCurrentValue[ Magnification]}]], GraphicsBox[ {Thickness[0.011111111111111112`], {FaceForm[{RGBColor[0.648987, 0.648987, 0.648987], Opacity[1.]}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{3.789, 7.266}, {86.20700000000001, 7.266}, {86.20700000000001, 3.266}, { 3.789, 3.266}}}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{14.129, 54.07}, {19.878999999999998`, 54.07}, {19.878999999999998`, 15.57}, {14.129, 15.57}}}]}, {FaceForm[{RGBColor[0.274612, 0.618881, 0.810913], Opacity[1.]}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{24.129, 41.82}, {29.879, 41.82}, {29.879, 15.57}, {24.129, 15.57}}}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{ 33.160000000000004`, 54.07}, {38.910000000000004`, 54.07}, { 38.910000000000004`, 15.57}, {33.160000000000004`, 15.57}}}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{42.191, 31.781}, {47.941, 31.781}, {47.941, 15.569999999999997`}, { 42.191, 15.569999999999997`}}}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{ 51.223000000000006`, 46.875}, {56.973000000000006`, 46.875}, { 56.973000000000006`, 15.57}, {51.223000000000006`, 15.57}}}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{60.254, 37.707}, {66.00399999999999, 37.707}, {66.00399999999999, 15.569999999999997`}, {60.254, 15.569999999999997`}}}]}, {FaceForm[{RGBColor[0.648987, 0.648987, 0.648987], Opacity[1.]}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{ 70.12899999999999, 54.07}, {75.87899999999999, 54.07}, { 75.87899999999999, 15.57}, {70.12899999999999, 15.57}}}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{ 9.879000000000001, 60.547}, {24.129, 60.547}, {24.129, 56.547}, { 9.879000000000001, 56.547}}}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{9.871, 13.097999999999999`}, {80.121, 13.097999999999999`}, {80.121, 9.097999999999999}, {9.871, 9.097999999999999}}}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{ 65.87899999999999, 60.547}, {80.12899999999999, 60.547}, { 80.12899999999999, 56.547}, {65.87899999999999, 56.547}}}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}}, {{0, 2, 0}, {0, 1, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{11.469000000000001`, 66.54700000000001}, {45., 82.418}, {78.398, 66.54700000000001}}, {{45., 86.73400000000001}, { 2.2230000000000003`, 66.54700000000001}, {2.2230000000000003`, 62.547}, {87.777, 62.547}, {87.777, 66.54700000000001}}}]}}, AspectRatio->1, Axes->False, Background->None, Frame->None, FrameTicks->None, ImageSize->{Automatic, Dynamic[ 3.5 (CurrentValue["FontCapHeight"]/AbsoluteCurrentValue[ Magnification]), ImageSizeCache -> {45., {0., 9.}}]}], GridBox[{ { RowBox[{ TagBox["\<\"Name: \"\>", "SummaryItemAnnotation"], "\[InvisibleSpace]", TagBox[ TemplateBox[{"\"MNIST\"","\" \"",TagBox[ ButtonBox[ PaneSelectorBox[{ False -> "\"\[RightGuillemet]\"", True -> StyleBox["\"\[RightGuillemet]\"", {"HyperlinkActive"}]}, Dynamic[ CurrentValue["MouseOver"]], BaseStyle -> {"Hyperlink"}, FrameMargins -> 0, ImageSize -> Automatic], BaseStyle -> "Hyperlink", ButtonData -> { URL[ "https://datarepository.wolframcloud.com/resources/MNIST"]\ , None}, ButtonNote -> "https://datarepository.wolframcloud.com/resources/MNIST"], Annotation[#, URL[ "https://datarepository.wolframcloud.com/resources/MNIST"], "Hyperlink"]& ]}, "RowDefault"], "SummaryItem"]}]}, { RowBox[{ TagBox["\<\"Type: \"\>", "SummaryItemAnnotation"], "\[InvisibleSpace]", TagBox["\<\"DataResource\"\>", "SummaryItem"]}]}, { TagBox[ DynamicModuleBox[{ResourceSystemClient`Private`len$$ = 1}, RowBox[{ TagBox["\<\"Description: \"\>", "SummaryItemAnnotation"], "\[InvisibleSpace]", TagBox[ ButtonBox[ DynamicBox[ToBoxes[ Replace[ ResourceSystemClient`Private`snipDots[ "Database of handwritten digits commonly used for \ training image processing systems", ResourceSystemClient`Private`len$$], Except[ Blank[String]] -> Snippet[ "Database of handwritten digits commonly used for \ training image processing systems", ResourceSystemClient`Private`len$$], {0}], StandardForm], ImageSizeCache->{271., {16., 9.}}], Appearance->None, BaseStyle->{}, ButtonFunction:>(ResourceSystemClient`Private`len$$ = Ceiling[ResourceSystemClient`Private`len$$ 1.5]), Evaluator->Automatic, Method->"Preemptive"], "SummaryItem"]}], DynamicModuleValues:>{}], "SummaryItem"]} }, AutoDelete->False, BaseStyle->{ ShowStringCharacters -> False, NumberMarks -> False, PrintPrecision -> 3, ShowSyntaxStyles -> False}, GridBoxAlignment->{"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, GridBoxItemSize->{ "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, GridBoxSpacings->{"Columns" -> {{2}}, "Rows" -> {{Automatic}}}]} }, AutoDelete->False, BaselinePosition->{1, 1}, GridBoxAlignment->{"Rows" -> {{Top}}}, GridBoxItemSize->{ "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}], True-> GridBox[{ { PaneBox[ ButtonBox[ DynamicBox[FEPrivate`FrontEndResource[ "FEBitmaps", "SquareMinusIconMedium"]], Appearance->None, ButtonFunction:>(Typeset`open$$ = False), Evaluator->Automatic, Method->"Preemptive"], Alignment->{Center, Center}, ImageSize-> Dynamic[{ Automatic, 3.5 CurrentValue["FontCapHeight"]/AbsoluteCurrentValue[ Magnification]}]], GraphicsBox[ {Thickness[0.011111111111111112`], {FaceForm[{RGBColor[0.648987, 0.648987, 0.648987], Opacity[1.]}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{3.789, 7.266}, {86.20700000000001, 7.266}, {86.20700000000001, 3.266}, { 3.789, 3.266}}}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{14.129, 54.07}, {19.878999999999998`, 54.07}, {19.878999999999998`, 15.57}, {14.129, 15.57}}}]}, {FaceForm[{RGBColor[0.274612, 0.618881, 0.810913], Opacity[1.]}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{24.129, 41.82}, {29.879, 41.82}, {29.879, 15.57}, {24.129, 15.57}}}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{ 33.160000000000004`, 54.07}, {38.910000000000004`, 54.07}, { 38.910000000000004`, 15.57}, {33.160000000000004`, 15.57}}}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{42.191, 31.781}, {47.941, 31.781}, {47.941, 15.569999999999997`}, { 42.191, 15.569999999999997`}}}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{ 51.223000000000006`, 46.875}, {56.973000000000006`, 46.875}, { 56.973000000000006`, 15.57}, {51.223000000000006`, 15.57}}}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{60.254, 37.707}, {66.00399999999999, 37.707}, {66.00399999999999, 15.569999999999997`}, {60.254, 15.569999999999997`}}}]}, {FaceForm[{RGBColor[0.648987, 0.648987, 0.648987], Opacity[1.]}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{ 70.12899999999999, 54.07}, {75.87899999999999, 54.07}, { 75.87899999999999, 15.57}, {70.12899999999999, 15.57}}}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{ 9.879000000000001, 60.547}, {24.129, 60.547}, {24.129, 56.547}, { 9.879000000000001, 56.547}}}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{9.871, 13.097999999999999`}, {80.121, 13.097999999999999`}, {80.121, 9.097999999999999}, {9.871, 9.097999999999999}}}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{ 65.87899999999999, 60.547}, {80.12899999999999, 60.547}, { 80.12899999999999, 56.547}, {65.87899999999999, 56.547}}}], FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}}, {{0, 2, 0}, {0, 1, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{11.469000000000001`, 66.54700000000001}, {45., 82.418}, {78.398, 66.54700000000001}}, {{45., 86.73400000000001}, { 2.2230000000000003`, 66.54700000000001}, {2.2230000000000003`, 62.547}, {87.777, 62.547}, {87.777, 66.54700000000001}}}]}}, AspectRatio->1, Axes->False, Background->None, Frame->None, FrameTicks->None, ImageSize->{Automatic, Dynamic[ 3.5 (CurrentValue["FontCapHeight"]/AbsoluteCurrentValue[ Magnification]), ImageSizeCache -> {45., {0., 9.}}]}], GridBox[{ { RowBox[{ TagBox["\<\"Name: \"\>", "SummaryItemAnnotation"], "\[InvisibleSpace]", TagBox[ TemplateBox[{"\"MNIST\"","\" \"",TagBox[ ButtonBox[ PaneSelectorBox[{ False -> "\"\[RightGuillemet]\"", True -> StyleBox["\"\[RightGuillemet]\"", {"HyperlinkActive"}]}, Dynamic[ CurrentValue["MouseOver"]], BaseStyle -> {"Hyperlink"}, FrameMargins -> 0, ImageSize -> Automatic], BaseStyle -> "Hyperlink", ButtonData -> { URL[ "https://datarepository.wolframcloud.com/resources/MNIST"]\ , None}, ButtonNote -> "https://datarepository.wolframcloud.com/resources/MNIST"], Annotation[#, URL[ "https://datarepository.wolframcloud.com/resources/MNIST"], "Hyperlink"]& ]}, "RowDefault"], "SummaryItem"]}]}, { RowBox[{ TagBox["\<\"Type: \"\>", "SummaryItemAnnotation"], "\[InvisibleSpace]", TagBox["\<\"DataResource\"\>", "SummaryItem"]}]}, { TagBox[ DynamicModuleBox[{ResourceSystemClient`Private`len$$ = 1}, RowBox[{ TagBox["\<\"Description: \"\>", "SummaryItemAnnotation"], "\[InvisibleSpace]", TagBox[ ButtonBox[ DynamicBox[ToBoxes[ Replace[ ResourceSystemClient`Private`snipDots[ "Database of handwritten digits commonly used for \ training image processing systems", ResourceSystemClient`Private`len$$], Except[ Blank[String]] -> Snippet[ "Database of handwritten digits commonly used for \ training image processing systems", ResourceSystemClient`Private`len$$], {0}], StandardForm]], Appearance->None, BaseStyle->{}, ButtonFunction:>(ResourceSystemClient`Private`len$$ = Ceiling[ResourceSystemClient`Private`len$$ 1.5]), Evaluator->Automatic, Method->"Preemptive"], "SummaryItem"]}], DynamicModuleValues:>{}], "SummaryItem"]}, { RowBox[{ TagBox["\<\"Categories: \"\>", "SummaryItemAnnotation"], "\[InvisibleSpace]", TagBox[ TagBox[ TemplateBox[{",","\",\"","\"Machine Learning\""}, "RowWithSeparators"], Short], "SummaryItem"]}]}, { RowBox[{ TagBox["\<\"ContentTypes: \"\>", "SummaryItemAnnotation"], "\[InvisibleSpace]", TagBox[ TagBox[ TemplateBox[{",","\",\"","\"Image\""}, "RowWithSeparators"], Short], "SummaryItem"]}]}, { RowBox[{ TagBox["\<\"Keywords: \"\>", "SummaryItemAnnotation"], "\[InvisibleSpace]", TagBox[ TagBox[ TemplateBox[{ ",","\",\"","\"image processing\"","\"machine learning\"", "\"classification\"","\"computer vision\""}, "RowWithSeparators"], Short], "SummaryItem"]}]}, { RowBox[{ TagBox["\<\"Documentation: \"\>", "SummaryItemAnnotation"], "\[InvisibleSpace]", TagBox[ TagBox[ ButtonBox[ PaneSelectorBox[{ False->"\<\"https://datarepository.wolframcloud.com/\ resources/MNIST\"\>", True-> StyleBox["\<\"https://datarepository.wolframcloud.com/\ resources/MNIST\"\>", "HyperlinkActive"]}, Dynamic[ CurrentValue["MouseOver"]], BaseStyle->{"Hyperlink"}, FrameMargins->0, ImageSize->Automatic], BaseStyle->"Hyperlink", ButtonData->{ URL[ "https://datarepository.wolframcloud.com/resources/MNIST"], None}, ButtonNote-> "https://datarepository.wolframcloud.com/resources/MNIST"], Annotation[#, URL[ "https://datarepository.wolframcloud.com/resources/MNIST"], "Hyperlink"]& ], "SummaryItem"]}]}, { RowBox[{ TagBox["\<\"Data Location: \"\>", "SummaryItemAnnotation"], "\[InvisibleSpace]", TagBox[ DynamicModuleBox[{DataResource`Private`typesetstorage$$ = DataResource`Private`typesetstorageLocation, DataResource`Private`info$$}, DynamicBox[ToBoxes[ DataResource`Private`info$$ = DataResource`Private`resourceInfo[ "16ff8400-2ffb-4642-b626-8e583258924e"]; If[ AssociationQ[DataResource`Private`info$$], DataResource`Private`typesetstorage$$[ Lookup[ DataResource`Private`info$$, "ContentElementLocations", None]], Missing["NotAvailable"]], StandardForm]], DynamicModuleValues:>{}], "SummaryItem"]}]}, { RowBox[{ TagBox["\<\"UUID: \"\>", "SummaryItemAnnotation"], "\[InvisibleSpace]", TagBox["\<\"16ff8400-2ffb-4642-b626-8e583258924e\"\>", "SummaryItem"]}]}, { RowBox[{ TagBox["\<\"Version: \"\>", "SummaryItemAnnotation"], "\[InvisibleSpace]", TagBox["\<\"1.0.0\"\>", "SummaryItem"]}]}, { RowBox[{ TagBox["\<\"Size: \"\>", "SummaryItemAnnotation"], "\[InvisibleSpace]", TagBox[ RowBox[{"\[LeftAssociation]", RowBox[{ RowBox[{"\<\"TestData\"\>", "\[Rule]", "11680080"}], ",", RowBox[{"\<\"TrainingData\"\>", "\[Rule]", "70080080"}]}], "\[RightAssociation]"}], "SummaryItem"]}]}, { RowBox[{ TagBox["\<\"Elements: \"\>", "SummaryItemAnnotation"], "\[InvisibleSpace]", TagBox[ TagBox[ TemplateBox[{ ",","\",\"","\"TestData\"","\"TestDataset\"", "\"TrainingData\"","\"TrainingDataset\""}, "RowWithSeparators"], Short[#, 2]& ], "SummaryItem"]}]} }, AutoDelete->False, BaseStyle->{ ShowStringCharacters -> False, NumberMarks -> False, PrintPrecision -> 3, ShowSyntaxStyles -> False}, GridBoxAlignment->{"Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, GridBoxItemSize->{ "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, GridBoxSpacings->{"Columns" -> {{2}}, "Rows" -> {{Automatic}}}]} }, AutoDelete->False, BaselinePosition->{1, 1}, GridBoxAlignment->{"Rows" -> {{Top}}}, GridBoxItemSize->{ "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}]}, Dynamic[ Typeset`open$$], ImageSize->Automatic], BaselinePosition->Baseline], DynamicModuleValues:>{}], "]"}], ResourceObject[ Association[ "Name" -> "MNIST", "UUID" -> "16ff8400-2ffb-4642-b626-8e583258924e", "ResourceType" -> "DataResource", "Version" -> "1.0.0", "Description" -> "Database of handwritten digits commonly used for training image \ processing systems", "ContentSize" -> Association["TestData" -> 11680080, "TrainingData" -> 70080080], "ContentElements" -> { "TestData", "TestDataset", "TrainingData", "TrainingDataset"}]], Editable->False, SelectWithContents->True, Selectable->False]], "Output"] }, Open ]], Cell[BoxData[{ RowBox[{ RowBox[{"trainingData", "=", RowBox[{"ResourceData", "[", RowBox[{"resource", ",", "\"\\""}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"testData", "=", RowBox[{"ResourceData", "[", RowBox[{"resource", ",", "\"\\""}], "]"}]}], ";"}]}], "Input"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"RandomSample", "[", RowBox[{"trainingData", ",", "5"}], "]"}]], "Input"], Cell[BoxData[ RowBox[{"{", RowBox[{ RowBox[{ GraphicsBox[ TagBox[RasterBox[CompressedData[" 1:eJxTTMoPSmNiYGAo5gASQYnljkVFiZXBAkBOaF5xZnpeaopnXklqemqRRRJI mQwU/x+0oI6xApfUXUUmM1xy25lwy9nhkTNlYlqNW078Im45W1xSz1Rxy21g YkrCI7cPl9xrDaY4XHL43EKB3AQ8chvJMrOeyeo3LrkdzExFODXOV67CKUcd AABuJOXa "], {{0, 28}, {28, 0}}, {0, 255}, ColorFunction->GrayLevel], BoxForm`ImageTag["Byte", ColorSpace -> Automatic, Interleaving -> None], Selectable->False], DefaultBaseStyle->"ImageGraphics", ImageSizeRaw->{28, 28}, PlotRange->{{0, 28}, {0, 28}}], "\[Rule]", "1"}], ",", RowBox[{ GraphicsBox[ TagBox[RasterBox[CompressedData[" 1:eJxTTMoPSmNiYGAo5gASQYnljkVFiZXBAkBOaF5xZnpeaopnXklqemqRRRJI mQwU/x9OoJ3JZMPX//9/1zM9RpdaIMfMzGRdM8WHmRlDroiZWZOJGSiPVU7z 8fUS6QwTLHKfDAw/gdUwhWO65fhxMKXOXIjTuUzMx3HLmf7EJXWAwQqntlIm a5xycnjl8nBJnedjWI1LbhUzxz5cci3Mcjits8Itd1+KSRaX3DFm5kw8cn04 zZRmPoDTLagAABHQ0j0= "], {{0, 28}, {28, 0}}, {0, 255}, ColorFunction->GrayLevel], BoxForm`ImageTag["Byte", ColorSpace -> Automatic, Interleaving -> None], Selectable->False], DefaultBaseStyle->"ImageGraphics", ImageSizeRaw->{28, 28}, PlotRange->{{0, 28}, {0, 28}}], "\[Rule]", "7"}], ",", RowBox[{ GraphicsBox[ TagBox[RasterBox[CompressedData[" 1:eJxTTMoPSmNiYGAo5gASQYnljkVFiZXBAkBOaF5xZnpeaopnXklqemqRRRJI mQwU/x+s4GCQVvqOV9jlPJiYmZgVYtdikepjYtTSZGJkEk3H0HtNjFnr69ez /fZAvSZocjGMTIVgRkts4SE0ORMm7dc4HFnNxJiBywNMzGJncUjBbcMCTJiY TdBdAAMtjECfBT3ALnm2Bhgq9riM/V/IyIRTbiYTMzbhMyCbZjIyHcSUWssk DtGHLWQYmETPfAliZMIWPzvEmeyrmZlCsLqjRRToP+7r2B15xp5JG4cUFQEA 0UzAJw== "], {{0, 28}, {28, 0}}, {0, 255}, ColorFunction->GrayLevel], BoxForm`ImageTag["Byte", ColorSpace -> Automatic, Interleaving -> None], Selectable->False], DefaultBaseStyle->"ImageGraphics", ImageSizeRaw->{28, 28}, PlotRange->{{0, 28}, {0, 28}}], "\[Rule]", "5"}], ",", RowBox[{ GraphicsBox[ TagBox[RasterBox[CompressedData[" 1:eJxTTMoPSmNiYGAo5gASQYnljkVFiZXBAkBOaF5xZnpeaopnXklqemqRRRJI mQwU/6cm+LRArQaXXBYjYxR2mctZLIz6vVilLvkwMqodwCo1W4CRUegaNplH VcKMjCpHsEn9PsjEyMhzG5vUCTcVRrHyZ9ikHjozMjLHYnXF/whGRsa9WGUe ZQsxina/xCb1q56R0eD3//856dt/odvlIMVovfH/HQd+RpsfqFLnuRgZla/+ /2QFtFL/C6pcECOj+av/G7T5gXL+qFLljIz13/+vkWdkxJD7pMVo+eP/RFmg hAwjZx26Nr1wFVaQJn7d9ahG2jJCgPTChTbn0TzwWJ+BkVE7jDEPm8cHPwAA W4SfDw== "], {{0, 28}, {28, 0}}, {0, 255}, ColorFunction->GrayLevel], BoxForm`ImageTag["Byte", ColorSpace -> Automatic, Interleaving -> None], Selectable->False], DefaultBaseStyle->"ImageGraphics", ImageSizeRaw->{28, 28}, PlotRange->{{0, 28}, {0, 28}}], "\[Rule]", "6"}], ",", RowBox[{ GraphicsBox[ TagBox[RasterBox[CompressedData[" 1:eJxTTMoPSmNiYGAo5gASQYnljkVFiZXBAkBOaF5xZnpeaopnXklqemqRRRJI mQwU/6cGWMCQhUtqO0vAXVxyLiyHcUktYc/BaZspy1FcUm9l7HBqy2fcgFNO h+c2Lqm/2jE4tV3GY2Q14ykg+ayKzfkGhpwr42kgqcKorZj4GV1ORezl/z8e DBrnjoo1Ysip/v9fzmh/5f//Yh8MOblvz5TtQMb5qaLLGTCezgY79bu8Ibrc UbZoR7BcC2MNhkPDGU0Z2/7/uuHCfRBD7qsuIyOjmwmj5GYMqf//v+VFyjBY 9NzBIjW4AQC7c87Q "], {{0, 28}, {28, 0}}, {0, 255}, ColorFunction->GrayLevel], BoxForm`ImageTag["Byte", ColorSpace -> Automatic, Interleaving -> None], Selectable->False], DefaultBaseStyle->"ImageGraphics", ImageSizeRaw->{28, 28}, PlotRange->{{0, 28}, {0, 28}}], "\[Rule]", "6"}]}], "}"}]], "Output"] }, Open ]], Cell["Train the net:", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"trainedLenet", "=", RowBox[{"NetTrain", "[", RowBox[{"lenet", ",", "trainingData", ",", RowBox[{"ValidationSet", "\[Rule]", "testData"}]}], "]"}]}]], "Input"], Cell[BoxData[ StyleBox[ TagBox[ TagBox[ RowBox[{"NetChain", "[", PanelBox[ TagBox[GridBox[{ {"\<\"\"\>", "\<\"Input\"\>", TagBox[GridBox[{ {"\<\"image\"\>"}, { TemplateBox[{ "\"3-tensor\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{ "\[Times]", "\"\[Times]\"", "\"1\"", "\"28\"", "\"28\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]} }, BaselinePosition->2, DefaultBaseStyle->"Column", GridBoxAlignment->{"Columns" -> {{Left}}}, GridBoxItemSize->{ "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}], "Column"]}, { StyleBox["\<\"1\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["ConvolutionLayer", StripOnInput->False, FontColor->GrayLevel[0], $CellContext`LineColor -> GrayLevel[0], $CellContext`FrontFaceColor -> GrayLevel[0], $CellContext`BackFaceColor -> GrayLevel[0], $CellContext`GraphicsColor -> GrayLevel[0]], TemplateBox[{ "\"3-tensor\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{ "\[Times]", "\"\[Times]\"", "\"20\"", "\"24\"", "\"24\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"2\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["Ramp", StripOnInput->False, FontColor->GrayLevel[0], $CellContext`LineColor -> GrayLevel[0], $CellContext`FrontFaceColor -> GrayLevel[0], $CellContext`BackFaceColor -> GrayLevel[0], $CellContext`GraphicsColor -> GrayLevel[0]], TemplateBox[{ "\"3-tensor\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{ "\[Times]", "\"\[Times]\"", "\"20\"", "\"24\"", "\"24\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"3\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["PoolingLayer", StripOnInput->False, FontColor->GrayLevel[0], $CellContext`LineColor -> GrayLevel[0], $CellContext`FrontFaceColor -> GrayLevel[0], $CellContext`BackFaceColor -> GrayLevel[0], $CellContext`GraphicsColor -> GrayLevel[0]], TemplateBox[{ "\"3-tensor\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{ "\[Times]", "\"\[Times]\"", "\"20\"", "\"12\"", "\"12\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"4\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["ConvolutionLayer", StripOnInput->False, FontColor->GrayLevel[0], $CellContext`LineColor -> GrayLevel[0], $CellContext`FrontFaceColor -> GrayLevel[0], $CellContext`BackFaceColor -> GrayLevel[0], $CellContext`GraphicsColor -> GrayLevel[0]], TemplateBox[{ "\"3-tensor\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{ "\[Times]", "\"\[Times]\"", "\"50\"", "\"8\"", "\"8\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"5\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["Ramp", StripOnInput->False, FontColor->GrayLevel[0], $CellContext`LineColor -> GrayLevel[0], $CellContext`FrontFaceColor -> GrayLevel[0], $CellContext`BackFaceColor -> GrayLevel[0], $CellContext`GraphicsColor -> GrayLevel[0]], TemplateBox[{ "\"3-tensor\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{ "\[Times]", "\"\[Times]\"", "\"50\"", "\"8\"", "\"8\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"6\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["PoolingLayer", StripOnInput->False, FontColor->GrayLevel[0], $CellContext`LineColor -> GrayLevel[0], $CellContext`FrontFaceColor -> GrayLevel[0], $CellContext`BackFaceColor -> GrayLevel[0], $CellContext`GraphicsColor -> GrayLevel[0]], TemplateBox[{ "\"3-tensor\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{ "\[Times]", "\"\[Times]\"", "\"50\"", "\"4\"", "\"4\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"7\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["FlattenLayer", StripOnInput->False, FontColor->GrayLevel[0], $CellContext`LineColor -> GrayLevel[0], $CellContext`FrontFaceColor -> GrayLevel[0], $CellContext`BackFaceColor -> GrayLevel[0], $CellContext`GraphicsColor -> GrayLevel[0]], TemplateBox[{ "\"vector\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{"\[Times]", "\"\[Times]\"", "\"800\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"8\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["LinearLayer", StripOnInput->False, FontColor->GrayLevel[0], $CellContext`LineColor -> GrayLevel[0], $CellContext`FrontFaceColor -> GrayLevel[0], $CellContext`BackFaceColor -> GrayLevel[0], $CellContext`GraphicsColor -> GrayLevel[0]], TemplateBox[{ "\"vector\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{"\[Times]", "\"\[Times]\"", "\"500\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"9\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["Ramp", StripOnInput->False, FontColor->GrayLevel[0], $CellContext`LineColor -> GrayLevel[0], $CellContext`FrontFaceColor -> GrayLevel[0], $CellContext`BackFaceColor -> GrayLevel[0], $CellContext`GraphicsColor -> GrayLevel[0]], TemplateBox[{ "\"vector\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{"\[Times]", "\"\[Times]\"", "\"500\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"10\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["LinearLayer", StripOnInput->False, FontColor->GrayLevel[0], $CellContext`LineColor -> GrayLevel[0], $CellContext`FrontFaceColor -> GrayLevel[0], $CellContext`BackFaceColor -> GrayLevel[0], $CellContext`GraphicsColor -> GrayLevel[0]], TemplateBox[{ "\"vector\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{"\[Times]", "\"\[Times]\"", "\"10\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, { StyleBox["\<\"11\"\>", StripOnInput->False, FontColor->GrayLevel[0.5], $CellContext`LineColor -> GrayLevel[0.5], $CellContext`FrontFaceColor -> GrayLevel[0.5], $CellContext`BackFaceColor -> GrayLevel[0.5], $CellContext`GraphicsColor -> GrayLevel[0.5]], StyleBox["SoftmaxLayer", StripOnInput->False, FontColor->GrayLevel[0], $CellContext`LineColor -> GrayLevel[0], $CellContext`FrontFaceColor -> GrayLevel[0], $CellContext`BackFaceColor -> GrayLevel[0], $CellContext`GraphicsColor -> GrayLevel[0]], TemplateBox[{ "\"vector\"","\" \"", TemplateBox[{ "\"(\"", "\"\[VeryThinSpace]\"", "\"size\"", "\":\"", "\" \"", TemplateBox[{"\[Times]", "\"\[Times]\"", "\"10\""}, "RowWithSeparators"], "\"\[VeryThinSpace]\"", "\")\""}, "Row", DisplayFunction -> (RowBox[{ TemplateSlotSequence[1, "\[InvisibleSpace]"]}]& ), InterpretationFunction -> (RowBox[{"Row", "[", RowBox[{ RowBox[{"{", TemplateSlotSequence[1, ","], "}"}], ",", RowBox[{"BaseStyle", "\[Rule]", InterpretationBox[ ButtonBox[ TooltipBox[ GraphicsBox[{{ GrayLevel[0], RectangleBox[{0, 0}]}, { GrayLevel[0], RectangleBox[{1, -1}]}, { GrayLevel[0.5], RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame -> True, FrameStyle -> GrayLevel[0.33333333333333337`], FrameTicks -> None, PlotRangePadding -> None, ImageSize -> Dynamic[{ Automatic, 1.35 CurrentValue["FontCapHeight"]/ AbsoluteCurrentValue[Magnification]}]], "GrayLevel[0.5]"], Appearance -> None, BaseStyle -> {}, BaselinePosition -> Baseline, DefaultBaseStyle -> {}, ButtonFunction :> With[{Typeset`box$ = EvaluationBox[]}, If[ Not[ AbsoluteCurrentValue["Deployed"]], SelectionMove[Typeset`box$, All, Expression]; FrontEnd`Private`$ColorSelectorInitialAlpha = 1; FrontEnd`Private`$ColorSelectorInitialColor = GrayLevel[0.5]; FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; MathLink`CallFrontEnd[ FrontEnd`AttachCell[Typeset`box$, FrontEndResource["GrayLevelColorValueSelector"], { 0, {Left, Bottom}}, {Left, Top}, "ClosingActions" -> { "SelectionDeparture", "ParentChanged", "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator -> Automatic, Method -> "Preemptive"], GrayLevel[0.5], Editable -> False, Selectable -> False]}]}], "]"}]& ), BaseStyle -> GrayLevel[0.5]]}, "RowDefault"]}, {"\<\"\"\>", "\<\"Output\"\>", "\<\"class\"\>"} }, AutoDelete->False, GridBoxAlignment->{"Columns" -> {{Left}}}, GridBoxItemSize->{"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, GridBoxSpacings->{"Columns" -> {{1.1}}}], "Grid"], BaselinePosition->Automatic], "]"}], False], Deploy], LineBreakWithin->False]], "Output"] }, Open ]], Cell["Make a prediction with the trained net:", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"trainedLenet", "[", GraphicsBox[ TagBox[RasterBox[CompressedData[" 1:eJxTTMoPSmNiYGAo5gASQYnljkVFiZXBAkBOaF5xZnpeaopnXklqemqRRRJI mQwU/x9OoJ3JZMPX//9/1zM9RpdaIMfMzGRdM8WHmRlDroiZWZOJGSiPVU7z 8fUS6QwTLHKfDAw/gdUwhWO65fhxMKXOXIjTuUzMx3HLmf7EJXWAwQqntlIm a5xycnjl8nBJnedjWI1LbhUzxz5cci3Mcjits8Itd1+KSRaX3DFm5kw8cn04 zZRmPoDTLagAABHQ0j0= "], {{0, 28}, {28, 0}}, {0, 255}, ColorFunction->GrayLevel], BoxForm`ImageTag["Byte", ColorSpace -> Automatic, Interleaving -> None], Selectable->False], DefaultBaseStyle->"ImageGraphics", ImageSizeRaw->{28, 28}, PlotRange->{{0, 28}, {0, 28}}], "]"}]], "Input"], Cell[BoxData["7"], "Output"] }, Open ]] }, Open ]] }, Open ]] }, WindowSize->Automatic, WindowMargins->Automatic, FrontEndVersion->"11.3 for Linux x86 (64-bit) (March 6, 2018)", StyleDefinitions->"Default.nb" ] (* End of Notebook Content *) (* Internal cache information *) (*CellTagsOutline CellTagsIndex->{} *) (*CellTagsIndex CellTagsIndex->{} *) (*NotebookFileOutline Notebook[{ Cell[CellGroupData[{ Cell[580, 22, 118, 4, 70, "Title",ExpressionUUID->"bbf1dcba-d0e0-4c5b-b939-4eb349c54fb4"], Cell[CellGroupData[{ Cell[723, 30, 103, 1, 70, "Subsection",ExpressionUUID->"327487ed-dcdf-46c4-9812-6a0721913e4c"], Cell[CellGroupData[{ Cell[851, 35, 106, 1, 70, "Subsubsection",ExpressionUUID->"f6b054d1-aa01-4629-87d3-12e5a8b52cd7"], Cell[960, 38, 157, 4, 70, "Input",ExpressionUUID->"00406913-ddda-45c1-850c-4356fa4d8817"] }, Open ]], Cell[CellGroupData[{ Cell[1154, 47, 106, 1, 70, "Subsubsection",ExpressionUUID->"e7894dc8-a561-4c01-8d70-c7f2db9d1bc3"], Cell[1263, 50, 158, 4, 70, "Input",ExpressionUUID->"285b0dbb-5edb-40db-ae97-a45885de3b97"] }, Open ]], Cell[CellGroupData[{ Cell[1458, 59, 106, 1, 70, "Subsubsection",ExpressionUUID->"335990aa-fb0f-4d12-a5c7-3dc60a2e48b3"], Cell[1567, 62, 98, 2, 70, "Input",ExpressionUUID->"6684a864-c195-4d56-89b0-0c3c70bb6b91"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[1714, 70, 77, 1, 70, "Section",ExpressionUUID->"1297c205-2997-44c3-aa1d-67290721b3fc"], Cell[CellGroupData[{ Cell[1816, 75, 97, 1, 70, "Subsection",ExpressionUUID->"63e16a1a-2701-4602-b23a-8517a2f8fda6"], Cell[CellGroupData[{ Cell[1938, 80, 2093, 54, 70, "Input",ExpressionUUID->"012e6fc1-5635-4341-bf86-f6ee8cc7a2c4"], Cell[4034, 136, 41973, 861, 70, "Output",ExpressionUUID->"f13bf610-6de8-4b8d-882c-dfa9c94ed620"] }, Open ]] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[46068, 1004, 92, 1, 70, "Section",ExpressionUUID->"211d811a-89f0-4506-8673-d9049594389a"], Cell[46163, 1007, 56, 0, 70, "Text",ExpressionUUID->"c12a5faf-5b39-475b-94f4-884ccbbf8866"], Cell[CellGroupData[{ Cell[46244, 1011, 119, 2, 70, "Input",ExpressionUUID->"00519e96-ce8e-45d4-98f9-edf0dce832be"], Cell[46366, 1015, 19650, 440, 70, "Output",ExpressionUUID->"e09a023e-ead2-447a-bbc7-236372f0266f"] }, Open ]], Cell[66031, 1458, 336, 9, 70, "Input",ExpressionUUID->"0ff80436-05fa-438d-9d29-9a5bb83cd39f"], Cell[CellGroupData[{ Cell[66392, 1471, 99, 2, 70, "Input",ExpressionUUID->"f16424fe-6a27-49d7-bb47-d2ea4e88af24"], Cell[66494, 1475, 3456, 85, 70, "Output",ExpressionUUID->"52eccd8c-5876-412d-b308-593123500c4c"] }, Open ]], Cell[69965, 1563, 30, 0, 70, "Text",ExpressionUUID->"bfaa75a7-7d04-4d77-bb00-b38ef3732284"], Cell[CellGroupData[{ Cell[70020, 1567, 194, 4, 70, "Input",ExpressionUUID->"1fd00788-e06d-4ed3-af7c-fd344576fd75"], Cell[70217, 1573, 40683, 825, 70, "Output",ExpressionUUID->"66eea183-692d-4c31-85f5-ed0513a1e741"] }, Open ]], Cell[110915, 2401, 55, 0, 70, "Text",ExpressionUUID->"52f3ce3d-0c89-45bf-a113-44a3b3e31e7c"], Cell[CellGroupData[{ Cell[110995, 2405, 652, 15, 70, "Input",ExpressionUUID->"8bbe8bf5-2406-4eeb-986c-bcb19224ecb7"], Cell[111650, 2422, 28, 0, 70, "Output",ExpressionUUID->"5cc301ce-8178-44d7-b45f-ceb0c572372c"] }, Open ]] }, Open ]] }, Open ]] } ] *) (* End of internal cache information *)