2.1 MATLAB基本知识
MATLAB软件正如其名字,是MAT(Matrix,矩阵)与LAB(Laboratory,实验室)两个英文单词缩写的合成。因此,在该软件中,所有的元素都是按照矩阵的格式处理的,即便是1个标量数据也将其按照1×1的矩阵模式进行处理。
例如,在命令区如果输入一个变量a,则会发现在工作区出现相应的表示,说明其是向量,如图2-3所示。
此外,如果以计算机语言的分类看MATLAB代码指令系统,MATLAB属于解释性的语言,不需要进行变量定义(因为其已经将所有的变量看作是矩阵形式),语句的执行过程不需要进行成段的编译及逐行解释。这种方式的指令系统在计算机领域见仁见智,如果只是对这种指令系统进行应用,对其了解即可。
图2-3 MATLAB以矩阵模式处理数据
对于使用MATLAB进行编程以便实现各种各样的数据分析、数据计算、存档和共享等内容在相关图书中有详细介绍,此处就不再赘述。众所周知,神经网络的运行在很大程度上依赖于数据。因此,有必要介绍MATLAB数据的常用导入情况。如果预先已经准备有数据,则可以通过表2-1中的指令将外部数据导入工作区。
表2-1 MATLAB数据导入相关指令
除此之外,还可以在MATLAB界面的菜单栏选择“导入数据”选项,如图2-4(a)所示。然后根据要导入的数据进行路径选择,此时会弹出“导入向导”界面,可以根据所进行的项目勾选相应的复选框,例如可以选择“生成MATLAB代码”数据文件等,如图2-4(b)所示。在此之后就可以导入所选的数据文件了,如图2-4(c)所示。
在进行完数据分析后,还需要将数据导出。MATLAB数据导出的常用指令如表2-2所示。
图2-4 在MATLAB中使用菜单项进行数据导入情况
表2-2 MATLAB数据导出的常用指令
以上是在MATLAB指令下的数据输入/输出情况。如果在MATLAB中使用图形化的编程方法,即用Simulink进行数据分析,则首先需要建立一个Simulink模型文件(∗.mdl)。在建立模型文件后从Simulink库中选择相应的“模块”(Block),根据不同的数据来源进行数据导入,如图2-5所示。
与之对应,在数据导出时也需要先有一个模块进行数据导出,可以在Simulink/Sinks中方便地找到这些模块,此处不再赘述。在数据导出后常常需要进行数据的可视化处理,也就是需要将数据绘制成图形。MATLAB软件在这方面可以说是现行诸多软件中的佼佼者,很多软件的图形处理功能大多无法与其相比。除了在软件中提供了多种绘图指令外,MATLAB R2019b还提供了方便的绘图菜单选项,如图2-6所示。
MATLAB是一个规模宏大的软件,涉及的学科种类也有很多。其指令代码的运行方式及各种专用工具箱也难以在此一一详述。因为在神经网络的运行过程中对数据处理的要求较多,故在此处进行介绍以便为后续的学习做好准备。
图2-5 数据导入
图2-5 (续)
图2-6 MATLAB菜单栏中的“绘图”选项