داده data
خواندن داده برای یادگیری ماشین: جدول CSV، دستهبندی نمونهها، MNIST و تصویر، و دادهی مصنوعی.
واردسازی داده
این بسته داده را برای آموزش مدل آماده میکند. بارگذاری سیاسوی جدولی میسازد که ستونهای متنی را خودکار به شمارهی رده تبدیل میکند و با جداسازی ویژگی از برچسب به ماتریس ویژگیها و برچسب تقسیم میشود.
روالهای ساخت ... دادهی مصنوعی با بذر ثابت میسازند؛ برای آزمودن الگوریتمها بدون نیاز به پرونده. همه با بستههای ماتریس و تانسور کار میکنند.
گونهها
جدول Table
ساختار جدول| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| names | names | وکتور<رشته> | نام ستونها. |
| kinds | kinds | وکتور<صحیح> | نوع هر ستون؛ یکی از ثابتهای ستون. |
| cats | cats | وکتور<وکتور<رشته>> | سطحهای هر ستون ردهای. |
| raw | raw | وکتور<وکتور<رشته>> | متن اصلی خانهها. |
| cells | cells | matrix.Matrix | مقدار عددی خانهها؛ ستون ردهای شمارهی سطح را دارد. |
واردسازی داده
واردسازی ماتریس
روال ریشه:
متن := "age,city,score,ok\n30,tehran,1.5,1\n25,shiraz,2.5,0\n41,tehran,3.0,1\n"
ناپایا ج := داده.بارگذاری سیاسوی(متن، درست)
سرچاپ ج.سطرها()، ج.ستونها()، ج.names، ج.نمایه ستون("score")، ج.نمایه ستون("x")
سرچاپ ج.kinds[۰] == داده.ستون صحیح، ج.kinds[۱] == داده.ستون ردهای، ج.kinds[۲] == داده.ستون اعشاری، داده.ستون رشتهای
سرچاپ ج.سطوح ردهای("city")
ناپایا م := ج.به ماتریس()
سرچاپ م.rows، م.cols، م.عنصر(۲، ۱)
ناپایا ایکس := ماتریس.ماتریس {}
ناپایا وای := ماتریس.ماتریس {}
سرچاپ ج.جداسازی ویژگی از برچسب("ok"، ایکس، وای)، ایکس.cols، وای.عنصر(۱، ۰)
ناپایا خوب := درست
_ := داده.بارگذاری پرونده سیاسوی("نیست.csv"، درست، خوب)
سرچاپ خوب
ماتریس.آزادسازی(م)
ماتریس.آزادسازی(ایکس)
ماتریس.آزادسازی(وای)
ج.آزادسازی()
پایانسطرها rows
روال سطرها(): صحیحنمونهی این مورد همراه با موارد بالاتر آمده است: data-Table.salam
ستونها cols
روال ستونها(): صحیحنمونهی این مورد همراه با موارد بالاتر آمده است: data-Table.salam
نمایه ستون col_index
روال نمایه ستون(name: رشته): صحیحنمونهی این مورد همراه با موارد بالاتر آمده است: data-Table.salam
سطوح ردهای cat_levels
روال سطوح ردهای(name: رشته): وکتور<رشته>نمونهی این مورد همراه با موارد بالاتر آمده است: data-Table.salam
به ماتریس to_matrix
روال به ماتریس(): matrix.Matrixنمونهی این مورد همراه با موارد بالاتر آمده است: data-Table.salam
جداسازی ویژگی از برچسب split_xy
روال جداسازی ویژگی از برچسب(label: رشته، x &: matrix.Matrix، y &: matrix.Matrix): منطقیy و بقیه را به x میبرد.نمونهی این مورد همراه با موارد بالاتر آمده است: data-Table.salam
آزادسازی free
روال آزادسازی()نمونهی این مورد همراه با موارد بالاتر آمده است: data-Table.salam
پیمایشگر دسته BatchIter
ساختار پیمایشگر دسته| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| x | x | matrix.Matrix | ویژگیها. |
| y | y | matrix.Matrix | برچسبها. |
| batch | batch | صحیح = 32 | اندازهی دسته. |
| shuffle | shuffle | منطقی = درست | بههم ریختن ترتیب. |
| seed | seed | صحیح۶۴ = 0 | بذر بههم ریختن. |
| order | order | وکتور<صحیح> | ترتیب نمونهها در این دور. |
| pos | pos | صحیح = 0 | جای فعلی. |
واردسازی داده
واردسازی ماتریس
واردسازی تانسور
روال ریشه:
ناپایا وای := ماتریس.ماتریس {}
ایکس := داده.ساخت خوشهها(۱۰، ۲، ۳، ۰.۲، ۱، وای)
ناپایا م := داده.مجموعهداده ماتریسی { x = ایکس، y = وای }
سرچاپ م.طول()
ناپایا پ := م.دستهها(۴، نادرست، ۰)
سرچاپ پ.شمار دسته در دور()
ناپایا بخشایکس := ماتریس.ماتریس {}
ناپایا بخشوای := ماتریس.ماتریس {}
تا پ.بعدی(بخشایکس، بخشوای):
سرچاپ بخشایکس.rows، بخشایکس.cols، بخشوای.rows
پایان
پ.بازنشانی(۱)
ناپایا ت := تانسور.تانسور {}
ناپایا برچسب := وکتور {} برگردان وکتور<صحیح>
سرچاپ پ.بعدی تانسور(ت، برچسب)، برچسب.طول()
سرچاپ داده.برچسبها(وای).طول()، داده.تانسور ویژگی(ایکس).shape
ناپایا خوب := درست
_ := داده.تجزیه آیدیایکس(پوچ، ۰، خوب)
سرچاپ خوب
_ := داده.بارگذاری آیدیایکس("نیست.idx"، خوب)
سرچاپ خوب، داده.بارگذاری امنیست("a"، "b"، بخشایکس، بخشوای)
ناپایا ردهها := وکتور {} برگردان وکتور<رشته>
سرچاپ داده.بارگذاری پوشه تصویر("پوشه-نیست"، ۸، ۸، درست، ت، برچسب، ردهها)
پ.آزادسازی()
م.آزادسازی()
پایانبازنشانی reset
روال بازنشانی(epoch: صحیح۶۴)نمونهی این مورد همراه با موارد بالاتر آمده است: data-Batch.salam
بعدی next
روال بعدی(x_out &: matrix.Matrix، y_out &: matrix.Matrix): منطقیx_out و y_out میگذارد؛ دستهی آخر ممکن است کوچکتر باشد. اگر دستهای نماند، نادرست.نمونهی این مورد همراه با موارد بالاتر آمده است: data-Batch.salam
بعدی تانسور next_tensor
روال بعدی تانسور(x_out &: tensor.Tensor، labels_out &: وکتور<صحیح>): منطقینمونهی این مورد همراه با موارد بالاتر آمده است: data-Batch.salam
شمار دسته در دور batches_per_epoch
روال شمار دسته در دور(): صحیحنمونهی این مورد همراه با موارد بالاتر آمده است: data-Batch.salam
آزادسازی free
روال آزادسازی()نمونهی این مورد همراه با موارد بالاتر آمده است: data-Batch.salam
مجموعهداده ماتریسی MatrixDataset
ساختار مجموعهداده ماتریسی| نام | انگلیسی | گونه | توضیح |
|---|---|---|---|
| x | x | matrix.Matrix | ماتریس ویژگیها، هر سطر یک نمونه. |
| y | y | matrix.Matrix | برچسبها، هر سطر یک نمونه. |
نمونهی این مورد همراه با موارد بالاتر آمده است: data-Batch.salam
طول len
روال طول(): صحیحنمونهی این مورد همراه با موارد بالاتر آمده است: data-Batch.salam
دستهها batches
روال دستهها(batch: صحیح، shuffle: منطقی، seed: صحیح۶۴): پیمایشگر دستهshuffle درست باشد، ترتیب با seed بههم میریزد.نمونهی این مورد همراه با موارد بالاتر آمده است: data-Batch.salam
آزادسازی free
روال آزادسازی()نمونهی این مورد همراه با موارد بالاتر آمده است: data-Batch.salam
پایاها و متغیرها
نوع ستونها COL_…
| نام | انگلیسی | مقدار |
|---|---|---|
| ستون اعشاری | COL_FLOAT | 0 |
| ستون صحیح | COL_INT | 1 |
| ستون ردهای | COL_CAT | 2 |
| ستون رشتهای | COL_STR | 3 |
نمونهی این مورد همراه با موارد بالاتر آمده است: data-Table.salam
روالها
ساخت خوشهها MakeBlobs
روال ساخت خوشهها(n: صحیح، centers: صحیح، p: صحیح، spread: اعشار۶۴، seed: صحیح۶۴، y &: matrix.Matrix): matrix.Matrixواردسازی داده
واردسازی ماتریس
روال شمار یکها(وای: ماتریس.ماتریس): صحیح:
ناپایا ش := ۰
تکرار وای.rows در ای:
اگر وای.عنصر(ای، ۰) == ۱.۰:
ش += ۱
پایان
پایان
برگشت ش
پایان
روال ریشه:
ناپایا وای := ماتریس.ماتریس {}
خ := داده.ساخت خوشهها(۹۰، ۳، ۲، ۰.۵، ۴۲، وای)
سرچاپ خ.rows، خ.cols، وای.rows
ه := داده.ساخت هلالها(۱۰۰، ۰.۱، ۷، وای)
سرچاپ ه.rows، ه.cols، شمار یکها(وای)
د := داده.ساخت دایرهها(۶۰، ۰.۰۵، ۰.۵، ۷، وای)
سرچاپ د.rows، شمار یکها(وای)
ناپایا ضریب := ماتریس.ماتریس {}
ر := داده.ساخت رگرسیون(۵۰، ۳، ۰.۱، ۱، وای، ضریب)
سرچاپ ر.rows، ر.cols، ضریب.rows
ک := داده.ساخت دستهبندی(۴۰، ۴، ۲، ۱.۰، ۳، وای)
سرچاپ ک.rows، ک.cols، شمار یکها(وای) > ۰
پایانساخت هلالها MakeMoons
روال ساخت هلالها(n: صحیح، noise: اعشار۶۴، seed: صحیح۶۴، y &: matrix.Matrix): matrix.Matrixنمونهی این مورد همراه با موارد بالاتر آمده است: data-Synth.salam
ساخت دایرهها MakeCircles
روال ساخت دایرهها(n: صحیح، noise: اعشار۶۴، factor: اعشار۶۴، seed: صحیح۶۴، y &: matrix.Matrix): matrix.Matrixfactor نسبت شعاع دایرهی درونی است.نمونهی این مورد همراه با موارد بالاتر آمده است: data-Synth.salam
ساخت رگرسیون MakeRegression
روال ساخت رگرسیون(n: صحیح، p: صحیح، noise: اعشار۶۴، seed: صحیح۶۴، y &: matrix.Matrix، true_coef &: matrix.Matrix): matrix.Matrixtrue_coef برمیگردند.نمونهی این مورد همراه با موارد بالاتر آمده است: data-Synth.salam
ساخت دستهبندی MakeClassification
روال ساخت دستهبندی(n: صحیح، p: صحیح، classes: صحیح، sep: اعشار۶۴، seed: صحیح۶۴، y &: matrix.Matrix): matrix.Matrixsep فاصلهی ردهها را تعیین میکند.نمونهی این مورد همراه با موارد بالاتر آمده است: data-Synth.salam
بارگذاری پوشه تصویر LoadImageFolder
روال بارگذاری پوشه تصویر(root: رشته، width: صحیح، height: صحیح، gray: منطقی، x &: tensor.Tensor، labels &: وکتور<صحیح>، classes &: وکتور<رشته>): منطقیgray درست باشد، خاکستری میشوند.نمونهی این مورد همراه با موارد بالاتر آمده است: data-Batch.salam
تجزیه آیدیایکس ParseIdx
روال تجزیه آیدیایکس(p: تهی*، n: صحیح، ok &: منطقی): matrix.Matrixنمونهی این مورد همراه با موارد بالاتر آمده است: data-Batch.salam
بارگذاری آیدیایکس LoadIdx
روال بارگذاری آیدیایکس(path: رشته، ok &: منطقی): matrix.Matrixنمونهی این مورد همراه با موارد بالاتر آمده است: data-Batch.salam
بارگذاری امنیست LoadMnist
روال بارگذاری امنیست(images_path: رشته، labels_path: رشته، x &: matrix.Matrix، y &: matrix.Matrix): منطقینمونهی این مورد همراه با موارد بالاتر آمده است: data-Batch.salam
بارگذاری سیاسوی LoadCsv
روال بارگذاری سیاسوی(text: رشته، header: منطقی): جدولنمونهی این مورد همراه با موارد بالاتر آمده است: data-Table.salam
بارگذاری پرونده سیاسوی LoadCsvFile
روال بارگذاری پرونده سیاسوی(path: رشته، header: منطقی، ok &: منطقی): جدولنمونهی این مورد همراه با موارد بالاتر آمده است: data-Table.salam
تانسور ویژگی XTensor
روال تانسور ویژگی(x &: matrix.Matrix): tensor.Tensorنمونهی این مورد همراه با موارد بالاتر آمده است: data-Batch.salam
برچسبها YLabels
روال برچسبها(y &: matrix.Matrix): وکتور<صحیح>نمونهی این مورد همراه با موارد بالاتر آمده است: data-Batch.salam