手写flat函数

这样就实现了数组扁平化,这里我用到了展开运算符,为什么实参和形参都用到了展开运算符,是因为实参如果只传一个数组的话,是将整个数组当成一个参数传递过去了,打印参数相当于数组包数组的形式,如果使用了展开运算符,相当于把数组中的值展开全部传递进去,形参的展开运算符是收集参数的,可以试一下,形参如果只传一个a,不就相当于一个参数吗,然后for循环判断数组中的每一项是不是还是数组,如果是走if判断如果不是走else判断,最后输出,得到结果

  • 13
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
手写数字识别是一种基本的机器学习应用,可以用于识别手写数字的图像,并将其转化成数字形式。下面是用Python实现手写数字识别的基本步骤: 1. 收集训练数据:收集一组手写数字图像数据,这些图像应包括数字0到9的不同手写样本。 2. 数据预处理:将手写数字图像数据进行处理,如将其压缩为28x28像素大小的灰度图像,并进行归一化处理,以便更好地训练模型。 3. 训练模型:使用机器学习算法训练模型,如神经网络、SVM等。在训练时,将处理后的手写数字图像数据输入模型,并对其进行训练,以便模型能够正确地识别手写数字图像。 4. 模型测试:使用测试数据对模型进行测试,以便评估模型的性能和准确率。 5. 应用模型:将训练好的模型应用到实际场景中,如手写数字识别应用程序。 下面是一个使用Python实现手写数字识别的简单例子: ```python import numpy as np import matplotlib.pyplot as plt from sklearn.datasets import load_digits from sklearn.neural_network import MLPClassifier from sklearn.model_selection import train_test_split # 加载手写数字数据集 digits = load_digits() # 查看数据集 print(digits.data.shape) # 显示数据集中的一些图像 fig, axes = plt.subplots(4, 4) for i, ax in enumerate(axes.flat): ax.imshow(digits.images[i], cmap='gray') plt.show() # 数据预处理 X = digits.data / 16.0 y = digits.target # 划分训练集和测试集 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3) # 定义神经网络模型 model = MLPClassifier(hidden_layer_sizes=(64,), activation='relu', solver='adam', max_iter=1000) # 训练模型 model.fit(X_train, y_train) # 模型评估 score = model.score(X_test, y_test) print("Test score: {:.2f}%".format(score * 100)) # 预测新数据 new_data = np.array([digits.data[0]]) prediction = model.predict(new_data) print("Prediction:", prediction[0]) ``` 在这个例子中,我们使用了sklearn库中的MLPClassifier类来实现一个神经网络模型,并对手写数字数据集进行训练和测试。我们使用train_test_split函数将数据集分成了训练集和测试集,然后训练模型并评估其性能。最后,我们使用训练好的模型对新数据进行预测。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值