《智能前端技术与实践》——前言

简介: 《智能前端技术与实践》——前言

推荐序 1


随着大数据、云计算、互联网、物联网等信息技术的发展泛在感知数据和图形处理器等计算平台极大地推动了以深度神经网络为代表的人工智能技术的应用,大幅弥补了科学与应用之间的技术鸿沟像分类、语音识别、知识问答、人机对弈、无人驾驶等技术实现了从不能用、不好用到可以用、效果好的突破。

然而,以深度神经网络为代表的人工智能应用过度依赖计算机算力因此在后摩尔定律时代它可能会遭遇发展瓶颈。具体来说,计算能力提10倍相当于三年的算法改进,算力提高的背后却是无法承受的硬件成本此,基于当下现有的硬件设施平台设计出参数少、准确率高的神经网络对复杂人工智能技术在移动端设备或嵌入式设备上的落地应用显得尤为重要。

本书基于TensorFlow.js框架将计算机视觉技术与前端开发有机结合,介绍了线性回归、logistical回归、XOR问题、人体姿态检测、目标检测、OCROptical Character Recognition光学字符识别)等案例的部署。这是一本横跨前端开发和深度学习两大技术领域的书,可谓一册在手,应有尽有!


李昌华

陕西省计算机教育学会副理事长、博士生导师


推荐序2



当我认识璞东时,他还是一名即将毕业的大四学生,还记得我们第一次视频通话是在2020年。当时他对代码的浓厚兴趣给我留下了深刻的印象他根据自己在前端开发和深度习方面的编程经验编写了本书。

书中相关主题的知识广度令人印象深刻。本书一共包含多个案例,如线性回归、logistical回归、XOR问题、姿态检测、目标检测、OCR等案例。这些案例可在石璞东的个人网站、微信小程序和Google网上应用商店上找到。

Web TensorFlow JavaScript方面的开发水平。我真心希望本书能够帮助所有具Web开发经验和深度学习能的程序员或对该领域有兴趣的人。



Alex(岑国良)

Savills Singapore Pte公司会计


推荐序3



我希望我的描述能让读者快速感知到能从本书里学到什么。如果你已经有了一些编程基础,想要通过本书了解更多的实战经验并且能够快速上手,那么本书会令你得偿所愿虽然实践出真知,但是基础理论也很重要。

本书

本书首先介绍开发环境的配置与前端开发基础知识(包含HTMLCSSJavaScript),并将其与深度学习有机融合,在此基础上带领读者进行一些简单的网页开发、Google浏览器插件开发以及微信小程序开发等。本书然后分别介绍了深度学习的基础知识、TensorFlow.js框架以及等,以及一些基础实践案例。Google层递起读的兴

本书的所有案例可参见作者的个人网站、者的信小程序Google上应用商店。丰富的案例将帮助所有阅读本书的人更好地理解相关技术。

我很荣幸能够与本书的作者在同一所大学相识,在一同学习前端开发的过程中,我能够深刻地感受到作者对于技术的热爱与追求,我也很钦佩他孜孜不倦的探索精神。

本书是一本实用的工具书,相比于枯燥乏味的理论知识,它主要展示从实际操作中总结出的一些经验教训我热切地希望本书的读者能够打开自己的代码编译器,动手实现本书中的一切案例,你会有意想不到的收获



霍鑫楠

北京完美世界前端开发工程师



一个成熟的人工智能应用包括算法、数据以及工程(即大前端)三个方面,因此,在人 工智能时代,前端智能化是 Web 前端领域的重要发展趋势之一,该技术处于机器学习和 JavaScript 的前沿。


我是通过本科毕业设计才开始接触到前端智能化的,还记得当时的毕业设计要求是基于 TensorFlow 搭建 AlexNet 网络并训练 MNIST 手写数字,并保证其准确识别率不低于 95%。 虽然这个任务完成起来几乎没有任何难度,但我当时脑海中要完成的任务绝非如此。在我的 想象中,最终的任务是用户通过手机等移动端设备或其他嵌入式设备随意采集不同的手写数 字,经过模型预测之后,其结果可以正确显示出来。随着不断学习,我发现要想将我脑海中 的画面落地到实际业务场景中,需要同时具备前端开发和机器学习两大领域的背景知识。虽 然机器学习并非全新的概念,但通过 JavaScript 将其应用到前端的技术还处于起步探索阶段, 并且相关的文献寥寥无几,因此大部分情况下只能自己硬啃官方文档。


除横跨两大技术栈的难度外,我们还要考虑数据预处理、张量操作。针对不同硬件设备, 选择不同的神经网络设计方法。针对不同前端平台,选择相应开发方法等。对于任何一个初 学者来说,如此庞大的知识体系是很难快速搭建的。


在研究生入学前的暑假,我有幸认识了哈尔滨工业大学的博士研究生冯振和人民邮电出 版社的编辑张涛,他们听取了我关于本科毕业设计的一些想法,并鼓励我写一本关于前端和 人工智能的书。我听了之后热血沸腾,这既可以系统梳理我的知识体系,又可以分享我学习 过程中的经验教训,帮助大家少走弯路,于是我答应了。


因为从大二开始,我就在我的个人网站、微信公众号等其他第三方平台发表文章,所以我 想当然地以为写书会和写博客文章一样简单。直到 2020 年寒假正式开始写书,我才体验到其 中的艰辛。为了打磨书稿,我无数次更改目录,无数次调整内容框架,无数次梳理文字,无数次 考究推理的合理性。为了迎合最新版本或适配更多设备,我还需要不断升级改造案例,我深入考 虑每一章、每一节、每一段话,甚至每一个用词的细节。在 2021 年寒假期间,我完成了全书内容 的 80%。开学之后,由于没有太多集中的时间,直到 2021 年 6 月我才完成了本书的初稿。接下来 的修改又花了几个月的时间。不过,最后看到我研究生期间的第一本作品,我觉得这一切都是值 得的。


本书基于 TensorFlow.js 讲述如何在浏览器端开发人工智能应用。我希望本书能够帮助相关从业者或任何对前端和深度学习感兴趣的朋友快速入门,进而促进复杂人工智能在移动端 设备或嵌入式设备上的应用。


全书共12章,主要内容如下。

1重点介绍了如何在Windows系统和macOS下配置相关的开发环境,包括Anaconda3TensorFlow 2npmWebStormGoogle览器以及微信开发者工具的安装等

2章重点介绍了与前端开发相关的基础内容,包括HTML基础、CSS基础、Google扩展程序相关JavaScript API深度学习中JavaScript以及微信小程序开发等。其中,信小程序端样式设计基于ColorUI框架,网页端样式设计基于Bootstrap框架,网页端交互操作基于jQuery框架。

3章讨论了与深度学习相关的基础内容,包括深度学习环境、深度学习框架等。

4章讲述了与前端智能开发相关的框架,包括TensorFlow.js低阶APITensorFlow.js高阶APITensorFlow.js Vis库以及其他较重要的API

5章介绍了与卷积神经网络相关的内容,包括卷积神经网络的核心思想、卷积层、化层以及4种经典的轻量级卷积神经网络。

6章讨论了5个简单的案例。

7章讲述了5个与计算机视觉有关的数据集及其使用方法,并结合微信小程序展示了基于CNNMNIST手写数字的识别

8章讨论了一个基于CNN的常见水果分类案例。

9章展示了一个关于人体姿态检测的案例。

10章展示了如何在微信小程序端完成一个基于Coco SSD的目标检测案例。

11章讨论了传OCR技术以及深度学习背景下的OCR技术,并详细讲解了OCR术在微信小程序以及Google扩展程序中的部署。

12章介绍了一些有趣的前端人工智能应用。

本书适合以下人员阅读:

Web端开发工程师;

前端AI工程师

深度学习算法工程师;

计算机相关专业学生以及任何对前端开发和深度学习感兴趣的人。

本书有专门的读者交流群,添加hahaCoder微信公众号即可加入读者交流群。同时,我也会在bilibili网站分享一些技术总结和个人感悟,在bilibili网站中搜索“石璞东”即可找到我。


致谢

本书的顺利完成,得益于家人、老师和朋友的帮助

感谢我的奶奶、爸爸、妈妈为我提供的写作环境,感谢姐姐、姐夫、堂哥、表哥给我的建议,没有他们的支持与鼓励,我难以完成本书。

感谢我的女朋友王璐瑶在写书过程中对我的理解、陪伴与支持。

感谢人民邮电出版社的编辑在选题立项、书稿撰写、审核出版等过程中的指导,没有他们的督促与把关,我也难以看到本书的顺利出版

最后,感谢我的读者以及所有曾经帮助过我的人!



石璞东

相关文章
|
9月前
|
前端开发 搜索推荐 开发工具
通义灵码与颜色板生成器,为前端开发提供智能配色解决方案
在前端开发中,色彩搭配对用户体验和界面美观至关重要。通义灵码提供的颜色板生成器通过自动推荐配色方案、随机生成颜色组合及支持自定义调整,帮助开发者高效完成配色任务。该工具支持一键导出为 CSS 样式表,并提供简洁的中文指令交互方式,大大提升开发效率,助力开发者打造美观和谐的用户界面。
|
7月前
|
人工智能 前端开发 JavaScript
前端工程化演进之路:从手工作坊到AI驱动的智能化开发
前端工程化演进之路:从手工作坊到AI驱动的智能化开发
886 18
前端工程化演进之路:从手工作坊到AI驱动的智能化开发
|
12月前
|
前端开发 Java 物联网
智慧班牌源码,采用Java + Spring Boot后端框架,搭配Vue2前端技术,支持SaaS云部署
智慧班牌系统是一款基于信息化与物联网技术的校园管理工具,集成电子屏显示、人脸识别及数据交互功能,实现班级信息展示、智能考勤与家校互通。系统采用Java + Spring Boot后端框架,搭配Vue2前端技术,支持SaaS云部署与私有化定制。核心功能涵盖信息发布、考勤管理、教务处理及数据分析,助力校园文化建设与教学优化。其综合性和可扩展性有效打破数据孤岛,提升交互体验并降低管理成本,适用于日常教学、考试管理和应急场景,为智慧校园建设提供全面解决方案。
648 70
|
前端开发 JavaScript 测试技术
前端测试技术中,如何提高集成测试的效率?
前端测试技术中,如何提高集成测试的效率?
|
人工智能 移动开发 前端开发
WeaveFox:蚂蚁集团推出 AI 前端智能研发平台,能够根据设计图直接生成源代码,支持多种客户端和技术栈
蚂蚁团队推出的AI前端研发平台WeaveFox,能够根据设计图直接生成前端源代码,支持多种应用类型和技术栈,提升开发效率和质量。本文将详细介绍WeaveFox的功能、技术原理及应用场景。
7038 68
WeaveFox:蚂蚁集团推出 AI 前端智能研发平台,能够根据设计图直接生成源代码,支持多种客户端和技术栈
|
前端开发 JavaScript 搜索推荐
HTML与CSS在Web组件化中的核心作用及前端技术趋势
本文探讨了HTML与CSS在Web组件化中的核心作用及前端技术趋势。从结构定义、语义化到样式封装与布局控制,两者不仅提升了代码复用率和可维护性,还通过响应式设计、动态样式等技术增强了用户体验。面对兼容性、代码复杂度等挑战,文章提出了相应的解决策略,强调了持续创新的重要性,旨在构建高效、灵活的Web应用。
381 6
|
前端开发 JavaScript 搜索推荐
前端懒加载:提升页面性能的关键技术
前端懒加载是一种优化网页加载速度的技术,通过延迟加载非首屏内容,减少初始加载时间,提高用户访问体验和页面性能。
|
缓存 JavaScript 前端开发
JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用
本文深入讲解了 JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用。
821 5
|
移动开发 前端开发 JavaScript
惊!这些前端技术竟然能让你的网站在移动端大放异彩!
随着互联网技术的发展,移动设备成为主要的上网工具。本文介绍了几种关键的前端技术,包括响应式设计、图片优化、字体选择、HTML5和CSS3的应用、性能优化及手势操作设计,帮助开发者提升网站在移动端的显示效果和用户体验。示例代码展示了如何实现简单的双向绑定功能。
294 3
|
数据采集 前端开发 安全
前端测试技术
前端测试是确保前端应用程序质量和性能的重要环节,涵盖了多种技术和方法

热门文章

最新文章

  • 1
    前端如何存储数据:Cookie、LocalStorage 与 SessionStorage 全面解析
    984
  • 2
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(九):强势分析Animation动画各类参数;从播放时间、播放方式、播放次数、播放方向、播放状态等多个方面,完全了解CSS3 Animation
    420
  • 3
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(八):学习transition过渡属性;本文学习property模拟、duration过渡时间指定、delay时间延迟 等多个参数
    330
  • 4
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(七):学习ransform属性;本文学习 rotate旋转、scale缩放、skew扭曲、tanslate移动、matrix矩阵 多个参数
    306
  • 5
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(六):全方面分析css的Flex布局,从纵、横两个坐标开始进行居中、两端等元素分布模式;刨析元素间隔、排序模式等
    422
  • 6
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(五):背景属性;float浮动和position定位;详细分析相对、绝对、固定三种定位方式;使用浮动并清除浮动副作用
    608
  • 7
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(四):元素盒子模型;详细分析边框属性、盒子外边距
    778
  • 8
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(三):元素继承关系、层叠样式规则、字体属性、文本属性;针对字体和文本作样式修改
    214
  • 9
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(二):CSS伪类:UI伪类、结构化伪类;通过伪类获得子元素的第n个元素;创建一个伪元素展示在页面中;获得最后一个元素;处理聚焦元素的样式
    623
  • 10
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(一):CSS发展史;CSS样式表的引入;CSS选择器使用,附带案例介绍
    382