《机器学习实战》Python3代码


《机器学习实战》Python3代码
资源截图
代码片段和文件信息
# -*- coding: utf-8 -*-
“““
Created on Tue Jul  3 12:06:45 2018

@author: Administrator
“““

from os import listdir
from numpy import *
from KNN_algr import *

def img2vec(filename):
    ‘‘‘this is to...将32X32的图像转化为1X1024的行向量‘‘‘
    returnvec = zeros((11024))
    
    with open(filename) as fp:
        for i in range(32):
            line = fp.readline()
            for j in range(32):
                returnvec[0 32*i + j] = int(line[j])
    # returnVEC按32进位,j代表每位的32个元素    
    return returnvec

def HandWritingTest(train_dirtest_dir):
    labels = []
    File_list = listdir(train_dir)
    # 将目录内的文件按名字放入列表,使用函数解析为数字
    m = len(File_list)
    train_mat = zeros((m1024))
    for i in range(m):
        fname = File_list[i]
        fstr = fname.split(‘.‘)[0]
        fnumber = int(fstr.split(‘_‘)[0])
    # 比如‘digits/testDigits/0_13.txt‘,被拆分为013txt
    # 此处0即为标签数字   
        labels.append(fnumber)
        train_mat[i:] = img2vec(‘%s/%s‘ % (train_dirfname))
    # labels is label_vec,同之前的KNN代码相同,存储标签
    
    test_File_list = listdir(test_dir)
    error = 0.0
    test_m = len(test_File_list)
    for i in range(test_m):
        fname = test_File_list[i]
        fstr = fname.split(‘.‘)[0]
        fnumber = int(fstr.split(‘_‘)[0])
        vec_test = img2vec(‘digits/testDigits/%s‘ % fname)
        Result = classify_KNN(vec_test train_mat labels 3)
        print(“the classifier came with: %d the real answer is :%d “ 
                 % (Result fnumber))
        if(Result != fnumber) : error += 1
    # 这部分和Test模块相同,直接copy过来就好
    print(“the accuracy is %f | the error_rate is %f “ % 
          (1- (float(error) /float(test_m))(float(error) /float(test_m))))

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-08-19 03:49  Machine-Learning-in-Action-Python3-master
     文件          66  2018-08-19 03:49  Machine-Learning-in-Action-Python3-master.gitattributes
     文件        2881  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterREADME.md
     目录           0  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNN
     文件        1867  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNDigit_recog.py
     文件         634  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNFeature_scaling.py
     文件        1075  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNKNN_algr.py
     文件         989  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNParse_data.py
     文件        1468  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNTestData.py
     文件           1  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNN\__init__.py
     文件         873  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNN\__main__.py
     文件       26067  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdatingTestSet2.txt
     目录           0  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdigits
     目录           0  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdigits estDigits
     文件        1056  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdigits estDigits_0.txt
     文件        1056  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdigits estDigits_1.txt
     文件        1056  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdigits estDigits_10.txt
     文件        1056  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdigits estDigits_11.txt
     文件        1056  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdigits estDigits_12.txt
     文件        1056  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdigits estDigits_13.txt
     文件        1056  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdigits estDigits_14.txt
     文件        1056  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdigits estDigits_15.txt
     文件        1056  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdigits estDigits_16.txt
     文件        1056  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdigits estDigits_17.txt
     文件        1056  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdigits estDigits_18.txt
     文件        1056  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdigits estDigits_19.txt
     文件        1056  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdigits estDigits_2.txt
     文件        1056  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdigits estDigits_20.txt
     文件        1056  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdigits estDigits_21.txt
     文件        1056  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdigits estDigits_22.txt
     文件        1056  2018-08-19 03:49  Machine-Learning-in-Action-Python3-masterch01-KNNdigits estDigits_23.txt
............此处省略5878个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)