简 介:

关键词Paddle静态动态

#mermaid-svg-yjJ9g4geedpIbeNJ .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-yjJ9g4geedpIbeNJ .label text{fill:#333}#mermaid-svg-yjJ9g4geedpIbeNJ .node rect,#mermaid-svg-yjJ9g4geedpIbeNJ .node circle,#mermaid-svg-yjJ9g4geedpIbeNJ .node ellipse,#mermaid-svg-yjJ9g4geedpIbeNJ .node polygon,#mermaid-svg-yjJ9g4geedpIbeNJ .node path{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-yjJ9g4geedpIbeNJ .node .label{text-align:center;fill:#333}#mermaid-svg-yjJ9g4geedpIbeNJ .node.clickable{cursor:pointer}#mermaid-svg-yjJ9g4geedpIbeNJ .arrowheadPath{fill:#333}#mermaid-svg-yjJ9g4geedpIbeNJ .edgePath .path{stroke:#333;stroke-width:1.5px}#mermaid-svg-yjJ9g4geedpIbeNJ .flowchart-link{stroke:#333;fill:none}#mermaid-svg-yjJ9g4geedpIbeNJ .edgeLabel{background-color:#e8e8e8;text-align:center}#mermaid-svg-yjJ9g4geedpIbeNJ .edgeLabel rect{opacity:0.9}#mermaid-svg-yjJ9g4geedpIbeNJ .edgeLabel span{color:#333}#mermaid-svg-yjJ9g4geedpIbeNJ .cluster rect{fill:#ffffde;stroke:#aa3;stroke-width:1px}#mermaid-svg-yjJ9g4geedpIbeNJ .cluster text{fill:#333}#mermaid-svg-yjJ9g4geedpIbeNJ div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#ffffde;border:1px solid #aa3;border-radius:2px;pointer-events:none;z-index:100}#mermaid-svg-yjJ9g4geedpIbeNJ .actor{stroke:#ccf;fill:#ECECFF}#mermaid-svg-yjJ9g4geedpIbeNJ text.actor>tspan{fill:#000;stroke:none}#mermaid-svg-yjJ9g4geedpIbeNJ .actor-line{stroke:grey}#mermaid-svg-yjJ9g4geedpIbeNJ .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333}#mermaid-svg-yjJ9g4geedpIbeNJ .messageLine1{stroke-width:1.5;stroke-dasharray:2, 2;stroke:#333}#mermaid-svg-yjJ9g4geedpIbeNJ #arrowhead path{fill:#333;stroke:#333}#mermaid-svg-yjJ9g4geedpIbeNJ .sequenceNumber{fill:#fff}#mermaid-svg-yjJ9g4geedpIbeNJ #sequencenumber{fill:#333}#mermaid-svg-yjJ9g4geedpIbeNJ #crosshead path{fill:#333;stroke:#333}#mermaid-svg-yjJ9g4geedpIbeNJ .messageText{fill:#333;stroke:#333}#mermaid-svg-yjJ9g4geedpIbeNJ .labelBox{stroke:#ccf;fill:#ECECFF}#mermaid-svg-yjJ9g4geedpIbeNJ .labelText,#mermaid-svg-yjJ9g4geedpIbeNJ .labelText>tspan{fill:#000;stroke:none}#mermaid-svg-yjJ9g4geedpIbeNJ .loopText,#mermaid-svg-yjJ9g4geedpIbeNJ .loopText>tspan{fill:#000;stroke:none}#mermaid-svg-yjJ9g4geedpIbeNJ .loopLine{stroke-width:2px;stroke-dasharray:2, 2;stroke:#ccf;fill:#ccf}#mermaid-svg-yjJ9g4geedpIbeNJ .note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-yjJ9g4geedpIbeNJ .noteText,#mermaid-svg-yjJ9g4geedpIbeNJ .noteText>tspan{fill:#000;stroke:none}#mermaid-svg-yjJ9g4geedpIbeNJ .activation0{fill:#f4f4f4;stroke:#666}#mermaid-svg-yjJ9g4geedpIbeNJ .activation1{fill:#f4f4f4;stroke:#666}#mermaid-svg-yjJ9g4geedpIbeNJ .activation2{fill:#f4f4f4;stroke:#666}#mermaid-svg-yjJ9g4geedpIbeNJ .mermaid-main-font{font-family:"trebuchet ms", verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-yjJ9g4geedpIbeNJ .section{stroke:none;opacity:0.2}#mermaid-svg-yjJ9g4geedpIbeNJ .section0{fill:rgba(102,102,255,0.49)}#mermaid-svg-yjJ9g4geedpIbeNJ .section2{fill:#fff400}#mermaid-svg-yjJ9g4geedpIbeNJ .section1,#mermaid-svg-yjJ9g4geedpIbeNJ .section3{fill:#fff;opacity:0.2}#mermaid-svg-yjJ9g4geedpIbeNJ .sectionTitle0{fill:#333}#mermaid-svg-yjJ9g4geedpIbeNJ .sectionTitle1{fill:#333}#mermaid-svg-yjJ9g4geedpIbeNJ .sectionTitle2{fill:#333}#mermaid-svg-yjJ9g4geedpIbeNJ .sectionTitle3{fill:#333}#mermaid-svg-yjJ9g4geedpIbeNJ .sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-yjJ9g4geedpIbeNJ .grid .tick{stroke:#d3d3d3;opacity:0.8;shape-rendering:crispEdges}#mermaid-svg-yjJ9g4geedpIbeNJ .grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-yjJ9g4geedpIbeNJ .grid path{stroke-width:0}#mermaid-svg-yjJ9g4geedpIbeNJ .today{fill:none;stroke:red;stroke-width:2px}#mermaid-svg-yjJ9g4geedpIbeNJ .task{stroke-width:2}#mermaid-svg-yjJ9g4geedpIbeNJ .taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-yjJ9g4geedpIbeNJ .taskText:not([font-size]){font-size:11px}#mermaid-svg-yjJ9g4geedpIbeNJ .taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-yjJ9g4geedpIbeNJ .taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}#mermaid-svg-yjJ9g4geedpIbeNJ .task.clickable{cursor:pointer}#mermaid-svg-yjJ9g4geedpIbeNJ .taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-yjJ9g4geedpIbeNJ .taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-yjJ9g4geedpIbeNJ .taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-yjJ9g4geedpIbeNJ .taskText0,#mermaid-svg-yjJ9g4geedpIbeNJ .taskText1,#mermaid-svg-yjJ9g4geedpIbeNJ .taskText2,#mermaid-svg-yjJ9g4geedpIbeNJ .taskText3{fill:#fff}#mermaid-svg-yjJ9g4geedpIbeNJ .task0,#mermaid-svg-yjJ9g4geedpIbeNJ .task1,#mermaid-svg-yjJ9g4geedpIbeNJ .task2,#mermaid-svg-yjJ9g4geedpIbeNJ .task3{fill:#8a90dd;stroke:#534fbc}#mermaid-svg-yjJ9g4geedpIbeNJ .taskTextOutside0,#mermaid-svg-yjJ9g4geedpIbeNJ .taskTextOutside2{fill:#000}#mermaid-svg-yjJ9g4geedpIbeNJ .taskTextOutside1,#mermaid-svg-yjJ9g4geedpIbeNJ .taskTextOutside3{fill:#000}#mermaid-svg-yjJ9g4geedpIbeNJ .active0,#mermaid-svg-yjJ9g4geedpIbeNJ .active1,#mermaid-svg-yjJ9g4geedpIbeNJ .active2,#mermaid-svg-yjJ9g4geedpIbeNJ .active3{fill:#bfc7ff;stroke:#534fbc}#mermaid-svg-yjJ9g4geedpIbeNJ .activeText0,#mermaid-svg-yjJ9g4geedpIbeNJ .activeText1,#mermaid-svg-yjJ9g4geedpIbeNJ .activeText2,#mermaid-svg-yjJ9g4geedpIbeNJ .activeText3{fill:#000 !important}#mermaid-svg-yjJ9g4geedpIbeNJ .done0,#mermaid-svg-yjJ9g4geedpIbeNJ .done1,#mermaid-svg-yjJ9g4geedpIbeNJ .done2,#mermaid-svg-yjJ9g4geedpIbeNJ .done3{stroke:grey;fill:#d3d3d3;stroke-width:2}#mermaid-svg-yjJ9g4geedpIbeNJ .doneText0,#mermaid-svg-yjJ9g4geedpIbeNJ .doneText1,#mermaid-svg-yjJ9g4geedpIbeNJ .doneText2,#mermaid-svg-yjJ9g4geedpIbeNJ .doneText3{fill:#000 !important}#mermaid-svg-yjJ9g4geedpIbeNJ .crit0,#mermaid-svg-yjJ9g4geedpIbeNJ .crit1,#mermaid-svg-yjJ9g4geedpIbeNJ .crit2,#mermaid-svg-yjJ9g4geedpIbeNJ .crit3{stroke:#f88;fill:red;stroke-width:2}#mermaid-svg-yjJ9g4geedpIbeNJ .activeCrit0,#mermaid-svg-yjJ9g4geedpIbeNJ .activeCrit1,#mermaid-svg-yjJ9g4geedpIbeNJ .activeCrit2,#mermaid-svg-yjJ9g4geedpIbeNJ .activeCrit3{stroke:#f88;fill:#bfc7ff;stroke-width:2}#mermaid-svg-yjJ9g4geedpIbeNJ .doneCrit0,#mermaid-svg-yjJ9g4geedpIbeNJ .doneCrit1,#mermaid-svg-yjJ9g4geedpIbeNJ .doneCrit2,#mermaid-svg-yjJ9g4geedpIbeNJ .doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}#mermaid-svg-yjJ9g4geedpIbeNJ .milestone{transform:rotate(45deg) scale(0.8, 0.8)}#mermaid-svg-yjJ9g4geedpIbeNJ .milestoneText{font-style:italic}#mermaid-svg-yjJ9g4geedpIbeNJ .doneCritText0,#mermaid-svg-yjJ9g4geedpIbeNJ .doneCritText1,#mermaid-svg-yjJ9g4geedpIbeNJ .doneCritText2,#mermaid-svg-yjJ9g4geedpIbeNJ .doneCritText3{fill:#000 !important}#mermaid-svg-yjJ9g4geedpIbeNJ .activeCritText0,#mermaid-svg-yjJ9g4geedpIbeNJ .activeCritText1,#mermaid-svg-yjJ9g4geedpIbeNJ .activeCritText2,#mermaid-svg-yjJ9g4geedpIbeNJ .activeCritText3{fill:#000 !important}#mermaid-svg-yjJ9g4geedpIbeNJ .titleText{text-anchor:middle;font-size:18px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-yjJ9g4geedpIbeNJ g.classGroup text{fill:#9370db;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}#mermaid-svg-yjJ9g4geedpIbeNJ g.classGroup text .title{font-weight:bolder}#mermaid-svg-yjJ9g4geedpIbeNJ g.clickable{cursor:pointer}#mermaid-svg-yjJ9g4geedpIbeNJ g.classGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-yjJ9g4geedpIbeNJ g.classGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-yjJ9g4geedpIbeNJ .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5}#mermaid-svg-yjJ9g4geedpIbeNJ .classLabel .label{fill:#9370db;font-size:10px}#mermaid-svg-yjJ9g4geedpIbeNJ .relation{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-yjJ9g4geedpIbeNJ .dashed-line{stroke-dasharray:3}#mermaid-svg-yjJ9g4geedpIbeNJ #compositionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-yjJ9g4geedpIbeNJ #compositionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-yjJ9g4geedpIbeNJ #aggregationStart{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-yjJ9g4geedpIbeNJ #aggregationEnd{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-yjJ9g4geedpIbeNJ #dependencyStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-yjJ9g4geedpIbeNJ #dependencyEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-yjJ9g4geedpIbeNJ #extensionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-yjJ9g4geedpIbeNJ #extensionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-yjJ9g4geedpIbeNJ .commit-id,#mermaid-svg-yjJ9g4geedpIbeNJ .commit-msg,#mermaid-svg-yjJ9g4geedpIbeNJ .branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-yjJ9g4geedpIbeNJ .pieTitleText{text-anchor:middle;font-size:25px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-yjJ9g4geedpIbeNJ .slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-yjJ9g4geedpIbeNJ g.stateGroup text{fill:#9370db;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-yjJ9g4geedpIbeNJ g.stateGroup text{fill:#9370db;fill:#333;stroke:none;font-size:10px}#mermaid-svg-yjJ9g4geedpIbeNJ g.statediagram-cluster .cluster-label text{fill:#333}#mermaid-svg-yjJ9g4geedpIbeNJ g.stateGroup .state-title{font-weight:bolder;fill:#000}#mermaid-svg-yjJ9g4geedpIbeNJ g.stateGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-yjJ9g4geedpIbeNJ g.stateGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-yjJ9g4geedpIbeNJ .transition{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-yjJ9g4geedpIbeNJ .stateGroup .composit{fill:white;border-bottom:1px}#mermaid-svg-yjJ9g4geedpIbeNJ .stateGroup .alt-composit{fill:#e0e0e0;border-bottom:1px}#mermaid-svg-yjJ9g4geedpIbeNJ .state-note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-yjJ9g4geedpIbeNJ .state-note text{fill:black;stroke:none;font-size:10px}#mermaid-svg-yjJ9g4geedpIbeNJ .stateLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.7}#mermaid-svg-yjJ9g4geedpIbeNJ .edgeLabel text{fill:#333}#mermaid-svg-yjJ9g4geedpIbeNJ .stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-yjJ9g4geedpIbeNJ .node circle.state-start{fill:black;stroke:black}#mermaid-svg-yjJ9g4geedpIbeNJ .node circle.state-end{fill:black;stroke:white;stroke-width:1.5}#mermaid-svg-yjJ9g4geedpIbeNJ #statediagram-barbEnd{fill:#9370db}#mermaid-svg-yjJ9g4geedpIbeNJ .statediagram-cluster rect{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-yjJ9g4geedpIbeNJ .statediagram-cluster rect.outer{rx:5px;ry:5px}#mermaid-svg-yjJ9g4geedpIbeNJ .statediagram-state .divider{stroke:#9370db}#mermaid-svg-yjJ9g4geedpIbeNJ .statediagram-state .title-state{rx:5px;ry:5px}#mermaid-svg-yjJ9g4geedpIbeNJ .statediagram-cluster.statediagram-cluster .inner{fill:white}#mermaid-svg-yjJ9g4geedpIbeNJ .statediagram-cluster.statediagram-cluster-alt .inner{fill:#e0e0e0}#mermaid-svg-yjJ9g4geedpIbeNJ .statediagram-cluster .inner{rx:0;ry:0}#mermaid-svg-yjJ9g4geedpIbeNJ .statediagram-state rect.basic{rx:5px;ry:5px}#mermaid-svg-yjJ9g4geedpIbeNJ .statediagram-state rect.divider{stroke-dasharray:10,10;fill:#efefef}#mermaid-svg-yjJ9g4geedpIbeNJ .note-edge{stroke-dasharray:5}#mermaid-svg-yjJ9g4geedpIbeNJ .statediagram-note rect{fill:#fff5ad;stroke:#aa3;stroke-width:1px;rx:0;ry:0}:root{--mermaid-font-family: '"trebuchet ms", verdana, arial';--mermaid-font-family: "Comic Sans MS", "Comic Sans", cursive}#mermaid-svg-yjJ9g4geedpIbeNJ .error-icon{fill:#522}#mermaid-svg-yjJ9g4geedpIbeNJ .error-text{fill:#522;stroke:#522}#mermaid-svg-yjJ9g4geedpIbeNJ .edge-thickness-normal{stroke-width:2px}#mermaid-svg-yjJ9g4geedpIbeNJ .edge-thickness-thick{stroke-width:3.5px}#mermaid-svg-yjJ9g4geedpIbeNJ .edge-pattern-solid{stroke-dasharray:0}#mermaid-svg-yjJ9g4geedpIbeNJ .edge-pattern-dashed{stroke-dasharray:3}#mermaid-svg-yjJ9g4geedpIbeNJ .edge-pattern-dotted{stroke-dasharray:2}#mermaid-svg-yjJ9g4geedpIbeNJ .marker{fill:#333}#mermaid-svg-yjJ9g4geedpIbeNJ .marker.cross{stroke:#333}:root { --mermaid-font-family: "trebuchet ms", verdana, arial;}#mermaid-svg-yjJ9g4geedpIbeNJ {color: rgba(0, 0, 0, 0.75);font: ;}

定义张量
文章目录
两种方法对比
为什么这样定
义无法允许?
回归网络
第一种方法:静态图
第二种方法:动态图
回归UCI房价
静态图方法
动态图方法

  新手入门第四课——PaddlePaddle快速入门.

§01 定义张量


1.1 两种方法对比

  下面两种方法都可以定义出相同的张量。

x1 = fluid.layers.fill_constant(shape=[2,2], value=1, dtype='int64')
x2 = fluid.layers.fill_constant(shape=[2,2], value=1, dtype='int64')
y1 = fluid.layers.sum(x=[x1,x2])
print(type(x1), x1, type(y1),y1)z1 = paddle.ones([2,2], dtype='int64')
z2 = paddle.ones([2,2], dtype='int64')w = z1+z2print(type(w), w)

  运行结果

<class 'paddle.Tensor'>
Tensor(shape=[2, 2], dtype=int64, place=CPUPlace, stop_gradient=True,[[1, 1],[1, 1]])
<class 'paddle.Tensor'>
Tensor(shape=[2, 2], dtype=int64, place=CPUPlace, stop_gradient=True,[[2, 2],[2, 2]])<class 'paddle.Tensor'>
Tensor(shape=[2, 2], dtype=int64, place=CPUPlace, stop_gradient=True,[[2, 2],[2, 2]])

  可以看到他们的执行结果是相同的。

1.2 为什么这样定义无法允许?

  下面的程序是按照Paddle中的示例程序来运行,反向在运行过程中无法执行。

place = fluid.CPUPlace()
exe = fluid.executor.Executor(place)
exe.run(fluid.default_startup_program())

§02 回归网络


2.1 第一种方法:静态图

  这是一种定义静态图的方法,定义回归网络。

from headm import *                 # =import paddle
import paddle.fluid as fluidpaddle.enable_static()x = fluid.layers.data(name='x', shape=[13], dtype='float32')
hidden = fluid.layers.fc(input=x, size=100, act='relu')
net = fluid.layers.fc(input=hidden, size=1, act=None)y = fluid.layers.data(name='y', shape=[1], dtype='float32')
cost = fluid.layers.square_error_cost(input=net, label=y)
avg_cost = fluid.layers.mean(cost)test_program = fluid.default_main_program().clone(for_test=True)
optimizer = fluid.optimizer.SGDOptimizer(learning_rate=0.01)
opts = optimizer.minimize(avg_cost)place = fluid.CPUPlace()
exe = fluid.Executor(place)
exe.run(fluid.default_startup_program())x_data = array([[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],[2.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],[3.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],[4.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],[5.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]]).astype('float32')
y_data = array([[3.0], [5.0], [7.0], [9.0], [11.0]]).astype('float32')
test_data = array([[6.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]]).astype('float32')for pass_id in range(20):train_cost = exe.run(program=fluid.default_main_program(),feed={'x':x_data, 'y':y_data},fetch_list=[avg_cost])print("pass:%d, Cost:%0.5f"%(pass_id, train_cost[0]))result = exe.run(program=test_program,feed={'x':test_data, 'y':array([[0.0]]).astype('float32')},fetch_list=[net])printt(result)

2.2 第二种方法:动态图

  动态图的方法进行预测是在 Paddle下的Tensor运算以及简单回归问题 给出了测试方案。

from headm import *                 # =import paddle
import paddle.nn.functional as F
from paddle import to_tensor as TT
from paddle.nn.functional import square_error_cost as SQRC
from paddle.nn.functional import softmax as softmaxpaddle.disable_static()net = paddle.nn.Sequential(paddle.nn.Linear(13,100),paddle.nn.ReLU(),paddle.nn.Linear(100,1),
)optimizer = paddle.optimizer.SGD(learning_rate=0.01, parameters=net.parameters())x_data = array([[i]+[0]*12 for i in range(1,6)]).astype('float32')
y_data = array([[i*2+1] for i in range(1,6)]).astype('float32')
test_data = array([[6]+[0]*12]).astype('float32')inputs = paddle.to_tensor(x_data)
labels = paddle.to_tensor(y_data)for pass_id in range(10):out = net(inputs)loss = paddle.mean(SQRC(out,labels))loss.backward()optimizer.step()optimizer.clear_grad()if pass_id %1==0:print("Pass:{}, Loss:{}".format(pass_id,loss.numpy()))

  dir(train_data)

§03 回归UCI房价


3.1 静态图方法

from headm import *                 # =import paddle
import paddle.fluid as fluidtrain_data = paddle.dataset.uci_housing.train()
test_data = paddle.dataset.uci_housing.test()BUF_SIZE        = 500
BATCH_SIZE      = 20
train_reader = paddle.batch(paddle.reader.shuffle(train_data, buf_size=BUF_SIZE),batch_size = BATCH_SIZE,
)
test_reader = paddle.batch(paddle.reader.shuffle(test_data, buf_size=BUF_SIZE),batch_size = BATCH_SIZE,
)paddle.enable_static()x = fluid.layers.data(name='x', shape=[13], dtype='float32')
y = fluid.layers.data(name='y', shape=[1], dtype='float32')
y_predict = fluid.layers.fc(input=x, size=1, act=None)cost = fluid.layers.square_error_cost(input=y_predict, label=y)
avg_cost = fluid.layers.mean(cost)optimizer = fluid.optimizer.SGDOptimizer(learning_rate=0.001)
opts = optimizer.minimize(avg_cost)test_program = fluid.default_main_program().clone(for_test=True)use_cude = False
place = fluid.CUDAPlace(0) if use_cude else fluid.CPUPlace()
exe = fluid.Executor(place)
exe.run(fluid.default_startup_program())feeder = fluid.DataFeeder(place=place, feed_list=[x,y])iter = 0
iters = []
train_costs = []def draw_train_progress(iters, train_costs):title = 'Train Cost'plt.figure(figsize=(10, 8))plt.title(title, fontsize=24)plt.xlabel('Iter', fontsize=14)plt.ylabel('Cost', fontsize=14)plt.plot(iters, train_costs, color='red', label='Train Cost')plt.grid()plt.show()EPOCH_NUM = 50
model_save_dir = '/home/aistudio/work/fit_a_line.inference.model'for pass_id in range(EPOCH_NUM):train_cost = 0for batch_id,data in enumerate(train_reader()):train_cost = exe.run(program=fluid.default_main_program(),feed=feeder.feed(data),fetch_list=[avg_cost])if batch_id%40 ==0:print("Pass:%d, Cost:%0.5f"%(pass_id, train_cost[0][0]))iter = iter+BATCH_SIZEiters.append(iter)train_costs.append(train_cost[0][0])test_cost = 0for batch_id,data in enumerate(test_reader()):test_cost = exe.run(program=test_program,feed=feeder.feed(data),fetch_list=[avg_cost])print("Test:%d, Cost:%.5f"%(pass_id, test_cost[0][0]))if not os.path.exists(model_save_dir):os.makedirs(model_save_dir)print("Save models to %s"%model_save_dir)fluid.io.save_inference_model(model_save_dir,['x'],[y_predict],exe)draw_train_program(iters, train_costs)

▲ 图3.1.1 Train Cost

3.2 动态图方法

▲ 图3.2.1 Train Error


■ 相关文献链接:

  • Paddle下的Tensor运算以及简单回归问题

● 相关图表链接:

  • 图3.1.1 Train Cost
  • 图3.2.1 Train Error

PaddlePaddle 中的若干基础命令中的问题相关推荐

  1. linux中cooy命令_Linux:CentOS 7中常用的基础命令

    对于学习Linux系统来说,命令是必须熟练掌握的第一个部分.Linux系统中的命令有600多个,但常用的基础命令并不多.虽然不同版本的Linux系统的命令稍有不同,但命令的语法与使用方法基本相同,因此 ...

  2. Linux:CentOS 7中常用的基础命令

    对于学习Linux系统来说,命令是必须熟练掌握的第一个部分.Linux系统中的命令有600多个,但常用的基础命令并不多.虽然不同版本的Linux系统的命令稍有不同,但命令的语法与使用方法基本相同,因此 ...

  3. Linux让命令居中,Linux 中常用的基础命令

    Linux 中常用的基础命令 ============================================================================== 概述: == ...

  4. 计算机应用基础商娟叶,探究混合式学习在中职计算机基础教学中的设计与应用...

    孙鹏 摘  要:中职教育在目前的教育中也是很重要的一类,在职业教育的地位中也是不可低估的,为社会培养着各类技术型的人才,为社会的发展起到了一定的作用和支撑力.在中职教学中,计算机课程是必定会学习的一项 ...

  5. 微课在中职计算机基础中的应用,微课在中职计算机基础教学中的应用探析

    微课在中职计算机基础教学中的应用探析 <课程教育研究:学法教法研究>2020年 第01期 | 王珺 河钢承钢培训中心教务科,河北承德067000 摘 要:根据相关调查表明,目前在中职学生的 ...

  6. 中职计算机基础应用教程ppt,多媒体在中职计算机应用基础教学中的应用

    多媒体在中职计算机应用基础教学中的应用 (3页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 多媒体在中职计算机应用基础教学中的 应用姜莹宁夏 ...

  7. 微课中职计算机基础,微课在中职计算机基础教学中的运用探究

    刘龙坤 [摘 要]在教育改革进一步深化的背景下,中职院校的发展也面临着严峻的挑战.对中职院校来说,要促进学生的全面发展,在改革下,就需要转变传统的教学模式,开展多样化的教学活动,来激发学生的学习兴趣, ...

  8. 微课中职计算机基础,探究微课在中职计算机基础教学中的运用

    张丽梅 摘  要:微课的应用不仅可以调动学生的学习兴趣,也有助于提高学生的学习效率,本文主要针对微课在中职计算机基础教学中的应用相关问题进行分析. 关键词:微课  中职  计算机  基础教学  应用 ...

  9. 中职计算机基础微课,微课在中职计算机应用基础课堂中的应用.docx

    微课在中职计算机应用基础课堂中的应用 摘 要:计算机课程是一门实践性比较强的课程,因为种种因素,传统的计算机教学方法在课堂中的效果并不理想.根据中职学生动手能力强的特点,在教学过程中发现了一些问题,也 ...

最新文章

  1. CentOS7的node.js安装
  2. numpy数组切片:一维/二维/数组
  3. python中赋值不正确的_python中的“赋值与深浅拷贝”
  4. Spring AOP 源码系列(一)解析 AOP 配置信息
  5. python中哪些是无序_Python笔记 【无序】 【三】
  6. BAPI:KBPP_EXTERN_UPDATE_CO, TCODE:CJ30/CJ40 第二部分
  7. python零基础学习书-零基础学习python推荐几本书?
  8. 更改ESXi主机root用户密码
  9. JS实现PDF合并功能
  10. 小米手机系统wifi服务器,手机时间变慢,小米高管科普:3招即可解决
  11. 在不被限制的前提下,企业微信一天加多少好友(主动+被动)
  12. Freebase Data Dump结构初探
  13. python中apply函数的使用
  14. 第7章页面布局-布局综合示例
  15. 计算机应用技术题,计算机应用技术复习题.doc
  16. 深入讨论Python中的序列切片语法
  17. 【软件设计】5本软件设计书籍的读书笔记
  18. 云主机安全防护服务有哪些
  19. Ubuntu上实现多分屏窗口管理
  20. linux 创建分区 4t,CentOS6.6添加两块4T硬盘过程记录

热门文章

  1. 2017乌鲁木齐区域赛I(带权并查集)
  2. mongooseim xmpp 服务器docker 安装试用
  3. IBM Rational DOORS通过DXL进行二次开发初试(2)
  4. [Voice communications] 让音乐响起来
  5. CCIE试验备考之交换SPAN
  6. 深度剖析http协议(一)
  7. 字符串数字转换成对应的Double数值
  8. Ruby测试框架Rspec初探
  9. 浅析Java虚拟机结构与机制
  10. 【积淀】半夜突然有点想法