{{-- ================= HEADER ================= --}}

Hasil Analisis Sentimen

Berikut adalah hasil evaluasi model dan detail analisis sentimen terhadap ulasan wisata.

{{-- ================= METRICS ================= --}}

Precision

{{ number_format($evaluasi->precision ?? 0, 2) }}

Recall

{{ number_format($evaluasi->recall ?? 0, 2) }}

F1 Score

{{ number_format($evaluasi->f1_score ?? 0, 2) }}

Akurasi

{{ number_format($evaluasi->accuracy ?? 0, 2) }}

{{-- ================= MATRIX + PERFORMA ================= --}}
{{-- CONFUSION MATRIX --}}

Confusion Matrix

Positif Negatif Netral
Positif {{ $evaluasi->tp ?? 0 }} {{ $evaluasi->fp ?? 0 }} {{ $evaluasi->fn ?? 0 }}
Negatif {{ $evaluasi->fp ?? 0 }} {{ $evaluasi->tn ?? 0 }} 0
Netral 0 0 0
{{-- PERFORMA --}}

Performa per Kelas

Kelas Precision Recall F1
Positif {{ number_format($evaluasi->precision ?? 0, 2) }} {{ number_format($evaluasi->recall ?? 0, 2) }} {{ number_format($evaluasi->f1_score ?? 0, 2) }} -
Negatif {{ number_format($evaluasi->precision ?? 0, 2) }} {{ number_format($evaluasi->recall ?? 0, 2) }} {{ number_format($evaluasi->f1_score ?? 0, 2) }} -
Netral {{ number_format($evaluasi->precision ?? 0, 2) }} {{ number_format($evaluasi->recall ?? 0, 2) }} {{ number_format($evaluasi->f1_score ?? 0, 2) }} -
{{-- ================= FILTER ================= --}}
{{-- ================= TABLE ================= --}}

Detail Hasil Analisis Sentimen

@forelse($hasil as $item) @empty @endforelse
No Wisata Ulasan Asli Ulasan Bersih Sentimen Probabilitas
{{ ($hasil->currentPage() - 1) * $hasil->perPage() + $loop->iteration }} {{ $item->wisata }} {{ Str::limit($item->ulasan_asli ?? '-', 80) }} {{ Str::limit($item->hasil_preprocessing ?? '-', 80) }} {{ ucfirst($item->sentimen) }} {{ number_format($item->probabilitas ?? 0, 2) }}
Tidak ada data
{{-- ================= PAGINATION ================= --}} @if($hasil->hasPages()) @php $current = $hasil->currentPage(); $last = $hasil->lastPage(); $query = http_build_query(request()->except('page')); // Window 2 halaman kiri & kanan dari current $window = collect(range(max(1, $current - 2), min($last, $current + 2))); @endphp
{{-- Info --}}

Menampilkan {{ $hasil->firstItem() }} - {{ $hasil->lastItem() }} dari {{ $hasil->total() }} data

{{-- Tombol --}}
{{-- « --}} @if($hasil->onFirstPage()) « @else « @endif {{-- Halaman 1 (jika tidak ada di window) --}} @if(!$window->contains(1)) 1 @if($window->min() > 2) ... @endif @endif {{-- Window --}} @foreach($window as $page) @if($page == $current) {{ $page }} @else {{ $page }} @endif @endforeach {{-- Halaman terakhir (jika tidak ada di window) --}} @if(!$window->contains($last)) @if($window->max() < $last - 1) ... @endif {{ $last }} @endif {{-- » --}} @if($hasil->hasMorePages()) » @else » @endif
@endif