天天看點

《MATLAB神經網絡超級學習手冊》——1.2 MATLAB的特點及應用領域

本節書摘來自異步社群《matlab神經網絡超級學習手冊》一書中的第1章,第1.2節,作者:matlab技術聯盟 , 劉冰 , 郭海霞著,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視

matlab神經網絡超級學習手冊

matlab有兩種基本的資料運算量:數組和矩陣,二者單從形式上不好區分。每一個變量可能被當作數組,也可能被當作矩陣,這要依靠所采用的運算法則或運算函數來定。

在matlab中,數組與矩陣的運算法則和運算函數是有差別的。但不論是matlab的數組還是matlab的矩陣,都已經改變了一般進階語言中使用數組的方式和解決矩陣問題的方法。

在matlab中,矩陣運算是把矩陣視為一個整體來進行,基本上與線性代數的處理方法一緻。矩陣的加減乘除、乘方開方、指數對數等運算,都有一套專門的運算符或運算函數。

對于數組,不論是算術的運算,還是關系或邏輯的運算,甚至于調用函數的運算,形式上可以當作整體,有一套有别于矩陣的、完整的運算符和運算函數,但實質上卻是針對數組的每個元素施行的。

當matlab把矩陣(或數組)當作一個獨立的運算量來對待後,向下可以相容向量和标量。不僅如此,矩陣和數組中的元素可以用複數作基本單元,向下可以包含實數集。這些是matlab差別于其他進階語言的根本特點。以此為基礎,還可以概括出如下一些matlab的特色。

1.語言簡潔,程式設計效率高

因為matlab定義了專門用于矩陣運算的運算符,使得矩陣運算就像列出算式執行标量運算一樣簡單,而且這些運算符本身就能執行向量和标量的多種運算。

利用這些運算符可使一般進階語言中的循環結構變成一個簡單的matlab語句,再結合matlab豐富的庫函數可使程式變得相當簡短,幾條語句即可代替數十行c語言或fortran語言程式語句的功能。

2.互動性好,使用友善

使用c語言或fortran語言的時候,首先需要編寫源程式,然後對其進行編譯、連接配接,待形成可執行檔案後,方可運作程式得出結果。

而在matlab的指令視窗中,輸入一條指令,立即就能看到該指令的執行結果,展現了良好的互動性。互動方式減少了程式設計和調試程式的工作量,給使用者帶來了極大的友善。

3.強大的繪圖能力,便于資料可視化

matlab不僅能繪制多種不同坐标系中的二維曲線,還能繪制三維曲面,展現了強大的繪圖能力。正是這種能力為資料的圖形化表示(即資料可視化)提供了有力工具,使資料的展示更加形象生動,有利于揭示資料間的内在關系。

4.領域廣泛的工具箱,便于衆多學科直接使用

matlab工具箱(函數庫)可分為兩類:功能性工具箱和學科性工具箱。功能性工具箱主要用來擴充其符号計算功能、圖示模組化仿真功能、文字處理功能以及與硬體實時互動的功能。而學科性工具箱是專業性比較強的工具箱,如優化工具箱、統計工具箱、控制工具箱、通信工具箱、圖像處理工具箱、小波工具箱等。

5.開放性好,便于擴充

除内部函數外,matlab的其他檔案都是公開的、可讀可改的源檔案,展現了 matlab的開放性特點。使用者可修改源檔案和加入自己的檔案,甚至構造自己的工具箱。

6.檔案i/o和外部引用程式接口

支援讀入更大的文本檔案,支援壓縮格式的mat檔案,使用者可以動态加載、删除或者重載java類等。正是由于以上幾個特點,matlab的應用領域十分廣闊,典型的應用舉例如下。

資料分析

數值與符号計算

工程與科學繪圖

控制系統設計

航天工業

生物醫學工程

汽車工業

語音處理

圖像與數字信号處理

财務、金融分析

模組化、仿真及樣機開發

新算法研究開發

繼續閱讀