<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Shiv Prasad</title>
    <description>The latest articles on DEV Community by Shiv Prasad (@shiv07prasad).</description>
    <link>https://dev.to/shiv07prasad</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F444999%2Ffdaadeb4-c43f-4e1d-b494-92b618d935d8.png</url>
      <title>DEV Community: Shiv Prasad</title>
      <link>https://dev.to/shiv07prasad</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/shiv07prasad"/>
    <language>en</language>
    <item>
      <title>McCulloch Pitts Neuron</title>
      <dc:creator>Shiv Prasad</dc:creator>
      <pubDate>Mon, 10 Aug 2020 16:47:31 +0000</pubDate>
      <link>https://dev.to/shiv07prasad/mcculloch-pitts-neuron-46p4</link>
      <guid>https://dev.to/shiv07prasad/mcculloch-pitts-neuron-46p4</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--W-hzjKHV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1218/1%2A0P5w2KVQWAYGTkyfvpyHig.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--W-hzjKHV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1218/1%2A0P5w2KVQWAYGTkyfvpyHig.png" alt="https://miro.medium.com/max/1218/1*0P5w2KVQWAYGTkyfvpyHig.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;An artificial neuron consists of multiple inputs x_1 , x_2 and x_3. Each of these inputs have their weights w_1 , w_2 and w_3 respectively. The neuron takes multiple inputs and weighted aggregates and applies a function to give an output.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xAPzmz15--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1720/1%2Av7iYr-TDXx5bzX4cI3UAAg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xAPzmz15--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1720/1%2Av7iYr-TDXx5bzX4cI3UAAg.png" alt="https://miro.medium.com/max/1720/1*v7iYr-TDXx5bzX4cI3UAAg.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--HreNX0DG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1726/1%2ARAagXntdQ7OhDHlcdUURug.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--HreNX0DG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1726/1%2ARAagXntdQ7OhDHlcdUURug.png" alt="https://miro.medium.com/max/1726/1*RAagXntdQ7OhDHlcdUURug.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The early model of an artificial neuron was proposed by Warren McCulloch and Walter Pitts.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--HSdAWW7H--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1743/1%2A6fWgrqdJRqS68SdrcUc-_g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--HSdAWW7H--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1743/1%2A6fWgrqdJRqS68SdrcUc-_g.png" alt="https://miro.medium.com/max/1743/1*6fWgrqdJRqS68SdrcUc-_g.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In a simplified computational model of a neuron the inputs (x_i) are in boolean and the aggregates of which represent the function g(x). The function g(x) is passed into function f which gives the output 1 or 0 based on the threshold/parameter b.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--IDolVOT8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1753/1%2AQ1LFG0syEYjikkhtHNc7Yg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--IDolVOT8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1753/1%2AQ1LFG0syEYjikkhtHNc7Yg.png" alt="https://miro.medium.com/max/1753/1*Q1LFG0syEYjikkhtHNc7Yg.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let us assume that a model predicts whether a person will like a smartphone or not. The wrong predictions made is measured by the loss function.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--x502ltq4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1749/1%2A-kIAxedhx5BARw33NNv35g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--x502ltq4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1749/1%2A-kIAxedhx5BARw33NNv35g.png" alt="https://miro.medium.com/max/1749/1*-kIAxedhx5BARw33NNv35g.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In a primitive algorithm like brute force search the threshold is assumed and predictions are made for different thresholds and the model is selected based on the lowest value of loss function.&lt;/p&gt;

&lt;p&gt;In the graph we can see that threshold was increased from 1 to 10 and the lowest loss was at 5 where loss = 0 i.e correct predictions were made.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--o9p1goa4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1748/1%2AYEOd-Rml8Q4QIQHCMSwlrw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--o9p1goa4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1748/1%2AYEOd-Rml8Q4QIQHCMSwlrw.png" alt="https://miro.medium.com/max/1748/1*YEOd-Rml8Q4QIQHCMSwlrw.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We can find the accuracy of the neuron with an assumed threshold of 5 by applying the model on the test data and finding the fraction of number of correct predictions to the total number of predictions in the test data.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Lk-bpiXe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1750/1%2AwgOq5OTGLHFRc628vAt9vw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Lk-bpiXe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1750/1%2AwgOq5OTGLHFRc628vAt9vw.png" alt="https://miro.medium.com/max/1750/1*wgOq5OTGLHFRc628vAt9vw.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The geometric interpretation of MP neuron is that it separates the outcome into two different regions. The region above the line gives a positive result and region below the line gives negative result. Sometimes the negative points lie above the line which makes the line inseparable which is a limitation. So zero loss is not possible.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Bq7mnmMb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1726/1%2A1X7euyxxCR47ILgKj93z8Q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Bq7mnmMb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1726/1%2A1X7euyxxCR47ILgKj93z8Q.png" alt="https://miro.medium.com/max/1726/1*1X7euyxxCR47ILgKj93z8Q.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The data is in boolean.&lt;/li&gt;
&lt;li&gt;Only classification tasks can be performed&lt;/li&gt;
&lt;li&gt;The model is linear and separates the outcome into two different regions.&lt;/li&gt;
&lt;li&gt;The loss is never zero.&lt;/li&gt;
&lt;li&gt;The parameter b can range between 0 to n and find loss near to or equal to 0.&lt;/li&gt;
&lt;li&gt;The accuracy is the fraction of number of correct prediction to total predictions.&lt;/li&gt;
&lt;/ol&gt;

</description>
    </item>
    <item>
      <title>Vectors and Matrices</title>
      <dc:creator>Shiv Prasad</dc:creator>
      <pubDate>Wed, 05 Aug 2020 13:53:34 +0000</pubDate>
      <link>https://dev.to/shiv07prasad/vectors-and-matrices-4gmj</link>
      <guid>https://dev.to/shiv07prasad/vectors-and-matrices-4gmj</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--_gs0dmNm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1756/1%2AUsrXoK2aHGPNtVBqmnwoig.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--_gs0dmNm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1756/1%2AUsrXoK2aHGPNtVBqmnwoig.png" alt="https://miro.medium.com/max/1756/1*UsrXoK2aHGPNtVBqmnwoig.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Vectors are a collection of co-ordinates that a point has in a given space. They are defined by their magnitude and direction.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xqJ0lS3C--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1741/1%2ARrAXw2ka-y8zym7Fh3O83Q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xqJ0lS3C--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1741/1%2ARrAXw2ka-y8zym7Fh3O83Q.png" alt="https://miro.medium.com/max/1741/1*RrAXw2ka-y8zym7Fh3O83Q.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For n-dimensions there are n-coordinates in the given space.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--d8-FIxD---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1753/1%2A8lrgqR150k90ta0WlhqV5Q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--d8-FIxD---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1753/1%2A8lrgqR150k90ta0WlhqV5Q.png" alt="https://miro.medium.com/max/1753/1*8lrgqR150k90ta0WlhqV5Q.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Unit vector has a magnitude of one. To find the unit vector of any vector divide each element of the vector by the vectors length.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Y-4pB2bq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1746/1%2ApuB82lx2Qg91kSpICSUpfQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Y-4pB2bq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1746/1%2ApuB82lx2Qg91kSpICSUpfQ.png" alt="https://miro.medium.com/max/1746/1*puB82lx2Qg91kSpICSUpfQ.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The projection of vector x on vector y can be found by dividing the dot product of x and y by the magnitude of the vector y and multiplied by vector y . The projection of vector x is in the direction of y vector.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--wDeFU5xZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1748/1%2Ao_pW8Evl_fllL5VWHLUMTg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--wDeFU5xZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1748/1%2Ao_pW8Evl_fllL5VWHLUMTg.png" alt="https://miro.medium.com/max/1748/1*o_pW8Evl_fllL5VWHLUMTg.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is an example on projecting vector x on vector y.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--kgHRF1gn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1754/1%2A_nYs_6eRuBLburjkNM9Qmw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--kgHRF1gn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1754/1%2A_nYs_6eRuBLburjkNM9Qmw.png" alt="https://miro.medium.com/max/1754/1*_nYs_6eRuBLburjkNM9Qmw.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Above is an example to calculate the angle between two vectors.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--a0v4cpsJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1753/1%2Au_jnY2kUB109oFN1qw1FuQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--a0v4cpsJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1753/1%2Au_jnY2kUB109oFN1qw1FuQ.png" alt="https://miro.medium.com/max/1753/1*u_jnY2kUB109oFN1qw1FuQ.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Two vectors are said to be orthogonal when the angle between them is 90°. That is the dot product between the vectors should be zero.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Matrices :&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Tn4EvEwY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1758/1%2AiliJemU_mPtkXOZgpLdJYg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Tn4EvEwY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1758/1%2AiliJemU_mPtkXOZgpLdJYg.png" alt="https://miro.medium.com/max/1758/1*iliJemU_mPtkXOZgpLdJYg.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Matrices are a collection of row vectors or column vectors. Data we deal are mostly is in the form of matrices. We manipulate these matrices to find relations and make predictions.&lt;/p&gt;

&lt;p&gt;Here is a useful playlist :&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/playlist?list=PL2jykFOD1AWazz20_QRfESiJ2rthDF9-Z"&gt;https://www.youtube.com/playlist?list=PL2jykFOD1AWazz20_QRfESiJ2rthDF9-Z&lt;/a&gt;&lt;/p&gt;

</description>
      <category>vector</category>
      <category>matrix</category>
      <category>machinelearning</category>
      <category>datascience</category>
    </item>
    <item>
      <title>Expert systems - 6 Jars</title>
      <dc:creator>Shiv Prasad</dc:creator>
      <pubDate>Sun, 02 Aug 2020 16:59:25 +0000</pubDate>
      <link>https://dev.to/shiv07prasad/expert-systems-6-jars-22jh</link>
      <guid>https://dev.to/shiv07prasad/expert-systems-6-jars-22jh</guid>
      <description>&lt;p&gt;In an expert system a human establishes the rules and hand codes the rules and the machine executes the rules. In machine learning the machine learns from the data curated by a human and uses functions and parameters to establish a relationship between input and output.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--gxIJSCUb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1433/1%2Az7TbjUwpkQQ4UxYqgo99Nw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--gxIJSCUb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1433/1%2Az7TbjUwpkQQ4UxYqgo99Nw.png" alt="https://miro.medium.com/max/1433/1*z7TbjUwpkQQ4UxYqgo99Nw.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let us split the machine learning process into 6 jars and see how these interact with each other to form the complete process of machine learning.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--lMhrjsvO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1636/1%2AyrmbCvJVyw8EioS6bEzHxw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--lMhrjsvO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1636/1%2AyrmbCvJVyw8EioS6bEzHxw.png" alt="https://miro.medium.com/max/1636/1*yrmbCvJVyw8EioS6bEzHxw.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The basic idea of machine learning is to find a function that depends on the features of the given data. It is used to find the output from a number of given inputs. A function can be a series of if-else statements, weights applied to different parameters / features or from a family of functions such as linear , polynomial or non-linear.&lt;/p&gt;

&lt;p&gt;The machine learning algorithm tries all the functions and different parameters in the function and ultimately selects the one which best explains the relationship between input and output.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--AcOPDh-D--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1633/1%2A-HdsTTH3d1AcQotv_LvdHw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--AcOPDh-D--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1633/1%2A-HdsTTH3d1AcQotv_LvdHw.png" alt="https://miro.medium.com/max/1633/1*-HdsTTH3d1AcQotv_LvdHw.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The domain of machine learning has been more successful because of abundant data that is available in different forms such as text, image, video, pictures, voice and tabular data.&lt;/p&gt;

&lt;p&gt;The models and learning algorithms are already available open source for everyone to use.&lt;/p&gt;

&lt;p&gt;The hardware limitations for computing has been broken with the help of cloud computing and complex tasks can be performed using a simple machine with a web browser.&lt;/p&gt;

&lt;p&gt;Lets split machine learning process into six different jars and look into each one of them in detail.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Jar 1 — Data&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Df2wObks--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1756/1%2Ad9oZEpcKtpdCcFx3K_buEA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Df2wObks--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1756/1%2Ad9oZEpcKtpdCcFx3K_buEA.png" alt="https://miro.medium.com/max/1756/1*d9oZEpcKtpdCcFx3K_buEA.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For machine learning we need useful data and lets look at what form that these data should be in to get meaningful insights from them. So the data can be in the form of text, audio, image and structured data in tabulated form.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--aMZu10Gf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1764/1%2AUW9lELuyG_evN-TXnQanzA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--aMZu10Gf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1764/1%2AUW9lELuyG_evN-TXnQanzA.png" alt="https://miro.medium.com/max/1764/1*UW9lELuyG_evN-TXnQanzA.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For example this is a medical image with input part (&lt;code&gt;x&lt;/code&gt;) and output part (&lt;code&gt;y&lt;/code&gt;) which tells the presence of an anomaly. The question that the hospital can raise is " Can I tell whether a person is normal or not with these images ? ". For that question to be answered we need the output (&lt;code&gt;y&lt;/code&gt;) given by the doctors to each and every image of the scan and x is the data of each and every pixel in the scan. If the scan is a 30x30 image then there are 900 RGB values of the image stored in a array. This data can be read by a machine. Here all the data is encoded as numbers and contains 900 real numbers. This is an example of high dimensional data.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The data should be in &lt;code&gt;x&lt;/code&gt; and &lt;code&gt;y&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;The data should be in machine readable format.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--4iJ3sblD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1759/1%2AQMSAZ2AY6axXX6lSWHjZ5w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--4iJ3sblD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1759/1%2AQMSAZ2AY6axXX6lSWHjZ5w.png" alt="https://miro.medium.com/max/1759/1*QMSAZ2AY6axXX6lSWHjZ5w.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In this example the text data in the document is represented as real numbers in &lt;code&gt;x&lt;/code&gt; and output is represented in &lt;code&gt;y&lt;/code&gt;.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Jar 2 — Tasks&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--u2-zCgSl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1749/1%2AR4vzzzQd_vkg-bXuWB73og.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--u2-zCgSl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1749/1%2AR4vzzzQd_vkg-bXuWB73og.png" alt="https://miro.medium.com/max/1749/1*R4vzzzQd_vkg-bXuWB73og.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In this example the input &lt;code&gt;x&lt;/code&gt; ( red box ) is the text data from description of product and output &lt;code&gt;y&lt;/code&gt; (green box)is the structured tabulation extracted from the unstructured input &lt;code&gt;x&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--IxjGPaIr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1749/1%2AF9Nn45YkpK4hcU-76RJDkw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--IxjGPaIr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1749/1%2AF9Nn45YkpK4hcU-76RJDkw.png" alt="https://miro.medium.com/max/1749/1*F9Nn45YkpK4hcU-76RJDkw.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The tasks can be supervised that is, they have labelled data. Here from the labelled images we can tell classifier to learn the relationship between &lt;code&gt;x&lt;/code&gt; and &lt;code&gt;y&lt;/code&gt; and find out whether there's any text in the image (&lt;code&gt;y&lt;/code&gt; = 1) or not ( &lt;code&gt;y&lt;/code&gt; = 0 ).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ttQzhEh4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1755/1%2AX_tK-u5XpyPkF846LMmRgg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ttQzhEh4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1755/1%2AX_tK-u5XpyPkF846LMmRgg.png" alt="https://miro.medium.com/max/1755/1*X_tK-u5XpyPkF846LMmRgg.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In this task it is expected to find the box in which the text is present in the image. Here we are trying to find the co-ordinates (&lt;code&gt;left_x&lt;/code&gt;, &lt;code&gt;left_y&lt;/code&gt;, &lt;code&gt;width&lt;/code&gt;, &lt;code&gt;height&lt;/code&gt;) of the box from the values (&lt;code&gt;x&lt;/code&gt;) of the image given.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--MRLwrRUQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1756/1%2ArgH6oKPBB3AnEOpksa06FQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--MRLwrRUQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1756/1%2ArgH6oKPBB3AnEOpksa06FQ.png" alt="https://miro.medium.com/max/1756/1*rgH6oKPBB3AnEOpksa06FQ.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In unsupervised tasks we don’t know the &lt;code&gt;y&lt;/code&gt; labels. We don't know what each cluster means, like they can be clustered based on colours of the sign or based on the shapes of the sign board. The machine will try to find the pattern and it is upto us to interpret those patterns.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---aQ35zw---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1746/1%2AiHlbMJoaD79m_IxONxXTGg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---aQ35zw---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1746/1%2AiHlbMJoaD79m_IxONxXTGg.png" alt="https://miro.medium.com/max/1746/1*iHlbMJoaD79m_IxONxXTGg.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In this type of unsupervised task the machine generates &lt;code&gt;x&lt;/code&gt; from &lt;code&gt;x&lt;/code&gt;. That is from the images given as input it produces an output image that is similar to input images. This is known as generations and is achieved with the help of GAN's (Generative Adversarial Networks).&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Jar 3 — Models&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--C1lICZfJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1749/1%2ANSZn2VxSGyCombgxHfwJLA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--C1lICZfJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1749/1%2ANSZn2VxSGyCombgxHfwJLA.png" alt="https://miro.medium.com/max/1749/1*NSZn2VxSGyCombgxHfwJLA.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The image is classified as a dog because there is a function which takes the image and classifies it as a dog. The problem that we face at the beginning is that we don’t know what the function is. This is where machine learning comes in to find the function and establish a relationship with &lt;code&gt;x&lt;/code&gt; and &lt;code&gt;y&lt;/code&gt; which is the closest approximation of the true relation.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--zAzotHV9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1758/1%2AR8-DN12IjEjt8glTTR2gqQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zAzotHV9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1758/1%2AR8-DN12IjEjt8glTTR2gqQ.png" alt="https://miro.medium.com/max/1758/1*R8-DN12IjEjt8glTTR2gqQ.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The ŷ is the close approximation of the function. The green line in the graph is our model developed by close machine learning.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--pJOQlbcN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1751/1%2AHWG1-aIBud-guaXcXYFEVw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--pJOQlbcN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1751/1%2AHWG1-aIBud-guaXcXYFEVw.png" alt="https://miro.medium.com/max/1751/1*HWG1-aIBud-guaXcXYFEVw.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Trying to fit a function through all the points makes it more complex. So we use the concepts of bias-variance tradeoff, overfitting and regularization to control the complexity of the model.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Jar 4 — Loss Function&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--HGI1YqWW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1749/1%2Aq-U9d0UUuzkwSVjjdL_0Zg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--HGI1YqWW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1749/1%2Aq-U9d0UUuzkwSVjjdL_0Zg.png" alt="https://miro.medium.com/max/1749/1*q-U9d0UUuzkwSVjjdL_0Zg.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let’s assume that three people build three models for a given function. To determine which model suits the best we can use loss function to solve the problem.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--5u6fNN-V--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1756/1%2A76YkYeu7TT7004jsPXunPw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--5u6fNN-V--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1756/1%2A76YkYeu7TT7004jsPXunPw.png" alt="https://miro.medium.com/max/1756/1*76YkYeu7TT7004jsPXunPw.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;L1,L2,L3 are the loss functions of the three models. We can see that L1 has less value and hence it is a close approximation of the function. A model can be said to have perfect estimate when the loss function equals to 0.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Jar 5 — Learning&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--tLPEQ_L4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1754/1%2AfEj8_fsXGTvCs4DjgppGYw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--tLPEQ_L4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1754/1%2AfEj8_fsXGTvCs4DjgppGYw.png" alt="https://miro.medium.com/max/1754/1*fEj8_fsXGTvCs4DjgppGYw.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The learning algorithm is used to find the parameters a,b,c such that the loss is minimized. There are many optimization solvers which can be used to find a,b,c and this forms the crux of machine learning.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Jar 6 — Evaluation&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--8mSWiX0A--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1749/1%2AqqXse8ejrtlHiaY-lUZc8w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--8mSWiX0A--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1749/1%2AqqXse8ejrtlHiaY-lUZc8w.png" alt="https://miro.medium.com/max/1749/1*qqXse8ejrtlHiaY-lUZc8w.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The data is split into test and train before training the model on the test data. The predictions are made on the test data and accuracy is used to evaluate the model built. All the data collection process , defining the tasks in terms of &lt;code&gt;x&lt;/code&gt; and &lt;code&gt;y&lt;/code&gt; , defined a learning algorithm and loss function is done on training data. The goal is to estimate the parameters a,b,c so that the loss on the training data is minimized.&lt;/p&gt;

</description>
      <category>machinelearning</category>
      <category>datascience</category>
    </item>
    <item>
      <title>Intoduction to SQL</title>
      <dc:creator>Shiv Prasad</dc:creator>
      <pubDate>Sat, 01 Aug 2020 16:51:47 +0000</pubDate>
      <link>https://dev.to/shiv07prasad/intoduction-to-sql-495g</link>
      <guid>https://dev.to/shiv07prasad/intoduction-to-sql-495g</guid>
      <description>&lt;p&gt;A database is a set of data stored in a computer. This data is usually structured into tables. Tables can grow large and have a multitude of columns and records.&lt;/p&gt;

&lt;p&gt;SQL (pronounced “S-Q-L” or “sequel”) allows you to write queries which define the subset of data you are seeking. Unlike Excel and Sheets, your computer and SQL will handle how to get the data; you can focus on what data you would like. You can save these queries, refine them, share them, and run them on different databases.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;What is a Database?&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;A &lt;em&gt;database&lt;/em&gt; is a set of data stored in a computer. This data is usually structured in a way that makes the data easily accessible.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Tables: Rows and Columns&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Tables can have hundreds, thousands, sometimes even millions of rows of data. These rows are often called &lt;em&gt;records&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Tables can also have many &lt;em&gt;columns&lt;/em&gt; of data. Columns are labeled with a descriptive name (say, &lt;code&gt;age&lt;/code&gt; for example) and have a specific &lt;em&gt;data type&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;For example, a column called &lt;code&gt;age&lt;/code&gt; may have a type of &lt;code&gt;INTEGER&lt;/code&gt; (denoting the type of data it is meant to hold).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--8cLoav2W--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://s3.amazonaws.com/codecademy-content/courses/sql-intensive/table.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--8cLoav2W--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://s3.amazonaws.com/codecademy-content/courses/sql-intensive/table.jpg" alt="https://s3.amazonaws.com/codecademy-content/courses/sql-intensive/table.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the table above, there are three columns (&lt;code&gt;name&lt;/code&gt;, &lt;code&gt;age&lt;/code&gt;, and &lt;code&gt;country&lt;/code&gt;).&lt;/p&gt;

&lt;p&gt;The &lt;code&gt;name&lt;/code&gt; and &lt;code&gt;country&lt;/code&gt; columns store string data types, whereas &lt;code&gt;age&lt;/code&gt; stores integer data types. The set of columns and data types make up the schema of this table.&lt;/p&gt;

&lt;p&gt;The table also has four rows, or records, in it (one each for Natalia, Ned, Zenas, and Laura).&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;What is a Relational Database Management System (RDBMS)?&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;A relational database management system (RDBMS) is a program that allows you to create, update, and administer a relational database. Most relational database management systems use the SQL language to access the database.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;What is SQL?&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;SQL (&lt;strong&gt;S&lt;/strong&gt;tructured &lt;strong&gt;Q&lt;/strong&gt;uery &lt;strong&gt;L&lt;/strong&gt;anguage) is a programming language used to communicate with data stored in a relational database management system. SQL syntax is similar to the English language, which makes it relatively easy to write, read, and interpret.&lt;/p&gt;

&lt;p&gt;Many RDBMSs use SQL (and variations of SQL) to access the data in tables. For example, SQLite is a relational database management system. SQLite contains a minimal set of SQL commands (which are the same across all RDBMSs). Other RDBMSs may use other variants.&lt;/p&gt;

&lt;p&gt;(SQL is often pronounced in one of two ways. You can pronounce it by speaking each letter individually like “S-Q-L”, or pronounce it using the word “sequel”.)&lt;/p&gt;

&lt;h2&gt;
  
  
  Additional info :
&lt;/h2&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Popular Relational Database Management Systems&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;SQL syntax may differ slightly depending on which RDBMS you are using. Here is a brief description of popular RDBMSs:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.mysql.com/"&gt;MySQL&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;MySQL is the most popular open source SQL database. It is typically used for web application development, and often accessed using PHP.&lt;/p&gt;

&lt;p&gt;The main advantages of MySQL are that it is easy to use, inexpensive, reliable (has been around since 1995), and has a large community of developers who can help answer questions.&lt;/p&gt;

&lt;p&gt;Some of the disadvantages are that it has been known to suffer from poor performance when scaling, open source development has lagged since Oracle has taken control of MySQL, and it does not include some advanced features that developers may be used to.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.postgresql.org/"&gt;PostgreSQL&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;PostgreSQL is an open source SQL database that is not controlled by any corporation. It is typically used for web application development.&lt;/p&gt;

&lt;p&gt;PostgreSQL shares many of the same advantages of MySQL. It is easy to use, inexpensive, reliable and has a large community of developers. It also provides some additional features such as foreign key support without requiring complex configuration.&lt;/p&gt;

&lt;p&gt;The main disadvantage of PostgreSQL is that it is slower in performance than other databases such as MySQL. It is also less popular than MySQL which makes it harder to come by hosts or service providers that offer managed PostgreSQL instances.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.oracle.com/database/"&gt;Oracle DB&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Oracle Corporation owns Oracle Database, and the code is not open sourced.&lt;/p&gt;

&lt;p&gt;Oracle DB is for large applications, particularly in the banking industry. Most of the world’s top banks run Oracle applications because Oracle offers a powerful combination of technology and comprehensive, pre-integrated business applications, including essential functionality built specifically for banks.&lt;/p&gt;

&lt;p&gt;The main disadvantage of using Oracle is that it is not free to use like its open source competitors and can be quite expensive.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.microsoft.com/en-us/sql-server/sql-server-2017"&gt;SQL Server&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Microsoft owns SQL Server. Like Oracle DB, the code is close sourced.&lt;/p&gt;

&lt;p&gt;Large enterprise applications mostly use SQL Server.&lt;/p&gt;

&lt;p&gt;Microsoft offers a free entry-level version called &lt;em&gt;Express&lt;/em&gt; but can become very expensive as you scale your application.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.sqlite.org/"&gt;SQLite&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;SQLite is a popular open source SQL database. It can store an entire database in a single file. One of the most significant advantages this provides is that all of the data can be stored locally without having to connect your database to a server.&lt;/p&gt;

&lt;p&gt;SQLite is a popular choice for databases in cellphones, PDAs, MP3 players, set-top boxes, and other electronic gadgets. The SQL courses on Codecademy use SQLite.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
