机器学习:第四篇 快速构建一个CNN神经网络(识别MNIST手写数字)
每当想要学习神经网络的时候,每当想要自己搭建一个神经网络的时候,每当看到别人的神经网络错综复杂就劝退的时候,不如尝试一下搭建一个最简单的CNN试试。或许会有那种搭积木的感觉。 mnist数据集 mnist手写数字数据集是一系列的28x28x1的灰度图片,如图所示: 环境搭建 我的环境如下: Python 3.10.1 TensorFlow 2.9.1 具体的安装办法可以百度一下。 网络结构 我们经常把神经网络比作黑盒模型,那么黑盒就要有一个输入与输出,我们知道MNIST手写数字是一张张28*28像素的图片,那么输出就是对应的0-9的标签数字。 输出层 如果直接输出0-9,那么就会出现数字之间的相关性,比如1后面是2,在生成的神经网络的权重就会带有数字的顺序特征,所以一般的输出采用的是one-hot模式,就是用一个1维的矩阵来表示输出。 例如: 3:[0 0 0 1 0 0 0 0 0 0] 5:[0 0 0 0 0 1 0 0 0...
记录一份考研经验
...
GoLang:第一篇 The Way To Go!(Go语言入坑指南)
The Way To Go!第一次学,我也不是很懂,有错误麻烦指出一下。 Just Go 语言之间没有孰优孰劣,Python的易用和C的高性能都,各家有各家的长处。而掌握一门语言就能走遍天下的时代即将过去(JAVA除外),未来一定是多钟语言之间相互融合相互穿插的时代,而Go的热度趋势也在不断的上升,所以今天开一个新坑,从零学习Go语言。今天就先实现一个Hello world。 起源与发展 详情看百度百科。 安装Go环境 Download Go 在GooGle的GoLang网站可以直接下载Go的二进制发行版。点击下载 而Go的官网:http://golang.org/在国内是没法访问的,需要一点点的爬墙手段。 打开PowerShell,输入go version,可以看到go version go1.15.6...
再见2020
冬夜气温骤降,又是平凡的一天。 今早醒来,钻出被窝,太阳刺在脸上,恍惚间发现2020就剩最后一天了。 2020,多么好听的数字,可与我悲惨的遭遇却形成鲜明的对比。 希望在接下来的2021年,能够翻开新的一页。 愿一切美好都如期而至,喜欢的都拥有,失去的都释怀。
树莓派:第三篇 用树莓派做个语音助手
树莓派功能十分强大,作为一个微型电脑,独特的阵脚设计使得树莓派开发的自定义程度非常高。本篇博客通过使用python语言,封装一个简单的语音助手程序。 零、物品清单 123451:一个树莓派(3代、4代皆可)2:免驱的usb声卡(声卡需接在树莓派usb接口)3:麦克风(接在声卡上)4:有线音响(音响可连在声卡上,也可连在树莓派的3.5mm接口上)(树莓派播放设备默认使用3.5mm接口,具体过程需要自定义播放设备) 如果要设置usb声卡输出,参考教程配置声卡教程,如果使用默认3.5mm接口输出可以忽略。 设计语音助手有如下过程:录音、语音识别、图灵机器人对话、语音合成,以下对各个过程进行介绍。 一、pyaudio录音 使用python语言进行录音,主要是将说话者声音输出成一段音频文件。对于python来说,这很容易。通过引用pyaudio库,可以进行录音、播放、生成wav文件等。 首先,我们在树莓派上需要下载pyaudio库: pip3 install...
树莓派:第二篇 使用网页控制你的树莓派
树莓派就相当于一个简单的带GPIO口的Linux电脑,他的拓展性非常的强。我们可以用它来实现很多功能,特别是将树莓派当做是一个服务器,通过网页与树莓派进行交互。这个是一个用网页控制树莓派小车的程序。 今天的内容非常的少,所以很快就可以看完。 网页内容 我们首先要在网页上绘制一些按键,通过按键来控制树莓派。绘制方法比较简单,建议自学。将一下代码保存并命名为index.html index.html12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,...
大数据:第二篇 使用echarts工具实现数据可视化
echarts上手简单、自定义高。 本篇学习笔记适合前端小白,使用echarts不需要了解太多的js、HTML。教程分为两个部分:echarts学前准备,echarts学习记录 echarts学前准备 一、使用编辑器 echanrts可视化工具,通过HTML语言进行编写。一般编辑HTML的编辑器有Adobe Dreamweaver、Hbulider等编辑器(编辑器下载使用请百度) 具体编辑器可参考网址:编辑器参考...
大数据:第一篇 配置一个spark+Scala的环境
今天教大家配置一个IDEA的环境,以及如何新建一个工程,废话不多说,搞起来 1.下载IDEA 这里推荐一个微信公众号软件安装管家,关注后给它发送软件名,像下面这样: 选择一个最新的版本,最好是英文版 ps:IDEA已经有2020版,想要最新版的可以去官网下载再百度破解方法 点进去之后,就可以看到百度网盘的链接以及安装方法,写的很详细,所以我这里就不再赘述了 2.新建工程 3.添加scala文件夹 4.添加scala SDK ps:为了版本匹配,不是对工程很了解的同学尽量下载2.10.4 2.12.10,后面我添加的依赖都是这个版本 如果没有这个选项的话,要先安装Scala插件 5.修改工程目录 6.设置settings.xml文件 ps:有些同学是 Create...
机器学习:第三篇 使用随机梯度下降法(SGD)求解方程
使用随机梯度下降法(SGD)求解一元三次方程的根。在知乎上看的。 求解分析 原题目是求解: a3+a2a^3+a^2a3+a2 这里为了方便于我们理解,我把方程简化成2元方程:a2=49a^2 = 49a2=49。使用随机梯度下降法求解方程。 我们可以把我们平时遇到的神经网络看成是一个函数 y=fθ(x)y=f_\theta(x)y=fθ(x),其中y是神经网络的输出,θ\thetaθ是神经网络的参数,而x是神经网络的输入。 我们就可以把题目看成是有一个神经网络,假定函数为 y=fθ(x)=θ2−49y=f_\theta(x)=\theta^2-49y=fθ(x)=θ2−49,要求的这样一个最佳的θ\thetaθ...