Змест[Схаваць][Паказаць]
Калі вы праграміст на Python або шукаеце магутны набор інструментаў для ўкаранення машыннага навучання ў вытворчую сістэму, Scikit-learn - гэта бібліятэка, якую вам трэба праверыць.
Scikit-learn добра задакументаваны і просты ў выкарыстанні, незалежна ад таго, што вы пачатковец у машынным навучанні, хочаце хутка пачаць працу або жадаеце выкарыстоўваць самы сучасны інструмент даследавання ML.
Гэта дазваляе пабудаваць мадэль прагназавання дадзеных усяго за некалькі радкоў кода, а затым выкарыстоўваць гэтую мадэль у адпаведнасці з вашымі дадзенымі ў якасці бібліятэкі высокага ўзроўню. Ён гнуткі і добра працуе з іншымі Бібліятэкі Python як Matplotlib для пабудовы дыяграм, NumPy для вектарызацыі масіваў і pandas для візуалізацыі даных.
У гэтым кіраўніцтве вы даведаецеся ўсё пра тое, што гэта такое, як вы можаце выкарыстоўваць яго, а таксама яго плюсы і мінусы.
Што такое Scikit-вучыся?
Scikit-learn (таксама вядомы як sklearn) прапануе разнастайны набор статыстычных мадэляў і машыннага навучання. У адрозненне ад большасці модуляў, sklearn распрацаваны на Python, а не на C. Нягледзячы на тое, што ён распрацаваны на Python, эфектыўнасць sklearn прыпісваецца выкарыстанню ім NumPy для высокапрадукцыйнай лінейнай алгебры і аперацый з масівамі.
Scikit-Learn быў створаны ў рамках праекта Google Summer of Code і з тых часоў зрабіў жыццё мільёнаў навукоўцаў па дадзеных Python па ўсім свеце прасцейшым. Гэты раздзел серыі сканцэнтраваны на прадстаўленні бібліятэкі і засяроджванні на адным элеменце - пераўтварэнні набораў даных, якія з'яўляюцца ключавым і жыццёва важным крокам перад распрацоўкай мадэлі прагназавання.
Бібліятэка заснавана на SciPy (Scientific Python), які павінен быць усталяваны, перш чым вы зможаце выкарыстоўваць scikit-learn. Гэты стэк змяшчае наступныя элементы:
- NumPy: стандартны пакет n-мернага масіва Python
- SciPy: Гэта фундаментальны пакет для навуковых вылічэнняў
- Pandas: структуры даных і аналіз
- Matplotlib: Гэта магутная бібліятэка 2D/3D пабудовы
- Sympy: Сімвалічная матэматыка
- IPython: Палепшаная інтэрактыўная кансоль
Прыкладанні бібліятэкі Scikit-learn
Scikit-learn - гэта пакет Python з адкрытым зыходным кодам са складаным аналізам даных і функцыямі майнинга. Ён пастаўляецца з мноствам убудаваных алгарытмаў, якія дапамогуць вам атрымаць максімальную аддачу ад вашых праектаў па даследаванні дадзеных. Бібліятэка Scikit-learn выкарыстоўваецца наступнымі спосабамі.
1. Рэгрэсія
Рэгрэсійны аналіз — гэта статыстычны метад аналізу і разумення сувязі паміж дзвюма ці больш зменнымі. Метад, які выкарыстоўваецца для рэгрэсійнага аналізу, дапамагае вызначыць, якія элементы з'яўляюцца актуальнымі, якія можна ігнараваць і як яны ўзаемадзейнічаюць. Метады рэгрэсіі, напрыклад, могуць быць выкарыстаны, каб лепш зразумець паводзіны коштаў акцый.
Алгарытмы рэгрэсіі ўключаюць у сябе:
- Linear Regression
- Рэгрэсія хрыбта
- Рэгрэсія Ласо
- Рэгрэсія дрэва рашэнняў
- Выпадковы лес
- Вектарныя машыны падтрымкі (SVM)
2. Класіфікацыя
Метад класіфікацыі - гэта падыход пад кантролем, які выкарыстоўвае навучальныя дадзеныя для вызначэння катэгорыі свежых назіранняў. Алгарытм у класіфікацыі вучыцца з дадзенага dataset або назіранняў, а затым класіфікуе дадатковыя назіранні ў адзін з многіх класаў або груп. Яны могуць, напрыклад, выкарыстоўвацца для класіфікацыі паведамленняў электроннай пошты як спаму ці не.
Алгарытмы класіфікацыі ўключаюць у сябе наступнае:
- Лагістычная рэгрэсія
- K-бліжэйшыя суседзі
- Апорная вектарная машына
- Дрэва рашэння
- Выпадковы лес
3. Кластарызацыя
Алгарытмы кластарызацыі ў Scikit-learn выкарыстоўваюцца для аўтаматычнага размяшчэння дадзеных з падобнымі ўласцівасцямі ў наборы. Кластарызацыя - гэта працэс групоўкі набору элементаў, каб тыя, што ўваходзяць у адну групу, былі больш падобнымі на прадметы іншых груп. Дадзеныя аб кліентах, напрыклад, могуць быць падзеленыя ў залежнасці ад іх месцазнаходжання.
Алгарытмы кластарызацыі ўключаюць у сябе наступнае:
- БД-СКАН
- K-Сродкі
- Міні-пакетныя K-сродкі
- Спектральная кластарызацыя
4. Выбар мадэлі
Алгарытмы выбару мадэлі забяспечваюць метады параўнання, праверкі і выбару аптымальных параметраў і мадэляў для выкарыстання ў ініцыятывах у галіне навукі аб даных. Улічваючы дадзеныя, выбар мадэлі - гэта праблема выбару статыстычнай мадэлі з групы мадэляў-кандыдатаў. У самых элементарных абставінах улічваецца ўжо існуючы збор даных. Аднак задача можа таксама ўключаць у сябе распрацоўку эксперыментаў так, каб атрыманыя дадзеныя добра падыходзілі да праблемы выбару мадэлі.
Модулі выбару мадэлі, якія могуць павысіць дакладнасць шляхам рэгулявання параметраў, уключаюць:
- Перакрыжаваная праверка
- Пошук па сетцы
- Метрыка
5. Памяншэнне памернасці
Перадача даных з прасторы высокай памернасці ў прастору з нізкай памернасцю, каб нізкамернае прадстаўленне захоўвала некаторыя значныя аспекты зыходных даных, у ідэале блізкія да іх уласцівага вымярэнню, вядома як памяншэнне памернасці. Колькасць выпадковых велічынь для аналізу памяншаецца, калі памяншаецца памернасць. Да прыкладу, знешнія дадзеныя не могуць лічыцца для павышэння эфектыўнасці візуалізацыі.
Алгарытм памяншэння памернасці ўключае ў сябе наступнае:
- выбар прыкмет
- Аналіз асноўных кампанентаў (PCA)
Ўстаноўка Scikit-learn
Перад выкарыстаннем Scikit-learn неабходна ўсталяваць NumPy, SciPy, Matplotlib, IPython, Sympy і Pandas. Давайце ўсталюем іх з дапамогай pip з кансолі (працуе толькі для Windows).
Давайце ўсталюем Scikit-learn цяпер, калі мы ўсталявалі неабходныя бібліятэкі.
Асаблівасці
Scikit-learn, часам вядомы як sklearn, - гэта набор інструментаў Python для рэалізацыі мадэляў машыннага навучання і статыстычнага мадэлявання. Мы можам выкарыстоўваць яго для стварэння некалькіх мадэляў машыннага навучання для рэгрэсіі, класіфікацыі і кластарызацыі, а таксама статыстычных інструментаў для ацэнкі гэтых мадэляў. Ён таксама ўключае ў сябе памяншэнне памернасці, выбар аб'ектаў, вылучэнне функцый, ансамблевыя падыходы і ўбудаваныя наборы даных. Мы будзем даследаваць кожную з гэтых якасцяў па адным.
1. Імпарт набораў даных
Scikit-learn ўключае ў сябе шэраг папярэдне створаных набораў даных, такіх як набор даных вясёлкавай абалонкі вочы, набор даных аб кошце дома, набор даных Titanic і гэтак далей. Ключавыя перавагі гэтых набораў даных у тым, што яны простыя для разумення і могуць быць выкарыстаны для неадкладнай распрацоўкі мадэляў ML. Гэтыя наборы даных падыходзяць для пачаткоўцаў. Аналагічным чынам вы можаце выкарыстоўваць sklearn для імпарту дадатковых набораў даных. Сапраўды гэтак жа вы можаце выкарыстоўваць яго для імпарту дадатковых набораў даных.
2. Раздзяленне набору даных для навучання і тэсціравання
Sklearn уключыў магчымасць падзяліць набор даных на сегменты навучання і тэставання. Раздзяленне набору даных патрабуецца для непрадузятай ацэнкі эфектыўнасці прагназавання. Мы можам паказаць, якая частка нашых дадзеных павінна быць уключана ў наборы дадзеных цягніка і тэсту. Мы падзялілі набор даных з дапамогай падзелу тэсту цягніка так, што набор цягнікоў уключае 80% даных, а тэставы набор - 20%. Набор даных можна падзяліць наступным чынам:
3. Лінейная рэгрэсія
Лінейная рэгрэсія - гэта метад машыннага навучання, заснаваны на кантролі. Ён выконвае працу рэгрэсіі. На аснове незалежных зменных рэгрэсія мадэлюе значэнне прагнозу мэты. У асноўным ён выкарыстоўваецца для вызначэння сувязі паміж зменнымі і прагназаваннем. Розныя рэгрэсійныя мадэлі адрозніваюцца з пункту гледжання тыпу сувязі, якую яны ацэньваюць паміж залежнымі і незалежнымі зменнымі, а таксама колькасці выкарыстоўваных незалежных зменных. Мы можам проста стварыць мадэль лінейнай рэгрэсіі з дапамогай sklearn наступным чынам:
4. Лагістычная рэгрэсія
Распаўсюджаны падыход да катэгарызацыі - гэта лагістычная рэгрэсія. Ён знаходзіцца ў тым жа сямействе, што і паліномная і лінейная рэгрэсія, і належыць да сямейства лінейных класіфікатараў. Вынікі лагістычнай рэгрэсіі простыя для разумення і хутка паддаюцца вылічэнні. Гэтак жа, як і лінейная рэгрэсія, лагістычная рэгрэсія з'яўляецца метадам кантраляванай рэгрэсіі. Выхадная зменная з'яўляецца катэгарычнай, так што гэта адзінае адрозненне. Ён можа вызначыць, ці ёсць у пацыента захворванне сэрца.
Розныя праблемы класіфікацыі, такія як выяўленне спаму, могуць быць вырашаны з дапамогай лагістычнай рэгрэсіі. Прагназаванне дыябету, вызначэнне таго, ці будзе спажывец купляць канкрэтны прадукт або пераходзіць на канкурэнта, вызначэнне таго, ці націснуць карыстальнік на пэўную маркетынгавую спасылку, і многія іншыя сцэнары - гэта толькі некалькі прыкладаў.
5. Дрэва рашэнняў
Найбольш магутным і шырока выкарыстоўваным метадам класіфікацыі і прагназавання з'яўляецца дрэва рашэнняў. Дрэва рашэнняў - гэта структура дрэва, якая выглядае як блок-схема, дзе кожны ўнутраны вузел прадстаўляе тэст па атрыбуту, кожная галіна ўяўляе выснову тэсту, а кожны лісткавы вузел (тэрмінальны вузел) змяшчае метку класа.
Калі залежныя зменныя не маюць лінейнай сувязі з незалежнымі зменнымі, г.зн. калі лінейная рэгрэсія не дае правільных вынікаў, дрэвы рашэнняў карысныя. Аб'ект DecisionTreeRegression() можа быць выкарыстаны аналагічным чынам для выкарыстання дрэва рашэнняў для рэгрэсіі.
6. Выпадковы лес
Выпадковы лес - гэта а навучанне з дапамогай машыны падыход да вырашэння пытанняў рэгрэсіі і класіфікацыі. Ён выкарыстоўвае ансамблевае навучанне, якое з'яўляецца метадам, які спалучае некалькі класіфікатараў для вырашэння складаных задач. Метад выпадковага лесу складаецца з вялікай колькасці дрэў рашэнняў. Яго можна выкарыстоўваць для класіфікацыі заявак на крэдыт, выяўлення махлярства і прагназавання ўспышкі захворванняў.
7. Матрыца блытаніны
Матрыца блытаніны - гэта табліца, якая выкарыстоўваецца для апісання прадукцыйнасці мадэлі класіфікацыі. Наступныя чатыры словы выкарыстоўваюцца для вывучэння матрыцы блытаніны:
- Сапраўдны пазітыў: гэта азначае, што мадэль прагназавала спрыяльны зыход, і гэта было правільна.
- Сапраўдны адмоўны: гэта азначае, што мадэль прагназавала дрэнны вынік, і гэта было правільна.
- Ілжывы станоўчы вынік: гэта азначае, што мадэль чакала спрыяльнага зыходу, але ён быў сапраўды адмоўны.
- Ілжывы адмоўны: гэта азначае, што мадэль чакала адмоўнага выніку, у той час як вынік быў сапраўды станоўчым.
Рэалізацыя матрыцы блытаніны:
Прафесіяналы
- Ён просты ў выкарыстанні.
- Пакет Scikit-learn з'яўляецца надзвычай адаптыўным і карысным, абслугоўваючы рэальныя мэты, такія як прагназаванне паводзін спажыўцоў, развіццё нейровобраза і гэтак далей.
- Карыстальнікі, якія жадаюць злучыць алгарытмы са сваімі платформамі, знойдуць падрабязную дакументацыю па API на сайце Scikit-learn.
- Шматлікія аўтары, супрацоўнікі і вялікая сусветная інтэрнэт-супольнасць падтрымліваюць і падтрымліваюць Scikit-learn у курсе.
мінусы
- Гэта не ідэальны варыянт для паглыбленага вывучэння.
заключэнне
Scikit-learn з'яўляецца найважнейшым пакетам для кожнага навукоўца па дадзеных, які павінен мець добрае разуменне і пэўны вопыт. Гэта кіраўніцтва павінна дапамагчы вам з маніпуляцыяй з дадзенымі з дапамогай sklearn. Ёсць шмат іншых магчымасцяў Scikit-learn, якія вы адкрыеце для сябе па меры прасоўвання вашага прыгоды па даследаванні дадзеных. Падзяліцеся сваімі думкамі ў каментарах.
Пакінуць каментар