├── Data_all_backup_recommendation ├── 2017-09-11_13_17_40_192.168.76.201_recommendation.txt ├── 2017-09-11_13_29_20_192.168.18.12_recommendation.txt ├── 2017-09-16_12_31_20_10.20.205.86_recommendation.txt ├── 2017-09-16_12_32_40_10.20.205.93_recommendation.txt ├── 2017-09-16_12_33_15_10.20.205.82_recommendation.txt ├── 2017-09-16_12_35_56_10.20.205.91_recommendation.txt ├── 2017-09-16_13_08_39_10.20.205.82_recommendation.txt ├── 2017-09-16_13_16_28_10.20.205.93_recommendation.txt ├── 2017-09-16_13_28_57_10.20.205.82_recommendation.txt ├── 2017-09-16_13_47_12_10.20.205.93_recommendation.txt ├── 2017-09-16_13_49_27_10.20.205.82_recommendation.txt ├── 2017-09-16_14_15_48_10.20.205.82_recommendation.txt ├── 2017-09-16_14_18_00_10.20.205.93_recommendation.txt ├── 2017-09-16_14_37_23_10.20.205.82_recommendation.txt ├── 2017-09-16_14_43_19_10.20.205.93_recommendation.txt ├── 2017-09-16_15_00_59_10.20.205.82_recommendation.txt ├── 2017-09-16_15_05_20_10.20.205.93_recommendation.txt ├── 2017-09-16_15_07_10_10.20.205.86_recommendation.txt ├── 2017-09-16_15_29_51_10.20.205.82_recommendation.txt ├── 2017-09-16_15_30_04_10.20.205.86_recommendation.txt ├── 2017-09-16_15_32_22_10.20.205.93_recommendation.txt ├── 2017-09-16_15_52_41_10.20.205.91_recommendation.txt ├── 2017-09-16_16_32_25_10.20.205.91_recommendation.txt ├── 2017-09-16_16_32_50_10.20.205.82_recommendation.txt ├── 2017-09-17_11_26_04_10.20.205.93_recommendation.txt ├── 2017-09-17_12_00_36_10.20.205.93_recommendation.txt ├── 2017-09-17_12_19_23_10.20.205.82_recommendation.txt ├── 2017-09-17_12_20_26_10.20.205.86_recommendation.txt ├── 2017-09-17_12_30_01_10.20.205.91_recommendation.txt ├── 2017-09-17_12_37_49_10.20.205.82_recommendation.txt ├── 2017-09-17_12_38_39_10.20.205.86_recommendation.txt ├── 2017-09-17_12_51_24_10.20.205.93_recommendation.txt ├── 2017-09-17_12_51_59_10.20.205.91_recommendation.txt ├── 2017-09-17_12_56_09_10.20.205.86_recommendation.txt ├── 2017-09-17_12_57_40_10.20.205.82_recommendation.txt ├── 2017-09-17_13_06_30_10.20.205.97_recommendation.txt ├── 2017-09-17_13_10_54_10.20.205.93_recommendation.txt ├── 2017-09-17_13_20_59_10.20.205.86_recommendation.txt ├── 2017-09-17_13_21_03_10.20.205.82_recommendation.txt ├── 2017-09-17_13_44_44_10.20.205.82_recommendation.txt ├── 2017-09-17_13_50_07_10.20.205.86_recommendation.txt ├── 2017-09-17_13_50_22_10.20.205.91_recommendation.txt ├── 2017-09-17_13_51_58_10.20.205.93_recommendation.txt ├── 2017-09-17_13_52_49_10.20.205.97_recommendation.txt └── 2017-09-17_14_03_24_10.20.205.82_recommendation.txt ├── GSP_96.pdf ├── GSP_IMPLEMENTATION.txt ├── GSP_Workflow.png ├── LICENSE ├── README.md ├── Slides.pdf ├── Survey_sequential_pattern_mining.pdf ├── gsp.py ├── gsp.pyc ├── gsp2.py ├── gsp2.pyc ├── main.py └── main2.py /Data_all_backup_recommendation/2017-09-11_13_17_40_192.168.76.201_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-11 13:18:28;topos#Châteaulin;chronos#XXe siècle 2 | 2017-09-11 13:19:26;topos#Guiler-sur-Goyen 3 | 2017-09-11 13:20:28;thema#Chapelle;chronos#XVIe siècle 4 | 2017-09-11 13:21:26;topos#Ruca 5 | 2017-09-11 13:22:29;thema#Chapiteau;topos#Saint-Caradec-Trégomel;chronos#XVIIIe siècle 6 | 2017-09-11 13:23:28;chronos#XVe siècle 7 | 2017-09-11 13:24:29;thema#Retable;topos#Saint-Thélo;chronos#XVIIe siècle 8 | 2017-09-11 13:26:27;topos#Ruca 9 | 2017-09-11 13:27:27;topos#Névez 10 | 2017-09-11 13:28:30;thema#Vitrail;topos#Saint-Nicolas-du-Pélem;chronos#XVe siècle 11 | 2017-09-11 13:29:30;topos#Saint-Brieuc;chronos#XIXe siècle 12 | 2017-09-11 13:31:45;thema#Clocher;topos#Melrand 13 | 2017-09-11 13:32:27;topos#Ploufragan 14 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-11_13_29_20_192.168.18.12_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-11 13:29:57;topos#Plouézoch 2 | 2017-09-11 13:30:20;thema#Tableau;topos#Landévennec;chronos#XVIIe siècle 3 | 2017-09-11 13:30:57;thema#Chapelle 4 | 2017-09-11 13:31:59;thema#Château;topos#Saint-Martin-des-Champs;chronos#XVIIIe siècle 5 | 2017-09-11 13:32:59;topos#Le Conquet;chronos#XVe siècle 6 | 2017-09-11 13:33:58;thema#Autel;topos#Plumergat 7 | 2017-09-11 13:34:59;thema#Croix;chronos#XVIIe siècle 8 | 2017-09-11 13:35:57;topos#Les Fougerêts 9 | 2017-09-11 13:37:59;thema#Presbytère;chronos#XVe siècle 10 | 2017-09-11 13:38:12;thema#Habitations religieuses;topos#Morbihan;chronos#Renaissance 11 | 2017-09-11 13:39:01;chronos#XIXe siècle 12 | 2017-09-11 13:39:39;thema#Couvent;topos#Loperhet;chronos#1602 13 | 2017-09-11 13:40:59;thema#Bannière;topos#Loc-Brévalaire 14 | 2017-09-11 13:41:36;thema#Jardin;topos#Brest;chronos#XVIIIe siècle 15 | 2017-09-11 13:42:01;thema#Quai;topos#Sibiril;chronos#XXe siècle 16 | 2017-09-11 13:43:01;chronos#XIIIe siècle 17 | 2017-09-11 13:44:00;chronos#XVIe siècle 18 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_12_31_20_10.20.205.86_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 12:31:46;topos#Ploudaniel 2 | 2017-09-16 12:32:41;thema#Manoir;topos#Bodilis;chronos#XVe siècle 3 | 2017-09-16 12:33:41;thema#Confessionnal;topos#Pouldreuzic;chronos#XVIIe siècle 4 | 2017-09-16 12:33:44;thema#Patrimoine religieux;topos#Finistère;chronos#Grands siècles 5 | 2017-09-16 12:34:40;topos#Landunvez 6 | 2017-09-16 12:35:15;thema#Charpente;topos#Bodilis;chronos#XVIe siècle 7 | 2017-09-16 12:36:24;thema#Lieux de culte et de dévotion;topos#Saint-Goazec;chronos#1601 8 | 2017-09-16 12:36:40;thema#Patrimoine religieux;topos#Finistère 9 | 2017-09-16 12:37:05;thema#Fort;topos#Plouzané;chronos#XIXe siècle 10 | 2017-09-16 12:38:25;topos#Bodilis;chronos#1806 11 | 2017-09-16 12:39:05;thema#Puits;topos#Landeleau;chronos#XVIe siècle 12 | 2017-09-16 12:39:40;thema#Reliquaire 13 | 2017-09-16 12:40:15;thema#Manoir;topos#Plouzané;chronos#XVIIe siècle 14 | 2017-09-16 12:40:41;topos#Finistère;chronos#Grands siècles 15 | 2017-09-16 12:41:20;thema#Lotissement;topos#Saint-Jacut-de-la-Mer;chronos#XIXe siècle 16 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_12_32_40_10.20.205.93_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 12:34:16;thema#Bassin;chronos#XIXe siècle 2 | 2017-09-16 12:35:15;chronos#XXe siècle 3 | 2017-09-16 12:36:16;thema#Sol;chronos#XVIIe siècle 4 | 2017-09-16 12:37:16;topos#Quintin;chronos#XVIIIe siècle 5 | 2017-09-16 12:41:00;thema#Patrimoine religieux;topos#Morbihan;chronos#1948 6 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_12_33_15_10.20.205.82_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 12:33:23;thema#Chapelle;topos#Saint-Urbain;chronos#XVIIIe siècle 2 | 2017-09-16 12:33:55;thema#Port;topos#Pontrieux;chronos#XXe siècle 3 | 2017-09-16 12:35:23;chronos#XVIIe siècle 4 | 2017-09-16 12:36:23;thema#Usine;chronos#XIXe siècle 5 | 2017-09-16 12:37:23;thema#Produits manufacturés;topos#Plounévez-Moëdec;chronos#XVIIIe siècle 6 | 2017-09-16 12:38:22;thema#Objet manufacturé;topos#Quimperlé 7 | 2017-09-16 12:39:22;topos#Clohars-Carnoët 8 | 2017-09-16 12:40:22;thema#Moulin à vent;topos#Finistère 9 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_12_35_56_10.20.205.91_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 12:36:38;thema#Église;topos#Telgruc-sur-Mer 2 | 2017-09-16 12:37:39;thema#Vitrail;topos#Quéménéven;chronos#XVIe siècle 3 | 2017-09-16 12:38:31;thema#Fonts baptismaux;topos#Guilers;chronos#XVe siècle 4 | 2017-09-16 12:39:23;thema#Portail;topos#Corseul;chronos#XIIe siècle 5 | 2017-09-16 12:39:37;thema#Lieux de culte et de dévotion;topos#Saint-Yvi;chronos#Grands siècles 6 | 2017-09-16 12:40:40;thema#Chapelle;topos#Lampaul-Plouarzel;chronos#XVIIe siècle 7 | 2017-09-16 12:41:00;thema#Calvaire;topos#Plémet;chronos#XVIe siècle 8 | 2017-09-16 12:41:39;thema#Croix;chronos#XVIIIe siècle 9 | 2017-09-16 12:42:38;topos#Saint-Servais 10 | 2017-09-16 12:43:39;topos#Saint-Ygeaux;chronos#Grands siècles 11 | 2017-09-16 12:43:52;thema#Chemin de croix;topos#Côtes-d'Armor;chronos#XVIIe siècle 12 | 2017-09-16 12:44:08;thema#Croix;topos#Mellionnec;chronos#1506 13 | 2017-09-16 12:44:40;thema#Boiserie;topos#Tréguier;chronos#XVIIIe siècle 14 | 2017-09-16 12:45:39;topos#Langast;chronos#Grands siècles 15 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_13_08_39_10.20.205.82_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 13:10:48;thema#Presbytère;chronos#XXe siècle 2 | 2017-09-16 13:11:29;thema#Chapelle;chronos#XIXe siècle 3 | 2017-09-16 13:12:29;thema#Monument aux morts;topos#Trébrivan 4 | 2017-09-16 13:13:30;thema#Lieux de culte et de dévotion;topos#Melrand;chronos#XVIIIe siècle 5 | 2017-09-16 13:17:30;thema#Statue;topos#Plévin;chronos#XVIIe siècle 6 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_13_16_28_10.20.205.93_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 13:17:29;topos#Crozon 2 | 2017-09-16 13:18:30;thema#Bassin;chronos#XIXe siècle 3 | 2017-09-16 13:20:30;thema#Porte;topos#Plouzané;chronos#XVIe siècle 4 | 2017-09-16 13:21:30;thema#Jardin;topos#Île-de-Batz;chronos#XXe siècle 5 | 2017-09-16 13:21:33;thema#Habitat;topos#Finistère;chronos#Grandes empires et guerres mondiales 6 | 2017-09-16 13:22:12;thema#Fenêtre;topos#Le Quillio;chronos#XVIIIe siècle 7 | 2017-09-16 13:22:23;thema#Chapelle;topos#Côtes-d'Armor;chronos#XVIIe siècle 8 | 2017-09-16 13:22:34;thema#Jardin;topos#Saint-Goazec;chronos#XXe siècle 9 | 2017-09-16 13:24:30;topos#Carantec;chronos#Grandes empires et guerres mondiales 10 | 2017-09-16 13:24:34;thema#Fenêtre;topos#Finistère;chronos#XVIIIe siècle 11 | 2017-09-16 13:24:47;thema#Chœur;topos#Île-Tudy;chronos#1704 12 | 2017-09-16 13:25:31;thema#Voûte;topos#Locmalo;chronos#XVe siècle 13 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_13_28_57_10.20.205.82_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 13:31:03;chronos#XXe siècle 2 | 2017-09-16 13:31:26;thema#Exploitation;topos#Esquibien;chronos#1900 3 | 2017-09-16 13:31:44;topos#Finistère;chronos#XVIIIe siècle 4 | 2017-09-16 13:32:02;chronos#Grandes empires et guerres mondiales 5 | 2017-09-16 13:33:01;thema#Tableau 6 | 2017-09-16 13:34:03;thema#Soue à cochon;topos#La Gacilly;chronos#XIXe siècle 7 | 2017-09-16 13:35:00;thema#Élevage;topos#Carnac;chronos#IVe siècle 8 | 2017-09-16 13:36:02;chronos#XVIIe siècle 9 | 2017-09-16 13:36:18;thema#Création;chronos#1606 10 | 2017-09-16 13:36:27;thema#Gravure;topos#La Gacilly;chronos#1649 11 | 2017-09-16 13:38:02;thema#Fontaine;topos#Saint-Nic 12 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_13_47_12_10.20.205.93_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 13:48:17;topos#Penmarc'h;chronos#XVIe siècle 2 | 2017-09-16 13:49:16;chronos#XXe siècle 3 | 2017-09-16 13:50:16;topos#Finistère;chronos#XIXe siècle 4 | 2017-09-16 13:51:17;topos#Quimper;chronos#XVIIIe siècle 5 | 2017-09-16 13:52:16;thema#Broie;topos#Noyal-sous-Bazouges 6 | 2017-09-16 13:53:18;thema#Jardin;topos#Île-de-Batz;chronos#XXe siècle 7 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_13_49_27_10.20.205.82_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 13:50:49;topos#Trégarantec 2 | 2017-09-16 13:52:49;topos#Telgruc-sur-Mer 3 | 2017-09-16 13:57:32;thema#Statue;topos#Finistère;chronos#XVIe siècle 4 | 2017-09-16 13:58:48;thema#Patrimoine naturel 5 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_14_15_48_10.20.205.82_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 14:16:20;chronos#XXe siècle 2 | 2017-09-16 14:17:20;topos#Plouguenast;chronos#XIXe siècle 3 | 2017-09-16 14:17:41;thema#Fléau;topos#Côtes-d'Armor;chronos#Grandes empires et guerres mondiales 4 | 2017-09-16 14:17:50;thema#Culture du sol;topos#La Forêt-Fouesnant;chronos#1804 5 | 2017-09-16 14:18:20;thema#Broyeur;topos#Plouvien;chronos#XVIIIe siècle 6 | 2017-09-16 14:19:43;thema#Pressoir;topos#Argol;chronos#XIXe siècle 7 | 2017-09-16 14:20:04;thema#Charrue;topos#Finistère;chronos#XXe siècle 8 | 2017-09-16 14:20:18;thema#Culture du sol 9 | 2017-09-16 14:20:31;thema#Crucifix;topos#Plouvien;chronos#XVIIe siècle 10 | 2017-09-16 14:20:51;thema#Fontaine;topos#Poullan-sur-Mer;chronos#Grands siècles 11 | 2017-09-16 14:21:18;thema#Couvert;topos#Plougastel-Daoulas;chronos#XVIe siècle 12 | 2017-09-16 14:21:33;thema#Habitat;topos#La Forêt-Fouesnant;chronos#XIXe siècle 13 | 2017-09-16 14:22:01;thema#Château;topos#Plounévez-Lochrist;chronos#XVIIIe siècle 14 | 2017-09-16 14:22:19;thema#Fontaine 15 | 2017-09-16 14:23:21;thema#Cadran solaire;topos#Lesneven;chronos#Grandes empires et guerres mondiales 16 | 2017-09-16 14:24:14;thema#Habitat;topos#Châteaulin;chronos#XVIIe siècle 17 | 2017-09-16 14:24:20;thema#Façade;chronos#Grands siècles 18 | 2017-09-16 14:25:21;thema#Fontaine;chronos#XVIe siècle 19 | 2017-09-16 14:25:50;thema#Mur;topos#Île-Tudy;chronos#XIXe siècle 20 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_14_18_00_10.20.205.93_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 14:19:42;thema#Statue;topos#Finistère;chronos#XVIe siècle 2 | 2017-09-16 14:20:27;thema#Plan et carte;topos#Châteaubourg;chronos#XVIIIe siècle 3 | 2017-09-16 14:20:37;thema#Patrimoine administratif et politique;topos#Ile-et-Vilaine;chronos#Grandes empires et guerres mondiales 4 | 2017-09-16 14:21:05;thema#Archives;topos#Quimper;chronos#XIVe siècle 5 | 2017-09-16 14:21:37;thema#Cheminée;topos#Pont-Croix;chronos#Grands siècles 6 | 2017-09-16 14:21:53;thema#Pilastre;topos#Plouha;chronos#XVIIIe siècle 7 | 2017-09-16 14:22:13;thema#Habitat;topos#Côtes-d'Armor;chronos#1705 8 | 2017-09-16 14:22:26;thema#Maison;topos#Plélo;chronos#1701 9 | 2017-09-16 14:22:53;thema#Four;topos#Corlay 10 | 2017-09-16 14:23:13;thema#Pilastre;topos#Poullaouen;chronos#XIXe siècle 11 | 2017-09-16 14:23:17;thema#Patrimoine de la vie quotidienne;topos#Finistère;chronos#Grandes empires et guerres mondiales 12 | 2017-09-16 14:23:53;thema#Berceau;topos#Rostrenen 13 | 2017-09-16 14:24:00;thema#Façade;topos#Plélo;chronos#1801 14 | 2017-09-16 14:24:16;thema#Pilastre;topos#Plouha;chronos#XIXe siècle 15 | 2017-09-16 14:24:55;thema#Tour;topos#Taden;chronos#XVIe siècle 16 | 2017-09-16 14:25:54;thema#Chasse-roue;chronos#XIVe siècle 17 | 2017-09-16 14:26:24;thema#Mur;topos#Esquibien;chronos#XVIIe siècle 18 | 2017-09-16 14:26:55;thema#Pilastre;topos#Saint-Jacut-de-la-Mer;chronos#XIXe siècle 19 | 2017-09-16 14:27:21;thema#Lieux de culte et de dévotion;topos#Concarneau;chronos#Grands siècles 20 | 2017-09-16 14:27:52;topos#Pont-de-Buis-les-Quimerc’h 21 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_14_37_23_10.20.205.82_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 14:39:21;thema#Exploitation;chronos#XXe siècle 2 | 2017-09-16 14:39:28;thema#Agro-alimentaire;topos#Finistère;chronos#Grandes empires et guerres mondiales 3 | 2017-09-16 14:40:21;thema#Outil;topos#Saint-Derrien;chronos#XVIIe siècle 4 | 2017-09-16 14:41:20;topos#Lanhélin 5 | 2017-09-16 14:43:16;thema#Hôtel particulier;topos#Acigné;chronos#XIXe siècle 6 | 2017-09-16 14:43:20;chronos#Grandes empires et guerres mondiales 7 | 2017-09-16 14:44:20;topos#Taupont 8 | 2017-09-16 14:45:08;topos#Morbihan;chronos#1603 9 | 2017-09-16 14:46:20;thema#Dépendance;topos#Augan 10 | 2017-09-16 14:47:20;thema#Plat 11 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_14_43_19_10.20.205.93_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 14:44:13;chronos#XXe siècle 2 | 2017-09-16 14:46:13;thema#Fonts baptismaux;topos#Saint-Thurien;chronos#XVIIe siècle 3 | 2017-09-16 14:47:13;chronos#XIXe siècle 4 | 2017-09-16 14:53:13;thema#Rempart;topos#Dinan;chronos#XVIIIe siècle 5 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_15_00_59_10.20.205.82_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 15:02:01;topos#Rédéné;chronos#XXe siècle 2 | 2017-09-16 15:03:00;thema#Cul de lampe;chronos#XIXe siècle 3 | 2017-09-16 15:05:00;thema#Calvaire;chronos#XVe siècle 4 | 2017-09-16 15:08:01;topos#Berrien;chronos#XVIe siècle 5 | 2017-09-16 15:08:59;thema#Fronton 6 | 2017-09-16 15:09:59;topos#Locunolé 7 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_15_05_20_10.20.205.93_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 15:06:23;topos#Finistère;chronos#XXe siècle 2 | 2017-09-16 15:07:24;thema#Fontaine de dévotion;topos#Loctudy;chronos#XVIIIe siècle 3 | 2017-09-16 15:08:22;thema#Patrimoine administratif et politique 4 | 2017-09-16 15:09:23;thema#Lieux de culte et de dévotion;topos#Tréflez 5 | 2017-09-16 15:10:24;thema#Porte;topos#Le Folgoët;chronos#XVe siècle 6 | 2017-09-16 15:11:24;thema#Tribune;topos#Landunvez;chronos#XVIe siècle 7 | 2017-09-16 15:12:24;thema#Colonne;topos#Loctudy;chronos#XIIe siècle 8 | 2017-09-16 15:13:23;thema#Croix;topos#Finistère;chronos#XXe siècle 9 | 2017-09-16 15:14:23;thema#Linteau;topos#Bonnemain 10 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_15_07_10_10.20.205.86_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 15:07:56;topos#Finistère;chronos#XXe siècle 2 | 2017-09-16 15:08:56;thema#Salle capitulaire;topos#Daoulas;chronos#XIIe siècle 3 | 2017-09-16 15:09:56;thema#Abbatiale;chronos#XVIe siècle 4 | 2017-09-16 15:10:56;thema#Chancel;topos#Locquirec;chronos#XVIIe siècle 5 | 2017-09-16 15:11:55;chronos#XVIIIe siècle 6 | 2017-09-16 15:12:55;thema#Statue;topos#Saint-Derrien 7 | 2017-09-16 15:13:56;thema#Bassin;topos#Île-Molène;chronos#XIXe siècle 8 | 2017-09-16 15:14:55;thema#Fontaine de dévotion;topos#Plouay 9 | 2017-09-16 15:15:55;topos#Les Fougerêts 10 | 2017-09-16 15:16:55;chronos#XVIIIe siècle 11 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_15_29_51_10.20.205.82_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 15:30:51;topos#Finistère;chronos#XXe siècle 2 | 2017-09-16 15:31:50;thema#Exploitation;topos#Concarneau 3 | 2017-09-16 15:32:51;thema#Bassin;chronos#XIXe siècle 4 | 2017-09-16 15:33:51;topos#Ploufragan;chronos#XVIIIe siècle 5 | 2017-09-16 15:34:51;topos#La Méaugon;chronos#XVIIe siècle 6 | 2017-09-16 15:35:50;thema#Alambic;topos#Pont-L'Abbé 7 | 2017-09-16 15:36:50;thema#Agro-alimentaire 8 | 2017-09-16 15:37:52;thema#Moulin à eau;topos#Pluneret;chronos#XXe siècle 9 | 2017-09-16 15:38:50;thema#Exploitation 10 | 2017-09-16 15:39:51;topos#Lamballe;chronos#XIe siècle 11 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_15_30_04_10.20.205.86_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 15:30:58;topos#Tréméoc;chronos#XVIe siècle 2 | 2017-09-16 15:32:58;thema#Presbytère;chronos#XVIIIe siècle 3 | 2017-09-16 15:34:57;thema#Poutre de gloire;topos#Lampaul-Guimiliau 4 | 2017-09-16 15:36:01;thema#Habitations religieuses;topos#Finistère;chronos#Grandes empires et guerres mondiales 5 | 2017-09-16 15:36:33;thema#Statue;topos#Lanvéoc;chronos#XVIIe siècle 6 | 2017-09-16 15:36:57;topos#Plouescat 7 | 2017-09-16 15:37:33;thema#Presbytère;topos#Saint-Goazec;chronos#XVIIIe siècle 8 | 2017-09-16 15:37:58;thema#Borne;topos#Trébabu;chronos#Grandes empires et guerres mondiales 9 | 2017-09-16 15:38:06;thema#Transports routiers;topos#Finistère;chronos#1700 10 | 2017-09-16 15:39:58;thema#Canalisation;topos#Pluzunet;chronos#XIXe siècle 11 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_15_32_22_10.20.205.93_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 15:35:21;thema#Lambris 2 | 2017-09-16 15:35:55;thema#Cul de lampe;topos#Finistère;chronos#XIXe siècle 3 | 2017-09-16 15:36:21;topos#Locronan 4 | 2017-09-16 15:37:22;thema#Manoir;topos#La Forêt-Fouesnant;chronos#XVIIIe siècle 5 | 2017-09-16 15:38:10;topos#Lannilis;chronos#XVIe siècle 6 | 2017-09-16 15:38:21;topos#Dinéault 7 | 2017-09-16 15:39:22;thema#Voie ferrée;topos#Finistère;chronos#XIXe siècle 8 | 2017-09-16 15:40:02;thema#Patrimoine industriel et artisanal;topos#Saint-Goazec;chronos#1802 9 | 2017-09-16 15:40:21;thema#Rouissoir;topos#Plourivo 10 | 2017-09-16 15:41:22;thema#Bateau;topos#Le Minihic-sur-Rance;chronos#XXe siècle 11 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_15_52_41_10.20.205.91_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 15:53:11;thema#Presbytère;chronos#XVIIIe siècle 2 | 2017-09-16 15:54:12;thema#Porche;topos#Audierne;chronos#XVIe siècle 3 | 2017-09-16 15:55:11;thema#Prieuré;topos#Dinan;chronos#XIXe siècle 4 | 2017-09-16 15:56:11;thema#Cloître;topos#Vannes;chronos#XVIIe siècle 5 | 2017-09-16 15:57:11;thema#Chaumière;topos#Saint-Goazec 6 | 2017-09-16 15:58:13;topos#Audierne;chronos#XVIe siècle 7 | 2017-09-16 15:59:13;topos#Bignan;chronos#XVIIIe siècle 8 | 2017-09-16 16:00:13;thema#Retable;topos#Guimiliau;chronos#XVIIe siècle 9 | 2017-09-16 16:02:12;topos#Riec-sur-Belon 10 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_16_32_25_10.20.205.91_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 16:33:47;thema#Exploitation;chronos#XXe siècle 2 | 2017-09-16 16:34:02;thema#Bassin;topos#Cléden-Cap-Sizun;chronos#XIXe siècle 3 | 2017-09-16 16:34:47;topos#Maroué;chronos#XVIIe siècle 4 | 2017-09-16 16:35:07;topos#Finistère;chronos#XVIIIe siècle 5 | 2017-09-16 16:35:46;thema#Falaise;topos#Clohars-Carnoët 6 | 2017-09-16 16:36:04;thema#Ferme;topos#Mellac;chronos#XIXe siècle 7 | 2017-09-16 16:36:46;thema#Culture du sol;topos#Remungol 8 | 2017-09-16 16:37:40;thema#Patrimoine rural et agricole;topos#Trébrivan;chronos#XVIIIe siècle 9 | 2017-09-16 16:37:47;thema#Château;topos#Missiriac;chronos#Grandes empires et guerres mondiales 10 | 2017-09-16 16:38:48;thema#Canalisation;topos#Pluzunet;chronos#XIXe siècle 11 | 2017-09-16 16:39:46;thema#Lavoir;topos#Plessala 12 | 2017-09-16 16:40:18;thema#Patrimoine industriel et artisanal;topos#Berrien;chronos#XVIIe siècle 13 | 2017-09-16 16:40:47;thema#Port;topos#Sibiril;chronos#XXe siècle 14 | 2017-09-16 16:41:47;thema#Aqueduc;topos#Concarneau;chronos#XIXe siècle 15 | 2017-09-16 16:41:59;thema#Transports maritimes;topos#Finistère;chronos#XVIIIe siècle 16 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-16_16_32_50_10.20.205.82_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-16 16:33:40;chronos#XIXe siècle 2 | 2017-09-16 16:34:12;thema#Bassin;topos#L’Hôpital-Camfrout;chronos#Grandes empires et guerres mondiales 3 | 2017-09-16 16:34:40;topos#Bourg-Blanc 4 | 2017-09-16 16:35:41;thema#Fenêtre;topos#Finistère;chronos#XXe siècle 5 | 2017-09-16 16:36:40;topos#Plomodiern 6 | 2017-09-16 16:37:35;thema#Réservoir;topos#Locqueltas;chronos#Grandes empires et guerres mondiales 7 | 2017-09-16 16:38:40;thema#Bassin;topos#L’Hôpital-Camfrout 8 | 2017-09-16 16:39:41;thema#Manoir;topos#Plouénan;chronos#XVIe siècle 9 | 2017-09-16 16:40:41;thema#Habitat;topos#Fouesnant;chronos#XIXe siècle 10 | 2017-09-16 16:41:41;thema#Château;topos#Trédrez-Locquémeau;chronos#XIIIe siècle 11 | 2017-09-16 16:42:40;topos#Finistère;chronos#Grandes empires et guerres mondiales 12 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_11_26_04_10.20.205.93_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 11:27:58;topos#Spézet;chronos#XXe siècle 2 | 2017-09-17 11:28:58;chronos#XVIIIe siècle 3 | 2017-09-17 11:29:58;chronos#XIXe siècle 4 | 2017-09-17 11:30:59;thema#Costume traditionnel;topos#Binic;chronos#XVIIe siècle 5 | 2017-09-17 11:32:58;topos#Saint-Renan;chronos#Grandes empires et guerres mondiales 6 | 2017-09-17 11:33:57;topos#Dinan 7 | 2017-09-17 11:34:58;topos#Lampaul-Plouarzel;chronos#XXe siècle 8 | 2017-09-17 11:35:58;thema#Prieuré;chronos#XVIIe siècle 9 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_12_00_36_10.20.205.93_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 12:03:26;thema#Chapelle;chronos#XVIIe siècle 2 | 2017-09-17 12:04:25;thema#Exploitation;chronos#XXe siècle 3 | 2017-09-17 12:05:12;thema#Bas-relief;topos#Plouégat-Guerrand;chronos#XVIe siècle 4 | 2017-09-17 12:06:25;chronos#XIXe siècle 5 | 2017-09-17 12:07:25;thema#Théâtre;topos#La Roche-Bernard 6 | 2017-09-17 12:08:26;thema#Exploitation;topos#Ploufragan;chronos#XVIIIe siècle 7 | 2017-09-17 12:10:25;topos#Concarneau;chronos#Grandes empires et guerres mondiales 8 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_12_19_23_10.20.205.82_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 12:19:28;chronos#XXe siècle 2 | 2017-09-17 12:20:27;chronos#XIXe siècle 3 | 2017-09-17 12:21:28;thema#Puits;topos#Querrien;chronos#XVIIIe siècle 4 | 2017-09-17 12:22:27;thema#Costume traditionnel 5 | 2017-09-17 12:23:27;thema#Croix;topos#La Vraie-Croix 6 | 2017-09-17 12:24:28;thema#Patrimoine religieux;topos#Elven;chronos#IXe siècle 7 | 2017-09-17 12:25:28;thema#Église;topos#Île-aux-Moines;chronos#XXe siècle 8 | 2017-09-17 12:26:28;thema#Retable;topos#Limerzel;chronos#XVe siècle 9 | 2017-09-17 12:27:27;topos#Saint-Rivoal 10 | 2017-09-17 12:29:01;topos#La Vraie-Croix;chronos#XIXe siècle 11 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_12_20_26_10.20.205.86_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 12:22:05;thema#Chapelle 2 | 2017-09-17 12:23:07;thema#Statue;topos#Dirinon;chronos#XVIIe siècle 3 | 2017-09-17 12:24:06;thema#Patrimoine religieux;topos#Cléder 4 | 2017-09-17 12:25:05;thema#Retable 5 | 2017-09-17 12:25:11;thema#Croix;topos#Saint-Goazec;chronos#Grands siècles 6 | 2017-09-17 12:26:06;thema#Bénitier;chronos#XVIe siècle 7 | 2017-09-17 12:26:47;thema#Linteau;topos#Plogoff;chronos#XIXe siècle 8 | 2017-09-17 12:27:07;thema#Lieux de culte et de dévotion;topos#Allaire;chronos#IXe siècle 9 | 2017-09-17 12:27:46;thema#Vase acoustique;topos#Trégourez;chronos#XVIIe siècle 10 | 2017-09-17 12:28:05;topos#Le Juch 11 | 2017-09-17 12:30:17;thema#Bénitier;topos#Douarnenez;chronos#Grands siècles 12 | 2017-09-17 12:30:23;thema#Lieux de culte et de dévotion;topos#Finistère;chronos#XVIe siècle 13 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_12_30_01_10.20.205.91_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 12:31:21;chronos#XIXe siècle 2 | 2017-09-17 12:31:38;thema#Cul de lampe;topos#Finistère;chronos#1847 3 | 2017-09-17 12:32:48;thema#Mesure à grains;topos#Lanvéoc;chronos#XVIIe siècle 4 | 2017-09-17 12:33:21;thema#Lieux de culte et de dévotion;chronos#Grandes empires et guerres mondiales 5 | 2017-09-17 12:34:20;thema#Société 6 | 2017-09-17 12:34:46;thema#Maison;chronos#1847 7 | 2017-09-17 12:35:22;thema#Serrure;topos#Lanvaudan;chronos#XIVe siècle 8 | 2017-09-17 12:35:41;thema#Habitat;topos#Plancoët;chronos#Grands siècles 9 | 2017-09-17 12:36:22;thema#Four;topos#Bannalec;chronos#XIXe siècle 10 | 2017-09-17 12:36:50;thema#Maison;topos#Finistère;chronos#1847 11 | 2017-09-17 12:37:21;topos#Henvic;chronos#Renaissance 12 | 2017-09-17 12:38:44;thema#Cul de lampe;chronos#XVIIe siècle 13 | 2017-09-17 12:39:22;thema#Frise;topos#Dinard;chronos#XXe siècle 14 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_12_37_49_10.20.205.82_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 12:39:18;thema#Bassin;chronos#XIXe siècle 2 | 2017-09-17 12:40:14;thema#Réservoir;topos#Locqueltas;chronos#XXe siècle 3 | 2017-09-17 12:41:15;thema#Maison;topos#Trémorel 4 | 2017-09-17 12:42:41;thema#Habitat;topos#Morbihan;chronos#Grandes empires et guerres mondiales 5 | 2017-09-17 12:42:45;thema#Mur;topos#Saint-Goazec;chronos#1901 6 | 2017-09-17 12:43:16;topos#Plougastel-Daoulas;chronos#XVIIe siècle 7 | 2017-09-17 12:44:08;thema#Crucifix;topos#Finistère;chronos#1602 8 | 2017-09-17 12:45:16;thema#Bénitier;chronos#XVIe siècle 9 | 2017-09-17 12:46:17;thema#Lieux de culte et de dévotion;topos#Camaret-sur-Mer;chronos#XXe siècle 10 | 2017-09-17 12:47:15;thema#Prieuré 11 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_12_38_39_10.20.205.86_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 12:39:38;thema#Mentalités 2 | 2017-09-17 12:40:39;thema#Presbytère;chronos#XVIIIe siècle 3 | 2017-09-17 12:41:39;chronos#XIXe siècle 4 | 2017-09-17 12:45:38;thema#Habitations religieuses;topos#Saint-Thurial 5 | 2017-09-17 12:46:39;thema#Tableau;topos#Larmor-Baden;chronos#XXe siècle 6 | 2017-09-17 12:47:40;thema#Pierres de fondation;topos#La Poterie;chronos#XVIIe siècle 7 | 2017-09-17 12:48:38;topos#Plancoët 8 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_12_51_24_10.20.205.93_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 12:52:05;chronos#XXe siècle 2 | 2017-09-17 12:54:05;thema#Chapelle;chronos#XVIIe siècle 3 | 2017-09-17 12:56:05;thema#Moulin à eau;chronos#XIXe siècle 4 | 2017-09-17 12:57:04;topos#Finistère 5 | 2017-09-17 12:58:04;topos#Saint-Pierre Quiberon 6 | 2017-09-17 12:59:04;thema#Pont ;topos#Taulé 7 | 2017-09-17 13:01:04;thema#Habitat;topos#Carhaix-Plouguer 8 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_12_51_59_10.20.205.91_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 12:53:15;thema#Fontaine de dévotion;topos#Lanneufret;chronos#XVIIe siècle 2 | 2017-09-17 12:53:19;thema#Chapelle;topos#Saint-Coulitz;chronos#Grands siècles 3 | 2017-09-17 12:54:15;thema#Poudrière;topos#Rosnoën;chronos#XIXe siècle 4 | 2017-09-17 12:55:16;thema#Lavoir;topos#Brest;chronos#XVIIIe siècle 5 | 2017-09-17 12:55:46;thema#Pressoir;topos#Pont-Aven;chronos#Grandes empires et guerres mondiales 6 | 2017-09-17 12:56:13;thema#Culture du sol 7 | 2017-09-17 12:57:14;thema#Infrastructures publiques;topos#Tréméoc 8 | 2017-09-17 12:58:15;thema#Chapelle;topos#Landudal;chronos#Grands siècles 9 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_12_56_09_10.20.205.86_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 12:58:11;topos#La Forêt-Fouesnant;chronos#XVIIIe siècle 2 | 2017-09-17 12:59:11;thema#Chapelle;topos#Plomelin;chronos#XIXe siècle 3 | 2017-09-17 13:01:11;thema#Chapiteau;topos#Pouldergat;chronos#XIIe siècle 4 | 2017-09-17 13:01:21;thema#Calvaire;topos#Finistère;chronos#1102 5 | 2017-09-17 13:01:36;thema#Lieux de culte et de dévotion;topos#Saint-Goazec;chronos#Grandes empires et guerres mondiales 6 | 2017-09-17 13:02:11;topos#Pouldreuzic;chronos#XXe siècle 7 | 2017-09-17 13:02:46;thema#Chapelle;topos#Plomelin;chronos#XVIIe siècle 8 | 2017-09-17 13:02:53;thema#Calvaire;topos#Finistère;chronos#1649 9 | 2017-09-17 13:03:21;thema#Église;topos#Saint-Goazec;chronos#XVIe siècle 10 | 2017-09-17 13:03:32;thema#Cale;topos#La Forêt-Fouesnant;chronos#Grands siècles 11 | 2017-09-17 13:03:43;thema#Blanchisserie;topos#Camaret-sur-Mer;chronos#1607 12 | 2017-09-17 13:04:11;thema#Mur;topos#Finistère;chronos#XXe siècle 13 | 2017-09-17 13:04:45;thema#Portail;topos#Saint-Goazec;chronos#XVIe siècle 14 | 2017-09-17 13:04:55;thema#Calvaire;topos#La Forêt-Fouesnant;chronos#Grands siècles 15 | 2017-09-17 13:05:43;thema#Cale;topos#Guimiliau;chronos#1649 16 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_12_57_40_10.20.205.82_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 12:58:01;topos#Landivisiau 2 | 2017-09-17 12:59:44;topos#Landerneau 3 | 2017-09-17 13:00:45;thema#Maison;chronos#XVIe siècle 4 | 2017-09-17 13:01:44;thema#Escalier 5 | 2017-09-17 13:02:46;thema#Serrure;topos#Berrien;chronos#XIXe siècle 6 | 2017-09-17 13:03:06;thema#Habitat;topos#Plouarzel;chronos#XVIIe siècle 7 | 2017-09-17 13:03:27;thema#Manoir;topos#Landerneau;chronos#Grands siècles 8 | 2017-09-17 13:03:46;thema#Escalier;topos#Saint-Juvat;chronos#XVIIIe siècle 9 | 2017-09-17 13:04:45;topos#Loguivy-Plougras 10 | 2017-09-17 13:04:54;thema#Habitat;topos#Côtes-d'Armor;chronos#XVIIe siècle 11 | 2017-09-17 13:05:42;thema#Lavoir;topos#Brest;chronos#1606 12 | 2017-09-17 13:05:49;thema#Escalier;topos#Finistère;chronos#1603 13 | 2017-09-17 13:06:46;topos#Pont-L'Abbé;chronos#XIXe siècle 14 | 2017-09-17 13:07:26;thema#Habitat;topos#Plabennec;chronos#1804 15 | 2017-09-17 13:07:29;thema#Patrimoine de la vie quotidienne;chronos#1805 16 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_13_06_30_10.20.205.97_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 13:08:48;thema#Bassin;chronos#XIXe siècle 2 | 2017-09-17 13:09:49;thema#Chapelle;topos#Plomeur;chronos#XVIIIe siècle 3 | 2017-09-17 13:10:49;thema#Bain-douche;topos#Rennes;chronos#XXe siècle 4 | 2017-09-17 13:12:48;thema#Stade;chronos#XVIIe siècle 5 | 2017-09-17 13:14:48;topos#Trédarzec;chronos#XVIe siècle 6 | 2017-09-17 13:15:48;thema#Château;chronos#Grands siècles 7 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_13_10_54_10.20.205.93_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 13:11:28;chronos#XXe siècle 2 | 2017-09-17 13:12:29;topos#Plonévez-Porzay;chronos#XVIe siècle 3 | 2017-09-17 13:13:29;thema#Maison forte;topos#Briec;chronos#XIXe siècle 4 | 2017-09-17 13:15:29;thema#Citadelle;topos#Le Palais;chronos#XVIIIe siècle 5 | 2017-09-17 13:15:36;thema#Défense;topos#Morbihan;chronos#Grandes empires et guerres mondiales 6 | 2017-09-17 13:16:28;thema#Monument aux morts 7 | 2017-09-17 13:17:14;thema#Bastion;topos#Vannes;chronos#XVIe siècle 8 | 2017-09-17 13:17:29;thema#Château fort;topos#Corlay;chronos#XVe siècle 9 | 2017-09-17 13:19:29;thema#Rempart;topos#Roscanvel;chronos#XVIIe siècle 10 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_13_20_59_10.20.205.86_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 13:22:17;thema#Exploitation;chronos#XXe siècle 2 | 2017-09-17 13:23:17;thema#Manoir;chronos#XIXe siècle 3 | 2017-09-17 13:24:18;thema#Moulin à eau;topos#Logonna-Daoulas;chronos#XVIIIe siècle 4 | 2017-09-17 13:25:15;thema#Agro-alimentaire;topos#Pleumeur-Bodou;chronos#Grandes empires et guerres mondiales 5 | 2017-09-17 13:26:18;thema#Patrimoine industriel et artisanal;topos#La Méaugon;chronos#XVIIe siècle 6 | 2017-09-17 13:27:18;topos#Saint-Goazec;chronos#XIXe siècle 7 | 2017-09-17 13:28:11;thema#Outil;topos#Lanhélin;chronos#XXe siècle 8 | 2017-09-17 13:28:17;thema#Produits manufacturés;chronos#Grandes empires et guerres mondiales 9 | 2017-09-17 13:29:17;thema#Objet manufacturé;topos#Quimperlé 10 | 2017-09-17 13:29:24;thema#Usine;topos#Finistère;chronos#1904 11 | 2017-09-17 13:30:18;thema#Colombier;topos#Le Guilvinec;chronos#XVIe siècle 12 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_13_21_03_10.20.205.82_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 13:22:12;chronos#XVIIIe siècle 2 | 2017-09-17 13:23:12;thema#Confessionnal;topos#Pont-L'Abbé 3 | 2017-09-17 13:24:12;thema#Église;topos#Caurel 4 | 2017-09-17 13:25:13;thema#Lieux de culte et de dévotion;topos#Maël-Carhaix;chronos#XXe siècle 5 | 2017-09-17 13:28:13;thema#Tour;topos#Penmarc'h;chronos#XVIe siècle 6 | 2017-09-17 13:28:21;thema#Gargouille;topos#Finistère;chronos#XVIIe siècle 7 | 2017-09-17 13:29:12;thema#Roue;topos#Meilars-Confort;chronos#Grands siècles 8 | 2017-09-17 13:30:14;chronos#XIXe siècle 9 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_13_44_44_10.20.205.82_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 13:45:43;chronos#XIXe siècle 2 | 2017-09-17 13:46:43;topos#L’Hôpital-Camfrout;chronos#XVIe siècle 3 | 2017-09-17 13:47:42;thema#Vitrail;topos#Kersaint-Plabennec 4 | 2017-09-17 13:48:34;thema#Amer;topos#Plougonvelin;chronos#XXe siècle 5 | 2017-09-17 13:48:42;topos#Saint-Goazec 6 | 2017-09-17 13:51:42;thema#Reliquaire;topos#Pommerit-Jaudy 7 | 2017-09-17 13:52:43;thema#Porte;topos#Jugon-les-Lacs;chronos#XIXe siècle 8 | 2017-09-17 13:53:42;thema#Plat;topos#Bazouges-la-Pérouse 9 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_13_50_07_10.20.205.86_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 13:50:37;topos#Lanvéoc 2 | 2017-09-17 13:51:38;topos#Scaër;chronos#XVIIIe siècle 3 | 2017-09-17 13:52:41;thema#Fontaine;topos#Plouarzel;chronos#1799 4 | 2017-09-17 13:53:38;topos#Locquirec;chronos#XIXe siècle 5 | 2017-09-17 13:54:38;topos#Brélès;chronos#XXe siècle 6 | 2017-09-17 13:55:37;topos#Porspoder 7 | 2017-09-17 13:56:38;thema#Portail;chronos#XVIIe siècle 8 | 2017-09-17 13:58:37;thema#Poutre de gloire;topos#Glomel 9 | 2017-09-17 13:59:38;thema#Latrines;topos#Trégueux;chronos#XVIe siècle 10 | 2017-09-17 13:59:56;thema#Habitat;topos#Plémy;chronos#XVIIIe siècle 11 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_13_50_22_10.20.205.91_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 13:51:29;topos#Lennon;chronos#XXe siècle 2 | 2017-09-17 13:52:28;chronos#XVIIe siècle 3 | 2017-09-17 13:53:28;thema#Ferme 4 | 2017-09-17 13:54:28;topos#Plougastel-Daoulas 5 | 2017-09-17 13:55:29;thema#Manoir;topos#Plouézec;chronos#XVIIIe siècle 6 | 2017-09-17 13:56:29;thema#Rouissoir;chronos#XVIIe siècle 7 | 2017-09-17 13:57:28;topos#Larmor-Baden 8 | 2017-09-17 13:59:29;thema#Baratte;topos#Porspoder;chronos#XXe siècle 9 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_13_51_58_10.20.205.93_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 13:52:55;topos#Bénodet;chronos#XXe siècle 2 | 2017-09-17 13:53:56;thema#Abbaye;topos#Plougonvelin;chronos#XIIe siècle 3 | 2017-09-17 13:54:21;thema#Habitations religieuses;topos#Finistère;chronos#1101 4 | 2017-09-17 13:54:55;topos#Pont-Aven;chronos#XIXe siècle 5 | 2017-09-17 13:55:56;thema#Lavoir;topos#Tréméoc;chronos#XVIIe siècle 6 | 2017-09-17 13:56:55;thema#Rouet;topos#Argol 7 | 2017-09-17 13:57:55;thema#Culture du sol;topos#Saint-Gouéno 8 | 2017-09-17 13:58:55;chronos#XXe siècle 9 | 2017-09-17 13:59:56;topos#Louannec;chronos#XIXe siècle 10 | 2017-09-17 14:00:55;thema#Château fort;topos#Plouër-sur-Rance 11 | 2017-09-17 14:01:55;chronos#XVIIIe siècle 12 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_13_52_49_10.20.205.97_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 13:55:10;thema#Chapelle;topos#Île-de-Batz;chronos#XIIe siècle 2 | 2017-09-17 13:55:42;topos#Loctudy 3 | 2017-09-17 13:56:21;topos#Finistère 4 | 2017-09-17 13:57:43;topos#Le Juch;chronos#XVIIIe siècle 5 | 2017-09-17 13:58:56;thema#Lavoir;topos#Lampaul-Guimiliau;chronos#XXe siècle 6 | 2017-09-17 13:59:43;thema#Château;chronos#XVe siècle 7 | 2017-09-17 14:00:43;topos#Langast;chronos#XVIIe siècle 8 | 2017-09-17 14:01:42;chronos#XIXe siècle 9 | 2017-09-17 14:02:39;thema#Église;topos#Ploudalmézeau;chronos#XVIIIe siècle 10 | -------------------------------------------------------------------------------- /Data_all_backup_recommendation/2017-09-17_14_03_24_10.20.205.82_recommendation.txt: -------------------------------------------------------------------------------- 1 | 2017-09-17 14:05:18;thema#Fort;topos#Landéda;chronos#XVIIe siècle 2 | 2017-09-17 14:06:21;topos#Névez;chronos#XVIe siècle 3 | 2017-09-17 14:06:48;thema#Patrimoine militaire;topos#Finistère;chronos#Grands siècles 4 | 2017-09-17 14:07:21;topos#Sarzeau;chronos#XIXe siècle 5 | 2017-09-17 14:08:21;topos#Le Drennec;chronos#XVIIIe siècle 6 | 2017-09-17 14:09:21;thema#Portail;chronos#XVIe siècle 7 | 2017-09-17 14:09:30;thema#Lieux de culte et de dévotion;topos#Landéda;chronos#XVIIe siècle 8 | 2017-09-17 14:10:00;thema#Porche;topos#Trémorel;chronos#XIXe siècle 9 | 2017-09-17 14:10:21;thema#Crypte;chronos#XXe siècle 10 | 2017-09-17 14:11:18;thema#Patrimoine religieux;topos#Saint-Malo-de-Beignon;chronos#XIIe siècle 11 | 2017-09-17 14:11:49;thema#Fontaine de dévotion;topos#Monteneuf;chronos#Grandes empires et guerres mondiales 12 | 2017-09-17 14:12:21;thema#Ferme;topos#La Gacilly;chronos#XIXe siècle 13 | 2017-09-17 14:13:21;thema#Clôture;chronos#XVIIIe siècle 14 | -------------------------------------------------------------------------------- /GSP_96.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aujasvi-Moudgil/GSP-Implementation-Python/0a658e69e1db139548e6fa5488a3e64a30163d85/GSP_96.pdf -------------------------------------------------------------------------------- /GSP_IMPLEMENTATION.txt: -------------------------------------------------------------------------------- 1 | CASE STUDY- GSP IMPLEMENTATION 2 | 3 | 1. The folder ‘Data_GSP’ consists of data files from “all-backup recommendation” provided. 4 | 2. The code is implemented in python 2.7 (spyder). 5 | 3. If we run main.py, we get patterns by n-candidate level GSP but it doesn’t count tuples. 6 | Like in multiple user data for each timestamp, there can be more than 1 items. 7 | 4. If we run main2.py, we get patterns by 2-candidate level GSP where tuples can be observed in ( , ). 8 | 5. Threshold (min. support) and Level are variable, can be changed to see different patterns by GSP. 9 | 6. gsp and gsp2 classes files. 10 | 7. Some of the result screenshots produced by GSP is provided in the slides with different threshold (support) and levels. -------------------------------------------------------------------------------- /GSP_Workflow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aujasvi-Moudgil/GSP-Implementation-Python/0a658e69e1db139548e6fa5488a3e64a30163d85/GSP_Workflow.png -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 Aujasvi 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Discovery of Frequent Sequences in Usage Logs 2 | 3 | The repo. contains Master Course Work Case Study. The work consists of **discovering frequent** (sequential patterns) into the data of user trace. The data is collected from user traces : the actions of several users visiting a virtual and 3D museum. The objects in the meseum 4 | are grouped in categories (Churchs, Castels, Farms, Houses, Paintings, ...), and described with there location, date, usage. The purpose is to find the subsequences of objects visited, such as : a Church is often visited after a Castel using GSP Algorithm. 5 | 6 | #### The work was supervised by Prof. F. Guillet (LS2N / DUKe, Nantes, France). 7 | 8 | ![Image](GSP_Workflow.png) 9 | -------------------------------------------------------------------------------- /Slides.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aujasvi-Moudgil/GSP-Implementation-Python/0a658e69e1db139548e6fa5488a3e64a30163d85/Slides.pdf -------------------------------------------------------------------------------- /Survey_sequential_pattern_mining.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aujasvi-Moudgil/GSP-Implementation-Python/0a658e69e1db139548e6fa5488a3e64a30163d85/Survey_sequential_pattern_mining.pdf -------------------------------------------------------------------------------- /gsp.py: -------------------------------------------------------------------------------- 1 | import os 2 | import codecs 3 | import itertools 4 | import operator 5 | 6 | class GSP: 7 | '''GSP algorithm implementation''' 8 | def __init__(self, min_sup, path): 9 | self.min_sup = min_sup 10 | self.path = path 11 | self.unique_words, self.word_list, self.data = self.parse_data() 12 | self.items = {} 13 | self.num_users = len(self.data) 14 | 15 | def parse_data(self): 16 | files = os.listdir(self.path) 17 | files = [self.path + file for file in files] 18 | unique_words = {} # contains unique words in the data files 19 | unique_counter = 0 # ID number assigned to each unique word 20 | seqs = [] 21 | word_list = [] 22 | 23 | for filename in files: 24 | # read user data 25 | lines = [] 26 | f = codecs.open(filename, encoding='utf-8') 27 | for line in f: 28 | lines.append(line.encode('utf-8')) 29 | ans = {} # contains final time series dictionary 30 | seq = {} 31 | seq['file'] = filename 32 | s1 = [] 33 | s2 = [] 34 | # for each line in data file 35 | for X in lines: 36 | Y = X.strip().split(';') 37 | time = Y[0].split(' ')[1] 38 | # extract time info 39 | x = [] 40 | 41 | # extract useful info at a given time stamp 42 | for i,data in enumerate(Y): 43 | if i > 0: 44 | word = data.split('#')[1] 45 | 46 | # check if word is unique or not 47 | # if not, assign a new ID number 48 | if word not in unique_words: 49 | unique_counter = unique_counter + 1 50 | unique_words[word] = unique_counter 51 | word_list.append(word) 52 | x.append(unique_words[word]) 53 | # if x is not empty 54 | if x: 55 | ans[time] = x 56 | s1.extend(x) 57 | s2.append(tuple(x)) 58 | seq['data'] = ans 59 | seq['seq_individual'] = s1 60 | seq['seq_combined'] = s2 61 | seqs.append(seq) 62 | 63 | return unique_words, word_list, seqs 64 | 65 | def is_subseq(self, x, y): 66 | it = iter(y) 67 | return all(c in it for c in x) 68 | 69 | 70 | def find_support(self, item, flag): 71 | count = 0 72 | if flag == 1: 73 | for i in range(self.num_users): 74 | if self.is_subseq(item, self.data[i]['seq_individual']): 75 | count += 1 76 | else: 77 | for i in range(self.num_users): 78 | if item in self.data[i]['seq_combined']: 79 | count += 1 80 | return count 81 | 82 | 83 | def get_support_items(self, level): 84 | # Step 1: Find items that meet min. threshold requirement 85 | print('Number of users = %d' % (self.num_users)) 86 | for word in self.unique_words: 87 | l = [self.unique_words[word]] 88 | sup = self.find_support(l, 1) 89 | if sup >= self.min_sup: 90 | self.items[tuple(l)] = sup 91 | 92 | # If we need only 1-grams, we print those here and exit. 93 | if level == 1: 94 | sorted_patterns = sorted(self.items.items(), key=operator.itemgetter(1), reverse=True) 95 | for t in sorted_patterns: 96 | p = [] 97 | for i in t[0]: 98 | print self.word_list[i - 1] + ' ', 99 | print t[1] 100 | return 101 | 102 | # We now generate permutations of size 2. 103 | keys = [x[0] for x in self.items.keys()] 104 | perms = itertools.permutations(keys, 2) 105 | self.perms = list(perms) 106 | 107 | self.items = {} 108 | 109 | '''for p in self.perms: 110 | sup = self.find_support(p, 2) 111 | if sup >= self.min_sup: 112 | self.items[(p, )] = sup''' 113 | 114 | for k in keys: 115 | self.perms.append((k, k)) 116 | 117 | for p in self.perms: 118 | sup = self.find_support(list(p), 1) 119 | if sup >= self.min_sup: 120 | self.items[p] = sup 121 | 122 | level -= 2 # processing done till level 2 123 | 124 | # processing for level > 2 125 | while level > 0: 126 | prev_items = dict(self.items) 127 | self.items = {} 128 | for item in prev_items: 129 | for k in self.unique_words: 130 | key = list(item) 131 | key.append(self.unique_words[k]) 132 | key = tuple(key) 133 | sup = self.find_support(list(key), 1) 134 | if sup >= self.min_sup: 135 | self.items[key] = sup 136 | level -= 1 137 | 138 | sorted_patterns = sorted(self.items.items(), key=operator.itemgetter(1), reverse=True) 139 | 140 | 141 | for t in sorted_patterns: 142 | p = [] 143 | for i in t[0]: 144 | print self.word_list[i - 1] + ' ', 145 | print t[1] 146 | 147 | return 148 | 149 | -------------------------------------------------------------------------------- /gsp.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aujasvi-Moudgil/GSP-Implementation-Python/0a658e69e1db139548e6fa5488a3e64a30163d85/gsp.pyc -------------------------------------------------------------------------------- /gsp2.py: -------------------------------------------------------------------------------- 1 | import os 2 | import codecs 3 | import itertools 4 | import operator 5 | 6 | class GSP: 7 | '''GSP algorithm implementation''' 8 | def __init__(self, min_sup, path): 9 | self.min_sup = min_sup 10 | self.path = path 11 | self.unique_words, self.word_list, self.data = self.parse_data() 12 | self.items = {} 13 | self.num_users = len(self.data) 14 | 15 | def parse_data(self): 16 | files = os.listdir(self.path) 17 | files = [self.path + file for file in files] 18 | unique_words = {} # contains unique words in the data files 19 | unique_counter = 0 # ID number assigned to each unique word 20 | seqs = [] 21 | word_list = [] 22 | 23 | for filename in files: 24 | # read user data 25 | lines = [] 26 | f = codecs.open(filename, encoding='utf-8') 27 | for line in f: 28 | lines.append(line.encode('utf-8')) 29 | ans = {} # contains final time series dictionary 30 | seq = {} 31 | seq['file'] = filename 32 | s1 = [] 33 | s2 = [] 34 | # for each line in data file 35 | for X in lines: 36 | Y = X.strip().split(';') 37 | time = Y[0].split(' ')[1] 38 | # extract time info 39 | x = [] 40 | 41 | # extract useful info at a given time stamp 42 | for i,data in enumerate(Y): 43 | if i > 0: 44 | word = data.split('#')[1] 45 | 46 | # check if word is unique or not 47 | # if not, assign a new ID number 48 | if word not in unique_words: 49 | unique_counter = unique_counter + 1 50 | unique_words[word] = unique_counter 51 | word_list.append(word) 52 | x.append(unique_words[word]) 53 | # if x is not empty 54 | if x: 55 | ans[time] = x 56 | s1.extend(x) 57 | s2.append(tuple(x)) 58 | seq['data'] = ans 59 | seq['seq_individual'] = s1 60 | seq['seq_combined'] = s2 61 | seqs.append(seq) 62 | 63 | return unique_words, word_list, seqs 64 | 65 | def is_subseq(self, x, y): 66 | it = iter(y) 67 | return all(c in it for c in x) 68 | 69 | 70 | def find_support(self, item, flag): 71 | count = 0 72 | if flag == 1: 73 | for i in range(self.num_users): 74 | if self.is_subseq(item, self.data[i]['seq_individual']): 75 | count += 1 76 | else: 77 | for i in range(self.num_users): 78 | if item in self.data[i]['seq_combined']: 79 | count += 1 80 | return count 81 | 82 | 83 | def get_support_items(self, level): 84 | # Step 1: Find items that meet min. threshold requirement 85 | # print self.num_users 86 | for word in self.unique_words: 87 | l = [self.unique_words[word]] 88 | sup = self.find_support(l, 1) 89 | if sup >= self.min_sup: 90 | self.items[tuple(l)] = sup 91 | 92 | # If we need only 1-grams, we print those here and exit. 93 | if level == 1: 94 | sorted_patterns = sorted(self.items.items(), key=operator.itemgetter(1), reverse=True) 95 | for t in sorted_patterns: 96 | p = [] 97 | for i in t[0]: 98 | print(self.word_list[i - 1],) 99 | print t[1] 100 | return 101 | 102 | # We now generate permutations of size 2. 103 | keys = [x[0] for x in self.items.keys()] 104 | perms = itertools.permutations(keys, 2) 105 | self.perms = list(perms) 106 | 107 | self.items = {} 108 | 109 | # find support for tuples of size 2 110 | for p in self.perms: 111 | sup = self.find_support(p, 2) 112 | if sup >= self.min_sup: 113 | self.items[(p, )] = sup 114 | 115 | for k in keys: 116 | self.perms.append((k, k)) 117 | 118 | # find support for permutations of size 2 119 | for p in self.perms: 120 | sup = self.find_support(list(p), 1) 121 | if sup >= self.min_sup: 122 | self.items[p] = sup 123 | 124 | # sort patterns in descending order 125 | sorted_patterns = sorted(self.items.items(), key=operator.itemgetter(1), reverse=True) 126 | 127 | # print patterns 128 | for t in sorted_patterns: 129 | p = [] 130 | if type(t[0][0]) is int: 131 | for i in t[0]: 132 | print self.word_list[i - 1], 133 | else: 134 | print '(', 135 | for i in t[0][0]: 136 | print self.word_list[i - 1] + ',', 137 | print ')', 138 | print t[1] 139 | 140 | return 141 | -------------------------------------------------------------------------------- /gsp2.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aujasvi-Moudgil/GSP-Implementation-Python/0a658e69e1db139548e6fa5488a3e64a30163d85/gsp2.pyc -------------------------------------------------------------------------------- /main.py: -------------------------------------------------------------------------------- 1 | from gsp import GSP 2 | threshold = 5 # minimum support 3 | level = 3 # number of levels for GSP 4 | g = GSP(threshold, './Data_GSP/') 5 | g.get_support_items(level) 6 | -------------------------------------------------------------------------------- /main2.py: -------------------------------------------------------------------------------- 1 | from gsp2 import GSP 2 | threshold = 4 # minimum support 3 | level = 3 # number of levels for GSP 4 | g = GSP(threshold, './Data_GSP/') 5 | g.get_support_items(level) 6 | --------------------------------------------------------------------------------