Fortuna کا تعارف: ایک لائبریری برائے غیر یقینی کی مقدار درست کرنے کے لیے PlatoBlockchain Data Intelligence۔ عمودی تلاش۔ عی

فورٹونا ​​کا تعارف: غیر یقینی صورتحال کی مقدار کے لیے ایک لائبریری

پیشین گوئی کی غیر یقینی صورتحال کا صحیح تخمینہ ان درخواستوں میں بنیادی ہے جن میں اہم فیصلے شامل ہوتے ہیں۔ غیر یقینی صورتحال کا استعمال ماڈل کی پیشین گوئیوں کی وشوسنییتا کا اندازہ لگانے، انسانی مداخلت کو متحرک کرنے، یا یہ فیصلہ کرنے کے لیے کیا جا سکتا ہے کہ آیا کسی ماڈل کو جنگل میں محفوظ طریقے سے تعینات کیا جا سکتا ہے۔

ہم تعارف کراتے ہیں فارچونا، غیر یقینی صورتحال کی مقدار کے لیے ایک اوپن سورس لائبریری۔ Fortuna انشانکن کے طریقے مہیا کرتا ہے، جیسا کہ کنفارمل پیشن گوئی، جو کسی بھی تربیت یافتہ عصبی نیٹ ورک پر لاگو کیا جا سکتا ہے تاکہ کیلیبریٹڈ غیر یقینی صورتحال کا تخمینہ حاصل کیا جا سکے۔ لائبریری مزید کئی Bayesian inference طریقوں کی حمایت کرتی ہے جن کا اطلاق گہری اعصابی نیٹ ورکس پر کیا جا سکتا ہے سن. لائبریری بینچ مارکس کو چلانا آسان بناتی ہے اور پریکٹیشنرز کو غیر یقینی صورتحال کی مقدار درست کرنے کی جدید تکنیکوں سے فائدہ اٹھا کر مضبوط اور قابل اعتماد AI حل تیار کرنے کے قابل بنائے گی۔

گہری تعلیم میں زیادہ اعتماد کا مسئلہ

اگر آپ نے کبھی کسی تربیت یافتہ ڈیپ نیورل نیٹ ورک کلاسیفائر کے ذریعے واپس آنے والے طبقاتی امکانات کو دیکھا ہے، تو آپ نے دیکھا ہو گا کہ ایک طبقے کا امکان دوسروں کے مقابلے میں بہت زیادہ تھا۔ کچھ اس طرح، مثال کے طور پر:

p = [0.0001, 0.0002, …, 0.9991, 0.0003, …, 0.0001]

اگر زیادہ تر پیشین گوئیوں کا معاملہ ایسا ہے تو، آپ کا ماڈل حد سے زیادہ پر اعتماد ہو سکتا ہے۔ درجہ بندی کرنے والے کے ذریعے واپس کیے گئے امکانات کی درستی کا اندازہ لگانے کے لیے، ہم ان کا موازنہ ہولڈ آؤٹ ڈیٹا سیٹ پر حاصل ہونے والی اصل درستگی سے کر سکتے ہیں۔ درحقیقت، یہ فرض کرنا فطری ہے کہ درست طریقے سے درجہ بند ڈیٹا پوائنٹس کا تناسب پیشین گوئی شدہ طبقے کے متوقع امکان سے تقریباً مماثل ہونا چاہیے۔ یہ تصور کے طور پر جانا جاتا ہے انشانکن [Guo C. et al.، 2017].

بدقسمتی سے، بہت سے تربیت یافتہ گہرے عصبی نیٹ ورکس کو غلط انداز میں ترتیب دیا گیا ہے، مطلب یہ ہے کہ پیش گوئی کی گئی کلاس کا تخمینہ امکان صحیح طور پر درجہ بند ان پٹ ڈیٹا پوائنٹس کے تناسب سے بہت زیادہ ہے۔ دوسرے لفظوں میں، درجہ بندی کرنے والا زیادہ پر اعتماد ہے۔

زیادہ پر اعتماد ہونا عملی طور پر پریشانی کا باعث ہو سکتا ہے۔ ایک ڈاکٹر AI کی طرف سے تیار کی گئی صحت مند تشخیص کے نتیجے میں متعلقہ اضافی ٹیسٹ کا حکم نہیں دے سکتا۔ خود سے چلنے والی کار بریک نہ لگانے کا فیصلہ کر سکتی ہے کیونکہ اس نے اعتماد سے اندازہ لگایا کہ سامنے والی چیز کوئی شخص نہیں ہے۔ ایک گورنر شہر کو خالی کرنے کا فیصلہ کر سکتا ہے کیونکہ ایک AI کے ذریعہ ایک مشہور قدرتی آفت کا امکان بہت زیادہ ہے۔ ان اور بہت سی دیگر ایپلی کیشنز میں، ماڈل کی پیشین گوئیوں کی وشوسنییتا کا اندازہ لگانے، انسانی فیصلہ ساز کے پاس واپس آنے، یا یہ فیصلہ کرنے کے لیے کہ آیا ماڈل کو محفوظ طریقے سے تعینات کیا جا سکتا ہے، کیلیبریٹڈ غیر یقینی صورتحال کے تخمینے اہم ہیں۔

Fortuna: غیر یقینی کی مقدار کے لیے ایک لائبریری

پیشین گوئیوں کی غیر یقینی صورتحال کا اندازہ لگانے یا ان کی پیمائش کرنے کے لیے بہت سی شائع شدہ تکنیکیں موجود ہیں، جیسے، Bayesian inference [ولسن اے جی، 2020]درجہ حرارت کی پیمائش [Guo C. et al.، 2017]، اور رسمی پیشن گوئی [Angelopoulos AN et al.، 2022] طریقے تاہم، غیر یقینی کی مقدار کے لیے موجودہ ٹولز اور لائبریریوں کا دائرہ محدود ہے اور وہ ایک جگہ پر تکنیک کی وسعت نہیں پیش کرتے ہیں۔ اس کے نتیجے میں ایک اہم اوور ہیڈ ہوتا ہے، جو پیداواری نظاموں میں غیر یقینی صورتحال کو اپنانے میں رکاوٹ بنتا ہے۔

اس خلا کو پُر کرنے کے لیے، ہم نے Fortuna کا آغاز کیا، غیر یقینی صورتحال کی مقدار کے لیے ایک لائبریری جو پورے ادب میں نمایاں طریقوں کو اکٹھا کرتی ہے اور انہیں ایک معیاری اور بدیہی انٹرفیس کے ساتھ صارفین کے لیے دستیاب کرتی ہے۔

مثال کے طور پر، فرض کریں کہ آپ کے پاس ٹریننگ، کیلیبریشن، اور ٹیسٹ ڈیٹا لوڈرز ہیں۔ tensorflow.Tensor فارمیٹ، یعنی train_data_loader, calib_data_loader اور test_data_loader. مزید برآں، آپ کے پاس ایک گہری سیکھنے کا ماڈل لکھا ہوا ہے۔ سن، یعنی ماڈل۔ پھر آپ Fortuna کو استعمال کر سکتے ہیں:

  1. پیچھے کی تقسیم کو فٹ کرنا؛
  2. ماڈل آؤٹ پٹس کیلیبریٹ کریں؛
  3. کیلیبریٹڈ پیشن گوئیاں کرنا؛
  4. غیر یقینی صورتحال کا تخمینہ لگانا؛
  5. تشخیص کی پیمائش کی پیمائش

درج ذیل کوڈ آپ کے لیے یہ سب کچھ کرتا ہے۔

from fortuna.data import DataLoader
from fortuna.prob_model.classification import ProbClassifier
from fortuna.metric.classification import expected_calibration_error

# convert data loaders
train_data_loader = DataLoader.from_tensorflow_data_loader(train_data_loader)
calib_data_loader = DataLoader.from_tensorflow_data_loader(calib_data_loader)
test_data_loader = DataLoader.from_tensorflow_data_loader(test_data_loader)

# define and train a probabilistic model
prob_model = ProbClassifier(model=model)
train_status = prob_model.train(train_data_loader=train_data_loader, calib_data_loader=calib_data_loader)

# make predictions and estimate uncertainty
test_inputs_loader = test_data_loader.to_inputs_loader()
test_means = prob_model.predictive.mean(inputs_loader=test_inputs_loader)
test_modes = prob_model.predictive.mode(inputs_loader=test_inputs_loader, means=test_means)

# compute the expected calibration error and plot a reliability diagram
test_targets = test_data_loader.to_array_targets()
ece = expected_calibration_error(preds=test_modes, probs=test_means, targets=test_targets)

مذکورہ کوڈ SWAG سمیت کئی ڈیفالٹ انتخاب کا استعمال کرتا ہے۔ [Maddox WJ et al.، 2019] ایک پچھلے تخمینہ کے طریقہ کار کے طور پر، درجہ حرارت کی پیمائش [Guo C. et al.، 2017] ماڈل آؤٹ پٹس، اور ایک معیاری گاؤشیائی پیشگی تقسیم کے ساتھ ساتھ بعد کی فٹنگ اور انشانکن کے عمل کی ترتیب کو کیلیبریٹ کرنے کے لیے۔ آپ ان تمام اجزاء کو آسانی سے کنفیگر کر سکتے ہیں، اور اگر آپ کسی مخصوص کنفیگریشن کی تلاش میں ہیں یا اگر آپ متعدد اجزاء کا موازنہ کرنا چاہتے ہیں تو آپ کو ایسا کرنے کے لیے انتہائی حوصلہ افزائی کی جاتی ہے۔

استعمال کے طریقوں

Fortuna تین استعمال کے طریقوں کی پیشکش کرتا ہے: 1/ فلیکس ماڈلز سے شروع، 2 / ماڈل آؤٹ پٹ سے شروع ہو رہا ہے۔، اور 3/ غیر یقینی اندازوں سے شروع ہو رہا ہے۔. ان کی پائپ لائنوں کو مندرجہ ذیل شکل میں دکھایا گیا ہے، ہر ایک سبز پینل میں سے ایک سے شروع ہوتا ہے۔ مندرجہ بالا کوڈ کا ٹکڑا Flax ماڈلز سے شروع ہونے والے Fortuna کے استعمال کی ایک مثال ہے، جو Bayesian inference طریقہ کار کا استعمال کرتے ہوئے ایک ماڈل کو تربیت دینے کی اجازت دیتا ہے۔ متبادل طور پر، آپ یا تو ماڈل آؤٹ پٹس کے ذریعے یا براہ راست اپنے غیر یقینی اندازوں سے شروع کر سکتے ہیں۔ یہ دونوں مؤخر الذکر موڈ ہیں۔ فریم ورک آزاد اور آپ کو ایک سے شروع ہونے والی غیر یقینی صورتحال کے تخمینے کیلیبریٹڈ حاصل کرنے میں مدد کرتا ہے۔ تربیت یافتہ ماڈل.

1/ غیر یقینی اندازوں سے شروع کرنا

غیر یقینی صورتحال سے شروع ہونے والے تخمینوں میں کم سے کم مطابقت کے تقاضے ہوتے ہیں، اور یہ لائبریری کے ساتھ تعامل کی تیز ترین سطح ہے۔ یہ استعمال کا طریقہ درجہ بندی اور رجعت دونوں کے لیے پیشن گوئی کے روایتی طریقے پیش کرتا ہے۔ یہ غیر یقینی صورتحال کا تخمینہ لگاتے ہیں۔ numpy.ndarray فارمیٹ کریں اور پیشین گوئیوں کے سخت سیٹ واپس کریں جو صارف کی طرف سے دی گئی امکانی سطح کو برقرار رکھتے ہیں۔ ایک جہتی رجعت کے کاموں میں، کنفارمل سیٹوں کو اعتماد یا معتبر وقفوں کے کیلیبریٹڈ ورژن کے طور پر سوچا جا سکتا ہے۔

ذہن میں رکھیں کہ اگر غیر یقینی صورتحال کا تخمینہ جو آپ ان پٹ میں فراہم کرتے ہیں غلط ہیں، تو کنفارمل سیٹ بڑے اور ناقابل استعمال ہو سکتے ہیں۔ اس وجہ سے، اگر آپ کی درخواست اس کی اجازت دیتی ہے، تو براہ کرم غور کریں۔ ماڈل آؤٹ پٹ سے شروع ہو رہا ہے۔ اور فلیکس ماڈلز سے شروع استعمال کے طریقوں کی تفصیل ذیل میں دی گئی ہے۔

2/ ماڈل آؤٹ پٹ سے شروع کرنا

یہ موڈ فرض کرتا ہے کہ آپ نے پہلے ہی کسی ماڈل کو کسی فریم ورک میں تربیت دی ہے اور ماڈل آؤٹ پٹ کے ساتھ Fortuna پہنچ گئے ہیں۔ numpy.ndarray ہر ان پٹ ڈیٹا پوائنٹ کے لیے فارمیٹ۔ استعمال کا یہ موڈ آپ کو اپنے ماڈل کے آؤٹ پٹس کیلیبریٹ کرنے، غیر یقینی صورتحال کا تخمینہ لگانے، میٹرکس کی گنتی کرنے اور کنفارمل سیٹ حاصل کرنے کی اجازت دیتا ہے۔

مقابلے میں غیر یقینی اندازوں سے شروع ہو رہا ہے۔ استعمال کا موڈ، ماڈل آؤٹ پٹ سے شروع ہو رہا ہے۔ بہتر کنٹرول فراہم کرتا ہے، کیونکہ یہ یقینی بنا سکتا ہے کہ غیر یقینی صورتحال کے تخمینے مناسب طریقے سے کیلیبریٹ کیے گئے ہیں۔ تاہم، اگر ماڈل کو کلاسیکی طریقوں سے تربیت دی گئی ہو، تو ماڈل کی مقدار کا نتیجہ (عرف ایپیسٹیمک) غیر یقینی صورتحال خراب ہو سکتی ہے۔ اس مسئلے کو کم کرنے کے لیے، براہ کرم غور کریں۔ فلیکس ماڈلز سے شروع استعمال موڈ.

3/ فلیکس ماڈل سے شروع کرنا

فلیکس ماڈل سے شروع ہونے والی مطابقت کی ضروریات کے مقابلے میں زیادہ ہیں۔ غیر یقینی اندازوں سے شروع ہو رہا ہے۔ اور ماڈل آؤٹ پٹ سے شروع ہو رہا ہے۔ استعمال کے طریقوں، کیونکہ اس میں لکھے گئے گہرے سیکھنے کے ماڈلز کی ضرورت ہوتی ہے۔ سن. تاہم، یہ آپ کو اس قابل بناتا ہے کہ معیاری ماڈل ٹریننگ کو توسیع پذیر Bayesian inference Process سے تبدیل کر سکیں، جو پیشین گوئی کی غیر یقینی صورتحال کی مقدار کو نمایاں طور پر بہتر کر سکتے ہیں۔

Bayesian طریقے غیر یقینی صورتحال کی نمائندگی کرتے ہوئے کام کرتے ہیں جس پر حل درست ہے، محدود معلومات کے پیش نظر، ماڈل پیرامیٹرز پر غیر یقینی صورتحال کے ذریعے۔ اس قسم کی غیر یقینی صورتحال کو "Epistemic" غیر یقینییت کہا جاتا ہے۔ چونکہ عصبی نیٹ ورک اپنے پیرامیٹرز کی مختلف ترتیبات کے مطابق بہت سے مختلف حلوں کی نمائندگی کر سکتے ہیں، اس لیے بایسیئن طریقے خاص طور پر گہری سیکھنے میں مؤثر ثابت ہو سکتے ہیں۔ ہم بہت سے اسکیل ایبل بایسیئن انفرنس طریقہ کار فراہم کرتے ہیں، جن کا استعمال اکثر غیر یقینی اندازوں کے ساتھ ساتھ بہتر درستگی اور انشانکن فراہم کرنے کے لیے کیا جا سکتا ہے، جس میں بنیادی طور پر ٹریننگ ٹائم اوور ہیڈ نہیں ہوتا ہے۔

نتیجہ

ہم نے فورٹونا ​​کی عام دستیابی کا اعلان کیا، ایک لائبریری جو گہری تعلیم میں غیر یقینی کی مقدار کو درست کرنے کے لیے ہے۔ Fortuna پورے ادب میں نمایاں طریقوں کو اکٹھا کرتا ہے، جیسے کہ رسمی طریقے، درجہ حرارت کی پیمائش، اور Bayesian inference، اور انہیں ایک معیاری اور بدیہی انٹرفیس کے ساتھ صارفین کے لیے دستیاب کرتا ہے۔ Fortuna کے ساتھ شروع کرنے کے لیے، آپ درج ذیل وسائل سے مشورہ کر سکتے ہیں:

Fortuna کو آزمائیں، اور ہمیں بتائیں کہ آپ کیا سوچتے ہیں! آپ کو لائبریری میں حصہ ڈالنے یا اپنی تجاویز اور تعاون چھوڑنے کی ترغیب دی جاتی ہے—بس ایک تخلیق کریں۔ مسئلہ یا کھولیں a درخواست ھیںچو. ہماری طرف سے، ہم Fortuna کو بہتر بناتے رہیں گے، اس کے غیر یقینی صورتحال کی مقدار کے تعین کے طریقوں کی کوریج میں اضافہ کریں گے اور مزید مثالیں شامل کریں گے جو کئی منظرناموں میں اس کی افادیت کو ظاہر کرتی ہیں۔


مصنفین کے بارے میں

Fortuna کا تعارف: ایک لائبریری برائے غیر یقینی کی مقدار درست کرنے کے لیے PlatoBlockchain Data Intelligence۔ عمودی تلاش۔ عی

 

Gianluca Detommaso AWS میں ایک اپلائیڈ سائنٹسٹ ہے۔ وہ فی الحال گہری سیکھنے میں غیر یقینی کی مقدار پر کام کر رہا ہے۔ اپنے فارغ وقت میں، Gianluca کھیلوں کی مشق کرنا، زبردست کھانا کھانا اور نئی مہارتیں سیکھنا پسند کرتا ہے۔

Fortuna کا تعارف: ایک لائبریری برائے غیر یقینی کی مقدار درست کرنے کے لیے PlatoBlockchain Data Intelligence۔ عمودی تلاش۔ عیالبرٹو گیسپین جولائی 2021 سے Amazon کمیونٹی شاپنگ کے اندر ایک اپلائیڈ سائنٹسٹ ہے۔ اس کی دلچسپیوں میں قدرتی زبان کی پروسیسنگ، معلومات کی بازیافت اور غیر یقینی کی مقدار شامل ہے۔ وہ کھانے اور شراب کا شوقین ہے۔

Fortuna کا تعارف: ایک لائبریری برائے غیر یقینی کی مقدار درست کرنے کے لیے PlatoBlockchain Data Intelligence۔ عمودی تلاش۔ عیمشیل ڈونی AWS میں ایک Sr Applied Scientist ہے۔ وہ ذمہ دار AI پر کام کرنے والے سائنسدانوں کی ایک ٹیم کی قیادت کرتے ہیں اور ان کی تحقیقی دلچسپیاں الگورتھم فیئرنس اور قابل وضاحت مشین لرننگ ہیں۔

Fortuna کا تعارف: ایک لائبریری برائے غیر یقینی کی مقدار درست کرنے کے لیے PlatoBlockchain Data Intelligence۔ عمودی تلاش۔ عیمیتھیاس سیگر AWS میں پرنسپل اپلائیڈ سائنٹسٹ ہیں۔

Fortuna کا تعارف: ایک لائبریری برائے غیر یقینی کی مقدار درست کرنے کے لیے PlatoBlockchain Data Intelligence۔ عمودی تلاش۔ عیسیڈرک آرچمبیو AWS میں پرنسپل اپلائیڈ سائنٹسٹ اور یورپی لیب فار لرننگ اینڈ انٹیلیجنٹ سسٹمز کے فیلو ہیں۔

Fortuna کا تعارف: ایک لائبریری برائے غیر یقینی کی مقدار درست کرنے کے لیے PlatoBlockchain Data Intelligence۔ عمودی تلاش۔ عیاینڈریو گورڈن ولسن نیو یارک یونیورسٹی میں کورنٹ انسٹی ٹیوٹ آف میتھمیٹیکل سائنسز اور سینٹر فار ڈیٹا سائنس میں ایسوسی ایٹ پروفیسر اور AWS میں Amazon وزٹنگ اکیڈمک ہیں۔ وہ خاص طور پر Bayesian اور probabilistic deep learning کے طریقوں کی تعمیر میں مصروف ہے، قابل توسیع Gaussian processes، Bayesian optimization، اور فزکس سے متاثر مشین لرننگ۔

ٹائم اسٹیمپ:

سے زیادہ AWS مشین لرننگ