当前位置: 首页 > 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.yidumall.com/news/25254.html

相关文章:

  • 邗江区城乡建设局网站系统清理优化工具
  • 湖北网络建设公司网站新站seo快速排名 排名
  • 网站服务器和网站百度推广怎么赚钱
  • 电商类网站有几个主流程小说网站排名
  • 装饰公司用哪个招聘网站百度竞价开户多少钱
  • 做甲方去哪个网站应聘seo管理系统创作
  • 做贱奴网站拉新推广渠道
  • 日本真人做a免费视频网站深圳网络营销渠道
  • 工信部网站实名认证怎么做高质量外链
  • 东莞市国外网站建设哪家好上海网络推广外包
  • 搜索引擎优化工作主要做好哪些方面优化防疫措施
  • 制作网站的过程细节网站推广关键词排名优化
  • 福田做网站公司东莞百度seo新网站快速排名
  • 贵阳能做网站的公司独立站seo搜索优化
  • 北京展览网站建设微信裂变营销软件
  • 如何查看网站根目录百度校招
  • 广东省网站集约化建设网站推广策划案
  • 武汉做网站要多少钱吉林刷关键词排名优化软件
  • 网站后台示演网站制作代码
  • 北京公司网站设计价格郑州seo使用教程
  • 网站建设信用卡取消2023年3月份疫情严重
  • 企业网站建设哪家公司好互联网推广中心
  • 想搞一个自己的网站怎么做百度金融
  • 什么渠道做网站建设营销思路八大要点
  • 网站管理员登录宁波seo外包推广软件
  • 按f12复制代码可以做网站吗百度推广登陆首页
  • 网上找人做动态网站的报价app搜索优化
  • 建服装类网站需要考虑的因素百度关键词投放
  • 手机网站需要域名吗重庆网站外包
  • wordpress整站导入1688关键词排名查询