|
|
Опубліковано 27.04.2019 09:53:15
|
|
|

Добування великих даних — це процес відкриття цінної та потенційно корисної інформації й знань, прихованих у величезних, неповних, шумних, нечітких і випадкових великих базах даних, а також процес підтримки прийняття рішень. Він головним чином базується на штучному інтелекті, машинному навчанні, навчанні шаблонах, статистиці тощо. Добування великих даних — це процес відкриття цінної та потенційно корисної інформації й знань, прихованих у величезних, неповних, шумних, нечітких і випадкових великих базах даних, а також процес підтримки прийняття рішень. Він головним чином базується на штучному інтелекті, машинному навчанні, навчанні шаблонах, статистиці тощо.
(1) Класифікація. Класифікація полягає у виявленні спільних характеристик набору об'єктів даних у базі даних і поділі їх на різні класи відповідно до патерну класифікації, метою якої є відображення елементів даних у базі даних із заданою категорією через класифікаційну модель. Його можна застосувати до класифікації додатків і прогнозування трендів, наприклад, магазини Taobao ділять покупки користувачів на різні категорії протягом певного часу та рекомендують відповідні товари відповідно до ситуації, тим самим збільшуючи обсяги продажів магазину. Для класифікації можна використовувати багато алгоритмів, таких як дерева рішень, knn, баєсівські тощо
(2) Регресійний аналіз. Регресійний аналіз відображає характеристики атрибутних значень даних у базі даних і виявляє залежності між значеннями атрибутів, виражаючи взаємозв'язок відображення даних через функції. Його можна застосувати до прогнозування та кореляції рядів даних. У маркетингу регресійний аналіз можна застосовувати до різних аспектів. Наприклад, за допомогою регресійного аналізу продажів у поточному кварталі прогнозується тенденція продажів наступного кварталу та вносяться цільові маркетингові зміни. Поширені алгоритми регресії включають звичайні найменші квадрати, логістичну регресію, покрокову регресію, багатовимірні адаптивні регресійні сплайни та локально оцінені Згладження графіка розсіювання)
(3) Кластеризація. Кластеризація схожа на класифікацію, але на відміну від класифікації, вона ділить набір даних на категорії на основі схожостей і відмінностей у даних. Схожість між даними, що належать до однієї категорії, дуже велика, але подібність між даними між різними категоріями дуже мала, а кореляція між даними між категоріями дуже низька. Поширені алгоритми кластеризації включають алгоритм k-Середніх та максимізацію очікувань (EM).
(4) Правила асоціації. Правила асоціації — це асоціації або взаємозв'язки між прихованими елементами даних, тобто поява інших елементів даних може бути визначена на основі зовнішнього вигляду одного елемента даних. Процес добування правил асоціації складається переважно з двох етапів: перший етап — знайти всі високочастотні проєктні групи з масивних сирих даних; Другий крайній варіант — генерувати правила асоціації з цих високочастотних проєктних груп. Технологія майнінгу правил асоціацій широко використовується у фінансових підприємствах для прогнозування потреб клієнтів, а банки покращують свій маркетинг, об'єднуючи інформацію, яка може зацікавити клієнтів, щоб користувачі могли розуміти та отримувати відповідну інформацію на своїх банкоматах. Поширені алгоритми включають алгоритми Апріорі та алгоритм Еклат.
(5) Метод нейронної мережі. Як передова технологія штучного інтелекту, нейронні мережі дуже підходять для вирішення нелінійних та обчислювальних задач, що характеризуються нечіткими, неповними та неточними знаннями або даними, а її характеристики дуже підходять для розв'язання задач добування даних. Типові моделі нейронних мереж в основному поділяються на три категорії: перша — це модель прямої нейронної мережі для прогнозування класифікації та розпізнавання шаблонів, яка переважно представлена функціональними мережами та перцептронами; Друга категорія — це модель зворотного зв'язку нейронної мережі для асоціативної пам'яті та алгоритмів оптимізації, представлена дискретною моделлю Гопфілда та неперервною моделлю. Третя категорія — це самоорганізований метод відображення кластеризації, представлений моделлю ART. Хоча існує багато моделей і алгоритмів для нейронних мереж, немає єдиного правила щодо того, які моделі та алгоритми використовувати в конкретних сферах майнінгу даних, і людям важко зрозуміти процес навчання та прийняття рішень мережами.
(6) Веб-майнінг даних. Веб-майнінг даних — це комплексна технологія, яка стосується вебу зі структури документа та набору C, що використовується для виявлення неявного шаблону P; якщо C розглядається як вхід, P — як вихідний, то процес веб-майнінгу можна розглядати як процес відображення від входу до виходу. Наразі все більше веб-даних з'являється у вигляді потоків даних, тому це має велике значення для майнінгу потоків веб-даних. Наразі широко використовуваними алгоритмами добування веб-даних є: алгоритм PageRank, алгоритм HITS та алгоритм LOGSOM. Згадані користувачі, згадані в цих трьох алгоритмах, є загальними користувачами і не розрізняють окремих користувачів. Наразі майнінг веб-даних стикається з певними проблемами, зокрема: класифікація користувачів, своєчасність контенту сайту, час перебування користувача на сторінці, кількість посилань на сторінки тощо. У сучасному стрімкому розвитку веб-технологій ці проблеми все ще варті вивчення та розв'язання.
(7) Глибоке навчання Алгоритми глибокого навчання — це розробка штучних нейронних мереж. Останнім часом це привернуло багато уваги, особливо після того, як Baidu також почав розвивати глибоке навчання, що привернуло значну увагу в Китаї. У сучасному світі, де обчислювальна потужність стає дешевшою, глибоке навчання намагається створити нейронні мережі, які є значно більшими та складнішими. Багато алгоритмів глибокого навчання — це напівконтрольовані алгоритми навчання, які використовуються для обробки великих наборів даних з невеликою кількістю невизначених даних. Поширені алгоритми глибокого навчання включають: Обмежену машину Больцмана (RBN), Глибокі мережі переконань (DBN), згорткові мережі та стековані авто-енкодери.
(8) Алгоритм інтегрування Алгоритм ансамблю використовує відносно слабкі моделі навчання для незалежного навчання на тій самій вибірці, а потім інтегрує результати для загального прогнозування. Головна складність ансамблевого алгоритму полягає в тому, які незалежні слабші моделі навчання інтегруються і як інтегрувати результати навчання. Це дуже потужний клас алгоритмів і водночас дуже популярний. Поширені алгоритми включають: Boosting, Bootstrapped Aggregation (Bagging), AdaBoost, Stacked Generalization (Blending), Gradient Boosting Machine (GBM) та Random Forest.
Крім того, зменшення розмірності також дуже важливе в інженерії аналізу даних, як і алгоритми кластеризації, алгоритми зменшення розмірності намагаються аналізувати внутрішню структуру даних, але алгоритми зниження розмірності намагаються використовувати менше інформації для узагальнення або інтерпретації даних у некерованому навчанні. Ці алгоритми можуть використовуватися для візуалізації високовимірних даних або для спрощення даних під керованим навчанням. Поширені алгоритми включають: аналіз основних компонентів (PCA), часткову регресію найменших квадратів (PLS), картографування Саммона, багатовимірне масштабування (MDS), пошук проєкцій тощо.
Для детального аналізу переваг і недоліків деяких алгоритмів та посилань на вибір алгоритмів ви можете ознайомитися зі сценаріями адаптації кількох поширених алгоритмів та їхніми перевагами та недоліками у наступному блозі (дуже добре)
Нижче наведено абзац із блогу вище: Посилання на вибір алгоритму:
Я вже перекладав деякі іноземні статті раніше, і в одній з них наведено просту техніку вибору алгоритму:
Якщо його ефект не є добрим, результати можна використовувати як орієнтир і порівнювати з іншими алгоритмами на основі основи.
Потім спробуйте дерево рішень (випадковий ліс), щоб побачити, чи може це суттєво покращити продуктивність моделі. Навіть якщо ви не використаєте його як фінальну модель в кінці, ви можете використати випадковий ліс, щоб видалити змінні шуму та вибрати ознаки;
Якщо кількість ознак і спостережних вибірок особливо велика, тоді використання SVM є варіантом, коли ресурси та час достатні (ця передумова важлива).
Зазвичай: [XGBOOST>=GBDT>=SVM>=RF>=Adaboost>=Інше...], зараз глибоке навчання дуже популярне, використовується в багатьох галузях, базується на нейронних мережах, я зараз сам вивчаю, але теоретичні знання не дуже глибокі, розуміння недостатньо глибоке, я не буду їх тут викладати.
Алгоритми важливі, але якісні дані кращі за хороші алгоритми, а проєктування хороших функцій приносить велику користь. Якщо у вас дуже великий набір даних, то незалежно від того, який алгоритм ви використовуєте, це може суттєво вплинути на продуктивність класифікації (ви можете обирати за швидкістю та простотою використання).
|
Попередній:Конвертація результатів запиту у формат Json script sharingНаступний:C# — це сервіс Windows, який регулярно виконує завдання
|