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

吴恩达《机器学习》8-5->8-6:特征与直观理解I、样本与值观理解II

8.5、特征与直观理解I

一、神经网络的学习特性

神经网络通过学习可以得出自身的一系列特征。相对于普通的逻辑回归,在使用原始特征 x1​,x2​,...,xn​ 时受到一定的限制。虽然可以使用一些二项式项来组合这些特征,但仍然受到原始特征的限制。在神经网络中,原始特征仅作为输入层存在。以一个三层的神经网络为例,输出层所做的预测利用的是第二层的特征,而不是输入层中的原始特征。因此,可以将第二层中的特征看作是神经网络通过学习后自动生成的一系列新特征,用于更好地预测输出变量。

二、神经元与逻辑运算

单层神经元,即没有中间层的情况,可以被用来表示逻辑运算,如逻辑与(AND)和逻辑或(OR)。通过一个简单的例子来说明逻辑与(AND)的表示。

逻辑与(AND)的神经网络表示

逻辑或(OR)的神经网络表示

逻辑或(OR)的表示与逻辑与(AND)类似,区别在于权重不同。通过选择合适的权重,可以构建表示逻辑或的神经网络。

8.6、样本与值观理解II

一、二元逻辑运算符与神经元表示

当输入特征为布尔值(0 或 1)时,可以使用单一的激活层来表示二元逻辑运算符。关键在于选择不同的权重,从而实现不同的逻辑运算。下面是几个例子:

1. 逻辑与(AND)的神经元表示

考虑一个神经元,其三个权重分别为 Θ0=−30,Θ1=20,Θ2=20。这个神经元的输出可以被视为等同于逻辑与(AND)运算。

2. 逻辑或(OR)的神经元表示

另一个神经元,其三个权重分别为 Θ0=−10,Θ1=20,Θ2=20,可以被视为等同于逻辑或(OR)运算。

3. 逻辑非(NOT)的神经元表示

一个仅含有两个权重的神经元,权重分别为 10 和−20,可以被视为等同于逻辑非(NOT)运算。

二、组合神经元实现复杂运算

通过组合这些神经元,可以实现更为复杂的逻辑运算。例如,想要实现 XNOR 运算符(当输入的两个值均为 1 或均为 0 时输出 1,否则输出 0),可以按照以下步骤:

  1. 构造一个能表示(NOT x1​) AND (NOT x2​) 部分的神经元。
  2. 将表示逻辑与(AND)的神经元和表示(NOT x1​) AND (NOT x2​) 的神经元以及表示逻辑或(OR)的神经元进行组合。

通过这样的方法,得到了一个能实现 XNOR 运算符功能的神经网络。

参考资料

[中英字幕]吴恩达机器学习系列课程

黄海广博士 - 吴恩达机器学习个人笔记

相关文章:

  • 【我和Python算法的初相遇】——体验递归的可视化篇
  • 拍照小白入坑
  • Android VSYNC发展历程
  • es的优势
  • Lec14 File systems 笔记
  • 前端新手Vue3+Vite+Ts+Pinia+Sass项目指北系列文章 —— 第一章 技术栈简介
  • 奇瑞金融——汽车金融行业架构设计
  • 无线WiFi安全渗透与攻防(六)之WEP破解-Gerix-wifi-cracker自动化破解WEP加密
  • 让文字在盒子中水平居中与垂直居中
  • 6.9平衡二叉树(LC110-E)
  • RT-Thread STM32F407 BMI088--SPI
  • iptables详解:链、表、表链关系、规则的基本使用
  • 本地jar导入maven
  • 【2023春李宏毅机器学习】生成式学习的两种策略
  • 计算机毕业设计选题推荐-高校后勤报修微信小程序/安卓APP-项目实战
  • 【刷算法】求1+2+3+...+n
  • 002-读书笔记-JavaScript高级程序设计 在HTML中使用JavaScript
  • Android开源项目规范总结
  • angular组件开发
  • Iterator 和 for...of 循环
  • JavaScript/HTML5图表开发工具JavaScript Charts v3.19.6发布【附下载】
  • leetcode386. Lexicographical Numbers
  • RedisSerializer之JdkSerializationRedisSerializer分析
  • spring boot 整合mybatis 无法输出sql的问题
  • Vue.js-Day01
  • 从重复到重用
  • 分布式熔断降级平台aegis
  • 坑!为什么View.startAnimation不起作用?
  • 聊聊springcloud的EurekaClientAutoConfiguration
  • 如何利用MongoDB打造TOP榜小程序
  • 使用Maven插件构建SpringBoot项目,生成Docker镜像push到DockerHub上
  • 数据库写操作弃用“SELECT ... FOR UPDATE”解决方案
  • 通过git安装npm私有模块
  • 移动互联网+智能运营体系搭建=你家有金矿啊!
  • #define用法
  • #QT(TCP网络编程-服务端)
  • (01)ORB-SLAM2源码无死角解析-(56) 闭环线程→计算Sim3:理论推导(1)求解s,t
  • (6)【Python/机器学习/深度学习】Machine-Learning模型与算法应用—使用Adaboost建模及工作环境下的数据分析整理
  • (pytorch进阶之路)CLIP模型 实现图像多模态检索任务
  • (附源码)springboot建达集团公司平台 毕业设计 141538
  • (附源码)springboot太原学院贫困生申请管理系统 毕业设计 101517
  • (一)Thymeleaf用法——Thymeleaf简介
  • (转)关于多人操作数据的处理策略
  • (转)为C# Windows服务添加安装程序
  • .aanva
  • .NET Conf 2023 回顾 – 庆祝社区、创新和 .NET 8 的发布
  • .NET Core 通过 Ef Core 操作 Mysql
  • .NET Core中Emit的使用
  • .net 写了一个支持重试、熔断和超时策略的 HttpClient 实例池
  • .NET轻量级ORM组件Dapper葵花宝典
  • .NET文档生成工具ADB使用图文教程
  • @PreAuthorize注解
  • [2669]2-2 Time类的定义
  • [C#] 如何调用Python脚本程序
  • [C#][DevPress]事件委托的使用