从零入手人工智能(2)——搭建开发环境

1.前言

作为一名单片机工程师,想要转型到人工智能开发领域的道路确实充满了挑战与未知。记得当我刚开始这段旅程时,心中充满了迷茫和困惑。面对全新的领域,我既不清楚如何入手,也不知道能用人工智能干什么。正是这些迷茫和困惑,激发了我不断探索和学习的动力。经过一段时间的摸索和实践,我逐渐扫清了障碍,找到了入门的钥匙。我开始明白如何去学习,如何去实践,如何去深挖每一个核心知识点。

我撰写了这个系列的文章,希望能将这段经历和学习的心得分享给更多想要入门人工智能的朋友们。这些文章将详细记录我学习人工智能的每一个步骤和心得,希望通过我的经验,为大家提供一份实用的入门指南,帮助大家更快地融入这个充满机遇和挑战的领域。

万事开头难”是一句广为流传的谚语,意指无论做任何事情,最初的时候总是最困难的。但是!“天下事有难易乎?为之,则难者亦易矣
在这里插入图片描述

2.编程环境

人工智能相关的软件开发和单片机软件开发不同,单片机软件开发只需要安装一个集成开发软件就可以了,例如KEIL或者IAR。而人工智能软件开发则需要安装编程软件,配置编程环境,同时还要根据实际情况添加一些软件工具。因此想要入门人工智能的第一个拦路虎就是编程环境的搭建

笔者是一名单片机工程师,人工智能相关的软件开发与单片机相关的软件开发之间存在显著的差异。单片机软件开发通常较为直接,主要围绕一个集成开发环境(IDE)进行,如KEIL或IAR,这些软件为开发者提供了编写、编译和调试单片机程序的一站式服务。然而,人工智能软件开发则是一项更为复杂且多层次的任务。
在这里插入图片描述
人工智能软件的开发不仅要求安装专业的编程软件,如Python的IDLE、Jupyter Notebook等,还需要根据项目的需求,配置相应的编程环境,如安装各种库和框架,如TensorFlow、PyTorch、OpenAI等。这些库和框架为开发者提供了构建、训练和部署机器学习模型所需的各种工具和算法。除了编程软件和环境的配置,人工智能软件开发还常常需要添加一些辅助的软件工具,如数据可视化工具(如Matplotlib、Seaborn)、模型优化工具(如TensorBoard)等。

因此,对于想要入门人工智能领域的开发者来说,搭建一个合适的编程环境无疑是我们面临的首要挑战。在搭建编程环境的过程中,我们可能会遇到各种问题和挑战。例如,软件安装失败、环境配置错误、版本冲突等。这些问题需要开发者具备耐心和毅力,通过查阅文档、搜索网络、寻求帮助等方式逐一解决。
我们的编程环境如下:

python 3.12.2
ancand 2.5.2
jupyter 7.0.8
pandas 2.2.1
numpy 1.26.4
keras 3.3.3

在这里插入图片描述

3.编程环境搭建

编程环境的核心是一个安装有人工智能相关工具包的Python编程环境。构建开发环境主要有以下两个主要步骤:

步骤1:安装Python,这是整个编程环境的基础。Python是一种高级编程语言,其简洁的语法、强大的库支持和广泛的应用领域使其成为AI开发的理想选择。

步骤2:安装一系列与人工智能开发紧密相关的工具包,也称为库或框架。这些工具包提供了丰富的算法、模型和实用工具,使我们能够更高效地开发AI应用程序。一些常见的AI工具包包括NumPy(用于数值计算)、Pandas(用于数据处理和分析)、Matplotlib(用于数据可视化)、TensorFlow(用于深度学习)和scikit-learn(用于机器学习)。
在这里插入图片描述

3.1安装pythoh编程环境

安装pythoh

下载python安装包。进入官网下载与自己电脑系统相匹配的python安装包。

python官网:https://www.python.org

在这里插入图片描述
安装python。点击python安装包开始安装,安装时需要勾选Add python to PATH,其他步骤使用默认选项直接“下一步”。
在这里插入图片描述
测试python。完成安装后打开命令行工具(WIN+R 输入cmd),在命令行工具输入

python -V

在这里插入图片描述

如果python正确安装,命令行工具会返回python的版本号。

编程环境搭建情况:已经完成30%的搭建工作,目前编程环境已经支持python编程
在这里插入图片描述

安装Anaconda

Anaconda是一个开源的Python发行版本,它不仅仅包含了Python解释器,还集成了大量的科学计算包、库、管理工具等,为数据科学、机器学习等领域的科研人员和工程师提供了便捷的工作环境。ANACONDA有以下四大作用:

1、工具包管理。ANACONDA自带了Conda这个强大的包管理工具,可以方便地安装、更新、卸载Python包及其依赖项。
2、虚拟环境管理。ANACONDA可以轻松创建和管理多个Python虚拟环境,每个环境可以有不同的Python版本和包依赖,从而满足不同的项目需求。
3、数据科学工具。ANACONDA自带了许多常用的数据科学工具,如Jupyter
Notebook、Spyder等,这些工具为数据分析和可视化提供了强大的支持。
4、丰富的工具包。ANACONDA包含了超过180多个科学包,如NumPy、Pandas等,这些包在数据清洗、统计分析、机器学习等方面具有广泛的应用。

下载Anaconda安装包。进入官网下载与自己电脑系统相匹配的Anaconda安装包。

Anaconda官网:https://www.anaconda.com

在这里插入图片描述
安装Anaconda。点击Anaconda安装包开始安装,使用默认选择进行安装。
在这里插入图片描述

创建一个虚拟环境。打开Anaconda点击Environments,点击base选择Open Terminal。
在这里插入图片描述

在终端中输入指令建立自定义环境,env_ai 为自定义环境名,运行该命令后在随后输入的提示符中输入 y

conda create -n env_ai  

在终端中输入激活自定义环境

conda activate anv_ai

在这里插入图片描述

编程环境搭建情况:已经完成50%的搭建工作,目前编程环境是一个支持python编程,支持便捷安装多种应用库和工具,支持创建管理多个python虚拟环境

在这里插入图片描述

安装Jupyter Notebook

Jupyter Notebook是一个功能强大的交互式笔记本,它为用户提供了在Web浏览器中编写、执行和共享文档的能力。这些文档可以包含代码、可视化和文本,可以为开发者等提供了极大的便利。
安装Jupyter Notebook。打开Anaconda,点击home ,找到jupyter,点击install完成安装。
在这里插入图片描述

启动Jupyter Notebook。打开Anaconda点击Environments,点击env_ai选择Open with jupyter notebook
在这里插入图片描述
浏览器自动打开了juoyter ,我们可以选择new建立一个文件夹或者一个Notebook
在这里插入图片描述
在jupyter中新建一个Notebook文件,打开Notebook文件,我们可以在Notebook中写文档,写代码,调试运行代码。
在这里插入图片描述
编程环境搭建情况:已经完成70%的搭建工作,目前编程环境是一个支持python编程,支持便捷安装多种应用库和工具,支持创建管理多个python虚拟环境,同时还可以灵活便捷的编辑和调试代码
在这里插入图片描述

3.2安装工具包

到这里一步可以说我们的环境基本搭建好了,接下来我们需要安装一些和人工智能相关的工具包,如NumPy、Pandas、scikit-learn、keras等,这些包在数据清洗、统计分析、机器学习等方面具有广泛的应用。工具包相当于一个库文件,我们安装了工具包就可以调用其中的各种函数方法。

打开Anaconda点击Environments,点击env_ai选择Open Terminal。我们在终端中用pip指令来安装工具包。例如我们安装pandas 就在终端中输入

pip install pandas

在这里插入图片描述
这种直接安装的方式默认是用的是国外的下载源,下载速度很慢,经常会出现下载失败的情况,因此我们使用国内的下载源进行下载,大家可以在网上搜素“pip国内源",笔者使用的是清华大学下载源,因此我们将安装pandas安装指令改为如下形式:

pip install pandas -i https://pypi.tuna.tsinghua.edu.cn/simple/

这样就和迅速的安装好了pandas工具包。在这里我们直接将后续可能用到的工具包一次性安装完,安装指令如下:

pip install matplotlib -i https://pypi.tuna.tsinghua.edu.cn/simple/
pip install openpyxl -i https://pypi.tuna.tsinghua.edu.cn/simple/
pip install Certificates -i https://pypi.tuna.tsinghua.edu.cn/simple/
pip install opencv-python -i https://pypi.tuna.tsinghua.edu.cn/simple/
pip install keras -i https://pypi.tuna.tsinghua.edu.cn/simple/
pip install tensorflow  -i https://pypi.tuna.tsinghua.edu.cn/simple/
pip install requests -i https://pypi.tuna.tsinghua.edu.cn/simple/

编程环境搭建情况:已经完成100%的搭建工作,目前编程环境是一个支持python编程,支持便捷安装多种应用库和工具,支持创建管理多个python虚拟环境,同时还可以灵活便捷的编辑和调试代码,此时我们的编程环境还支持各种人工智能算法的工具包
在这里插入图片描述
大功告成!至此我们的编程环境已经搭建好了!人工智能我来了!
在这里插入图片描述

4.编写第一个程序

打开在jupyter中新建一个Notebook文件,我们先建立一个Markdown的cell ,写一个程序说明。在这里插入图片描述

建立一个Code的cell ,写一个python程序并运行,代码和运行结果如下:

from matplotlib import pyplot as plt
x = [1,2,3,4,5,6]
y = [11,12,13,14,15,16]
plt.figure(figsize = (2,2))
plt.scatter(x,y)
plt.show()

在这里插入图片描述
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

用Python实现奇怪的疯狂按键需求

项目背景 说起来好笑,假设有一个奇怪需求 — 仅仅是假设,不代表我有这个需求,虽然可以想象有人会有这个需求,但是这个人不是我,我也不认识任何这样的人 — 疯狂向某个程序输出按键,比如,一会儿疯狂输入f,一会儿疯狂输入q。 如果是两个按键需求,我想要设置一个最简单…

M1Pro 使用跳板机

Mac (M1 Pro) 通过Iterm2 使用跳板机 1、由于堡垒机(跳板机)不能支持mac系统终端工具,只支持xshell等win生态。所以我们需要先安装iterm2 装iterms教程 这里头对rz、sz的配置不详细。我们可以这样配置: where iterm2-send-zmod…

Windows 11中删除分区的几种方法,总有一种适合你

序言 想从Windows 11 PC中删除一个分区,以便将空间重新分配给现有分区或创建一个新分区吗?我们将为你介绍删除Windows 11分区的多种方法。 删除Windows上的分区时会发生什么 删除分区时,Windows会擦除该分区的内容,并将该分区从电脑上的任何位置删除。你将丢失保存在该分…

Github 2024-06-05 C开源项目日报 Top10

根据Github Trendings的统计,今日(2024-06-05统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量C项目10C++项目2Python项目1我的电视 - 安卓电视直播软件 创建周期:40 天开发语言:CStar数量:649 个Fork数量:124 次关注人数:649 人贡献人…

单元测试覆盖率

什么是单元测试覆盖率 关于其定义,先来看一下维基百科上的一段描述: 代码覆盖(Code coverage)是软件测试中的一种度量,描述程序中源代码被测试的比例和程度,所得比例称为代码覆盖率。 简单来理解&#xff…

C语言实现map数据结构 key—value对应

1.首先43行 createKeyValuePair(char*key ,int value)这个函数就是给一个keyValuePair *pair的指针来通过内存分配将数据key和value存入这个pair指针所对应的内存空间 2.52行freeKeyValuePair这个函数是释放内存空间 3.头文件 struct结构体KeyValuePair就是一个指针一个值 4…

GO语言 服务发现概述

https://zhuanlan.zhihu.com/p/32027014 明明白白的聊一下什么是服务发现-CSDN博客 一、服务发现 是什么 在传统的系统部署中,服务运行在一个固定的已知的 IP 和端口上,如果一个服务需要调用另外一个服务,可以通过地址直接调用。 但是&…

软件巨头SAP裁员优厚条件,吸引5300名员工争相离职

导语 大家好,我是社长,老K。专注分享智能制造和智能仓储物流等内容。 新书《智能物流系统构成与技术实践》 在科技行业的大潮中,SAP公司近日因一项颇具争议的裁员计划而备受瞩目。但这次裁员风波并未如往常般引发员工的强烈抗议,反…

D365 子窗体调用父窗体方法

文章目录 一、在子窗体中调用父窗体公共方法二、刷新 CallerForm 数据源 一、在子窗体中调用父窗体公共方法 Object callerForm element.args().caller(); if(callerForm is FormRun && formHasMethod(callerForm, identifierStr(parentMethod))) {callerForm.parent…

知网-数学学习与研究-收稿邮箱

知网-数学学习与研究-收稿邮箱 《数学学习与研究》杂志是由东北师范大学主管,吉林省数学会与东北师范大学出版社联合主办的省级优秀数学类期刊杂志。 主管单位:东北师范大学 主办单位:吉林省数学会;东北师范大学数学与统计学院 创刊时间1983…

AI学习指南机器学习篇-决策树基本原理

AI学习指南机器学习篇-决策树基本原理 在机器学习领域,决策树是一种常见且十分重要的算法。它不仅在分类任务中被广泛应用,还可以用于回归任务。本篇博客将详细介绍决策树的基本原理,包括节点、分裂准则、信息增益、基尼不纯度等概念&#x…

msvcr120.dll丢失怎样修复?为什么msvcr120.dll文件很重要

msvcr120.dll​ 是一个属于 Microsoft Visual C 2013 Redistributable package 的动态链接库文件。这个文件对于运行使用 Visual Studio 2013 开发的应用程序是必要的,因为它包含了C运行时库的一部分功能,这些功能是标准C库中与输入/输出操作、字符串操作…

OpenCV中的圆形标靶检测——斑点检测算法(二)

前面的章节中我们已经大致介绍了算法流程,也对一些算法中用到的相关概念做了简要介绍,同时给出了算法调用的API,现在我们开始算法检测接口实现源码的分析。 1. 斑点的分组与加权 这里我们选择后者,先了解算法的处理流程,再分析各个模块的实现。算法流程图如下图所示,上一…

android中调用onnxruntime框架

创建空白项目 安装Android Studio及创建空白项目参考:【安卓Java原生开发学习记录】一、安卓开发环境的搭建与HelloWorld(详细图文解释)_安卓原生开发-CSDN博客 切记:build configuration language 一定选择Groovy!官…

51单片机-LCD液晶显示

目录 前言: 一. LCD1602模块简介 二. 代码功能实现 三.总结 前言: 本文主要是51单片机的LCD液晶显示,使用的是LCD1602.下面是详细介绍和完整代码,欢迎大家的点赞,评论和关注.感谢. 一. LCD1602模块简介 LCD1602 模块具有以下特点: 显示特点: 可以…

MySQL 将null转0 ifnull() coalesce()

做统计报表的时候,有时候不希望查出来的值是null,因为在代码中需要做大量的判空,最后转换成0来处理。既然如此,那在sql中查出来就是0,就不用为空而去判空了。 1.IFNULL() ifnull()只能放2个值。 select IFNULL(null,0…

[240608] Zig 发布 v0.13.0 |AMD 新处理器不支持 Win 10 |DuckDuckgo 发布AI匿名聊天服务

目录 Zig 发布 0.13.0 版本AMD 下一代锐龙处理器不支持 Windows 10DuckDuckgo 发布 AI 匿名聊天服务 Zig 发布 0.13.0 版本 Zig 发布 0.13.0 版本,此次发布的主要目的是升级 zig 工具链,发布重点如下: 工具链升级: LLVM&#xf…

DevOps的原理及应用详解(六)

本系列文章简介: 在当今快速变化的商业环境中,企业对于软件交付的速度、质量和安全性要求日益提高。传统的软件开发和运维模式已经难以满足这些需求,因此,DevOps(Development和Operations的组合)应运而生&a…

企业建站响应式网站建设平台版源码系统 海量模版可选择 带完整的安装代码以及搭建教程

系统概述 企业建站响应式网站建设平台版源码系统是一款集创新性、实用性和便捷性于一体的建站解决方案。它旨在为用户提供一站式的网站建设服务,无论你是新手还是经验丰富的开发者,都能通过该系统轻松实现网站的构建与部署。 该系统采用先进的技术架构…

单链表复习 (C语言版)

目录 一.顺序表与链表的区别 二.链表概念 三.单链表 1.单链表的开始与初始化 2.单链表的打印 3.单链表的尾插 重难点:单链表实现时的指针详解 4.单链表的头插 5.单链表的尾删 6.单链表的头删 小结: 7.单链表的查找 8.在指定位置前插入数据 …