اطلاعیه

Collapse
No announcement yet.

الگوریتم آدابوست -- AdaBoost

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    الگوریتم آدابوست -- AdaBoost

    در مورد الگوریتم آدابوست کمک میخواستم

    #2
    پاسخ : الگوریتم آدابوست -- AdaBoost

    فایل های زیر مربوط به سمینار درس شناسایی الگوی من هست. امیدوارم مفید باشه.

    http://eehadi.persiangig.com/other/AdaBoost.rar

    http://s3.picofile.com/file/7887612896/AdaBoost.rar.html

    رمز فایل: www.eca.ir
    فایل های پیوست شده
    لطفاً برای انجام پروژه های دانشجویی پیام خصوصی نفرستید.
    لطفاً سؤالاتی که در انجمن قابل طرح شدن هستند پیام خصوصی نکنید.
    با تمام وجود گناه کرديم اما نه نعمتش را از ما گرفت نه گناهان ما را فاش کرد اطاعتش کنيم چه مي کند؟"دکتر شريعتي"
    اگر جايي که ايستاده ايد را نمي پسنديد، عوضش کنيد شما درخت نيستيد!! "پاسكال"
    يا به اندازه ي آرزوهايت تلاش کن يا به اندازه تلاشت آرزو کن. "شکسپير"

    دیدگاه


      #3
      پاسخ : الگوریتم آدابوست -- AdaBoost

      سلام ..

      فایلی که در انتهای این پست ضمیمه شده؛ یک Demo هست از Boosting که در کنار فایل های خوب پست قبل، میتونه مفید باشه .. در ابتدا لازم هست که با دو کلید Mouse یک فضای دیتا ساخته بشه و پس از اون با فشردن مدام Space الگوریتم Iterate میزنه تا به نتیجه ی نهایی و مطلوب برسه .. موفق و سلامت و شاد باشید ..


      Sample_Data


      Sample_Result
      فایل های پیوست شده
      دوستان! مدتی کمتر به سایت میام ..

      دیدگاه


        #4
        پاسخ : الگوریتم آدابوست -- AdaBoost

        سلام ..

        کدی که در این آدرس قابل دانلود هست، یک نمونه ی بسیار خوب و البته معتبر در حیطه Object Detection با منطق الگوریتم Boosting هست که بر روی دیتابیس LabelMe قابل اجرا و تست هست .. اجرای کد، بسیار مسقیم و بدون پیچیدگی هست .. برای استفاده از کد، در ابتدا لازم هست که مسیر تولباکس LabelMe رو در m.file ای با نام initPath ست کنید .. در مرحله ی بعدی، مسیرهای تصاویر و Annotation اونها (اطلاعات ضبط شده مربوط به هر آبجکت در تصویر) را باید در m.file ای با نام parameters ست کنید و هر دوی این دو m.file رو اجرا کنید .. در مرحله ی بعد، با اجرای m.file ای به نام createDatabse میتونید دیتابیس ای بسازید که به صورت struct در پوشه ی data ذخیره میشه .. بعد از این مرحله، در صورتیکه مراحل قبل به درستی انجام شده باشند و همه چیز خوب پیش رفته باشه، میتونید نمونه ای از تصاویر Train_set رو به صورت تصویر زیر ببینید ..


        در انتهای همه ی مراحل بالا، نوبت به اجرای m.file ای با نام runDetector فرا میرسه .. با اجرای این اسکریپت، نتایج Detection تصاویر تست مربوط به گروه/کلاس Screen ها رو میتونید ببینید .. اگر مایل به Train کردن و تست کردن الگوریتم بر روی تصاویر Car هستید، کافیست که در m.file ای با نام parameters، به جای تصاویر screen، تصاویر cars رو انتخاب کنید (این تصاویر و مجموعه ی تصاویر Screen، مجموعه ای سلکت شده از تصاویر دیتابیس هستند، که برای این Demo انتخاب شدند) .. برای آموزش الگوریتم بر روی دیتاهای تازه (خارج از نمونه های این Demo) ابتدا باید تصاویر مورد نظرتون رو از دیتابیس LabelMe دانلود کنید، اونها رو در پوشه های مربوط (دقیقا مانند همین Demo) قرار بدید، نام اونها رو در m.file ای با نام parameters اضافه کنید، سپس فایل createDatabase رو اجرا کنید تا دیتابیس تازه ساخته و آماده بشن و بعد از اون لازم هست که Feature ها رو بسازید و برای این منظور هم لازم هست که فایل createDictionary رو اجرا کنید و پس از این مرحله، برنامه آماده ی اجرا شدن هست و تست، یعنی زمان اون رسیده که فایل runDetector رو اجرا کنید و نتایج رو ببینید و بررسی کنید .. برای آشنایی بیشتر باLabelMe_Toolbox هم میتونید از این آدرس استفاده کنید .. در انتهای این پست هم میتونید رفرنسی رو که بر اساس اون، این کد نوشته شده، دانلود کنید و از اون استفاده .. امیدوارم که این کد بتونه برای جمع بندی مطالب این بخش مفید باشه .. موفق و سلامت و شاد باشید ..
        فایل های پیوست شده
        دوستان! مدتی کمتر به سایت میام ..

        دیدگاه


          #5
          پاسخ : الگوریتم آدابوست -- AdaBoost

          سلام ..

          در انتهای این پست، فایلی ضمیمه شده که در مورد پیاده سازی Face Detection using AdaBoost بحث و مراحل مختلف اون رو بررسی کرده (به همراه کدهای پیاده سازی شده در MATLAB) .. این فایل نسخه ی PDF این لینک هست، امــا به این دلیل که نگرانی این مساله همواره وجود داره که لینک ها از بین ممکن هست که برند؛ مطالب به صورت PDF در انتهای این پست هم ضمیمه شدند (البته، سوال ها و پاسخ های مطرح شده در اون لینک خیلی مفید میتونن باشن برای تسلط بیشتر بر روی کدها و نحوه ی پیاده سازی اونها) .. منبع اصلی ای هم که کد بر مبنای اون نوشته شده، در انتهای این پست ضمیمه هست (در ایـن آدرس هم یک فایل پایان نامه در این زمینه پلود شده برای جمعبندی بهتر موضوعات) .. امیدوارم که این مجموعه فایل ها بتونن به بحث های مطرح شده در پست های قبل کمک بیشتری کنن .. موفق و سلامت و شاد باشید ..

          فایل های پیوست شده
          دوستان! مدتی کمتر به سایت میام ..

          دیدگاه


            #6
            پاسخ : الگوریتم آدابوست -- AdaBoost

            سلام. یک سوال: نحوه برداشتن داده ها از یک مجموعه داده در این الگوریتم به چه صورت می باشد؟ آیا همه داده ها برای یادگیری طبقه بندی برداشته میآ‌شوند یا با نمونه گیری تعدادی برداشته خواهند شد؟ در این کتاب
            Data Mining
            Concepts and Techniques
            Third Edition
            Jiawei Han
            University of Illinois at Urbana–Champaign
            
            به نمونه گیری اشاره کرده ولی در مقاله ای که یک الگوریتم توسعه یافته ای از این الگوریتم را ارائه کرده اشاره دارد که تعدای داده با یک توزیعی برداشته خواهند شد. ممنون میشم کمک کنید.

            دیدگاه


              #7
              پاسخ : الگوریتم آدابوست -- AdaBoost

              سلام ..

              به طور معمول؛ از همه ی داده های آموزش (Training Set) در مرحله ی آموزش استفاده میکنن و مرسوم نیست اگر Data Selection ای در این مرحله انجام بشه (--"به طور معمول"--) .. امــا در برخی موارد خاص؛ با توزیع Gaussian یا توابع خاص دیگه؛ داده ها رو انتخاب میکنن به این دلیل که وابستگی انتخاب داده رو از مرحله ی آموزش حذف کنن .. البته؛ این اتفاق بیشتر زمانی پیش میاد که داده های ما از نظر توزیع ساختاری؛ تفاوت هایی دارند باهم و به معنایی؛ یک دست نیستن .. به صورت دقیقتر؛ شاید مفید باشه اگر کاربردی که دنبال اون هستیم رو به وضوح مشخص کنیم .. (--شاید بهتر این باشه که مقاله ای که فرمودید رو بگذارید تا دلایل اونها رو بررسی کنیم--) .. امــا بحث Data Selection سخت گیری الگوریتم AdaBoost نیست .. موفق و سلامت و شاد باشید ..
              دوستان! مدتی کمتر به سایت میام ..

              دیدگاه


                #8
                پاسخ : الگوریتم آدابوست -- AdaBoost

                نوشته اصلی توسط حسام الدین
                سلام ..

                به طور معمول؛ از همه ی داده های آموزش (Training Set) در مرحله ی آموزش استفاده میکنن و مرسوم نیست اگر Data Selection ای در این مرحله انجام بشه (--"به طور معمول"--) .. امــا در برخی موارد خاص؛ با توزیع Gaussian یا توابع خاص دیگه؛ داده ها رو انتخاب میکنن به این دلیل که وابستگی انتخاب داده رو از مرحله ی آموزش حذف کنن .. البته؛ این اتفاق بیشتر زمانی پیش میاد که داده های ما از نظر توزیع ساختاری؛ تفاوت هایی دارند باهم و به معنایی؛ یک دست نیستن .. به صورت دقیقتر؛ شاید مفید باشه اگر کاربردی که دنبال اون هستیم رو به وضوح مشخص کنیم .. (--شاید بهتر این باشه که مقاله ای که فرمودید رو بگذارید تا دلایل اونها رو بررسی کنیم--) .. امــا بحث Data Selection سخت گیری الگوریتم AdaBoost نیست .. موفق و سلامت و شاد باشید ..
                سلام. ممنون از حسن توجهتون.باشه من مقاله را در سایت قرار می دهم فقط این نکته را اعلام کنم که منظور من خط دوم الگوریتم میآ‌باشد.
                فایل های پیوست شده

                دیدگاه


                  #9
                  پاسخ : الگوریتم آدابوست -- AdaBoost

                  سلام ..

                  بحث فوق العاده جذاب Transfer Learning یکی از اون مواردی هست که داده های آموزش ما در اون یک دست نیستن و انتظاری که ما از Framework یا مدل Learning داریم این هست که با این تفاوت فضای دیتا به گونه ای برخورد کنیم که بتونیم تغییر Domain (ناحیه/فضا/ساختار) داده ها رو در مجموعه ی تست؛ با انتقال میزان اطلاعات آموزش دیده شده در مرحله ی آموزش؛ تعـمـیم بدیم و امیدوار باشیم که بتونیم به نتیجه ی خوبی در تشخیص دست پیدا کنیم .. بحث راجع به Transfer Learning شاید زیاد مربوط به این پست نباشه؛ امــا به نوعی اون چیزی که اتفاق میوفته رو در چند خط قبل (--خیلی خیلی خلاصه و شهودی--) بررسی کردیم .. امــا برگردیم به الگوریتم TrAdaBoost .. خیلی مستقیم: فضای دیتای آموزش ما تقسیم میشه به دو نوع (سری) داده؛ یکی اونهایی که از جنس فضای دیتاهای تست هستن و دسته ی دوم هم اونهایی که از جنس فضای داده ی تست نیستن .. اولی ها رو Same Distribution Samples نامگذاری میکنیم و دومی ها رو Diff Distribution Samples .. اونچیزی که کار رو برای ما سخت میکنه این هست که تعداد Same_D_Samples ها خیلی کمتر هست از تعداد Diff_D_Samples ها و به همین دلیل هم هست که اگر ما داده ی های آموزشمون رو که تشکیل شدن از T = Ts + Td مستقیم به الگوریتم Learning بدیم؛ نتیجه ای که به عنوان یک Classifier آموزش دیده شده دریافت میکنیم؛ نا امید کننده هست؛ چرا که این Classifier با داده هایی منطقش شکل گرفته که فضای اونها با فضای داده های تست کاملا متفاوت هستن .. شاید الان یک مثال بتونه کمی ما رو به اتفاقی که از اون صحبت کردیم؛ نزدیک تر کنه .. فرض کنیم داده های Ts تصاویر خودرو هایی هستن که از زاویه ی View_Point_2 گرفته شدن و داده های Td تصاویر خودروهایی هستن که از زاویه ی View_Point_7 گرفته شدن .. و میدانیم که فضای کلی تقسیم زاویه ی 360 درجه ی چرخش دوربین برای عکسبرداری در این مثال؛ به 9 قسمت مختلف (bin) تقسیم و تعریف شده .. (--دوربینی رو در نظر بگیرید که به دور خودرو در یک حلقه میچرخه با Scale های 40 درجه و در هر مرحله از خودروی نمونه عکسبرداری میکنه و لیبل از 1 تا 7 برای View_Point ها در نظر میگیره--) .. متاسفانه؛ تعداد Ts ها کم هست و در مقابل تعداد Td ها زیاد .. تصاویر تست هم از بد ماجرا تصاویری نزدیک به View_Point_2 هستن .. کاری که به طور معمول میکنیم این هست که Classifier مون رو با داده های آموزش (--بر روی همه ی اونها؛ یک توزیع یکنواخت و واحد--)؛ Train میکنیم (آموزش میدیم) .. اتفاقی که پیش میاد این هست که داده های View_Point_7 تاثیر بیشتری بر منطق Classifier برای تشخیص داده های تست میگذارن در مقایسه با داده های View_Point_2 و در نتیجه به عنوان خروجی، Classification خوبی نخواهیم داشت ..

                  چه کنیم؟ الگوریتم TrAdaaBoost تلاش میکنه تا با این مشکل دست و پنجه نرم کنه و در نهایت مدلی ارائه بده که بتونه چنین مشکلی رو برای ما حل کنه .. اتفاقی که میوفته در این الگوریتم به این صورت هست: دیتاهای Ts که تعدادشون کم هست میتونن برای این منظور استفاده بشن که کمک کنن به ما تا بتونیم از دیتاهای Td استفاده ی بهتری کنیم .. یعنی چه استفاده ی بهتر؟ میدانیم که هم Td و هم Ts متعلق به یک کلاس هستن (--در نهایت؛ هر دوی اونها مشخص کننده ی خودروها هستن--) و به نوعی یک سری مشخصات رو باهم به اشتراک میذارن که مشخصات ارزشمندی برای Classification هست امــا نمیدونیم دقیقا چه نوع ویژگی هایی .. از این جهت؛ میتونیم از دیتاهای Ts استفاده کنیم به این منظور که متوجه بشیم چه بخشی از اطلاعات داده های Td میتونن برای ما مفید باشن و از این اطلاعات اونها استفاده کنیم و چون تعداد اونها زیاد هست (نسبت به Ts ها)؛ اگر موفق به این کار بشیم (--پیدا کردن اطلاعات/داده های مفید در بین Td ها--) تونستیم با اون بضاعتی که داشتیم؛ به بهترین نحو مدل Classifier مون رو آموزش بدیم و از اون برای تشخیص و طبقه بندی داده های تست استفاده کینم .. درست هست که داده های Ts در اقلیت هستن از نظر تعداد؛ امــا با این منطق تونستیم از اعمال نظر و نگرانی اونها استفاده کنیم در ارزشگذاری و به نوعی (--خیلی کلی--) انتخاب اون بخش از اطلاعاتی که داده های Td دارن و میتونن به مدل ما برای تولید یک Classifier خوب کمک کنن .. یک راه حل هوشمندانه و به نوعی امیدوارانه .. منطقی که AdaBoost با اون زندگی میکنه این هست که داده هایی که برای Prediction (--تشخیص در مرحله ی تست--) مفید هست اطلاعاتشون رو با وزن زیاد، Bold میکنه (--تاثیرشون رو بیشتر میکنه/نوع رای و نظری که برای Decision Making ابراز میکنن رو بهتر گوش میکنه--) و داده هایی که تاثیر منفی میذارن در تشخیص رو با دادن وزن های پایین کم ارزش و به نوعی خاموش میکنه .. این روش در شرایط معمولی که داده های ما از نظر توزیع (Distribution) یکسان هستن؛ به این معنا که همه متعلق به یک فضا یا Domain هستن خیلی خوب هست امــا در Transfer Learning نتایج ما امیدوار کننده نیست؛ به دلایلی که در بالا به اونها هم اشاره کردیم .. کاری که امــا میتونیم انجام بدیم این هست که ارزش یا وزن داده هایی که اطلاعاتشون به Classification ما کمک میکنن رو زیاد کنیم (--چه در بین Ts ها و چه در بین Td ها--) و وزن اونهایی رو هم که به Classification ما آسیب میزنن رو کم (--ارزش تاثیرگذاری اونها رو پایین بیاریم--) و این کاری هست که TraAdaBoost انجام میده .. در مرحله ی آموزش؛ در هر مرحله Iteration ؛ اگر یکی از داده های Tdi به اشتباه تشخیص داده بشه؛ به این معنا هست که به احتمال خیلی زیاد؛ با داده های Ts در تناقض هست (--از نظر فضا--) و به همین دلیل هم لازم هست که ارزش اون رو کم کنیم و در نتیجه اون رو در ضریب بتا ضرب میکنیم (--با توجه به تعریفی که داره--) .. بنابراین در مرحله ی بعد؛ اون داده های Td ای که به نادرستی تشخیص داده شدن و این طور استدلال کردیم که اطلاعاتشون برای فضای Ts مفید نیست (--از فضای Ts دور هست--)؛ بر روی شکل گیری Classifier کمتر اثر میگذارن .. بعد از چندین و چند مرحله Iteration اون دسته از داده های Td که اطلاعاتشون نزدیک به فضای Ts ها نیست؛ وزن بسیار پایین تری دریافت کردن و در نتیجه تاثیر گذاریشون بر روی Classifier هم خیلی کمتر هست و اون دسته از Td هایی که اطلاعاتشون به نوعی مرتبط و نزدیک با فضای Ts ها هست (--شاید بشه گفت Shared Feature ها به نوعی--) وزن بالاتری و با این روش فضای نامناسب دیتاهای آموزش؛ تبدیل به یک مجموعه ی خوب و مفید برای شکل گیری Classifier شدن .. پله ی دوم الگوریتم (--سودو کد--) هم که در مقاله به اون اشاره شده در واقع همین کار رو انجام میده .. یعنی در پله ی اول، Distribution اولیه برای همه ی دیتاهای T = Ts + Td در نظر گرفته میشه (--بر اساس رابطه ی اولیه ی تعریف شده--) و بعد درپله ی دوم؛ محاسبه ی prediction و دیدن اینکه کدام یک از Td ها مناسب تر هست (اطلاعاتش نزدیک تر هست به فضای Ts ها) و پدیت کردن وزن اونها و کدامیک مخرب Classifier و پایین آوردن وزن اونها و این روال در Iteration های متوالی تکرار میشه و این وزن ها هم مدام و مدام پدیت میشن .. ادامه ی الگوریتم هم در راستای توضیات بالا هست که باهم بررسی کردیم .. برای جمعبندی و احتمالا پیاده سازی این الگوریتم و موارد مشابه؛ شاید مرور ایـن آدرس بتونه مفید باشه .. در انتهای این پست هم یک نمونه از پیاده سازی این الگوریتم در محیط C ضمیمه هست .. امید که مطالب این پست بتونن کمکتون کنن .. موفق و سلامت و شاد باشید ..
                  فایل های پیوست شده
                  دوستان! مدتی کمتر به سایت میام ..

                  دیدگاه


                    #10
                    پاسخ : الگوریتم آدابوست -- AdaBoost

                    سلام. ممنون بابت تحلیلتون. خب من دو تا درخواست دارم. اول اینکه این پیاده سازی به زبان c به راحتی قابل فهم نیست و برای اجرا خودش یکسری کار انجام میده و یکسری فایل تکس ایجاد میکنه! دوم اینکه در این سایتی که قرار دادید در انتهای به معرفی یک ابزار برای transfer learning می پردازد ولی امکان دسترسی به آن وجود نداره! شما میتونید این ابزار رو بدست بیارید و در سایت قرار بدید؟
                    تحلیلتون خوب بود ولی اگه در الگوریتم دقت کنید متوجه می شوید که در خط سوم خطای طبقه بندی رو فقط روی داده های Tsآ‌انجام داده و کاری با Td نداره، در مقاله هم اشاره داره که تفاوت این الگوریتم با آدابوست اینه که فقط بررسی خطا روی Tsآ‌یا داده های target صورت میگیره. یک مورد دیگه، خروجی این الگوریتم 0 یا 1 است خب منظور از این اعداد چیه؟ به کاربر چه چیزی رو میفهمونه؟ در پیاده سازی آن فقط 0 و 1 برگردانده شود؟

                    دیدگاه


                      #11
                      پاسخ : الگوریتم آدابوست -- AdaBoost

                      سلام ..

                      درست هست که منطق محاسبه ی خطا بر اساس دیتاهای Ts صورت میگیره (--همون هایی که فضاشون نزدیک به فضای نمونه های تست هست--) امــا در خط چهارم؛ الگوریتم با دادن وزن های پایین به Td های نا مفید (به نوعی) اونها رو هم مورد توجه قرار میده؛ هرچند از دیدگاه منفی .. در نتیجه هم Ts ها برای الگوریتم ما مهم هستن و هم Td ها .. در مورد خروجی هم صفر به معنای این هست که نمونه ی تست؛ اونچیزی که ما دنبالش هستیم نیست و خروجی یک هم به معنای مثبت بودن پاسخ Classifier به آنچه که در خروجی مشاهده میکنه و تشخیص میده؛ هست .. هرچند که شاید اینطور 0 و 1 گفتن زیاد مناسب Classification در Transfer Learning نباشه و معمولا در ایده های بهتر؛ این نوع فضا با یک Hash Code در خروجی اعلام میشه؛ کدهایی که همگی با استفاده از Classifier های باینری در مرحله ی Train به دست میان و مجموعه ی Hash Code اعلام شده در خروجی انعطاف و قابلیت بالاتری در تشخیص کلاس ها داره (--با اضافه کردن یک سری پارامترهای به خصوص از مجموعه ی Shared Feature ها هم میشه به طبقه بندی/تشخیص Multi-class یا Multi-view فکر کرد--).. در مورد اون تولباکس هم ایمیل میزنم و پیگیری میکنم و حتما نتیجه ی اون رو در ادامه ی پست ها قرار میدم .. در انتهای این پست هم یک فایل جمعبندی خیلی مفید از مبحث Transfer Learning ضمیمه هست که امیدوارانه میتونه سودمند باشه .. موفق و سلامت و شاد باشید ..
                      فایل های پیوست شده
                      دوستان! مدتی کمتر به سایت میام ..

                      دیدگاه


                        #12
                        پاسخ : الگوریتم آدابوست -- AdaBoost

                        ممنون. من تقریبا تمامی مقالات در مورد transfer learning رو مطالعه کردم و این مقاله رو هم همینطور. راستش من کد اون رو در محیط متلب نوشتم و خروجی هایی میده که نمیدونم درست هست یا نه! من هنوز متوجه نشدم که خروجی 0 یا 1 یعنی چی!!!

                        دیدگاه


                          #13
                          پاسخ : الگوریتم آدابوست -- AdaBoost

                          سلام ..

                          به این منظور که بتونید از صحت یا عدم صحت کدتون اطمینان حاصل کنید؛ شاید بهتر این باشه که اون رو بر روی یـکی از دیتاست هایی که در مقاله بر روی اون Experiment انجام دادن؛ تست کنید و نتایجتون رو با نتایج مقاله مقایسه .. این روش استانداردی هست که معمولا برای تست کد میشه به اون اعتماد کرد .. و درباره ی 0 و 1 .. نمیدونم سوالتون رو صحیح متوجه شدم یا نه امــا: در طبقه بندی دو کلاسه (Binary Classification) دیتاهای مثبت رو با لیبل 1+ و دیتاهای منفی رو با لیبل 1- مشخص میکنیم و در زمان تست؛ اگر لیبل نمونه ی تشخیص داده شده بر اساس فضا و مدل آموزش دیده در مرحله ی Train؛ 1+ باشه؛ اون نمونه متعلق به کلاسی هست که ما به دنبال اون هستیم و اگر 1- باشه؛ جزو داده های منفی هست .. به عنوان مثال، بهتر اینکه با مثال چند پست قبل بمانیم: اگر لیبل خروجی 1- باشه؛ یعنی تشخیص Classifier این بوده که این نمونه؛ جزو کلاس های View_Point_2 نیست و اگر 1+ باشه؛ یعنی که هست .. در این مقاله؛ به جای اینکه لیبل ها رو با 1+ و 1- متناظر کنن؛ با 1+ و 0 متناظر کردن که هم معنی موارد ذکر شده هستن .. فقط بنا به نظر اونها؛ نامگذاری لیبل ها تغییر کرده .. موفق و سلامت و شاد باشید ..
                          دوستان! مدتی کمتر به سایت میام ..

                          دیدگاه


                            #14
                            پاسخ : الگوریتم آدابوست -- AdaBoost

                            نوشته اصلی توسط حسام الدین
                            سلام ..

                            فایلی که در انتهای این پست ضمیمه شده؛ یک Demo هست از Boosting که در کنار فایل های خوب پست قبل، میتونه مفید باشه .. در ابتدا لازم هست که با دو کلید Mouse یک فضای دیتا ساخته بشه و پس از اون با فشردن مدام Space الگوریتم Iterate میزنه تا به نتیجه ی نهایی و مطلوب برسه .. موفق و سلامت و شاد باشید ..
                            سلام. این فایلی که در این جا قرار دادید در اجرا مشکل داره! در زمان اجرا خطایی در مورد یکی از تابع ها میده که به این صورت می باشد:
                            ??? Undefined function or method 'selectBestRegressionStump' for
                            input arguments of type 'double
                            '.
                            ممنون میشم بررسی نمایید.

                            دیدگاه


                              #15
                              پاسخ : الگوریتم آدابوست -- AdaBoost

                              سلام ..

                              حق با شماست .. فراموش کرده بودم بقیه ی فایل ها رو هم در فولدر Boosting_Demo قرار بدم پیش از zip کردن .. فایل اصلاح شده رو مجددا ضمیمه ی پست قبل کردم .. ممنون که اطلاع دادید .. پیروز باشید ..
                              دوستان! مدتی کمتر به سایت میام ..

                              دیدگاه

                              لطفا صبر کنید...
                              X