Тази статия включва прилагането и сравнението на контролирани многокласови алгоритми за класификация към набор от данни, който включва химическия състав (характеристики) и типовете (четири основни типа — цел) на неръждаемите стомани. Наборът от данни е доста малък като брой, но много точен.

Наборите от данни за сплав от неръждаема стомана обикновено са ограничени по размер, като по този начин ограничават приложенията на техниките за машинно обучение (ML) за класифициране. Проучих потенциала на 6 различни алгоритъма за класификация, в контекста на малък набор от данни от 62 проби, за прогнозиране на резултатите при класифициране на типове.

В тази статия многокласовата класификация беше анализирана с помощта на различни алгоритми, с цел класифициране на неръждаемите стомани чрез техния химичен състав (15 елемента). Има четири основни вида неръждаеми стомани и някои сплави имат много близки състави. Настройката на хиперпараметъра чрез търсене в мрежа също беше приложена за алгоритми Random Forest и XGBoost, за да се наблюдават възможни подобрения на показателите. Накрая бяха сравнени характеристиките на алгоритмите. След прилагането на тези алгоритми, успехите на моделите бяха оценени с подходящи показатели за ефективност.

Наборът от данни е изготвен с помощта на „„Данни за свойства при висока температура: железни сплави““.

Дефиницията на Wikipedia за „многокласова класификация“ е: „В машинното обучение многокласовата или мултиномиалнатакласификация е проблемът за класифициране на екземпляри в един от три или повече класа (класифицирането на екземпляри в един от два класа се нарича „двоична класификация“).

За класификационен анализ са използвани следните алгоритми:

· Класификатор на дървото на решенията,

· Класификатор на случайни гори,

· Класификатор XGBoost,

· Наивен Бейс,

· Поддържащи векторни машини (SVM),

· AdaBoost.

Следните въпроси бяха обхватът на това проучване:

  • Кой алгоритъм осигури най-добри резултати за многокласова класификация?
  • Успешна ли беше настройката на хиперпараметъра за подобряване на показателите?
  • Причина за лошите (ако има такива) показатели.
  • Безопасно ли е да се използват тези методи за многокласова класификация на сплави.

Почистване на данни

Първата стъпка е да импортирате и почистите данните (ако е необходимо) с помощта на pandas, преди да започнете анализа.

В набора от данни има 25 аустенитни (A), 17 мартензитни (M), 11 феритни (F) и 9 втвърдяващи се с утаяване (P) неръждаеми стомани.

Има 62 реда (неръждаеми стомани) и 17 колони (атрибути) с данни. 15 колони покриват информацията за химическия състав на сплавите. Първата колона е обозначението на AISI, а последната колона е типа на сплавта. Нашата цел е да оценим вида на стоманата.

По-долу са показани описателни статистики на набора от данни.

Някои проценти на елементи са почти стабилни (сяра), но процентите на хром и никел имат много широк диапазон (и тези два елемента са определящите елементи на неръждаемите стомани).

Корелацията може да бъде дефинирана като мярка за зависимостта на една променлива от другата. Две характеристики, които са силно свързани една с друга, ще предоставят твърде много и безполезна информация за намиране на целта. Топлинната карта по-долу показва, че най-високата корелация е между манган и азот. Манганът присъства във всяка стомана, но азотът дори не присъства в повечето от сплавите; така че запазих и двете.

Наборът от данни е чист (няма NaN, Dtype са правилни), така че ще започнем директно с Train-Test-Split и след това ще приложим алгоритмите.

Дървовиден класификатор на решения

Първият алгоритъм е Класификаторът на дървото на решенията. Той използва „дърво на решенията“ (като „модел за прогнозиране“), за да премине от наблюдения относно елемент (представен в клоновете) до заключения относно целевата стойност на елемента (представен в листата).

Резултатите са много добри; всъщност само един тип сплав е класифициран погрешно.

Случаен класификатор на горите

Случайните гори или горите със случайни решения са метод за „ансамбълно обучение“ за „класификация“, „регресия“ и други задачи, които работят чрез конструиране на множество „дървета за вземане на решения“ по време на обучение и извеждане на класа, който е „режимът“ на класове (класификация) или средно/средно прогнозиране (регресия) на отделните дървета.

Случайните гори обикновено превъзхождат дърветата на решенията, но тяхната точност е по-ниска от дърветата с градиентно усилване. Характеристиките на данните обаче могат да повлияят на тяхната производителност [ref].

Настройка на хиперпараметър с търсене в мрежа

Въпреки че получих задоволителни резултати с Random Forest Analysis, приложих настройка на хиперпараметър с Grid Search. Търсенето в мрежа е често срещан „метод за настройка“ на хиперпараметрите на модела. Алгоритъмът за търсене в мрежата е прост: подайте му набор от хиперпараметри и стойностите, които трябва да бъдат тествани за всеки хиперпараметър, и след това изпълнете изчерпателно търсене на всички възможни комбинации от тези стойности, обучавайки един модел за всеки набор от стойности. След това алгоритъмът сравнява резултатите на всеки модел, който обучава, и запазва най-добрия. Ето резултатите:

Хиперпараметричната настройка с Grid Search доведе резултатите до идеалното ниво - или пренастройване.

XGBoost Classifier

„XGBoost“ е добре известно, че предоставя по-добри решения от други алгоритми за машинно обучение. Всъщност от самото си създаване той се превърна в „най-модерния“ алгоритъм за машинно обучение за работа със структурирани данни.

Резултатите от класификатора XGBoost предоставиха най-добрите резултати за това проучване за класификация.

Настройка на хиперпараметър с търсене в мрежа

Още веднъж приложих настройката на хиперпараметъра с търсене в мрежа, въпреки че резултатите бяха почти перфектни.

Наивен класификатор на Бейс

Наивен алгоритъм на Bayes е алгоритъм за контролирано обучение, който се основава на теоремата на Bayesи се използва за решаване на проблеми с класификацията. Naive Bayes Classifier е един от простите и най-ефективни алгоритми за класификация, който помага при изграждането на модели за бързо машинно обучение, които могат да правят бързи прогнози.

Резултатите са показани по-долу:

Поддържащи векторни машини (SVM)

„Машините за опорни вектори“ (SVM, също мрежи за опорни вектори) са контролирани модели на обучение със свързани алгоритми за обучение, които анализират данни за класификация и регресионен анализ. SVM картографира примерите за обучение към точки в пространството, за да увеличи максимално ширината на разликата между двете категории. След това новите примери се картографират в същото пространство и се предвижда да принадлежат към категория въз основа на това от коя страна на празнината попадат.

Резултатите са показани по-долу:

AdaBoost

AdaBoost, съкратено от Adaptive Boosting, е метаалгоритъм за машинно обучение, който може да се използва заедно с много други типове алгоритми за обучение за подобряване на производителността. Резултатът от другите алгоритми за обучение („слаби обучаеми“) се комбинира в претеглена сума, която представлява крайния резултат на подсиления класификатор.

Резултатите са показани по-долу:

Заключение

В тази статия използвах шест различни алгоритма за контролирано машинно обучение (класификация) с цел класифициране на четири вида неръждаеми стомани (многокласни) според техния химичен състав, съставен от 15 елемента в сплавта. Наборът от данни включва 62 сплави; което го направи малък, но много точен набор от данни (цялата информация е взета от ASM International Sources (преди известно като American Society of Metals)).

Анализът предоставя доказателства, че:

· Като се имат предвид резултатите f1, методите Random Forest и XGBoost дадоха най-добри резултати (0,94).

· След настройка на хиперпараметъра чрез търсене в мрежата, резултатите за RF и XGBoost f1 скочиха до 100%.

· Няколко опита на един и същи алгоритъм доведоха до различни резултати с огромна разлика — най-вероятно поради ограничения размер на данните.

· Най-лошите f1 резултати са най-вече за класификацията на типовете, които имат най-малко номерирани групи; които бяха феритни и закалени чрез утаяване стомани.

· И накрая, тестова точност на класификация от 95%, постигната от 3 модела (DT, RF и XGBoost) и 100% от 2 настроени модела демонстрира, че подходът ML може да бъде ефективно приложен към класификацията на стоманата въпреки малкия брой сплави и хетерогенния вход параметри (химични състави). Въз основа на само 62 случая, моделите постигнаха много високо ниво на производителност за многокласова класификация на типа сплав.

Можете да получите достъп до тази статия и подобни на нея тук.