Ekin, EmineKöprülü, MertaliIşık Üniversitesi, Lisansüstü Eğitim Enstitüsü, Bilgisayar Mühendisliği Yüksek Lisans Programı2023-08-292023-08-292023-08-24Köprülü, M. (2023). Entity-relationship diagram generation with natural language processing and machine learning approach. İstanbul: Işık Üniversitesi Lisansüstü Eğitim Enstitüsü.https://hdl.handle.net/11729/5691Text in English ; Abstract: English and TurkishIncludes bibliographical references (leaves 71-72)xi, 73 leavesAs software systems continue to grow in complexity, the need for efficient and accurate design methodologies becomes increasingly critical. Entity-Relationship Diagrams (ERDs) provide a powerful visual representation of system structures and dependencies, serving as a foundation for software engineering and database design. However, manually creating ERDs from textual requirements is time-consuming and manual. To address this challenge, this research explores the application of natural language processing (NLP) techniques to automatically extract relevant information from unstructured text and generate ERDs. The proposed approach leverages the strengths of rule-based techniques, semantic analysis, and machine learning algorithms to automatically identify entities, attributes, relationships, and cardinalities from natural language input. Our study offers practical insights into the utilization of linguistic and semantic analysis, and machine learning for efficient information extraction. The proposed system aims to streamline the ERD creation process and improve the accuracy and quality of the resulting diagrams. While the proposed approach shows promising results, the limitations in heuristic rule coverage and data dependencies are acknowledge. Furthermore, the evaluation results demonstrate in detecting entities, attributes, and relations, with f1-scores of 0.96, 0.93, and 0.92, and resolving the components specifications achieved accuracy of 0.87, 0.84, 0.91, respectively. The findings contribute to advancing ERD extraction from text and suggest future research directions for improving the robustness and usability of the solution. The fusion of NLP techniques with ERD creation highlights the potential for enhancing the software development lifecycle and opens new avenues for research in the realm of information extraction from natural language text.Yazılım sistemleri giderek karmaşıklık kazandıkça, verimli ve doğru tasarım yöntemlerine olan ihtiyaç artan bir şekilde kritik hale gelmektedir. Varlık İlişki Diyagramları (ERD), sistem yapılarını ve bağımlılıklarını güçlü bir görsel diyagram ile sunarak yazılım mühendisliği ve dahi veri tabanı tasarımının temelini oluştururlar. Ancak, metinsel gereksinimlerden ERD'lerin el ile oluşturulması zaman alıcı ve zahmet gerektirir iken, tasarım yapan kişinin öznel eleştirisine bağlıdır. Bu zorluğun üstesinden gelmek için bu tez, doğal dil işleme (NLP) tekniklerinin kullanımını ve metinden diyagram ile ilgili gerekli olan bilgileri otomatik olarak çıkarmak ve ERD'ler oluşturmak için incelemektedir. Önerilen bu yaklaşım, doğal dil girdilerinden varlık, varlıkların özniteliklerini ve ilişkilerini ve kardinalitelerini otomatik olarak belirlemek için kural tabanlı tekniklerin, anlamsal analizin ve makine öğrenimi algoritmalarının birleşimini kullanır. Bu çalışma, dilbilimsel ve anlamsal analiz ile makine öğreniminin verimli bilgi çıkarımı için kullanılmasına ilişkin araştırmaları sunarak deneyler yapar ve bu deney sonuçlarını karşılaştırması sonucu önerilen yöntemin eksikliklerini ve güçlü yönlerini bildirir. Önerilen bu sistem, ERD oluşturma sürecini basitleştirmeyi ve bilgi çıkarımı ile ERD’lerin doğru ve kaliteli üretimini amaçlar. Ek olarak, bu değerlendirme, varlık, öznitelik ve ilişkilerin tespitinde sırasıyla 0.96, 0.93 ve 0.92 f1 puanı almış, bileşen özelliklerinin çözümlenmesinde ise doğru diyagram varlıklarının özelliklerini bulmada sırasıyla 0.87, 0.84 ve 0.91 doğruluk oranını elde etmiştir. Elde edilen bu bulgular, metinden ERD çıkarma konusunda ilerlemeye katkı sağlayıp ve dahi çözümün sağlamlığını ve kullanılabilirliğini artırmak için gelecekteki araştırmalar için yönergeler ve çözümler önerir. NLP tekniklerinin ERD oluşturma ile birleştirilmesi ve yazılım geliştirme yaşam döngüsünü geliştirmenin potansiyelini vurgulayarak metinden bilgi çıkarma alanına da yeni araştırma olanakları sunar.OVERVIEW OF ENTITY RELATIONSHIP DIAGRAMSDatabase ModellingEntity-Relationship DiagramsComponents of Entity Relationship DiagramEntityWeak EntityAttributeKey AttributeDerived AttributeMulti-Valued AttributeComposite AttributeRelationshipIdentifying RelationshipCardinalitiesRule-Based Approaches on Diagram GenerationSemantic-Based ApproachesMachine-Learning ApproachPre-Processing ModuleSentence SegmentationWord Correction (Optional)TokenizationChunkingPart-Of-Speech TaggingWordnet Synonym ExtractionWord DependencyCustom Named Entity Extraction ModuleDependency ExtractionCandidate Component ExtractionVectorizationCustom Named Entity RecognizerComponent Feature Extraction ModuleSpecification ResolverComponent TaggingReduction of Redundant InformationGraph Pre – ProcessingExperimental Results of Custom Named Entity Recognition ModuleModel Case OutputsCase 1: "Attribute" of "Entity" ExtractionCase 2: Relation ExtractionCase 3: "Attribute" of "Relation" ExtractionCase 4: Complex RelationsEvaluationConfusion MatricesSemantic Roles and Their DefinitionsApproaches of Relation Extraction from TextUniversal Part-of-Speech TagsSpacy Dependency LabelsSpacy Token FeaturesSample of Component Relation StructureBi-Directional Long Short-Term Memory Network Feature Comparison for Custom Named Entity RecognitionConfusion Matrix of Entity ExtractionConfusion Matrix of Attribute ExtractionConfusion Matrix of Key Attribute ExtractionConfusion Matrix of Relation ExtractionEntity ShapeWeak Entity ShapeAttribute ShapeKey Attribute ShapeDerived Attribute ShapeMulti-Valued Attribute ShapeComposite Attribute ShapeRelationship ShapeIdentifying Relationship ShapeCardinality Ratio one-to-many, E1: E2 on Relation RProposed Model of HabibParser tree of the sentence “X hit the ball.”Approach of S. BtoushERD Modeling Generation FrameworkBlock diagram of large-scale Object-Based Language InteractorIllustration of Semantic NetModel of ER-Converter ToolMachine Learning Model of KashmiraAnnotated Data output of KashmiraProposed ModelProposed System ArchitecturePre-processing ModuleDependency Output of Given SentenceExample Dependency TreeCustom Named Entity Extraction ModuleDefault Named Entity Recognizer output of SpaCyRecurrent Neural Network Cell StructureExample Usage of RNN in NERLong-Short Term Memory Cell StructureBi-directional LSTM ArchitectureComponent Feature Extraction ModuleIllustration of dependency tree of 5th sentenceGraph Pre-Processing ModuleGenerated Entity Relationship Diagram of Scenario 1Illustration of Elmasri on Scenario 1Generated Entity Relationship Diagram of Scenario 2 (a), ERD illustration (b)Generated Entity Relationship Diagram of Scenario 3Elmasri Illustration on Scenario 3Generated Entity Relationship Diagram of Scenario 4Generated Entity Relationship Diagram of Scenario 5Generated Entity Relationship Diagram of Scenario 6Dependency Tree Illustration of sentence: “Suppliers, Parts, and Projects have ternary relation called ‘supply’ which has quantity attribute.”Solution Entity Relationship Diagram of Scenario 7Generated Entity Relationship Diagram of Scenario 7Generated Entity Relationship Diagram of Scenario 8Generated Entity Relationship Diagram of Scenario 9eninfo:eu-repo/semantics/openAccessAttribution-NonCommercial-NoDerivs 3.0 United StatesEntity-relationship diagramNatural language processingNamed entity recognitionInformation extractionVarlık-ilişki diyagramıDoğal dil işlemeAdlandırılmış varlık tanımaBilgi çıkarımıEntity-relationship diagram generation with natural language processing and machine learning approachDoğal dil işleme ve makine öğrenmesi yaklaşımıyla varlık-ilişki diyagram üretimiMaster Thesis