本文是为既没有机器学习基础也没了解过TensorFlow的码农、序媛们准备的。如果已经了解什么是MNIST和softmax回归本文也可以再次帮助你提升理解。在阅读之前,请先确保在合适的环境中安装了TensorFlow(windows安装请点这里,其他版本请官网找),适当编写文章中提到的例子能提升理解。
文章目录 mnist数据集 简介 图片和标签 One-hot编码(独热编码) 神经网络的重要概念 输入(x)输出(y)、标签(label) 损失函数(loss function) 回归模型 学习速率 softmax激活函数 Tensorflow识别手写数字 构造网络 model.py 训练 train.py 验证准确率 train.py 主函数 train.py mnist数据集 简介 MNIST是一个入门级的计算机视觉数据集,它包含各种手写数字图片。在机器学习中的地位相当于Python入门的打印Hel
关键词:Python,tensorflow,深度学习,卷积神经网络 正文如下: 前言 上月导师在组会上交我们用tensorflow写深度学习和卷积神经网络,并把其PPT的参考学习资料给了我们, 这是codelabs上的教程:《TensorFlow and deep learning,without a PhD》 https://codelabs.developers.google.com/codelabs/cloud-tensorflow-mnist/#0 当然需要安装python,教程推荐使用pytho
导语:据介绍,Google Developers Codelabs 提供了有引导的、教程式的和上手式的编程体验。大多数 Codelabs 项目都能帮助你了解开发一个小应用或为一个已有的应用加入新功能的过程。这些应用涉及到很多主题,包括 Android Wear、Google Compute Engine、Project Tango、和 iOS 上的 Google API。 本项目的原文可参阅:https://codelabs.developers.google.com/codelabs/cloud-tens
作者:陈迪豪,就职于小米,负责企业深度学习平台搭建,参与过HBase、Docker、OpenStack等开源项目,目前专注于TensorFlow和Kubernetes社区。 原文:TensorFlow四种Cross Entropy算法实现和应用,作者授权CSDN转载。 欢迎技术投稿、约稿、给文章纠错,请发送邮件至heyc@csdn.net 交叉熵介绍 交叉熵(Cross Entropy)是Loss函数的一种(也称为损失函数或代价函数),用于描述模型预测值与真实值的差距大小,常见的Loss函数就是均方
前言 上月导师在组会上交我们用tensorflow写深度学习和卷积神经网络,并把其PPT的参考学习资料给了我们, 这是codelabs上的教程:《TensorFlow and deep learning,without a PhD》 https://codelabs.developers.google.com/codelabs/cloud-tensorflow-mnist/#0 当然需要安装python,教程推荐使用python3。 好多专业词太难译了,查了下,大家有些都是不译的。 比如:dropou
故事起源于我之前博客【NLP笔记:fastText模型考察】遇到的一个问题,即pytorch实现的fasttext模型收敛极慢的问题,后来我们在word2vec的demo实验中又一次遇到了这个问题,因此感觉再也不能忽视这个奇葩的问题了,于是我们单独测了一下tensorflow与pytorch的cross entropy实现,发现了如下现象:
内容参考: Tensorflow四种交叉熵函数计算公式:tf.nn.cross_entropy TensorFlow四种Cross Entropy算法实现和应用
不同的损失函数可用于不同的目标。在这篇文章中,我将带你通过一些示例介绍一些非常常用的损失函数。这篇文章提到的一些参数细节都属于tensorflow或者keras的实现细节。
官网:https://www.tensorflow.org/tutorials/layers
王小新 编译自 Google Cloud Blog 量子位 出品 | 公众号 QbitAI 你们程序员啊,连带娃都这么技术流…… 今年夏天,谷歌云负责维护开发者关系的Kaz Sato带着他的儿子,用一些传感器和一个简单的机器学习线性模型,开发了一个“猜拳机器”,能检测石头剪刀布的手势。 最近他还还根据这个过程写了一份教程,详细介绍了怎样构建这个机器,以及怎样用机器学习算法解决日常问题。 量子位搬运编译整理如下,适合有一定编程基础的同学,需要大约200美元的硬件设备。 我们先来看一下这个机器: 上面视频中,
这是我找的一个Tensorflow的书,作者是刘光聪。书写的非常不错,我也借此机会学习一波。书中的TensorFlow使用的是1.2版本,目前来说算是很新的。 作者在前言里面写到:
MNIST是一个很有名的手写数字识别数据集(基本可以算是“Hello World”级别的了吧),我们要了解的情况是,对于每张图片,存储的方式是一个 28 * 28 的矩阵,但是我们在导入数据进行使用的时候会自动展平成 1 * 784(28 * 28)的向量,这在TensorFlow导入很方便,在使用命令下载数据之后,可以看到有四个数据集:
分类问题和回归问题是监督学习的两大种类。这一节将分别介绍分类问题和回归问题中使用到的经典损失函数。分类问题希望解决的是将不同的样本分到事先定义到的经典损失函数。分类问题希望解决的将不同的样本分到事先定义好的类别中。
导语:本文是日本东京 TensorFlow 聚会联合组织者 Hin Khor 所写的 TensorFlow 系列介绍文章,自称给出了关于 TensorFlow 的 gentlest 的介绍。 第一部分 引言 我们要解决的是一个过于简单且不现实的问题,但其好的一面是便于我们了解机器学习和 TensorFlow 的概念。我们要预测一个基于单一特征(房间面积/平方米)的单标量输出(房价/美元)。这样做消除了处理多维数据的需要,使我们能够在 TensorFlow 中只专注于确定、实现以及训练模型。 机器学习简介 我
MNIST机器学习入门 博文 ID:机器学习和TensorFlow都不太了解的新手。如果你已经了解MNIST和softmax回归(softmax regression)的相关知识,你可以阅读这个快速上
均方误差(Mean Square Error),应该是最常用的误差计算方法了,数学公式为:
本文主要介绍了理解交叉熵作为损失函数在神经网络中的作用,说明了其在多分类问题中的重要性,并通过举例进行说明。最后,在TensorFlow中实现了交叉熵损失函数的计算,并进行了实例化应用。
在深度学习分类任务中,我们经常会使用到损失函数,今天我们就来总结一下深度学习中常见的损失函数。
这是用 TensorFlow 来识别手写数字的官方经典入门例子,数据都是已经处理过准备好了的,但是只到计算准确度概率那就停了,缺少拿实际图片运用的例子,初学者看完之后难免发蒙。于是,本文第二段用一些实际图片来验证我们的模型。
原始的网址:https://www.tensorflow.org/versions/r0.12/tutorials/mnist/beginners/index.html#mnist-for-ml-beginners
百度推出飞桨(PaddlePaddle)后,不少开发者开始转向国内的深度学习框架。但是从代码的转移谈何容易,之前的工作重写一遍不太现实,成千上万行代码的手工转换等于是在做一次二次开发。
在介绍完了如何处理数据以及如何构造样本之后,就可以构建我们的神经网络语言模型了,下面是使用LSTM构建的语言模型的大体结构:
当我们开始学习编程的时候,第一件事往往是学习打印"Hello World"。就好比编程入门有Hello World,机器学习入门有MNIST。
机器之心原创 作者:吴攀、李亚洲 当地时间 3 月 8 日-10 日,Google Cloud NEXT '17 大会在美国旧金山举行。谷歌在本次大会上正式宣布了对数据科学社区 Kaggle 的收购并宣布了多个重量级云 API。机器之心作为受邀媒体也在第一时间从现场发回了报道:《现场直击 | 李飞飞首度亮相谷歌云大会:发布全新 API,解读 AI 民主化》和《现场直击 | 谷歌云大会最后一天解读开放性:从 TensorFlow 开源到开放云平台》。而作为开发者,最关心的则莫过于本次大会中各种更加详细和专一的
译:胡杨& 面包君&Fantzy同学 解答:寒小阳 & 龙心尘 编者按:本期文章是我们为读者带来的【斯坦福大学CS224d课程】专题第五期。文章内容为斯坦福cs224d 作业测验的内容的第二部分,供
原项目 | https://github.com/aymericdamien/TensorFlow-Examples/
http://www.cnblogs.com/fydeblog/p/7436310.html
在前言中,已经提到经常使用深度学习的领域就是模式识别。编程初学者都是从打印“Hello World”开始,深度学习中我们则是从识别手写数字开始。 本章中,我会讲解如何在TensorFlow中一步步建立单层神经网络,这个建立的神经网络用来识别手写数字,它是基于TensorFlow官方新手指南中的一个例子改变而来。 根据本书的风格,在本例子中会简化一些概念与理论证明。 如果读者在读完本章后,有兴趣研究例子中相关的理论概念,建议读者去阅读神经网络与深度学习一书,该书同样可在网上获得,该书阐述了本例子中的一些深度理
[TensorFlow-Examples]https://github.com/aymericdamien/TensorFlow-Examples
1 环境搭建 (Windows) 安装虚拟环境 Anaconda,方便python包管理和环境隔离。 Anaconda3 4.2 http://mirrors.oa.com/anaconda/archive/Anaconda3-4.2.0-Windows-x86_64.exe,自带python 3.5。 创建tensorflow隔离环境。打开Anaconda安装后的终端Anaconda Prompt,执行下面命令 conda create -n tensorflow python=3.5 #创建名为ten
上一期我们发布了“一文读懂TensorFlow(附代码、学习资料)”,带领大家对TensorFlow进行了全面了解,并分享了入门所需的网站、图书、视频等资料,本期文章就来带你一步步上手TensorFlow。 1. 前言 深度学习算法的成功使人工智能的研究和应用取得了突破性进展,并极大地改变了我们的生活。越来越多的开发人员都在学习深度学习方面的开发技术。Google推出的TensorFlow是目前最为流行的开源深度学习框架,在图形分类、音频处理、推荐系统和自然语言处理等场景下都有丰富的应用。尽管功能强大,
从本章起,我们将正式开始介绍神经网络模型,以及学习如何使用TensorFlow实现深度学习算法。人工神经网络(简称神经网络)在一定程度上受到了生物学的启发,期望通过一定的拓扑结构来模拟生物的神经系统,是一种主要的连接主义模型(人工智能三大主义:符号主义、连接主义和行为主义)。本章我们将从最简单的神经网络模型感知器模型开始介绍,首先了解一下感知器模型(单层神经网络)能够解决什么样的问题,以及它所存在的局限性。为了克服单层神经网络的局限性,我们必须拓展到多层神经网络,围绕多层神经网络我们会进一步介绍激活函数以及反向传播算法等。本章的内容是深度学习的基础,对于理解后续章节的内容非常重要。
本文长度为7196字,建议阅读10分钟 本文为你讲解如何使用Tensorflow进行机器学习和深度学习。 1. 前言 深度学习算法的成功使人工智能的研究和应用取得了突破性进展,并极大地改变了我们的生活。越来越多的开发人员都在学习深度学习方面的开发技术。Google推出的TensorFlow是目前最为流行的开源深度学习框架,在图形分类、音频处理、推荐系统和自然语言处理等场景下都有丰富的应用。尽管功能强大,该框架学习门槛并不高,只要掌握Python安装和使用,并对机器学习和神经网络方面的知识有所了解就可以上
在很多情况下,可能会遇到数据不平衡问题。数据不平衡是什么意思呢?举一个简单的例子:假设你正在训练一个网络模型,该模型用来预测视频中是否有人持有致命武器。但是训练数据中只有 50 个持有武器的视频,而有 1000 个没有持有武器的视频。如果使用这个数据集完成训练的话,模型肯定倾向于预测视频中没有持有武器。针对这个问题,可以做一些事情来解决:
提到二分类首先想到的可能就是逻辑回归算法。逻辑回归算法是在各个领域中应用比较广泛的机器学习算法。逻辑回归算法本身并不难,最关键的步骤就是将线性模型输出的实数域映射到[0, 1]表示概率分布的有效实数空间,其中Sigmoid函数刚好具有这样的功能。
准备工作 由于将TensorFlow安装到了Conda的tensorflow环境,虽然可以用Jupyter notebook打开,但是没有提示,写代码不方便,所以使用PyCharm进行编写。设置如下: 如果是新建项目,在选择使用python的地址的地方,找到anaconda目录,点击envs ----> tensorflow -----> bin -----> python2.7(我的是2.7) 如果已经创建了项目,但是没有用该环境下的python,就进入项目的设置里,找到project interpret
手写数字识别是机器学习领域中的一个经典应用,很多机器学习算法以这个问题作为示例,其地位相当于程序界的hello world。这个问题具有以下两个特点:
本文的主要目的是教会大家运用google开源的深度学习框架tensorflow来实现手写体数字识别,给出两种模型,一种是利用机器学习中的softmax regression作分类器,另一种将是搭建一个深度神经网络以达到99%正确率的手写体数字识别模型。 其次,理解tensorflow工作流程和运行机制。最后,也会让大家了解一下深度神经网络的搭建过程。
这是一个TensorFlow的系列文章,本文是第二篇,在这个系列中,你讲了解到机器学习的一些基本概念、TensorFlowa的使用,并能实际完成手写数字识别、图像分类、风格迁移等实战项目。 文章将尽量用平实的语言描述、少用公式、多用代码截图,总之这将是一份很赞的入门指南。欢迎分享/关注。 上一篇:《五分钟喝不完一杯咖啡,但五分钟可以入门TensorFlow》 今天将用TensorFlow实现一个手写数字识别功能,来展示TensorFlow如何用神经网络实现对图片的识别。google也为入门者提供了一个这样
参考书 《TensorFlow:实战Google深度学习框架》(第2版) 两个计算交叉熵函数的区别:tf.nn.softmax_cross_entrypy_with_logits和tf.nn.sparse_softmax_cross_entrypy_with_logits #!/usr/bin/env python # -*- coding: UTF-8 -*- # coding=utf-8 """ @author: Li Tian @contact: 694317828@qq.com @soft
本文介绍一些机器学习的入门知识,从安装环境到跑通机器学习入门程序MNIST demo。
「声明:此实践来自于 R2RT大神博客中的 RNN in Tensorflow 的两篇教程之一,版权归 R2RT 所有,不妥删。这里渣翻译主要是为了自己理解学习,且后面训练的结果有些不太一样,有些内容也没详细翻译。感谢 R2RT 以及评论中的一些大神对于概率算法的的解释。」
在科学研究中,从方法论上来讲,都应“先见森林,再见树木”。当前,人工智能学术研究方兴未艾,技术迅猛发展,可谓万木争荣,日新月异。对于AI从业者来说,在广袤的知识森林中,系统梳理脉络,才能更好地把握趋势。为此,我们精选国内外优秀的综述文章,开辟“综述专栏”,敬请关注。
假设一门语言中所有可能的句子服从某一个概率分布,每个句子出现的概率加起来为1,那么“语言模型”的任务就是预测每个句子在语言中出现的概率。对于语言中常见的句子,一个好的语言模型应得出相对较高的概率;而对于不合语法的句子,计算出的概率则应接近于零。把句子看成单词的序列,语言模型可以表示为一个计算p(w1,w2,w3,…,wm)的模型。语言模型仅仅对句子出现的概率进行建模,并不尝试去“理解”句子的内容含义。比如说,语言模型能告诉我们什么样的句子是常用句子,但无法告诉我们两句话的意思是否相似或者相反。
根据应用场景中,分类目标的独立性与互斥性, 可以选择 sigmoid 或者 softmax 来实现.
手写数字识别问题 图像识别是深度学习众多主流应用之一,手写数字识别则是图像识别范畴简化版的入门学习经典案例。在TensorFlow的官方文档中,把手写数字识别“MNIST”案例称为机器学习项目的“Hello World”。从这个案例开始,我们的连载才开始有了一些“人工智能”的感觉。 问题的描述是这样: 有一批手写数字的图片,对应数字0-9。通过机器学习的算法,将这些图片对应到文本字符0-9。用通俗的话来说,就是计算机认出了图片上面手写的数字。 从问题描述可见这个机器学习项目的“Hello World”
在计算loss的时候,最常见的一句话就是tf.nn.softmax_cross_entropy_with_logits,那么它到底是怎么做的呢?
领取专属 10元无门槛券
手把手带您无忧上云