Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
1 MATLAB is a multi-paradigm numerical computing environment fourth-generation programming language. A proprietary programming language developed by MathWorks In 2004, MATLAB had around one million users across industry and academia. Cleve Moler, the chairman of the computer science department at the University of New Mexico, started developing MATLAB in the late 1970s 2 Why? It has very attractive visualizations It wants to be your friend: • Very easy to learn • Great HELP menu and tutorial Very useful: • From a simple calculator to complex data analysis toolbox. • Many implemented algorithms. We all have experimental data that we need to quantify, analyze, and visualize (in a certain way – for a paper etc…) We usually need to repeat our experiments and analysis more than one time 3 MATLAB (MATrix LABoratory) • high-performance language for technical computing • computation, visualization, and programming in an easy-to-use environment Typical uses include: • Math and computation • Algorithm development • Modelling, simulation, and prototyping • Data analysis, exploration, and visualization • Scientific and engineering graphics • Application development, including Graphical User Interface building 4 A good choice for vision program development because: • Easy to do very rapid prototyping • Quick to learn, and good documentation • A good library of image processing functions • Excellent display capabilities • Widely used for teaching and research in universities and industry • Another language to impress your boss with ! 5 MATLAB consists of: • The MATLAB language • • The MATLAB working environment • • a high-level matrix/array language with control flow statements, functions, data structures, input/output, and object-oriented programming features. the set of tools and facilities that you work with as the MATLAB user or programmer, including tools for developing, managing, debugging, and profiling Handle Graphics • the MATLAB graphics system. It includes high-level commands for two-dimensional and three-dimensional data visualization, image processing, animation, and presentation graphics. 6 The MATLAB function library. • a vast collection of computational algorithms ranging from elementary functions like sum, sine, cosine, and complex arithmetic, to more sophisticated functions like matrix inverse, matrix eigenvalues, Bessel functions, and fast Fourier transforms as well as special image processing related functions The MATLAB Application Program Interface (API) • a library that allows you to write C and Fortran programs that interact with MATLAB. It include facilities for calling routines from MATLAB (dynamic linking), calling MATLAB as a computational engine, and for reading and writing MAT-files. 7 Some facts for a first impression Everything in MATLAB is a matrix ! MATLAB is an interpreted language, no compilation needed (but possible) MATLAB does not need any variable declarations, no dimension statements, has no packaging, no storage allocation, no pointers Programs can be run step by step, with full access to all variables, functions etc. 8 9 Remember: Another simple example: t = 0:pi/100:2*pi; y = sin(t); plot(t,y) EVERYTHING IN MATLAB IS A MATRIX ! creates 1 x 200 Matrix Argument and result: 1 x 200 Matrix A simple example: a=1 while length(a) < 10 a = [0 a] + [a 0] end which prints out Pascal’s triangle: 1 11 121 1331 14641 1 5 10 10 5 1 1 6 15 20 15 6 1 1 7 21 35 35 21 7 1 1 8 28 56 70 56 28 8 1 1 9 36 84 126 126 84 36 9 1 (with “a=” before each line). 11 Another simple example: t = 0:pi/100:2*pi; y = sin(t); plot(t,y) 12 13 Building matrices with [ ]: A = [2 7 4] 2 7 4 A = [2; 7; 4] 2 7 4 A = [2 7 4; 3 8 9] 2 7 4 3 8 9 14 15 Don’t have to declare type Don’t even have to initialise Just assign in command window 16 17 18 19 20 The workspace is Matlab’s memory Can manipulate variables stored in the workspace Display contents of workspace >> whos Name Size Bytes Class a 1x1 8 double array b 1x1 8 double array c 1x1 8 double array Delete variable(s) from workspace >> clear all; % delete all variables from workspace 21 A' % transpose B*A % matrix multiplication B.*A % element by element multiplication B/A B./A % element by element division [B A] % Join matrices (horizontally) [B; A]% Join matrices (vertically) % matrix division 22 23 MATLAB® makes it easy to analyze and visualize your big data so you can improve the design, performance, and reliability of your products. MATLAB is: Easy : Convenient : Work with the big data storage systems you already use. MATLAB works with your existing systems. Access big data stored in traditional file systems, SQL and NoSQL databases, and Hadoop/HDFS. Scalable : Don’t know big data programming? Use familiar MATLAB functions and syntax to work with big datasets, even if they don’t fit in memory. Use the processing platform that suits your needs. Because MATLAB works with your existing systems, you can optimally process your algorithms – without having to rewrite them – using anything from your local desktop machine to Hadoop and Spark. http://www.mathworks.com/solutions/big-data-matlab/index.html 24 A tree is a hierarchical data structure where every node has exactly one parent (expect the root) and no or several children. Along with this relational structure, each node can store any kind of data. This class implements it using plain MATLAB syntax and arrays. Most useful methods are implemented, using overloading of MATLAB functions for tree objects. 25 http://tinevez.github.io/matlab-tree/index.html This page serves as a basic documentation or tutorial for the @tree class. This tutorial is split into several sections, normally independent. It is a good idea however to read them in order: 1) Introduction to trees, the tree class, and basic information. 2) Creating, modifying and accessing a tree. 3) MATLAB operators for trees. 4) Special trees and methods. 5) Searching a tree. 6) Tree traversal. 7) Plotting a tree. 26 Engineers and data scientists work with large amounts of data in a variety of formats such as sensor, image, video, telemetry, databases, and more. They use machine learning to find patterns in data and to build models that predict future outcomes based on historical data. With MATLAB®, you have immediate access to prebuilt functions, extensive toolboxes, and specialized apps for classification, regression, and clustering. You can: Compare approaches such as logistic regression, classification trees, support vector machines, ensemble methods, and deep learning. Use model refinement and reduction techniques to create an accurate model that best captures the predictive power of your data. Integrate machine learning models into enterprise systems, clusters, and clouds, and target models to real-time embedded hardware. https://www.mathworks.com/solutions/machine-learning/examples.html?s_iid=solew_trial_mlr_cta1 27 28