لیست پيوندي(Linked List) :
ليست پيوندي بر خلاف آرايه پوياست. به همين دليل درج و حذف در آن ساده تر و سريع تر از آرايه است. اما جستجو و مرت بسازي
ميتوانند در آرايه بسيار سريع تر انجام شوند . هر عنصر در ليست يك طرفه خطي از دو بخش تشكيل شده است كه يكي براي ذخيره مقدار و ديگري براي اشاره به عنصر بعدي ليست است. در ليست يك طرفه خطي نميتوان جستجوي دودويي انجام داد جستجوي خطي در ليست يك طرفه از مرتبه (n(O است .
براي حذف گره با آدرس مشخص از ليست يك طرفه ابتدا بايد ليست را تا يافتن گره قبل از آن پيمايش نمود. بنابراين عمليات حذف يك عنصر دلخواه از ليست يك طرفه خطي از مرتبه (n(O است. در حالي كه درج با فرض دانستن مكان آن از (1)O است .
براي دسترسي به عناصر ليست يك طرفه خطي لازم است آدرس عنصر ابتدايي را داشته باشيم. بنابراين گاهي براي هماهنگي اين عنصر با ديگر عناصر آن را مقدار دهي نمي كنند و در حقيقت اولين عنصر حاوي مقدار بعد از عنصر ابتدايي قرار مي گيرد. در اين حالت به عنصر ابتدايي «سر ليست» گفته مي شود .
آخرين اشاره گر ليست يك طرفه خطي null است. با تعريف ليست حلقوي يك طرفه اين اشاره گر به عنصر اول اشاره مي كند. در چنين ليستي با داشتن آدرس هر گره مي توان به كليه گره ها دسترسي داشت و معمولاً به خاطر ساده نمودن درج در ابتداي ليست آدرس گره انتهايي نگه داري مي شود. ليست حلقوي نيز مي تواند سر ليست داشته باشد .
در ليست پيوندي دو طرفه در هر گره دو اشاره گر وجود دارد كه يكي به گره بعدي و ديگري به گره قبلي در ليست اشاره مي كند. بنابراين با داشتن آدرس يك گره كليه گره ها قابل دستيابي هستند. حذف و درج در اين ليست با ليست يك طرفه تفاوت دارد و از مرتبه (1)O است.
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
ليست پيوندي بر خلاف آرايه پوياست. به همين دليل درج و حذف در آن ساده تر و سريع تر از آرايه است. اما جستجو و مرت بسازي
ميتوانند در آرايه بسيار سريع تر انجام شوند . هر عنصر در ليست يك طرفه خطي از دو بخش تشكيل شده است كه يكي براي ذخيره مقدار و ديگري براي اشاره به عنصر بعدي ليست است. در ليست يك طرفه خطي نميتوان جستجوي دودويي انجام داد جستجوي خطي در ليست يك طرفه از مرتبه (n(O است .
براي حذف گره با آدرس مشخص از ليست يك طرفه ابتدا بايد ليست را تا يافتن گره قبل از آن پيمايش نمود. بنابراين عمليات حذف يك عنصر دلخواه از ليست يك طرفه خطي از مرتبه (n(O است. در حالي كه درج با فرض دانستن مكان آن از (1)O است .
براي دسترسي به عناصر ليست يك طرفه خطي لازم است آدرس عنصر ابتدايي را داشته باشيم. بنابراين گاهي براي هماهنگي اين عنصر با ديگر عناصر آن را مقدار دهي نمي كنند و در حقيقت اولين عنصر حاوي مقدار بعد از عنصر ابتدايي قرار مي گيرد. در اين حالت به عنصر ابتدايي «سر ليست» گفته مي شود .
آخرين اشاره گر ليست يك طرفه خطي null است. با تعريف ليست حلقوي يك طرفه اين اشاره گر به عنصر اول اشاره مي كند. در چنين ليستي با داشتن آدرس هر گره مي توان به كليه گره ها دسترسي داشت و معمولاً به خاطر ساده نمودن درج در ابتداي ليست آدرس گره انتهايي نگه داري مي شود. ليست حلقوي نيز مي تواند سر ليست داشته باشد .
در ليست پيوندي دو طرفه در هر گره دو اشاره گر وجود دارد كه يكي به گره بعدي و ديگري به گره قبلي در ليست اشاره مي كند. بنابراين با داشتن آدرس يك گره كليه گره ها قابل دستيابي هستند. حذف و درج در اين ليست با ليست يك طرفه تفاوت دارد و از مرتبه (1)O است.
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
توابع قابل استفاده در کتابخانه Pthorch :
این کد یک تنسور تصادفی به ابعاد (3، 4) ایجاد میکند و نوع دادهی آن را نمایش میدهد. تنسور تصادفی با استفاده از تابع
این کد یک تنسور تصادفی به ابعاد (224، 224، 3) ایجاد میکند که معمولاً برای نمایش تصاویر RGB استفاده میشود. در این تنسور، ابعاد اول و دوم به ترتیب ارتفاع و عرض تصویر را نشان میدهند و ابعاد سوم تعداد کانالهای رنگی است (سه کانال برای RGB).
در این کد، یک تنسور با استفاده از تابع torch.arange ایجاد شده است. این تابع یک تنسور ایجاد میکند که شروع آن از start است، تا end به مقدار step افزایش مییابد.
در اینجا، با استفاده از torch.arange(10, 100, 10) یک تنسور با مقادیر از 10 تا 90 با گام 10 ایجاد شده است.
سپس با استفاده از argmax() و argmin()، اندیس مقادیر بزرگترین و کوچکترین عناصر تنسور به ترتیب به دست میآید و چاپ میشود. این اندیسها نشاندهندهٔ موقعیت (اندیس) این مقادیر در تنسور هستند.
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
import torch
random_tensor = torch.rand(size=(3, 4))
random_tensor, random_tensor.dtype
output:
(tensor([[0.1284, 0.5498, 0.0269, 0.1569],
[0.4350, 0.7384, 0.9168, 0.5741],
[0.1758, 0.3176, 0.9596, 0.4971]]),
torch.float32)
این کد یک تنسور تصادفی به ابعاد (3، 4) ایجاد میکند و نوع دادهی آن را نمایش میدهد. تنسور تصادفی با استفاده از تابع
torch.rand
ایجاد میشود و ابعاد آن با استفاده از پارامتر size=(3, 4)
مشخص میشود. در نهایت، نوع دادهی تنسور نیز با استفاده از ویژگی dtype
نمایش داده میشود.random_image_size_tensor = torch.rand(size=(224, 224, 3))
random_image_size_tensor.shape, random_image_size_tensor.ndim
output :
(torch.Size([224, 224, 3]), 3)
این کد یک تنسور تصادفی به ابعاد (224، 224، 3) ایجاد میکند که معمولاً برای نمایش تصاویر RGB استفاده میشود. در این تنسور، ابعاد اول و دوم به ترتیب ارتفاع و عرض تصویر را نشان میدهند و ابعاد سوم تعداد کانالهای رنگی است (سه کانال برای RGB).
tensor = torch.arange(10, 100, 10)
print(f"Tensor: {tensor}")
print(f"Index where max value occurs: {tensor.argmax()}")
print(f"Index where min value occurs: {tensor.argmin()}")
output :
Tensor: tensor([10, 20, 30, 40, 50, 60, 70, 80, 90])
Index where max value occurs: 8
Index where min value occurs: 0
در این کد، یک تنسور با استفاده از تابع torch.arange ایجاد شده است. این تابع یک تنسور ایجاد میکند که شروع آن از start است، تا end به مقدار step افزایش مییابد.
در اینجا، با استفاده از torch.arange(10, 100, 10) یک تنسور با مقادیر از 10 تا 90 با گام 10 ایجاد شده است.
سپس با استفاده از argmax() و argmin()، اندیس مقادیر بزرگترین و کوچکترین عناصر تنسور به ترتیب به دست میآید و چاپ میشود. این اندیسها نشاندهندهٔ موقعیت (اندیس) این مقادیر در تنسور هستند.
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
میخواهیم تغییراتی دریک لیست پیوندياعمال کنیم که عمل افزودن عنصر ابتـداویـا انتهـاي لیست با عملیاتی ازمرتبه (1) O قابل انجام باشد. لیست پیوندي را . . .
Anonymous Quiz
25%
حلقوی میکنیم
28%
دو طرفه میکنیم
40%
حلقوی میکنیم وآخرین عنصر را برای دسترسی به لیست ذخیره میکنیم
7%
معکوس میکنیم
الگوریتم و فلوچارت.pdf
5.4 MB
کتاب الگوریتم و فلوچارت برای دوستانی که تازه با رشته کامپیوتر آشنا شدن
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
This media is not supported in your browser
VIEW IN TELEGRAM
پیادهسازی گیت OR با ترسپترون:
برای پیادهسازی گیت OR با استفاده از نورون ترسپترون، باید وزنها (weights) و بایاس (bias) را به گونهای تنظیم کنیم که رفتار ترسپترون مشابه گیت OR باشد.
همان طور که در گیف مشاهده میکنید ورودی های نوروون (x1,x2) همان AوB نیز می باشند و وزن هر دو 1.5 و bais نیز -1 نیز می باشد این مقادیر به داخل نورون می روند و عملیات هایی در داخل آن انجام می شود و خروجی y را می دهد که در واقع با آن y-had نیز گفته میشود این کار چندین بار اتفاق می افتد اگر خطا غیر صفر باشد وزن ها آپدیت می شود و بعد از چندین اپوک شبکه یاد میگرید که خطی جدایی پذیر بین آن ها قرار دهد که همان طور که در شکل می بینید 3 مقدار آن مقدار خروجی 1 و یکی 0 شده است شبکه باید یاد بگیرید که خطی بین این دو بیندازد و آن ها را از هم جدا کند.
نکته : از نکاتی که باید در این پست بدونیم اینکه در شبکه عصبی پرسپتورن که همان یک معادله جدا پذیری خطی نیز می باشد مقدار وزن ها یعنی W را میدانیم ولی در شبکه عصبی غیر خطی نیز وزن ها را نمیدانیم.
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
برای پیادهسازی گیت OR با استفاده از نورون ترسپترون، باید وزنها (weights) و بایاس (bias) را به گونهای تنظیم کنیم که رفتار ترسپترون مشابه گیت OR باشد.
همان طور که در گیف مشاهده میکنید ورودی های نوروون (x1,x2) همان AوB نیز می باشند و وزن هر دو 1.5 و bais نیز -1 نیز می باشد این مقادیر به داخل نورون می روند و عملیات هایی در داخل آن انجام می شود و خروجی y را می دهد که در واقع با آن y-had نیز گفته میشود این کار چندین بار اتفاق می افتد اگر خطا غیر صفر باشد وزن ها آپدیت می شود و بعد از چندین اپوک شبکه یاد میگرید که خطی جدایی پذیر بین آن ها قرار دهد که همان طور که در شکل می بینید 3 مقدار آن مقدار خروجی 1 و یکی 0 شده است شبکه باید یاد بگیرید که خطی بین این دو بیندازد و آن ها را از هم جدا کند.
نکته : از نکاتی که باید در این پست بدونیم اینکه در شبکه عصبی پرسپتورن که همان یک معادله جدا پذیری خطی نیز می باشد مقدار وزن ها یعنی W را میدانیم ولی در شبکه عصبی غیر خطی نیز وزن ها را نمیدانیم.
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
👍2
کد پرسپترون برای طبقه بندی تابع OR :
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd
def step_function(x):
if x<0:
return 0
else:
return 1
training_set = [((0, 0), 0), ((0, 1), 1), ((1, 0), 1), ((1, 1), 1)]
# ploting data points using seaborn (Seaborn requires dataframe)
plt.figure(0)
x1 = [training_set[i][0][0] for i in range(4)]
x2 = [training_set[i][0][1] for i in range(4)]
y = [training_set[i][1] for i in range(4)]
df = pd.DataFrame(
{'x1': x1,
'x2': x2,
'y': y
})
sns.lmplot("x1", "x2", data=df, hue='y', fit_reg=False, markers=["o", "s"])
# parameter initialization
w = np.random.rand(2)
errors = []
eta = .5
epoch = 30
b = 0
# Learning
for i in range(epoch):
for x, y in training_set:
# u = np.dot(x , w) +b
u = sum(x*w) + b
error = y - step_function(u)
errors.append(error)
for index, value in enumerate(x):
#print(w[index])
w[index] += eta * error * value
b += eta*error
''' produce all decision boundaries
a = [0,-b/w[1]]
c = [-b/w[0],0]
plt.figure(1)
plt.plot(a,c)
'''
# final decision boundary
a = [0,-b/w[1]]
c = [-b/w[0],0]
plt.plot(a,c)
# ploting errors
plt.figure(2)
plt.ylim([-1,1])
plt.plot(errors)
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
👍6
This media is not supported in your browser
VIEW IN TELEGRAM
کاربردهای جستجوی باینری(Binary Search):
1️⃣جستجو در آرایه های مرتب شده: جستجوی باینری برای یافتن موثر یک عنصر در یک آرایه مرتب شده استفاده می شود.
2️⃣پرس و جوهای پایگاه داده: جستجوی باینری را می توان برای مکان یابی سریع رکوردها در جدول پایگاه داده که بر اساس یک کلید خاص مرتب شده است استفاده کرد.
3️⃣یافتن نزدیکترین تطابق: جستجوی باینری را می توان برای یافتن نزدیکترین مقدار به مقدار هدف در یک لیست مرتب شده استفاده کرد.
جستجوی درون یابی: جستجوی باینری را می توان به عنوان نقطه شروع برای جستجوی درون یابی استفاده کرد که یک الگوریتم جستجوی سریع تر است.
مزایای جستجوی باینری:
1️⃣کارآمد: جستجوی باینری دارای پیچیدگی زمانی O(log n) است که آن را برای جستجوی آرایه های مرتب شده بزرگ بسیار کارآمد می کند.
2️⃣پیاده سازی ساده: پیاده سازی و درک جستجوی باینری نسبتاً آسان است.
3️⃣همه کاره: جستجوی باینری را می توان در طیف گسترده ای از برنامه ها استفاده کرد.
4️⃣قابل اعتماد: جستجوی باینری یک الگوریتم قابل اعتماد است که در صورت وجود عنصر هدف در آرایه، همیشه آن را پیدا می کند.
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
1️⃣جستجو در آرایه های مرتب شده: جستجوی باینری برای یافتن موثر یک عنصر در یک آرایه مرتب شده استفاده می شود.
2️⃣پرس و جوهای پایگاه داده: جستجوی باینری را می توان برای مکان یابی سریع رکوردها در جدول پایگاه داده که بر اساس یک کلید خاص مرتب شده است استفاده کرد.
3️⃣یافتن نزدیکترین تطابق: جستجوی باینری را می توان برای یافتن نزدیکترین مقدار به مقدار هدف در یک لیست مرتب شده استفاده کرد.
جستجوی درون یابی: جستجوی باینری را می توان به عنوان نقطه شروع برای جستجوی درون یابی استفاده کرد که یک الگوریتم جستجوی سریع تر است.
مزایای جستجوی باینری:
1️⃣کارآمد: جستجوی باینری دارای پیچیدگی زمانی O(log n) است که آن را برای جستجوی آرایه های مرتب شده بزرگ بسیار کارآمد می کند.
2️⃣پیاده سازی ساده: پیاده سازی و درک جستجوی باینری نسبتاً آسان است.
3️⃣همه کاره: جستجوی باینری را می توان در طیف گسترده ای از برنامه ها استفاده کرد.
4️⃣قابل اعتماد: جستجوی باینری یک الگوریتم قابل اعتماد است که در صورت وجود عنصر هدف در آرایه، همیشه آن را پیدا می کند.
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
👍5⚡1
چگونه دو ماتریس را ضرب کنیم؟
برای محاسبه AB، با دانستن اینکه A باید در سمت چپ B باشد، ابتدا باید این کار را انجام دهیم بررسی کنید که ماتریس ها سازگار هستند. ضرب دو ماتریس فقط در صورتی امکان پذیر است که تعداد ستون های A با تعداد ردیف های B برابر باشد.
بنابراین، اگر A یک ماتریس n × m و B یک ماتریس m × k باشد، حاصل ضرب،AB را می توان یافت و یک ماتریس جدید n × k خواهد بود.
برای محاسبه حاصل ضرب، یک سری ضرب ضرب داخلی بین بردارهای ردیف A و بردارهای ستون B انجام می دهیم.
شکل بالا فرآیند یک ماتریس 3×3 A و یک ماتریس 3×2 B را نشان می دهد.
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
برای محاسبه AB، با دانستن اینکه A باید در سمت چپ B باشد، ابتدا باید این کار را انجام دهیم بررسی کنید که ماتریس ها سازگار هستند. ضرب دو ماتریس فقط در صورتی امکان پذیر است که تعداد ستون های A با تعداد ردیف های B برابر باشد.
بنابراین، اگر A یک ماتریس n × m و B یک ماتریس m × k باشد، حاصل ضرب،AB را می توان یافت و یک ماتریس جدید n × k خواهد بود.
برای محاسبه حاصل ضرب، یک سری ضرب ضرب داخلی بین بردارهای ردیف A و بردارهای ستون B انجام می دهیم.
شکل بالا فرآیند یک ماتریس 3×3 A و یک ماتریس 3×2 B را نشان می دهد.
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
مسئله ارضای محدودیتها (Constraint Satisfaction Problem - CSP) در هوش مصنوعی به مسائلی اشاره دارد که باید مجموعهای از متغیرها را طوری مقداردهی کنیم که یک سری محدودیتهای از پیش تعریفشده را ارضا کنند. این نوع مسائل در بسیاری از حوزهها از جمله زمانبندی، تخصیص منابع، و حل پازلها کاربرد دارند.
اجزای اصلی یک مسئله ارضای محدودیت
متغیرها (Variables): عناصر اصلی مسئله که باید مقداردهی شوند. به عنوان مثال، در یک مسئله جدول زمانی، هر کلاس درس میتواند یک متغیر باشد.
دامنهها (Domains): مجموعه مقادیر ممکن برای هر متغیر. برای مثال، در مسئله جدول زمانی، دامنه هر کلاس درس میتواند شامل تمام ساعات و روزهای موجود باشد.
محدودیتها (Constraints): شرایطی که مقادیر متغیرها باید رعایت کنند. این محدودیتها میتوانند به صورت روابط بین متغیرها تعریف شوند، مانند "دو کلاس درس نمیتوانند در یک زمان برگزار شوند."
شکل بالا این مسائله را بیان میکند که هیچ منطقه ای با منطقه کناری خودش هم رنگ نمی باشد که در پست های بعدی درمورد شکل بحث خواهیم کرد.
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
اجزای اصلی یک مسئله ارضای محدودیت
متغیرها (Variables): عناصر اصلی مسئله که باید مقداردهی شوند. به عنوان مثال، در یک مسئله جدول زمانی، هر کلاس درس میتواند یک متغیر باشد.
دامنهها (Domains): مجموعه مقادیر ممکن برای هر متغیر. برای مثال، در مسئله جدول زمانی، دامنه هر کلاس درس میتواند شامل تمام ساعات و روزهای موجود باشد.
محدودیتها (Constraints): شرایطی که مقادیر متغیرها باید رعایت کنند. این محدودیتها میتوانند به صورت روابط بین متغیرها تعریف شوند، مانند "دو کلاس درس نمیتوانند در یک زمان برگزار شوند."
شکل بالا این مسائله را بیان میکند که هیچ منطقه ای با منطقه کناری خودش هم رنگ نمی باشد که در پست های بعدی درمورد شکل بحث خواهیم کرد.
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
مرتبه سازی قطعه کد زیر چیست؟
i:=2
while i<=n do begin i:=i^2 x:=x+1 end
i:=2
while i<=n do begin i:=i^2 x:=x+1 end
Anonymous Quiz
39%
log n
29%
log(log n)
13%
n
19%
n log n
🤔8⚡3🙏2
تابع فعالساز ReLU (Rectified Linear Unit) یکی از پرکاربردترین توابع فعالسازی در شبکههای عصبی مصنوعی است که بهویژه در شبکههای عمیق (Deep Learning) بسیار مورد استفاده قرار میگیرد.
تفسیر ساده: خروجی ReLU برای مقادیر مثبت ورودی برابر خود آن مقدار و برای مقادیر منفی صفر است، که تفسیر و درک آن را آسان میکند.
یکی از مشکلات ReLU این است که اگر یک نرون در شبکه مقدار ورودی منفی دریافت کند، خروجی صفر میشود و این نرون دیگر نمیتواند فعال شود و به اصطلاح "مرده" میشود. این مشکل میتواند یادگیری شبکه را تحت تاثیر قرار دهد.
ناپیوستگی در نقطه صفر: تابع ReLU در نقطه صفر ناپیوسته است که میتواند در برخی موارد به مشکلات محاسباتی منجر شود.
ReLU(x)=max(0,x)
قطعه کد زیر این خصوصیت تابع فعال سازی ReLU را نشان میدهد که در شکل بالا نمایش داده شده است :
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
تفسیر ساده: خروجی ReLU برای مقادیر مثبت ورودی برابر خود آن مقدار و برای مقادیر منفی صفر است، که تفسیر و درک آن را آسان میکند.
یکی از مشکلات ReLU این است که اگر یک نرون در شبکه مقدار ورودی منفی دریافت کند، خروجی صفر میشود و این نرون دیگر نمیتواند فعال شود و به اصطلاح "مرده" میشود. این مشکل میتواند یادگیری شبکه را تحت تاثیر قرار دهد.
ناپیوستگی در نقطه صفر: تابع ReLU در نقطه صفر ناپیوسته است که میتواند در برخی موارد به مشکلات محاسباتی منجر شود.
ReLU(x)=max(0,x)
قطعه کد زیر این خصوصیت تابع فعال سازی ReLU را نشان میدهد که در شکل بالا نمایش داده شده است :
from matplotlib import pyplot
def rectified(x):
return max(0.0, x)
series_in = [x for x in range(-10, 11)]
series_out = [rectified(x) for x in series_in]
pyplot.plot(series_in, series_out)
pyplot.show()
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
کمترین مرتبه زمانی الگوریتم پیدا کردن i امین کوچکترین عنصر از میان n عنصـر کـدام است؟
Anonymous Quiz
28%
n
27%
log n
27%
n log n
18%
1
سلام دوستان عزیز👋🏻😉
امیدوارم حالتون خوب باشه. 🌟
اگر در درسهای رشته کامپیوتر نیاز به راهنمایی یا کمک دارین، حتماً از ادمین کمک بگیرین. ادمین کانال ما همیشه آماده پاسخگویی به سوالات شما و ارائه مشاوره هستند.
پس بدون هیچ نگرانی سوالاتتون رو بپرسید و از راهنماییهای مفید ادمینها استفاده کنید. موفق باشید! 💻📚
برای ارتباط با ادمین به آیدی زیر پیام بدید.👇🏻👇🏻
✅ @Se_mohamad
امیدوارم حالتون خوب باشه. 🌟
اگر در درسهای رشته کامپیوتر نیاز به راهنمایی یا کمک دارین، حتماً از ادمین کمک بگیرین. ادمین کانال ما همیشه آماده پاسخگویی به سوالات شما و ارائه مشاوره هستند.
پس بدون هیچ نگرانی سوالاتتون رو بپرسید و از راهنماییهای مفید ادمینها استفاده کنید. موفق باشید! 💻📚
برای ارتباط با ادمین به آیدی زیر پیام بدید.👇🏻👇🏻
✅ @Se_mohamad
🙏12😍1
قانون دلتا(Delta Rule) :
وقتی که مثال ها بصورت خطی جداپذیر نباشند قانون پرسپترون همگرا نخواهد شد. برای غلبه بر این مشکل از قانون دلتا استفاده میشود.
ایده اصلی این قانون استفاده از gradient descent برای جستجو در فضای فرضیه وزن های ممکن میباشد. این قانون پایه روش Back propagation است که برای آموزش شبکه با چندین نرون به هم متصل بکار میرود.
همچنین این روش پایه ای برای انواع الگوریتمهای یادگیری است که باید فضای فرضیه ای شامل فرضیه های مختلف پیوسته را جستجو کنند.
برای درک بهتر این روش آنرا به یک پرسپترون فاقد حد آستانه اعمال میکنیم. در اینجا لازم است ابتدا تعریفی برای خطا ی آموزش ارائه شود. یک تعریف متداول این چنین است:
که این مجموع برای تمام مثال های آموزشی انجام میشود.
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
وقتی که مثال ها بصورت خطی جداپذیر نباشند قانون پرسپترون همگرا نخواهد شد. برای غلبه بر این مشکل از قانون دلتا استفاده میشود.
ایده اصلی این قانون استفاده از gradient descent برای جستجو در فضای فرضیه وزن های ممکن میباشد. این قانون پایه روش Back propagation است که برای آموزش شبکه با چندین نرون به هم متصل بکار میرود.
همچنین این روش پایه ای برای انواع الگوریتمهای یادگیری است که باید فضای فرضیه ای شامل فرضیه های مختلف پیوسته را جستجو کنند.
برای درک بهتر این روش آنرا به یک پرسپترون فاقد حد آستانه اعمال میکنیم. در اینجا لازم است ابتدا تعریفی برای خطا ی آموزش ارائه شود. یک تعریف متداول این چنین است:
E = ½ Σi (y – ȳ )^2
که این مجموع برای تمام مثال های آموزشی انجام میشود.
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
👍1
عملیات در صف حلقوی:
صف حلقوی یکی از ساختارهای داده است که در آن دادهها به صورت خطی و متمایل به صورت حلقه ذخیره میشوند. این به این معنی است که آخرین عنصر صف به اولین عنصر متصل است، ایجاد میکنند و به آن دسترسی دارند. این ساختار داده معمولاً با استفاده از یک آرایه یا یک لیست پیوندی پیادهسازی میشود.
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
صف حلقوی یکی از ساختارهای داده است که در آن دادهها به صورت خطی و متمایل به صورت حلقه ذخیره میشوند. این به این معنی است که آخرین عنصر صف به اولین عنصر متصل است، ایجاد میکنند و به آن دسترسی دارند. این ساختار داده معمولاً با استفاده از یک آرایه یا یک لیست پیوندی پیادهسازی میشود.
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
👍2
درستی یا نادرستی گزاره هاي زیر کدام است؟
الف)از میان n نقطه در صفحه، میتوان نزدیکترین 1/2^n نقطه به مبدأ را در زمان (n(O بـه دسـت آورد. ب) مرتب سازي 6 عنصر با الگوریتم هاي مبتنی بر مقایسه حداقل به 10 مقایسه در بـدترین حالت نیاز دارد.
الف)از میان n نقطه در صفحه، میتوان نزدیکترین 1/2^n نقطه به مبدأ را در زمان (n(O بـه دسـت آورد. ب) مرتب سازي 6 عنصر با الگوریتم هاي مبتنی بر مقایسه حداقل به 10 مقایسه در بـدترین حالت نیاز دارد.
Anonymous Quiz
36%
الف)درست ، ب)نادرست
29%
الف)نادرست ، ب)درست
18%
الف)نادرست ، ب)نادرست
16%
الف)درست ، ب)درست