🤵♂️ Персональная домашняя страница: @AI_magician 📡Адрес домашней страницы: Об авторе: CSDN-контент-партнер, качественный создатель в сфере full-stack. 👨💻Видение: стремление расти вместе с большим количеством партнеров, которые любят компьютеры! ! 🐱🏍 🙋♂️заявление:Сейчас я учусь на втором курсе колледжа,Научные интересы Искусственный интеллект&аппаратное обеспечение(虽然аппаратное обеспечение还没开始玩,Но мне всегда было интересно!Я надеюсь, что босс поможет тебе) 【Глубокое обучение | Основные понятия] Вы уверены, что хотите взглянуть на те основные концепции, которые вам необходимо пройти на пути к глубокому обучению? (один) автор: компьютерный волшебник Версия: 1.0 ( 2023.8.27 )
Аннотация: Целью этой серии является популяризация основных концепций, которые необходимо передать на пути к глубокому обучению. Содержание статей собрано и написано блоггерами. Добро пожаловать на поддержку Sanlian! Эта серия будет постоянно обновляться, и основная концептуальная серия будет постоянно обновляться! Приветствую всех подписавшихся
@toc
Алгоритму Apriori необходимо сканировать данные несколько раз, а ввод-вывод является большим узким местом.。Чтобы решить эту проблему,FP-Growth(Frequent Pattern Рост) путем построения дерева ФП (Частые Pattern Tree)чтобы избежать создания наборов элементов-кандидатов,тем самым уменьшая пространство поиска,Повышена эффективность алгоритма. Независимо от того, сколько данных,Нужно только сканировать набор данных дважды,Таким образом, эффективность работы алгоритма повышается.
Алгоритм FP Tree вводит некоторые структуры данных для временного хранения данных. Эта структура данных состоит из трех частей, как показано на рисунке ниже:
1. Список заголовков(линейная структура):В нем все записано1Сколько раз элемент появляется в частом наборе,Отсортируйте по убыванию времени. Например, на рисунке выше буква B появляется 8 раз во всех 10 группах данных.,Так что это на первом месте.
Шаги алгоритма:
FP Treeалгоритм устраняет узкое место ввода-вывода в Aprioriалгоритме.,Умное использование древовидной структуры,Эталонная кластеризация BIRCH,BIRCHКластеризация также Умное использование древовидной структурыулучшитьалгоритм Скорость бега。использоватьОбмен пространства на время в структурах данных памяти является распространенным методом устранения узкого места во времени работы алгоритма.。
На практике алгоритм FP Tree представляет собой алгоритм корреляции, который можно использовать в производственных средах, а алгоритм Apriori является пионером и служит путеводной звездой для алгоритмов корреляции. Помимо FP Tree, такие алгоритмы, как GSP и CBA, принадлежат фракции Apriori.
Классические случаи и реализация кода:
Ниже приведен пример кода, реализующего Алгоритм роста FP с использованием библиотеки Python mlxtend:
from mlxtend.frequent_patterns import fpgrowth
from mlxtend.preprocessing import TransactionEncoder
import pandas as pd
# Создать образец набора данных
dataset = [['Milk', 'Eggs', 'Bread'],
['Milk', 'Butter'],
['Cheese', 'Bread', 'Butter'],
['Milk', 'Eggs', 'Bread', 'Butter'],
['Cheese', 'Bread', 'Butter']]
# Преобразование набора данных в логическую матрицу с помощью TransactionEncoder
te = TransactionEncoder()
te_ary = te.fit(dataset).transform(dataset)
df = pd.DataFrame(te_ary, columns=te.columns_)
# Используйте функцию fpgrowth для поиска часто встречающихся наборов элементов.
frequent_itemsets = fpgrowth(df, min_support=0.2, use_colnames=True)
print(frequent_itemsets)
используется здесьmlxtendв библиотекеfpgrowth
функция для выполнения Алгоритм роста ФП. первый,Преобразовать сделанный набор в представление логической матрицы,а потом позвониfpgrowth
函数来寻找指定最小支持度阈值的频繁项набор。
кроме того,Если вы хотите использовать собственную реализацию Алгоритма роста FP, вы можете обратиться к соответствующей реализации с открытым исходным кодом и подробностям алгоритма. Вот несколько учебных ресурсов, которые помогут вам узнать больше об Алгоритме. роста FP:
Справочная статья:
https://www.cnblogs.com/pinard/p/6307064.html