\section{Introduction}\label{intro}
Liquid crystals have provided great opportunities based on corresponding optical, electrical and magnetic properties from fundamental and applied  science points of view  \cite{Khoo07, Blinov11}. Alignment of liquid crystal (LC) molecules through the so-called {\it director} direction, ${\bf n}$, producing a nematic phase.
Two-dimensional (2D) nano-materials with dynamically tunable liquid crystalline properties have recently been appeared as a highly-promising class of novel functional materials. In order to produce a typical LC made of aqueous plate-like material, a proper 2D material particles are dispersed into a conventional liquid host with certain ranges of concentration \cite{Fu,Hogan17-1,Gao11,Zakri13,Hogan17}.
Among the plate-like materials, graphene oxide (GO) has received most attention due to its unique properties such as availability, easy to make and its application in various area such as solar cells, circuit boards, display panels and biotechnology \cite{Randviir14}. Dispersions of GO in the water within a specific range of volume fractions indicates a nematic liquid crystal (NLC) phase known as GO-NLC \cite{Hogan17}.

 Many different methods have been used to manipulate the orientation and ordering of graphene-based materials, including flow shear and also applying electric or magnetic fields \cite{Blinov11,Pleiner83,Marusii86,He15,Song16,Ahmad15,Ahmad16,Hong15,Nehring76,Ong84,Brochard72,Doorn75,Bao17}.  The controllability  by utilizing an electric or magnetic field is more feasible than mechanical-based methods such as flow shear approach proposing more flexibility and it is more suitable for device applications \cite{Nehring76,Ong84,Brochard72,Doorn75,Ahmad15,Ahmad16,Hong15}. The Frederiks transition and electro-optical characteristics have been examined by applying electric or magnetic field on LC \cite{Nehring76,Ong84,Brochard72,Doorn75}.  Also the amount of anisotropy in GO in response to an induced electric field  has been examined in \cite{Song16,Ahmad15,Ahmad16,Hong15}. Particularly, application of electric field on the GO-NLC leads to an undesired accumulation of GO at the cathode \cite{kim11}, subsequently alternative methods for rearranging the GO-NLC have been suggested \cite {Wang09,Lin15,Lin17,kim11}. It has been demonstrated that GO has almost weak response with respect to external magnetic field, consequently, to rearrange the corresponding directors, we need to high magnetic field causing to use alternative mechanism for doing alignment \cite {Wang09,Lin15,Lin17,kim11}.

Recently, Cheng \textit{et al.} demonstrated that GO-NLC can be used as a rewritable medium for reflective display without polarizing optics \cite{He15}. They have also shown that, the GO-NLC outer layer becomes reflective and bright, and they manually drawn patterns with dark appearance by applying a typical stick. Indeed, by imposing the stress on the top of sample by stick, the orientation of the GO flakes can change. It turns out that, they did not have any specific control over the amount of created stress in order to make a typical pattern.  Therefore, the notion of controllability of director orientation in a typical LC by using mechanical approaches has considerable challenge \cite{Pleiner83,Marusii86,He15,Sengupta13,Batista15}.  According to the hydrodynamical properties of NLC's considered in \cite{Khoo07, Blinov11, Marusii86, Leslie85, Pleiner83, Sengupta13}, one can combine physical behavior and boundary conditions to get deep insight in controllability of NLC materials.

A bundle of the light beam can be scattered by the fluctuations of LC molecules in a NLC \cite{Khoo07, Blinov11, deGennes77, Poggi77, Martinand72, Reznikov84, Marusii86, Leslie85, Pleiner83}. The dynamical properties governing on the light scattering \cite{Khoo07, Blinov11, deGennes77} and the effect of external fields on the mentioned phenomenon have been investigated \cite{Poggi77, Martinand72, Reznikov84, Marusii86, Leslie85, Pleiner83}. It has been depicted that, the non-equilibrium steady state of NLC has an impact on the light scattering cross-section \cite{Marusii86}. Also, the non-equilibrium conditions in the micro-channels can be controlled by the flow rate and boundary conditions. Therefore, we can manipulate intensity and the wavelength of the scattered light  by changing the flow rate in the channel. In this paper, we are motivated to propose a reliable and robust experimental setup to control  the optical anisotropy leading to change the light scattering cross-section based on GO-NLC in a micro-channel. Subsequently, our approach has the following advantages and novelties: proposing a new mechanical approach to achieve robust controllability mechanism in a simple experimental setup comparing to that of considering an external electric or magnetic field. Furthermore, we can increase the precision of controllability in a proper mechanical pipeline.
This approach can be used in optical switching systems, smart windows, optical limiting and reflective display.

The rest of this paper is organized as follows: in section \ref{experiment1}, we will clarify our experimental setup and sample preparation. Section \ref{result1} will be devoted to the controllability of light scattering through the GO-NLC in a micro-channel. Summary and conclusion will be given in section \ref{summary1}

\section{Setup and material}\label{experiment1}
In this section, we clarify the  materials and experimental setup utilized for examining the light scattering through the GO-NLC injected in a typical micro-channel. We will also turn to the matter preparation and characterization for the rest of our experiment.

\subsection{Graphene oxide preparation and properties}
As mentioned in the introduction, we are interested in examining the effect of GO-NLC flow rate in a typical micro-channel on the bundle of light scattering. At first, we make GO by a modified Hummers method (prepared at $0.17$ and $1.00$mg mL$^{-1}$ concentrations in the water). The UV- visible, FTIR spectra, and the XRD pattern have been utilized to characterize GO. The size distribution of GO plates can be determined by using the DLS method.

Figure \ref{fig:chrac}(a) illustrates the UV absorption spectrum of GO indicating a shoulder peak at 300nm (due to $ n-\pi^*$
transitions of aromatic C-C bonds) and a maximum absorption peak at $232$nm (due to $\pi-\pi^*$
transition of the atomic C-C bonds \cite{Xu13}). The FTIR spectrum of GO shown in Fig. \ref{fig:chrac}(b) confirms
the absorption peaks of $1730$cm$^{-1}$ (carboxyl groups), $1061$cm$^{-1}$ (epoxy groups), $1385$cm$^{-1}$ (C-O
vibration), $1630$cm$^{-1}$ (C=C vibration), $740$cm$^{-1}$ (C=O vibration) and $3450$cm$^{-1}$ (O-H vibration)
\cite{Guo09}. The XRD pattern of GO is also shown in Fig. \ref{fig:chrac}(c). An interlayer distance of $0.77$nm
corresponds to GO can be obtained from the sharp diffraction peak observed at $2\theta=9.02^{\circ}$ \cite{Du10}.
Figure \ref{fig:chrac}(d) shows the size distribution of graphene sheets produced by using the DLS
technique.
  \begin{figure}[t]
		\centering
		\includegraphics[width=9cm, height=5.5cm]{Fig1}
		\caption{\label{fig:chrac}The characteristic spectra of the graphene oxide. a) uv-visible spectrum, b) the FTIR spectrum, c) the XRD pattern and d) the size distribution graph using the DLS method}

\end{figure}
\begin{figure}[t]
		\centering
		\includegraphics[width=6cm, height=2.5cm]{Fig2}
		\caption{\label{fig:aniso}The passing light through the GO, which is under the influence of external force and placed between the crossed polaroid. The thickness of the GO sample is (a) 1 cm and (b) 0.1 cm. (c) GO within a micro-channel with a rectangular cross section of $300 \times 100 \mu$m. }

\end{figure}

We should also confirm that  our prepared GO-LC has the nematic phase. In other word, we have to
demonstrate that whether our produced material is a liquid crystal with an anisotropic property or not. By specifying the mean size of the GO's flakes and associated standard deviation, we determine the theoretical volume fractions for phase transitions from the isotropic phase to the biphase ($C_{IB} =0.03$Vol$\%$), and from the biphase to the nematic phase ($C_{BN} = 0.1$Vol$\%$) using Onsagers theory \cite{shen14}  which is an approximation due to the broadness of flakes size distribution.

 To check whether our prepared aqueous GO with the volume fraction of about $C=0.1$Vol$\%$ or more has the nematic phase, we pour the GO (at volume fraction of $C=0.17$Vol$\%$) into a $1\times 1$cm$^2$ square cell and placed it between crossed polarizers. If the suspended GO's flakes in a solvent are randomly oriented, which means isotropic phase, the exposure light does not feel birefringence, therefore, the light does not pass through the analyzer.
When we create a perturbation in a sample by an external factors, the directors are aligned locally and create an optical anisotropic in GO-NLC. The external factors can be considered as the external electric or magnetic fields applied on the sample, temperature gradient, mechanical stress such as pulling a stick, creating a flow in the sample, or creating a vibration to the cell containing GO-NLC sample. In this experiment, we created a tension in the GO-NLC dispersion by adding a drop of GO-NLC to the cell containing the sample (see supplementary information Visualization 1). Thus, the polarization of the light passed through the anisotropy GO-NLC is changed. Therefore, light can be detected after analyzer. In Figs. \ref{fig:aniso}(a) and \ref{fig:aniso}(b), we show the image of GO-NLC with a volume fraction of $C=0.17$Vol$\%$  between the crossed polarizers. It is worth noting that, the type of color at each point of sample observed after analyzer, depends on the variation of light polarization.
The thickness and birefringence of sample cause the variation of polarization at different wavelengths \cite{Hong15,Lin15,kim11,Xu11}.
 In our experimental setup, the mentioned variations are due to the induced optical anisotropy produced by applying the external factors. In this case, we change the thickness of our sample and set to $0.1$ cm. By comparing Fig. \ref{fig:aniso}(a) with Fig. \ref{fig:aniso}(b), it can be observed that by changing the sample thickness from 1 cm to $0.1$ cm, the observed color after the analyzer becomes different.
 These results illustrate that, GO locally is in a nematic phase, therefore the incident light can pass through the analyzer.
We can induce the LC phase by applying the flow in the GO dispersion (see Fig. \ref{fig:aniso}(c)). In this case, the GO dispersion (at volume fraction of $C=0.17$Vol$\%$) is injected into the channel at a rate of $0.2$ml/h by a syringe pump. The channel is located between the crossed polarizers. We observe that the applied flow rate to GO varies the orientation of the directors and the environment of LC is anisotropic.

The flakes of GO-NLC are distributed randomly in a macro-size cell and in the vicinity of either mechanical or electric and magnetic external fields, GO-NLC reaches to order phase \cite{Lin17}. Subsequently, the incident light can pass through the analyzer. On the other hand, the GO-NLC's  flakes in a micro-channel are aligned due to anchoring force and cooperative alignment effect \cite{Batista15}.

\subsection{Experimental setup}

 Now, we turn to make micro-channel to sustain the flow of GO-NLC as an almost ideal boundary.  Such channel is prepared by soft lithography technique \cite{Duffy98,McDonald2002} and it is made from polydimethylsiloxane (PDMS). Our tasks for making the micro-channel are as follows: i) Deposition of photoresist on the hard substrate, ii) Inserting photomask on the sample and exposure to UV light, iii) Post development, iv) PDMS and cross-linker mixture is poured over the substrate with photoresist, v) The PDMS layer is thermally cured and pulled out from the substrate, vi) Producing the PDMS-glass micro-channel, creating a surface-to-wall interface between glass and PDMS, specifying inlet and outlet channels.
Finally, the thickness, width, and length of our micro-channels
are $100\pm 20 \mu$m , $300\pm 5 \mu$m and $2.0\pm  0.1$ cm, respectively.
The channel is connected to a syringe pump and sink with an inlet and outlet tubes.

The effect of GO-NLC flow rate on the scattered and transmitted light are systematically investigated using the
setup illustrated in Fig. \ref{fig:3}. A continuous wave (CW) He-Ne laser ($\lambda= 633$nm ) with the Gaussian beam
profile ($\omega=1.1$mm) is focused on the sample by an objective lens. The power of laser
measured at the place of sample is $ 9 $mW. The objective lens (with $10\times$ magnification) is
used to focus the total laser beam into the channel (the channel width is $300\mu$m). Then,
using a syringe pump, the GO-NLC is injected into the channel at different flow rates
and the intensity of scattered light measured at arbitrary angle $\phi$ (the angle between the directions of the input and scattered light) by a power meter.
The detection area of the power meter (with a diameter of 1 cm) is located at a distance of 5 cm from the channel. The collection angle of scattered light is set to about $10^{\circ}$.
We measure the scattering laser
light at different injection rates for two volume fractions of $C=0.17$Vol$\%$ and $C=0.53$Vol$\%$. In addition, the effect of injection rate on the intensity of transmitted light at different wavelength is investigated (see the right panel of Fig. \ref{fig:3}). For this purpose, the micro-channel is placed between the two crossed polarizers, and the
variation of the light intensity at different wavelength is measured. The flow direction in the channel is in parallel to the transmissive axis of the polarizer. In this measurement, we use a white light lamp with the spectral region from $200-1200$nm. To detect the light passing through the analyzer, we use a spectrometer with a $0.5$nm spectral resolution.

   \begin{figure}[t]
		\centering
		\includegraphics[width=10cm, height=5cm]{Fig3}
		\caption{\label{fig:3}Schematic of the experimental setup. Left setup corresponds to the arrangement of single-mode laser light without Polaroid. The right part indicates arrangement of white light with a crossed polarizer. The inner figure is the micro-channel that used to experiment. The abbreviations used in this plot are: White Light (WL), Polarizer (P),  Objective Lens (OL), micro-channel (MC), Analyzer (A), Spectrometer (S), Power meter (PM), Syringe pump (SP).}
	\end{figure}

We have also carried out the measurements for different angles and the same behavior is observable.

\section{Results and discussion}\label{result1}

We inject the GO-NLC with volume fractions equates to $C=0.17$Vol$\%$ and $C=0.53$Vol$\%$ into the prepared micro-channel (explained in subsection \ref{experiment1}) at different flow rates and
we measure the normalized scattered (transmitted) laser light ($\lambda= 633$nm) intensity defined by:
\begin{eqnarray}
\label{eq0}
I_{s,T}\equiv\frac{I_R-I_0}{I_0}\times100
\end{eqnarray}
where $I_R$ is the intensity of the scattered (transmitted) light
when the fluid is injected into the channel at a typical rate ($R$), $I_0$ is also the intensity of the scattered (transmitted) light for a situation in which the fluid has no movement (see Fig. \ref{fig:3}). Figure \ref{realtime} indicates the real time measurements of the normalized scattered light intensity for two arbitrary angles, $\phi= 45^{\circ}$ and $\phi= 90^{\circ}$, at the volume fraction of $C = 0.17$Vol$\%$. As can be observed in this figure, the normalized scattered light intensity grows by increasing the injection rate (Figs. \ref{realtime}(a) and \ref{realtime}(b)). Also, the normalized intensity of the transmitted laser light decreases by increasing the injection rate which is consistent result due to the complementary relation between scattered and transmitted parts  (Figs. \ref{realtime}(c) and \ref{realtime}(d)).
\begin{figure}[t]
		\centering
		\includegraphics[width=5.7cm, height=3cm]{Fig4-a}
		\includegraphics[width=5.7cm, height=3cm]{Fig4-b}
		\includegraphics[width=5.8cm, height=3cm]{Fig4-c}
		\includegraphics[width=5.8cm, height=3cm]{Fig4-d}

		\caption{The real time measurements of the intensity of scattered light at angles of (a) $\phi= 45^{\circ}$ and (b) $\phi= 90^{\circ}$ for GO-NLC volume fractions of $C=0.17$Vol$\%$.  The real time measurement of the transmittance intensity for GO-NLC volume fractions of (c) $C=0.17$Vol$\%$ and (d) $C=0.53$Vol$\%$. }
		\label{realtime}
\end{figure}

\begin{figure}[t]
		\centering
		\includegraphics[width=5.5cm, height=3.5cm]{Fig5-a}
		\includegraphics[width=5.5cm, height=3.5cm]{Fig5-b}
		\caption{The intensity of scattering light for different GO-NLC injection rate into the channel for two volume fractions of $C=0.17$Vol$\%$  and $C=0.53$Vol$\%$. }
		\label{scat}
\end{figure}
It is also illustrated in Fig. \ref{scat} that the normalized scattered light intensity increases by increasing the injection rate for both volume fractions of $C=0.17$Vol$\%$ and $C=0.53$Vol$\%$. Our results indicate that for low volume fraction, the intensity reaches its saturation value slower than that of for high volume fraction.
We also compute the time-averaged of normalized scattered light intensity, $\langle I_s\rangle$, and associated variance, $\sigma_s^2$, for different volume fractions at various injection rates. Figure \ref{result} represents $\langle I_s\rangle$ and $\sigma_s^2$ as a function of injection rate for two different volume fractions. We find that $\langle I_s\rangle$ is an increasing function versus injection rate. This phenomenon is based on the scattering of light from inhomogeneities in the dielectric constant $\left(\delta \varepsilon({\bf r},t)\right)$ of a medium that light passes through. In isotropic liquid, fluctuation of the dielectric constant is mainly due to the density variation. For liquid crystals, it should be mentioned that an additional and important factor arises from director axis variations associated with the molecular anisotropy contributes in the fluctuation of the dielectric tensor \cite{Khoo07,Yilmaz12}. The interactions in the dispersion system can be classified into flake-to-liquid and flake-to-flake interactions. When the graphene oxide volume fraction is sufficiently low, isolated flakes are the dominant form existing in the dispersion sample, and flake-to-liquid is the dominant interactions. By increasing the concentration, graphene oxide flakes start to orient due to flake-to-flake interactions. Therefore, by increasing the injection rate, the sample containing larger concentration does reorient faster and as a result, the maximum intensity of scattered light is obtained at a faster rate.
\begin{figure}[t]
		\centering
		\includegraphics[width=7cm, height=4.5cm]{Fig6}
		\caption{Experimental results for laser light scattering from GO-NLC inside a micro-channel for different injection rates at two different volume fractions of GO.}
		\label{result}
\end{figure}

In order to justify the results indicated by Figs. \ref{scat} and \ref{result}, we rely on the general theoretical properties of light scattering cross-section incorporating the fluctuation of director vector and dielectric tensor.
When the liquid is pumped through the channel, the associated directors
 are reoriented due to the external force (see Fig. \ref{flow} for more details). As shown in the mentioned
figure, in the vicinity of the boundaries, the GO's flakes stick to the walls due to the anchoring force, and
the directors are perpendicular to the corresponding boundaries. Therefore, directional orientation behavior leads to having flakes with different alignments near and far from the  boundaries (except at the middle of the channel due to the symmetry of fluid rate) \cite{Sengupta12}.
We suppose that the director vector can be written as: $ {\bf n}({\bf r})={\bf n}_0+\delta {\bf n}({\bf r})$. Here ${\bf n}_0$ is the initial orientation of director vector and the flow rate is different across the channel and ${\bf r}$ is the position vector, we have a fluctuation in the orientation of the directors represented by $\delta {\bf n}({\bf r})$. It turns out that, the fluctuation parallel to the initial direction of the director can not produce the relevant physical effect and therefore $\delta {\bf n}({\bf r})$ has only two components perpendicular to the ${\bf n}_0$ as shown in the right part of Fig. \ref{flow} by $\delta {n}_1$ and $\delta{n}_2$. In addition, the dielectric tensor is given by \cite{Khoo07}:
\begin{eqnarray}
\label{eq2-10}
 {\varepsilon}_{ij} = \varepsilon_\perp \delta_{ij} + \varepsilon_a n_{i} n_{j}
\end{eqnarray}
where $\delta_{ij}$ is Kronecker function, $n_{i}$ and  $n_{j}$ are the components of director and  $\varepsilon_a \equiv\varepsilon_ \parallel -\varepsilon_\perp$. In this relation, $\varepsilon_ \parallel$ and $\varepsilon_\perp$ are the components of
the dielectric permittivity that are parallel and perpendicular to the optical axis, respectively \cite{Blinov11}.

The fluctuations in $\varepsilon_{ij}$ ($\delta \varepsilon_{ij}({\bf r})$) come from both  the changes in $\varepsilon_\perp$ and $\varepsilon_ \parallel$ due to density variation and also due to fluctuation in director, ${\bf n}$, \cite{Khoo07}. We assume the small volume $dV$ of sample is located at the position ${\bf r}$, the induced dielectric polarization density $\delta {\bf P}$ created by applying the incident field, ${\bf E}_{in}=\hat i E_{in} \exp\left[i({\bf k}_i\cdot{\bf r}-\omega t)\right]$, reads as: $\delta {\bf P}=\varepsilon_0 \chi {\bf E}_{inc} = \delta \varepsilon {\bf E}_{inc}$. In which, $\hat{i}$ represents the direction of incident light polarization and ${\bf k}_i$ is associated  wave vector, the $\chi$ is the electric susceptibility and $\delta \varepsilon$  is the change in the dielectric constant tensor. The total outgoing component in the far field zone, ${\bf E}_{out}({\bf r}^{\prime})$, is obtained by integrating over the interaction volume $V$, as
${\bf E}_{ out}({\bf r}^{\prime})=\hat{s}  E_{out} {\exp}\left[i\left({\bf k}_s \cdot {\bf r}'-\omega t  \right )\right]$, here the $\hat{s}$ and ${\bf k}_s$ are respectively  the direction of scattered light polarization and corresponding wave vector. One can write $\hat{s} \cdot   {\bf E}_{ out}= \delta \alpha_{s} \frac{ E}{ R}  \exp\left[{i {\bf k}_s \cdot {\bf r}^{\prime}}\right]$, and $\delta \alpha_{s} $ is the perturbation part of scattered amplitude reads as \cite{Khoo07}:
\begin{eqnarray}
\label{eq2}
\delta \alpha_{s}=\frac{\omega^2}{c^2}  \int_{\rm Vol} \left[ \hat s\cdot\delta {\varepsilon}({\bf r}) \cdot\hat i^{\dagger }\right]   {\bf e}^{-i {\bf q}\cdot{\bf r}} dV
\end{eqnarray}
where the superscript "$\dagger $" refers to the transpose vector and ${\bf q}\equiv{\bf k}_s-{\bf k}_i$. The differential scattering cross-section (the scattered power per unit incident intensity per unit solid angle) is given by \cite{Khoo07}:
\begin{eqnarray}
\label{eq6}
\frac{d\sigma}{d\Omega}\equiv\langle |\delta \alpha_s|^2\rangle =\left(\frac{\varepsilon_a \omega^2}{c^2}\right)^2   V \sum_{\alpha=1,2} \langle |\delta n_\alpha ({\bf q})|^2\rangle \left[ (\hat {n}_0\cdot\hat{i}) (\hat {e}_\alpha\cdot\hat{s})+ (\hat {n}_0\cdot\hat{s}) (\hat {e}_\alpha\cdot\hat{i})\right]^2
\end{eqnarray}
where $\sigma$ is the scattering cross-section (the scattered power per unit incident intensity at scattering angle) and $\Omega$ is the solid angle. In this equation, the director fluctuation $\langle | \delta n_{\alpha}({\bf q})|^2\rangle$ can be obtain by averaging in Fourier space as follows \cite{Marusii86}:
\begin{eqnarray}
\label{eq5}
\langle | \delta n_{\alpha}({\bf q})|^2\rangle =\frac{1}{V}\frac{k_BT}{K_{\alpha} q_1^2+K_3q_3^2}
\end{eqnarray}
where $k_B$ is the Boltzman's constant, $T$ is the temperature of the NLC and $V$ is the volume of the investigated area. The volume should be taken into account is the interaction volume. Therefore, for our experimental setup, it can be considered as a cylindrical volume with the height corresponds to the channel depth and its cross-section is equal to the cross-section of the laser beam at the interaction zone. Also, $K_{1}$, $K_{2}$ and $K_{3}$ are elastic constants of Splay, Twist, and Bend affecting on the  NLC director and they change the ${\bf n}$ due to the flow rate.

According to Eq. (\ref{eq6}), the cross-section of scattering can be changed due to fluctuation of the directors, $\langle |\delta n_\alpha ({\bf q})|^2\rangle$, and  the dielectric matrix component $\varepsilon_a= n_e ^ 2-n_o ^ 2$ depending on NLC birefringence \cite{Sengupta12-1}. Both mentioned components are affected by rate of flow injection. We expect to have an increasing behavior in fluctuation of the director by increasing the injection rate. As we will demonstrate in the following part, the amount of birefringence also increases by increasing $R$. Subsequently, our experimental results can be justified by theoretical achievement (Figs. \ref{realtime}-\ref{result}).

\begin{figure}[t]
		\centering
		\includegraphics[width=0.6\linewidth]{Fig7-a}
		\includegraphics[width=0.22\linewidth]{Fig7-b}
		\caption{(a) A schematic illustration of channel characteristics and the orientations of GO-NLCs through the channel (${\bf n}$ is the director of GO's plates). (b) Poiseuille flow inside the micro-channel. (c) Coordinate system for analyzing light scattering in NLC in terms of two normal modes \cite{Khoo07}.}
		\label{flow}
\end{figure}

To check the dependency of the birefringence on the injection rate, we experimentally evaluate  the white light transmission from the micro-channel containing GO-NLC. To this end, we place the micro-channel between the crossed polarizers and the un-polarized light of halogen lamp (with the spectrum of $200$nm to $1200$nm) focused on the channel as illustrated in the right part of Fig. \ref{fig:3}.

The Fig. \ref{intensity} shows the normalized transmitted intensity in the visible region for three injection
rates namely, 1ml/h, 5ml/h, and 10ml/h. The normalized transmitted light intensity at wavelength of $\lambda$  is defined as:
\begin{eqnarray}
\label{eq12}
I_\lambda \equiv\frac{I_{R,\lambda}-I_{0,\lambda}}{I_{0,\lambda}}\times100
\end{eqnarray}
where $I_{R,\lambda}$  and $I_{0,\lambda}$  are the intensity of the transmitted light with and without flow rate, respectively.
One can observe that by increasing the injection rate of GO-NLC into the
channel, the intensity of the beam passing through the analyzer almost increases in the interval of spectral range $[400-800]$nm. According to the lower panel of Fig. \ref{realtime}, the higher flow rate causes to obtain the lower transmittance intensity before analyzer and simultaneously, an increasing in the scattered intensity is detected. In the absence of crossed polarizer, a decreasing behavior in the transmitted intensity is recognized when the scattered intensity grows. In other word, under no injection rate, the GO-NLC sample is isotropic, consequently, we observe the dark state under crossed polarizer. Applying the injection rate, the GO-NLC flakes are partially aligned, and the transmission would be increased due to the induced birefringence in the samples. Generally, the GO-NLC cell alters the linear polarized light into elliptically polarized light. The state of elliptical polarization depends on the sample thickness, wavelength and birefringence. Therefore, by increasing the birefringence, polarization gets higher variations. As a result, the transmission of the light from the analyzer is increased which is equivalent to the lower transmission of light when we didn't use analyzer (see parts "c "and "d " of Fig. \ref{realtime}). During the data acquisition in the experiment, there are many reasons to obtain shot noises and outliers sourced by systematic effects. To reduce the impact of mentioned events, we have used a kernel function and finally we reported convolved data. Taking into account more realization for ensemble averaging, may suppress and alleviate most parts of artificial noises and fluctuations, nevertheless, examining the details of variations at different wavelengths needs to more precise experimental setup.

This phenomenon can be explained as follows: the flow of GO-NLC changes the direction of the director leading to increase the birefringence. The birefringence growth with respect to the flow rate reaches a saturation amount. Therefore, one can write \cite{Sengupta12-1}:
\begin{eqnarray}
\label{eq8}
n_o=n_\parallel &{\rm and}&   n_e=\frac{n_\parallel n_\perp}{\sqrt{n_\parallel ^2 \cos^2(\theta)+n_\perp ^2 \sin^2(\theta)}}
\end{eqnarray}
where $n_\parallel$ and $n_\perp$ are the refractive index parallel  and perpendicular to the director, respectively. The $\theta$ shows the angle between the wave vector of the incident light and the optical axis. By increasing the injection rate of GO-NLC into the channel, $\theta$ deviates from its initial value.
Consequently, according to Eq. (\ref{eq8}), the difference between $n_o$ and $n_e$ is enhanced in different regions of the channel. Therefore, the variation in the polarization of the light passing through the medium essentially changes the intensity of transmitted light.
\begin{figure}[t]
		\centering
		\includegraphics[width=7cm, height=5cm]{Fig8}
		\caption{ The output intensity of the transmitted light from a micro-channel containing GO-NLC for injection rates of 1ml/h, 5ml/h and 10ml/h, where the channel is placed between crossed polarizer.}
		\label{intensity}
\end{figure}
The variation in the director angle deviation has a maximum value (saturation angle) which is proportional to the hydrodynamic coefficient of the GO-NLC:
\begin{eqnarray}
\label{eq81}
\cos(2\theta_{s})=-\frac{\gamma_2-\gamma_3}{\gamma_5-\gamma_6}
\end{eqnarray}
 where $\theta_{s}$ is the saturation angle and $\gamma_i$s are the Leslie viscosity coefficients for anisotropic fluid \cite{Blinov11, Leslie85, Leslie68}. Therefore, the variation of scattering cross-section as a function of injection
rate must be saturated (see Fig. \ref{result} to make more sense).

\section{Conclusion}\label{summary1}

The interaction of light passing through a liquid crystal in the nematic phase can be a probe to examine the optical properties which is utilized for controllability behavior. Mechanical-hydrodynamical approaches including flow shear to manipulate the orientation of graphene-based materials have no enough flexibility, and therefore alternative techniques such as applying the electric or magnetic fields on the underlying NLC have specific impact \cite{Song16,Ahmad15,Ahmad16,Hong15,Nehring76,Ong84,Brochard72,Doorn75}. Nevertheless, the  low-cost and feasible as well as simple experimental setup reached by mechanical-hydrodynamical methods motivated us to concentrate on the mentioned approach and we tried to improve its imperfections such as amount of controllability in orientation of associated flakes of GO-NLC as a case study.  Accordingly, we could make a tunable functional material based on liquid crystal in the nematic phase by adopting the flow rate in a micro-channel.

We injected the GO-NLC into the micro-channel made in our laboratory by a syringe pump with various flow rates at volume fractions equates to $C=0.17$Vol$\%$ and $C=0.53$Vol$\%$ (see Fig. \ref{fig:3}). Meanwhile, we measured the normalized scattered and transmitted light intensities by a power meter as a function of time (see Fig. \ref{realtime}). The time averaged of scattered light intensity fluctuations was an increasing function with respect to volume fraction. The intensity of scattered light reaches its saturation values for higher volume fraction sooner than that of for lower volume fraction.

Utilizing the theoretical model for cross-section of scattering amplitude by means of mathematical description of fluctuations in director vector and dielectric tensors enabled us to explain the behavior of scattered light intensity with respect to the flow rate achieving a tunable matter by mechanical-hydrodynamical force. Variation in the fluid rate through the micro-channel had an impact on the director fluctuations and the dielectric matrix. According to our setup for examining the transmitted light, we found that birefringence property depends on the injection rate, directly. The growing in birefringence reached a saturation value. By increasing the injection flow rate, the angle between the wave vector of incident light ray and optical axis got more variation with respect to its initial situation leading to an enhancement in absolute difference between $n_o$ and $n_e$ consequently, the polarization of light passing through the media varied. Finally, we observed an increase in intensity of transmitted light  passing through the sample that placed between crossed polarizer (Fig. \ref{intensity}). We point out that the mentioned result  is consistent with simultaneous increasing behavior for scattered intensity since we have utilized analyzer. In the absence of crossed polarizer, a decreasing behavior in transmitted intensity is recognized when the scattered intensity grows (Fig. \ref{realtime}).

We summarize that in this paper, we constructed an experimental setup to achieve a tunable functional material based on NLC phase utilizing mechanical-hydrodynamical force in a micro-channel. To the best of our knowledge, our approach is one of the feasible and robust setups taking into account mechanical method rather than applying the electric or magnetic field to achieve an acceptable degree of controllability. Considering the impact of additional physical quantities such as variation of temperature, the shape of micro-channel and viscosity of sample and size of flakes on the interaction of incident light ray with NLC phase are interesting and can be examined in the future work.

\section*{Funding}

Deputy for Research and Technology of Shahid Beheshti University (600/5290).


\section{Introduction}
Data augmentation is an important technique which can help to improve various computer vision tasks. For instance, a common practice in medical applications is class-specific data augmentation. In this case, gathering sufficient labeled data to train a high capacity deep model is impractical \cite{ronneberger2015u, kuo2019automation}. This is the problem of long-tail distribution, which is prevalent in natural images as well\cite{zhu2014capturing, tang2015face}. Such problems can be addressed by data augmentation \cite{wang2017learning}. Another example is the usage of data augmentation in unsupervised learning \cite{NIPS2014_5548,devries2017dataset,bengio2013better, ozair2014deep}. A third example is to help generators and discriminators for training generative adversarial networks \cite{peng2018jointly,luan2017deep}. In this paper, we focus on the problem of image classification with data augmentation.  The main goal is to increase the accuracy of image classification by applying the right augmentation techniques on training data.

 The data augmentation in image classification is directly related to image transformations. In the classification process,  it is desirable to take into account a variety of target conditions from a primary condition. In other words, we want the perception of an object to be invariant to the properties that can vary in different environments such as scale, brightness, rotation, and viewing angle. These varying properties are called image transformations.  Considering important image transformations and applying them in the learning process is a critical problem in Artificial Neural Networks (ANNs). For instance,  it is desirable that a network, after learning an object from its original form, recognizes the same object with a change of location or added rotation.  Currently, there are two ways to deal with this problem. First, by designing network architectures that can inherently be invariant to important image transformations. Second, with data augmentations.

The most basic network which considers the transformations of the input data is the Convolutional Neural Network (CNN). The CNN architecture, with the concept of convolutional layers, tries to be translation invariant \cite{lecun1990handwritten, krizhevsky2012imagenet}. This network was very successful in its approach and has been used as a base for the development of more advanced architectures \cite{szegedy2015going,he2016deep,huang2017densely}. Another example of this approach is CapsuleNet, which tries to find the relevant pose information automatically \cite{hinton2011transforming,hinton2018matrix,sabour2017dynamic}. While the design of CapsuleNet improved the results of basic datasets \cite{lecun1998mnist}, unfortunately, it could not improve the accuracy for more complicated datasets such as ImageNet \cite{imagenet_cvpr09}.

The second method for considering different transformations of the input data is to use data augmentation. In this method, the objective is to achieve invariance by applying different image transformations such as geometry transformation, kernel filtering, color transformation, image mixing, random erasing\cite{devries2017improved}, etc. The main advantage of this method is simplicity and supporting all forms of ANN architectures.  Additionally, there is a possibility to use transformation techniques in which current ANN architectures do not support.

One of the most important factors for data augmentation techniques is the constraint on increasing the size of the training data. In this regard, only a subset of the possible techniques can be used for data augmentation.  Therefore,  a search mechanism is needed to find the best possible techniques. The most common method to find the best data augmentation techniques is to find them manually\cite{krizhevsky2012imagenet, cirecsan2012multi, huang2016deep} which needs prior knowledge and expertise. Recently,  the AutoAugment \cite{cubuk2018autoaugment} is proposed to automate the process of finding the best augmentations.  In this method, finding the augmentation policy is reduced to a discrete search problem over various augmentation techniques, each having hyperparameters of the probability of applying the operation and the magnitude to which the operation is applied. AutoAugment emphasizes on applying the augmentation techniques without increasing the size of the training data. Because of the computational requirements for searching, it also relies on transferability of the augmentation techniques.

In this paper, we answer the question of how to effectively search for  data augmentation techniques and apply them on  training data. For this purpose, we propose Greedy AutoAugment. In this process, we develop a greedy-based search algorithm, which is computationally much more efficient than the methodology that is used in AutoAugment. Since our search method is very efficient, it is possible to perform the search for each dataset and network separately. Using the results from the greedy search algorithm, we propose a simple augmentation selection process which gives more priority to the augmentation policies that have higher accuracies on child networks. For training, our priority queue is designed in a way that it uses the original training data at least once. In this way, the original data remains intact, and the augmentations are used only to improve the results without affecting the original information. Our experimental results show that the proposed method provides higher accuracies when it is combined with current infrastructures.

\section{Data Augmentation}

Data augmentation techniques are standard transformations, which can be applied to image data. These augmentation techniques are standard image transformation operations that are defined in \cite{wiredfool_2016_44297, devries2017improved, inoue2018data}.  To use data augmentation, we randomly select these transformations and apply them on the image data as a pre-processing step.  Applying data augmentation techniques in practice does not necessarily mean an increase in the size of the data. In fact, most of the standard networks use data augmentations as a pre-processing step without increasing the size of the training data.

\begin{figure}[h]

 \includegraphics [width = 85mm]{fig11.pdf}

\caption{Random data augmentation applied to samples from CIFAR-10. }
\label{fig0}

\end{figure}

In Figure \ref{fig0}, the effects of applying random data augmentation techniques to the images from CIFAR-10 dataset is shown. Each of the images at the left undergoes a series of random data augmentation techniques and the final image is fed to the convolutional neural network. As we can see, in some instances the change is not noticeable. However, in most cases, as we combine more techniques, the change becomes more drastic. The main concern here is to find the best combinations that can help the network to achieve better accuracy. The first approach is to take a trial-error approach and find the best combinations manually.  The second approach is AutoAugment, which automates the process of finding the best techniques.  In this method, a series of combinations of augmentation policies are found which are applied to the datasets without increasing the size of the datasets.

\begin{table*}[h]
\centering
\resizebox{160mm}{!}{
\begin{tabular}{@{}cll|cll@{}}

\cmidrule(l){1-6}
\quad & Technique  &  Description &  & Technique  &  Description    \\
 \cmidrule(l){1-6}

\multirow{4}{*}
 \quad 1. & FlipLR	& Filliping the image	along the vertical axis. & 11. & Contrast&	Changing the contrast of the image.\\
 \cmidrule(lr){1-6}
 \quad 2. & FlipUD & 	Filliping the image	along the horizontal axis.	&  12. & Brightness& Adjusting the brightness of the image. \\
 \cmidrule(lr){1-6}
 \quad  3.& AutoContrast	& Increasing the contrast of the image. & 	 13. & Sharpness& Adjusting the sharpness of the image.\\
 \cmidrule(lr){1-6}
 \quad  4. & Equalize	& Equalizing the histogram of the image. &  14. &	ShearX& Sheering the image in horizontal axis. \\
 \cmidrule(lr){1-6}
 \quad  5. & Invert	& Inverting the color of the pixels in the image. 	&  15. & ShearY & Sheering the image in vertical axis. 	\\
\cmidrule(lr){1-6}
\quad  6. & Rotate	& Rotating the image by certain degrees.	&  16.& TranslateX&	Translating the image in horizontal axis.\\
 \cmidrule(lr){1-6}
 \quad  7. & Posterize & 	Redicing the number of Bits for each pixel.	&  17.& TranslateY& Translating the image in vertical axis.\\
 \cmidrule(lr){1-6}
 \quad  8. & CropBilinear	& Croping with bilinear interpolation strategy.& 	 18.& Cutout\cite{zhong2017random, devries2017improved}& Changing a random square patch of the image to gray pixels.\\
 \cmidrule(lr){1-6}
 \quad  9. & Solarize	& Inverting the color of all the pixels above a certain threshold. &  19.& Blur& Blurring the image. \\
 \cmidrule(lr){1-6}
 \quad  10. & Color	& Changing the color balance of the image.	&  20.& Smooth & Smoothing the image(Low-pass filtering).	\\
\cmidrule(lr){1-6}

\end{tabular}
}
\caption{Augmentation techniques with their descriptions which are used in GAutoAugment.}
\label{tbl3}
\end{table*}

To search for the best combinations, the  AutoAugment method utilizes NasNet \cite{zoph2018learning} as a controller to direct the search forward. For this purpose, a one-layer LSTM is used, which contains 100 hidden units and $30$ softmax predictions. This architecture employs a policy gradient method called Proximal Policy Optimization algorithm (PPO) which uses the accuracy obtained from a child network to train the LSTM network. The child network could be a small subset of a particular dataset. The accuracy updates from child network are used to update the LSTM network. In the end, the trained LSTM network helps for the selection of the best policies.  Each policy has three elements 1- a data augmentation technique, 2- the probability of applying the operation, and 3- the magnitude of the operation.  In the next section, we talk about these three elements in more details and provide an alternative approach to search for the best policies and applying them on the training data.

\section{Greedy AutoAugment}
To perform data augmentation on image data, we use policies. Each policy has three essential elements, 1- the augmentation technique, 2- the magnitude of the operation, and 3- the probability. Therefore, a search mechanism for finding the best augmentation techniques is a search space that should consider all of the possible combinations of these three elements. The number of augmentation techniques that we use in this paper is $20$ (see Table \ref{tbl3}). The magnitude is the degree in which an operation is applied. For instance, in the rotate augmentation, the magnitude specifies how much we should rotate an image. The third element specifies the probability of applying the augmentation on the image.

Before searching for the best policy, we have to first,  discretize the spaces of probabilities and the magnitudes. The discretization of probabilities is with $11$ values with uniform space, and the discretization of magnitudes is with $10$ values with uniform space. The discretization schemes are in compliance with \cite{cubuk2018autoaugment}. With this setting, the search space is simply $(20 \times 10 \times 11)$. This search space is defined to consider all of the possible combinations for elements of one policy (first search layer). If we expand the search space to find all of the possible combinations for two policies, the search space increases in size to $(20 \times 10 \times 11)^2$ (two search layers). Continuously, we can expand the search space for more layers infinitely. In general, we define $(20 \times 10 \times 11)^l$, where $l$ is the number of layers for search space. In \cite{cubuk2018autoaugment}, the search is done for $l=2$.

Our first fundamental assumption which distinguishes the searching process from \cite{cubuk2018autoaugment} is that we do not search for the probability of applying an augmentation technique. Instead, we propose a static process which gives higher probabilities to the augmentation techniques that had higher accuracy with their child networks. Therefore, the search space reduces to $(20  \times 10)^l$.  Based on our observations, data augmentations in child networks can increase the accuracy only to a certain degree. For instance, if we search for all policies with different degrees of magnitudes, it does not mean that it would affect the achieved top accuracies considerably. We use this observation and for the main part of our search process, we only search for policies with one magnitude.   Different ranges of magnitudes come into play only after the best policies are found with a static magnitude. In this way, the search space almost reduces to  $(20)^l$ where we use a greedy search algorithm and expand the search layers only when it is required.

 \begin{figure*}
\centering
 \subfloat[]{
 \label{fig3a}
     \includegraphics [width = 32mm]{pic44.png}
  }\hspace{3mm}
 \subfloat[]{
 \label{fig3b}
     \includegraphics [width = 32mm]{pic22.png}
  }\hspace{3mm}
 \subfloat[]{
 \label{fig3c}
     \includegraphics [width = 32mm]{pic33.png}
  }\hspace{3mm}
   \subfloat[]{
 \label{fig3d}
     \includegraphics [width = 32mm]{pic11.png}
  }

\caption{Samples from real datasets used in our experiments: (a) Tiny ImageNet (b) CIFAR-10 (c) CIFAR-100 (d) SVHN.}
\label{fig3}

\end{figure*}

To perform the greedy search, we use Algorithm \ref{alg1}. At first,  observe that in line 4,  we use fixed values of $1$ and $6$ for the values of probabilities and magnitudes. The value $1$ is chosen for the probability because we want all of the images to receive the policy. This helps us understand the overall effect that each policy can have on the final results. The value $6$ is chosen as a random number for the magnitude. In lines 5,10, we specify that, if the current level provides us with higher accuracy compared to the previous layer,  continue the search in the next layer.  Otherwise, the search should terminate. In lines 6-9,  one by one, we apply all of the augmentation techniques, and with the help of child networks, we get their accuracies. In line 3, the aforementioned searching process reiterates with a specific number of times (in this case  $5$ times). For iterations where $i>1$,  the search starts with a combination that has next-best accuracy. Similar to the first iteration ($i=1$), searching continues through the layers until better combinations of policies cannot be found.

\begin{algorithm}[h]
\caption{Greedy AutoAugment Algorithm.}
\label{alg1}
\begin{algorithmic}[1]
\State \textbf{Input:} A set of 20 operations each with a magnitude and a probability.
\State \textbf{Output:} Suitable policies \textbf {P}.
\For {i = 1, 2, ..., 5:}
\State{set all magnitudes to 6 and all probabilities to 1;}
\While{a better augmentation exists:}
\For{all operations k=1,2,… ,20:}
\State{combine k with existing augmentations;}
\State{train child network to get accuracy of applying the augmentation;}
\EndFor
\State{check if the best combination improves the accuracy;}
\EndWhile
\State{store policies in $\mathbf{P}_{i}$;}
\EndFor
\For {i = 1, 2, ..., 5:}
\For {combinations of policies in $\mathbf{P}_{i}$:}
\For{all magnitudes j=1,2,… ,11:}
\State{train child network to get accuracy of applying the augmentation with magnitude j;}
\EndFor
\EndFor
\State{store policies in $\mathbf{P}_{i}$}
\EndFor
\State{sort policies in descending order with accuracy values}
\State{store $\mathbf{P}_{1}$, $\mathbf{P}_{2}$, ...,$\mathbf{P}_{5}$ in \textbf {P}.}
\State{ \textbf {return $\mathbf{P}$}.}

 \end{algorithmic}
\end{algorithm}

For the next step (lines 14-21), we still assume fixed probability value, but consider all possible magnitude values on the $5$ combinations that we found in the previous step. Note that in line 12, all of the combinations of policies are stored in variable $\mathbf{P}_i$. For each member of $\mathbf{P}_i$, we go through all of the individual policies and make child networks for all of the possible magnitudes. As we go through each layer, a magnitude with the highest accuracy is chosen (see lines 14-19). Similar to the previous part of the algorithm, the newly found policies from this process are also stored in separate $\mathbf{P}_i$s.  In the end, we store the $5$ best   $\mathbf{P}_i$s which show highest accuracy results in set $\mathbf{P}$ and return the results as suitable policies (lines 22-24).

In Algorithm \ref{alg1}, the probability is always set to one, which helps us reduce the search space significantly. Instead of searching for different combinations of the probability, we introduce a manual process which gives a higher probability selection to the policies with better results.  We know that  $\mathbf{P}$, is the set of all policies returned from Algorithm \ref{alg1}. The $\mathbf{P}$ is a descending ordered set where the leftmost member is a policy with the best result, and the rightmost member is a policy with the worst result. If $\mathbf{P}$ has k elements, we define  vector $\vec { v } =[v_1, \dots v_k]$ which represents the probability of choosing each element of $\mathbf{P}$. To fill the values of $\vec { v }$, we use the probabilities by Pareto Distribution \cite{arnold2015} which assigns the highest probability to $v_1$ and lowest probability to $v_k$, as follows,

\begin{equation}
\label{eqn4-1}
\rightarrow v_i =
 \left\{
\begin{array}{l l}
(\frac{1}{i}) ^ \alpha \quad\quad\quad    i > 1\\
\quad1  \quad\quad\quad\   i \le 1
\end{array}\right.
\end{equation}

\noindent in which $\alpha$ is a positive parameter. When $i=1$ the probability is one, and for $i > 1$ the probability is less than one but not zero.

To choose the best policy, we start from the rightmost element of $\vec{v}$ and go to the leftmost element of $\vec{v}$. Each of these elements has a chance to be selected based on their respective $v_i$ value. In this way, based on parameter $\alpha$, the rightmost element has the least probability to be taken, and the leftmost element is selected with the probability of $1$. Based on this scheme, the training data can be expanded with the new augmented data as much as required.

\section{Results}

In this section, we compare our method with current solutions. For this purpose, first, we show the accuracy results of our method compared to the other methods. Next,  we provide a computational analysis of the overall augmentation process. In these experiments, we use five different prominent ANN architectures.  The GoogLeNet\cite{szegedy2015going}, ResNet\cite{he2016deep} and ResNeXt\cite{xie2017aggregated} are used as state-of-the-art networks which need more resources for training. The  MobileNet\cite{howard2017mobilenets},  and ShuffleNetG2\cite{zhang2018shufflenet} are used as prominent lightweight networks. To implement these networks, we forked the implementations from \cite{kuangliu}. The default settings of the network implementations are not changed. The networks accept $32 \times 32$ images and provide output based on the number of classes.

In the experiments, we also use four real datasets, 1- Tiny ImageNet\cite{Le2015TinyIV} includes $120000$ natural images in $200$ classes with each class having a training set of $500$ images a test set of $50$ images along with $50$ validation images. 2,3- CIFAR-10 and CIFAR-100 datasets\cite{krizhevsky2009learning}, both containing $60000$ images of size $32\times 32$ in $10$ and $100$ classes respectively. 4- SVHN\cite{netzer2011reading} which contains over $600000$ images of real-world images of digits $0-9$. These selected datasets are used for three main reasons. First, while they are complex datasets,  they have a reasonable number of images and features which makes working with them with our available computational resources feasible. Second, they are well-known datasets with known and predictable results on a variety of ANN architectures.  Third,  they are compatible with the official experiments of AutoAugment paper \cite{cubuk2018autoaugment,autoaugment}.

\begin{table*}[h]
\centering

\resizebox{140mm}{!}{
\begin{tabular}{@{}llccccccc@{}}

\cmidrule(l){2-9}
 &  &    & Org + & Org + & Org +& Org + Aug &  Org + Aug&  Org + Aug+ \\

 & Network  &  Original   & AutoAug   &  GAutoAug &  Aug & + AutoAug & + GAutoAug  &  AutoAug +  \\

 & &     &    &   &   & &   &  GAutoAug   \\ \cmidrule(l){2-9}
\cmidrule(l){2-9}

\multirow{5}{*}{\rotatebox[origin=c]{90}{Tiny ImageNet}}   & ResNet\cite{he2016deep} & 	28.64	 & 27.94	 & 30.34	 & 31.66	 & 25.19	 & 35.44	 & 35.71\\
 & ResNeXt\cite{xie2017aggregated}	 & 32.36	 & 32.68	 & 43.33	 & 33.87	 & 29.45	 & 45.36	 & 40.11 \\
 & GoogLeNet\cite{szegedy2015going}	 & 34.76	 & 32.03	 & 41.81	 & 33.38	 & 34.48	 & 43.62	 & 44.07\\
 & MobileNet\cite{howard2017mobilenets}	 & 20.77	 & 13.70	 & 30.24	 & 15.15	 & 13.34	 & 28.84	 & 22.68\\
 & ShuffleNetG2\cite{zhang2018shufflenet}  & 28.02	 & 21.65	 & 29.76	 & 24.34	 & 21.29	 & 30.26	 & 30.75\\

  \cmidrule(lr){2-9}
\multirow{5}{*}{\rotatebox[origin=c]{90}{CIFAR-10}}
  & ResNet & 	75.89 & 	80.58	 & 80.92 & 	77.83	 & 76.48 & 	78.38 & 	82.85\\
 & ResNeXt	 & 81.08 & 	81.10 & 	82.26 & 	76.11	 & 78.53	 & 83.26 & 	81.45\\
 & GoogLeNet	 & 78.54	 & 76.36	 & 87.59	 & 74.61	 & 74.12	 & 83.97	 & 81.26\\
  & MobileNet  & 74.84	 & 73.52	 & 81.16	 & 65.04	 & 67.54 & 	77.38	 & 74.75\\
 & ShuffleNetG2 	 & 73.14	 & 74.37	 & 81.04	 & 71.04	 & 72.02	 & 80.03	 & 81.93\\
 \cmidrule(l){2-9}
\multirow{5}{*}{\rotatebox[origin=c]{90}{CIFAR-100}}
  & ResNet  & 47.34	 & 42.92	 & 55.21	 & 39.67	 & 42.90	 & 54.82	 & 45.37\\
 & ResNeXt	 & 49.54	 & 46.75	 & 58.07	 & 42.67 & 	51. 26 & 	57.15	 & 51.01\\
 & GoogLeNet 	 & 40.40	 & 47.53	 & 55.24	 & 38.53	 & 43.04	 & 59.40	 & 50.13\\
  & MobileNet & 	42.26	 & 43.67	 & 50.26	 & 40.28	 & 42.70	 & 46.65	 & 44.61\\
 & ShuffleNetG2  & 51.33	 & 50.30	 & 56.18	 & 43.93	 & 49.01	 & 55.95	 & 52.05\\
 \cmidrule(l){2-9}
\multirow{5}{*}{\rotatebox[origin=c]{90}{SVHN}}
  & ResNet	 & 92.95	 & 92.58	 & 92.51	 & 90.69	 & 88.67	 & 92.42	 & 87.99\\
 & ResNeXt & 92.29	 & 92.04	 & 93.80	 & 91.11	 & 90.03	 & 90.53	 & 92.77\\
 & GoogLeNet	 & 91.92	 & 92.43	 & 94.39	 & 85.91	 & 88.38	 & 93.66	 & 92.84\\
& MobileNet 	 & 87.93	 & 87.80	 & 91.53	 & 81.64	 & 84.32	 & 86.63	 & 87.15\\
 & ShuffleNetG2 	 & 87.20	 & 91.93	 & 93.64	 & 87.16	 & 87.47	 & 88.79	 & 90.95\\
 \cmidrule(l){2-9}
\end{tabular}
}
\caption{The result table for accuracy analysis. Abbreviations include: Org = Original, Aug = Manual Augmentation, AutoAug = AutoAugment, GAutoAug = Greedy AutoAugment. }
\label{tbl1}
\end{table*}

For training GAutoAugment networks, we used learning rates of $0.5$. Because the size of the data is smaller in other scenarios, we used the learning rate of $0.1$. When we wanted to find the best policies for GAutoAugment, because in this level the size of the data did not change, we used learning rate $0.1$. The number of the epochs for all of the training scenarios was $200$.  To find the best policies, we need to create child networks. The child networks and training networks share the same infrastructures. The only difference is using the learning rate $0.1$ for child networks and learning rate $0.5$ for training networks. To obtain the accuracies from child networks, we divided training data into two parts. The training part and the test part. For Tiny Imagenet and SVHN, $5000$ images are used for testing. For  CIFAR-10 and CIFAR-100, $2500$ images are used for testing. All of the images are selected randomly with i.i.d. distribution. The $\alpha$ value for Pareto Distribution was always $2$.

\subsection{Accuracy}
In this section, we test the accuracy of our proposed method using four different datasets, 1- Tiny ImageNet, 2- CIFAR-10, 3- CIFAR-100, and 4- SVHN.  The results are shown in Table \ref{tbl1}.  In this table, the "Original" column stands for the images without any augmentation methods. The "Aug" column stands for the manual augmentation. For manual augmentation, the exact augmentation techniques which are released with AutoAugment code are used. These techniques include zero padding, cropping, random-flip, and cutout. To prevent probable bugs, the same source code is used for manual augmentation \cite{autoaugment}. This helps to provide a fair environment for all methods. The only extra pre-processing step that we used is for resizing Tiny Imagenet from $64 \times 64$ to $32 \times 32$. This helped us to use the same infrastructure for all datasets without having adverse effects on the experiments. The values in the table are the average results from five trials.

The column "AutoAug" stands for the AutoAugment method. For CIFAR-10, CIFAR-100, and SVHN, we use the same policies that are found from AutoAugment method. For Tiny ImageNet, we use the policies that are found for ImageNet dataset. Because Tiny ImageNet is a subset of ImageNet, it can test the generalization of the AutoAugment method. The column  "GAutoAug" stands for Greedy AutoAugment, which is the proposed method.  In our method, we suggest a  specific searching process for each scenario to find the best possible policies. This is possible because (as we will see in the next section) our search method is computationally much more efficient than AutoAugment method. We also need an increase in the size of the training data. In all of our experiments, we doubled the size of the original training data with the proposed method.

For Tiny ImageNet, as we can see, the policies from AutoAugment are not effective when they are applied to the original images. Four of the five networks had worse results where the worst result was for GoogLeNet with $7.07\%$ less accuracy. The only increase of accuracy is for ResNeXt with $0.32\%$ better accuracy. Comparatively, our method increased accuracy for all five networks with at most $10.97\%$ better accuracy for ResNeXt. When AutoAugment was added on top of manually added augmentations, it made the results for four networks worse. The worst result was for MobileNet with $6.47\%$ less accuracy, and the best result was for GoogLeNet with $1.1\%$ better accuracy. Comparatively, when GAutoAugment was added on top of manually added augmentations, the results were better for all five networks with at most $13.69\%$ better accuracy for MobileNet and at least $3.78\%$ better accuracy for ResNet.   When we added our method on top of the AutoAugment, we increase the accuracy on five networks with at most $10.66\%$ better accuracy for ResNeXt. Overall, the generalization from ImageNet to Tiny ImageNet was not very smooth, and results from AutoAugment were mostly worse.

For CIFAR-10, the transition is better for AutoAugment policies. From five networks, three networks had better results with at most $4.69\%$ better accuracy and at least $2.18\%$ worse accuracy than the original images. Our method increased the accuracy for all five networks, with at most $9.05\%$ better accuracy for GoogLeNet and at least $1.18\%$ better accuracy for ResNeXt. When AutoAugment was added on top of manually added augmentations, the results were not much different. There are three networks which had better results with at most $2.5\%$ better accuracy and at least $1.35\%$ worse accuracy than the original images with manual augmentations. When  GAutoAugment was added on top of manually added augmentations, our method increased the accuracy for all five networks with at most $12.34\%$ better accuracy in MobileNet. When we added our method on top of the AutoAugment policies, we increased the accuracy on all five networks with at most $9.91\%$ better accuracy and at least $2.92\%$ better accuracy than AutoAugment.

The results for CIFAR-100 show that when policies from AutoAugment were applied to original images, the accuracies could only improve for two networks. Comparatively, when the policies from the proposed method are applied to the original network, we could improve the results for five networks. The accuracy could be up to $14.84\%$ and down to $4.85\%$ better than the original images. When policies from AutoAugment are applied to the original images combined with manual augmentation policies, this time, the accuracy was improved for all five networks with up to $8.59\%$ better accuracy. The proposed method could also improve the results for all five networks with up to $20.87\%$ better accuracy. When we added our method to the AutoAugment itself, the accuracy increased for four networks with up to $7.09\%$ better accuracy and down to $0.25\%$ worse accuracy, which could be a random fluctuation on the results.

Overall, in our experiments for CIFAR-10 and CIFAR-100, while we could replicate the results from AutoAugment source code, the transition of the augmentation policies did not have impressive results on our own infrastructure. The main reason could be that different network architectures, or even different implementations of the same network architecture can reduce the generality of augmentation policies.

For SVHN, applying policies from AutoAugment only improves the accuracy of two networks. The proposed method could improve the accuracy of the four networks. When we added policies from AutoAugment to the manually augmented images, three networks improved accuracy with up to $2.68 \%$ better results. On the other hand, when we added the proposed method, the accuracy improved for four networks with up to $7.75\%$ better accuracy.  When we joined our method with policies from AutoAugment, again, we improved the accuracy for four networks with up to $4.46\%$ improvement on the accuracy. As we can see, the results for SVHN show that the accuracy is less reliable, and random fluctuations could happen more than other datasets.  However, these fluctuations are negligible, and at most, we have seen $0.68\%$ worse result with the proposed method. Overall, in this dataset, the results show a similar trend compared to the previous datasets.

\subsection{Computational Analysis}
In this section, we analyze the computational requirement for our method compared to the original AutoAugment method. As described in \cite{cubuk2018autoaugment}, the AutoAugment needs $15,000$ samples of child networks. Comparatively, in our method, the number of child networks were usually between $300$ to $650$. Also, AutoAugment uses $120$ epochs to evaluate the accuracies of child networks. The number of epochs used for our child networks was only  $5$ epochs.   Since the exact infrastructure for different datasets is not known for AutoAugment, and child networks are interchangeable,  we consider the child networks to have the same efficiency.

\begin{table}[h]
\centering

\resizebox{70mm}{!}{
\begin{tabular}{@{}llccccccc@{}}

\cmidrule(l){2-5}
 &  &  Org +  & Org + & Org + Aug  \\

 & Network  &  GAutoAug   & Aug +   &  AutoAug  \\

 & &     &  GAutoAug  &  GAutoAug   \\ \cmidrule(l){2-5}
\cmidrule(l){2-5}

\multirow{5}{*}{\rotatebox[origin=c]{90}{Tiny ImageNet}}
& ResNet\cite{he2016deep}	& 731	& 733	& 730\\
& ResNeXt\cite{xie2017aggregated} & 	743	& 687& 	810\\
& GoogLeNet\cite{szegedy2015going}	& 931& 	814& 	1087\\
& MobileNet\cite{howard2017mobilenets}	& 905& 	794& 	1052\\
& ShuffleNetG2\cite{zhang2018shufflenet}	& 918	& 920	& 916\\

  \cmidrule(lr){2-5}
\multirow{5}{*}{\rotatebox[origin=c]{90}{CIFAR-10}}

& ResNet	& 527	& 794& 	835\\
& ResNeXt & 	568	& 512	& 607\\
& GoogLeNet	& 853& 	831	& 779\\
& MobileNet	& 677& 	779& 	779\\

& ShuffleNetG2	& 638	& 761& 	664\\

 \cmidrule(l){2-5}
\multirow{5}{*}{\rotatebox[origin=c]{90}{CIFAR-100}}
& ResNet	& 628& 	920& 	596\\
& ResNeXt	& 578	& 543& 	559\\
& GoogLeNet	& 733	& 875	& 628\\
& MobileNet & 	607	& 512	& 746\\
& ShuffleNetG2	& 589	& 779	& 717\\

 \cmidrule(l){2-5}
\multirow{5}{*}{\rotatebox[origin=c]{90}{SVHN}}
 & ResNet  & 677	 & 875	 & 616\\
 & ResNeXt	 & 570	 & 714	 & 605\\
 & GoogLeNet & 965	 & 994	 & 831\\
 & MobileNet	 & 534	 & 701	 & 689\\
 & ShuffleNetG2	 & 618	 & 814	 & 568\\

 \cmidrule(l){2-5}
\end{tabular}
}

\caption{The result table for performance analysis. Abbreviations include: Org = Original, Aug = Manual Augmentation, AutoAug = AutoAugment, GAutoAug = Greedy AutoAugment. }
\label{tbl2}
\end{table}

As a simple example for comparisons between the two methods, let us assume that our method needs $500$ child networks for a specific scenario. To calculate the overall computation, we need to take all of the epochs into account, which is $500 \times 5 = 2500$. For the AutoAugment, we need to consider the computations of $15000$ child networks with $120$ epochs, which is $15000 \times 120= 1800000$. If both networks use the same infrastructure for child networks, the comparison is $1800000\div 2500 = 720$ times fewer computations for the proposed method. By considering this example, we provide Table \ref{tbl2}. In this table, we use the same networks and datasets that we used for accuracy analysis. We needed the policies for three types of environments, 1) finding policies for original images, 2) finding policies when combined with manual policies, 3) finding policies when combined with AutAugment method. Therefore, the table has three columns for these three environments.

The results show that for Tiny ImageNet at least the proposed method was $684$ times better than AutoAugment. In the same dataset, the proposed method was at most $1048$ times better than AutoAugment. For CIFAR-10, we were at least $512$ times and at most $854$ times computationally more efficient than AutoAugment. For CIFAR-100, we were at least $534$ times and at most $994$ times computationally more efficient than AutoAugment. At last, for SVHN, we were at least $512$ times, and at most $920$ times computationally more efficient than AutoAugment. On average for the four datasets, we were $851.4$, $706.9$, $718.0$, and $667.3$ times computationally more efficient than AutoAugment. The average value for all datasets is $735.93$ with the least value of $512$ and the highest value of $1087$. In practice, the computational efficiency is in a way that it is practical to do a specific search for a scenario before doing the actual training. On the other hand, since we increase the training size, the training time increases according to the increase in the size of the training data.

\section{Conclusion}
In this paper, we proposed Greedy AutoAugment as a highly efficient method to find the best augmentation policies. Our experiments show that on average, we used $735.92$ times fewer computations for finding best policies compared to the original AutoAugment.  We combined the searching process with a simple procedure to increase the size of training data. For the experiments on the classification accuracy, we used four real datasets and five networks. Our results show that the proposed method could reliably improve the accuracy for classification results, which could provide up to  $20.87\%$ better accuracy compared to the base models.

\bibliographystyle{IEEEtran}