TensorFlow教程(七):数据源

在TensorFlow中,有些数据源使用Python的库,有的需要编写Python脚本下载,还有其他的得手动从网上下载。

1、鸢尾花卉数据集(Iris data)。此样本数据是机器学习和统计分析最经典的数据集,包含鸢尾、变色鸢尾和维吉尼亚鸢尾各自的花萼和花瓣的长度和宽度。总共有150个数据集,每类有50个样本。可以使用Scikit Learn的数据集函数:

用法:

from sklearn import datasets

iris = datasets.load_iris()
print(len(iris.data))
print(len(iris.target))
print(iris.data[0])
print(set(iris.target))

 

2、出生体重数据(Birth weight data),此样本数据是婴儿出生体重以及母亲和家庭历史人口统计学、医学指标,有189个样本集,包含11个特征变量。

import requests

birthdata_url = 'https://www.umass.edu/statdata/statdata/data/lowbwt.dat'
birth_file = requests.get(birthdata_url)
birth_data = birth_file.text.split('\r\n')[5:]
birth_header = [x for x in birth_data[0].split(' ') if len(x)>=1]
birth_data = [[float(x) for x in y.split(' ') if len(x)>=1] for y in birth_data[1:] if len(y)>=1]
print(len(birth_data))
print(len(birth_data[0]))

 

3、波士顿房价数据(Boston Housing data)。此样本数据集保存在卡耐基梅隆大学机器学习仓库,总共有506个房价样本,包含14个特征变量。

import requests

housing_url = 'https://archive.ics.uci.edu/ml/machine-learning-databases/housing/housing.data'
housing_header = ['CRIM', 'ZN', 'INDUS', 'CHAS', 'NOX', 'RM', 'AGE', 'DIS', 'RAD', 'TAX', 'PTRATIO', 'B', 'LSTAT', 'MEDV']
housing_file = requests.get(housing_url)
housing_data = [[float(x) for x in y.split(' ') if len(x)>=1] for y in housing_file.text.split('\n') if len(y)>=1]
print(len(housing_data))
print(len(housing_data[0]))

 

4、MNIST手写体字库:MNIST手写体字库是NIST手写体字库的字样本数据集。包含70000张0到9的图像,其中60000张标注为训练数据样本集,10000张为测试样本数据集。TensorFlow通过内部函数访问它,MNIST手写字体库常用来进行图像识别训练。在机器学习中,提供验证样本数据集来预防过拟合是非常重要的,TensorFlow从训练样本数据集中留出5000张图作为验证样本数据集合。

from tensorflow.examples.tutorials.mnist import input_data

mnist = input_data.read_data_sets("MNIST_data/", one_hot=True)
print(len(mnist.train.images))
print(len(mnist.test.images))
print(len(mnist.validation.images))
print(mnist.train.labels[1,:])

 

5、垃圾短信文本数据集(Spam-ham text data)

import requests
import io
from zipfile import ZipFile

zip_url = 'http://archive.ics.uci.edu/ml/machine-learning-databases/00228/smsspamcollection.zip'
r = requests.get(zip_url)
z = ZipFile(io.BytesIO(r.content))
file = z.read('SMSSpamCollection')

text_data = file.decode()
text_data = text_data.encode('ascii',errors='ignore')
text_data = text_data.decode().split('\n')
text_data = [x.split('\t') for x in text_data if len(x)>=1]
[text_data_target, text_data_train] = [list(x) for x in zip(*text_data)]
print(len(text_data_train))
print(set(text_data_target))
print(text_data_train[1])

 

6、影评样本数据集。此样本数据集是电影观看者的影评,分为好评和差评。

import requests
import io
import tarfile

movie_data_url = 'http://www.cs.cornell.edu/people/pabo/movie-review-data/rt-polaritydata.tar.gz'
r = requests.get(movie_data_url)

stream_data = io.BytesIO(r.content)
tmp = io.BytesIO()
while True:
    s = stream_data.read(16384)
    if not s:  
        break
    tmp.write(s)
stream_data.close()
tmp.seek(0)

tar_file = tarfile.open(fileobj=tmp, mode="r:gz")
pos = tar_file.extractfile('rt-polaritydata/rt-polarity.pos')
neg = tar_file.extractfile('rt-polaritydata/rt-polarity.neg')

pos_data = []
for line in pos:
    pos_data.append(line.decode('ISO-8859-1').encode('ascii',errors='ignore').decode())
neg_data = []
for line in neg:
    neg_data.append(line.decode('ISO-8859-1').encode('ascii',errors='ignore').decode())
tar_file.close()

print(len(pos_data))
print(len(neg_data))
print(neg_data[0])

 

7、CIFAR-10图像数据集。此图像数据集是CIFAR机构发布的8亿张彩色图片(已标注,32x32像素)的子集,总共分为10类,60000张图片。50000张图片训练数据集,10000张测试数据集。

 

8、莎士比亚著作文本数据集(Shakespeare text data)

import requests

shakespeare_url = 'http://www.gutenberg.org/cache/epub/100/pg100.txt'

response = requests.get(shakespeare_url)
shakespeare_file = response.content

shakespeare_text = shakespeare_file.decode('utf-8')

shakespeare_text = shakespeare_text[7675:]
print(len(shakespeare_text))

 

9、英德句子翻译样本集。此数据集由Tatoeba发布,Manythings整理。

import requests
import io
from zipfile import ZipFile
sentence_url = 'http://www.manythings.org/anki/deu-eng.zip'
r = requests.get(sentence_url)
z = ZipFile(io.BytesIO(r.content))
file = z.read('deu.txt')

eng_ger_data = file.decode()
eng_ger_data = eng_ger_data.encode('ascii',errors='ignore')
eng_ger_data = eng_ger_data.decode().split('\n')
eng_ger_data = [x.split('\t') for x in eng_ger_data if len(x)>=1]
[english_sentence, german_sentence] = [list(x) for x in zip(*eng_ger_data)]
print(len(english_sentence))
print(len(german_sentence))
print(eng_ger_data[10])

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 情感极性分类rt-polaritydata 用途:句子正负极性分类,英文 * rt-polarity.pos contains 5331 positive snippets * rt-polarity.neg contains 5331 negative snippets 基线:``Seeing stars: Exploiting class relationships for sentiment categorization with respect to rating scales.'', Proceedings of the ACL, 2005. 链接: https://pan.baidu.com/s/1MfzOshlYovQUrCdGaMueDA 提取码: pp5r 2. 大规模图数据web-Google.txt 用途:大规模图的重要性排序、图数据可视化 节点表示网页,定向边表示它们之间的超链接,共有 875713个节点、 5105039条边。 数据是Google于2002年发布的。 链接: https://pan.baidu.com/s/1dWM_VOpaB07o18406RwLKg 提取码: kyru 3. 多分类文本集SogouC.reduced.20061102.tar 用途:多类别文本分类,中文。 共有9个类别,每个类别有1900个文本。由Sogo发布。 C000008财经 C000010信息技术 C000013健康 C000014体育 C000016旅游 C000020教育 C000022招聘 C000023文化 C000024军事 链接: https://pan.baidu.com/s/1GQgoBI6d02PmaGnVEJv1eg 提取码: au6h “关注互联网大数据处理技术与应用公众号查询” 4. 垃圾邮件分类spambase.data 用途:垃圾邮件分类,英文 来源于UCI机器学习数据库 包含57个特征,以及一个邮件标签:spam (1) or not (0)。 其中: 最后一列为标签,占比为:Spam 1813 (39.4%)、Non-Spam 2788 (60.6%) 倒数第二列和倒数第三列为整数[1,...],分别表示邮件中没有实际含义的最长大写字母序列长度、大写字母数量 倒数第四个是[1,...]的实数,表示各种没有实际含义的大写字母串的平均长度 其余字段取值是[0,100]内的实数,是各种字符出现比例的百分数 链接: https://pan.baidu.com/s/1o6aIM2te9xEtfe6lMOLTpQ 提取码: 2kph “关注互联网大数据处理技术与应用公众号查询” 5. 食品评分数据集Amazon Fine Food Reviews 用途:评分预测,英文 Amazon Fine Food Reviews 是由亚马逊的食品评论组成的数据集,其包含截止 2012 年 10 月在亚马逊网站上的 568454 条食品评论信息,其包括用户信息、评论内容、食品信息和食品评分等数据。 链接: https://pan.baidu.com/s/1OffHTDW-G927-fxayhUdjQ 提取码: zw2i“关注互联网大数据处理技术与应用公众号查询”
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值