64
کدهء ش ن دا ر ت و ي پ م کا گاه ش ن دا ر ي ب ك ر مي ا ارش ز گ ق ي ق ح ت درش ری گي اد ی ن, ی ش ما ای ق1 د: ا ا ت س ا ر كي د ری ي ش ت8 ب ع ل و:8 ح ش ن دا ی ر ت ز ع ماره ش: ي ي و8 ح ش ن دا83131198 1

fumblog.um.ac.irfumblog.um.ac.ir/gallery/412/DT-Survey.doc · Web viewاستفاده از یک معیار صریح پیچیدگی برای کدکردن مثال های آزمایشی

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

دانشکدهء کامپيوتر دانشگاه اميركبير

گزارش تحقیق درس یادگیری ماشین

استاد: آقاي دكتر شیری

دانشجو: لعبت عزيزي

شماره دانشجويي: 83131198موضوع: یادگیری درخت های تصمیم

خرداد 1385

- چکیده

یادگیری درخت تصمیم یکی از رایج ترین تکنیک های یادگیری ماشین می باشد که به دلیل سادگی و کارامدی باعث شده است علی رغم مشکلاتی که در استفاده از آن همچون صفات دارای نویز و یا صفات فاقد مقدار یا ... وجود دارد به شکل گسترده ای در مسائل مربوط به یادگیری ماشین استفاده شود. در این تحقیق سعی شده است به مسائل اصلی مطرح در زمینهء درخت طراحی مانند بازنمایی، طراحی، عام سازی و مشکلات و راه کارهای برخورد با آنها که توسعه یافته اند پرداخته شود و همچنین از برخی مسائل غیراصلی مانند درختان رگراسیون، نرم افزارهای آزمایشگاهی و تست آماری χ2 نیز ذکری به میان آید.

فهرست

- چکیده2

مقدمه 5

1-1- اهداف اصلي درختهاي تصميمگيري دستهبندي كننده6

1-2- جذابیت درختان تصمیم6

1-3- انواع درختان تصمیم6

1-3-1- درختان رگراسیون7

2- بازنمایی درخت تصمیم8

2-1- توسعهء درختان تصمیم با گراف های تصمیم9

3- مسائل مناسب برای یادگیری درخت تصمیم10

4- چه صفتی بهترین طبقه بندی کننده است؟11

4-1-1- بی نظمی همگونی مثال ها را اندازه گیری می کند.11

4-1-2- نفع اطلاعات، کاهش مورد انتظار در بی نظمی را اندازه گیری می کند.13

4-2- یک مثال تشریحی14

4-3- حالت خاصی از ساخت درخت تصمیم15

5- جستجوی فضای فرضیه در یادگیری درخت تصمیم16

5-1- قابلیت ها و محدودیت های الگوریتم ID316

6- بایاس قیاسی (استنتاجی) در یادگیری درخت تصمیم17

6-1- بایاس های محدودیت و بایاس های ارجحیت18

6-2- چرا فرضیات کوتاهتر را ترجیح می دهیم؟19

7- مسائل در یادگیری درخت تصمیم20

7-1- اورفیتینگ داده ها20

7-2- روشهای موجود برای ممانعت از اورفیتینگ26

7-2-1- انواع روش های هرس کردن27

7-2-1-1- تست chi-Square29

7-2-2- هرس خطای کاهش یافته30

7-2-3- هرس بعدی قانون31

7-3- بکاربردن صفات با مقادیر پیوسته34

7-4- معیارهای دیگر برای انتخاب صفات 35

7-5- بکاربردن مثال های آموزشی با صفات فاقد مقدار36

7-6- بکاربردن صفات با هزینه های متفاوت37

8- عام سازی درخت38

8-1- طراحی یک دسته بندی کنندهء درخت تصمیم38

8-2- روشهاي اصلی برای طراحی دسته بندی کنندهء درخت تصميم39

9- انواع يادگيري در درخت تصميم گيري40

10- مزایا و معایب درخت تصمیم40

10-1- مزایای درختان تصمیم نسبت به روش های دیگر داده کاوی40

10-2- معايب درختان تصمیم41

11- نرم افزارهای مفید برای درخت تصمیم42

12- الگوریتم یادگیری درخت تصمیم پایه43

13- جمع بندی45

14- لغت نامه 46

15- مراجع48

یادگیری درخت تصمیم

1- مقدمه

ساختار درخت تصمیم در یادگیری ماشین، یک مدل پیش بینی کننده می باشد که حقایق مشاهده شده در مورد یک پدیده را به استنتاج هایی در مورد مقدار هدف آن پدیده نقش می کند. تکنیک یادگیری ماشین برای استنتاج یک درخت تصمیم از داده ها، یادگیری درخت تصمیم نامیده می شود که یکی از رایج ترین روش های داده کاوی است.

هر گرهء داخلی متناظر یک متغیر و هر کمان به یک فرزند، نمایانگر یک مقدار ممکن برای آن متغیر است. یک گرهء برگ، با داشتن مقادیر متغیرها که با مسیری از ریشهء درخت تا آن گرهء برگ بازنمایی می شود، مقدار پیش بینی شدهء متغیر هدف را نشان می دهد..یک درخت تصمیم ساختاری را نشان می دهد که برگ ها نشان دهندهء دسته بندی و شاخه ها ترکیبات فصلی صفاتی که منتج به این دسته بندی ها را بازنمایی می کنند. یادگیری یک درخت می تواند با تفکیک کردن یک مجموعهء منبع به زیرمجموعه هایی براساس یک تست مقدار صفت انجام شود. این فرآیند به شکل بازگشتی در هر زیرمجموعهء حاصل از تفکیک تکرار می شود. عمل بازگشت زمانی کامل می شود که تفکیک بیشتر سودمند نباشد یا بتوان یک دسته بندی را به همهء نمونه های موجود در زیرمجموعهء بدست آمده اعمال کرد.

درختان تصمیم قادر به تولید توصیفات قابل درک برای انسان، از روابط موجود در یک مجموعهء داده ای هستند و می توانند برای وظایف دسته بندی و پیش بینی بکار روند. این تکنیک به شکل گسترده ای در زمینه های مختلف همچون تشخیص بیماری دسته بندی گیاهان و استراتژی های بازاریابی مشتری بکار رفته است.

این ساختار تصمیم گیری می تواند به شکل تکنیک های ریاضی و محاسباتی که به توصیف، دسته بندی و عام سازی یک مجموعه از داده ها کمک می کنند نیز معرفی شوند. داده ها در رکوردهایی به شکل (x, y) = (x1, x2, x3…, xk, y) داده می شوند. با استفاده از متغیرهای x1,x2,..,xk سعی در درک، دسته بندی یا عام سازی متغیر وابستهء Y داریم.

انواع صفات در درخت تصمیم به دو نوع صفات دسته ای و صفات حقیقی بوده که صفات دسته ای، صفاتی هستند که دو یا چند مقدار گسسته می پذیرند (یا صفات سمبلیک) درحالی که صفات حقیقی مقادیر خود را از مجموعهء اعداد حقیقی می گیرند.

1-1- اهداف اصلي درختهاي تصميمگيري دستهبندي كننده

1. دادههاي ورودي را تا حد ممكن درست دستهبندي كنند.

2. دانش یادگیری شده از دادههاي آموزشي را به گونهاي عام سازی کنند كه دادههاي ديده نشده را با بالاترين دقت ممكن دستهبندي كنند.

3. در صورت اضافه شدن دادههاي آموزشي جديد، بتوان به راحتي درخت تصميمگيري را گسترش داد(داراي خاصيت افزايشي باشند).

4. ساختار درخت حاصل به سادهترين شكل ممكن باشد.

1-2- جذابیت درختان تصمیم

1. نواحی تصمیم پیچیدهء سراسری (خصوصاً در فضاهای با ابعاد زیاد) می توانند با اجتماع نواحی تصمیم محلی ساده تر در سطوح مختلف درخت تقریب زده شوند.

2. برخلاف دسته بندی کننده های تک مرحله ای رایج که هر نمونهء داده ای روی تمام دسته ها امتحان می شود، در یک دسته بندی کنندهء درخت، یک نمونه فقط روی زیرمجموعه های خاصی از دسته ها امتحان شده و محاسبات غیرلازم حذف می شود.

3. در دسته بندی کننده های تک مرحله ای، فقط از زیرمجموعه ای از صفات، برای تفکیک بین دسته ها استفاده می شود که معمولاً با یک معیار بهینهء سراسری انتخاب می شوند. در دسته بندی کنندهء درخت، انعطاف پذیری انتخاب زیرمجموعه های مختلفی از صفات در گره های داخلی مختلف درخت وجود دارد؛ به شکلی که زیرمجموعهء انتخاب شده به شکل بهینه بین دسته های این گره را تفکیک می کند. این انعطاف پذیری ممکن است بهبودی در کارایی را نسبت به دسته بندی کننده های تک مرحله ای ایجاد کند.

4. در تحلیل چندگونگی با تعداد صفات و دسته های زیاد، معمولاً نیاز به تخمین توزیع های ابعاد-زیاد یا پارامترهای خاصی از توزیع های دسته همانند احتمالات اولیه از یک مجموعهء داده های آموزشی کوچک می باشد. در این حالت مشکل ابعاد-بالا وجود دارد که امکان دارد در درخت دسته بندی کننده، با بکاربردن تعداد کمتری از صفات در هر گرهء داخلی بدون افت شدید کارایی، این مسئله حل شود.

1-3- انواع درختان تصمیم

· هنگامی که خروجی یک درخت، یک مجموعهء گسسته از یک مجموعه مقادیر ممکن است؛ به آن درخت دسته بندی، می گوییم (مثلاً مونث یا مذکر، برنده یا بازنده). این درخت ها تابع X→C را بازنمایی می کنند که در آن C مقادیر گسسته می پذیرد.

· هنگامی که بتوان خروجی درخت را یک عدد حقیقی درنظر گرفت آن را، درخت برگشت می نامیم (مثلاً قیمت خانه یا طول مدت اقامت یک بیمار در یک بیمارستان). این درختان اعداد را در گره های برگ پیش بینی می کنند و می توانند از مدل رگراسیون خطی یا ثابت (یعنی میانگین) یا مدل های دیگر استفاده کنند.

· درخت CART (Classification And Regression Tree) نامی است که به هر دو روال بالا اطلاق می شود. نام CART سرنام کلمات درختان برگشت و دسته بندی است.

· درختان خوشه ای فقط نمونه ها را در گره های برگ گروه بندی می کنند.

بیشتر تحقیقات در یادگیری ماشین روی درختان دسته بندی متمرکز است.

1-3-1- درختان رگراسیون

وظیفهء یادگیری در درختان رگراسیون، شامل پیش بینی اعداد حقیقی بجای مقادیر دسته ای گسسته است. که این عمل را با داشتن مقادیر حقیقی در گره های برگ خود نشان می دهند. بدین صورت که میانگین مقادیر هدف نمونه های آموزشی را در این گرهء برگ بدست می آورند. این نوع از درختان، تفسیر آسان داشته و می توانند توابع ثابت تکه ای را تقریب بزنند.

نسخهء پیچیده تر درختان رگراسیون، درختان مدل هستند که عمل رگراسیون را با داشتن مدل خطی در گره های داخلی یا پایانی نشان می دهند (در هر گره، توابع رگراسیون خطی دارند). بعداز اینکه درخت رگراسیون کامل ساخته شد، عمل رگراسیون خطی، به نمونه هایی که به این گره رسیده اند اعمال می شود و فقط از یک زیرمجموعه از صفات (صفاتی که در زیردرخت دیده خواهند شد) برای این کار استفاده می شوند. بدلیل استفاده از زیرمجموعه ای از صفات در هر گره، سربار عمل رگراسیون خطی زیاد نخواهد شد.

تفاوت درخت رگراسیون و درخت دسته بندی:

· معیار تقسیم و شاخه زدن در درختان رگراسیون براساس حداقل کردن گوناگونی زیرمجموعهء داخلی است.

· معیار هرس در درختان رگراسیون براساس معیار خطای عددی می باشد.

· گره های برگ، میانگین مقادیر دسته برای مثال های آموزشی افراز شده به این گره را پیش بینی می کنند.

2- بازنمایی درخت تصمیم

درختان تصمیم، نمونه ها را با مرتب کردن آنها در درخت از گرهء ریشه به سمت گره های برگ دسته بندی می کنند. هر گرهء داخلی در درخت، صفتی از نمونه را آزمایش می کند و هر شاخه ای که از آن گره خارج می شود متناظر یک مقدار ممکن برای آن صفت می باشد. همچنین به هر گرهء برگ، یک دسته بندی منتسب می شود. هر نمونه، با شروع از گره ریشهء درخت و آزمایش صفت مشخص شده توسط این گره و حرکت در شاخهء متناظر با مقدار صفت داده شده در نمونه، دسته بندی می شود. این فرآیند برای هر زیردرختی که گرهء جدید ریشهء آن می باشد تکرار می شود.

در حالت کلی، درختان تصمیم یک ترکیب فصلی از ترکیبات عطفی قیود روی مقادیر صفات نمونه ها را بازنمایی می کنند. هر مسیر از ریشهء درخت به یک، برگ متناظر با یک ترکیب عطفی صفات تست موجود در آن مسیر بوده و خود درخت نیز متناظر با ترکیب فصلی همهء این ترکیبات عطفی می باشد.

مثال:

برای مثال درخت تصمیم زیر متناظر با عبارت پایین می باشد.

(Outlook=Sunny ∧ Humidity=Normal) ∨ (Outlook=Overcast) ∨ (Outlook=Rain ∧ Wind=Weak)

روشی دیگر برای نمایش درخت تصمیم گیری بالا:

مثال

بازنمایی درخت تصمیم برای تابع A∧~B

2-1- توسعهء درختان تصمیم با گراف های تصمیم

گراف های تصمیم، تعمیمی از درخت های تصمیم بوده که دارای برگ و گرهء تصمیم هستند. یک ویژگی که گراف های تصمیم را از درختان تصمیم متمایز می کند آن است که گراف های تصمیم می توانند دارای پیوند باشند. پیوند حالتی است که دو گره یک فرزند مشترک داشته باشند و این وضعیت، بیانگر دو زیرمجموعه است که ویژگی های مشترک دارند، از این رو یک مجموعه درنظر گرفته می شوند. در درخت تصمیم تمام مسیرها از گرهء ریشه به گرهء برگ با ترکیب عطفی یا AND پیش می رود. در یک گراف تصمیم ممکن است که از ترکیبات فصلی یا ORها برای پیوند دو یا چند مسیر با یکدیگر استفاده کرد.

روشی که اشیاء در گراف های تصمیم دسته بندی می شوند همان روش بکار رفته در درختان تصمیم می باشد. هر درخت تصمیم و گراف تصمیم یک دسته بندی را تعریف می کنند (یک افراز از فضای شیء به دسته های مجزا). مجموعهء توابع قابل نمایش توسط گراف دقیقاً همانند مجموعهء قابل نمایش توسط درخت است. هرچند مجموعهء دسته هایی که در تعریف یک تابع تصمیم وارد می شوند متفاوت است.

مثال: دسته بندی برای تابع (A ∧ B) ∨ (C ∧ D) متفاوت است. گراف و درخت تصمیم متناظر این تابع در شکل زیر نشان داده شده است. درخت تصمیم فضای شیء را به هفت دسته تقسیم می کند در حالی که گراف تصمیم این فضا را به دو دسته افراز می کنند.

3- مسائل مناسب برای یادگیری درخت تصمیم

انواع مختلفی از روش های یادگیری درخت تصمیم با قابلیت ها و نیازمندیهای گوناگونی توسعه یافته اند اما در حالت کلی، یادگیری درخت تصمیم در کل برای مسائلی با ویژگی های زیر مناسب است:

مسائلی که در آنها نمونه ها به شکل جفت های صفت-مقدار بازنمایی می شوند- در این گونه مسائل، نمونه ها با محموعهء ثابتی از صفات و مقادیر آنها بیان می شوند. ساده ترین وضعیت برای یادگیری درخت تصمیم، زمانی است که هر صفت تعداد کوچکی از مقادیر ممکن گسسته بگیرد. هرچند با توسعه به الگوریتم پایه، امکان استفاده از صفات با مقادیر پیوسته نیز امکان پذیر است.

مثال: صفت: دما

مقدار:{گرم، معتدل، خنک}

مسائلی که در آنها تابع هدف مقادیر خروجی گسسته دارند- می توان روش های درخت تصمیم به گونه ای گسترش داد که بتوانند توابعی با خروجی بیش از دو مقدار را یادگیری کنند. نوع دیگری از توسعه، امکان دستیابی به توابع هدف یادگیری با خروجی های مقدار پیوسته را امکان پذیر می سازد.

مثال: خروجی یک تابع هدف فرضی: {بلی، خیر}

ممکن است به توصیفات فصلی نیاز باشد- درختان تصمیم به شکل ذاتی عبارات فصلی را بازنمایی می کنند.

ممکن است داده های آموزشی حاوی خطا باشند- روش های یادگیری درخت تصمیم نسبت به وجود خطا در داده های آموزشی مقاوم هستند. (خطا در دسته بندی مثالهای آموزشی و خطا در مقادیر صفاتی که مثالهای آموزشی را تشریح می کنند.)

ممکن است داده های آموزشی حاوی صفات فاقد مقدار باشند- روش های درخت تصمیم می توانند زمانی که برخی مثالهای آموزشی مقادیر ناشناخته دارند نیز استفاده شوند.

نمونه هایی از مسائلی که دارای این ویژگی ها بوده و یادگیری درخت تصمیم به آنها بکارگرفته شده اند، مانند یادگیری دسته بندی بیماران پزشکی بوسیلهء بیماریهای آنها، دسته بندی عمل کردن اشتباه تجهیزات بوسیلهء دلایل آنها، و دسته بندی اعطای وام توسط احتمال عدم پرداخت آنها.

4- چه صفتی بهترین طبقه بندی کننده است؟

انتخاب اساسی در الگوریتم ID3، انتخاب یک صفت برای آزمایش در هر گره در درخت است. این صفت باید به دسته بندی مثال ها کمک کند.

معرفی یک معیار کمی یا عددی خوب برای بیان ارزش یک صفت - یک ویژگی آماری به نام نفع اطلاعات را تعریف می کنیم که وظیفهء آن، اندازه گیری کیفیت تقسیم کنندگی مثال های آموزشی توسط یک صفت می باشد.ID3 از این معیار برای انتخاب یک صفت از بین صفات کاندیدی در هر سطح درخت در زمان ساخت آن وجود دارند استفاده می کند.

4-1-1- بی نظمی همگونی مثال ها را اندازه گیری می کند.

برای تعریف دقیق نفع اطلاعات با تعریف معیاری با نام بی نظمی آغاز می کنیم که (نا)خالصی یک مجموعه از مثالها را مشخص می کند.

مجموعه S حاوی مثال های مثبت و منفی از یک تابع هدف می باشد.

بی نظمی مربوط به این دسته بندی بولی به قرار زیر است:

Entropy(S) ≡ - P⊕ log2 P⊕ - P⊝ log2 P⊝

که P⊕ نسبت مثالهای مثبت در S و P⊝ درصد مثالهای منفی در آن است. در تمام محاسبات شامل بی نظمی 0log0 را صفر تعریف می کنیم.

مثال: فرض کنید S مجموعه ای از 14 مثال یک مفهوم بولی که حاوی 9 مثال مثبت و 5 مثال منفی است. [-5، +9]

بی نظمی S مربوط به این دسته بندی بولی از این قرار می باشد:

Entropy ([9+, 5-]) = -(9/14) log2 (9/14) - (5/14) log2 (5/14) = 0.940

- اگر تمام اعضاء S به یک دسته متعلق باشند بی نظمی صفر است. برای مثال اگر تمام اعضاء مثبت باشند (یعنیP⊕=1) پس P⊝ صفر و

Entropy(S) = -1 . log2(1) – 0 . log2(0) = -1 . 0 – 0 . log2(0) = 0

- اگر مجموعهء S حاوی تعدادی مساوی از مثالهای مثبت و منفی باشد بی نظمی یک می باشد.

- اگر مجموعه حاوی تعداد نامساوی از مثالهای مثبت و منفی باشد بی نظمی بین صفر و یک خواهد بود.

شکل زیر در حالی که P⊕ بین صفر و یک تغییر می کند، تابع بی نظمی مربوط به یک دسته بندی بولی را نشان می دهد.

تفسیری از بی نظمی از دید تئوری اطلاعات آن است که این عامل حداقل تعداد بیت های اطلاعات را که برای کدکردن دسته بندی یک عضو دلخواه S لازم است بیان می کند. (یعنی یک عضو S که به شکل تصادفی با احتمال یکتا انتخاب شده است). برای مثال اگر P⊕ یک باشد، گیرنده می داند که مثال انتخاب شده، مثبت خواهد بود و بنابراین نیازی نیست که هیچ پیامی فرستاده شود و بی نظمی صفر است. از طرف دیگر اگر P⊕=0.5 باشد برای مشخص کردن مثبت یا منفی بودن مثال انتخاب شده به یک بیت نیاز است. اگر P⊕=0.8 باشد می توان مجموعه ای از پیام ها را به طور متوسط با کمتر از یک بیت برای هر پیام رمزگزاری کرد به شکلی که کدهای کوتاهتر به مجموعه های مثال های مثبت و کدهای بلندتر به مثال های منفی با احتمال کمتر را منتسب کرد.در حالت های کلی تر، اگر صفت هدف بتواند c مقدار مختلف بگیرد پس بی نظمی S مربوط به این دسته بندی cتایی به شکل زیر تعریف می شود:

که pi نسبتی از اعضای S می باشد که متعلق به دستهء i هستند. لگاریتم در پایهء دو می باشد چون بی نظمی، اندازهء طول کدگزاری موردانتظار اندازه گیری شده به بیت است. همچنین اگر صفت هدف بتواند c مقدار ممکن را بگیرد بی نظمی می تواند به بزرگی log2 c باشد.

4-1-2- نفع اطلاعات، کاهش مورد انتظار در بی نظمی را اندازه گیری می کند.

با داشتن بی نظمی به عنوان ناخالصی در یک مجموعه مثال آموزشی، می توان معیار موثر بودن یک صفت در دسته بندی داده های آموزشی را تعریف نمود. این معیار، کاهش مورد انتظار در بی نظمی است که با تفکیک کردن مثال ها برپایهء این صفت حاصل می شود.

نفع اطلاعاتی Gain(S,A) یک صفت A مربوط به مجموعهء مثالهای S به شکل

تعریف می شود.

Values(A) = مجموعهء تمام مقادیر ممکن برای صفت A

Sv = زیرمجموعه ای از S است که در آن صفت A مقدار v را دارد. (یعنی Sv={s∊S|A(s)=v})

جملهء اول در عبارت بالا، بی نظمی مجموعهء اصلی S و جملهء دوم، مقدار مورد انتظار بی نظمی بعد از تفکیک S با استفاده از صفت A می باشد.

مثال: S مجموعه ای از روزهای مثال –آموزشی تشریح شده توسط صفات شامل Wind که مقادیر Weak و Strong دارد می باشد. S حاوی 14 مثال [9+,5-] است که در شش مثال مثبت و دو مثال منفی آن Wind=Weak و در بقیه Wind=Strong است. نفع اطلاعات مربوط به مرتب کردن 14 مثال ابتدایی بوسیلهء صفت Wind به شکل زیر محاسبه می شود:

Values(Wind) = Weak, Strong

S = [9+, 5-]

Sweak ← [6+, 2-]

Sstrong ← [3+, 3-]

= Entropy(S) – (8/14) . Entropy(Sweak) – (6/14) . Entropy(Sstrong)

= 0.940 - (8/14) 0.811 - (6/14) 1.00

= 0.048

نفع اطلاعات معیاری است که توسط ID3 برای انتخاب بهترین صفت در هر گام در ساخت درخت استفاده می شود. استفاده از عامل نفع اطلاعات برای ارزیابی ارتباط صفات در شکل زیر خلاصه شده است. در این شکل نفع اطلاعات دو صفت مختلف باد و رطوبت، برای تعیین صفت بهینه جهت دسته بندی مثال های آموزشی محاسبه شده است.

4-2- یک مثال تشریحی

با داشتن مثالهای آموزشی زیر سعی در انجام وظیفهء یادگیری این مثال ها برای صفت هدف PlayTennis براساس صفات دیگر موجود در جدول داریم. صفت PlayTennis دو مقدار yes یا no می گیرد.

1- ایجاد بالایی ترین گرهء درخت تصمیم - چه صفتی را باید در این گام آزمایش شود؟ الگوریتم ID3، عامل نفع اطلاعات را برای هر صفت کاندید تعیین می کند، سپس صفتی با بالاترین نفع اطلاعات را انتخاب می کند. نفع اطلاعات محاسبه شده برای صفات در این مرحله در زیر آورده شده است:

Gain(S, Outlook) = 0.246

Gain(S, Humidity) = 0.151

Gain(S, Wind) = 0.048

Gain(S, Temperature) = 0.029

که S مجموعهء مثالهای آموزشی در جدول زیر می باشد.

PlayTennis

Wind

Humidity

Temperature

Outlook

No

Weak

High

Hot

Sunny

No

Strong

High

Hot

Sunny

Yes

Weak

High

Hot

Overcast

Yes

Weak

High

Mild

Rain

Yes

Weak

Normal

Cool

Rain

No

Strong

Normal

Cool

Rain

Yes

Strong

Normal

Cool

Overcast

No

Weak

High

Mild

Sunny

Yes

Weak

Normal

Cool

Sunny

Yes

Weak

Normal

Mild

Rain

Yes

Strong

Normal

Mild

Sunny

Yes

Strong

High

Mild

Overcast

Yes

Weak

Normal

Hot

Overcast

No

Strong

High

Mild

Rain

باتوجه به نفع اطلاعات محاسبه شده، صفت Outlook بهترین پیش بینی از صفت هدف PlayTennis را روی مثال های آموزشی انجام می دهد که به عنوان صفت تصمیم برای گرهء ریشه انتخاب می شود و انشعابات یا شاخه های زیر ریشه برای هر مقدار آن ایجاد می شود. (یعنی Sunny و Overcast و Rain) درخت تصمیم ساخته شده تا این مرحله همراه با مثالهای آموزشی افراز شده برای هر گرهء فرزند جدید، در زیر نشان داده می شود.

هر مثالی که در آن Outlook = overcast است، یک مثال مثبت از PlayTennis می باشد بنابراین گرهء درخت یک گرهء برگ با دسته بندی PlayTennis=Yes می شود. برعکس آن فرزندان متناظر با Outlook = Sunny و Outlook = Rain هنوز بی نظمی غیرصفر دارند و درخت تصمیم در زیر این گره ها توسعه می یابد.

عمل انتخاب یک صفت جدید و افراز مثال های آموزشی برای هر گرهء فرزند غیرپایانه تکرار می شود. در این مرحله، فقط با استفاده از مثال های آموزشی افراز شده به این گره عملیات، ساخت زیردرخت انجام می شود، بنابراین هر صفت حداکثر یکبار در هر مسیری در درخت ظاهر می شود.

این فرآیند برای هر گره برگ جدید تا زمانی که یکی از دو شرط زیر برقرار شوند تکرار می شود:

(1) تمام صفت ها تاکنون در این مسیر درخت استفاده شده اند.

(2) مثالهای آموزشی افراز شده به این گرهء برگ، همه یک مقدار صفت هدف را دارند. (بی نظمی صفر است)

4-3- حالت خاصی از ساخت درخت تصمیم

روش تقسیم صفات دسته ای به شکل دودویی: در این روش بعد از انتخاب یک صفت برای عمل تصمیم گیری در هر گره، فقط یک تقسیم دودویی انجام می دهیم که دو فرزند با عناوین "صفت تصمیم برابر یک مقدار خاص می باشد" و "صفت تصمیم برابر آن مقدار نمی باشد" تولید می کند.

5- جستجوی فضای فرضیه در یادگیری درخت تصمیم

می توان ID3 را به عنوان جستجوی یک فضای فرضیه برای یافتن فرضیه ای که با مثال های آموزشی جفت شود توصیف کرد. فضای فرضیه های جستجو شده توسط این الگوریتم، مجموعه ای از درختان تصمیم ممکن است و که این الگوریتم یک جستجوی ساده به دشوار، Hill-Climbing را در این فضای فرضیه انجام داده، با یک درخت خالی آغاز کرده، سپس به شکل تصاعدی، فرضیات بیشتری را در جستجوی درخت تصمیمی که به شکل صحیح داده های آموزشی را دسته بندی می کند در نظر می گیرد. تابع ارزیابی که این جستجوی Hill-Climbing را هدایت می کند، معیار نفع اطلاعات است.

5-1- قابلیت ها و محدودیت های الگوریتم ID3:

-فضای فرضیهء ID3، یک فضای کامل از توابع مقدار گسستهء متناهی، مربوط به صفات موجود است. چون هر تابع مقدار گسسته، می تواند با نوعی از درخت تصمیم نشان داده شود؛ این الگوریتم مانع از خطرات روشهایی که فضاهای فرضیهء ناقص را جستجو می کنند می شود (مانند روش هایی که فقط فرضیات فصلی را در نظر می گیرند): که در آنها، فضای فرضیه ممکن است حاوی تابع هدف نباشد

- برخلاف برخی روش ها همچون روش حذف-کاندید، فضای نسخه که مجموعهء تمام فرضیات سازگار با مثال های جاری را نگهداری می کرد، در طی عمل تصمیم گیری برای ساخت درخت، فقط یک فرضیهء جاری را حفظ می کند. البته، این الگوریتم توانایی هایی که از بازنمایی صریح تمام فرضیات سازگار ناشی می شود را از دست می دهد. (مثلاً توانایی تعیین اینکه چند درخت تصمیم دیگر با داده های آموزشی سازگار هستند یا ساخت پرسش های نمونهء جدید که به شکل بهینه باعث انتخاب یک فرضیه از بین این فرضیات رقیب می شوند.)

- این الگوریتم هیچ بازگشت به عقبی را انجام نمی دهد. هرگاه صفتی را برای آزمایش در سطح خاصی از درخت انتخاب کرد هیچگاه دوباره آن را بررسی نمی کند. بنابراین مستعد خطرات معمول جستجوی hill-climbing بدون بازگشت به عقب می باشد: همگرایی به راه حل های بهینهء محلی که بهینهء سراسری نمی باشند. (توسعه ای از این روش، نوعی از بازگشت به عقب را دارا می باشد(درخت تصمیم هرس قبلی))

-برخلاف روش هایی که تصمیمات تدریجی خود را بر پایهء مثال های آموزشی می گیرند، الگوریتم ID3، برای اتخاذ تصمیمات آماری راجع به چگونگی بهبود فرضیهء فعلی خود، تمام مثال ها را در هر گام از جستجو بکار می برد. مزیت این عمل این است که جستجوی نهایی، کمتر به خطاهای موجود در مثال های آموزشی حساس خواهد بود. (می توان این الگوریتم را با تغییر شرط پایانی آن، برای پذیرفتن فرضیاتی که کاملاً با داده های آموزشی جفت نمی شوند توسعه داد.)

6- بایاس قیاسی (استنتاجی) در یادگیری درخت تصمیم

سیاستی که ID3 با آن نمونه های عرضه نشده را از مثالهای آموزشی دسته بندی می کند چیست؟ (بایاس استقرایی آن چیست؟)

بایاس استنتاجی: مجموعهء فرضیاتی است که همراه با داده های آموزشی، به شکل استنتاجی (یا قیاسی) دسته بندی منتسب شده توسط یادگیرنده به نمونه های دیگر را تصدیق می کنند (توجیه می کنند)

با داشتن مجموعه ای از مثالهای آموزشی، معمولاً درختان تصمیم زیادی که با این مثال ها سازگار باشند وجود دارد. بنابراین تشریح بایاس استقرایی ID3 شامل توصیف بایاسی است که با آن یکی از این فرضیات سازگار از بین بقیه انتخاب می شود.

ID3 چه درخت تصمیمی انتخاب می کند؟ این الگوریتم در جستجوی hill-climbing ساده به دشوار در فضای درختان ممکن، اولین درخت قابل قبولی را که با آن روبرو می شود انتخاب می کند.

استراتژی جستجوی ID3:

(1) درختان کوتاهتر را به بلندتر ترجیح می دهد.

(2) درختانی که صفاتی با بالاترین نفع اطلاعاتی را نزدیکتر به ریشه جای می دهند برمی گزیند.

به شکل تقریبی می توان بایاس درخت تصمیم ID3 را بدین گونه بیان کرد:

درختان کوتاهتر به درختان بلندتر ارجح هستند.

الگوریتمی مشابه ID3 درنظر بگیرید که این بایاس استقرایی را دقیق تر نشان می دهد. این الگوریتم با درختی خالی آغاز کرده و Breadth-First را در درختان پیچیده تر جستجو کرده ، ابتدا تمام درختان با عمق یک و سپس تمام درختان با عمق دو و ... را درنظر می گیرد. وقتی درختی سازگار با داده های آموزشی یافت، کوتاهترین درخت سازگار در این عمق جستجو را برمی گرداند(مشابه ID3). این الگوریتم دقیقاً بایاس ارجحیت درختان کوتاهتر به بلندتر را نشان می دهد. ID3 نسبت به این الگوریتم کاراتر بوده و می تواند به عنوان تخمین خوبی از آن دیده شود که با استفاده از یک جستجوی شهودی حریصانه سعی در یافتن کوتاهترین درخت بدون انجام تمام جستجوی Breadth-First در فضای فرضیه دارد و چون ID3 از شهود نفع اطلاعات و استراتژی hill-climbing استفاده می کند، بایاسی پیچیده تر از این الگوریتم را عرضه می کند.

تقریبی دقیق تر به بایاس استقرایی ID3:

درختان کوتاهتر به درختان بلندتر ارجح هستند. درختانی ارجح هستند که صفتی با نفع اطلاعاتی بالاتر را نزدیک به ریشه جای می دهند.

6-1- بایاس های محدودیت و بایاس های ارجحیت

تفاوت های بین جستجوی فضای فرضیه در الگوریتم های ID3 و حذف کاندید:

· ID3 فضای فرضیهء کامل را جستجو می کند که به شکلی ناقص، این فضا را از فرضیات ساده تر به پیچیده تر تا زمانی که شرط نهایی تعیین شده برای آن برقرار شود، می گردد (تا زمانی که فرضیه ای سازگار با داده ها را بیابد). بایاس استنتاجی آن تنها نتیجه ای از ترتیبات فرضیات توسط استراتژی جستجوی آن است. فضای فرضیهء آن هیچ بایاس اضافی ندارد.

· الگوریتم فضای ورژن فضای فرضیهء ناقصی را جستجو می کند (فرضیه ای که فقط زیرمجموعه ای از مفاهیم قابل آموزش محتمل را توصیف کند). این فضا را کامل جستجو کرده و هر فرضیه ای در این فضا را که با داده های آموزشی سازگار باشد، می یابد. بایاس استنتاجی آن فقط نتیجه ای از توان توصیف بازنمایی فرضیهء آن است. استراتژی جستجوی آن هیچ بایاس اضافی تولید نمی کند.

تفاوت های بایاس الگوریتم های ID3 و حذف کاندید:

· بایاس استنتاجی ID3 از استراتژی جستجوی آن ناشی می شود؛ در حالی که بایاس استقرایی حذف کاندید از تعریف فضای جستجوی آن ناشی می شود.

· بنابراین بایاس استنتاجی ID3 برای فرضیات معینی نسبت به بقیه یک ارجحیت است (فرضیات کوتاه تر). (بایاس ارجحیت یا بایاس جستجو نامیده می شود). برخلاف آن بایاس حذف کاندید به شکل یک محدودیت حتمی روی مجموعهء فرضیات در نظر گرفته شده است. (بایاس محدودیت یا بایاس زبان نامیده می شود.)

· معمولا یک بایاس ارجحیت نسبت به یک بایاس محدودیت مطلوب تر می باشد؛ زیرا امکان می دهد که یادگیرنده با یک فضای فرضیهء کامل کار کند و مطمئن باشد که تابع هدف ناشناخته حتماً در این فضا وجود دارد. مخالف آن، یک بایاس محدودیت که شدیداً مجموعهء فرضیات احتمالی را محدود می کند کمتر مطلوب می باشد زیرا احتمال نادیده گرفتن تابع هدف ناشناخته وجود دارد.

· درحالی که الگوریتم حذف کاندید یک بایاس کاملاً محدودیت و الگوریتم ID3 بایاس کاملاً ارجحیت را بازنمایی نمایش می دهند؛ برخی سیستم های یادگیری هر دو نوع بایاس را ترکیب می کنند.

6-2- چرا فرضیات کوتاهتر را ترجیح می دهیم؟

سوال: آیا این که بایاس استقرایی ID3 متوجه درختان تصمیم کوتاهتر می باشد اساس درستی برای عام سازی با داده های آموزشی است؟

قانون خودتراش اوکام: ساده ترین فرضیه ای که با داده ها تطبیق می کند را انتخاب کن.

یک دلیل برای انتخاب فرضیات ساده تر این است که چون فرضیات کوتاه کمتری نسبت به فرضیات بلندتر وجود دارد (براساس استدلال های ترکیبی درست یا آسان) کمتر محتمل است که کسی فرضیهء کوتاهی را که با داده های آموزشی مطابق شود به شکل تصادفی بیابد. برخلاف آن اغلب بسیاری فرضیات پیچیده تر وجود دارد که با داده ای آموزشی فعلی منطبق می شوند اما برای عام سازی صحیح داده های بعدی شکست می خورند.

مثال: فرضیات درخت تصمیمی را درنظر بگیرید. درختان تصمیم 500 گره ای زیادی به نسبت درختان تصمیم 5 گره ای وجود دارند. با داشتن بیست مثال آموزشی انتظار می رود قادر به یافتن درختان تصمیم 500 گره ای بسیاری باشیم که با این داده ها سازگار باشند. همچنین ممکن است اعتقاد داشته باشیم که درختی با 5 گره کمتر ممکن است تصادف آماری باشد و با این استدلال فرضیهء 500 گره ای را انتخاب کنیم.

این استدلال یک مشکل بزرگ دارد: با همان استدلال می توانیم بگوییم که ممکن است کسی درختی با 17 گرهء برگ و یازده گرهء غیر برگ، صفت تصمیم A1 را در ریشه و صفت A2 تا A11 را به ترتیب عددی در درخت بکار ببرد. چون در عمل تعداد چنین درختانی کم است شانس یافتن چنین درختی که با داده های عددی سازگار باشد کوچک می باشد. مشکل اینجاست که تعداد زیادی از مجموعه های بسیار کوچک از فرضیات وجود دارند که شخص می تواند تعریف کند. چرا باید اعتقاد داشته باشیم که مجموعهء کوچک فرضیات حاوی درختان تصمیم با توصیفات کوتاه، باید از بسیاری از دیگر مجموعه های کوچک فرضیات که ممکن است تعریف کنیم مرتبط تر باشد؟

مشکل دیگر آن است که اندازهء یک فرضیه با بازنمایی خاصی که به شکل درونی توسط یادگیرنده بکار می رود تعیین می شود. دو یادگیرنده که از بازنمایی های داخلی مختلفی استفاده می کنند، حتی اگر از قانون خودتراش اوکام استفاده کنند به فرضیات مختلفی می رسند.

این استدلال نشان می دهد که دو یادگیرنده که از قانون خودتراش اوکام و یک مجموعه از مثال های آموزشی استفاده می کنند در صورتی که بازنمایی های داخلی متفاوتی را بکاربرند دو فرضیهء مختلف را تولید خواهند کرد.

7- مسائل در یادگیری درخت تصمیم

مسائل عملی در یادگیری درختان تصمیم

· تا چه عمقی درخت باید رشد داده شود

· بکاربردن صفات پیوسته

· انتخات یک معیار انتخاب صفت مناسب

· بکاربردن داده های آموزشی با صفات فاقد مقدار

· استفاده از صفات با هزینه های مختلف

· بهبود کارایی محاسباتی

· خطا در مثال های آموزشی

· یک درخت تصمیم اورفیت شده

· مثال های آموزشی ناکافی

· ممانعت از اورفیتینگ داده ها

7-1- اورفیتینگ داده ها

الگوریتم ID3 هر شاخهء درخت را تا عمقی رشد می دهد که درخت بتواند مثال های آموزشی را کاملاً دسته بندی کند. هرچند این استراتژی مناسب می باشد، زمانی که در داده ها نویز وجود داشته باشد و یا تعداد مثال های آموزشی برای تولید نمونه ای از تابع هدف صحیح بسیار کم است می تواند برای باعث مشکلاتی شود. در هر یک از این حالات، الگوریتم ID3 می تواند درختانی را تولید کند که مثال های آموزشی را اورفیت می کنند. وقتی درخت با نویز در داده ها سازگار شود اورفیتینگ رخ داده است و در این هنگام ممکن است روی داده های مجموعهء تست بدتر عمل کند.

اورفیتینگ یک مسئلهء عملی مهم برای یادگیری درختان تصمیم و بسیاری متدهای یادگیری دیگر می باشد. برای مثال با مطالعات آزمایشگاهی روی پنج وظیفهء یادگیری با داده های حاوی نویز غیرقطعی، نشان داده شد که اورفیتینگ دقت درخت تصمیم یادگیری شده را 10 تا 25 درصد کاهش می دهد.

یک فرضیه باعث اورفیت مثال های آموزشی می شود اگر فرضیهء دیگری وجود داشته باشد که کمتر با مثال های آموزشی سازگار بوده اما روی توزیع کلی نمونه ها (نمونه های غیر مثال های آموزشی) بهتر عمل کند.

خطای مجموعهء آموزشی - تعداد نمونه هایی که مقدار پیش بینی شدهء آنها توسط درخت یادگیری شده با مقدار واقعی آنها متفاوت است. هرچه این مقدار کوچکتر باشد بهتر است.

برای درک تفاوت بین خطای مجموعهء آموزشی و خطای مجموعهء تست این قسمت را ببینید.

---------------------------

یک مجموعهء دادهء آموزشی را بدین شکل می سازیم که تعداد ورودی ها (یا صفات از a تا e) پنج بیت بوده که تمام 32 حالت ترکیب ممکن را می پوشانند. خروجی یا صفت y، همان بیت پنجم می باشد که برای گنجاندن خطا در مثال های آموزشی، 25 درصد از مقادیر y را مخالف eها انتخاب کردیم.

a

b

c

d

e

y خروجی (همان مقادیر صفت e بغیر از 25 درصد موارد)

0

0

0

0

0

0

0

0

0

0

1

0

0

0

0

1

0

0

0

0

0

1

1

1

0

0

1

0

0

1

:

:

:

:

:

:

1

1

1

1

1

1

تعداد کل نمونه ها 32 رکورد می باشد. حال فرض کنید شخصی یک مجموعهء تست را مطابق همین روش تولید کند که این مجموعهء تست جز در برخی موارد تصادفی، در مابقی نمونه ها همانند مجموعهء آموزشی می باشد. برخی مقادیر صفت y که در مجموعهء آموزشی اشتباه می باشند (خراب شده اند) در مجموعهء تست صحیح بوده و برخی مقادیر صفت y که در مجموعهء آموزشی صحیح هستند در مجموعهء تست خراب شده اند.

در این مرحله درخت را می سازیم که این درخت دقیقاً 32 گرهء برگ دارد که کاملاً نمونه های آموزشی را دسته بندی کرده بنابراین خطای این درخت روی مجموعهء آموزشی صفر می باشد.

بعد از ساخت درخت، 25 درصد برچسب این گره های برگ خراب خواهند بود.

4/3 گره های درخت صحیح می باشند.

4/1 گره های درخت خراب هستند.

16/3 مجموعهء تست به شکل اشتباه پیش بینی می شوند چون رکورد تست خراب است.

16/1 مجموعهء تست به اشتباه به عنوان صحیح پیش بینی می شوند.

4/1 رکوردهای مجموعهء تست خراب هستند

16/9 پیش بینی های تست صحیح خواهد بود.

16/3 پیش بینی های تست اشتباه خواهد بود زیرا گرهء درخت اشتباه است.

4/3 رکوردهای مجموعهء تست صحیح می باشند.

در نهایت انتظار داریم که 8/3 پیش بینی های مجموعهء تست اشتباه باشد.

این مثال تفاوت بین خطاهای مجموعهء آموزشی و تست را نشان می دهد.

------------------------------

تعریف: با داشتن فضای فرضیهء H، گفته می شود فرضیهء h∊H داد های آموزشی را اورفیت می کند اگر فرضیهء دیگری بنام h`∊H باشد بطوری که h خطای کمتری نسبت h` روی دسته بندی مثال های آموزشی داشته اما h` خطای کمتری به نسبت h روی تمام توزیع نمونه ها داشته باشد.

به عبارت دیگر، اگر errortrain(h) خطای تابع h روی داده های آموزشی و errorD(h) خطای تابع h روی کل توزیع داده ها باشد فرضیهء h∊H داده های آموزشی را اورفیت می کند، اگر فرضیهء h`∊H دیگری وجود داشته باشد به شکلی که errortrain(h) < errortrain(h') و errorD(h) > errorD(h') باشد.

در طی زمانی که ID3 گره هایی برای رشد درخت تصمیم به آن می افزاید دقت درخت یادگیری شده از مثال های آموزشی، به شکل یکنواخت افزایش می یابد. اما هنگامی که این اندازه گیری روی مجموعه ای از مثال های تست مستقل از مثال های آموزشی انجام می شود، دقت ابتدا رشد کرده و سپس کاهش می یابد. خط توپر در شکل دقت درخت تصمیم روی مثال های آموزشی، و خط شکسته، دقت اندازه گیری شده روی یک مجموعه از مثال های تست مستقل از مثال های آموزشی را نشان می دهد.

چرا درخت یادگیری شده روی مثال های آموزشی عالی عمل کرده اما در دسته بندی مثال های تست شکست می خورند؟

1- وقتی مثال های آموزشی حاوی خطا یا نویزهای تصادفی هستند.

مثال:

برای افزودن این مثال آموزشی که به غلط منفی ارزیابی شده است:

درخت حاصل از افزودن این مثال آموزشی غلط باعث تغییر درخت به شکل زیر می شود:

درخت یادگیری شده توسط مثال های آموزشی

درخت اورفیت شده با دادهء غلط

در حقیقت افزودن مثال غلط باعث می شود ساخت درخت پیچیده تری می شود. نتیجه آن است که ID3 درخت تصمیمی (h) خروجی می دهد که پیچیده تر از درخت ابتدایی (h`) است. البته h با مجموعهء مثال های آموزشی سازگار می شود درحالی که درخت h` ساده تر سازگار نیست. هرچند بادانستن اینکه گرهء تصمیم افزوده شدهء جدید نتیجهء فیت شدن مثال آموزشی نویزی است، انتظار داریم که h، روی داده های بعدی از همان توزیع نمونه، نتایج بهتری از درختh` بدست آورد.

2- اورفیتیک وقتی داده ها بدون نویز هستند خصوصاً وقتی تعداد کمی از مثال ها در گره های برگی وجود دارند ممکن است رخ دهد.

در این مورد ممکن است نظم تصادفی نیز رخ دهد که در این حالت برخی صفات، مثال ها را خوب پارتیشن می کنند هرچند به تابع هدف واقعی نامرتبط باشد. هرزمان که چنین قاعده و نظم های تصادفی موجود باشد خطر اورفیتینگ نیز وجود دارد.

در یک مطالعهء آزمایشگاهی که با داده های غیرقطعی نویزی انجام شد این نتیجه بدست آمد که اورفیتینگ دقت درختان تصمیم یادگیری شده را از 10 تا 25 درصد کاهش می دهد.

7-2- روشهای موجود برای ممانعت از اورفیتینگ

معمولاً از قبل نمی دانیم که چه نمونه هایی نامربوط هستند و این ممکن است که به نوع و زمینهء داده ها برگردد اما می توان از روشهای آماری ساده برای هشدار در زمان وقوع اورفیتینگ استفاده کرد مانند (تست Chi-Squared). روش های بکار رفته برای ممانعت از اورفیتینگ، عموماً روشهای هرس نامیده می شوند.

7-2-1- انواع روش های هرس کردن

1) روش هرس از قبل: روش هایی که در آنها، رشد درخت قبل از اینکه به نقطه ای برسد که کاملاً مثال های آموزشی را دسته بندی کند متوقف می شوند. (مشکل این روش ها در تعیین زمان توقف رشد درخت است.). نمونه هایی از معیارهای متوقف کردن رشد درخت:

- وقتی نفع اطلاعات کمتر از مقدار ثابت E باشد.

- از تست chi-squared برای آزمایش معناداری تقسیم بیشتر مثال های آموزشی استفاده می کنیم.

- معیار MDLرا بکار گرفته و در صورتی که رشد بیشتر باعث کاهش این معیار شود، اجازهء رشد درخت را می دهیم.

2) روش هرس بعدی: روشهایی که اجازه می دهند درخت کاملاً ساخته شود و داده ها را اورفیت کند، سپس آن را هرس می کنند. (این روش ها در عمل موفق تر هستند.)

- دو تکنیک برای هرس بعدی استفاده می شود:

الف) جایگزینی زیردرخت: تمام زیر درخت با یک گرهء برگ جایگزین می شود. این تکینک درخت را کمی عام تر می کند اما دقت را افزایش می دهد.

ب) بالا کشیدن زیردرخت: تمام زیردرخت به جای گره ای دیگر جایگزین می شود.

هر دو روش ذکر شده نیازمند معیاری برای تعیین اندازهء درخت نهایی هستند. روش های تعیین اندازهء درخت نهایی، شامل:

· روش مجموعهء آموزش و تایید- استفاده از مجموعه ای از مثال های مستقل از مثال های آموزشی برای ارزیابی سودمندی گره های هرس شدهء بعدی از درخت.

· استفاده از تمام داده های موجود برای آموزش و سپس استفاده از یک تست آماری (مثلاً استفاده از تست Chi-square) برای برآورد اینکه آیا توسعه (یا هرس) یک گرهء خاص، احتمالاً بهبودی را در مجموعهء آزمایشی ایجاد می کند.

· استفاده از یک معیار صریح پیچیدگی برای کدکردن مثال های آزمایشی و درخت تصمیم، و متوقف کردن رشد درخت، زمانی که این معیار کدگزاری، حداقل شد. این روش برپایهء شهودی است که قانون طول توصیف حداقل نامیده می شود.

روش مجموعهء آزمایش و تایید:

در این روش داده های حاضر به دو بخش تقسیم می شوند:

· یک مجموعهء آموزشی که برای ایجاد فرضیهء یادگیری شده استفاده می شود.

· یک مجموعهء تایید که برای ارزیابی دقت این فرضیه روی داده های بعدی و خصوصاً تاثیر فرضیهء هرس کردن بکار می رود.

حتی اگر یادگیرنده با خطاهای تصادفی و نظم های تصادفی در مجموعهء آموزشی گمراه شود، مجموعهء تایید به ندرت همان نوسانات را نشان داده و می تواند کنترل مطمئنی را علیه اورفیتینگ صفات نویزی و نادرست مجموعهء آموزشی فراهم کند. مجموعهء تایید باید به اندازهء کافی بزرگ باشد که بتواند نمونهء قابل توجه آماری از نمونه ها را فراهم کند. یک شهود رایج، تقسیم داده به سه قسمت و استفاده از دو سوم آن برای داده های آموزشی و یک سوم برای داده های تست است (مجموعهء تست یک دوم مجموعهء داده های آموزشی باشد).

-----------------

7-2-1-1- تست chi-Square:

این تست مشابه تست های دیگر آماری است که میزان ارتباط یا وابستگی بین متغیرها را اندازه گیری می کنند. همچنین می تواند برای تست وابستگی بین یک یا چند گروه نیز بکار رود که این کار را با مقایسهء تعداد واقعی نمونه های (مشاهده شده) در هر گروه، با نمونه هایی که مطابق تئوری یا احتمال، انتظار می رود دیده شوند انجام می دهد.

تست مربعیchi-square برپایهء یک تست آماری (χ2) می باشد و برای استفاده از این تست نیاز است که داده ها به شکل تعداد تکرار بیان شوند.

پنچ گام در یک تست chi-square:

1) فرضیاتی که باید تست شوند و نتایجی که باید پیش بینی شوند را بیان کنید. داده ها را با استفاده از آزمایشات مناسب بدست آورید.

مثال - فرضیه: دو متغیر با هم ارتباط دارند.

2) برای هر دستهء مشاهده شده، تعداد مورد انتظار را تعیین کنید. (بجای درصد از عدد استفاده کنید.)

3) با استفاده از فرمول زیر مقدار χ2 و p را محاسبه کنید.

å

=

count

expected

count)

expected

-

count

(observed

2

2

c

مجموع روی تمام سلول های موجود در جدول می باشد. مقدار p برای تست آماری مقدار زیر می باشد:

p-value = P(X> χ2)

که X یک توزیع chi-square با درجهء آزادی (r-1)*(c-1) است. ثابت های r و c به ترتیب تعداد دسته های موجود برای دو متغیر مورد آزمایش هستند.

4) تعیین کنید که آیا نتیجه از نظر آماری با معناست یا خیر. اگر مقدار p کمتر از آلفا شود نتایج بامعنا هستند (آلفا سطح بامعنایی است و معمولاً α = 0.05 می باشد).

5) نتیجه را به شکل فرضیات خود گرارش کنید.

الف) اگر برای χ2، مقدار p > 0.05 است فرضیهء خود را قبول کنید چون مقدار انحراف به اندازهء کافی کوچک می باشد که عامل تصادف بتنهایی در آن دخیل باشد.

ب) اگر برای χ2، مقدار p < 0.05 است فرضیه را رد کرده و نتیجه بگیرید که فاکتور دیگری بجز تصادف عمل می کند که انحراف تا این مقدار بزرگ است.

-----------------

7-2-2- هرس خطای کاهش یافته

استفاده از مجموعهء تایید برای جلوگیری از اورفیتینگ:

داده ها را به مجموعهء آموزشی و تایید تقسیم کرده و تا زمانی که هرس کردن بیشتر صدمه بزند این مراحل را تکرار می کنیم: تاثیر هرس کردن هر گرهء ممکن (و گره های فرزندش) را روی مجموعهء تایید ارزیابی کرده، سپس گره ای را که حذف آن بیشترین بهبود را روی دقت مجموعهء تایید می دهد را به شکل حریصانه حذف می کنیم.

هر گرهء تصمیم درخت را کاندیدی برای هرس در نظر می گیریم. هرس یک گرهء تصمیم شامل حذف زیردرخت منتج به آن گره و تبدیل آن گره به یک گرهء برگ و انتساب رایج ترین دسته بندی برای مثال های آموزشی فرزندان آن گره به عنوان دسته بندی گرهء موردنظر می باشد. گره ها فقط زمانی حذف می شوند که درخت بدست آمده از عمل هرس، بدتر از درخت اولیه روی مجموعهء تایید عمل نکند.

تاثیر: هر گرهء برگی که بخاطر نظم های تصادفی در مجموعهء آموزشی به درخت اضافه شود چون کمتر ممکن است که همان نظم ها در مجموعهء تایید نیز رخ دهد، هرس خواهد شد. همیشه گره ای برای هرس انتخاب می شود که حذف آن بیشترین افزایش را در دقت درخت تصمیم روی مجموعهء تایید داشته باشد. گره ها مکرراً هرس شده و این عمل تا جایی ادامه می یابد که هرس کردن بیشتر دقت درخت را کاهش دهد.

وقتی هرس آغاز می شود درخت در بیشترین سایز خود بوده و کمترین دقت خود را روی مجموعهء تست دارد. همانطور که هرس پیش می رود، تعداد گره ها کاهش یافته و دقت روی مجموعهء تست افزایش می یابد. این روش کوچکترین نسخهء صحیح ترین زیردرخت را تولید می کند.

داده ها به سه قسمت تقسیم می شوند:

· داده های آموزشی: برای آموزش درخت بکار می روند.

· داده های تایید: برای هرس درخت بکار می روند.

· داده های تست: برای تست درخت روی نمونه های نادیده بکارمی روند.

مشکل این روش: وقتی داده ها محدود هستند تعداد نمونه های در دسترس برای آموزش، کم خواهد بود. (راه حل آن استفاده از تکنیک های اضافی مثل تقسیم داده های در دسترس - چندین دفعهء به چندین روش - سپس میانگین گرفتن نتایج یا استفاده از روشهای دیگر مثل هرس قانون بعدی می باشد.)

7-2-3- هرس بعدی قانون

این روش موثرترین روش عملی برای یافتن فرضیات با دقت بالاست و زمانی که داده ها محدود هستند مفید است.

گام های هرس بعدی قانون:

1- تا جایی که مثال های آموزشی با درخت تصمیم سازگار هستند درخت تصمیم را از روی داده های آموزشی ساخته و اجازه می دهیم اورفیتینگ رخ دهد.

2- با ایجاد یک قانون برای هر مسیر از گره ریشه به هر گره برگ، درخت یادگیری شده را به مجموعهء معادل قانونها تبدیل می کنیم.

3- هر قانون را جداگانه درنظر می گیریم،

· حذف هر پارامتر را جداگانه در نظر می گیریم یعنی (outlook==sunny) و (humidity==high) و (outlook==sunny)^(humidity==high).

· پارامتری را حذف می کنیم که حذف آن بهترین بهبود را در دقت در بردارد. در این مرحله می توان از مجموعهء تایید یا معیارهای آماری برای تعیین دقت استفاده کرد. عمل حذف را تا زمانی که حذف بیشتر بهبودی حاصل نکند تکرار می کنیم.

4- قانون ها ی هرس شده را براساس دقت برآورد شدهء آنها مرتب کرده و در زمان دسته بندی نمونه های بعدی، از بیشترین تا کمترین دقت درنظر می گیریم.

برای هر گرهء برگ در درخت یک قانون تولید می شود. هر صفت تست در مسیر گرهء ریشه به گرهء برگ یک پیش شرط قانون شده و دسته بندی گره برگ نتیجهء شرط می شود. سپس هر قانون با حذف پیش شرط یا نتیجهء شرطی که حذف آن، دقت برآورد شده را بدتر نکند هرس می شود. اگر گام بعدی در هرس باعث شود دقت قانون برآورد شده بدتر شود هرس بیشتری انجام نمی شود.

تفاوت هرس درخت با هرس بعدی قانون درخت

هرس بعدی قانون درخت کلی تر بوده و می توانیم در آن صفتی را از بالای درخت بدون حذف تمام صفات زیر آن حذف کنیم.

مثال: یادگیری درخت تصمیم برای تابع A ∨ B:

بازنمایی درخت تابع A ∨ B

تبدیل درخت موجود به قانون

if A=true then true

if A=false and B=true then true

if A=false and B=false then false

مرحلهء هرس قانون ها:

if A=true then true

if A=false and B=true then true

if A=false and B=false then false

قانون های نتیجه شده:

if A=true then true

if B=true then true

if A=false and B=false then false

قانونهایی که A ( ((A(B) را بازنمایی می کردند بعد از هرس تابع A ∨ B را بازنمایی می کنند.

روش های موجود برای تخمین دقت قانون:

· استفاده از یک مجموعهء تایید مستقل از مجموعهء آموزشی.

· ارزیابی کارایی براساس داده های مجموعهء آموزشی - با استفاده از یک تخمین بدبینانه برای رسیدن به این حقیقت که دادهء آموزشی یک تخمین متمایل به نفع قانون ها را می دهد. الگوریتم C4.5، تخمین بدبینانهء خود را با محاسبهء دقت قانون روی مثال های آموزشی که به آنها اعمال می کند انجام داده و سپس انحراف استاندارد در این دقت تخمین زده شده را با فرض یک توزیع دوجمله ای محاسبه می کند. برای یک سطح اطمینان داده شده، حد پایین تخمین به عنوان معیار کارایی قانون درنظر گرفته می شود. تاثیرخالص آن این است که برای مجموعه های داده ای بزرگ، تخمین بدبینانه به دقت مشاهده شده بسیار نزدیک بوده (یعنی انحراف استاندارد بسیار کوچک است) و زمانی که اندازهء مجموعهء داده ای کوچک می گردد، از دقت مشاهده شده دور می شود.

برای فاصلهء اطمینان = 95%

انحراف استاندارد تخمین زده شده *1.96 - دقت مشاهده شده روی مجموعهء آموزشی

مزایای تبدیل درخت تصمیم به قانون ها:

· فهم قوانین آسان تر است، بنابراین تبدیل درخت تصمیم به قانون ها، خوانایی و قهم آن را بهتر می کند.

· تبدیل درخت تصمیم به قانون ها، تفاوت بین صفت های تست که نزدیک ریشهء درخت هستند و آنهایی که نزدیک برگ ها وجود دارند را از بین می برد. می توان در حالتی که درخت تبدیل به قانون شده است، پیش شرطی مربوط به گرهء ریشه از یک قانون را حذف کرد بدون اینکه دیگر پیش شرط های مربوط به آن قانون حذف شوند؛ در صورتی که در شکل بازنمایی درخت گونه، حذف ریشه یا یک گره بدون حذف گره های فرزند آن امکان ندارد.

· تبدیل به قانون امکان متمایز کردن زمینه ها یا مفاهیم مختلفی را که در آن یک گره تصمیم استفاده می شود می دهد. چون هر مسیر مجزا بواسطهء یک گرهء درخت تصمیم، یک قانون جداگانه تولید می کند، تصمیم هرس در مورد آن صفت تست می تواند متفاوت از هر مسیر دیگری انجام شود. مخالف آن، اگر خود درخت هرس می شد، فقط دو انتخاب می توانست حذف گره به شکل کامل یا حفظ آن به شکل اولیهء آن باشد.

7-3- بکاربردن صفات با مقادیر پیوسته

دو شرط برای ساخت درخت تصمیم پایهء الگوریتم ID3:

· صفت هدف باید گسسته باشد.

· صفات تست شده در گره های تصمیم باید گسسته باشند.

یک راه حل می تواند این باشد که برای هر مقدار حقیقی موجود برای صفت تصمیم انتخاب شده در یک گره یک شاخه ایجاد شود که برای بیشتر موارد شاخه های درخت بسیار زیاد شده و اورفیت رخ می دهد. با تعریف صفات مقدار گسسته که مقادیر صفت پیوسته را به مجموعه های فاصله های گسسته افراز می کنند، می توان شرط دوم را حذف کرد. به خصوص برای صفت A که مقدار پیوسته دارد، الگوریتم می تواند یک صفت بولی Ac تولید کند که اگر A

چگونگی انتخاب بهترین مقدار برای آستانهء c:

مثال:

برای وارد کردن صفت مقدار پیوستهء Temperature در مثال های آموزشی، جدول زیر را برای مقادیر هدف متناظر با صفت دما درنظر بگیرید:

90

80

72

60

48

40

Temperature

no

yes

yes

yes

no

no

PlayTennis

آستانهء مورد نظر باید بیشترین نفع اطلاعاتی را به ما بدهد. با مرتب کردن مثال ها برطبق صفت مقدار پیوستهء Temperature و سپس تشخیص مثال های مجاور هم که در دسته بندی هدف متفاوت هستند، می توان مجموعه ای از آستانه های میانی را بین مقادیر متناظر Temperature تولید کرد. آستانه های کاندید می تواند با محاسبهء نفع اطلاعاتی هر یک از آنها ارزیابی شوند.

در این مثال، دو آستانهء کاندید متناظر با مقادیر Temperature که در آنها مقدار PlayTennis تغییر می کند وجود دارد:

(80+90)/2 gain Info: Temperature>54

(48+60)/ 2 gain Info: Temperature>85

بنابراین دومین آستانه بهتر است.

روش دیگر:

برای هر ارزیابی مناسب بودن استفاده از یک صفت حقیقی از مقدارIG*(Y|X) را بکار می بریم.

مقدار نفع اطلاعاتیIG(Y|X:t) را به شکل احتمال زیر تعریف می کنیم:

IG(Y|X:t) = H(Y) - H(Y|X:t)

H(Y|X:t) = H(Y|X < t) P(X < t) + H(Y|X >= t) P(X >= t)

مقدار IG(Y|X:t)، نفع اطلاعاتی می باشد برای پیش بینی Y در زمانی می باشد که تنها اطلاعات ما این است که آیا X بزرگتر یا کوچکتر از مقدار t است.

سپس IG*(Y|X) = maxt IG(Y|X:t) را تعریف می کنیم که در این قسمت بهترین مقدار برای صفت X را می یابیم که با افراز نمونه ها با آن، مقدار نفع اطلاعاتی حاصل بیشترین مقدار می شود.

برای ساخت درخت در این روش، رکوردها را مطابق مقادیر صفت X به شکل صعودی مرتب کرده، سپس جدول احتمال 2xny برای محاسبهء IG(Y|X:xmin) را می سازیم. ny یک Y تایی (تعداد مقادیر متمایز Y) است. ستونهای این جدول مقادیر ممکن برای y و سطرهای جدول را برای تمام Xها، با Xxmin می باشند که مقادیر موجود در یک سلول جدول، برابر تعداد رکوردهای موجود در نمونه ها می باشد که با شرایط سطر و ستون متناظر با آن سلول مطابقت می کند.

با حرکت بین رکوردها، هر آستانهء بین مقادیر X مجاور را تست کرده و جدول را به تدریج بروز می کنیم (این عمل را برای همهء رکوردها انجام می دهیم). بهبودی برای بالا بردن سرعت آن است که می توان تست را فقط بین رکوردهایی انجام داد که در آنها مقادیر Y تغییر می کنند.

بعد از تکمیل جدول مقادیر IG*(Y|X)ها بدست آورده و درخت را می سازیم و سپس هرس می کنیم.

روش های دیگر:

· در توسعه ای به روش توصیف شده، به جای تقسیم مقدار پیوستهء یک صفت براساس یک آستانه به دو فاصله، آن را به چندین فاصله تقسیم می کند.

· روش هایی که با آستانه گیری ترکیب خطی از چندین صفت مقدار پیوسته، ویژگی هایی را تعریف می کند.

7-4- معیارهای دیگر برای انتخاب صفات

صفاتی مانند Date علی رغم آنکه مقادیر ممکن زیادی دارند که برای جدا کردن مثال های آموزشی به زیرمجموعه های بسیار کوچک مناسب است؛ نمی توانند به عنوان صفت تصمیم انتخاب شوند. به همین دلیل نفع اطلاعاتی بسیار بالایی دارند، هرچند می تواند پیش بینی کنندهء بسیار ضعیفی از تابع هدف روی نمونه های ندیده باشند. این صفات درختانی با عمق بسیار پایین و تعداد شاخه های خروجی بسیار زیاد در درخت تصمیم ایجاد می کنند.

معیارهای دیگر:

GainRatio:

این معیار، صفاتی مانند Date (با نفع اطلاعاتی بسیار بالا و پیش بینی کنندگی بسیار ضعیف از تابع هدف) را با داخل کردن اصطلاح ویژه ای به نام اطلاعات بخش بندی جریمه می کند که معیار فوق نسبت به اینکه صفت موردنظر چگونه به شکل یکتا و وسیعی داده ها را افراز می کند حساس است.

SplitInformation(S,A)

S1 تا Sc ، c زیرمجموعهء مثال های حاصل از افرازبندی مجموعهء S توسط صفت c مقداری A است. SplitInformation، بی نظمی S با توجه به مقادیر صفت A است.

GainRatio(S,A) ≡

A)

mation(S,

SplitInfor

A)

Gain(S,

عبارت SplitInformation(S,A) مانع از انتخاب صفاتی با مقادیر تقسیم شدهء بطور یکسان می شود.

مثال:

مجموعه ای از n مثال که کاملاً با صفت A جدا شده اند.

SplitInformation(S,A) = log2 n

اگر صفت بولی B همین مثال ها را دقیقاً به نصف افراز کند، مقدار SplitInformation برای آن یک می شود.

درهنگام استفاده از GainRatio به جای معیار نفع اطلاعاتی باید توجه داشته باشیم که وقتی |Si|≈|S| می باشد، برای یکی از Siها ممکن است مخرج بسیار کوچک یا صفر شود. می توان ابتدا نفع اطلاعاتی هر صفت را محاسبه کرد سپس تست GainRatio را فقط با درنظر گرفتن صفاتی که نفع اطلاعاتی بالای متوسط دارند اعمال کرد.

معیار مبتنی بر فاصله:

براساس تعریف یک معیار فاصله ای، بین افرازهای داده است. هر صفت براساس فاصلهء داده ای که ایجاد کرده و افراز کامل (افرازی که کاملاً داده های آموزشی را دسته بندی می کند) ارزیابی می شود. صفتی که افراز آن به افراز کامل نزدیکترین باشد انتخاب می شود. اثبات شده است که این معیار به صفاتی با تعداد مقادیر زیاد (مانند Date)، متمایل نیست.

مزیت: مانع مشکلات عملی معیار GainRatio شده و در مورد مجموعه های داده ای که صفات آنها تنوع مقادیر بسیار زیاد دارند، درختان کوچکتری تولید می کنند.

7-5- بکاربردن مثال های آموزشی با صفات فاقد مقدار

در حالتی که مجموعهء داده ای حاوی صفاتی فاقد مقدار باشند، یک راه حل، تخمین زدن مقدار صفت فاقد مقدار براساس مثال های دیگری است که صفت موردنظر در آنها مقدار دارد.

در حالتی که با داشتن مثال آموزشی و خواستار محاسبهء Gain(S,A) در گرهء n هستیم اما مقدار A(x) نامشخص است:

· یک استراتژی، انتساب مقداری به A(x) است که رایج ترین مقدار برای A(x) در بین مثال های آموزشی در گرهء n می باشد.

· استراتژی دیگر، جایگزینی رایج ترین مقادیر بین مثال های آموزشی در گرهء n که دسته بندی c(x) را دارند می باشد. مثال آموزشی ساخته شده با این مقدار تخمین زده شده برای A(x)، می تواند مستقیماً با الگوریتم یادگیری درخت تصمیم موجود استفاده شود.

· بجای انتساب رایج ترین مقدار به A، احتمال هر مقدار ممکن A(x) را به وی نسبت می دهیم. احتمال براساس تکرارهای مشاهده شده از مقادیر مختلف صفت A در مثال های گرهء n محاسبه می شود.

برای مثال با داشتن صفت بولی A، اگر گره n شش مثال با A=1 و چهار مثال با A=0 داشته باشد آن گاه:

- احتمال A=1 برابر 0.6

- احتمال A=0 برابر 0.4

کسر 0.4 از مثال های x به شاخهء A=0 درخت و کسر 0.6 از آنها برایA=1، به شاخهء دیگر توزیع می شود.

این مثال های بخش شده:

برای محاسبهء نفع اطلاعات بکار رفته و اگر صفتی فاقد مقدار دیگری در شاخه های پایین تر درخت باید تست شود، بیشتر بخش شود.

بعد از یادگیری برای دسته بندی نمونه های جدیدی که مقادیر صفت آنها ناشناخته است می توانند بکار روند. در این حالت، دسته بندی نمونهء جدید، بسادگی محتمل ترین دسته بندی با بیشترین احتمال می باشد که توسط توسط مجموع وزن های بخش های نمونهء دسته بندی شده در گره های برگ درخت به راه های مختلف محاسبه شده است. (در الگوریتم C4.5 استفاده می شود)

7-6- بکاربردن صفات با هزینه های متفاوت

در برخی وظایف یادگیری، صفات نمونه ها ممکن است دارای هزینه های مختلفی باشند. برای مثال، در یادگیری دسته بندی بیماری های پزشکی، ممکن است بیمار را با صفاتی چون دما، نبض، نتایج آزمایش خون و ... توصیف کنیم. این صفات در هزینه های پولی و رفاهی متفاوت بوده و ترجیح می دهیم تا حد امکان درختان تصمیمی با صفات با هزینه های پایین تر بسازیم یا در صورت نیاز به دسته بندی های قابل اطمینان تر، از صفات گران تر استفاده کنیم.

در این موارد، عامل هرینه را در معیار انتخاب صفت دخالت می دهیم. مثلاً می توان نفع اطلاعاتی را به هزینه تقسیم کرد بطوری که صفات با هزینهء پایین تر ارجح باشند. در حالی که چنین معیارهای حساس به هزینه یافتن یک درخت تصمیم حساس به هزینهء بهینه را تضمین نمی کنند، جستجو را به سمت صفاتی با هزینهء پایین متمایل می کنند.

در آزمایشاتی به جای Gain می توان از

Cost(A)

A)

(S,

Gain

2

و یا

w

A

S

Gain

A

Cost

)

1

)

(

(

1

2

)

,

(

+

-

استفاده کرد که w∊[0,1] ثابتی است که اهمیت مربوط به هزینه در مقابل نفع اطلاعات را بازنمایی می کند.

8- عام سازی درخت

در ساخت درخت دو انتخاب وجود دارد: 1) طراحی درختی که تمام نمونه های آموزشی را به شکل صحیح دسته بندی کند (درخت کامل) و انتخاب کوچکترین درخت یا 2) ساخت درختی که کامل نبوده اما کمترین نرخ خطای ممکن در دسته بندی نمونه های تست را دارد (در عمل این روش مطلوب تر است).

در هر دو حالت کوچک نگاه داشتن اندازهء درخت تاحد امکان مطلوب است. دلایل آن این است که درختان کوچکتر زمان تست و نیاز حافظهء کمتری داشته و تمایل به عام سازی بهتر نمونه های نادیده دارند (چون به بی قاعدگی های آماری و طبیعت داده های آموزشی کمتر حساس هستند.)

8-1- طراحی یک دسته بندی کنندهء درخت تصمیم

اهداف اصلی دسته بندی کننده های درخت تصمیم:

1) دسته بندی صحیح نمونه های آموزشی تا حد امکان

2) عام سازی نمونه های آموزشی به شکلی که نمونه های نادیده بتوانند با دقت هرچه بیشتر دسته بندی شوند.

3) بروزرسانی آسان درخت، در صورت فراهم شدن نمونه های آموزشی جدید

4) داشتن یک ساختار تا سرحد امکان ساده.

طراحی یک دسته بندی کننده درخت تصمیم به وظایف زیر تقسیم می شود:

1) انتخاب مناسب ساختار درخت.

2) انتخاب زیرمجموعه های ویژگی برای استفاده در هر گرهء داخلی.

3) انتخاب قانون تصمیم یا استراتژی استفاده شده در هر گرهء داخلی.

گامهاي لازم براي طراحي يك درخت تصميمگيري:

1. انتخاب مناسبي براي ساختار درخت.

2. انتخاب ويژگيهايي مورد نظر براي تصميمگيري در هر يك از گرههاي مياني.

3. انتخاب قانون تصميمگيري يا استراتژي مورد استفاده در هر يك از گرههاي مياني.

8-2- روشهاي اصلی برای طراحی دسته بندی کنندهء درخت تصميم

1. روشهاي پايين به بالا

2. روشهاي بالا به پايين

3. روش تركيبي

4. روشهاي رشد دهنده-هرس كننده

روشهاي پايين به بالا:

طراح، با دسته های اطلاعاتی آغاز کرده و ترکیب کردن دسته ها را به شکل مداوم تا رسیدن به یک گره، که دربردارندهء تمام دسته ها می باشد ادامه می دهد.

روشهاي بالا به پايين :

در روشهاي بالا به پايين، از یک گرهء ریشه آغاز کرده و با استفاده از یک قانون جداکننده، دسته ها تا زمانی که یک شرط توقف برقرار شود تقسیم می شوند. مسائل اصلی در این روش شامل موارد زیر می باشد:

1. انتخاب معیار تقسيم گرهها

2. قوانین توقف

3. انتساب برچسب به گرههاي پاياني

(اكثر كارهاي انجا�