干货 | Python人工智能在贪吃蛇游戏中的应用探索(上)(二)

简介: 干货 | Python人工智能在贪吃蛇游戏中的应用探索(上)(二)

tensorflow的安装与配置

TensorFlow是谷歌研发的第二代人工智能学习系统,其命名来源于本身的运行原理。Tensor(张量)意味着N维数组,Flow(流)意味着基于数据流图的计算,TensorFlow为张量从流图的一端流动到另一端计算过程。TensorFlow是将复杂的数据结构传输至人工智能神经网中进行分析和处理过程的系统。

TensorFlow可被用于语音识别或图像识别等多项机器深度学习领域。是一个开源的、基于 Python 的机器学习框架。下面我们先讲述如何配置tensorflow的开发环境。

首先强调一点,在python环境下安装tensorflow,必须做到版本的匹配。如果你的电脑上装了多个python版本,则很容易因为版本问题造成安装的失败。最好卸载不需要的python,使用Anacoda自带的python。

下载安装Anacoda

输入网址https://www.anaconda.com/distribution/,如图所示,选择python3.7版本下载:

微信图片_20220423105934.jpg

下载安装后,点击开始,找到Anacoda3文件,选择Anacoda Prompt,输入python,会显示python版本,即安装成功。

微信图片_20220423105936.jpg

或者在cmd中输入pip list,如图,即安装成功。

微信图片_20220423105939.jpg

建立tensorflow虚拟环境

Step 1: 建立Anacoda(以下简称ana)与tensorflow、python 的关系,输入conda create --name tensorflow python=3.7

Step 2: 输入y,即开始建立虚拟环境。

这里注意版本问题,自己需要的python版本是哪个版本,这里需要写明确(即conda create --name tensorflow python= ??? )。一个ana在同一时间只能支持一个版本,每个版本对应的tensorflow 的版本不同。查询版本,即在ana prompt 中输入python。如果已经知道对应的tensorflow版本,可以直接conda create—name tensorflow版本,

Step 3: 安装tensorflow,在ana环境下,进入tensorflow的虚拟环境,输入conda activate

微信图片_20220423105942.png

注意一定要进入tensorflow 虚拟环境安装,输入conda install tensorflow 版本(我安装用的2.1.0),如图,即安装成功

微信图片_20220423105944.jpg

输入deactivate,退出虚拟环境。

Step 4: 安装完毕,可以在cmd的python状态下输入import tensorflow as tf来测试是否安装成功。

安装pycharm

Step 1: 下载安装Pycharm,进入官网:

http://www.jetbrains.com/pycharm/download/#section=windows

如图所示,推荐下载免费使用的社区版:

微信图片_20220423105947.jpg

Step 2: 配置pycharm 环境,进入pycharm,点击左上角File,找到Setting,点击Project 中的Project Interpreter,点击设置按钮,找到已安装包的路径,创建环境。创建完毕后,可以找到python库和tensorflow库。(图中很多为私人配置,不一样不要紧)

微信图片_20220423105949.jpg微信图片_20220423105953.jpg

Step 3: 安装opencv

方法一:Opencv在cmd环境中安装,输入pip install opencv-python,默认使用国外源文件,速度比较慢,能够成功,但大概率在下载过程中因为网络原因或者其他原因中断,如图

微信图片_20220423105956.jpg

方法二:在opencv的官网上下载好安装文件包再进行安装:

https://www.lfd.uci.edu/~gohlke/pythonlibs/

注意,要对应自己的python 和tensorflow版本,还有自己安装的电脑的位数来选择合适的安装包,方法是在出错的那句话中找到文件名,按照这个文件名去找安装包。

微信图片_20220423105958.jpg

进入网站后要疯狂往下拉,在很下面。

安装合适opencv文件后,在cmd环境下输入pip install 路径(\opencv_python-*.whl)

写命令代码时指明安装包的路径。安装完成后,在python环境下,输入import cv2,即可检验。

微信图片_20220423110001.jpg

另外有很多文献建议使用国内镜像网站安装opencv ,这里不建议,因为失败了很多次。

Step 4: 安装loguru,输入pip install loguru

微信图片_20220423110004.jpg

Tips:其实能顺利安装 tensorflow 并且在Python中正常使用不是件很容易的事情。特别指出的是,能正确导入tensorflow并不一定能正常使用,如果遇到同样的问题,请再次认真的检查你的python版本,tensorflow版本 和python中的环境配置。实在找不出原因,那就重新开始吧!我用了一周的时间解决安装中遇到的各种问题,步步惊心哦!

利用tensorflow建立神经网络(用后面贪吃蛇神经网络的模型为例)

Step 1: 导入tensorflow

import tensorflow as tf
from tensorflow.keras import layers

Step 2: 用模型堆叠构建模型

我们使用的最多的是层的堆叠,即tf.keras.Sequential模型,如下:

self.model = tf.keras.Sequential([
            tf.keras.layers.Dense(units=32, input_dim=self.input_shape,
            activation=tf.nn.relu),  #输入层
            tf.keras.layers.Dense(units=16, activation=tf.nn.relu),
            tf.keras.layers.Dense(units=8, activation=tf.nn.relu),
            tf.keras.layers.Dense(units=8, activation=tf.nn.relu),
            tf.keras.layers.Dense(units=16, activation=tf.nn.relu),
            tf.keras.layers.Dense(units=32, activation=tf.nn.relu),#隐藏层
            tf.keras.layers.Dense(units=self.output_size, activation=tf.keras.activations.linear) #输出层
        ])
  # activation 激活函数

下面图形是用激活函数微信图片_20220423110007.png

Step 3: 编译网络神经模型

self.model.compile(optimizer = tf.keras.optimizers.Adam(self.lr), loss='mse',metrics=['accuracy'])
#loss 损失函数

Step 4: 神经网络预测

self.model.predict(state, batch_size)
 # batch_size批次数据 整形

Step 5: 神经网络训练

model.fit(states, action_values, batch_size=batch_size, verbose=0, epochs=4)
相关文章
|
2月前
|
消息中间件 人工智能 安全
云原生进化论:加速构建 AI 应用
本文将和大家分享过去一年在支持企业构建 AI 应用过程的一些实践和思考。
615 42
|
2月前
|
人工智能 运维 Kubernetes
Serverless 应用引擎 SAE:为传统应用托底,为 AI 创新加速
在容器技术持续演进与 AI 全面爆发的当下,企业既要稳健托管传统业务,又要高效落地 AI 创新,如何在复杂的基础设施与频繁的版本变化中保持敏捷、稳定与低成本,成了所有技术团队的共同挑战。阿里云 Serverless 应用引擎(SAE)正是为应对这一时代挑战而生的破局者,SAE 以“免运维、强稳定、极致降本”为核心,通过一站式的应用级托管能力,同时支撑传统应用与 AI 应用,让企业把更多精力投入到业务创新。
474 30
|
3月前
|
人工智能 安全 中间件
阿里云 AI 中间件重磅发布,打通 AI 应用落地“最后一公里”
9 月 26 日,2025 云栖大会 AI 中间件:AI 时代的中间件技术演进与创新实践论坛上,阿里云智能集团资深技术专家林清山发表主题演讲《未来已来:下一代 AI 中间件重磅发布,解锁 AI 应用架构新范式》,重磅发布阿里云 AI 中间件,提供面向分布式多 Agent 架构的基座,包括:AgentScope-Java(兼容 Spring AI Alibaba 生态),AI MQ(基于Apache RocketMQ 的 AI 能力升级),AI 网关 Higress,AI 注册与配置中心 Nacos,以及覆盖模型与算力的 AI 可观测体系。
978 47
|
2月前
|
设计模式 人工智能 自然语言处理
3个月圈粉百万,这个AI应用在海外火了
不知道大家还记不记得,我之前推荐过一个叫 Agnes 的 AI 应用,也是当时在 WAIC 了解到的。
433 1
|
2月前
|
消息中间件 人工智能 安全
构建企业级 AI 应用:为什么我们需要 AI 中间件?
阿里云发布AI中间件,涵盖AgentScope-Java、AI MQ、Higress、Nacos及可观测体系,全面开源核心技术,助力企业构建分布式多Agent架构,推动AI原生应用规模化落地。
322 0
构建企业级 AI 应用:为什么我们需要 AI 中间件?
|
2月前
|
存储 人工智能 NoSQL
AI大模型应用实践 八:如何通过RAG数据库实现大模型的私有化定制与优化
RAG技术通过融合外部知识库与大模型,实现知识动态更新与私有化定制,解决大模型知识固化、幻觉及数据安全难题。本文详解RAG原理、数据库选型(向量库、图库、知识图谱、混合架构)及应用场景,助力企业高效构建安全、可解释的智能系统。
|
2月前
|
人工智能 算法 Java
Java与AI驱动区块链:构建智能合约与去中心化AI应用
区块链技术和人工智能的融合正在开创去中心化智能应用的新纪元。本文深入探讨如何使用Java构建AI驱动的区块链应用,涵盖智能合约开发、去中心化AI模型训练与推理、数据隐私保护以及通证经济激励等核心主题。我们将完整展示从区块链基础集成、智能合约编写、AI模型上链到去中心化应用(DApp)开发的全流程,为构建下一代可信、透明的智能去中心化系统提供完整技术方案。
298 3
|
2月前
|
人工智能 安全 Serverless
再看 AI 网关:助力 AI 应用创新的关键基础设施
AI 网关作为云产品推出已有半年的时间,这半年的时间里,AI 网关从内核到外在都进行了大量的进化,本文将从 AI 网关的诞生、AI 网关的产品能力、AI 网关的开放生态,以及新推出的 Serverless 版,对其进行一个全面的介绍,期望对正在进行 AI 应用落地的朋友,在 AI 基础设施选型方面提供一些参考。
665 54
|
2月前
|
人工智能 缓存 运维
【智造】AI应用实战:6个agent搞定复杂指令和工具膨胀
本文介绍联调造数场景下的AI应用演进:从单Agent模式到多Agent协同的架构升级。针对复杂指令执行不准、响应慢等问题,通过意图识别、工具引擎、推理执行等多Agent分工协作,结合工程化手段提升准确性与效率,并分享了关键设计思路与实践心得。
556 20
【智造】AI应用实战:6个agent搞定复杂指令和工具膨胀

推荐镜像

更多