当前课程知识点:深度学习基础 >  第八讲 生成式神经网络 >  附:8.4程序 >  附:4.5程序

返回《深度学习基础》慕课在线视频课程列表

附:4.5程序资料文件与下载

附:4.5程序

  1. # -*- coding: utf-8 -*-

  2. #演示内容:香农信息熵的计算(例1和例2分别为两种不同类型的输入)以及互信息的计算(例3)。其中log默认为自然对数。

  3.  

  4. import numpy as np

  5. from math import log

  6.  

  7. #例1: 计算香农信息熵(已知概率分布)

  8. print("例1:"

  9. def calc_ent(x):   

  10.     ent = 0.0

  11.     for in x:

  12.         ent -= * np.log(p)

  13.     return ent

  14.  

  15. x1=np.array([0.40.20.20.2])

  16. x2=np.array([1])

  17. x3=np.array([0.20.20.20.20.2])

  18. print ("x1的信息熵:", calc_ent(x1))

  19. print ("x2的信息熵:", calc_ent(x2))

  20. print ("x3的信息熵:", calc_ent(x3))

  21. print("") 

  22.  

  23. #例2: 计算香农信息熵(此时给定了信号发生情况) 

  24. print("例2:"

  25. def calcShannonEnt(dataSet):  

  26.     length,dataDict=float(len(dataSet)),{}  

  27.     for data in dataSet:  

  28.         try:dataDict[data]+=1  

  29.         except:dataDict[data]=1  

  30.     return sum([-d/length*log(d/length) for in list(dataDict.values())])  

  31. print("x1的信息熵:", calcShannonEnt(['A','B','C','D','A'])) 

  32. print("x2的信息熵:",calcShannonEnt(['A','A','A','A','A'])) 

  33. print("x3的信息熵:",calcShannonEnt(['A','B','C','D','E'])) 

  34.  

  35.  

  36. #例3: 计算互信息(输入:给定的信号发生情况,其中联合分布已经手工给出)

  37. print("") 

  38. print("例3:"

  39. Ent_x4=calcShannonEnt(['3',  '4',   '5',  '5''3',  '2',  '2''6''6''1'])

  40. Ent_x5=calcShannonEnt(['7',  '2',   '1',  '3''2',  '8',  '9''1''2''0'])

  41. Ent_x4x5=calcShannonEnt(['37''42''51''53''32''28''29''61''62''10''37''42'])

  42. MI_x4_x5=Ent_x4+Ent_x5-Ent_x4x5

  43. print ("x4和x5之间的互信息:",MI_x4_x5)


返回《深度学习基础》慕课在线视频列表

深度学习基础课程列表:

第一讲 深度学习概述

-1.1 深度学习的引出

-1.2 数据集及其拆分

-1.3 分类及其性能度量

-1.4 回归问题及其性能评价

-1.5 一致性的评价方法

-1.6 程序讲解:使用Sklearn进行精确率-召回率曲线的绘制

-第一讲讲义

-第一讲 作业

-附:1.6程序

第二讲 特征工程概述

- 2.1 特征工程

-2.2 向量空间模型及文本相似度计算

-2.3 特征处理(特征缩放、选择及降维)

-2.4 程序讲解:使用sklearn对文档进行向量化的实例

-2.5 程序讲解:使用sklearn进行量纲缩放的实例

- 第二讲 讲义

-第二讲 作业

-附:2.4程序

-附:2.5程序

第三讲 回归问题及正则化

-3.1 线性回归模型及其求解方法

-3.2 多元回归与多项式回归

-3.3 损失函数的正则化

- 3.4 逻辑回归

-3.5 程序讲解:使用sklearn进行线性回归和二次回归的比较的程序示例

-第三讲讲义

-第三讲 作业

-附:3.5程序

第四讲 信息熵及梯度计算

-4.1 信息熵

-4.2 反向传播中的梯度

-4.3 感知机

-4.4 程序讲解:正向传播和反向传播的程序示例

-4.5 程序讲解:信息熵和互信息的计算程序示例

-第四讲讲义

-第四讲 作业

-附:4.5程序

第五讲 循环神经网络及其变体

-5.1 循环神经网络

-5.2 长短时记忆网络

-5.3 双向循环神经网络和注意力机制

-5.4 程序讲解:循环神经网络的程序示例

-第五讲 讲义

-第五讲 作业

-附:5.4程序

第六讲 卷积神经网络

-6.1 卷积与卷积神经网络

-6.2 LeNet-5 模型分析

-6.3 程序讲解:卷积神经网络的程序示例

-第六讲 讲义

-第六讲 作业

-附:6.3程序

第七讲 递归神经网络

-7.1 情感分析及传统求解方法

-7.2 词向量

-7.3 递归神经网络及其变体

-第七讲 讲义

-第七讲 作业

第八讲 生成式神经网络

-8.1 自动编码器

-8.2 变分自动编码器

-8.3 生成对抗网络

-8.4 程序讲解:自动编码器程序示例

-第八讲 作业

-第八讲 讲义

-附:8.4程序

附:4.5程序笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。