Octave Tutorial(《Machine Learning》)之第五课《控制语句和方程及向量化》
第五课 控制语句和方程 For,while,if statements and functions
(1)For loop
v=zeros(10,1) %initial vectors
for i=1:10, %Assign for the vectors
v(i) = 2^i;
end;
v
(%You can also do that:
indices=1:10;
for i=indices,
v(i)=2^i;
end;
v
)
(2)whileloop
I = 1;
while I <= 5,
v(i) = 100;
I = i+1;
end;
v
(3)break statememts
i=1;
while true,
v(i) = 999;
I = i+1;
if I == 6,
break;
end;
end;
(4)if-else statements
v(1) = 2;
if v(1) == 1,
disp('The value is one.');
elseif v(1) == 2,
disp('The value is two.');
else
disp('The value is not one or two.');
end;
(5)Funtions
例1:桌面上有一个名为“squareAndCubeThisNumber.m”的文件,内容如下:
function [y1,y2] = squareAndCubeThisNumber(x)
y = x^2;
y = x^3;
要调用此函数,方法如下:
(1)输入pwd,查看当前文件所在路径,若不在和“squareThisNumber.m”文件的同一目录下,有两种方法进入同一目录:
1)cd /home/flipped/Desktop
2)addpath(' /home/flipped/Desktop') %Octave search path (advanced/optional)
(2)调用 squareThisNumber函数,输入如下:
quareThisNumber(5)
从此例还可看出,Octave不同于其他语言的一点是,函数可以返回两个及两个以上的值。
例2:通过少量数据集计算其成本函数
桌面上有一个名为“costFuctionJ.m”的文件,内容如下:
unction J = costFuctionJ(X, y, thera)
m = size(X,1);
predictions = X*thera;
sqrErrors = (predictions-y).^2;
J = 1/(2*m)*sum(sqrErrors);
设定 X = [1 1;1 2;1 3](第一列均为x0值,第二列为样本集x1,x2,x3的值)
y = [1;2;3](样本集中y的值)
thera = [0;1];(假设当x0为0时,y为0;x1为1时,y为1)
运行函数得结果等于0. (若设thera = [0,0],运行函数结果为2.3333.)
向量化 Vectorization
优点:(1)利用各种语言中经过高度优化的代数库会使你的代码运行速度更快,更有效。(2)这也意味着你可以用更少的代码实现一些功能。
Octave Tutorial(《Machine Learning》)之第五课《控制语句和方程及向量化》的更多相关文章
- 【机器学习Machine Learning】资料大全
昨天总结了深度学习的资料,今天把机器学习的资料也总结一下(友情提示:有些网站需要"科学上网"^_^) 推荐几本好书: 1.Pattern Recognition and Machi ...
- How do I learn machine learning?
https://www.quora.com/How-do-I-learn-machine-learning-1?redirected_qid=6578644 How Can I Learn X? ...
- Octave Tutorial(《Machine Learning》)之第一课《数据表示和存储》
Octave Tutorial 第一课 Computation&Operation 数据表示和存储 1.简单的四则运算,布尔运算,赋值运算(a && b,a || b,xor( ...
- Machine Learning – 第2周(Linear Regression with Multiple Variables、Octave/Matlab Tutorial)
Machine Learning – Coursera Octave for Microsoft Windows GNU Octave官网 GNU Octave帮助文档 (有900页的pdf版本) O ...
- Coursera machine learning 第二周 quiz 答案 Octave/Matlab Tutorial
https://www.coursera.org/learn/machine-learning/exam/dbM1J/octave-matlab-tutorial Octave Tutorial 5 ...
- Tutorial: Create a Windows Machine Learning UWP application (C#)
In this tutorial, we'll build a simple Universal Windows Platform application that uses a trained ma ...
- 第五周(web,machine learning笔记)
2019/11/2 1. 表现层状态转换(REST, representational state transfer.)一种万维网软件架构风格,目的是便于不同软件/程序在网络(例如互联网)中互相 ...
- 吴恩达《深度学习》-课后测验-第三门课 结构化机器学习项目(Structuring Machine Learning Projects)-Week1 Bird recognition in the city of Peacetopia (case study)( 和平之城中的鸟类识别(案例研究))
Week1 Bird recognition in the city of Peacetopia (case study)( 和平之城中的鸟类识别(案例研究)) 1.Problem Statement ...
- Machine Learning - 第3周(Logistic Regression、Regularization)
Logistic regression is a method for classifying data into discrete outcomes. For example, we might u ...
随机推荐
- Excel实用知识2(排序,筛选,分析工具)
[排序,筛选,分析工具(描述统计,相关系数,回归分析,抽样分析,预测工作表)] 纯手打,可能有错别字,使用的版本是office2013 转载请注明出处 http://www.cnblogs.com/h ...
- Hadoop学习笔记-003-CentOS_6.5_64_设置ssh免密码登录
参考:http://blog.csdn.net/u010270403/article/details/51444677 虚拟机中共五个centos系统,每个系统有两个用户root和hadoop:cdh ...
- Go并发编程实践
前言 并发编程一直是Golang区别与其他语言的很大优势,也是实际工作场景中经常遇到的.近日笔者在组内分享了我们常见的并发场景,及代码示例,以期望大家能在遇到相同场景下,能快速的想到解决方案,或者是拿 ...
- C# vs TypeScript - 高级类型
总目录 从C#到TypeScript - 类型 从C#到TypeScript - 高级类型 从C#到TypeScript - 变量 从C#到TypeScript - 接口 从C#到TypeScript ...
- 蓝桥网试题 java 基础练习 回文数
--------------------------------------------------------------------- 没必要枚举出所有四位数 四位数里是回文的数都有一个特性,是什 ...
- CSS的兼容性与BUG处理
骨灰级清除浮动 .clearfix:after { content: "."; display: block; height: 0; clear: both; visibility ...
- 2017<java技术>预备作业计科冀浩然
1.阅读邹欣老师的博客,谈谈你期望的师生关系是什么样的? 我期望的师生关系是相互融洽的,老师能够在上课的时候尽量多的教我们专业知识,可以尽量多和我们进行互动,课下能和我们如同朋友一般就可以了. 2.你 ...
- asp.net core mvc剖析:启动流程
asp.net core mvc是微软开源的跨平台的mvc框架,首先它跟原有的MVC相比,最大的不同就是跨平台,然后又增加了一些非常实用的新功能,比如taghelper,viewcomponent,D ...
- VMware workstation安装报Microsoft Runtime DLL和Intel VT-x错误
在安装VMware workstation时,弹出提示框,提示"安装程序无法继续.Microsoft Runtime DLL安装程序未能完成安装." 网上找到两种说法,但我的win ...
- Android之RecyclerView轻松实现下拉刷新和加载更多
今天研究了下RecyclerView的滑动事件,特别是下拉刷新和加载更多事件,在现在几乎所有的APP显示数据列表时都用到了.自定义RecyclerView下拉刷新和加载更多听上去很复杂,实际上并不难, ...