TensorFlow 数据收集
示例 2 中使用的数据是一个房子对象列表,如下所示:
{
"Avg. Area Income": 79545.45857,
"Avg. Area House Age": 5.682861322,
"Avg. AreaNumberofRooms": 7.009188143,
"Avg. Area Number of Bedrooms": 4.09,
"Area Population": 23086.8005,
"Price": 1059033.558,
},
{
"Avg. Area Income": 79248.64245,
"Avg. Area House Age": 6.002899808,
"Avg. AreaNumberofRooms": 6.730821019,
"Avg. Area Number of Bedrooms": 3.09,
"Area Population": 40173.07217,
"Price": 1505890.915,
},
该数据集是一个 JSON 文件,存储位置在:
https://www.kaicz.com/uploads/20250704/houses.json数据清洗(Data Cleaning)
在准备机器学习数据时,务必遵循以下两个关键原则:
- 移除不需要的数据
- 清洗数据错误
移除数据(Remove Data)
移除不需要的数据最好的办法就是只提取所需数据,这一点我们可以使用map
函数对数据进行遍历迭代提取所需字段。
以下函数接收一个对象,并仅从该对象的 Horsepower(马力)和 Miles_per_Gallon(每加仑英里数)属性中提取x
和y
值:
function extractData(obj) {
return {x:obj.Horsepower, y:obj.Miles_per_Gallon};
}
清除数据错误(Remove Errors)
大多数数据集都存在某种类型的错误,清除数据错误的智能方法是使用过滤函数筛选剔除错误数据。
以下代码会在属性(x
或y
)包含空值时返回 false:
function removeErrors(obj) {
return obj.x != null && obj.y != null;
}
获取数据(Fetching Data)
当您准备好map
和filter
函数后,就可以编写数据获取函数了。
async function runTF() {
const jsonData = await fetch("houses.json");
let values = await jsonData.json();
values = values.map(extractData).filter(removeErrors);
}
数据可视化(Plotting the Data)
以下是可用于绘制数据的代码示例:
function tfPlot(values, surface) {
tfvis.render.scatterplot(surface,
{values:values, series:['Original','Predicted']},
{xLabel:'Horsepower', yLabel:'MPG'});
}
评论区 0
发表评论
教程介绍
机器学习是人工智能的子领域,通过算法让计算机从数据中自动学习规律,并做出预测或决策。
29
章节
20
阅读
0
评论
反馈提交成功
感谢您的反馈,我们将尽快处理您的反馈