人工智能AI与机器学习ML基础入门

小学生都能看懂的人工智能入门书籍

 

第一章 入门简介

TensorFlow 入门

如果你想入门人工智能(AI)?机器学习(ML)和深度学习是很好的起点。不过,一开始接触这些概念时,可能会被各种选项和新术语搞得有点迷茫。本人工智能学习课程连载的目标是帮助程序员理清思路,带你一步步通过写代码实现机器学习和深度学习的核心概念,构建像人类一样思考的模型,比如在计算机视觉、自然语言处理(NLP)等场景下应用。通过这些模型,机器开始具备类似人类的智能,形成所谓的人工智能。

但说到机器学习,究竟是什么呢?我们先来简单了解一下,从程序员的角度看看它到底是什么。然后,我们会介绍如何安装开发工具,包括 TensorFlow 本身,以及如何搭建编写和调试 TensorFlow 模型的环境。

什么是机器学习?

在深入讨论机器学习之前,先看看它是怎么从传统编程发展出来的。我们会先讲讲什么是传统编程,接着看看它的局限性,最后再看机器学习是如何解决这些问题的,同时开启了更多实现人工智能的机会。

传统编程是我们用编程语言写规则,这些规则作用于数据,得到结果。几乎所有可以编程的场景都适用这种方法。

比如,你可以想象一下像打砖块(Breakout)这样的游戏。代码控制着球的运动、得分,以及赢或输的各种条件。比如当球碰到砖块时会发生什么,就像图 1-1 中展示的那样。

图1-1打砖游戏

在这个例子中,小球的运动是由它的 dx 和 dy 属性来决定的。当小球击中砖块时,砖块会被移除,同时小球的速度会加快,方向也会改变。这段代码就是对游戏状态的数据进行操作。

再来看一个金融服务的例子。你有一家公司股票的数据,比如当前价格和收益。你可以用图 1-2 中的代码计算一个很有用的比率,叫做市盈率(P/E,比价格除以收益)。

图 1-2. 财务软件应用场景中的代码

代码会读取价格和收益,最后返回价格除以收益的结果。

如果要用一个简单的图表来概括传统编程,可能就像图 1-3 这样。

图 1-3. 从宏观角度看传统编程技术

可以看到,编程规则是用编程语言表示的,它们作用于数据,最终得出结果。

正如你所看到的,规则是用编程语言来表示的,这些规则作用于数据,最终得出结果。

传统编程的局限性

从图 1-3 的模型问世以来,它一直是开发的基础。不过,它有个明显的限制:只有那些你能推导出规则的场景才能实现。那么其他场景呢?通常,它们很难开发,因为代码太复杂,根本无法写出处理这些问题的代码。

比如活动检测这个例子。能够检测我们日常活动的健身追踪器是最近的创新,这不仅是因为有了便宜的小型硬件,还因为以前的算法根本无法实现这种检测。那为什么会这样呢?我们来探讨一下。

图 1-4 展示了一个简单的行走检测算法。它可以根据人的速度来判断,如果速度低于某个值,我们就可以推测他们可能是在走路。

图 1-4. 运动检测算法

鉴于我们的数据是速度,我们可以扩展这个算法来检测他们是否在跑步(见图 1-5)。

图 1-5. 脱展运动检测算法,检测跑步

你可以看到,按照速度来判断的话,如果低于某个特定值(比如 4 英里每小时),我们可以说这个人在走路,否则就是在跑步。这个方法还是有点效果的。

现在,假设我们想把这个算法扩展到另一项常见的健身活动,比如骑自行车。那么这个算法可能会像图 1-6 这样。

图 1-6. 拓展运动检测算法,检测骑自行车

我知道这个方法有点简单,只是通过速度来判断——毕竟每个人跑步的速度不一样,而且你下坡跑步可能比上坡骑车还快。不过,总的来说它还是有效的。但是,如果我们想扩展到另一个场景,比如打高尔夫(见图 1-7),又该怎么办呢?

图 1-7.  怎样编程才能判断出打高尔夫球运动?

我们现在卡住了。用这种方法,怎么判断一个人是在打高尔夫呢?他们可能走一会儿,停下来做点事情,然后再走一会儿,再停下来,等等。但我们怎么知道这就是在打高尔夫呢?

用传统规则来检测这种活动已经碰到瓶颈了。不过,也许有更好的方法。

这就是机器学习派上用场的时候了。

下一篇我们就正式进入机器学习ML了......

欢迎大家留下评估,我来给大家讲解!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/891162.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

WebGl 使用uniform变量动态修改点的颜色

在WebGL中,uniform变量用于在顶点着色器和片元着色器之间传递全局状态信息,这些信息在渲染过程中不会随着顶点的变化而变化。uniform变量可以用来设置变换矩阵、光照参数、材料属性等。由于它们在整个渲染过程中共享,因此可以被所有使用该着色…

前端开发攻略---使用AJAX监控网络请求进度

1、XHR实现 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><title>Document</title></head&…

用AI生成rtl设计(a simple synchronous FIFO)的一个实验

目录 1. 前言 2. RTL and testbench generation 2.1 RTL generation Explanation: Assumptions: 2.2 Testbench generation Explanation: 2.3 Add fsdb dump to testbench 3. 仿真与调试 3.1 RTL中的语法问题 3.2 testbench的问题 3.3 RTL中empty/full状态…

VS Code创建VUE项目(一)工具安装与项目创建

一.安装与配置npm 1.下载安装Node.js 安装Node.js 下载地址&#xff1a; Node.js — 在任何地方运行 JavaScript (nodejs.org)或下载 | Node.js 中文网 下载后一步步安装就好&#xff08;安装过程基本一路直接“NEXT”就可以了&#xff0c;直到Finished&#xff09;&#x…

第十五届蓝桥杯C/C++学B组(解)

1.握手问题 解题思路一 数学方法 50个人互相握手 &#xff08;491&#xff09;*49/2 &#xff0c;减去7个人没有互相握手&#xff08;61&#xff09;*6/2 答案&#xff1a;1024 解题思路二 思路&#xff1a; 模拟 将50个人从1到50标号&#xff0c;对于每两个人之间只握一…

内嵌服务器Netty Http Server

内嵌式服务器不需要我们单独部署&#xff0c;列如SpringBoot默认内嵌服务器Tomcat,它运行在服务内部。使用Netty 编写一个 Http 服务器的程序&#xff0c;类似SpringMvc处理http请求那样。举例&#xff1a;xxl-job项目的核心包没有SpringMvc的Controller层&#xff0c;客户端却…

李德仁院士携实验室及大势文旅团队参加“湖北旅游、武当突破”名家谈,分享数智文旅发展新经验

10月12日上午&#xff0c;2024世界武当太极大会在湖北省十堰市武当山盛大开幕。 2023年国家科学技术最高奖获得者、中国科学院、中国工程院院士、武汉大学李德仁教授携测绘遥感信息工程国家重点实验室&#xff08;后简称“实验室”&#xff09;团队以及大势智慧文旅团队&#…

gcc学习

理论 在使用 GCC (GNU Compiler Collection) 进行 C 或 C 程序的编译时&#xff0c;可以将整个过程分为四个主要阶段&#xff1a;预处理、编译、汇编和链接。下面是每个阶段的命令示例&#xff1a; 1. 预处理-E 预处理阶段会处理所有的预处理指令&#xff08;如 #include 和…

Qt消息对话框

问题对话框 对应API [static] QMessageBox::StandardButton QMessageBox::question( QWidget *parent, const QString &title, const QString &text, QMessageBox::StandardButtons buttons StandardButtons(Yes | No), QMessageBox::StandardButton defaultButt…

「Java服务」快速接入SkyWalking方法指南

一、背景 背景&#xff1a;Apache SkyWalking 是一个开源的分布式应用性能监控&#xff08;APM&#xff09;系统&#xff0c;主要用于监控微服务、云原生和容器化应用的性能。接入SkyWalking可以排查以智能投放服务为主的服务响应问题 技术架构 SkyWalking 的核心架构包括以…

【开源物联网平台】Fastbee数据库持久层架构

目录 一&#xff0c;数据库持久层架构 二&#xff0c;数据库组件 2.1 Druid 2.2 MyBatis-Plus 2.3 dynamic-datasource 2.4 ShardingSphere 一&#xff0c;数据库持久层架构 二&#xff0c;数据库组件 2.1 Druid Druid是Java语言中最好的数据库连接池。Druid能够提供强…

Chrome与Firefox浏览器HTTP自动跳转HTTPS的解决方案

一、背景介绍 随着网络安全意识的不断提高&#xff0c;越来越多的网站开始采用HTTPS协议&#xff0c;以确保数据传输的安全性。然而&#xff0c;有时用户在浏览网页时&#xff0c;可能会遇到HTTP请求被自动跳转至HTTPS的情况导致网站打不开&#xff0c;提示安全问题&#xff0…

android——自定义控件(不停变化的textview、开关switch、动画效果的打勾)

一、从开始数字到结束数字&#xff0c;不断变化 import android.animation.TypeEvaluator; import android.animation.ValueAnimator; import android.content.Context; import android.util.AttributeSet; import android.view.animation.AccelerateDecelerateInterpolator;i…

深度学习实战94-基于图卷积神经网络GCN模型的搭建以及在金融领域的场景

大家好,我是微学AI,今天给大家介绍一下深度学习实战94-基于图卷积神经网络GCN模型的搭建以及在金融领域的场景。文章首先介绍了GCN模型的原理及模型结构,随后提供了数据样例,并详细展示了实战代码。通过本文,读者可以深入了解GCN模型在金融场景下的应用,同时掌握代码的具…

使用标注工具并跑通官方yolov8分割segment自己的数据集

1.下载标注工具用于打标签 使用标注工具&#xff0c;后面会用到智能标注 点击 创建AI多边形后命令行就自动下载对应的模型 单机要选中的图像就行&#xff0c;就可以智能选中&#xff0c;双击设置标签 依次标注所有图片 &#xff0c;最后保存成json格式的文件 2.使用labelme2y…

关于mac下的nvm设置淘宝镜像源

1. 进入配置文件修改镜像源 vim ~/.bash_profile增加下面内容 export NVM_NODEJS_ORG_MIRRORhttps://npmmirror.com/mirrors/node/2. 查看远程node镜像 nvm ls-remote3. 下载镜像 nvm install 14.17.64. 使用镜像 nvm use 14.17.6

总台戏曲探访类创新节目《风味梨园》开播 探寻一座城市的戏曲文化地图

戏曲艺术犹如一颗璀璨的明珠&#xff0c;承载着中华民族千年的历史文化底蕴&#xff0c;以其独有的艺术魅力&#xff0c;如悠扬的旋律、精湛的表演&#xff0c;深深吸引着无数观众。而每一座城市隐匿其后的美食文化&#xff0c;恰似一首动人的诗篇&#xff0c;代表着人们对美好…

2013年国赛高教杯数学建模A题车道被占用对城市道路通行能力的影响解题全过程文档及程序

2013年国赛高教杯数学建模 A题 车道被占用对城市道路通行能力的影响 车道被占用是指因交通事故、路边停车、占道施工等因素&#xff0c;导致车道或道路横断面通行能力在单位时间内降低的现象。由于城市道路具有交通流密度大、连续性强等特点&#xff0c;一条车道被占用&#x…

数学建模算法与应用 第11章 偏最小二乘回归及其方法

目录 11.1 偏最小二乘回归概述 11.2 Matlab 偏最小二乘回归命令 Matlab代码示例&#xff1a;偏最小二乘回归 11.3 案例分析&#xff1a;化学反应中的偏最小二乘回归 Matlab代码示例&#xff1a;光谱数据的PLS回归 习题 11 总结 偏最小二乘回归&#xff08;Partial Least …

MySQL 【日期】函数大全(三)

DATEOFYEAREXTRACTFROM_DAYSFROM_UNIXTIMEHOURLAST_DAYLOCALTIMELOCALTIMESTAMP 1、DATEOFYEAR DATEOFYEAR(expr) &#xff1a;返回一个从 1 到 366 代表给定日期是一年中的第几天的数字。 如果指定的表达式不是一个合法的日期或者日期时间&#xff0c;DAYOFYEAR() 函数将返回…