搭建深度学习手写数字识别模型

简介: 使用django作为后台框架,使用nginx作为服务端,tensorflow2作为深度学习开发框架

创建用户并赋予sudo权限

sudo vim /etc/sudoers

#赋值一行root ALL=(ALL) ALL并将root改成自己的名字就行

安装Python

设置优先级

  • 调整python3的优先级,

    sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.5.1
    
    sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6.2
  • 更改默认值,python默认为python2,现在修改为python3

    sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 100
    
    sudo update-alternatives --install /usr/bin/python python /usr/bin/pyhton3 150
  • 安装pip3

    apt-get install python3-pip
    
    
    #为python3添加包
    pip3 install packagename

mysql的安装,对外开放

  • 卸载残余的mysql
#查看是否有残余的mysql
rpm -qa | grep mysql
#删除系统内mysql的信息
rpm -e mysql  // 普通删除模式
rpm -e --nodeps mysql  // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除
  • 安装mysql
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

rpm -ivh mysql-community-release-el7-5.noarch.rpm

yum update

yum install mysql-server

chown mysql:mysql -R /var/lib/mysql

mysqld --initialize

systemctl start mysqld

查询初始密码

grep 'temporary password' /var/log/mysqld.log

修改密码

#mysql 修改密码
set password for root@localhost = password('nuocheng'); 

或者

use mysql;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'nuocheng';

设置root可以远程登录

在本机先使用root用户登录mysql:
mysql -u root -p "youpassword"
进行授权操作:
GRANT ALL PRIVILEGES ON *.* TO root@"39.99.225.54" IDENTIFIED BY "nuocheng" WITH GRANT OPTION;
重载授权表:
 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'nuocheng'  
FLUSH PRIVILEGES;
退出mysql数据库:

Anaconda的配置

export PATH=/root/anaconda3/bin:$PATH

nginx的安装

#安装依赖包
yum install -y pcre pcre-devel openssl openssl-devel gcc gcc gcc-c++ ncurses-devel perl 
  • 首先安装PCRE

PCRE 作用是让 Nginx 支持 Rewrite 功能。

1、下载 PCRE 安装包,下载地址: http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz
tar -zxvf pcre-8.35.tar.gz
cd pcre-8.35
./configure
make && make install
  • 下载并安装nginx
wget http://nginx.org/download/nginx-1.6.2.tar.gz
tar zxvf nginx-1.6.2.tar.gz
cd nginx-1.6.2
./configure
make
make install

uwsgi的安装

yum install -y gcc* pcre-devel openssl-devel --skip-broken
yum install -y python-devel
pip install uwsgi
查询版本

yum search python | grep -i devel

安装过程中如果出现缺少目录lib*可以使用

whereis lib** 然后进行下面的操作

uwsgi出现的软连接问题

ln -s /root/anaconda3/lib/libicui18n.so.58 /lib64/libicui18n.so.58

ln -s /root/anaconda3/lib/libicuuc.so.58 /lib64/libicuuc.so.58

ln -s /root/anaconda3/lib/libicudata.so.58 /lib64/libicudata.so.58

cp /root/anaconda3/lib/libstdc++.so.6.0.24 /usr/lib64
ln -s /usr/lib64/libstdc++.so.6.0.24  /lib64/libstdc++.so.6

静态文件的加载

settings.py中

# 配置静态文件url
STATIC_URL = '/static/'

# 配置聚合静态文件存放目录,需要在根目录下事先创建这个目录
STATIC_ROOT = os.path.join(BASE_DIR, "static")

# 配置上传文件上传url
MEDIA_URL = "/media/"

# 配置上传文件上传存放目录,需要在根目录下事先创建这个目录
MEDIA_ROOT = os.path.join(BASE_DIR, "media")
#执行
python manage.py collectstatic

uc_nginx.conf中

#将第一行的user  nobody改成
user root

location /static {

    alias /home/ubuntu/Mxonline/static; # 指向django的static目录

}

uwsgi.ini中

 # mysite_uwsgi.ini file

    [uwsgi]



    # Django-related settings

    # the base directory (full path)

    chdir  = /home/ubuntu/MxOnline

    # Django's wsgi file

    module = MxOnline.wsgi

    # the virtualenv (full path)



    # process-related settings

    # master
    
    master  = true

    # maximum number of worker processes

    processes  = 10

    # the socket (use the full path to be safe

    socket  = 127.0.0.1:8000

    # ... with appropriate permissions - may be needed

    # chmod-socket    = 664

    # clear environment on exit

    vacuum  = true
    #代码改动重新启动
    py-autoreload = 1
    virtualenv = /home/ubuntu/.virtualenvs/mxonline2

手写识别模型

class minist_model(tf.keras.models.Model):
    def __init__(self):
        super(minist_model, self).__init__()
        self.f=tf.keras.layers.Flatten()
        self.d1=tf.keras.layers.Dense(128,activation="relu",kernel_regularizer="l2")
        self.d2=tf.keras.layers.Dense(10,activation='softmax')


    def call(self,input):
        y=self.f(input)
        y=self.d1(y)
        y=self.d2(y)
        return y
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
5月前
|
机器学习/深度学习 算法 定位技术
Baumer工业相机堡盟工业相机如何通过YoloV8深度学习模型实现裂缝的检测识别(C#代码UI界面版)
本项目基于YOLOv8模型与C#界面,结合Baumer工业相机,实现裂缝的高效检测识别。支持图像、视频及摄像头输入,具备高精度与实时性,适用于桥梁、路面、隧道等多种工业场景。
626 27
|
4月前
|
机器学习/深度学习 数据可视化 算法
深度学习模型结构复杂、参数众多,如何更直观地深入理解你的模型?
深度学习模型虽应用广泛,但其“黑箱”特性导致可解释性不足,尤其在金融、医疗等敏感领域,模型决策逻辑的透明性至关重要。本文聚焦深度学习可解释性中的可视化分析,介绍模型结构、特征、参数及输入激活的可视化方法,帮助理解模型行为、提升透明度,并推动其在关键领域的安全应用。
435 0
|
3月前
|
机器学习/深度学习 存储 PyTorch
Neural ODE原理与PyTorch实现:深度学习模型的自适应深度调节
Neural ODE将神经网络与微分方程结合,用连续思维建模数据演化,突破传统离散层的限制,实现自适应深度与高效连续学习。
207 3
Neural ODE原理与PyTorch实现:深度学习模型的自适应深度调节
|
2月前
|
机器学习/深度学习 数据采集 人工智能
深度学习实战指南:从神经网络基础到模型优化的完整攻略
🌟 蒋星熠Jaxonic,AI探索者。深耕深度学习,从神经网络到Transformer,用代码践行智能革命。分享实战经验,助你构建CV、NLP模型,共赴二进制星辰大海。
|
5月前
|
机器学习/深度学习 人工智能 PyTorch
AI 基础知识从 0.2 到 0.3——构建你的第一个深度学习模型
本文以 MNIST 手写数字识别为切入点,介绍了深度学习的基本原理与实现流程,帮助读者建立起对神经网络建模过程的系统性理解。
649 15
AI 基础知识从 0.2 到 0.3——构建你的第一个深度学习模型
|
3月前
|
机器学习/深度学习 数据采集 传感器
【WOA-CNN-LSTM】基于鲸鱼算法优化深度学习预测模型的超参数研究(Matlab代码实现)
【WOA-CNN-LSTM】基于鲸鱼算法优化深度学习预测模型的超参数研究(Matlab代码实现)
247 0
|
5月前
|
机器学习/深度学习 人工智能 自然语言处理
AI 基础知识从 0.3 到 0.4——如何选对深度学习模型?
本系列文章从机器学习基础出发,逐步深入至深度学习与Transformer模型,探讨AI关键技术原理及应用。内容涵盖模型架构解析、典型模型对比、预训练与微调策略,并结合Hugging Face平台进行实战演示,适合初学者与开发者系统学习AI核心知识。
502 15
|
10月前
|
机器学习/深度学习 数据采集 自然语言处理
深度学习实践技巧:提升模型性能的详尽指南
深度学习模型在图像分类、自然语言处理、时间序列分析等多个领域都表现出了卓越的性能,但在实际应用中,为了使模型达到最佳效果,常规的标准流程往往不足。本文提供了多种深度学习实践技巧,包括数据预处理、模型设计优化、训练策略和评价与调参等方面的详细操作和代码示例,希望能够为应用实战提供有效的指导和支持。
|
5月前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习模型、算法与应用的全方位解析
深度学习,作为人工智能(AI)的一个重要分支,已经在多个领域产生了革命性的影响。从图像识别到自然语言处理,从语音识别到自动驾驶,深度学习无处不在。本篇博客将深入探讨深度学习的模型、算法及其在各个领域的应用。
1052 3
|
6月前
|
机器学习/深度学习 存储 PyTorch
PyTorch + MLFlow 实战:从零构建可追踪的深度学习模型训练系统
本文通过使用 Kaggle 数据集训练情感分析模型的实例,详细演示了如何将 PyTorch 与 MLFlow 进行深度集成,实现完整的实验跟踪、模型记录和结果可复现性管理。文章将系统性地介绍训练代码的核心组件,展示指标和工件的记录方法,并提供 MLFlow UI 的详细界面截图。
294 2
PyTorch + MLFlow 实战:从零构建可追踪的深度学习模型训练系统