การทำเหมืองข้อมูลเชิงสัมพันธ์แบบไม่มี ILP


9

ฉันมีชุดข้อมูลขนาดใหญ่จากฐานข้อมูลเชิงสัมพันธ์ซึ่งฉันจำเป็นต้องสร้างรูปแบบการจำแนกสำหรับ ปกติสำหรับสถานการณ์นี้ฉันจะใช้Inductive Logic Programming (ILP) แต่เนื่องจากสถานการณ์พิเศษฉันไม่สามารถทำเช่นนั้นได้

อีกวิธีหนึ่งในการแก้ไขปัญหานี้ก็คือพยายามรวบรวมค่าเมื่อฉันมีความสัมพันธ์ต่างประเทศ อย่างไรก็ตามฉันมีแถวที่สำคัญและแตกต่างกันหลายพันแถวสำหรับคุณลักษณะบางอย่างที่ระบุ (เช่น: ผู้ป่วยที่เกี่ยวข้องกับใบสั่งยาที่แตกต่างกันหลายรายการ) ดังนั้นฉันไม่สามารถทำได้โดยไม่ต้องสร้างแอตทริบิวต์ใหม่สำหรับแต่ละแถวที่แตกต่างกันของแอตทริบิวต์เล็กน้อยและยิ่งไปกว่านั้นคอลัมน์ใหม่ส่วนใหญ่จะมีค่า NULL หากฉันทำเช่นนั้น

มีอัลกอริทึมที่ไม่ใช่ ILP หรือไม่ที่อนุญาตให้ฉันสร้างฐานข้อมูลเชิงสัมพันธ์กับทุ่นระเบิดโดยไม่ต้องหันไปใช้เทคนิคต่าง ๆ เช่นการหมุนซึ่งจะสร้างคอลัมน์ใหม่หลายพันคอลัมน์?


2
กฎการขุดคืออะไร? ไม่ชัดเจนสำหรับฉันว่าเป้าหมายของคุณคืออะไร
adesantos

ในขณะที่เป็นคำถามที่ดีฉันสังเกตเห็นว่ามันปรากฏในฟอรัมแลกเปลี่ยน Exchange หลายแห่ง ... stackoverflow.com/questions/24260299/… ; ไม่ใช่ว่าฉันเป็นคนขี้เหนียวเกี่ยวกับสิ่งต่าง ๆ เช่นนั้น แต่ฉันคิดว่าเราไม่ควรทำมัน
Hack-R

นอกจากนี้มันจะมีประโยชน์มากหากคุณอาจเจาะจงเจาะจงมากขึ้นเกี่ยวกับสิ่งที่คุณกำลังจัดประเภทสิ่งกีดขวางที่คุณกำลังเผชิญและในโลกอุดมคติที่ให้ข้อมูลตัวอย่างแก่เราให้ดู
Hack-R

คำตอบ:


1

ประการแรกคำเตือนบางอย่าง

ฉันไม่แน่ใจว่าทำไมคุณไม่สามารถใช้การเขียนโปรแกรม (sub-) กระบวนทัศน์ *, Inductive Logic Programming (ILP)หรือสิ่งที่คุณพยายามจัดประเภท การให้รายละเอียดมากขึ้นอาจนำไปสู่คำตอบที่ดีกว่ามาก โดยเฉพาะอย่างยิ่งมันเป็นเรื่องแปลกที่จะเลือกวิธีการจำแนกอัลกอริธึมบนพื้นฐานของกระบวนทัศน์การเขียนโปรแกรมที่เกี่ยวข้อง หากตัวอย่างโลกแห่งความเป็นจริงของคุณเป็นความลับให้สร้างตัวอย่างที่สมมติขึ้น แต่คล้ายคลึงกัน

การจำแนกข้อมูลขนาดใหญ่ที่ไม่มี ILP

ต้องบอกว่าหลังจากพิจารณา ILP เรามีกระบวนทัศน์การเขียนโปรแกรมเชิงตรรกะอื่น ๆ อีก 4 ชุดในชุดการพิจารณาของเรา:

  1. abductive
  2. ชุดคำตอบ
  3. การ จำกัด
  4. การทำงาน

นอกเหนือจากกระบวนทัศน์และกระบวนทัศน์ย่อยหลายสิบนอกการเขียนโปรแกรมเชิงตรรกะ

ภายในฟังก์ชั่นการเขียนโปรแกรมลอจิกตรรกะมีส่วนขยายของ ILP เรียกว่าการเขียนโปรแกรมฟังก์ชั่นลอจิกซึ่งจะขึ้นอยู่กับการ จำกัด การผกผันของการผกผัน (เช่นการผกผันของกลไกการ จำกัด ) วิธีนี้เอาชนะข้อ จำกัด หลายประการของ ILP และ ( ตามที่นักวิชาการบางคนอย่างน้อย ) เหมาะสำหรับการประยุกต์ใช้ในแง่ของการเป็นตัวแทนและมีประโยชน์ในการอนุญาตให้ปัญหาที่จะแสดงออกอย่างเป็นธรรมชาติมากขึ้น

หากไม่ทราบข้อมูลเฉพาะเกี่ยวกับฐานข้อมูลของคุณและอุปสรรคที่คุณต้องเผชิญในการใช้ ILP ฉันไม่รู้ว่าจะช่วยแก้ปัญหาของคุณหรือไม่ก็ประสบปัญหาเดียวกัน ดังนั้นฉันจะทิ้งแนวทางที่แตกต่างอย่างสิ้นเชิงเช่นกัน

ILP เทียบกับ "คลาสสิก" หรือ "ประพจน์" วิธีการทำเหมืองข้อมูล วิธีการเหล่านั้นรวมถึงเนื้อและกระดูกของ Machine Learning เช่นต้นไม้ตัดสินใจเครือข่ายประสาทการถดถอยการบรรจุถุงและวิธีการทางสถิติอื่น ๆ แทนที่จะยอมแพ้กับวิธีการเหล่านี้เนื่องจากขนาดของข้อมูลของคุณคุณสามารถเข้าร่วมอันดับของนักวิทยาศาสตร์ข้อมูลวิศวกรบิ๊กดาต้าและนักสถิติที่ใช้คอมพิวเตอร์ประสิทธิภาพสูง (HPC) เพื่อใช้วิธีการเหล่านี้กับชุดข้อมูลขนาดใหญ่ (มี นอกจากนี้ยังมีการสุ่มตัวอย่างและเทคนิคทางสถิติอื่น ๆ ที่คุณอาจเลือกใช้เพื่อลดทรัพยากรการคำนวณและเวลาที่ต้องใช้ในการวิเคราะห์ข้อมูลขนาดใหญ่ในฐานข้อมูลเชิงสัมพันธ์ของคุณ)

HPC รวมถึงสิ่งต่าง ๆ เช่นการใช้ประโยชน์จากคอร์ซีพียูหลายคอลขยายการวิเคราะห์ของคุณด้วยการใช้เซิร์ฟเวอร์ที่มีหน่วยความจำสูงและคอร์ CPU ความเร็วสูงจำนวนมากโดยใช้อุปกรณ์คลังข้อมูลประสิทธิภาพสูงใช้กลุ่มหรือรูปแบบการคำนวณแบบขนานอื่น ๆ m ไม่แน่ใจว่าภาษาหรือชุดทางสถิติใดที่คุณกำลังวิเคราะห์ข้อมูลของคุณด้วย แต่เป็นตัวอย่างมุมมองงาน CRANนี้แสดงรายการทรัพยากร HPC จำนวนมากสำหรับภาษา R ซึ่งจะช่วยให้คุณสามารถขยายอัลกอริทึมข้อเสนอ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.