INTRODUCCION ¿Algoritmo? Es una secuencia de pasos ordenados para lograr una tarea espec!ica" Cuando nosotros #ueremos $ace un postre% pastel o comida ¿&u' $acemos?% bueno primero conseguimos los ingredientes% luego $acemos paso a paso lo dem(s para lograr la meta" La computadora no solamente es una m(#uina #ue puede reali)ar procesos para darnos resultados% sin #ue tengamos la noci*n e+acta de las operaciones #ue reali)a para llegar a esos resultados" Con la computadora adem(s de lo anterior tambi'n podemos dise,ar soluciones a la medida% de problemas espec!icos #ue se nos presenten" -(s a.n% si estos in/olucran operaciones matem(ticas comple0as 12o repetiti/as% o re#uieren del mane0o de un /olumen mu1 grande de datos" 3 El dise,o de soluciones a la medida de nuestros problemas% re#uiere como en otras disciplinas una metodologa #ue nos ense,e de manera gradual% la !orma de llegar a estas soluciones" A las soluciones creadas por computadora se les conoce como programas 1 no son m(s #ue una serie de operaciones #ue reali)a la computadora para llegar a un resultado% con un grupo de datos espec!icos" Lo anterior nos lle/a al ra)onamiento de #ue un programa nos sir/e para solucionar un problema espec!ico" 4ara poder reali)ar programas% adem(s de conocer la metodologa mencionada% tambi'n debemos de conocer% de manera espec!ica las !unciones #ue pueden reali)ar la computadora 1 las !ormas en #ue se pueden mane0ar los elementos #ue $a1 en la misma" Computadora5 Es un dispositi/o electr*nico utili)ado para procesar in!ormaci*n 1 obtener resultados" Los datos 1 la in!ormaci*n se pueden introducir en la computadora como entrada 6input7 1 a continuaci*n se procesan para producir una salida 6output7" Los algoritmos de ordenamiento nos permiten% como su nombre lo dice% ordenar" En este caso% nos ser/ir(n para ordenar /ectores o matrices con /alores asignados aleatoriamente" Nos centraremos en los m'todos m(s populares% anali)ando la cantidad de comparaciones #ue suceden% el tiempo #ue demora 1 re/isando el c*digo% escrito en 8a/a% de cada algoritmo" Este in!orme nos permitir( conocer m(s a !ondo cada m'todo distinto de ordenamiento% desde uno simple $asta el m(s comple0o" Se reali)aran comparaciones en tiempo de e0ecuci*n% pre9 re#uisitos de cada algoritmo% !uncionalidad% alcance% etc"
CONTENIDO Defnición 4ara poder ordenar una cantidad determinada de n.meros almacenadas en un /ector o matri)% e+isten distintos m'todos 6algoritmos7 con distintas caractersticas 1 comple0idad" E+iste desde el m'todo m(s simple% como el @ubblesort 6o -'todo @urbu0a7% #ue son simples iteraciones% $asta el &uicsort 6-'todo R(pido7% #ue al estar optimi)ado usando recursi*n% su tiempo de e0ecuci*n es menor 1 es m(s e!ecti/o" •
-ETODOS RECURSIBOS
Estos m'todos son a.n m(s comple0os% re#uieren de ma1or atenci*n 1 conocimiento para ser entendidos" Son r(pidos 1 e!ecti/os% utili)an generalmente la t'cnica Di/ide 1 /encer(s% #ue consiste en di/idir un problema grande en /arios pe#ue,os para #ue sea m(s !(cil resol/erlos" -ediante llamadas recursi/as a s mismos% es posible #ue el tiempo de e0ecuci*n 1 de ordenaci*n sea m(s *ptimo" Dentro de los algoritmos recursi/os encontramos5 Ordenamiento por -e)clas 6merge7 Ordenamiento R(pido 6#uic7 •
-ETODO DE LA @UR@U8A
El m'todo de la burbu0a es uno de los m(s simples% es tan !(cil como comparar todos los elementos de una lista contra todos% si se cumple #ue uno es ma1or o menor a otro% entonces los intercambia de posici*n" 4or e0emplo% imaginemos #ue tenemos los siguientes /alores5 3 ; F Lo #ue $ara una burbu0a simple% seria comen)ar recorriendo los /alores de i)#" a derec$a% comen)ando por el " Lo compara con el % con el 3% con el ; 1 con el F% si es ma1or o menor 6dependiendo si el orden es ascendiente o descendente7 se intercambian de posici*n" Luego continua con el siguiente% con el % 1 lo compara con todos los elementos de la lista% esperando /er si se cumple o no la misma condici*n #ue con el primer elemento" As% sucesi/amente% $asta el .ltimo elemento de la lista •
-INERIA DE DATOS
Con/ertir datos en conocimiento para tomar decisiones Es importante la inteligibilidad del conocimiento obtenido 6los modelos estadsticos no son siempre sencillos de entender7 -D G @@DD H estadstica H aprendi)a0e autom(tico
3
Características E/oluci*n de la Tecnologa @D aplicado a minera 1 e+tracci*n de datos" 3;Js 1 antes
Inde+ado 1 t'cnicas de organi)aci*n 6@9 trees% as$ing7
Creaci*n de las @D en arc$i/os primiti/os E/oluci*n de la Tecnologa @D
Lengua0es de #ueries S&L% etc"
3K;Js $asta principios de los 3>;Js
Inter!aces de usuario 1 reportes
@D 8er(r#uicas 1 de Red
4rocesamiento #ueries < 1 p
@D Relacionales
1
optimi)aci*n
de
-ane0o transacciones 6recuperaci*n% control concurrencia7
erramientas de modelado de datos 6Entidad9Relaci*n7
OLT4 6On Line Transaction 4rocessing7 Sin*nimos5 9 Descubrimiento de Conocimiento en @ases de Datos 9 -inera de conocimiento de bases de datos 9 E+tracci*n de conocimiento 9 An(lisis de datos 1 patrones 9 Ar#ueologa de datos
Ilustración i Funcionamiento de Minería de datos
4
I Funcionamiento Minería de datos
Los (rboles de clasi!icaci*n son de los m(s en el tema de aprendi)a0e auton*mico tiene muc$a relaci*n con los arboles de decisiones% realmente es la base de su !uncionamiento" Su rapide) a la $ora de la clasi!icaci*n" Su implementaci*n" etc" son !actores #ue in!lu1en en su propagaci*n" Entran dentro de los m'todos de clasi!icaci*n 6super/isada% !ormados una /ariable dependiente 6clase7" cu1o ob0eti/o es a/eriguar dic$a clase para casos nue/os" El modelo as obtenido puede ser/ir para clasi!icar casos cu1as clases #ue descono)can" Simplemente" 4ara comprender la in!ormaci*n de la #ue disponemos" Se abarca un el tema los algoritmos conocidos #ue aplican en el tema como son el algoritmo CART #ue basa su criterio por de!ecto en el Mini nde+ para la clasi!icaci*n% el #ue reali)a di/isiones sobre los posibles /alores de la clase productora 1 usa un criterio de ganancia en in!ormaci*n como !unci*n de di/isi*n" Otro algoritmo es el C=" #ue es los sucesos del IDEF" El 8="> #ue es una implementaci*n del C=" entre Otros" Todos estos algoritmos nos $an a1udado al proceso de clasi!icaci*n seg.n $an ido apareciendo 1 nos siguen a1udan gracias a las nue/as /ersiones de los mismos" E+isten /arias ra)ones para la poda de los (rboles5 la e/aluaci*n de /ariables pero importantes o signi!icati/as 1 el gran tama,o del obtenido" En el primer un (rbol puede $aber sido construido a partir de e0emplos con ruido" Con IO cual algunas ramas del (rbol pueden enga,osas en cuanto a la e/aluaci*n de /ariables no rele/antes% 'stas deben podarse 1a #ue s*lo agregan ni/eles en el (rbol 1 contribu1en a la ganancia de in!ormaci*n 4or .ltimo% si el (rbol Obtenido es pro!undo o demasiado !rondoso se di!iculta la interpretaci*n panel del usuario" Con IO cual $ubiera sido IO mismo utili)ar un de ca0a negra" E+isten dos en!o#ues para podar los (rboles la poda 6preprunning7 1 la post9poda 6postprunning7 En el primer caso detiene el crecimiento del (rbol cuando la ganancia de in!ormaci*n producida al di/idir un con0unto no un umbral determinado5 en la pos9poda se podan algunas ramas una /e) #ue se $a terminado en el (rbol
Precursores •
•
¿&u' es la minera de datos? La tarea no tri/ial de e+traer in!ormaci*n implcita% pre/iamente desconocida 1 potencialmente .til de bases de datos 6:raPle1 et" al" 3<7" El proceso de descubrir conocimiento interesante de grandes cantidades de datos almacenadas en bases de datos% data Pare$ouse u otro repositorio de in!ormaci*n 68iaPei an% -ic$eline Qamber <;;37"
•
Trabajos realiados 3>;Js 6-ediados al presente7 E/oluci*n de la Tecnologa @D% sistemas de @D A/an)ados% modelos de datos a/an)ados5 E+tended9Relational% OO% Ob0ect9Relational% Deducti/o% orientados a aplicaciones% espaciales% temporales% multimedia% acti/os% cient!icos% bases de conocimiento
5
3>;Js 6:inales al presente7 Data Pare$ouse 1 OLA4 6On Line Anal1tical 4rocessing7 E/oluci*n de la Tecnologa @D Data Pare$ouse 1 OLA4 6On Line Anal1tical 4rocessing7% minera de datos 1 descubrimiento de conocimiento 3;Js 6la presente7 sistemas basados en -L Peb mining <;;; 6a la !ec$a7 Nue/a generaci*n de sistemas de = nue/a generaci*n de sistemas de in!ormaci*n integrados Algoritmos conocidos empleados en la minera de datos
Algoritmo Naive Bayes2 Empe)amos por este por#ue es el algoritmo #ue primero se suele utili)ar para e+plorar datos" @(sicamente% este algoritmo busca correlaciones entre atributos" Cuando no tenemos mu1 claro #u' atributo se puede predecir en !unci*n de otros% una t'cnica mu1 $abitual es tratar de utili)ar el algoritmo de Nai/e @a1es tratando de predecir el /alor de todos los atributos en !unci*n de todos los atributos 6un todos contra todos7" El resultado de esta orga de correlaciones suele ser un modelo en el #ue tenemos m(s o menos claro #u' /amos a poder predecir en esos datos" Otra /enta0a de este algoritmo es #ue se entrena mu1 r(pido""" pero su des/enta0a es #ue no es mu1 preciso" Bamos% 1o lo usara para5 •
•
E+ploraci*n inicial de los datos Tareas de clasi!icaci*n% en las #ue el rendimiento sea crtico" Se me ocurre% por e0emplo% entornos en tiempo real en los #ue #ueramos detectar entradas an*malas% /alidaciones% clasi!icaciones 1 !iltrados de mensa0es""" etc"
Decisión Trees (Árboles e ecisión! Los (rboles de decisi*n son clarsimamente una $erramienta potentsima de clasi!icaci*n""" de $ec$o% son probablemente el me0or algoritmo #ue podemos utili)ar para clasi!icar" @(sicamente% constru1en un (rbol del #ue se pueden e+traer reglas% del estilo Si eres $ombre% tienes unos ingresos superiores a % 1 eres comprador de re/istas de coc$es""" la probabilidad de #ue tengas coc$e es del ;" Nos pueden ser/ir para tareas como5 •
•
•
Clasi!icaci*n en general Balidaciones" 4odemos detectar elementos an*malos en !unci*n de si enca0an o no con las reglas surgidas del (rbol 6por e0emplo% si tienes coc$e% menos de <; a,os 1 estas en paro""" probablemente mientas7 4redecir el /alor de un atributo con precisi*n
Sir/e sobre todo para buscar elementos a!ines dentro de un con0unto" 4or e0emplo% podemos usarlo para saber #ue en una poblaci*n $a1 $ombres 1 mu0eres 0*/enes solteros% $ombres ma1ores solteros% $ombres 1 mu0eres ma1ores casados""" pero no mu0eres ma1ores solteras" Nos puede ser/ir para5 •
•
Segmentar un mercado" Balidaciones 6las entradas #ue no pertenecen a un cl.ster% pueden ser outliners o elementos an*malos7"
Time #eries (#eries tem$orales! Este algoritmo es espec!ico para predecir el /alor de una magnitud en !unci*n del tiempo" 4or e0emplo5 •
•
An(lisis burs(tiles""" ¿subir( o ba0ar( el I@E ma,ana? 4redicci*n de una magnitud anal*gica% en general"
#e%"ence cl"stering Tambi'n es bastante espec!ico para detectar secuencias tpicas dentro de un con0unto de e/entos" 4or e0emplo""" saber en #u' orden $ace clic la gente en las noticias de una Peb% puede a1udarnos a ordenar los titulares de arriba a aba0o 1 de derec$a a i)#uierda" Usos tpicos5 •
•
Estudio de secuencias de e/entos Detecci*n de algunas anomalas de comportamiento 6e/entos #ue llegan !uera de secuencia7
Association r"les (Reglas e asociación! Este se suele usar casi e+clusi/amente para an(lisis de cesta de la compra" Detecta asociaciones comunes entre elementos 6por e0emplo% #uien compra cer/e)a suele comprar tambi'n palitos salados7" Usos tpicos5 •
•
An(lisis de la cesta de la compra O!recer recomendaciones al comprador5 ¿$as comprado cer/e)a% seguro #ue no #uieres palitos salados?
Ne"ral Net&or' (Rees ne"ronales! Al igual #ue los (rboles de decisi*n% este algoritmo tambi'n resuel/e problemas de clasi!icaci*n 1 regresi*n" 4uede ser adecuado para detectar patrones no lineales% di!cilmente descriptibles por medio de reglas" Se usa como alternati/a al algoritmo de (rboles de decisi*n5 lo me0or es probar ambos sobre un mismo problema 1 utili)ar el #ue ma1or acierto nos d' en sus predicciones"
Nos pueden ser/ir para tareas como5 •
•
Las mismas tareas #ue los (rboles de decisi*n% cuando los grupos en los #ue se di/ide la poblaci*n no son lineales" Si no sabes a #u' me re!iero% imagina la tarea de clasi!icar puntos en un espacio""" cuando no se pueden clasi!icar !(cilmente tra)ando lneas% el problema no es lineal" Regresiones 6es similar a la clasi!icaci*n% pero cuando se trata de predecir una magnitud contin.a7"
A$licaciones e la iner)a e Datos Los modelos de minera de datos se pueden aplicar a situaciones empresariales como las siguientes5
9
4redecir /entas"
9
Dirigir correo a clientes espec!icos"
9
Determinar los productos #ue se pueden /ender 0untos"
9
@uscar secuencias en el orden en #ue los clientes agregan productos a una cesta de compra"
9
Detecci*n de !raudes5 Esta es una aplicaci*n #ue puede ser considerada como una t'cnica de clasi!icaci*n" En e!ecto% cuando el algoritmo anali)a una gran cantidad de transacciones% el mismo tratar( de categori)ar a#uellas #ue sean ilegtimas mediante la identi!icaci*n de ciertas caractersticas #ue estas .ltimas tengan en com.n" Esto puede ser usado en las corporaciones para pre/enir #ue se culmine un proceso #ue muestre pertenecer a una clase peligrosa
9
An(lisis de riesgos en cr'ditos5 Esta es una aplicaci*n similar a la anterior% pero con la /enta0a de la e+istencia de maneras tradicionales para reali)arlo" El cl(sico procedimiento de asignaci*n de puntos puede ser complementado 1 me0orado con la a1uda de la minera de datos"
9
Clasi!icaci*n de cuerpos celestes5 Debido a la gran contribuci*n a estas tareas por parte del reconocimiento de im(genes 1 los pre9procesamientos in/olucrados% esta aplicaci*n tambi'n puede considerarse como perteneciente al (rea del reconocimiento de patrones de im(genes 64attern Recognition7"
9
-inera de te+to5 Con billones de p(ginas en la red% se re#uieren de nue/as tecnologas para encontrar% clasi!icar 1 detectar particulares patrones en la in!ormaci*n disponible" La esencia de los m'todos de la minera de datos aplicados a los datos num'ricos% puede tambi'n ser aplicada a datos de te+to"
1
CONC*U#ION Luego de la toda la in!ormaci*n leda e incluida en este documento llego a la conclusi*n sobre la minera de datos #ue la !unciona #ue reali)a es sorprendente 1a #ue dada su estructura es capa) de aprender a como apo1ar en las decisiones para las personas% as como obtener su propia propuesta de soluci*n todo lo #ue lo plantea da buen camino a usarlo" Desde su aparici*n o lo #ue se puede decir su nacimiento en% !ueron me0orando poco a poco su estructura% iniciando con el apo1o de decisiones pero no de manera e!iciente pero% 1a daba inicios de propuestas 1 eso es a/ance Se $ace menci*n de (rboles de decisiones pues es una base principal de la minera de datos% con esto en todo su proceso puede determinar las me0ores salidas% en los temas de Arboles de decisiones se muestran 1 mencionan los protocolos usados para desempe,ar de la me0or manera sus acti/idades 1 acercando m(s a una inteligencia independiente" Lo tratado en este documento es como se constitu1e la minera de datos% ampliar la in!ormaci*n sobre c*mo se desarrolla cada proceso sera demasiado e+tenso por eso es #ue a#u se concentr* todo lo b(sico% 1 es mu1 interesante 1a #ue tiene un algoritmo #ue podemos comparar con la inteligencia $umana 6claro no tan desarrollada 1 nada comple0a7 pero cada /e) m(s se acerca a ra)onamiento" La tecnologa a/an)a as mismo los algoritmos cada /e) m(s desarrollados capaces de lograr inimaginables cosas% asi es como debera !uncionar la IA"
!"
BIBLIOGRAFÍA aanada I. a. 7*"!48. Raúl Benítez,Gerard Escudero,Samir Kanaan,David Masip Rodó 9ditorial :%C. Ceccaroni $. 7*""8. Inteli!encia "rti#cial Fadul (. %. 7Maro *""48. Dise$o estructurado de al!oritmos Colombia9ditorial ;incelejo. Fernonso &ali,ienso M. (. 7*""38. Inteli/encia artifcial- modelos t?cnicas @ o.