学习
实践
活动
工具
TVP
写文章

使用Google Colaboratory训练神经网络

作者:Sagar Howal

编译:weakish

编者按:数据科学开发者Sagar Howal通过一个浅显易懂的示例,介绍了如何使用Google Colaboratory——Google提供的用于数据科学和机器学习的协作开发工具。Colaboratory十分好用,而且是免费的。

Google最近发布了Google Colaboratory(g.co/colab)。Google Colaboratory原为Google数据科学编程的内部协作工具,现在Google把它作为公开服务发布出来。Google Colaboratory基于Jupyter开源项目,并集成了Google Drive。Colaboratory使用户能像使用Google文档或电子表格一样方便地使用Jupyter Notebook。

Colaboratory

使用Colaboratory很简单。如果你有Google账号的话,直接访问Colaboratory网站即可开始使用。Colaboratory让你使用Google的虚拟机运行机器学习任务,这样你可以直接上手构建模型,无需担忧算力问题。而且,它是免费的。

初次打开Colaboratory,你会看到一个欢迎文件“Hello, Colaboratory”,里面有一些基本的例子。你可以尝试一下。

在Colaboratory中,你可以像在Jupyter Notebook中一样编写代码。按可以运行代码块,结果会显示在代码块下方。

除了代码之外,你也可以运行shell命令,加上!作为前缀就可以,例如:

下面我将通过一个例子演示如何使用Colaboratory训练神经网络。我们将在UCI机器学习仓库提供的威斯康星州乳腺癌数据库上训练一个神经网络。

这里是与本文配套的Colaboratory notebook。

深度学习

本文假设读者对神经网络和深度学习有一定了解。如果你需要温习这方面的知识,可以参考Carlos Greshenson的论文(这是一篇非常容易阅读的论文)。你也可以参考其他网上资源。

不过,即使你现在还不理解神经网络,也不用担心,因为我们会循序渐进。让我们开始……

代码

问题:

研究人员获取了细针穿刺抽吸活组织检查(FNA)数据,生成对应的数码图像。数据集中包含了描述图像中的细胞核特性的实例。每个实例标注为“恶性”或“良性”。我们的任务是在这些数据上训练网络,以诊断乳腺癌。

在Colaboratory中新建一个notebook(untitled.ipynb文件)。

正如我们前面提到的,notebook背后是一个虚拟linux机器,因此你可以安装项目所需的软件包。现在就来试一下,在代码块中输入!ls(记得在所有命令前加!):

接下来我们上传数据集:

输入!ls检查下文件是否就绪:

数据处理:

导入数据集(使用pandas):

分离因变量和自变量:

包含单独的一列,其中有两个类别M和B,分别代表“恶性”和“良性”。它们需要被编码为相应的数学形式,即和。这可以通过LabelEncoder类(标签编码器)实现。

(如果你的数据包含超过2个类别,你可以使用OneHotEncoder)

数据就绪之后,让我们切分训练集和测试集。我们使用Scikit-Learn中的类:

参数定义了测试集的比例。也就是80%作为训练集,20%作为测试集。

Keras

Keras是构建神经网络的高层API,底层操作基于Tensorflow。因此,安装Keras前先要安装Tensorflow。Colaboratory的虚拟机已经预装了Tensorflow。输入以下命令可以查看当前安装的Tensorflow版本:

我希望本文可以帮助你上手Colaboratory。本文配套的Notebook在此(https://colab.research.google.com/notebook#fileId=1aQGl_sH4TVehK8PDBRspwI4pD16xIR0r)。

原文地址:https://towardsdatascience.com/neural-networks-with-google-colaboratory-artificial-intelligence-getting-started-713b5eb07f14

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180225G0RJSK00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券