(一)基于TensorFlow的聊天机器人——导学

一、课程导学
深度学习领域中两个热门的技术
1、图像处理
2、自然语言处理(NLP):聊天机器人、文本处理、垃圾邮件识别

本课程项目:聊天机器人
框架:
TensorFlow:谷歌开源的深度学习框架>训练模型
Android(操作系统):作为聊天机器人的使用和开发载体

技术点:
1、NLP技术点
(1)RNN和LSTM的原理和应用范围: RNN:循环神经网络
LSTM:长短期记忆网络
(2)NLP语言模型解析
(3)语料库的获取和建立方法
(4)Word2vec、seq2seq
(5)词向量、命名实体识别、词性标注等NLP基础
(6)分类模型(朴素贝叶斯、隐马尔可夫模型等)
(7)文本处理方法、Attention机制
(9)聊天机器人的训练思路

2、TenorFlow和Android技术点
(1)TenforFlow框架原理
(2)模型构建与训练
(3)模型的部署与发布
(4)TensorFlow发布flask接口

	(5)Android系统架构
	(6)Android开发流程
	(7)Android调用第三方API
	  (8)Android的打包和发布

收获:NLP知识、你训练的聊天机器人、TensorFlow框架使用

技术储备:Python、TensorFlow、Android

二、基础导学

什么是TensorFlow?
TensorFlow基本原理及训练模型
什么是Android系统?
如何开发一个Android的APP

1、TensorFlow框架介绍
TensorFlow:
定义:谷歌基于DistBelief进行研发的第二代人工智能学习系统

用处
(1)用于语音识别或图像识别等多项机器学习和深度学习领域
(2)将复杂的数据结构传输至人工智能神经网中进行分析和处理
支持CNN、RNN和LSTL算法,是目前在Image、Speech和NLP中最流 行的深度神经网络模型

TensorFlow系统框架
在这里插入图片描述
前端:负责提供TensorFlow的编程模型(即我们要训练的模型)、构造计算图、管理 session的周期

TensorFlow的基本要素

张量(Tensor):对神经网络高维度的表达方式,在TensorFlow中,张量的维度称为“阶”,是张量维度的一个数量的描述,与矩阵的阶非同一概念

图(Graph):代表模型的数据流,由多个ops(操作即节点)和tensor(数据流即边)组成,算法都会表示成计算图(数据流图),可看作是有向图,张量就是通过各种操作在有向图中流动。
在这里插入图片描述

会话(Session):在TensorFlow中,要想启动一个图前提是要先创建一个会话,所有对图的操作,都必须放在会话中进行。
例如:

import tensorflow as tf
Hello = tf.constant('Hello Tensorflow!')
sess = tf.Session();//创建会话
print(sess.run(Hello));

TensorFlow基本原理及模型训练
在这里插入图片描述
注意:
训练文本和训练图像的数据集不同
训练集和测试集要分开,结构尽可能保持一致
训练集尽量大,保证准确性

2、Android系统介绍

定义
基于Linux的开源的操作系统,主要用于移动设备
采用了分层的架构,分为四个层:应用程序层、应用程序框架层、系统运行库层、Linux内核层。
开发人员可以用Java语言来编写Android应用程序

在这里插入图片描述
Applications(应用程序层):包含Android核心自带的应用程序(如通讯录 闹钟等)

Application Frameworks(应用程序框架层):开发人员运用该层的模块来开发应用
详解:
Activity Manager(活动管理器):管理应用程序的生命周期,提供导航、回退、返回按钮等
Window Manager(窗口管理):Android的窗口机制,添加或删除界面、视图到屏幕
Content providers(内容提供者):使一个应用程序可以访问另一个应用程序的数据
View System(视图管理层):创建应用程序的视图,即各种UI组件
Notification Manager(通知管理区):管理Android在状态栏显示的通知
Pacage Maneger(包管理区):可以获得应用程序的信息如版本号、名字
Telephony Manager(电话管理区):用于访问手机通讯相关的状态如4G
Resource Manager(资源管理器):管理图片、界面、字体颜色等
Location Manager(定位管理):如微信朋友圈定位、百度导航等
XMPP Service(可扩展的协议服务)

Libraries(函数库)
Surface Manager:对显示子系统的管理,并为应用程序提供2D和3D的融合
Media Framework:支持静态动态图等
SQLite:Android系统的数据库,管理应用程序存储的数据
OpenGLIES:硬件3D加速库
FreeType:支持向量显示
Webkit:对Web浏览器的支持
SGL:管理2D图形
SSL:安全套接层
libc:基础库

Android Runtime(安卓运行时库)
Core Libraries:支持Java编程的库
Daivik Virtual Machine:管理Android平台虚拟机

Linux kernel:对安卓系统的提供最底层的服务

Android开发流程
注意:布局文件即界面
在这里插入图片描述

Android环境搭建
需要的工具及环境:
JDK:Java开发的包
Android SDK:安卓的开发包
Android Studio:安卓的开发平台
MuMu模拟器

注意:
(1)解决MuMu模拟器界面仿真机问题
设置中心>界面设置>宽:1080 高:1920>属性配置>手机机型
(2)解决打开Android Studio运行无法找到设备问题
在这里插入图片描述
(3)解决androidStudio开发过程中minSdk(API 24) > deviceSdk(API 23)
在Android目录下找到build gradle 文件,修改android:minSdkVersion="23"或更小,然后点击在右上侧的蓝色同步按钮,重新生成,即可解决问题

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值