写给程序员的TensorFlow教程-网站备案查询API及验证码识别

终于迎来了我们的《写给程序员的TensorFlow教程》的第二弹,离第一弹时间已经过去了好久好久好久好久…

等了这么久,是不是很多朋友已经晋升币圈大佬,再也不用看AI教程了。不过金钱如过眼云烟,还是有一技傍身才是真正的安全。

话不多说,先看之前的基础教程:

Discuz验证码识别(准备篇)-写给程序员的TensorFlow教程

前面算是带大家入个门。今天咱们就尽量少废话,直接进入主题。

之前说第四篇文章要讲一讲赶集的电话识别,然而貌似现在赶集的电话已经不公开展示了。所以我们今天继续看看验证码,不过换汤不换药,思路是完全一样的。今天我们要处理的是备案查询网站的验证码识别,地址是:http://www.miitbeian.gov.cn/publish/query/indexFirst.action。

我们先来看看这个验证码长什么样子:

神箭手上已经把整个验证码识别和爬虫部分整合成了一个API可以直接调用,懒得写的同学可以直接移步:

Discuz验证码识别(上线篇)-写给程序员的TensorFlow教程

经过前两篇文章的开发,咱们今天终于要进入令人激动的上线篇了。(最近刚刚发布的TensorFlow lite其实也是部署上线的工具集之一)话说我在学习TensorFlow的时候,发现这部分的教程是尤其少。大部分教程都是先上来教一个回归,再来一个CNN,在来几篇保存模型和TensorBoard就结束了。我们这篇文章就来重点聊一聊部署上线。

前两篇文章传送门:

Discuz验证码识别(准备篇)-写给程序员的TensorFlow教程

Discuz验证码识别(编码篇)-写给程序员的TensorFlow教程

这篇文章会被分成四个部分,第一部分继续上篇文章,聊一聊第四步调参;第二部分聊一聊训练中的模型保存和载入;第三部分,介绍TensorFlow Serving;第四部分 就是最重要的部署上线流程。

Discuz验证码识别(编码篇)-写给程序员的TensorFlow教程

欢迎大家回到《写给程序员的TensorFlow教程》系列中来,本系列希望能给广大想转型机器学习的程序员带来一些不一样的内容,我们不讲公式,只调方法,不聊文献,只说代码。不求最好,只求有用。带大家迅速上手TensorFlow(以下简称TF。我是强迫症患者,每次都敲驼峰太累了)。

系列教程前篇:

Discuz验证码识别(准备篇)-写给程序员的TensorFlow教程

下面正式要开始了我们真正的TensorFlow编程,这篇文章主要内容分为两部分,一部分是介绍TF的基础知识和一些常用接口;第二部分是接着上节课的内容继续执行我们的解题思路。

我们先进入第一部分

Part 1、TF基础知识

虽然我们机器学习的基础概念可以先不深究,但是TF还是得讲一讲的,不然咱们就算抄再多代码也是天书,完全达不到渗透法的学习目的,所以我们先给大家讲一讲TF的基本代码结构。

Discuz验证码识别(准备篇)-写给程序员的TensorFlow教程

蛰伏了快两个月了,终于迎来了新系列的第一篇文章。斟酌来斟酌去,决定将系列名字定为-《写给程序员的TensorFlow教程》也算是给这个系统文章定个基调。

太多的TensorFlow入门教程上来就是列了一系列国外的文献,视频。或者直接扔一堆代码,实在难以称之为入门。我们希望针对想学习TensorFlow的程序员来写一系列教程,聊一聊如何在基本掌握python的情况下,能够快速的使用TensorFlow这个工具解决实际问题。

首先,这个系列文章是之前的系列-《反爬与反反爬的奇技淫巧》的番外篇,

之所以是反爬系列的番外篇,因为我们主要是讨论如果使用TensorFlow解决爬虫中常见的问题,包括验证码,图片电话号码识别这类问题(这个系列主要是图像识别)。不过虽然跟反爬相关,但是这个系列依然可以独立来看,不做爬虫的朋友也不会受影响。

作为系列文章第一篇,先说说这个系列的定位,我们希望能给广大想转型机器学习(准确说是Tensorflow实现的神经网络)的程序员带来一些不一样的内容,我们不讲公式,只调方法,不聊文献,只说代码。不求最好,只求有用。正如下面这个自带bgm的表情:

那么我认为对于想要转型的程序员来说,做到以下四点就算基本转型成功了:

1