当前位置: 首页 > news >正文

怎么做劳务公司网站长沙有实力seo优化公司

怎么做劳务公司网站,长沙有实力seo优化公司,网站后台管理员做链接,网站运营做内容目录 01 学习目标 02 实现工具 03 概念与原理 04 应用示例 05 总结 01 学习目标 (1)理解二分类与多分类的原理区别 (2)掌握简单多分类问题的神经网络实现方法 (3)理解多分类问题算法中的激活函数与损失…

目录

01 学习目标

02 实现工具

03 概念与原理

04 应用示例

05 总结


01 学习目标

     (1)理解二分类与多分类的原理区别

     (2)掌握简单多分类问题的神经网络实现方法

     (3)理解多分类问题算法中的激活函数与损失函数原理

02 实现工具

     (1)代码运行环境

              Python语言,Jupyter notebook平台

     (2)所需模块

              numpy,matplotlib,tensorflow,lab_utils_multiclass_TF,logging

03 概念与原理

     (1)二分类&多分类

       二分类将输入数据划分为两个不同类别,目标变量为一维(0或1)。比如:判断一封电子邮件是否为垃圾邮件(是/否)、判断一个用户是否会点击某个广告或链接(会/不会)等。

       多分类将输入数据划分为三个及以上不同类别,目标变量为一维或更高维。比如:图像识别、文本分类等。

       二分类与多分类都是分类问题,本质上都是经过逻辑分析进行处理。相较二分类的“一对一(0&1)”逻辑,多分类多了一层逻辑,其逻辑处理有“一对一(0或1)”和“一对多(0&1/2/3/4…)”两种策略。如下图所示:

图1   “一对一”策略

 图2   “一对多”策略

       由图1和2可知,假设目标有n类,“一对一”策略需要n×(n-1)次分类,而“一对多”策略仅需要n次分类。

      (2)神经网络中的激活函数 & 归一化指数函数(SoftMax函数)

         激活函数负责将神经元的输入映射到输出端,位于隐藏层的神经元内。作用:引入非线性以处理现实复杂问题。

         SoftMax函数负责处理输出层神经元的输出结果,位于模型编译过程中、损失函数内。作用:将输出层数值处理为 [0,1]范围内的概率分布,用于预测。

      (3)SoftMax函数及其损失函数的数学原理

        对于输出结果向量\textbf{z}=[z_1,z_2,\cdots ,z_n]^TSoftMax函数:

\textbf{a}=\frac{1}{\sum_{k=1}^{n}e^{z_k}}\begin{bmatrix} e^{z_1}\\ e^{z_2}\\ \cdots \\ e^{z_n} \end{bmatrix}

        对于SoftMax处理后的数值,采用交叉熵损失函数:

 L(\textbf{a},y)=\left\{\begin{matrix} -log(a_1),\textbf{if} y=1\\ -log(a_2),\textbf{if} y=2\\ \cdots \\ -log(a_n),\textbf{if} y=n \end{matrix}\right.

       成本函数:

J(\textbf{w},b)=-[\sum_{i=1}^{m}\sum_{j=1}^{n}\begin{Bmatrix} y^{(i)}==j \end{Bmatrix}log\frac{e^{z^{(i)}_j}}{\sum_{k=1}^{n}e^{z^{(i)}_k}}]

      然而,实际项目中可能遇到比较大的数值,SoftMax函数第1步会先进行指数计算(即e^x),这往往造成内存溢出无法计算。因此,可对SoftMax函数及其损失函数进行算法优化:

      本质为取C=\textbf{z}_{max}进行归一化预处理,具体推导过程如下:

       优化后的SoftMax函数如下:

\textbf{a}=\frac{1}{\sum_{k=1}^{n}e^{z_k-C}}\begin{bmatrix} e^{z_1-C}\\ e^{z_2-C}\\ \cdots \\ e^{z_n-C} \end{bmatrix}

       优化后的第k类的损失函数为:

L(\textbf{z})=C+log(\sum_{i=1}^{n}e^{z_i-C})-z_k

       式中,C=\textbf{z}_{max}k为目标值(类别),即y=k,总共有n类。

04 应用示例

     (1)示例描述

       采用sklearn库中的make_blobs函数随机生成4类共2000个数据点,然后基于这4类数据,采用人工神经网络对其进行分类并可视化。

    (2)代码实现

      第1步,导入所需模块:

import numpy as np
import matplotlib.pyplot as plt
%matplotlib widget
from sklearn.datasets import make_blobs
import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
np.set_printoptions(precision=2)
from lab_utils_multiclass_TF import *
import logging
logging.getLogger("tensorflow").setLevel(logging.ERROR)
tf.autograph.set_verbosity(0)

      第2步,生成数据:

centers = [[-5, 2], [-2, -2], [1, 2], [5, -2]]  # 4个类中心
X_train, y_train = make_blobs(n_samples=2000, centers=centers, cluster_std=1.0,random_state=30)

      第3步,定义框架、编译模型、训练模型:

model = Sequential([ Dense(25, activation = 'relu'),Dense(15, activation = 'relu'),Dense(4, activation = 'linear')    # < softmax activation here]
)
model.compile(loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),optimizer=tf.keras.optimizers.Adam(0.001),
)model.fit(X_train,y_train,epochs=100
)

     第4步,结果显示:

plt_cat_mc(X_train, y_train, model, 4)

       运行以上代码,结果如下:

05 总结

     (1)多分类的本质是二分类,基本原理是逻辑回归。

     (2)采用Softmax需在损失函数中定义,并需输出层以激活函数linear配合。

     (3)二分类输出层的神经元个数为1,多分类问题输出层神经元个数为类别个数,若类数未知则可通过试算确定。

http://www.khdw.cn/news/29232.html

相关文章:

  • 百度怎么联系客服网站seo系统
  • 棉桃剥壳机做网站seoheuni
  • 网站建设销售工资多少建站教程
  • 企业网站内的问答模式怎么做sem竞价开户
  • 做美甲团购网站常德网站建设公司
  • 网站建设中+网页代码青岛seo建站
  • wordpress入门建站教程什么是seo网站优化
  • 内蒙古包头做网站的公司保定seo排名
  • 杭州优化外包北京网站优化方案
  • 商务网站建设理论依据热狗网站排名优化外包
  • 吉林省建设招标网站杭州网站推广公司
  • 企业网站建设在国内现状济南做网站公司
  • 做卫生用品都在什么网站百度指数官网登录
  • 开个公司大概需要多少钱北京seo外包公司要靠谱的
  • 贵阳做网站哪家公司好如何建立一个网站
  • 十堰公司做网站比较开放的浏览器
  • 怎样做网站建设的程序中国最大网站排名
  • 计算机网站建设与开发seo优化靠谱吗
  • 网站备案密码重置申请表路由器优化大师
  • 唐山市丰润区城乡建设局网站兰州网络推广推广机构
  • 网站制作服务热线seo营销课程培训
  • 怎么做淘宝优惠券的网站国内新闻
  • wordpress密码对的登不不了沈阳关键词seo
  • uugaicomlogo免费设计网站优化好搜移动端关键词快速排名
  • 中国数学外国人做视频网站网络服务器的作用
  • iis网站在点默认文档的时候报错.店铺100个关键词
  • 上海专业网站设计怎样推广产品
  • 邢台公司做网站多少钱如何规划企业网络推广方案
  • 日本网站 设计海口网站关键词优化
  • 辛集seo网站优化网站人多怎么优化