<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Arquivos regras associativas - Diego Nogare</title>
	<atom:link href="https://diegonogare.net/tags/regras-associativas/feed/" rel="self" type="application/rss+xml" />
	<link>https://diegonogare.net/tags/regras-associativas/</link>
	<description>Consultor Executivo de IA &#38; ML</description>
	<lastBuildDate>Sat, 24 Apr 2021 23:11:48 +0000</lastBuildDate>
	<language>pt-BR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://i0.wp.com/diegonogare.net/wp-content/uploads/2025/06/cropped-cropped-DN-Black-300x300-1.png?fit=32%2C32&#038;ssl=1</url>
	<title>Arquivos regras associativas - Diego Nogare</title>
	<link>https://diegonogare.net/tags/regras-associativas/</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">247556142</site>	<item>
		<title>Algoritmo de Regras Associativas (Association Rules) no Data Mining do SQL Server 2014</title>
		<link>https://diegonogare.net/2014/08/algoritmo-de-regras-associativas-association-rules-no-data-mining-do-sql-server-2014/</link>
		
		<dc:creator><![CDATA[Diego Nogare]]></dc:creator>
		<pubDate>Thu, 14 Aug 2014 13:11:45 +0000</pubDate>
				<category><![CDATA[Artigo]]></category>
		<category><![CDATA[Big Data]]></category>
		<category><![CDATA[Business Intelligence]]></category>
		<category><![CDATA[MVTech]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Tech Ed Brasil]]></category>
		<category><![CDATA[Virtual PASS BR]]></category>
		<category><![CDATA[association rules]]></category>
		<category><![CDATA[bi]]></category>
		<category><![CDATA[BigData]]></category>
		<category><![CDATA[business intelligence]]></category>
		<category><![CDATA[data mining]]></category>
		<category><![CDATA[inteligencia artificial]]></category>
		<category><![CDATA[regras associativas]]></category>
		<category><![CDATA[sql server]]></category>
		<guid isPermaLink="false">http://diegonogare.net/?p=960</guid>

					<description><![CDATA[<p>Fala galera, como prometido neste post e iniciado pela Árvore de Decisão, hoje continuo a série de posts falando sobre os algoritmos de Data Mining existentes no SQL Server 2014. Este segundo algoritmo que vamos falar é de Regras Associativas. Voltando ao primeiro post, as Regras Associativas apresentam uma estrutura combinatória dentro de um DataSet a partir...</p>
<p>O post <a href="https://diegonogare.net/2014/08/algoritmo-de-regras-associativas-association-rules-no-data-mining-do-sql-server-2014/">Algoritmo de Regras Associativas (Association Rules) no Data Mining do SQL Server 2014</a> apareceu primeiro em <a href="https://diegonogare.net">Diego Nogare</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><span style="color: black;"><span style="font-family: Segoe UI; font-size: 10pt; background-color: white;">Fala galera, como <a href="https://diegonogare.net/2014/06/data-mining-com-sql-server-2014/" target="_blank" rel="noopener noreferrer">prometido </a></span>neste post<span style="font-family: Segoe UI; font-size: 10pt; background-color: white;"> e iniciado pela <a href="https://diegonogare.net/2014/08/algoritmo-de-arvore-de-decisao-decision-tree-no-data-mining-do-sql-server-2014/" target="_blank" rel="noopener noreferrer">Árvore de Decisão</a>, hoje continuo a série de posts falando sobre os algoritmos de Data Mining existentes no SQL Server 2014.<br />
</span></span></p>
<p><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;">Este segundo algoritmo que vamos falar é de Regras Associativas. Voltando ao primeiro post, as Regras Associativas apresentam uma estrutura combinatória dentro de um DataSet a partir de itens similares que estão sendo processados. A maioria dos sistemas inteligentes que utilizam este algoritmo são criados para recomendar um produto para o usuário, normalmente em e-commerce. Já reparou que quando acessa o site da Amazon e procura o livro <a href="http://www.amazon.com.br/Banco-Dados-Relacional-Tomada-Decis%C3%A3o-ebook/dp/B00JPR5NLU/" target="_blank" rel="noopener noreferrer">Do Banco de Dados Relacional à Tomada de Decisão</a>, e vários outros livros de Business Intelligence e BigData são apresentados? Então, não existe um <em>Oompa-Loompa</em> colocando isso aleatoriamente para você. Por trás, existe um sistema de recomendação completo, provavelmente utilizando a categoria &#8220;<em>Computação, Informática e Mídias Digitais</em>&#8221; como um parametro de entrada para este item. Como sempre, é importante conhecer a base e saber quais segmentações você quer aplicar para a recomendação. Neste caso, quando se coloca a categoria como um parametro de entrada, sempre serão recomendados itens similares dentro desta categoria, mas se todos os compradores do meu livro também comprassem um livro de culinária, ele não apareceria na recomendação pois está em outra categoria.<br />
</span></p>
<p><img decoding="async" src="/wp-content/uploads/2014/08/081414_1309_Algoritmode1-2.png" alt="" /><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;"><br />
</span></p>
<p>&nbsp;</p>
<p><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;">Bom, já entendemos a aplicabilidade e como ele funciona, agora vamos criar um exemplo para o Adventure Works?<br />
</span></p>
<p><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;">Primeira coisa é necessário criar um novo projeto do tipo SSAS com Data Mining. Mais uma vez vou acreditar que você sabe criar um <strong>Data Source</strong> apontando para o <em>AdventureWorksDW2012</em> e um <strong>Data Source View</strong> apontando para a <em>vAssocSeqLineItems</em> e <em>vAssocSeqOrders</em>. Esta estrutura basicamente é um relacionamento entre pedidos e produtos. Onde uma view tem os pedidos que foram feitos, e na outra view tem a lista de produtos que estão associadas àquele pedido. Consegue ver um relacionamento entre essas views? E a aplicabilidade desse relacionamento na nossa recomendação de conteúdo? Caso não tenha conseguido descobrir essa associação, a idéia é encontrar na lista de itens os produtos que também são comprados (com base na outra view de pedido) quando ao menos um daqueles itens é o que está no meu carrinho. Ficou mais claro? Não? Ok, vamos continuar e ver se conseguimos explicar&#8230; Voltando pra Amazon, e olhando a categoria do meu livro. Diversas pessoas olham meu livro e alguns outros livros na mesma visita à pagina, não importa a ordem, pode ser que vejam outros livros e depois o meu (<em>a ordem de visualização vai importar quando estivermos falando de algoritmo de Sequence Cluster, mas isso é pra outro post</em>). O importante é que existe uma ligação entre a visita e os produtos que foram vistos, no caso estes livros. Depois de algum tempo, estes livros passam a ter um relacionamento mais preciso, pois tem mais gente visualizando os livros. Não significa que em todos os acessos os visitantes visualizam todos os livros, estes que estão recomendados são os 5 livros que mais se relacionam com o meu no momento do processamento e dentro naquela categoria que está sendo processada. Pode ser que no futuro um outro livro passe a ser visualizado sempre que alguém buscar o meu livro, isso fará com que o 5º livro da ordem, que seria representado por uma ligação mais fraca, pare de aparecer na recomendação e entre esse outro livro&#8230; Tudo isso automaticamente, sem a intervenção daquele <em>Oompa-Loompa</em> comentado lá em cima.<br />
</span></p>
<p><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;">Voltando ao exemplo, depois de incluir o <strong>Data Source View</strong>, é preciso relacionar as views, arrastando o campo <em>OrderNumber</em> da view <em>vAssocSeqLineItems</em> para cima do campo <em>vAssocSeqOrders</em>.<br />
</span></p>
<p><img decoding="async" src="/wp-content/uploads/2014/08/081414_1309_Algoritmode2-1.png" alt="" /><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;"><br />
</span></p>
<p><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;">Próximo passo é hora de criar o Mining Model para as regras associativas, faça isso clicando com o botão dirento em <em>Mining Structure</em> e criando um novo a partir do <em>From existing relational database or data warehouse</em> e escolhendo <strong>Microsoft Association Rules</strong>.<br />
</span></p>
<p><img decoding="async" src="/wp-content/uploads/2014/08/081414_1309_Algoritmode3-1.png" alt="" /><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;"><br />
</span></p>
<p><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;">Ao avançar para as próximas telas, deve-se informar qual view é <strong>Case</strong> e qual é <strong>Nested</strong>. Neste caso, a estrutura de CASE é onde temos a informação principal que será usada para segmentar os dados. Fazendo uma analogia ao livro, é onde se encontra a categoria de &#8220;<em>Computação, Informática e Mídias Digitais</em>&#8221; e não os livros que foram visualizados juntos. Já a tabela NESTED é onde se encontram estes livros que foram visualizados juntos. Então selecione <em>vAssocSeqOrders</em> para <strong>Case</strong> e <em>vAssocSeqLineItens</em> para <strong>Nested</strong>.<br />
</span></p>
<p><img decoding="async" src="/wp-content/uploads/2014/08/081414_1309_Algoritmode4-1.png" alt="" /><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;"><br />
</span></p>
<p><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;">Ao avançar para a tela seguinte, é solicitado para informar quais campos serão tratados como <em>Key</em>, <em>Input</em> e <em>Predictable</em>. A seleção destas colunas é baseada na mesma explicação que foi feita no post sobre <a href="https://diegonogare.net/2014/08/algoritmo-de-arvore-de-decisao-decision-tree-no-data-mining-do-sql-server-2014/" target="_blank" rel="noopener noreferrer">Árvores de Decisão</a>, então dê um pulinho lá e veja o que é. Desmarque todas as opções que vierem marcadas, e selecione as caixas de <strong>OrderNumber</strong> como chave (coluna key) e as três colunas da <strong>Model</strong>. Sua seleção ficará assim:<br />
</span></p>
<p><img decoding="async" src="/wp-content/uploads/2014/08/081414_1309_Algoritmode5-1.png" alt="" /><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;"><br />
</span></p>
<p><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;">Quando avançar para a próxima tela, garanta que ambas colunas selecionadas estejam marcadas como <strong>Key</strong>, no <em>Content Type</em>.<br />
</span></p>
<p><img decoding="async" src="/wp-content/uploads/2014/08/081414_1309_Algoritmode6-1.png" alt="" /><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;"><br />
</span></p>
<p><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;">Só pra lembrar, como neste caso é importante a acertividade na recomendação dos itens similares, altere de 30 para 0 o valor do campo &#8220;<em>Percentage of Data for Testing</em>&#8220;. Avance até finalizar o processo.<br />
</span></p>
<p><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;">Se tudo ocorreu direito, seu Mining Structure ficará assim:<br />
</span></p>
<p><img decoding="async" src="/wp-content/uploads/2014/08/081414_1309_Algoritmode7-1.png" alt="" /><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;"><br />
</span></p>
<p><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;">Antes de processar seu projeto, lembre-se de informar qual é o servidor que tem o <strong>SQL Server Analysis Services</strong> instalado e configurado. Após este pequeno detalhe, faça o processamento.<br />
</span></p>
<p><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;">Após processar, mude a aba do seu Mining para <em>Mining Model View</em>, e então, dentro desta aba, vá até o item <em>Dependency Network</em>.<br />
</span></p>
<p><img decoding="async" src="/wp-content/uploads/2014/08/081414_1309_Algoritmode8-1.png" alt="" /><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;"><br />
</span></p>
<p><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;">Aqui dentro é possível ver os nós de associação que foram criados.<br />
</span></p>
<p><img decoding="async" src="/wp-content/uploads/2014/08/081414_1309_Algoritmode9-1.png" alt="" /><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;"><br />
</span></p>
<p><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;">Parece pouca associação (mas por trás não é), isso acontece pela parametrização da quantidade mínima de ocorrências similares dos objetos. Para aumentar isso, volte até a aba <em>Mining Model</em>, clique com o botão direito em <em>Set Algorithm Parameters.</em><br />
</span></p>
<p><img decoding="async" src="/wp-content/uploads/2014/08/081414_1309_Algoritmode10-1.png" alt="" /><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;"><br />
</span></p>
<p><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;">Altere os parametros de <em>Minimum_Support</em> para <strong>0.01</strong> e de <em>Minimum_Probability</em> para <strong>0.1</strong>, ao terminar esta alteração, processe novamente seu modelo e em seguida volte a visualizar as associacões (aba <em>Dependency Network</em> do seu <em>Mining Model View</em>). Veja que agora está bem mais completo e bonito de ver.<br />
</span></p>
<p><img decoding="async" src="/wp-content/uploads/2014/08/081414_1309_Algoritmode11-1.png" alt="" /><span style="color: black; font-family: Segoe UI; font-size: 10pt; background-color: white;"><br />
</span></p>
<p><span style="color: black; font-size: 10pt;"><span style="font-family: Segoe UI; background-color: white;">Para consumir as associações, é possível escrever códigos <strong>DMX</strong> (<em>Data Mining Extentions</em>) passando como parâmetro o nome de um dos produtos, e recebendo uma lista dos outros itens que são associados à ele nas compras. Está no meu <em>pipe</em> pra escrever uma app em .Net que consuma esses dados via DMX, e claro, postar aqui como foi feito </span><span style="font-family: Wingdings; background-color: white;">J</span></span></p>
<p>O post <a href="https://diegonogare.net/2014/08/algoritmo-de-regras-associativas-association-rules-no-data-mining-do-sql-server-2014/">Algoritmo de Regras Associativas (Association Rules) no Data Mining do SQL Server 2014</a> apareceu primeiro em <a href="https://diegonogare.net">Diego Nogare</a>.</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">2181</post-id>	</item>
	</channel>
</rss>
