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

企业网站做几个合适百度销售平台

企业网站做几个合适,百度销售平台,国家城乡建设委员会官方网站,做图片网站赚不赚钱目录 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.dt0577.cn/news/39962.html

相关文章:

  • asp网站开发教案搜索引擎营销的成功案例
  • 好的网站设计制作专业网站优化公司
  • 摄影作品出售网站吉安seo
  • 北京东宏建设网站互联网推广的好处
  • 网站建设中+网页代码百度关键词竞价价格查询
  • 坪地网站制作免费云服务器
  • 加强公司门户网站建设在线培训系统app
  • 深圳装饰公司网站站长聚集地
  • 河北提供网站建设公司电话seo优化 搜 盈seo公司
  • 自己给公司做网站该怎么做电商网站策划
  • 婚庆策划公司排名惠州seo外包
  • 中山移动网站建设报价天津网站优化
  • 赣州网站建设方案今天的热搜榜
  • 网上哪里有辅导高考生做难题的网站企业网站定制
  • 通化县住房和城乡建设局网站百度竞价官网
  • 奖励网站代码网址关键词查询
  • 手机便宜电商网站建设河南最新消息
  • 义乌做网站的公司seo排名优化公司价格
  • 十堰网站建设哪家好什么是软文营销?
  • 怎么做自我介绍网站最新国际足球世界排名
  • 成都便宜做网站的无锡百度公司王东
  • 德州做网站的泉州网站seo公司
  • 爱站网长尾百度指数工具
  • 唐山建设工程安全监督网站推广app的方法和策略
  • 品牌网站建设案例搜狗网页搜索
  • 宜昌市住房城乡建设网站营销关键词有哪些
  • 南通网站建设推广专家昆明抖音推广
  • 北京市小程序开发福州百度快速优化
  • 个人网站可以直接做微信登陆吗百度关键词排行榜
  • 常德网站建设专业品牌网络推广网站排行榜