聪明文档网

聪明文档网

最新最全的文档下载
当前位置: 首页> GitHub上四个超棒的TensorFlow开源项目

GitHub上四个超棒的TensorFlow开源项目

时间:2018-10-03 07:38:53    下载该word文档

GitHub上四个超棒的TensorFlow开源项目

TensorFlow是Google的开源深度学习库,你可以使用这个框架以及Python编程语言,构建大量基于机器学习的应用程序。而且还有很多人把TensorFlow构建的应用程序或者其他框架,开源发布到GitHub上。  这次跟大家分享一些GitHub上令人惊奇的TensorFlow项目,你可以直接在你的应用中使用,或者根据自身所需进一步予以改进。  TensorFlow简介如果你已经知道TensorFlow是什么,以及它是如何工作的,建议直接跳到下一节。如果你对使用Python学习TensorFlow感兴趣,网上也有相关的教程可以参考。  这一节内容比较傲适合初学者。如前所述,TensorFlow是一个深度学习库,使用这一框架,可以用来构建和测试深度神经网络。  深度学习让我们能够以极高的准确性构建复杂的应用程序。图像、视频、文本、音频等领域的问题,都可以通过深度学习解决。TensorFlow可以用于实现前述所有应用。  2015年11月9日,Google正式发布并开源TensorFlow,目前官方正式版本为TensorFlow 1.2。下面这段视频,是当年TensorFlow刚发布时,Google发布的一个官方介绍短片,Jeff Dean等出镜讲述。  TensorFlow很快成为GitHub上用户最多的深度学习框架。这个库之所以如此流行,是因为开发人员可以轻松的用其来搭建、测试和部署机器学习应用。 TensorFlow使用数据流图,上面是一个TensorFlow的示意图。我们不用关心这张图具体代表什么,但你需要知道,其中的椭圆和正方形代表节点,节点就是一些数学函数,你可以将节点分组形成各种数学计算,并得到输出。  箭头代表流动到各个节点的数据。所以TensorFlow也被成为数据流库。

四个TensorFlow开源项目: 项目一:Neural Style这是最酷的TensorFlow GitHub项目之一。神经风格是将一张照片的风格迁移到另一张照片上的过程,同时保留相关的特张。简单的来说,通过这个项目,你可以使用TensorFlow创建自己的Prisma应用程序。 如上图所示,把梵高画作的风格,迁移到一张狮子的照片上,就得到一个星空风格的狮子照片,这就是所谓的风格迁移。下面再展示一组这个项目的风格迁移,能把这张狮子的照片,变成哪些非常有趣的效果。 这个项目在风格迁移的同时,还能对图像进行语义分割。进而实现对内容的前景、背景进行不同的风格迁移处理。这个过程如下图所示: 另外这个算法还能适用于视频处理。上述图片处理使用的软硬件如下:  CPU: Intel Core i7-6800K@3.4GHz×12  GPU: NVIDIA GeForce GTX 1080/PCIe/SSE2  OS: Linux Ubuntu 16.04.1 LTS 64-bit  CUDA: 8.0  python: 2.7.12  tensorflow: 0.10.0rc  opencv: 2.4.9.1  GitHub地址如下:https://github.com/cysmith/neural-style-tf

项目二:Mozilla Deep Speech这个GitHub项目使用TensorFlow将语音转换为文本。语音转文本是一个热门的机器学习领域,然而各地的人们有着不同的口音,这也是一个难以解决的问题。不过仍然可以通过深度学习实现非常不错的准确性。 其实这个项目,是一个基于百度DeepSpeech架构的TensorFlow实现。换句话说,这个项目是百度的内核,Google的外貌。百度的相关论文地址在此:https://arxiv.org/abs/1412.5567DeepSpeech是吴恩达带领百度团队研发出的成果,最早发布于2014年底。今年初,百度基于DeepSpeech2,开发出一款名为SwiftScribe的应用(swiftscribe.ai),可以把语音文件更为快速、便捷的转换为文字。目前只限于英文。 所需软件环境如下:  Git Large File Storage  TensorFlow 1.0 or 1.1  SciPy  PyXDG  python_speech_features (nb: deprecated)  python sox  pandas  DeepSpeech native client libraries 如果你有至少8GB显存的英伟达GPU,强烈建议安装支持GPU的TensorFlow,因为使用GPU的训练比CPU快得多。  GitHub地址如下:https://github.com/mozilla/DeepSpeech

项目三:句子分类句子分类就是识别句子类型的过程。例如,对于“食物非常糟糕”这个句子,你可能希望将其分类为正面句子或负面句子,这也被称为情绪分析。这个问题的难点在于:句子结构带来的复杂性。  利用卷积神经网络,我们可以尝试构建一个强大的文本分类器。这里介绍的项目,是Yoon Kim论文《Convolutional Neural Networks for Sentence Classification(使用卷积神经网络进行句子分类)》的简单实现。这个论文的地址如下:  https://arxiv.org/abs/1408.5882  通过一个简单的CNN卷积神经网络,只进行很少的超参数调整和静态矢量,就可以得到出色的句子分类结果。  所需软件环境如下:  Python 3  Tensorflow > 0.12  Numpy  GitHub地址如下:https://github.com/dennybritz/cnn-text-classification-tf

项目四:图像分类/物体识别图像分类,也就是训练系统识别猫猫狗狗,或者车道、海滩、天际线等场景。计算机视觉是一个范围巨大的领域,从面部识别到情感识别,甚至可以进行视觉气体泄漏检测。虽然实现流程各异,但底层系统是相通的。  所以作者创建了一个TensorFlow GitHub库,其中包括两个相互关联的部分。第一部分:能够识别1000个对象的TensorFlow图像分类器。第二部分:创建并训练一个全新的图像分类器。  我们先来看看第一部分。Google的TensorFlow图像识别系统是目前最准确的图像分类软件。所谓图像识别,就是对图片中的内容进行识别,然而这并非对任意图片都能识别。  只有被训练过的对象,系统才能识别。例如,我们用三个类型训练分类器:猫、狗和牛。三个分类器只能识别相应类别中的一个。如果给出一张骆驼的图片会怎样?图片仍会通过一个分类器,但是置信率会非常的低。  如何快速创建一个TensorFlow图像分类器?只需要简单的三步。当然前提是你已经装好了TensorFlow,而且懂编程、会用Python。  第一步:下载  下载预训练的模型、图片和脚本。使用如下命令即可。  git clone https://github.com/akshaypai/tfClassifier  cd tfClassifier第二步:运行脚本找到最佳预测  给定一个图片,运行脚本来进行分类。默认情况下,会显示最佳预测。  Python classifier.py --image_file file_path_to_image为了获得top n分类,可以使用如下参数。  Python classifier.py --image_file file_path_to_image --num_top_predictions number_of_top_results示例:比方我们给出这样一张图片。 python classifier.py --image_file ~/Pictures/fruit.jpg  pomegranate (score = 0.98216)分类器表示:这是石榴,准确率98%。  第三步:运行脚本获得top n识别分类  现在我们尝试给出一个具有更多属性的图像,如下图的房子。 python classifier.py --image_file ~/Pictures/house.jpg --num_top_predictions 5  picket fence, paling (score = 0.95750)  worm fence, snake fence, snake-rail fence, Virginia fence (score = 0.03615)  beacon, lighthouse, beacon light, pharos (score = 0.00018)  boathouse (score = 0.00013)  patio, terrace (score = 0.00007)从上面的结果可以看出,分类器以95%的可能性预测图片中有一个栅栏,另外分类器还发现了其他围栏、庭院、露台等。  到此为止,你已经学到如何设置TensorFlow图像识别系统。虽然,这个系统被限制在预训练模型的几个分类器之间。  那么我们接下来看看第二部分,如何增加一些新的分类器。也是三个步骤。  第一步:下载预训练模型以及所需脚本  我已经把全部所需的文件整合进一个git仓库里。使用下面的命令可以下载。  git clone https://github.com/akshaypai/tfClassifier  cd tfClassifier第二步:设置图像文件夹  这个步骤用于设置文件夹结构,以便数据流图可以简单地拾取分类。假设,你想重新训练五种新的花朵分类器:玫瑰、郁金香、蒲公英、五月花和万寿菊,那么需要如下的三个步骤来创建相应的文件夹结构:  1、为每种花型创建一个文件夹,文件夹的名称就是类型的名称  2、将花的所有图像添加到各自的文件夹中,所有的玫瑰放入玫瑰花文件夹  3、将所有的文件夹,添加到一个父文件夹中,可以命名为:花  然后我们就得到如下的结构:  ~/flowers  ~/flowers/roses/img1.jpg  ~/flowers/roses/img2.jpg  ...  ~/flowers/tulips/tulips_img1.jpg  ~/flowers/tulips/tulips_img2.jpg  ~/flowers/tulips/tulips_img3.jpg  ...这样,文件夹结构已经OK了。  第三步:运行预训练脚本  使用如下命令运行脚本。  python retrain.py --model_dir ./inception --image_dir ~/flowers --output_graph ./output --how_many_training_steps 500部分命令行参数:  -model_dir 这个参数给出了预训练模型的位置。  -image_dir 在步骤二中创建的文件夹路径  -output_graph 存储新训练图的位置  -how_many_training_steps 这代表要执行的迭代次数,默认为4000  好了,以上就是如何重新训练一个TensorFlow Inception模型。一旦你有了模型,就能开始用来进行分类处理。

  • 29.8

    ¥45 每天只需1.0元
    1个月 推荐
  • 9.9

    ¥15
    1天
  • 59.8

    ¥90
    3个月

选择支付方式

  • 微信付款
郑重提醒:支付后,系统自动为您完成注册

请使用微信扫码支付(元)

订单号:
支付后,系统自动为您完成注册
遇到问题请联系 在线客服

常用手机号:
用于找回密码
图片验证码:
看不清?点击更换
短信验证码:
新密码:
 
绑定后可用手机号登录
请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系 在线客服