Linux机器学习环境配置

Linux机器学习环境配置

一、 实验目的:

1. 熟悉虚拟机软件的安装和使用; 

2. 熟悉Linux操作系统的安装和使用;

3. 熟悉SSH方式远程登录Linux系统的方法;

4. 掌握Linux操作系统中Python及机器学习相关库的安装和使用;

5. 熟练掌握Linux操作系统中Anaconda的安装使用。

6. 熟练掌握Linux操作系统中Jupyter Notebook的安装使用。

二、实验要求: 

1. 安装完成虚拟机软件; 

2. 安装完成Linux操作系统;

3. 能用SSH方式远程登录Linux系统;

4. 安装完成Linux操作系统中Python及机器学习相关库;

5. 安装配置完成Linux操作系统中Anaconda。

6. 能使用Linux操作系统中Jupyter Notebook。

7. 完成Jupyter Notebook中一个简单机器学习算法。

  • 实验工具与环境
  1. PC机
  2. Linux操作系统
  3. 浏览器:Internet Explorer、Firefox
  4. 其它软件:虚拟机软件、Centos文件包、putty、Python、Anaconda、Jupyter Notebook

四、实验步骤与内容: 

1. 在你的Windows(或MacOS)操作系统安装虚拟机软件;

2. 在虚拟机软件中安装ubuntu虚拟机,安装时创建一个具有管理员权限的用户,后续的操作均以该用户登录;

3. 在ubuntu虚拟机中安装Python及机器学习相关库;

4. 在ubuntu虚拟机中安装并配置Anaconda的主目录;

6. 在ubuntu虚拟机中启动Jupyter Notebook服务,在宿主机中通过浏览器访问该服务器。(在Windows中远程连接Linux服务器的Jupyter),方法如下:

a) jupyter默认只能本地访问,如果想把它安装在服务器上,远程访问,如下配置:

步骤一:先创建配置文件: 在命令行窗口执行 $ jupyter notebook --generate-config

步骤二:启动ipython(在终端输入ipython)

创建远程连接密码: In [1]: from notebook.auth import passwd; passwd()

输入两次密码,将得到一个字符串,比如'argon2:$argon2id$v=19$m=10240,t=10,p=8$+eo4ymdFe9+O3enjhFik9g$qMwRGs/Ldq3YjbuGgmn5Xw',该终端不要关掉,复制该字符串,后面会用到;

exit() #退出

步骤三:打开配置文件,$ vim ~/.jupyter/jupyter_notebook_config.py,复制以下内容粘贴到配置文件中

c.NotebookApp.ip = '*'  #允许所有ip访问

c.NotebookApp.password = u'刚才的密文'

c.NotebookApp.port = 8888 #指定一个商品,随便指定

c.NotebookApp.open_browser = False  #不打开浏览器

c.InteractiveShellApp.matplotlib = 'inline' #直接显示matplotlib图形

步骤四:重新启动jupyter notebook  #无界面

步骤五:本地访问http://localhost:8888

大家互相之间用windows客户端访问其它同学的服务器:http://服务器ip:8888

查看ip命令:ip address show

7. 在Jupyter Notebook中创建一个笔记文件,在其中完成一个简单K-Means聚类的例子,将30组随机生成的二维无标签数据分成两类,输出聚类参数及聚类模型图。

五、实验结果&总结(文件名以学号进行命名):

(列出实验过程中的收获和遇到的困难)

实验一:熟悉虚拟机软件的安装和使用

在windos中的官网中安装虚拟机,并按要求步骤安装

实验二:安装完成Linux操作系统

(1)点击创建新的虚拟机

(2)我们需要一个Linux操作系统的光盘镜像文件,比如Ubutu、CentOS、Debian、红帽操作系统等。各有各的优势,这里我们演示的是ubutu操作系统。如

(3)要步骤创建好ubuntu虚拟机

(4)安装成功后,有很多人都困扰的一个问题是该操作系统是全英文的,我们非常需要将其修改成中文的,这里步骤稍微有点麻烦许多朋友都折腾老半天才改好。

因为网络上许多教程,我也不一一演示,这里推荐一个比较详细的教程:Ubuntu设置中文界面_ubuntu中文界面-CSDN博客,按该步骤即可完成。

实验三:能用SSH方式远程登录Linux系统

(1)、 确保 Linux 服务器已启用 SSH

首先,确保 Linux 服务器上已经安装并运行了 SSH 服务。可以使用以下命令来安装它:

sudo apt-get update

sudo apt-get install openssh-server

 (2)确保 SSH 服务正在运行:

sudo service ssh status

          

  1. 查看IP地址

输入命令:ifconfig

  1. 在本地windos操作系统中打开操作命令

输入:ssh 用户名@id

出现这样的就表明远程连接成功。

  实验四:安装完成Linux操作系统中Python及机器学习相关库

Python及机器学习相关库有numpy、 matplotilb、 Mahotas、 Scikit-learn、scipy等很多实用及有趣的库,都可以尝试以下。

输入:sudo apt-get build-dep python-scipy/numpy/matplotilb

安装示例如下:

其他库与其操作都大差不差。

安装完成后输入:pip3 list | grep numpy/...检查是否安装成功。

也可进入python中导入该库看是否会报错来判断是否成功安装。

实验五:完成Linux操作系统中Anaconda的安装使用

  1. 在官网或者在清华镜像源中安装其安装包

下载后出现

  1. 将其安装

输入:sh Anaconda3-5.3.0-Linux-x86_64.sh//注意改成自己下载的sh文件

按提示安装,有时需要输入yes。

安装成功后会出现该文件

但是许多人在时候输入conda命令会不成功,那是因为conda环境没配置好,我也在这困惑了一会。

  1. 配置conda环境

需要修改bashrc文件

输入命令: 

vim /.bashrc

source /.bashrc

在最后一行中添加:export PATH="/home/zzy/anaconda3/bin:$PATH"

也可以不用打开文件直接修改,这里不作演示。

这时输入conda命令后就会出现

这样就是安装好adconda了。

实验六:使用Linux操作系统中Jupyter Notebook

一般来说adconda都会自带Jupyter,所以说主要按步骤安装好adconda的都可直接使用jupyter。

我这里也是,直接输入:jupyter notebook

点开网页就可直接进入jupyter notebook

实验七:完成Jupyter Notebook中一个简单机器学习算法

使用numpy、sklearn和pandas库实验

通过创建一个简单的数据集,并使用LinearRegression类来拟合一个线性模型,展示了如何在Python中使用scikit-learn库进行线性回归分析。

通过train_test_split函数将数据集划分为训练集和测试集,这是为了评估模型在未知数据上的表现。训练集用于训练模型,而测试集用于验证模型的预测能力。

实现可视化预测结果和实际结果的对比

六、附录:源代码

# 导入必要的库
import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn import metrics
import matplotlib.pyplot as plt

# 假设你有一个数据集df,它包含两个特征(Feature1 和 Feature2)以及一个目标变量(Target)
# df = pd.read_csv('your_dataset.csv')  # 你需要用你自己的数据集替换'your_dataset.csv'

# 为了简化,我们在这里创建一个简单的数据集
np.random.seed(0)
df = pd.DataFrame({
    'Feature1': np.random.randint(0, 100, size=(100,)),
    'Feature2': np.random.randint(0, 100, size=(100,)),
    'Target': np.random.randint(0, 100, size=(100,))
})

# 定义特征和目标变量
X = df[['Feature1', 'Feature2']]
y = df['Target']

# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)

# 实例化线性回归模型并训练模型
model = LinearRegression()
model.fit(X_train, y_train)

# 做出预测
y_pred = model.predict(X_test)

# 评估模型性能
print('Mean Absolute Error:', metrics.mean_absolute_error(y_test, y_pred))
print('Mean Squared Error:', metrics.mean_squared_error(y_test, y_pred))
print('Root Mean Squared Error:', np.sqrt(metrics.mean_squared_error(y_test, y_pred)))

import matplotlib.pyplot as plt  

plt.rcParams['font.sans-serif'] = ['SimHei']  # 设置字体为 SimHei  

plt.rcParams['axes.unicode_minus'] = False    # 解决负号 '-' 显示为方块的问题
# 可视化预测结果和实际结果的对比
plt.scatter(y_test, y_pred)
plt.xlabel("实际值")
plt.ylabel("预测值")
plt.title("实际值与预测值的对比")
plt.show()

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值