علاقه مند به تحلیل داده و داده کاوی. لینکدین:https://www.linkedin.com/in/mohammad-fatehi-09654062/
خوشه بندی داده های مکانی
چندی پیش شرکت اوبار که در زمینه ارسال سفارشات و حمل بار آنلاین در ایران فعالیت می کند یک مسابقه یادگیری ماشین در کگل برگزار کرد که در آن به صورت خلاصه هدف آن این بود که با استفاده از یک مجموعه از اطلاعات و متغیرهای مکانی مثل استان مبدا و مقصد و غیرمکانی مثل وزن بار و نوع وسیله قیمت بارهای حمل شده در سطح ایران به درستی پیش بینی شود تا بر اساس این پیش بینی یک سیاست گذاری ثابت برای قیمت گذاری بارها پیاده سازی شود.
یک خوشه بندی با روش kmeans روی مختصات جغرافیایی مبدا و مقصد پیاده شده است. تعداد خوشه های بهینه برابر 5 به دست آمده است.
کدها به صورت کامل آمده است:
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
%matplotlib inline
import sklearn.cluster as cluster
import time
import warnings
warnings.filterwarnings("ignore")
ubaar = pd.read_csv("train.csv.zip")
ubaar.head()
df1 =ubaar[['sourceLatitude','sourceLongitude']]
df1.columns = ['Latitude','Longitude']
df2 =ubaar[['destinationLatitude','destinationLongitude']]
df2.columns = ['Latitude','Longitude']
frames = [df1,df2]
df = pd.concat(frames)
df.isnull().sum()
df.describe()
X = df.values
sns.set_style("darkgrid", {"axes.facecolor": ".9"})
fig = plt.figure(figsize=(12,8))
from sklearn.cluster import KMeans
sse = []
for k in range(2,15):
kmeans = KMeans(n_clusters = k)
kmeans.fit(X)
sse.append(kmeans.inertia_)
plt.plot(range(2,15),sse)
plt.title("Elbow Curve")
plt.show()
kmeans = KMeans(n_clusters = 5).fit(X)
centroids = kmeans.cluster_centers_
plt.scatter(X[:,0],X[:,1], c = kmeans.labels_, cmap = "rainbow")
plt.show()
مطلبی دیگر از این انتشارات
دوره Reinforcement Learning: بیاید شروع کنیم
مطلبی دیگر از این انتشارات
انتخاب الگوریتم مناسب در پروژههای دادهکاوی
مطلبی دیگر از این انتشارات
آشنایی با Adaboost