matlab中的sig函数,[转载]matlab学习中的一些基础知识积累-sigmoid函数

sigmoid函数

之前看了一篇文章,里面需要编辑一个公式

blog_6f6b73a70102wj0f.html a4c26d1e5885305701be709a3d33442f.png

这个公式我在其他论文里也有见过。在用matlab实现这个公式时,我发现在matlab中,没有直接的sigmoid函数,而是通过设置sigmf函数的相关参数,得到sigmoid函数的效果:

以下内容摘自MATLAB的help文件。

sigmf

Sigmoidally shaped built-in membership function

Syntax

y = sigmf(x,[a

c])

Description

The sigmoidal function, sigmf(x,[a

c]), as given in the following equation by f(x,a,c) is a mapping on

a vector x, and depends on two parameters a and

c.

a4c26d1e5885305701be709a3d33442f.png

Depending on the sign of the parameter a, the

sigmoidal membership function is inherently open to the right or to

the left, and thus is appropriate for representing concepts such as

"very large" or "very negative." More conventional-looking

membership functions can be built by taking either the product or

difference of two different sigmoidal membership functions. For

more information

seedsigmf and psigmf.

相对于上面提到的公式,sigmf函数中,a=1,c=0;

即sigmoid(x)=sifmf(x,[1,0])

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 您好,要在Matlab创建sigmoid函数可以使用以下代码: ``` function y = sigmoid(x) y = 1./(1+exp(-x)); end ``` 这个函数使用了Matlab内置函数`exp()`和点除(`./`)运算符。希望这个回答能够帮到您。 ### 回答2: 在Matlab,可以通过如下步骤创建sigmoid函数: 1. 首先,创建一个m文件,并命名为sigmoid.m。 2. 在该文件,定义一个sigmoid函数,可以采用以下公式: sig = 1./(1 + exp(-x)) 其,exp表示指数函数,-x表示参数x的负数,.*表示矩阵对应元素相乘,./表示矩阵对应元素相除。 3. 使用函数句柄或直接调用sigmoid函数。 例如,可以在主代码使用函数句柄将sigmoid函数应用于一个向量x,并将结果存储在变量y: ```matlab % 引用sigmoid函数 sigmoid = @(x) 1./(1 + exp(-x)); % 创建一个向量x x = [-5:0.1:5]; % 应用sigmoid函数并将结果存储在向量y y = sigmoid(x); % 输出结果 disp(y); ``` 上述代码,x为一个由-5到5之间以0.1为间隔的向量,sigmoid函数通过矩阵运算将其应用于向量x,并将结果存储在向量y。最后,使用disp函数将y输出到命令窗口。 ### 回答3: 要在MATLAB创建Sigmoid函数,可以按照以下步骤进行: 1. 首先,创建一个包含输入数据的向量或矩阵。假设你有一个名为x的输入向量。 2. 下一步,可以使用MATLAB的数组操作来定义Sigmoid函数Sigmoid函数的数学形式为f(x) = 1 / (1 + exp(-x)),其exp()是指数函数。 3. 使用MATLAB的以下代码来定义和计算Sigmoid函数: ```matlab % 创建输入向量 x = (-10:0.1:10); % 定义Sigmoid函数 sigmoid = @(x) 1 ./ (1 + exp(-x)); % 计算Sigmoid函数的输出 y = sigmoid(x); ``` 在这个例子,我们首先创建了一个包含从-10到10的连续间隔为0.1的输入向量x。然后,我们使用匿名函数的方式定义了Sigmoid函数,将其赋值给变量sigmoid。最后,我们通过调用sigmoid函数来计算输出向量y。 4. 最后,你可以使用MATLAB的plot函数来绘制输入向量和Sigmoid函数的输出。例如,可以使用以下代码来绘制曲线图: ```matlab % 绘制曲线图 plot(x, y) title('Sigmoid函数') xlabel('输入向量') ylabel('输出') ``` 这样,你就可以在MATLAB创建和绘制Sigmoid函数了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值