Blog

  • The 6 types of wealth – Shata sampatti

    Wed, 20/12/2017 Bangalore, India

    Since ancient times, it is said that strength of character is very essential. The Shat Sampatti are the six virtues that contribute towards one’s greatness in character – hence termed as wealth. In this article, Gurudev Sri Sri Ravi Shankar explains each of these six virtues.

    1

    Shama

    Shama means to have that inner tranquillity of the mind. The word Shanti (peace) comes from the word Shama. This is a very important quality. It is wealth that one should strive to acquire.

    When the mind is not at peace, your intellect becomes dull and hazy, and you are not able to listen or understand what someone else is saying. To sharpen the intellect, you first need to calm the mind.

    Suppose you see someone breaking a rule – if you get angry, you are only making yourself miserable. Instead, keep the mind calm and steady. If need be, educate the other person about their mistake. And if they are not willing to understand, then ignore it and move on. You cannot improve someone else by getting angry at them. This ability to keep a calm mind under any kind of circumstances is Shama.

    Join a Free workshop on Yoga, Meditation and BreathFull Name *Email *Phone *+91Select Date *Time *Time*I agree to the Privacy PolicyI want to experience meditation!

     

    2

    Dama

    The second kind of wealth is Dama, which means having a say over your own senses.

    Many times, when people travel overnight in a luxury bus or airplane to attend to some important work in the morning, there is a movie being played during the journey. Now, though they want to sleep, they continue watching the movie.
    A moment comes when they say to themselves, “Oh, I have already seen this movie before. It’s the same rubbish. What is there to watch again?” Yet, the eyes say, “No, I want to watch and see what is happening”. Your eyes do not agree with you. Your intellect says one thing, but your eyes disobey and follow something else.
    To have Dama means to have a perfect alignment between your mind and your senses.

    3

    Titiksha

    Titiksha means forbearance. It means the ability to endure even that which is not of your liking. Now, it is not possible that everything will go as per your liking. If you tend to lose your calm and presence of mind when some things do not happen as per your expectations, then that shows a lack of Titiksha.

    Having Titiksha means to be patient and to have forbearance. To maintain a balance and be able to bear it when undesired situations arise in life – that is a sign of having Titiksha.

    Suppose someone is very unpleasant to you. If you lack Titiksha, then it rattles your mind and throws you off balance. With Titiksha, you can move on and keep the balance.

    4

    Shraddha

    Shraddha means to adore something that you don’t completely know. You do not fully know it, yet you feel there is something wonderful about it and have a deep interest to know more about it.
    You do not need to have faith in what you already know. Faith is always in something that you do not know, yet you feel a sense of connectivity to that unknown.

    Without Shraddha, nothing can move in life. Your doctor tells you to take a certain medicine. You take the medicine because you have faith in the doctor. If you do not have faith in the doctor, you will not touch the medicine. So, our life runs on faith.
    The city’s electricity board gives you electricity having faith that you will pay the bill at the end of the month. Putting a foot forward before you get the fruit of the action is called Shraddha.

    5

    Uparati

    Uparati means enjoying anything that you do – even if it is a small thing. It means to have a sense of enthusiasm in whatever you do.
    When there is a lack of Uparati, then there is dejectedness – no interest and no enthusiasm. You do not like doing anything if you lack Uparati. One who does not have enthusiasm cannot create or invent anything new. Uparati means to do everything wholeheartedly, finding joy and taking total interest in it.

    “Discover your inner calm with research-backed breathing practices! Sign up>> for the Art of Living Online Meditation & Breath Workshop today.”

    6

    Samadhana

    Samadhana means contentment. This is also a gift – a true wealth. A person who is content exuberates a certain sense of joy from deep within. He exudes certain positive vibrations that everyone else would love to have.

    A restless person cannot be an inventor. Newton struggled all his life. But when he felt overwhelmed with desperation, when his brain got so tired of thinking and calculating, he sat down to rest below a tree. When he took a moment of rest, the apple fell before him and he discovered Gravity.

    When you look at every invention on this planet with a keen sense of observation, you will find that it has come when people have gotten over their restlessness, desperation, and dejection. It has happened when they arrived at a point of breakdown, and relaxed. In that moment of total relaxation and contentment, creativity came to them.

    Contentment is not lethargy. Do not confuse contentment with lethargy. Contentment is creativity, and creativity blossoms in us when there is Samadhana.

    So, these are the six kinds of wealth. Each one is called a wealth because, like any wealth, some of it comes to us easily in life, while others we must make efforts to acquire. Some wealth must be maintained, otherwise it will disappear.

  • Architecture of a GARCH model

    The Generalized Autoregressive Conditional Heteroskedasticity (GARCH) model is an extension of the Autoregressive Conditional Heteroskedasticity (ARCH) model that takes into account the conditional heteroskedasticity, or varying volatility, in a time series. The GARCH model allows for the estimation of both the autoregressive component and the conditional variance component.

    The architecture of a GARCH(p, q) model consists of two main components: the autoregressive component (AR) and the moving average component (MA).

    1. Autoregressive Component (AR):
      The autoregressive component of the GARCH model captures the persistence of the conditional variance. It models the relationship between the past squared residuals (or squared returns) and the current conditional variance. The autoregressive component is denoted by the parameter p and represents the number of lagged conditional variances used in the model.
    2. Moving Average Component (MA):
      The moving average component of the GARCH model captures the immediate impact of the past conditional variances on the current conditional variance. It models the relationship between the past squared residuals and the past conditional variances. The moving average component is denoted by the parameter q and represents the number of lagged squared residuals used in the model.

    The GARCH(p, q) model combines the autoregressive and moving average components to estimate the conditional variance at each time step. The conditional variance at time t, denoted by σ^2(t), is given by:

    σ^2(t) = α₀ + α₁ * ε^2(t-1) + α₂ * ε^2(t-2) + … + αₚ * ε^2(t-p) + β₁ * σ^2(t-1) + β₂ * σ^2(t-2) + … + β_q * σ^2(t-q)

    where ε(t-i) represents the squared residuals at time t-i, α₀ is a constant term, α₁ to αₚ are the autoregressive coefficients, β₁ to β_q are the moving average coefficients, and p and q are the orders of the autoregressive and moving average components, respectively.

    The GARCH model allows for capturing the time-varying volatility patterns in a time series and is widely used in financial econometrics for modeling and forecasting asset returns.

  • Some alternatives to www.paperswithcode.com

    When it comes to platforms or websites that provide similar functionalities to Papers with Code, which offers a centralized repository of research papers and their associated code implementations, there are a few notable competitors in the field. Here are some alternatives you can explore:

    1. Arxiv Sanity Preserver: Arxiv Sanity Preserver is a platform that helps researchers discover and browse research papers from arXiv. It provides features such as personalized recommendations, visualization of paper connections, and the ability to search and filter papers based on various criteria. While it doesn’t focus explicitly on code implementations, it is a popular resource for accessing research papers.
    2. GitHub: GitHub is a widely-used platform for version control and collaboration on code repositories. It hosts a vast number of open-source projects, including implementations of research papers. You can search for specific papers or topics of interest using GitHub’s search functionality and find code implementations associated with those papers.
    3. DeepAI: DeepAI is a platform that focuses on AI-related research and resources. It provides a comprehensive collection of research papers, datasets, models, and tools related to artificial intelligence and machine learning. It offers a search functionality that allows you to find papers based on keywords, authors, or topics.
    4. ResearchGate: ResearchGate is a social networking platform for researchers, where they can share and discover scientific content. It provides access to a wide range of research papers and allows researchers to upload their own papers and code implementations. While the code implementations might not be as centralized or structured as on Papers with Code, researchers often share their code on ResearchGate.
    5. OpenReview: OpenReview is a platform that promotes open and transparent peer review of research papers. It hosts a significant number of conference proceedings and preprints, along with associated discussions and reviews. While it primarily focuses on papers rather than code implementations, it can be a valuable resource for accessing the latest research in various domains.

    These platforms provide alternative approaches to accessing research papers, code implementations, and related resources. While Papers with Code is dedicated to connecting papers with their code implementations, other platforms might offer a broader range of functionalities or focus on specific aspects of the research process. It’s beneficial to explore multiple platforms and choose the ones that best suit your specific requirements and research needs.

  • Services providing free GPUs for research

    There are several platforms and services that offer free access to GPUs for research purposes. Here are a few options you can explore:

    1. Google Colab: Google Colab is a free cloud-based platform that provides access to GPUs. It allows you to run Jupyter notebooks in the cloud and provides limited access to GPUs for free. You can use Colab to perform GPU-accelerated research and development tasks.
    2. Kaggle Kernels: Kaggle is a data science platform that hosts machine learning competitions and provides a collaborative environment for data scientists. Kaggle Kernels allow you to run code, including GPU-accelerated code, in the cloud. While not unlimited, you can access free GPU resources for your research projects.
    3. IBM Watson Studio: IBM Watson Studio is an AI and data science platform that offers a free tier. With the free tier, you can access GPU resources for your research projects. Watson Studio provides a collaborative environment with tools and libraries for AI development.
    4. FloydHub: FloydHub is a platform that provides GPU resources for deep learning projects. While it offers paid plans, it also offers limited free GPU resources for open-source projects. You can apply for free GPU credits through their Open Source Sponsorship program.
    5. Paperspace Gradient Community Notebooks: Paperspace Gradient offers a community edition that provides limited access to GPUs for research and development. You can use their Jupyter notebooks with GPU acceleration for your projects.

    Remember that the availability and limitations of free GPU resources can vary across these platforms. Some platforms may have usage restrictions, time limits, or limited GPU memory. Additionally, the free access may be subject to availability and may require approval or application. It’s important to review the terms and conditions of each platform and understand their limitations before starting your research.

  • Top competitors to www.paperspace.com

    When it comes to cloud-based GPU and AI/ML infrastructure services, there are several competitors to Paperspace. Here are some notable alternatives:

    1. Amazon EC2: Amazon Elastic Compute Cloud (EC2) offers a wide range of GPU instances suitable for AI/ML workloads. With services like Amazon EC2 P3 instances powered by NVIDIA GPUs, Amazon provides scalable and powerful computing resources for GPU-accelerated applications.
    2. Google Cloud Platform: Google Cloud offers GPU instances, including NVIDIA Tesla GPUs, through their Compute Engine service. Google Cloud Platform provides a variety of machine learning and AI services, such as Google Cloud AI Platform, that support training and deploying models at scale.
    3. Microsoft Azure: Microsoft Azure provides GPU-enabled virtual machines (VMs) through their Azure Virtual Machines service. Azure offers a range of VM types with different GPU options, including NVIDIA GPUs. Azure Machine Learning is also available for building and deploying ML models.
    4. IBM Cloud: IBM Cloud offers GPU-enabled instances that can be used for AI/ML workloads. With the IBM Cloud infrastructure, users can leverage GPU resources for tasks like training deep learning models and running computationally intensive algorithms.
    5. Alibaba Cloud: Alibaba Cloud provides GPU instances with high-performance NVIDIA GPUs. Their Elastic Compute Service (ECS) offers GPU-optimized instances suitable for AI/ML workloads. Alibaba Cloud also offers AI and machine learning services, such as Machine Learning Platform for AI (PAI), for developing and deploying models.
    6. Paperspace Gradient: While Paperspace itself is a popular platform, it also offers Gradient, its own cloud-based AI platform. Gradient provides access to GPU instances, collaborative workspaces, and a suite of tools for AI/ML development and deployment.

    These are just a few examples of competitors to Paperspace in the cloud-based GPU and AI/ML infrastructure services market. Each provider offers its unique features, pricing models, and additional services. It is recommended to compare the offerings, pricing, performance, and suitability for your specific use case before selecting a provider.

  • Top CNNs for Vehicle classification in Satellite Imagery

    When it comes to vehicle classification in satellite imagery using convolutional neural networks (CNNs), there are several effective architectures that have shown promising results. Here are some top CNN architectures commonly used for vehicle classification in satellite imagery:

    1. VGGNet (VGG16 or VGG19): The VGGNet architecture is known for its simplicity and effectiveness. It consists of multiple convolutional layers with small receptive fields followed by fully connected layers. VGGNet has been widely used for various computer vision tasks, including vehicle classification in satellite imagery.
    2. ResNet (ResNet50, ResNet101, or ResNet152): ResNet is a deep residual network architecture that introduced the concept of residual connections. These connections allow the network to learn residual mappings, making it easier to train deeper networks. ResNet has demonstrated excellent performance in various image classification tasks, including vehicle classification.
    3. InceptionNet (InceptionV3 or InceptionResNetV2): InceptionNet utilizes the concept of “inception” modules, which consist of multiple parallel convolutional layers of different kernel sizes. This allows the network to capture features at multiple scales and efficiently handle different object sizes. InceptionNet has been successfully applied to vehicle classification in satellite imagery.
    4. MobileNet (MobileNetV1 or MobileNetV2): MobileNet is designed specifically for mobile and embedded vision applications with limited computational resources. It employs depth-wise separable convolutions to reduce model complexity while maintaining high accuracy. MobileNet is efficient and has been used for vehicle classification tasks in satellite imagery.
    5. DenseNet (DenseNet121, DenseNet169, or DenseNet201): DenseNet is a densely connected convolutional network that encourages feature reuse across layers. It achieves this by connecting each layer to every subsequent layer, allowing for better gradient flow and improved feature propagation. DenseNet has demonstrated strong performance in various image classification tasks.
    6. EfficientNet: EfficientNet is a family of models that achieves state-of-the-art accuracy while being computationally efficient. It uses a compound scaling method to balance network depth, width, and resolution. EfficientNet has shown excellent performance across different image classification benchmarks and can be utilized for vehicle classification in satellite imagery.

    When working with satellite imagery, it is often beneficial to utilize pre-trained models on large-scale image datasets (e.g., ImageNet) and fine-tune them on the specific vehicle classification task with satellite imagery data. Transfer learning can help leverage the learned features from the large-scale dataset and adapt them to the target domain.

    Remember that the choice of the CNN architecture depends on various factors, including the size of your dataset, the complexity of the vehicle classification task, available computational resources, and the specific requirements of your application. It is recommended to experiment with multiple architectures and select the one that performs best for your particular use case.

  • Text to Video generation using AI & ML

    Text-to-video generation, also known as video synthesis from textual descriptions, is a challenging task that involves generating video sequences based on textual input. While the field of text-to-video synthesis is still evolving, there have been some notable advancements and models in this area. Here are a few examples of text-to-video generation models:

    1. VideoBERT: VideoBERT is an extension of the BERT (Bidirectional Encoder Representations from Transformers) model, which is a popular language model for natural language processing. VideoBERT combines BERT with a video-based self-supervised learning framework. It can encode both textual descriptions and video frames into a shared embedding space, enabling generation of video sequences based on textual input.
    2. TALL: Text-Aware Attentive Video Generation (TALL) is a model that uses a text-based attention mechanism to generate videos. It first encodes both textual descriptions and video frames using separate LSTM (Long Short-Term Memory) networks. The model then uses an attention mechanism to align the textual and visual features, allowing for the generation of video sequences that are coherent with the given text.
    3. MSVAE: The Multimodal Sequential Variational Autoencoder (MSVAE) is a generative model that can generate videos based on textual descriptions. It employs a variational autoencoder framework, which learns a joint latent representation of textual and visual features. By sampling from the learned latent space, the model can generate diverse video sequences conditioned on the input text.
    4. TGAN: Text-to-Video Generative Adversarial Network (TGAN) is a generative model that combines text and video modalities. It uses a two-stage process, where the text is first encoded into a textual feature vector, which is then used to condition the generation of video frames. TGAN employs adversarial training to improve the realism and coherence of the generated video sequences.
    5. Transformer-based models: Transformer-based models, such as GPT (Generative Pre-trained Transformer) or T5 (Text-to-Text Transfer Transformer), can also be adapted for text-to-video generation. By extending these models to incorporate video frames as input and leveraging self-attention mechanisms, they can generate video sequences based on textual descriptions.

    It’s worth mentioning that text-to-video generation is still an active area of research, and the models mentioned above represent some of the notable approaches. The field continues to evolve rapidly, with ongoing advancements and new techniques being proposed to tackle the challenges of generating realistic and coherent video sequences from textual input.

  • Forecasting the BTC price 1 hour after the available data using SQL

    To forecast the BTC price 1 hour after the available data, you can use SQL’s window functions to calculate the average change in price over a given time period and then project that change into the future. Assuming you have a table named btc_prices with columns price and timestamp, you can use the following SQL query to forecast the BTC price 1 hour after the available data:

    WITH price_changes AS (
      SELECT 
        price,
        LAG(price) OVER (ORDER BY timestamp) AS prev_price,
        EXTRACT(EPOCH FROM (timestamp - LAG(timestamp) OVER (ORDER BY timestamp))) AS time_diff
      FROM btc_prices
    ),
    average_change AS (
      SELECT 
        AVG(price - prev_price) / AVG(time_diff) AS average_change
      FROM price_changes
    )
    SELECT 
      price + (average_change * 3600) AS forecasted_price
    FROM price_changes, average_change
    ORDER BY timestamp DESC
    LIMIT 1;

    Explanation of the SQL query:

    1. The first common table expression (CTE) named price_changes calculates the difference in price (price - prev_price) and the time difference (timestamp - LAG(timestamp)) between consecutive rows using the LAG() window function. It also calculates the time difference in seconds using the EXTRACT(EPOCH FROM ...) function.
    2. The second CTE named average_change calculates the average change in price per second by dividing the average price difference by the average time difference.
    3. The final query selects the most recent price from the price_changes CTE and adds the projected change in price (average_change * 3600) to it. This projects the average change per second into the future by multiplying it by the number of seconds in an hour (3600 seconds).
    4. The result is sorted by the timestamp in descending order and limited to 1 row, giving you the forecasted BTC price 1 hour after the available data.

    Note that this query assumes that the timestamp column is of a date/time data type that supports subtraction and extraction of epoch values. Also, keep in mind that forecasting future prices is inherently uncertain, and this SQL query provides a basic projection based on historical data.

  • Forecasting the BTC price 1 hour after the available data using BQML

    To forecast the BTC price 1 hour after the available data using BigQuery ML (BQML), you can utilize the linear regression algorithm. Assuming you have a table named btc_prices with columns price (numeric) and timestamp (timestamp), you can use the following code to create and train a BQML model to forecast the BTC price:

    CREATE OR REPLACE MODEL btc_price_forecast
    OPTIONS(model_type='linear_reg') AS
    SELECT
      UNIX_SECONDS(timestamp) AS timestamp_sec,
      price
    FROM
      btc_prices;
    
    SELECT
      TIMESTAMP_ADD(MAX(timestamp), INTERVAL 1 HOUR) AS forecast_timestamp,
      ROUND(predicted_price, 2) AS forecasted_price
    FROM
      ML.PREDICT(MODEL `btc_price_forecast`,
        (
        SELECT
          UNIX_SECONDS(MAX(timestamp)) AS timestamp_sec
        FROM
          btc_prices
        )
      );

    Explanation of the BQML code:

    1. The CREATE OR REPLACE MODEL statement creates or replaces a BQML model named btc_price_forecast with the linear regression algorithm specified by model_type='linear_reg'.
    2. In the SELECT statement within the CREATE OR REPLACE MODEL statement, the UNIX_SECONDS(timestamp) function converts the timestamp to seconds since the Unix epoch. This conversion is necessary for BQML to process the timestamp data.
    3. The FROM btc_prices clause specifies the input table containing the BTC price data.
    4. After the model is created, the ML.PREDICT function is used to generate predictions based on the trained model. The ML.PREDICT function takes the btc_price_forecast model and uses the maximum timestamp from the btc_prices table as input to generate the forecasted price.
    5. The result of the ML.PREDICT function is selected in the outer SELECT statement. The TIMESTAMP_ADD function adds 1 hour to the maximum timestamp, providing the forecasted timestamp. The ROUND function is used to round the predicted price to two decimal places.

    Note that before running this code, you need to ensure that you have the necessary permissions to create and train a BQML model, as well as access to the btc_prices table. Also, remember that forecasting future prices is inherently uncertain, and this BQML model provides a basic projection based on historical data.

  • Forecasting the BTC price 1 hour after the available data using ARIMA+ model.

    To forecast the BTC price 1 hour after the available data using the ARIMA+ model in SQL, you would need a database that supports advanced time series analysis and forecasting functions. Standard SQL alone does not have built-in functions for ARIMA+ modeling. However, you can use specialized time series forecasting libraries like Prophet, R, or Python’s statsmodels in combination with SQL to achieve this.

    Here’s an example using Python’s statsmodels library for ARIMA+ forecasting:

    1. Export the BTC price and timestamp data from the SQL table into a CSV file, let’s call it btc_prices.csv. The file should have two columns: timestamp and price.
    2. Write a Python script that reads the data from the CSV file, performs ARIMA+ modeling, and predicts the BTC price using the statsmodels library. Here’s an example:
    import pandas as pd
    from statsmodels.tsa.arima.model import ARIMA
    
    # Read the BTC price data from the CSV file
    btc_prices = pd.read_csv('btc_prices.csv')
    
    # Convert the timestamp column to datetime
    btc_prices['timestamp'] = pd.to_datetime(btc_prices['timestamp'])
    
    # Sort the data by timestamp
    btc_prices = btc_prices.sort_values('timestamp')
    
    # Fit the ARIMA+ model
    model = ARIMA(btc_prices['price'], order=(p, d, q))  # Replace p, d, q with appropriate values
    model_fit = model.fit()
    
    # Forecast the BTC price 1 hour ahead
    forecast = model_fit.get_forecast(steps=1)  # Forecast 1 step (1 hour) ahead
    
    # Get the forecasted values
    forecasted_price = forecast.predicted_mean.iloc[-1]
    
    # Print the forecasted price
    print(forecasted_price)

    Make sure to replace p, d, q with the appropriate values for your ARIMA+ model. You may need to tune these parameters based on the characteristics of your BTC price data.

    1. Run the Python script, and it will output the forecasted BTC price 1 hour after the available data.

    Note that this solution requires combining SQL with a programming language like Python to leverage advanced time series modeling libraries.