mirror of
https://github.com/TheAlgorithms/C-Plus-Plus.git
synced 2026-03-25 22:32:24 +08:00
321 lines
15 KiB
XML
321 lines
15 KiB
XML
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
|
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
<!-- Generated by graphviz version 5.0.1 (20220820.1526)
|
|
-->
|
|
<!-- Title: machine_learning/neural_network.cpp Pages: 1 -->
|
|
<!--zoomable 148 -->
|
|
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
|
|
<style type="text/css"><![CDATA[
|
|
.edge:hover path { stroke: red; }
|
|
.edge:hover polygon { stroke: red; fill: red; }
|
|
]]></style>
|
|
<script type="text/javascript"><![CDATA[
|
|
var edges = document.getElementsByTagName('g');
|
|
if (edges && edges.length) {
|
|
for (var i=0;i<edges.length;i++) {
|
|
if (edges[i].id.substr(0,4)=='edge') {
|
|
edges[i].setAttribute('class','edge');
|
|
}
|
|
}
|
|
}
|
|
]]></script>
|
|
<defs>
|
|
<circle id="rim" cx="0" cy="0" r="7"/>
|
|
<circle id="rim2" cx="0" cy="0" r="3.5"/>
|
|
<g id="zoomPlus">
|
|
<use xlink:href="#rim" fill="#404040">
|
|
<set attributeName="fill" to="#808080" begin="zoomplus.mouseover" end="zoomplus.mouseout"/>
|
|
</use>
|
|
<path d="M-4,0h8M0,-4v8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
|
|
</g>
|
|
<g id="zoomMin">
|
|
<use xlink:href="#rim" fill="#404040">
|
|
<set attributeName="fill" to="#808080" begin="zoomminus.mouseover" end="zoomminus.mouseout"/>
|
|
</use>
|
|
<path d="M-4,0h8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
|
|
</g>
|
|
<g id="dirArrow">
|
|
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
|
</g>
|
|
<g id="resetDef">
|
|
<use xlink:href="#rim2" fill="#404040">
|
|
<set attributeName="fill" to="#808080" begin="reset.mouseover" end="reset.mouseout"/>
|
|
</use>
|
|
</g>
|
|
</defs>
|
|
|
|
<script type="text/javascript">
|
|
var viewWidth = 687;
|
|
var viewHeight = 148;
|
|
var sectionId = 'dynsection-0';
|
|
</script>
|
|
<script xlink:href="../../svgpan.js"/>
|
|
<svg id="graph" class="graph">
|
|
<g id="viewport">
|
|
<title>machine_learning/neural_network.cpp</title>
|
|
<!-- Node1 -->
|
|
<g id="node1" class="node">
|
|
<title>Node1</title>
|
|
<g id="a_node1"><a xlink:title="Implementation of [Multilayer Perceptron] (https://en.wikipedia.org/wiki/Multilayer_perceptron).">
|
|
<polygon fill="#999999" stroke="#666666" points="402,-140 280,-140 280,-110 402,-110 402,-140"/>
|
|
<text text-anchor="start" x="288" y="-128" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning/neural</text>
|
|
<text text-anchor="middle" x="341" y="-117" font-family="Helvetica,sans-Serif" font-size="10.00">_network.cpp</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- Node2 -->
|
|
<g id="node2" class="node">
|
|
<title>Node2</title>
|
|
<g id="a_node2"><a xlink:title=" ">
|
|
<polygon fill="#e0e0e0" stroke="#999999" points="56,-19 0,-19 0,0 56,0 56,-19"/>
|
|
<text text-anchor="middle" x="28" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">algorithm</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- Node1->Node2 -->
|
|
<g id="edge1" class="edge">
|
|
<title>Node1->Node2</title>
|
|
<path fill="none" stroke="#63b8ff" d="M279.97,-113.48C239.17,-105.34 184.78,-92.34 139,-74 105.82,-60.7 70.47,-39.02 48.81,-24.75"/>
|
|
<polygon fill="#63b8ff" stroke="#63b8ff" points="50.66,-21.78 40.4,-19.14 46.77,-27.6 50.66,-21.78"/>
|
|
</g>
|
|
<!-- Node3 -->
|
|
<g id="node3" class="node">
|
|
<title>Node3</title>
|
|
<g id="a_node3"><a xlink:title=" ">
|
|
<polygon fill="#e0e0e0" stroke="#999999" points="418.5,-74 369.5,-74 369.5,-55 418.5,-55 418.5,-74"/>
|
|
<text text-anchor="middle" x="394" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">cassert</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- Node1->Node3 -->
|
|
<g id="edge2" class="edge">
|
|
<title>Node1->Node3</title>
|
|
<path fill="none" stroke="#63b8ff" d="M353.83,-109.84C361.52,-101.35 371.33,-90.52 379.33,-81.69"/>
|
|
<polygon fill="#63b8ff" stroke="#63b8ff" points="381.94,-84.03 386.06,-74.27 376.75,-79.33 381.94,-84.03"/>
|
|
</g>
|
|
<!-- Node4 -->
|
|
<g id="node4" class="node">
|
|
<title>Node4</title>
|
|
<g id="a_node4"><a xlink:title=" ">
|
|
<polygon fill="#e0e0e0" stroke="#999999" points="120,-19 74,-19 74,0 120,0 120,-19"/>
|
|
<text text-anchor="middle" x="97" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">chrono</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- Node1->Node4 -->
|
|
<g id="edge3" class="edge">
|
|
<title>Node1->Node4</title>
|
|
<path fill="none" stroke="#63b8ff" d="M279.95,-113.35C245.59,-105.68 202.74,-93.23 168,-74 145.75,-61.68 124.6,-41.24 111.27,-26.89"/>
|
|
<polygon fill="#63b8ff" stroke="#63b8ff" points="113.67,-24.32 104.37,-19.25 108.47,-29.02 113.67,-24.32"/>
|
|
</g>
|
|
<!-- Node5 -->
|
|
<g id="node5" class="node">
|
|
<title>Node5</title>
|
|
<g id="a_node5"><a xlink:title=" ">
|
|
<polygon fill="#e0e0e0" stroke="#999999" points="481,-74 437,-74 437,-55 481,-55 481,-74"/>
|
|
<text text-anchor="middle" x="459" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">cmath</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- Node1->Node5 -->
|
|
<g id="edge4" class="edge">
|
|
<title>Node1->Node5</title>
|
|
<path fill="none" stroke="#63b8ff" d="M369.26,-109.99C388.42,-100.49 413.58,-88.02 432.39,-78.69"/>
|
|
<polygon fill="#63b8ff" stroke="#63b8ff" points="434.17,-81.72 441.57,-74.14 431.06,-75.45 434.17,-81.72"/>
|
|
</g>
|
|
<!-- Node6 -->
|
|
<g id="node6" class="node">
|
|
<title>Node6</title>
|
|
<g id="a_node6"><a xlink:title=" ">
|
|
<polygon fill="#e0e0e0" stroke="#999999" points="549,-74 499,-74 499,-55 549,-55 549,-74"/>
|
|
<text text-anchor="middle" x="524" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">fstream</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- Node1->Node6 -->
|
|
<g id="edge5" class="edge">
|
|
<title>Node1->Node6</title>
|
|
<path fill="none" stroke="#63b8ff" d="M384.83,-109.99C416.71,-99.8 459.29,-86.18 488.93,-76.71"/>
|
|
<polygon fill="#63b8ff" stroke="#63b8ff" points="490.37,-79.93 498.83,-73.55 488.24,-73.26 490.37,-79.93"/>
|
|
</g>
|
|
<!-- Node7 -->
|
|
<g id="node7" class="node">
|
|
<title>Node7</title>
|
|
<g id="a_node7"><a xlink:title=" ">
|
|
<polygon fill="#e0e0e0" stroke="#999999" points="192,-19 138,-19 138,0 192,0 192,-19"/>
|
|
<text text-anchor="middle" x="165" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">iostream</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- Node1->Node7 -->
|
|
<g id="edge6" class="edge">
|
|
<title>Node1->Node7</title>
|
|
<path fill="none" stroke="#63b8ff" d="M279.93,-118.92C246.75,-113.05 207.42,-100.54 182,-74 170.54,-62.03 166.61,-43.22 165.36,-29.17"/>
|
|
<polygon fill="#63b8ff" stroke="#63b8ff" points="168.85,-28.95 164.83,-19.14 161.86,-29.31 168.85,-28.95"/>
|
|
</g>
|
|
<!-- Node8 -->
|
|
<g id="node8" class="node">
|
|
<title>Node8</title>
|
|
<g id="a_node8"><a xlink:title=" ">
|
|
<polygon fill="#e0e0e0" stroke="#999999" points="619,-74 567,-74 567,-55 619,-55 619,-74"/>
|
|
<text text-anchor="middle" x="593" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">sstream</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- Node1->Node8 -->
|
|
<g id="edge7" class="edge">
|
|
<title>Node1->Node8</title>
|
|
<path fill="none" stroke="#63b8ff" d="M402.31,-110.08C443.42,-100.69 499.03,-87.91 556.62,-74.31"/>
|
|
<polygon fill="#63b8ff" stroke="#63b8ff" points="557.71,-77.65 566.63,-71.94 556.1,-70.83 557.71,-77.65"/>
|
|
</g>
|
|
<!-- Node9 -->
|
|
<g id="node9" class="node">
|
|
<title>Node9</title>
|
|
<g id="a_node9"><a xlink:title=" ">
|
|
<polygon fill="#e0e0e0" stroke="#999999" points="678.5,-74 637.5,-74 637.5,-55 678.5,-55 678.5,-74"/>
|
|
<text text-anchor="middle" x="658" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">string</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- Node1->Node9 -->
|
|
<g id="edge8" class="edge">
|
|
<title>Node1->Node9</title>
|
|
<path fill="none" stroke="#63b8ff" d="M402.11,-115.23C458.24,-106.75 543.88,-92.75 627.49,-73.9"/>
|
|
<polygon fill="#63b8ff" stroke="#63b8ff" points="628.44,-77.27 637.42,-71.64 626.89,-70.45 628.44,-77.27"/>
|
|
</g>
|
|
<!-- Node10 -->
|
|
<g id="node10" class="node">
|
|
<title>Node10</title>
|
|
<g id="a_node10"><a xlink:title=" ">
|
|
<polygon fill="#e0e0e0" stroke="#999999" points="328.5,-19 277.5,-19 277.5,0 328.5,0 328.5,-19"/>
|
|
<text text-anchor="middle" x="303" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">valarray</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- Node1->Node10 -->
|
|
<g id="edge9" class="edge">
|
|
<title>Node1->Node10</title>
|
|
<path fill="none" stroke="#63b8ff" d="M336.19,-109.63C329.32,-89.12 316.72,-51.47 309.17,-28.93"/>
|
|
<polygon fill="#63b8ff" stroke="#63b8ff" points="312.42,-27.6 305.92,-19.23 305.78,-29.82 312.42,-27.6"/>
|
|
</g>
|
|
<!-- Node11 -->
|
|
<g id="node11" class="node">
|
|
<title>Node11</title>
|
|
<g id="a_node11"><a xlink:title=" ">
|
|
<polygon fill="#e0e0e0" stroke="#999999" points="391,-19 347,-19 347,0 391,0 391,-19"/>
|
|
<text text-anchor="middle" x="369" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">vector</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- Node1->Node11 -->
|
|
<g id="edge10" class="edge">
|
|
<title>Node1->Node11</title>
|
|
<path fill="none" stroke="#63b8ff" d="M344.55,-109.63C349.58,-89.21 358.81,-51.81 364.38,-29.24"/>
|
|
<polygon fill="#63b8ff" stroke="#63b8ff" points="367.85,-29.78 366.85,-19.23 361.05,-28.1 367.85,-29.78"/>
|
|
</g>
|
|
<!-- Node12 -->
|
|
<g id="node12" class="node">
|
|
<title>Node12</title>
|
|
<g id="a_node12"><a xlink:href="../../d8/d95/vector__ops_8hpp.html" target="_top" xlink:title="Various functions for vectors associated with [NeuralNetwork (aka Multilayer Perceptron)] (https://en...">
|
|
<polygon fill="white" stroke="#666666" points="274.5,-74 191.5,-74 191.5,-55 274.5,-55 274.5,-74"/>
|
|
<text text-anchor="middle" x="233" y="-62" font-family="Helvetica,sans-Serif" font-size="10.00">vector_ops.hpp</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- Node1->Node12 -->
|
|
<g id="edge11" class="edge">
|
|
<title>Node1->Node12</title>
|
|
<path fill="none" stroke="#63b8ff" d="M315.13,-109.99C297.76,-100.58 274.99,-88.24 257.83,-78.95"/>
|
|
<polygon fill="#63b8ff" stroke="#63b8ff" points="259.41,-75.82 248.95,-74.14 256.08,-81.98 259.41,-75.82"/>
|
|
</g>
|
|
<!-- Node12->Node2 -->
|
|
<g id="edge12" class="edge">
|
|
<title>Node12->Node2</title>
|
|
<path fill="none" stroke="#63b8ff" d="M200.06,-54.98C163.49,-45.53 104.55,-30.29 66.04,-20.33"/>
|
|
<polygon fill="#63b8ff" stroke="#63b8ff" points="66.79,-16.91 56.24,-17.8 65.04,-23.69 66.79,-16.91"/>
|
|
</g>
|
|
<!-- Node12->Node4 -->
|
|
<g id="edge13" class="edge">
|
|
<title>Node12->Node4</title>
|
|
<path fill="none" stroke="#63b8ff" d="M211.15,-54.98C188.88,-46.3 154.1,-32.75 128.78,-22.88"/>
|
|
<polygon fill="#63b8ff" stroke="#63b8ff" points="129.84,-19.54 119.25,-19.17 127.29,-26.06 129.84,-19.54"/>
|
|
</g>
|
|
<!-- Node12->Node7 -->
|
|
<g id="edge14" class="edge">
|
|
<title>Node12->Node7</title>
|
|
<path fill="none" stroke="#63b8ff" d="M222.07,-54.98C211.92,-47.07 196.58,-35.11 184.35,-25.58"/>
|
|
<polygon fill="#63b8ff" stroke="#63b8ff" points="186.16,-22.56 176.12,-19.17 181.86,-28.08 186.16,-22.56"/>
|
|
</g>
|
|
<!-- Node12->Node10 -->
|
|
<g id="edge16" class="edge">
|
|
<title>Node12->Node10</title>
|
|
<path fill="none" stroke="#63b8ff" d="M244.25,-54.98C254.8,-47 270.8,-34.88 283.44,-25.31"/>
|
|
<polygon fill="#63b8ff" stroke="#63b8ff" points="285.69,-28 291.55,-19.17 281.46,-22.42 285.69,-28"/>
|
|
</g>
|
|
<!-- Node12->Node11 -->
|
|
<g id="edge17" class="edge">
|
|
<title>Node12->Node11</title>
|
|
<path fill="none" stroke="#63b8ff" d="M254.85,-54.98C277.12,-46.3 311.9,-32.75 337.22,-22.88"/>
|
|
<polygon fill="#63b8ff" stroke="#63b8ff" points="338.71,-26.06 346.75,-19.17 336.16,-19.54 338.71,-26.06"/>
|
|
</g>
|
|
<!-- Node13 -->
|
|
<g id="node13" class="node">
|
|
<title>Node13</title>
|
|
<g id="a_node13"><a xlink:title=" ">
|
|
<polygon fill="#e0e0e0" stroke="#999999" points="259.5,-19 210.5,-19 210.5,0 259.5,0 259.5,-19"/>
|
|
<text text-anchor="middle" x="235" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">random</text>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
<!-- Node12->Node13 -->
|
|
<g id="edge15" class="edge">
|
|
<title>Node12->Node13</title>
|
|
<path fill="none" stroke="#63b8ff" d="M233.33,-54.75C233.59,-47.8 233.97,-37.85 234.3,-29.13"/>
|
|
<polygon fill="#63b8ff" stroke="#63b8ff" points="237.8,-29.21 234.68,-19.09 230.8,-28.95 237.8,-29.21"/>
|
|
</g>
|
|
</g>
|
|
</svg>
|
|
<g id="navigator" transform="translate(0 0)" fill="#404254">
|
|
<rect fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width=".5" x="0" y="0" width="60" height="60"/>
|
|
<use id="zoomplus" xlink:href="#zoomPlus" x="17" y="9" onmousedown="handleZoom(evt,'in')"/>
|
|
<use id="zoomminus" xlink:href="#zoomMin" x="42" y="9" onmousedown="handleZoom(evt,'out')"/>
|
|
<use id="reset" xlink:href="#resetDef" x="30" y="36" onmousedown="handleReset()"/>
|
|
<g id="arrowUp" xlink:href="#dirArrow" transform="translate(30 24)" onmousedown="handlePan(0,-1)">
|
|
<use xlink:href="#rim" fill="#404040">
|
|
<set attributeName="fill" to="#808080" begin="arrowUp.mouseover" end="arrowUp.mouseout"/>
|
|
</use>
|
|
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
|
</g>
|
|
<g id="arrowRight" xlink:href="#dirArrow" transform="rotate(90) translate(36 -43)" onmousedown="handlePan(1,0)">
|
|
<use xlink:href="#rim" fill="#404040">
|
|
<set attributeName="fill" to="#808080" begin="arrowRight.mouseover" end="arrowRight.mouseout"/>
|
|
</use>
|
|
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
|
</g>
|
|
<g id="arrowDown" xlink:href="#dirArrow" transform="rotate(180) translate(-30 -48)" onmousedown="handlePan(0,1)">
|
|
<use xlink:href="#rim" fill="#404040">
|
|
<set attributeName="fill" to="#808080" begin="arrowDown.mouseover" end="arrowDown.mouseout"/>
|
|
</use>
|
|
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
|
</g>
|
|
<g id="arrowLeft" xlink:href="#dirArrow" transform="rotate(270) translate(-36 17)" onmousedown="handlePan(-1,0)">
|
|
<use xlink:href="#rim" fill="#404040">
|
|
<set attributeName="fill" to="#808080" begin="arrowLeft.mouseover" end="arrowLeft.mouseout"/>
|
|
</use>
|
|
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
|
</g>
|
|
</g>
|
|
<svg viewBox="0 0 15 15" width="100%" height="30px" preserveAspectRatio="xMaxYMin meet">
|
|
<g id="arrow_out" transform="scale(0.3 0.3)">
|
|
<a xlink:href="neural__network_8cpp__incl_org.svg" target="_base">
|
|
<rect id="button" ry="5" rx="5" y="6" x="6" height="38" width="38"
|
|
fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width="1.0"/>
|
|
<path id="arrow"
|
|
d="M 11.500037,31.436501 C 11.940474,20.09759 22.043105,11.32322 32.158766,21.979434 L 37.068811,17.246167 C 37.068811,17.246167 37.088388,32 37.088388,32 L 22.160133,31.978069 C 22.160133,31.978069 26.997745,27.140456 26.997745,27.140456 C 18.528582,18.264221 13.291696,25.230495 11.500037,31.436501 z"
|
|
style="fill:#404040;"/>
|
|
</a>
|
|
</g>
|
|
</svg>
|
|
</svg>
|