سلام.
کسی از دوستان می دونن علت نمایش داده نشدن نمودار roc با توجه به دیتاهای موجود چی می تونه باشه؟
http://uplod.ir/3512bkcvl1es/roc_p.mat.htm
plotroc(Outlabel'>1,Testinglabel'>1)
سلام.
کسی از دوستان می دونن علت نمایش داده نشدن نمودار roc با توجه به دیتاهای موجود چی می تونه باشه؟
http://uplod.ir/3512bkcvl1es/roc_p.mat.htm
plotroc(Outlabel'>1,Testinglabel'>1)
سلام
این روش کار شما اشتباهه
دو تا بردار باید هم اندازه باشند
این را امتحان کنید
plotroc(Outlabel, Testinglabel)
این دیگه یه بحث جداگانه هست. یعنی دیگه اینجا دیگه با roc کار نداریم و باید بررسی بشه داده ها چه مشکلی دارند یا چه طور وارد کلاسیفایر میشن و یا اینکه پارامترهای کلاسیفایر چه طور تنظیم می شن
ممنون.
قرار هست ابتدا از بین دیتاها یه تعداد تست و ترین شه(یه تعداد بسیار کم ترین و بقیه تست)مثلا 10000 تای اول.
بعد کلاسیفایر که تصمیم گرفت و لیبل داده ها که زده شد این داده های تست شده با لیبل جدید رو به مجموعه ی ترین قبلی اضافه می کنم و یه سری داده ی جدید از دیتا ست وارد می کنم مثلا 1001 تا 35000 رو تا کلاسیفایر با این مجموعه های ترین شده برای نمونه های تست تصمیم بگیره.
منتها چرا نمیدونم لیبل که میزنه خروجی نهایی یعنی Outlabel فقط یه کلاسه میشه.
ممنون.
قرار هست ابتدا از بین دیتاها یه تعداد تست و ترین شه(یه تعداد بسیار کم ترین و بقیه تست)مثلا 10000 تای اول.
بعد کلاسیفایر که تصمیم گرفت و لیبل داده ها که زده شد این داده های تست شده با لیبل جدید رو به مجموعه ی ترین قبلی اضافه می کنم و یه سری داده ی جدید از دیتا ست وارد می کنم مثلا 10001 تا 35000 رو تا کلاسیفایر با این مجموعه های ترین شده برای نمونه های تست تصمیم بگیره.
منتها چرا نمیدونم لیبل که میزنه خروجی نهایی یعنی Outlabel فقط یه کلاسه میشه:
http://uplod.ir/49cdh3byzsmz/roc_K.rar.htm
ببینید معمولا دو سوم را برای train و یک سوم را برای test انتخاب می کنند
در یک تاپیک در خصوص تقسیم بندی به train و test و همچنین نرمال کردن داده ها توضیح دادم
چون من دارم از octave استفاده می کنم این تابعها مثل knn را نداره ولی داده ها را بررسی کردم
چرا دور منطقه ها را خط کشیده اید؟ به طوری که خط در اطراف تومور دیده می شه؟!
من داده ها را بردم داخل نرم افزار weka و چند تا کلاسیفایر روی اون اعمال کردم نتایج به دست اومد ولی چندان رضایتبخش نیست
فایل با پسوند arff را با weka باز کنید و کلاسیفایرها را روی اون اعمال کنید
متغیر y را هم انتخاب کنید که به عنوان متغیر پاسخ انتخاب شود
http://www.sharefile.ir/uploads/1432039756.zip
ممنون.
من یه تصویر حاوی تومور داشتم.
شخصی که قبلا روی این تصاویر کار کرده بودن اومده بودن و یه محدوده برای این تومور ها داخل تصاویر ایجاد کرده بودن.
من اون تصویر اصلی و اون تصویر محدوده رو روی هم قرار دادم و مقدار داخل اون خط رو 1(سفید) و به عنوان تومور و مقدار بیرونش رو یک یا سیاه قرار دادم.
این شد که اون خط مشخص شد.یعنی به نظرتون باید اون خط حذف بشه و اون باعث ایجاد مشکل میشه؟
چرا؟
روال کارم به این صورته کهاز بین مثلا 30000 تا داده برای مرحله ی اول قراره کلاسیفایر مثلا برای 7000 تای اولش ترن و تست رو انجام بده که به صورت رندم از این 7000 تای اول ترین و تست رو جدا میکنه منتها ترینام باید کم باشن وتست ها زیادتر و دونه دونه.
بعد برای بقیه همین تستا رو هم قراره بع عنوان ترین در نظر بگیرم یعنی کل 7000 تا و بقیه ی تصویر رو تست کنم.
مشکل اینجا بوود که وقتی تعداد بیشتری رو به عنوان ترین در نظر میگیریم(برای مرحله ی دوم) کلاسیفایر هنگ میکنه.
خب میتونید به صورت رندوم با استفاده از randperm از بین 38000 تا پیکسل تعداد مثلا 9000 تا را انتخاب کنید و مثلا بقیه را دور بریزید
6000 را برای train و 3000 تا را برای test جدا کنید و کلاسیفایر را روی اینها اعمال کنید که دیگه هنگ هم نکنه
اون خط که روی تصویره میتونه روی نتایج تاثیر بذاره چون به هر حال یه چیز مصنوعیه
ضمن اینکه نمیدونم این روشی که در پیش گرفتید درست باشه یا نه؟
شاید بهتر باشه تعدادی تصویر مثلا 40- 50 تا تصویر مختلف داشته باشید و تحلیل روی تصاویر مختلف باشه نه صرفا یک تصویر
بله،این کار رو برای 59 تصویر انجام میدم منتهای مراتب میخوام که ابتدا روی یه تصویر مطمئن بشم و بعد.
روال کار همون الان الگوریتم self training هست.به همون صورت که توضیح دادم.
میفرمایید که چطور بدون متلب متوجه ی وجود اون خط حول تومور شدید؟
چطور تست کردید که اون خط رو دیدید؟
چون من اصل تصویر رو که براتون ارسال نکردم.
خب به راحتی با reshape میشه یک بردار را به ماتریس (تصویر) تبدیل کرد
این ویژگی های شما 49 تصویر درست کرده که همه اونها قابل مشاهده هست
اینجوری که امکان حذفش نیست لازمه دو باره قسمت مربع شکل مورد نظر را از تصویر اصلی برش بزنید و ویژگیها را دوباره استخراج کنید
شما هم گیر دادینا!
به نظرم بهتره به جای اینها بیشتر روی اصلاح روش و همچنین استخراج دوباره تصویر تمرکز کنید چون متاسفانه این باندری قابل پاک کردن نیست
load segroimdb001_resize.mat
imshow(reshape(y, 216, 179))
figure
imshow(reshape(X1(:, 1), 216, 179))
سلام.
این تصویر الان بدون اون خط حول تومور هست:
uplod.ir/slxx9stmtysu/image.rar.htm
http://uplod.ir/zbukefwi9p58/roimdb10pix.mat.htm
برنامه هنوز همون مشکل قبل رو داره و با حذف این خط تومور دقتش پایینتر هم اومده، البته بدون استفاده از قوانین نیمه نظارتی و فقط با اعمال به یه کلاسسیفایر این نتیجه مشهوده حتی.(کل دیتای استخراج یافته رو میدم به یه کلاسیفایر و قبلی ها رو هم یه مرتبه ی دیگه .دقت قبلی ها از این بیشتره).
......
کنتراست تصاویر ماموگرافی پایین هست و برای تشخیص تومور از اون ها نیاز به افزایش کنتراست هست.فکر می کنم یکی از علت هاش همین هم باشه.
منتهای مراتب این افزایش کنتراست به تنهایی کافی نیست و ممکنه بقیه و اطراف تومور رو هم روشن کنه.
در فایل پیوست از histeq برای افزایش کنتراست استفاده شده ولی محدوده ی اطراف هم روشن شده.
چطور میشه فقط محدوده ی داخل تومور از بقیه ی تصویر متمایز بشه.
البته در مقالات دیدم که از مورفولوژی استفاده می کنن اما نمیدونم به چه صورت.
راهی به ذهنتون میرسه؟
چیز خاصی به ذهنم نمی رسه. پیشنهاد می کنم یه مقاله را الگوی کار خودتون قرار بدید و بر اساس اون عمل کنید