如何在5分钟内在R中设置TensorFlow 2(额外的图像识别教程)

2020年5月14日
通过

这篇文章最初发表于business-science.io,并热心捐助188bet app]。(您可以报告关于本页内容的问题金宝搏网址在这里)
想在r -blogger上分享你的内容吗?188bet app188bet app 如果你有一个博客,或者在这里如果你不。

两个最流行的数据科学语言-Python和R-经常被当作竞争对手。这与事实相去甚远。学习使用两种语言的优势的数据科学家是有价值的,因为他们没有限制。

  • 机器学习和深度学习:他们可以转而使用Pythonscikit学习tensorflow
  • 数据争吵、可视化、应用和报告:它们可以快速转换成R来使用tidyverse,闪亮的rmarkdown

最重要的是,两者都要知道RPython让你超级富有成效。

文章更新:

5分钟吗?
然后让我们为深度学习设置TensorFlow 2

我们将通过基本的设置技巧的专业的-那些使用Python从R通过网状

  • 安装TensorFlow在R

  • 做一个图像识别分析来验证TensorFlow是有效的。

这是图像识别教程。你将对时尚图片进行分类。

TensorFlow踝靴分类

TensorFlow踝靴分类-测试TF是否工作的教程

使用TensorFlow & R
在商业项目中如何将它们结合起来使用?

设置TensorFlowR是一个疯狂的生产力助推器。您可以充分利用Python + r的优点,但您仍然需要这样做学习如何将Python和R一起使用真正的商业项目。它是不可能的在一篇短文里教你所有的进与出。但是,我有个好消息!

我刚刚发布了一个新的5部分PYTHON + R学习实验系列(在这里注册)这将告诉你如何使用PythonR真正的商业项目:

  • 实验室34:人力资源员工集群
  • 实验室35:高级客户细分和市场购物篮分析
  • 实验室36:TensorFlow金融
  • 实验室37:用于能源需求预测的TensorFlow
  • 实验室38:社交媒体文本分析!

现场直播是免费的。

在这里注册,免费参加Python + R学习实验室。我会提前通知你一小时的课程,你可以通过网络研讨会参加。



Python + R,注册新的学习实验系列

在R中安装TensorFlow

这个过程应该在5分钟内完成。首先我们有一些要求TensorFlow 2安装。

TensorFlow 2.0.0需求

这些在将来可能会改变,但是现在的需求是:

  • Python 3.5 - -3.7
  • windows7或更新版本
  • MacOS 10.12.6或更高版本
  • Ubunto 16.04或更高版本

如果你遵循Scikit学习R教程,我们使用了Python 3.8(最新的稳定版本)。我们不能在TensorFlow中使用Python 3.8,所以我们需要创建一个新的环境。在本教程中,我们将使用Python 3.6。

Conda需求

如果你没有安装Conda,请在这里安装:蟒蛇安装

用网孔在R内安装张拉索

用R表示。安装和加载tidyverse,网状,tensorflow

图书馆(tidyverse)图书馆(网状)图书馆(tensorflow)

接下来,运行install_tensorflow ()在你的工作环境中。安装大约需要3-5分钟金宝搏网址TensorFlow在一个名为的新Conda环境中“py3.6”。

install_tensorflow(方法=“conda”,版本=“默认”,#安装TF 2.0.0(截至2020年5月15日)envname=“py3.6”,conda_python_version=“3.6”,extra_packages=c(“matplotlib”,“numpy”,“熊猫”,“scikit-learn”))

注:可以实际指定要安装的TensorFlow版本版本参数。这有助于从CPU vesion切换到GPU版本(更强大、更可靠)或访问较老版本的TF。

我们可以检查一下py3.6conda环境已经创建。

conda_list()
python ## 1: anaconda3/ Users/mdancho/opt/anaconda3/bin/python ## 2: py3.6/ Users/mdancho/opt/anaconda3/envs/py3.6/bin/python ## 3: py3.7/ Users/ py3.7/bin/python ## 4: py3.8/ Users/mdancho/opt/anaconda3/envs/py3.8/bin/python

接下来,我们告诉网状使用py3.6conda环境。

use_condaenv(“py3.6”,要求=真正的)

祝贺安装完成!-现在让我们使用TensorFlow对图像进行分类。

图像识别分析
验证TensorFlow是否工作

让我们看一段简短的图像识别教程。本教程来自于谷歌基本分类:对服装图像进行分类

步骤1 -创建一个Python代码块

使用下面的Pro-Tip # 1做一个“Python代码块”

Python代码块

Python代码块

步骤2 -导入库

导入所需的库:

  • 深度学习:tensorflowkeras
  • 数学:numpy
  • 可视化:matplotlib
# TensorFlow和tf.keras进口tensorflow作为特遣部队tensorflow进口keras#助手库进口numpy作为np进口matplotlib.pyplot作为plt

查阅tensorflow确保我们使用的是2.0.0+。

打印(特遣部队__version__)
# # 2.0.0

第三步-载入时尚图片

加载fashion_mnist数据集的keras

fashion_mnist=keras数据集fashion_mnist(train_images,train_labels),(test_images,test_labels)=fashion_mnistload_data()

我们有60000个训练图像已经被标记。

train_images形状
## (60000, 28,28)

我们可以检查唯一的标签,看看什么分类的图像属于。注意,这些是0到9之间的数值。

np独特的(train_labels)
# #数组([0,1,2,3,4,5,6,7,8,9],dtype = uint8)

对应的标签有:

class_names=(“t恤/最高”,“裤子”,“套衫”,“衣服”,“外套”,“凉鞋”,“衬衫”,“运动鞋”,“包”,“踝靴”]

我们可以看到第一张图片是什么样子的matplotlib

plt数字()pltimshow(train_images(0])pltcolorbar()
##
plt网格()plt显示()

块未命名-块11的情节

我们也可以看看前25张图片。

plt数字(figsize=(10,10))范围(25):plt次要情节(5,5,+1)pltxticks([])pltyticks([])plt网格()pltimshow(train_images(),提出=plt厘米二进制)plt包含(class_names(train_labels(]])plt显示()

块未命名-块-12的情节

步骤4 -使用Keras建模

做一个keras模型使用连续()分三步:压平、压密、压密。

模型=keras顺序([keras(input_shape=(28,28)),keras密集的(128,激活=“relu”),keras密集的(10)])

接下来,编译带有“adam”优化器的模型。

模型编译(优化器=“亚当”,损失=特遣部队keras损失SparseCategoricalCrossentropy(from_logits=真正的),指标=(“准确性”])

检查模型摘要。

模型总结()
# #模型:“顺序”# # _________________________________________________________________ # #层(类型)输出形状参数# # # = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = # #平(平)(没有,784)0 # # _________________________________________________________________ # #密度(密度)(没有,128)100480 # # _________________________________________________________________ # # dense_1(致密)(没有,10)1290 # # = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = # #总参数:101770 # #可训练的参数:101770 # # Non-trainable params: 0 # # _________________________________________________________________

步骤5 -适合Keras模型

关键步骤-模型拟合。确保这一步是有效的!

模型适合(train_images,train_labels,时代=10,详细的=1)

TensorFlow模型训练

TensorFlow模型训练

第六步-训练历史

# Python历史=模型历史历史历史
## {'loss': [3.68145, 0.74085, 0.7941666, 0.8244333, 0.8283167, 0.8348, 0.83521664], 'accuracy': [0.68145, 0.74085, 0.79331666, 0.8143, 0.828833, 0.8243167, 0.88348, 0.83521664]

注意,这是一个R代码块(不是Python代码块)。

# R代码块(不是Python)py美元历史% > %as_tibble()% > %unnest运算(损失,精度)% > %rowid_to_column()% > %pivot_longer(-rowid)% > %ggplot(aes(rowid,价值,颜色=的名字))+geom_line()+geom_point()+实验室(标题=“训练准确性”)

块未命名-块-18的情节

步骤7 -测试准确度

评估样本外图像的准确性。

# Pythontest_loss,test_acc=模型评估(test_images,test_labels,详细的=2)
## 10000/1 - 0s -损耗:0.4470 -精度:0.8098

第八步——做预测

该模型产生线性输出,称为“logits”。softmax层将logits转换为概率。

probability_model=特遣部队keras顺序([模型,特遣部队kerasSoftmax()))

然后我们可以对所有的测试图像进行分类

预测=probability_model预测(test_images)

我们可以对第一幅图像做一个预测。

预测(0]
数组([7.7921860e-21, 3.3554016e-13, 0.0000000e+00, 1.8183892e-15, ## # 0.0000000e+00, 4.0730215e-03, 8.1443369e-20, 4.2793788e-03, ## 2.6940727e-18, 9.9164760e-01], dtype=float32)

使用np.argmax ()以确定哪个指数的概率最高。

npargmax(预测(0])
# # 9

索引值可以用np.max ()

np马克斯(预测(0])
# # 0.9916476

获取类名。

class_names(npargmax(预测(0)))
# #的及踝靴

将图像形象化。

plt数字()pltimshow(test_images(0])pltcolorbar()
##
plt网格()plt显示()

块未命名的情节-块-26

不错的工作如果你毫发无伤地完成了本教程,那么你做得很好!你准备好了TensorFlow学习实验室。

专业提示(Python in R)

现在你有python运行在R,使用这些专业提示,让你的体验更愉快。

专业提示#1 - Python块键盘快捷方式

这一点我怎么强调都不过分为Python代码块设置键盘快捷方式。这对于Rmarkdown文档来说是一个巨大的生产力提升器。

  • 我的偏好:Ctrl + Alt + P

当你遇到Ctrl + Alt + P,一个{python}代码块将出现在R标记文档中。

使用Python快捷键

Pro-Tip #2 -交互式地使用Python

若要在R Markdown中调试Python代码块,可以使用repl_python ()将控制台转换为Python代码控制台。这样做:

  • 在R控制台中,您可以使用repl_python ()。你会看到>>>指示您处于Python模式。
  • 确保选择了正确的Python / Conda环境。
  • 要在控制台中转义Python,只需单击逃避

Python交互式地

Pro-Tip #3 -我的前4 Conda终端命令

在某些情况下,您将需要创建、修改、添加更多的包到您的Conda环境中。这里有4个有用的命令:

  1. 运行conda env列表列出可用的conda环境
  2. 运行conda激活激活conda环境
  3. 运行conda更新——所有更新所有python在conda环境中封装。
  4. 运行conda安装安装新包

在光鲜的应用程序内部使用Python

到目前为止我们还没有谈到金宝搏网址闪亮的- - -web应用程序框架那是用来拿你的pythonR机器学习模型进入生产。



工商科学应用图书馆

这是一个元应用程序,其中包含了一些出色的应用程序

如果你想让数据科学产生成果,你的工具箱里需要有闪亮的R。您无法将机器学习应用程序与其他“BI”工具(如Tableau、PowerBI和QlikView)一起投入生产。

关键点:你可以用闪亮来生产Scikit学习TensorFlow模型。

如果你需要学习R闪亮尽可能快我为你准备了完美的程序。它会加速你的事业。4路R-Track捆绑通过业务的科学。

有关于使用Python + R的问题吗?

请在下方评论。

如果你打算用Python+R在工作中,这是显而易见的参加我的学习实验室(他们可以免费现场观看)。

留下你的评论对于作者,请跟随链接并在他们的博客上发表评论:business-science.io

188bet appR-bloggers.com提供了每天更新的电子邮件金宝搏网址 R新闻和教程金宝搏网址金宝搏网址 还有很多其他的话题。如果你想发布或者找到一份R/数据科学的工作,请点击这里
想在r -blogger上分享你的内容吗?188bet app188bet app 如果你有一个博客,或者在这里如果你不。



如果你走到这一步,为什么不呢订阅的更新从这个网站吗?选择你的味道:电子邮件,推特,1188bet app,或脸谱网

评论都关门了。

搜索R-blo188bet appggers

赞助商

永远不要错过更新!
订阅R-bloggers188bet app接收
带有最新帖子的电子邮件。
(您将不会再看到此消息。)

点击此处关闭(此弹出窗口将不会再次出现)