วันจันทร์ที่ 30 ธันวาคม พ.ศ. 2567

Grading app

 Zipgrade uses image processing for multiple choice exam

วันจันทร์ที่ 16 ธันวาคม พ.ศ. 2567

วันพฤหัสบดีที่ 12 ธันวาคม พ.ศ. 2567

New IEEE copyright statement

"Copyright 2024 IEEE - All rights reserved, including rights for text and data mining and training of artificial intelligence and similar technologies.":

  1. "Copyright 2024 IEEE"
    This indicates that the content, likely a document, publication, or material, is protected under copyright law by the IEEE (Institute of Electrical and Electronics Engineers) in the year 2024.

  2. "All rights reserved"
    This means IEEE retains exclusive rights over the use, reproduction, distribution, and modification of the material. No one else may use these rights without explicit permission from IEEE.

  3. "Including rights for text and data mining and training of artificial intelligence and similar technologies"
    This specifies that the exclusive rights extend to the use of the material for text and data mining (TDM) activities, such as analyzing text and data to extract patterns, insights, or generate machine learning models.
    It also includes training of artificial intelligence (AI) and similar applications, emphasizing that the use of this content for these purposes is restricted unless IEEE provides authorization.

Implications:

  • To use IEEE copyrighted material for TDM, AI training, or related technological purposes, explicit permission (often through licensing agreements) must be obtained from IEEE.
  • This clause is increasingly relevant as organizations and researchers use publications for machine learning and AI model development, ensuring IEEE retains control over how its material contributes to such technologies.
---ChatGPT

Online LaTeX Editor

Overleaf

https://www.overleaf.com

วันพฤหัสบดีที่ 5 ธันวาคม พ.ศ. 2567

Deep learning

 ทั้ง transformer ที่ใช้ attention mechanism และ RNN ที่ใช้ loops

วันอาทิตย์ที่ 1 ธันวาคม พ.ศ. 2567

Mistery shopper

 A mystery shopper is a person who is hired to evaluate a company's products and services by posing as a regular customerMystery shoppers are also known as secret shoppers.

เป็นการ audit ว่าร้านค้าเฟรนไขปฎิบัติตามนโยบายไหม เช่น 7-11 แอบให้ถุง

วันศุกร์ที่ 29 พฤศจิกายน พ.ศ. 2567

Recent Text classification algorithms

 Deep Learning-Based Approaches

  • Transformer-Based Models:
    • BERT (Bidirectional Encoder Representations from Transformers)
    • RoBERTa (Robustly Optimized BERT Pretraining Approach) 
    • XLNet
    • GPT-3
    • DistilBERT
  • Recurrent Neural Networks (RNNs):
    • Long Short-Term Memory (LSTM), BiLSTM
    • Gated Recurrent Unit (GRU)
  • Convolutional Neural Networks (CNNs):
    • CNN
    • TextCNN
  • Traditional Machine Learning

    1. Naïve Bayes (NB): Probabilistic; effective for high-dimensional text.
    2. Support Vector Machines (SVM): Strong for sparse data; uses margins to separate classes.
    3. Logistic Regression: Simple and interpretable for binary/multi-class tasks.
    4. k-Nearest Neighbors (k-NN): Uses proximity; expensive for large datasets.
    5. Random Forests: Ensemble-based; reduces overfitting.

วันพฤหัสบดีที่ 28 พฤศจิกายน พ.ศ. 2567

Web Cache Communication Protocol (WCCP)

Use WCCP to redirect traffic from routers or Layer 4 switches to multiple Squid servers, improving scalability.

Deploy multiple Squid servers and distribute traffic across them using a load balancer like HAProxy, NGINX, or hardware appliances.

Sniffer and performance tools

 https://www.linuxlinks.com/best-free-open-source-network-analyzers/

Ttcp (https://netref.soe.ucsc.edu/node/31)

Iperf (https://iperf.fr/)

วันอังคารที่ 19 พฤศจิกายน พ.ศ. 2567

Information Gain

Information Gain measures how much information entropy is reduced after splitting the dataset on an attribute. It helps identify the attribute that provides the most information about the target class.



 is H is information entropy. D is data set.

Key Idea: The larger the reduction in entropy after the split, the greater the Information Gain. Attributes with higher Information Gain are preferred for splitting.



Applications in Decision Trees: At each node, the algorithm selects the attribute with the highest Information Gain to split the dataset.


วันพฤหัสบดีที่ 14 พฤศจิกายน พ.ศ. 2567

Types of regression models

There are many types of regression models, each suited to different types of data and relationships. Some common types include:

1. Linear Regression: Models the relationship between two variables by fitting a straight line.

2. Logistic Regression: Used for binary classification, predicting probabilities for categories (e.g., yes/no, 0/1).

3. Polynomial Regression: Extends linear regression to model nonlinear relationships by using polynomial functions.

4. Ridge Regression: A type of linear regression that includes a regularization term to prevent overfitting.

5. Lasso Regression: Similar to ridge regression, but it can reduce some coefficients to zero, effectively selecting features.

6. Elastic Net Regression: Combines ridge and lasso regression for a balance between feature selection and regularization.

7. Quantile Regression: Estimates the median or other quantiles of the response variable, not just the mean.

8. Poisson Regression: Used for count data, modeling how often an event happens.

9. Ordinal Regression: Models ordinal (ranked) outcomes, where categories have an order but no specific distance between them.

10. Multinomial Logistic Regression: Extends logistic regression for multiclass classification problems.

11. Bayesian Regression: Applies Bayesian principles to linear regression for probabilistic prediction.

12. Support Vector Regression (SVR): A type of regression that uses support vector machine concepts for both linear and nonlinear relationships.

วันจันทร์ที่ 28 ตุลาคม พ.ศ. 2567

ชุดข้อมูลท่องเที่ยวไทย

https://www.travellink.go.th/dashboard?category=spending-insights&displayMode=tiles

วันอาทิตย์ที่ 20 ตุลาคม พ.ศ. 2567

Metrics for machine translation

BLEU (bilingual evaluation understudy) is an algorithm for evaluating the quality of text which has been machine-translated from one natural language to another. Quality is considered to be the correspondence between a machine's output and that of a human: "the closer a machine translation is to a professional human translation, the better it is"

METEOR (Metric for Evaluation of Translation with Explicit ORdering) is a metric for the evaluation of machine translation output. The metric is based on the harmonic mean of unigram precision and recall, with recall weighted higher than precision. It also has several features that are not found in other metrics, such as stemming and synonymy matching, along with the standard exact word matching. The metric was designed to fix some of the problems found in the more popular BLEU metric, and also produce good correlation with human judgement at the sentence or segment level. This differs from the BLEU metric in that BLEU seeks correlation at the corpus level.

ROUGE, or Recall-Oriented Understudy for Gisting Evaluation, is a set of metrics and a software package used for evaluating automatic summarization and machine translation software in natural language processing. The metrics compare an automatically produced summary or translation against a reference or a set of references (human-produced) summary or translation. ROUGE metrics range between 0 and 1, with higher scores indicating higher similarity between the automatically produced summary and the reference.

Image classification process

The general steps in conducting image classification research typically follow a systematic workflow, from data collection to evaluation. Here’s an outline of the key steps involved:

1. Define the Problem and Objectives

  • Clearly state the research question and the specific goals of the image classification task.
  • Identify the types of objects or patterns the model should classify (e.g., cats vs. dogs, handwritten digits, or specific medical conditions in images).

2. Data Collection and Preparation

  • Collect or Source Images: Gather images relevant to the classification task. The dataset may be obtained from public repositories (e.g., ImageNet, CIFAR-10, MNIST) or created through manual data collection (e.g., using cameras or web scraping).
  • Labeling Data: Annotate the images with the appropriate class labels. This is essential for supervised learning.
  • Data Augmentation: Apply transformations to the images (e.g., rotations, flips, zooms) to artificially increase the size of the dataset and improve generalization.
  • Data Splitting: Split the dataset into training, validation, and test sets, typically with ratios like 70% for training, 15% for validation, and 15% for testing.

3. Feature Extraction or Data Preprocessing

  • Preprocessing: Normalize image pixel values, resize images to a fixed size, and perform any other required adjustments (e.g., grayscale conversion or color channel manipulations).
  • Feature Extraction (Traditional Methods): If using traditional machine learning methods, extract features such as edges, textures, or color histograms using techniques like HOG (Histogram of Oriented Gradients) or SIFT (Scale-Invariant Feature Transform).
  • Data Representation: If using deep learning, raw pixel data can be directly input into a convolutional neural network (CNN), bypassing traditional feature extraction.

4. Model Selection

  • Traditional Machine Learning Models: Choose algorithms such as Support Vector Machines (SVM), K-Nearest Neighbors (KNN), or Random Forests for cases where handcrafted features are used.
  • Deep Learning Models: Use CNNs (Convolutional Neural Networks), which are highly effective for image classification. You can start with a simple CNN architecture or use pre-trained models (like ResNet, VGG, or EfficientNet) through transfer learning.

5. Training the Model

  • Model Initialization: Set the model parameters, define the loss function (e.g., categorical cross-entropy for multi-class classification), and choose an optimizer (e.g., Adam, SGD).
  • Training: Train the model using the training dataset. This involves feeding the images into the model, adjusting weights via backpropagation, and minimizing the loss function.
  • Hyperparameter Tuning: Optimize hyperparameters such as learning rate, batch size, and number of epochs for better performance.

6. Validation and Fine-Tuning

  • Validation Set: Evaluate the model’s performance on the validation dataset after each training epoch to monitor overfitting.
  • Model Fine-Tuning: Adjust the model architecture, add regularization techniques (e.g., dropout, batch normalization), or fine-tune hyperparameters based on the validation results.

7. Testing and Evaluation

  • Test Set Evaluation: Once the model is trained, evaluate its performance on the test dataset, which was unseen during training.
  • Performance Metrics: Use metrics like accuracy, precision, recall, F1-score, confusion matrix, and AUC-ROC (Area Under Curve - Receiver Operating Characteristic) to measure the model’s effectiveness.

8. Model Deployment 

Image segmentation can be used as a preprocessing step before classification. For example: 

  • Object Detection: First, segment objects within an image and then classify those segmented objects separately. If your goal is to understand which parts of the image correspond to different objects or regions, then image segmentation becomes relevant.
  • Saliency Detection: Use segmentation to highlight key regions of interest, which may improve classification by focusing only on relevant parts of the image.

Difference between two concepts:
  • Image Classification: The task is to assign a single label to an entire image, identifying what the main object or scene is (e.g., "cat" or "dog"). The goal is not to understand the precise location of objects but to categorize the whole image.

  • Image Segmentation: This involves dividing the image into multiple segments or regions, each corresponding to different objects or parts of objects, essentially assigning a label to every pixel in the image (e.g., separating the sky from the trees in a landscape).

--ChatGPT

Regularization

Regularization is a technique used in statistical modeling and machine learning to prevent overfitting, which occurs when a model learns to perform very well on training data but fails to generalize to unseen data. Regularization techniques add a penalty to the loss function to constrain the model's complexity. Here are some common regularization techniques:

1. L1 Regularization (Lasso)

  • Description: Adds the absolute value of the coefficients as a penalty term to the loss function.
  • Effect: Encourages sparsity in the model by driving some coefficients to zero, effectively selecting a simpler model that uses fewer features.
  • Loss Function: L=L0+λwiL = L_0 + \lambda \sum |w_i|
    • L0L_0: original loss (e.g., mean squared error)
    • wiw_i: coefficients
    • λ\lambda: regularization parameter controlling the strength of the penalty.

2. L2 Regularization (Ridge)

  • Description: Adds the square of the coefficients as a penalty term to the loss function.
  • Effect: Tends to reduce the size of coefficients but does not set any to zero. It shrinks the weights more evenly across all features, making the model more stable.
  • Loss Function: L=L0+λwi2L = L_0 + \lambda \sum w_i^2

3. Elastic Net Regularization

  • Description: Combines both L1 and L2 regularization. It can select features (like L1) while also encouraging smaller weights (like L2).
  • Effect: Useful when there are multiple features correlated with each other.
  • Loss Function: L=L0+λ1wi+λ2wi2L = L_0 + \lambda_1 \sum |w_i| + \lambda_2 \sum w_i^2

4. Dropout

  • Description: A regularization technique specifically used in neural networks where randomly selected neurons are ignored (dropped out) during training.
  • Effect: Prevents co-adaptation of neurons, helping the network to generalize better by forcing it to learn robust features that are useful independently of others.

5. Early Stopping

  • Description: Involves monitoring the model's performance on a validation set during training and stopping the training process when performance starts to degrade (indicating overfitting).
  • Effect: Prevents the model from learning noise in the training data.

6. Data Augmentation

  • Description: Increasing the amount of training data by applying transformations (e.g., rotation, scaling, flipping) to existing data.
  • Effect: Helps the model generalize better by exposing it to various forms of data.

7. Weight Regularization

  • Description: Adding constraints on the weights (e.g., constraining the weights to lie within a certain range).
  • Effect: Helps in controlling model complexity and prevents overfitting.

8. Batch Normalization

  • Description: Normalizes the output of a layer to stabilize learning, effectively acting as a form of regularization.
  • Effect: Reduces internal covariate shift and can lead to faster training.

--ChatGPT

Photogrammetry

Photogrammetry is the science and technology of obtaining accurate measurements and detailed information about physical objects and environments from photographs. It involves the use of photographs, often taken from multiple angles, to reconstruct 3D models or create maps, by analyzing the geometry of the images.

งานวิจัยที่ Contribution น้อย

 รวมทั้งงานวิจัยที่ใช้ระเบียบวิธีวิจัยซ้ำกับงานวิจัยอื่น เปลี่ยนแค่ data sets เรียกว่า conceptual replication research พบได้มากในสาขา data mining เช่น classify เม็ดเลือด, classify มะเร็ง, classify X-ray images, classify สัตว์