MindInsight体验笔记

转载地址:https://bbs.huaweicloud.com/forum/thread-107158-1-1.html

作者: zhengyong134

使用MindInsight前,需要先将训练过程中的数据记录下来,启动MindInsight时,指定所保存的数据的位置,启动成功后, 即可通过可视化页面查看数据。下面将简单介绍记录训练过程数据,以及启动、停止MindInsight服务。

SummaryCollector是MindSpore提供的快速简易地收集一些常见信息的接口,收集的信息包括计算图、损失值、学习率、参数权重等。 下面是使用 SummaryCollector 进行数据收集的示例,其中指定存放数据的目录为 ./summary_dir

...from mindspore.train.callback import SummaryCollectorsummary_collector = SummaryCollector(summary_dir='./summary_dir')model.train(epoch=1, ds_train, callbacks=[summary_collector])

更多记录可视化数据的方法,请点击查看MindInsight使用教程

收集好数据后,启动MindInsight时指定存放数据的目录。

mindinsight start --summary-base-dir ./summary_dir

启动成功后,通过浏览器访问 http://127.0.0.1:8080,查看可视化页面。

停止MindInsight服务的命令:

mindinsight stop

       134-3.png

134-4.png

134-5.png

image.png

实验感受:尽管每次MindSpore安装完之后都是用LeNet网络进行测试。但是真正了解手写数字的图片识别到底是怎么实现的,还是蛮费脑筋的事情。

在准备了熟悉的MNIST数据集的文件之后,要做以下几步:

1.定义数据集(create_dataset,MnistDataset),做数据增强(resize,rescale),将数据操作映射到数据集(map)

此时,60000个数据集变成了1875个batch.每组中有32张图片,每个图片像素是32X32.

2.构造LENET5神经网络

在LeNet5中使用_init_定义CNN网络的各个层,并通过construct方法进行前向构造。

3.定义回调函数StepLossAccInfo

在model训练过程中,会调用本函数进行step,loss,精度等信息的收集,并进行可视化的展示。

4.模型训练

建立LeNet5网络,定义优化器Momentum,定义损失函数SoftmaxCrossEntropyWIthLogits,定义模型Model,指定checkpoint的路径和文件名,

查看损失函数的情况(可视化展现)。

5.测试训练好的模型精度

load_checkpoint装在ckpt文件,并加载到LeNet5网络中。create_dataset装在测试数据集,并调用Model.eval进行评估。

并使用plt打印模型进度的变化趋势:缓慢上升--》迅速上升-》缓慢上升接近于1.

6.使用训练好的模型来进行推理

调用model.predict.并将结果打印(其中跟正确的值做对比)。

image.png

。。。

image.png

10个epoch完毕:

image.png

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

144

145

146

147

148

149

150

epoch: 1 step: 125, loss is 2.3039615

epoch: 1 step: 250, loss is 2.2996016

epoch: 1 step: 375, loss is 2.2978952

epoch: 1 step: 500, loss is 2.313351

epoch: 1 step: 625, loss is 2.277135

epoch: 1 step: 750, loss is 2.3046525

epoch: 1 step: 875, loss is 1.4424647

epoch: 1 step: 1000, loss is 0.39111722

epoch: 1 step: 1125, loss is 0.14666225

epoch: 1 step: 1250, loss is 0.1350144

epoch: 1 step: 1375, loss is 0.32206342

epoch: 1 step: 1500, loss is 0.24811643

epoch: 1 step: 1625, loss is 0.17449339

epoch: 1 step: 1750, loss is 0.31456414

epoch: 1 step: 1875, loss is 0.23113638

epoch: 2 step: 125, loss is 0.58746564

epoch: 2 step: 250, loss is 0.086390026

epoch: 2 step: 375, loss is 0.027652418

epoch: 2 step: 500, loss is 0.07999184

epoch: 2 step: 625, loss is 0.09950057

epoch: 2 step: 750, loss is 0.05908614

epoch: 2 step: 875, loss is 0.07771033

epoch: 2 step: 1000, loss is 0.0923084

epoch: 2 step: 1125, loss is 0.015591231

epoch: 2 step: 1250, loss is 0.016552769

epoch: 2 step: 1375, loss is 0.039813112

epoch: 2 step: 1500, loss is 0.046030875

epoch: 2 step: 1625, loss is 0.06009432

epoch: 2 step: 1750, loss is 0.15964296

epoch: 2 step: 1875, loss is 0.09819332

epoch: 3 step: 125, loss is 0.031840887

epoch: 3 step: 250, loss is 0.09944708

epoch: 3 step: 375, loss is 0.004709325

epoch: 3 step: 500, loss is 0.26733324

epoch: 3 step: 625, loss is 0.023928454

epoch: 3 step: 750, loss is 0.036614113

epoch: 3 step: 875, loss is 0.017933719

epoch: 3 step: 1000, loss is 0.009430854

epoch: 3 step: 1125, loss is 0.026807211

epoch: 3 step: 1250, loss is 0.03544801

epoch: 3 step: 1375, loss is 0.021165622

epoch: 3 step: 1500, loss is 0.02203987

epoch: 3 step: 1625, loss is 0.120931186

epoch: 3 step: 1750, loss is 0.110216856

epoch: 3 step: 1875, loss is 0.0047566737

epoch: 4 step: 125, loss is 0.0537671

epoch: 4 step: 250, loss is 0.122592166

epoch: 4 step: 375, loss is 0.0053335694

epoch: 4 step: 500, loss is 0.29982552

epoch: 4 step: 625, loss is 0.011750169

epoch: 4 step: 750, loss is 0.007997878

epoch: 4 step: 875, loss is 0.018640198

epoch: 4 step: 1000, loss is 0.00092686375

epoch: 4 step: 1125, loss is 0.016351579

epoch: 4 step: 1250, loss is 0.25319278

epoch: 4 step: 1375, loss is 0.011927252

epoch: 4 step: 1500, loss is 0.006509734

epoch: 4 step: 1625, loss is 0.0017687044

epoch: 4 step: 1750, loss is 0.13116045

epoch: 4 step: 1875, loss is 0.026135033

epoch: 5 step: 125, loss is 0.0009738783

epoch: 5 step: 250, loss is 0.06497911

epoch: 5 step: 375, loss is 0.01602565

epoch: 5 step: 500, loss is 0.012130979

epoch: 5 step: 625, loss is 0.10459107

epoch: 5 step: 750, loss is 0.23921727

epoch: 5 step: 875, loss is 0.03095108

epoch: 5 step: 1000, loss is 0.003249457

epoch: 5 step: 1125, loss is 0.0015255731

epoch: 5 step: 1250, loss is 0.18430682

epoch: 5 step: 1375, loss is 0.007893067

epoch: 5 step: 1500, loss is 0.008165108

epoch: 5 step: 1625, loss is 0.024239311

epoch: 5 step: 1750, loss is 0.0020856124

epoch: 5 step: 1875, loss is 0.020158531

epoch: 6 step: 125, loss is 0.06754423

epoch: 6 step: 250, loss is 0.14421336

epoch: 6 step: 375, loss is 0.020778831

epoch: 6 step: 500, loss is 0.0005752785

epoch: 6 step: 625, loss is 0.0012047815

epoch: 6 step: 750, loss is 0.11955014

epoch: 6 step: 875, loss is 0.0042439387

epoch: 6 step: 1000, loss is 0.0007125245

epoch: 6 step: 1125, loss is 0.0015478827

epoch: 6 step: 1250, loss is 0.008929882

epoch: 6 step: 1375, loss is 0.012254121

epoch: 6 step: 1500, loss is 0.0009670662

epoch: 6 step: 1625, loss is 0.01903455

epoch: 6 step: 1750, loss is 0.013017826

epoch: 6 step: 1875, loss is 0.021810094

epoch: 7 step: 125, loss is 0.011073177

epoch: 7 step: 250, loss is 0.0016053583

epoch: 7 step: 375, loss is 0.00083148415

epoch: 7 step: 500, loss is 0.00029304295

epoch: 7 step: 625, loss is 0.0022530858

epoch: 7 step: 750, loss is 0.15577613

epoch: 7 step: 875, loss is 0.004347671

epoch: 7 step: 1000, loss is 0.004411632

epoch: 7 step: 1125, loss is 0.060175035

epoch: 7 step: 1250, loss is 0.1030208

epoch: 7 step: 1375, loss is 0.013767235

epoch: 7 step: 1500, loss is 0.008491023

epoch: 7 step: 1625, loss is 0.005444454

epoch: 7 step: 1750, loss is 0.020482317

epoch: 7 step: 1875, loss is 0.108747914

epoch: 8 step: 125, loss is 0.0008271739

epoch: 8 step: 250, loss is 0.0004093829

epoch: 8 step: 375, loss is 0.00656264

epoch: 8 step: 500, loss is 0.014391904

epoch: 8 step: 625, loss is 0.002371982

epoch: 8 step: 750, loss is 0.0018894144

epoch: 8 step: 875, loss is 0.000931811

epoch: 8 step: 1000, loss is 0.001717094

epoch: 8 step: 1125, loss is 0.011621461

epoch: 8 step: 1250, loss is 0.014817192

epoch: 8 step: 1375, loss is 0.016451418

epoch: 8 step: 1500, loss is 0.011735615

epoch: 8 step: 1625, loss is 0.0016012479

epoch: 8 step: 1750, loss is 0.03697086

epoch: 8 step: 1875, loss is 0.13308327

epoch: 9 step: 125, loss is 0.025137063

epoch: 9 step: 250, loss is 0.021796864

epoch: 9 step: 375, loss is 0.00021745967

epoch: 9 step: 500, loss is 0.015439539

epoch: 9 step: 625, loss is 0.004749838

epoch: 9 step: 750, loss is 0.0005257413

epoch: 9 step: 875, loss is 0.00015906521

epoch: 9 step: 1000, loss is 0.03944517

epoch: 9 step: 1125, loss is 0.0010659965

epoch: 9 step: 1250, loss is 0.00022396055

epoch: 9 step: 1375, loss is 0.007441358

epoch: 9 step: 1500, loss is 0.0046174442

epoch: 9 step: 1625, loss is 0.00027378256

epoch: 9 step: 1750, loss is 0.011094449

epoch: 9 step: 1875, loss is 0.012307946

epoch: 10 step: 125, loss is 0.07234606

epoch: 10 step: 250, loss is 0.4460351

epoch: 10 step: 375, loss is 0.026077926

epoch: 10 step: 500, loss is 0.00050899014

epoch: 10 step: 625, loss is 0.0014167392

epoch: 10 step: 750, loss is 0.002771316

epoch: 10 step: 875, loss is 0.0015839171

epoch: 10 step: 1000, loss is 0.059931345

epoch: 10 step: 1125, loss is 0.03527689

epoch: 10 step: 1250, loss is 0.010100802

epoch: 10 step: 1375, loss is 0.24747033

epoch: 10 step: 1500, loss is 0.00773883

epoch: 10 step: 1625, loss is 0.0017910186

epoch: 10 step: 1750, loss is 0.0034963551

epoch: 10 step: 1875, loss is 0.0011399835

最后完结:

image.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值