Thursday, July 20, 2017

Steps to add jquery-ui to node-arc-d3 (working draft)

$ git clone https://github.com/bshambaugh/node-arc-d3.git
$ cd node-arc-d3
$ git checkout -b btc-setup
$ npm init
$ npm install --save d3 jquery jsonld lodash n3 requirejs urijs jquery-ui
$ cd src
View the source:
$ cat index.html

Test the source in the browser:
http://localhost/bc-node-arc-d3/node-arc-d3/src/

In the browser:
http://localhost/bc-node-arc-d3/node-arc-d3/src/data/

In the data window:
http://localhost/bc-node-arc-d3/node-arc-d3/src/data/old-Food-Growing-Methods.ttl

Press the "Load File / LDP Container" Button

Edit the source:
$ vim index.html

Add right below the <body> tag:
<script src="../node_modules/jquery-ui/demos/bootstrap.js">
$("#resizable").resizable({
     handles: "se"
});
</script>

....
  <div class="box d">
     <div class="box da">DA<textarea id="resizable" rows="5" cols="20"></textarea></div>
     <div class="box db">DB</div>
  </div>
.....
// This causes the rest of the code to fail even though I do get a resizable text box







Tuesday, July 18, 2017

Getting Jupyter Server started

For Jupyter Notebook use python3 (python3 --version => 3.4), (which python3 /usr/local/bin/python3)

Install Jupyter Notebook with pip (pip3 install ---upgrade pip), (pip3 install jupyter)

Start the Jupyter server in directory where you have permissions such as $home/Documents/ (jupyter notebook)

Reference (https://jupyter.readthedocs.io/en/latest/install.html)


Set up the python packages (modules) sudo pip3 install beautifulsoup4 sudo pip3 install nltk
sudo pip3 install numpy
sudo pip3 install scipy
sudo pip3 install sklearn

Running Jupyter:

In $home/Documents: jupyter notebook

Run the script:

from bs4 import BeautifulSoup
import nltk
from nltk.corpus import stopwords
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.decomposition import TruncatedSVD

cds = open('/home/brent/Downloads/cd_catalog.xml').read()
print(cds)
soup = BeautifulSoup(cds)
postTxt = soup.findAll('artist')
postDocs = [x.text for x in postTxt]
print(postDocs)
postDocs.pop[0]   (error postDocs is not scriptable)
postDocs = [x.lower() for x in postDocs]     (changes everything to lowercase)

stopset.update(['lt','p','/p','br','amp','quot','field','front','normal','span','Opx','rgb','style','51','spacing','text','helvetica','size','family','space','arial','height','indent','letter','line','none','sans','serif','transform','line','variant','weight','times','new','strong','video','title','white','word','letter','roman','0pt','16','color','12','14','21','neue','apple','class',
               ])
 
print(postDocs)
stopset = set(stopwords.words('english'))

Sunday, July 16, 2017

Links found Looking for Latent Semantic Analysis (originally to find what Latent means)

Probabilistic Latent Semantic Analysis
http://web.mit.edu/~punk/Public/AudioExtraction/PLCApage.html

Latent Semantic Analysis
https://en.wikipedia.org/wiki/Latent_semantic_analysis

Text Analytics - Latent Semantic Analysis
https://www.youtube.com/watch?v=BJ0MnawUpaU
From Playlist:
https://www.youtube.com/watch?v=Jh1kuqm4rMc&list=PLlWzRW5RWfEX-HeTjCDWTRCOhISKrPAep

try replicating the last video with Jupyter: http://jupyter.readthedocs.io/en/latest/install.html

Friday, July 14, 2017

Links Found Looking for Linked Data and Machine Learning

"Choosing a Machine Learning Classifier" http://blog.echen.me/2011/04/27/choosing-a-machine-learning-classifier/


"3rd International Workshop on Inductive Reasoning and Machine Learning for the Semantic Web"  https://sites.google.com/site/irmles2011/


 "Volker Tresp's Homepage" http://www.dbs.ifi.lmu.de/~tresp/


Maximilian Nickel, Volker Tresp, Hans-Peter Kriegel "Factorinzing Yago" http://www.dbs.ifi.lmu.de/%7Etresp/papers/p271.pdf

(edit: see the RESCAL paper this is based on: "A Three-Way Model for Collective Learning on Multi-Relational Data"
http://www.icml-2011.org/papers/438_icmlpaper.pdf )

 Volker Tresp's student Maximilian Nickel's Homepage: http://web.mit.edu/~mnick/www/

 Maximilian Nickel's Development RESCAL: https://github.com/mnick/rescal.py

Extension EX-RESCAL: https://github.com/researchstudio-sat/webofneeds/tree/master/webofneeds/won-matcher-rescal/src/main/python/extrescal Conclusion: Factorizing Yago is useful for understanding EX-RESCAL

Wednesday, July 5, 2017

Notes for Logistic regression in R on July 5th

Steps to take for Logistic Regression in R:

(1) Load data
(2) attach(data-sample)
(3) summary(data-sample)
(4) ced.del <- cbind(sDel, sNoDel)
(5) summary(ced.del)
(6) duckie <- glm(ced.del ~ cat + follows + factor(class), family=binomial)
(7) duckie
(8) summary(duckie)
(9) anova(duckie, test="Chisq")
(10) plot(duckie)

Revised:

fico <- read.table("/home/brent/Documents/fico.csv", header=TRUE, sep=",",
  na.strings="NA", dec=".", strip.white=TRUE)

attach(fico)

duckie <- glm(approved ~ creditScore, family=binomial)

summary(duckie)

------

> summary(duckie)

Call:
glm(formula = approved ~ creditScore, family = binomial)

Deviance Residuals:
   Min      1Q  Median      3Q     Max 
-1.408  -1.338   0.959   1.010   1.149 

Coefficients:
             Estimate Std. Error z value Pr(>|z|)
(Intercept) -6.223592  17.177351  -0.362    0.717
creditScore  0.009605   0.024893   0.386    0.700

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 20.190  on 14  degrees of freedom
Residual deviance: 20.038  on 13  degrees of freedom
AIC: 24.038

Number of Fisher Scoring iterations: 4

Use the intercept and the credit score to solve for the predicted probability:
p ^ = ⅇ βo + x1β1 1 + ⅇ βo + x1β1

With the coefficient estimates we have:
p ^ = ⅇ -6.223592 + 0.009605x1 1 + ⅇ -6.223592 + 0.009605x1