How to write answers to reviewers for a journal using LaTeX?

Today, I will explain how to write the answer to reviewers for an academic journal using Latex. The advantage of using Latex instead of a software like Microsoft Word to write answers to reviewers is that it allows using all the features of LaTeX such packages for managing references, figures, and tables.

Since the LaTeX code that I will explain is very simple, let me first show you the result that we want to achieve. It will be a document where we can display the comments and corresponding answers for each reviewer. The result that we will achieve is a neat document that will look like this:

To do something like this, we will create two new LaTeX environments to display comments and solutions (answers), respectively. To draw the box around each comment, we will use a package called mdframed.

The code of the above document will then look like this:

\documentclass{article}
\usepackage{graphicx}
\usepackage{verbatim}
\usepackage[margin=1in]{geometry} 
\usepackage{xcolor}
\usepackage{mdframed}

\newenvironment{Comment}[2][Comment]
    { \begin{mdframed}[backgroundcolor=gray!20] 
    \textbf{#1 #2} \\}
    {  \end{mdframed}}


\newenvironment{solution}
    {\textit{Answer:} }
    {}

\begin{document}
\title{The title of the papers}

\author{\normalsize Author1 and Author2 and Author3}

\date{}
\maketitle

We thank the editor for handling the manuscript, and the reviewers for the valuable comments. In this revision, modifications are in {\color{blue}blue} color. Below we give a point-by-point summary of how each issue raised by the reviewers has been addressed.  

\section{Reviewer \#1}

\begin{Comment}{1: Main concern}
The manuscript is very long.
\end{Comment}

\begin{solution}
Thanks. We have made it shorter.
\end{solution}

\begin{Comment}{3: Minor concern}
There are many grammar errors.
\end{Comment}

\begin{solution}
Thanks. We have carefully proofread the paper.
\end{solution}

\bibliographystyle{plain}
\bibliography{mybib.bib}
\end{document}

Now let me explain the code. If you are familiar with LaTeX, you will see that this code is very simple. This code :

\newenvironment{Comment}[2][Comment]
    { \begin{mdframed}[backgroundcolor=gray!20] 
    \textbf{#1 #2} \\}
    {  \end{mdframed}}


\newenvironment{solution}
    {\textit{Answer:} }
    {}

defines two new environments for comments and solutions, respectively. Then, it is followed by code to display the title of the paper, show the author names and creates a section for each reviewer using the \section command. Then, the comment and solution environments are used to display comments and answers.

Conclusion

This was just a short blog post to show how to write answers to reviewers using LaTeX. The above template was provided by some collaborator, and I am not sure about where it originally came from. If someone knows, I could add the credit to the original author to this blog post.

This is the end of this blog post about writing a response to reviewers using LaTeX. I hope this blog post has been helpful and informative. If you have any questions or comments, please leave a comment below. Thank you for reading, and happy LaTeXing! 😊

Posted in Latex | Tagged , , , , , | Leave a comment

TexWorks: How to add a command to change the text color (using a script)

In this blog post, I will show how to add a script (commands) to TexWorks for adding a color to your Latex document. This is easy and can be used also for other types of commands.

1) In TexWorks, go to the menu Scripts and then choose Show Scripts Folder:

This will open the folder containing the scripts.

2) Open the subfolder Latex styles as we will add our new script to this folder:

3) Make a copy of the file toogleBold.js and call it toogleRed.js:

4) Edit the file toogleRed.js as follows and save it:

// TeXworksScript
// Title: Toggle Red
// Shortcut: Ctrl+Shift+G
// Description: Encloses the current selection in \textcolor{red}{}
// Author: based on toogleBold by Jonathan Kew
// Version: 0.3
// Date: 2010-01-09
// Script-Type: standalone
// Context: TeXDocument

function addOrRemove(prefix, suffix) {
  var txt = TW.target.selection;
  var len = txt.length;
  var wrapped = prefix + txt + suffix;
  var pos = TW.target.selectionStart;
  if (pos >= prefix.length) {
    TW.target.selectRange(pos - prefix.length, wrapped.length);
    if (TW.target.selection === wrapped) {
      TW.target.insertText(txt);
      TW.target.selectRange(pos - prefix.length, len);
      return;
    }
    TW.target.selectRange(pos, len);
  }
  TW.target.insertText(wrapped);
  TW.target.selectRange(pos + prefix.length, len);
  return;
}

addOrRemove("\\textcolor{red}{", "}");

Here, what I have done is to make a new command that will automatically add \textcolor{red}{} arround some selected text when the user presses CTRL+SHIFT+G.

5) Go back to TexWorks, and reload the script list using the menu “Reload script list”:

Then, the new command will appear in the menu Latex Styles:

6) Then, you can try it by selecting some text in a latex document and then pressing CTRL+Shift+G:

That’s all!

And of course, to compile the LaTeX document, I assume that you are using the color package.

It is very convenient to make scripts for new commands in TexWorks!

And, If you want to do the same for the blue color, we could make another script like this:

// TeXworksScript
// Title: Toggle Blue
// Shortcut: Ctrl+Shift+D
// Description: Encloses the current selection in \textcolor{blue}{}
// Author: based on toogleBold by Jonathan Kew
// Version: 0.3
// Date: 2010-01-09
// Script-Type: standalone
// Context: TeXDocument

function addOrRemove(prefix, suffix) {
  var txt = TW.target.selection;
  var len = txt.length;
  var wrapped = prefix + txt + suffix;
  var pos = TW.target.selectionStart;
  if (pos >= prefix.length) {
    TW.target.selectRange(pos - prefix.length, wrapped.length);
    if (TW.target.selection === wrapped) {
      TW.target.insertText(txt);
      TW.target.selectRange(pos - prefix.length, len);
      return;
    }
    TW.target.selectRange(pos, len);
  }
  TW.target.insertText(wrapped);
  TW.target.selectRange(pos + prefix.length, len);
  return;
}

addOrRemove("\\textcolor{blue}{", "}");
Posted in Latex | Tagged , , , , | Leave a comment

KNN Interactive demo in your browser

Today, I want to show you a new interactive demo of the KNN (K-Nearest Neighbors) algorithm that I have added to my website. It is designed to be used for teaching purpose to illustrate how the K-Nearest Neighbors algorithm works.

You can try the KNN Interactive demo here. The interface is like this:

In the section 1 of the webpage, you can enter some data that is a list of records or instances to be used by KNN to make predictions. The first line is the list of attributes. Then, each following line is a record, wich is a list of values separated by single spaces. The values can be categorical or numerical.

Then, the value of K can be selected in section 2 of the webpage. For the purpose of teaching, values of K are restricted to be between 1 to 100.

Then, you can provide an instance to classify in section 3 of the webpage. The instance to classify is a list of attribute values but one of them must be replaced by ? meaning that we want to predict this attribute value using KNN.

Finally, by clicking Run KNN button, the result are displayed like this:

It indicates the K most similar instances, the calculated distances between those instances and the instance, and the predicted attribute value.

It is possible to run the demo with different values of K and different data to observe the result, which can be good for learning.

Conclusion

This tool is for teaching purpose. If you want to try a more efficient implementation in Java, you could try the one from the SPMF data mining software, which is free and open source.

Posted in Uncategorized | Leave a comment

K-Means Interactive Demo in your browser

In this blog post, I introduce a new interactive tool for showing a demonstration of the K-Means algorithm for students (for teaching purposes).

The K-Means clustering demo tool can be accessed here:

philippe-fournier-viger.com/tools/kmeans_demo.php

The K-Means demo, first let you enter a list of 2 dimensional data points in the range of [0,10] or to generate 100 random data points:

Then the user can choose the value of K, adjusts other settings, and run the K-Means algorithm.

The result is then displayed for each iteration, step by step. Each cluster is represented by a different color. The SSE (Sum of Squared Error) is displayed, and the centroids of clusters are illustrated by the + symbol. For example, this is the result on the provided example dataset:

Because K-Means is a randomized algorithm, if we run it again the result may be different:

Now, let me show you the feature of generating random points. If I click the button for generating a random dataset and run K-Means, the result may look like this:

And again, because K-Means is randomized, I may execute it again on the same random dataset and get a different result:

I think that this simple tool can be useful for illustrating how the K-Means algorithm works to students. You may try it. It is simple to use and allows to visualize the result and clustering process. Hope that it will be useful!

Philippe Fournier-Viger is a distinguished professor working in China and founder of the SPMF open source data mining software.

Posted in Data Mining, Data science | Tagged , , , , , | Leave a comment

Busy times

Hi all, I just write a quick message to say that I did not write on the blog recently due to my very busy schedule recently. However, everything is going well. I will be back on the blog with more content soon, and I will start to add more videos to the YouTube channel soon. Also, I am working on the next version of SPMF. 😉

Stay tuned!

Posted in Uncategorized | Leave a comment

The MDLM 2023 conference: a scam?

Today, I will talk about the MDLM 2023 conference (International Conference on Machine Learning and Data Mining). Several years ago, I have attended MLDM 2016 (report here) because at that time it was published by Springer. But I was unhappy that the MLDM conference was advertised as being held in New York, while it was finally held in a small hotel 40 minutes away in another city called Newark, close to nothing. And that conference was really expensive at around 650 euros… I have thus never attended that conference again, but I have observed that during the following years, that conference was still advertised as being in New York, while being held in that same hotel in Newark every year (see my blog post about MLDM 2019). Thus, I never submitted a paper again to that conference, and I also observed that it is not published by Springer anymore (it might be because of that). This for me is another reason to not publish there anymore.

Why I talk about MDLM 2023? Because, this year I received a comment on my blog reporting that the conference was not even held and that people went to Newark and found that there was no conference at all! Here is the comment that report this:

And a related tweet:

I did not verify whether this comment is true, but I believe that it is, given that this MLDM conference has repeatedly mislead people about the location of the conference.

Update 2023-10: And here is another comment that I just received on this blog that also had a similar bad experience with MLDM 2023:

By looking at the Internet Wayback Archive, I can see that the conference website of MLDM 2023 still advertised the conference as being in New York:

But when we click on “Location”, as usual, we find that it is not in New York city but instead in the city of Newark:

For those who are not familiar with the map of US, Newark and New York are two cities from two different states:

Thus, these two cities should not be confused!

This blog post is just to give an update about this MLDM conference.

If you have any information about this MLDM 2023 conference and whether it was really held or not or have any other interesting experience to share, please leave a comment below.

Posted in Conference | Tagged , , , | 2 Comments

Fake reviews…

Today, I would like to talk about something that happens sometimes in academic journals, which is fake reviews. While many reviewers spend time to write reviews that provide a fair evaluation of papers, some reviewers have a very unethical behavior and submit fake reviews.

This recently happened for a paper that I submitted to journal. I will not say the name of the journal, but mention that it is a Q1 journal (a top 25% journal) of Elsevier, that is quite highly ranked.

We submitted a paper that was rejected and received two reviews. The first review contained somewhat minor criticisms that I can accept. But the second review is long but only contain some very general criticisms that do not mention anything related to our paper. Upon reading that latter review a few times, I thought that is very strange because that review sounds so generic. Here is the review:

As you can see, this review is very generic. It could be applied to almost any papers. Besides the review contains some unusual choices of words such as in the point (6), where the reviewer calls our paper “an essay”.

Thus, I searched on Google, and found that this exact review appears on a website (https://www.qeios.com/read/LUCUU6) for another paper:

Upon seeing this, it is clear that the reviewer submitted a fake review. Thus, I sent an email to the editor to complain about that fake review, and hopefully, this will be taken into account and that reviewer will be punished.

This is a very unethical behavior. And it leads to the question: Why a reviewer would do this? It is likely because the reviewer wants to review more papers and do this as quickly as possible, as the number of reviews is displayed on some websites such as Publons. However, this shows that the reviewer is selfish as he does not care about the authors who receive such fake reviews and the consequences of these fake reviews, such as the paper being rejected after waiting several months. Hopefully, the editor will punish that reviewer.

This was a blog post to talk about this issue, which probably happens more often than we think. I think I have seen this at least another time in the last few years. Besides, there are many other unethical behaviors that can be observed in academic journals such as reviewers that ask authors to cite many of their papers to boost their citations. I saw this several times and every time I have reported this situation to the editor.

Hope that this blost post has been interesting. If you want to share your story, please post in the comments below.


Philippe Fournier-Viger is a distinguished professor working in China and founder of the SPMF open source data mining software.

Posted in Academia, Research | Leave a comment

SPMF: upcoming feature: The Memory Viewer

Today, I would like to introduce an upcoming feature that will be released in the next version of SPMF (v. 2.60). It is a tool called the Memory Viewer. This tool is very simple yet useful for investigating the performance of algorithms. Here is a preview of how it works.

To launch the Memory Viewer in the user interface of SPMF, we need to select the algorithm “Memory Viewer” .

and then click “Run algorithm”.

This will open a separated window for monitoring the current memory of the Java Virtual Machine (JVM) in real-time. This window is shown here on the right:

That window displays the current memory usage of the JVM and updates it every second. It displays the last 100 seconds. After opening it, you can run a data mining algorithm and the memory usage will then be updated through the algorithm’s execution like this:

This is a very simple tool, but I think it is quite useful to get some insights about the performance of the algorithms that are running.

Note that this tool will only monitor the performance of algorithms that are running in the same JVM as SPMF. Thus, if you select the option “Run in a separated process” of SPMF to run an algorithm in a separated JVM, the memory will not be monitored.

Update: Thanks for the feedback. I have also added a slider to let the user change the refresh rate of the Memory Viewer:


That is all for today. I just wanted to show you some upcoming feature, as I am currently working on the next release of SPMF. If you have some suggestions, please leave them in the comment section below.


Philippe Fournier-Viger is a distinguished professor working in China and founder of the SPMF open source data mining software.

Posted in Data Mining, Data science, open-source, Pattern Mining, spmf | Tagged , , , , , , , | Leave a comment

(video) The EFIM algorithm

Here is a new video that I have recorded to explain the EFIM algorithm for high utility itemset mining.

You can watch the video here.

Related to this, if you want to try the EFIM algorithm, the original source code and datasets for testing are available in the SPMF open-source software.

Posted in Pattern Mining, Utility Mining | Tagged , , , , , , , , | Leave a comment

(video) Introduction to episode mining

If you want to learn more about frequent episode mining, I have put online a new video that gives an introduction to this topic. To watch the video, you can download it from my website here or watch it from my Youtube channel.

This video explains:

  • What is frequent episode mining
  • the EMMA algorithm
  • Maximal episode mining

And the video also gives a quick overview of those additional topics:

  • Episode rule mining
  • Top-K episode mining
  • High-utility episode mining

Hope you will enjoy the video!

By the way, to try episode mining, you can also check out the SPMF software, which is open-source and free. It offers efficient implementations of many episode mining algorithms and also provide example datasets. You can use this software in your research (I am the founder by the way).

Posted in Pattern Mining, Video | Tagged , , , , , , , , , , | Leave a comment