آموزش رایگان Tensorflow; پیش بینی راندمان سوخت

آموزش-رایگان-TensorFlow (3)

در این پست از سری آموزش رایگان TensorFlow به مسئله رگرسیون (Regression) می پردازیم. در رگرسیون ، هدف ما پیش بینی تولید یک مقدار مداوم (continuous ) است، مانند افزایش و کاهش قیمت طلا یا یک احتمال وقوع یک اتفاق . در مقایسه با مبحث دسته بندی (classification) ، جایی که ما قصد داشتیم یک کلاس را از لیست کلاس ها انتخاب کنیم .

 

دیتاست و پیشنیاز ها:

 

آموزش رایگان TensorFlow-Regression-

 

در این آموزش ما از دیتاست معروف Auto MPG استفاده می کنیم. ما مدلی را برای پیش بینی راندمان سوخت خودروهای اواخر دهه ۱۹۷۰ و اوایل دهه ۱۹۸۰ ایجاد می کنیم. برای این کار ، توضیحی در مورد بسیاری از خودروها از آن دوره زمانی مدل ارائه می دهیم. این توضیحات شامل ویژگی هایی مانند: سیلندر ، جابجایی ، اسب بخار و وزن است.

مواد مورد نیاز برای این آزمایش : کتابخانه seaborn برای به نمودار و نمایش کشیدن نتایج. خود TensorFlow. خود Keras. گوگل درایو و افزونه Google Colab.برای شروع وارد گوگل درایو خود شده  و یک فایل ipynb ایجاد کنید در اولین قدم با قطعه کد زیر کتابخانه seaborn را نصب و فعال کنید :

 

!pip install -q seaborn

خوب حالا زمان  فراخوانی کتابخانه های پیشفرض است :

from __future__ import absolute_import, division, print_function, unicode_literals

import pathlib

import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns

import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import layers

print(tf.__version__)

دیتا ست را از سایت اصلی باید دانلود کنیم (اینجا). برا این کار کد زیر را اجرا بگیرید:

dataset_path = keras.utils.get_file("auto-mpg.data", "http://archive.ics.uci.edu/ml/machine-learning-databases/auto-mpg/auto-mpg.data")
dataset_path

خوب مثل همیشه باید داده ها را بدانیم تا بتوانید به سیستم آموزش دهیم. برای نمایش داده ها از pandas استفاده میکنیم. pandas یک کتابخانه متن باز بسیار قدرتمند است. این کتابخانه ساختارهای داده با کارایی بالا و کاربرد آسان و ابزارهای تحلیل داده برای زبان برنامه نویسی پایتون را ارائه می دهد.

column_names = ['MPG','Cylinders','Displacement','Horsepower','Weight',
'Acceleration', 'Model Year', 'Origin']
raw_dataset = pd.read_csv(dataset_path, names=column_names,
na_values = "?", comment='\t',
sep=" ", skipinitialspace=True)

dataset = raw_dataset.copy()
dataset.tail()

 

نتیجه کد:
آموزش رایگان TensorFlow-Regression-0

 

پاکسازی داده ها:

 

می دانیم که مجموعه داده شامل مقادیر ناشناخته ای است. برای همین منظور از اصلا پاکسازی داده استفاده میکنیم. سپس سطر های مورد نظر را از دیتاست دانلودی حذف میکنیم تا کار ساده تر گردد:

 
dataset.isna().sum()
dataset = dataset.dropna()

 

اما همانگونه که در استفاده از کتابخانه panda  متوجه شدیم، این دیتاست دارای ستون هایی با نام  طبقه بندی است و عددی نیست . پس باید از تکنیک One Hot Encoding استفاده کنیم . این تکنیک متغیرهای طبقه بندی شده را یه بردارهای باینری تبدیل می کند. این امر ابتدا نیاز دارد که مقادیر طبقه بندی شده در مقادیر عدد صحیح خود تخصیص داده شوند. سپس ، هر مقدار عدد صحیح به عنوان یک بردار باینری نمایش داده می شود که تمام مقادیر صفر به جز شاخص عدد صحیح است که با علامت ۱ مشخص می شود. کد :

 


origin = dataset.pop('Origin')

dataset['USA'] = (origin == 1)*1.0
dataset['Europe'] = (origin == 2)*1.0
dataset['Japan'] = (origin == 3)*1.0
dataset.tail()

 

نتیجه کد:

آموزش رایگان TensorFlow-Regression-1
آموزش رایگان TensorFlow

 

پایان بخش اول.

 

 

 

 

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

توسط
تومان