标题为python配置numpy和tensorflow的方法,便于以后配置:

配置python3.6.8 库函数

  1. 配置库时走了很多弯路,而且直接pip下载安装或者是到官网下载安装包速度很慢,浪费时间。最后学会了利用国内镜像网站快速配置python库的方法。曾经装了python3.9.0,发现没有与之对应的tensorflow库,尝试从官网下载python安装包,速度超级慢。最下列出快速配置numpy和tensorflow的方法。

  2. 卸载电脑上的python环境,python3.6.8,重新安装;
    http://npm.taobao.org/mirrors/python/3.6.8/ 从淘宝镜像站下载Python安装包,并安装,可以跟据需要改版本。
    在这里插入图片描述

  3. 在安装好python后 使用清华镜像网站升级pip版本, win+r到cmd 输入:
    pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U
    升级后:
    在这里插入图片描述

  4. 配置numpy库并测试:
    安装 命令:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple numpy

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
首先,我们需要加载波士顿房价数据集。可以使用`sklearn`库中的`load_boston`方法来加载数据集: ```python from sklearn.datasets import load_boston import numpy as np boston = load_boston() X = boston.data y = boston.target ``` 接下来,将数据集分为训练集、验证集和测试集。我们可以使用`train_test_split`方法来实现: ```python from sklearn.model_selection import train_test_split # 将数据集分为训练集、验证集和测试集(6:2:2) X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.4, random_state=42) X_valid, X_test, y_valid, y_test = train_test_split(X_test, y_test, test_size=0.5, random_state=42) ``` 然后,我们需要进行数据标准化,以便于模型的训练和预测: ```python from sklearn.preprocessing import StandardScaler # 对数据进行标准化 scaler = StandardScaler() X_train = scaler.fit_transform(X_train) X_valid = scaler.transform(X_valid) X_test = scaler.transform(X_test) ``` 接下来,我们可以使用TensorFlow2.0搭建线性回归模型: ```python import tensorflow as tf model = tf.keras.models.Sequential([ tf.keras.layers.Dense(1, input_shape=[13]) ]) ``` 然后,我们可以使用交叉验证来评估模型的性能: ```python from sklearn.model_selection import KFold # 交叉验证 k = 5 kf = KFold(n_splits=k, shuffle=True, random_state=42) for i, (train_index, val_index) in enumerate(kf.split(X_train, y_train)): print("Fold ", i) X_fold_train, y_fold_train = X_train[train_index], y_train[train_index] X_fold_val, y_fold_val = X_train[val_index], y_train[val_index] model = tf.keras.models.Sequential([ tf.keras.layers.Dense(1, input_shape=[13]) ]) model.compile(loss="mse", optimizer=tf.keras.optimizers.SGD(lr=1e-3)) history = model.fit(X_fold_train, y_fold_train, epochs=50, validation_data=(X_fold_val, y_fold_val)) ``` 接下来,我们可以使用`ModelCheckpoint`方法保存最好的模型: ```python checkpoint_cb = tf.keras.callbacks.ModelCheckpoint("best_model.h5", save_best_only=True) model = tf.keras.models.Sequential([ tf.keras.layers.Dense(1, input_shape=[13]) ]) model.compile(loss="mse", optimizer=tf.keras.optimizers.SGD(lr=1e-3)) history = model.fit(X_train, y_train, epochs=50, validation_data=(X_valid, y_valid), callbacks=[checkpoint_cb]) model = tf.keras.models.load_model("best_model.h5") ``` 最后,我们可以使用训练好的模型进行新数据的预测: ```python y_pred = model.predict(X_test) ``` 完整代码如下: ```python from sklearn.datasets import load_boston from sklearn.model_selection import train_test_split, KFold from sklearn.preprocessing import StandardScaler import tensorflow as tf # 加载数据集 boston = load_boston() X = boston.data y = boston.target # 将数据集分为训练集、验证集和测试集(6:2:2) X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.4, random_state=42) X_valid, X_test, y_valid, y_test = train_test_split(X_test, y_test, test_size=0.5, random_state=42) # 对数据进行标准化 scaler = StandardScaler() X_train = scaler.fit_transform(X_train) X_valid = scaler.transform(X_valid) X_test = scaler.transform(X_test) # 交叉验证 k = 5 kf = KFold(n_splits=k, shuffle=True, random_state=42) for i, (train_index, val_index) in enumerate(kf.split(X_train, y_train)): print("Fold ", i) X_fold_train, y_fold_train = X_train[train_index], y_train[train_index] X_fold_val, y_fold_val = X_train[val_index], y_train[val_index] model = tf.keras.models.Sequential([ tf.keras.layers.Dense(1, input_shape=[13]) ]) model.compile(loss="mse", optimizer=tf.keras.optimizers.SGD(lr=1e-3)) history = model.fit(X_fold_train, y_fold_train, epochs=50, validation_data=(X_fold_val, y_fold_val)) # 保存最好的模型 checkpoint_cb = tf.keras.callbacks.ModelCheckpoint("best_model.h5", save_best_only=True) model = tf.keras.models.Sequential([ tf.keras.layers.Dense(1, input_shape=[13]) ]) model.compile(loss="mse", optimizer=tf.keras.optimizers.SGD(lr=1e-3)) history = model.fit(X_train, y_train, epochs=50, validation_data=(X_valid, y_valid), callbacks=[checkpoint_cb]) model = tf.keras.models.load_model("best_model.h5") # 使用模型进行预测 y_pred = model.predict(X_test) ```

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值