Advanced Chunk Processing Library 0.2.0
A comprehensive C++ library for advanced data chunking strategies and processing operations
Loading...
Searching...
No Matches
demo_neural_chunking.cpp File Reference

Demonstration of neural network-based chunking capabilities. More...

#include "../include/chunk_visualization.hpp"
#include "../include/neural_chunking.hpp"
#include <iomanip>
#include <iostream>
#include <vector>
+ Include dependency graph for demo_neural_chunking.cpp:

Go to the source code of this file.

Functions

int main ()
 
void print_chunks (const std::vector< std::vector< int > > &chunks)
 

Detailed Description

Demonstration of neural network-based chunking capabilities.

Author
Jonathan Reich
Date
2024-12-07

Definition in file demo_neural_chunking.cpp.

Function Documentation

◆ main()

int main ( )

Definition at line 25 of file demo_neural_chunking.cpp.

25 {
26 // Create sample data with patterns
27 std::vector<int> data;
28 for (int i = 0; i < 100; ++i) {
29 // Create patterns that should be recognized
30 if (i % 10 < 5) {
31 data.push_back(i % 5);
32 } else {
33 data.push_back(10 - (i % 5));
34 }
35 }
36
37 // Create neural chunking instance
39
40 std::cout << "Original data size: " << data.size() << std::endl;
41 std::cout << "Window size: " << chunker.get_window_size() << std::endl;
42
43 // Try different thresholds
44 std::vector<double> thresholds = {0.3, 0.5, 0.7};
45
46 for (double threshold : thresholds) {
47 std::cout << "\nTesting with threshold: " << threshold << std::endl;
48 chunker.set_threshold(threshold);
49
50 auto chunks = chunker.chunk(data);
51 print_chunks(chunks);
52
53 // Use chunk visualizer
54 chunk_viz::ChunkVisualizer<std::vector<int>> visualizer(chunks, "./viz");
55 visualizer.plot_chunk_sizes();
56 visualizer.visualize_boundaries();
57 visualizer.export_to_graphviz("neural_chunks.dot");
58 }
59
60 return 0;
61}
Class for visualizing chunk data in various formats.
Class implementing neural network-based chunking.
void print_chunks(const std::vector< std::vector< int > > &chunks)

References neural_chunking::NeuralChunking< T >::chunk(), chunk_viz::ChunkVisualizer< T >::export_to_graphviz(), neural_chunking::NeuralChunking< T >::get_window_size(), chunk_viz::ChunkVisualizer< T >::plot_chunk_sizes(), print_chunks(), neural_chunking::NeuralChunking< T >::set_threshold(), and chunk_viz::ChunkVisualizer< T >::visualize_boundaries().

◆ print_chunks()

void print_chunks ( const std::vector< std::vector< int > > &  chunks)

Definition at line 14 of file demo_neural_chunking.cpp.

14 {
15 std::cout << "Chunks:" << std::endl;
16 for (size_t i = 0; i < chunks.size(); ++i) {
17 std::cout << "Chunk " << i << ": [";
18 for (const auto& val : chunks[i]) {
19 std::cout << std::setw(3) << val << " ";
20 }
21 std::cout << "]" << std::endl;
22 }
23}

Referenced by main().