Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit45cd3a3

Browse files
committed
stuff
1 parent74bfa5e commit45cd3a3

File tree

3 files changed

+30
-11
lines changed

3 files changed

+30
-11
lines changed

‎pgml/README.md‎

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,19 @@
1-
#pgml
1+
#PgML - Postgres Machine Learning
2+
3+
This package implements data processing, training and scoring of ML models. It is built to be used
4+
inside PL/Python functions, inside a Postgres connection process.
5+
6+
Most functions can work in any Python environment; some functions are tightly coupled to
7+
PL/Python by requiring a`plpy` object passed in as an argument: it provides database access methods.
8+
9+
##Installation
10+
11+
For now, we require that this package is installed into the system Python packages space:
12+
13+
```bash
14+
sudo pip3 setup.py install
15+
```
16+
17+
##Usage
18+
19+
See`../sql/install.sql` for list of functions. This package is not meant to be used directly.

‎sql/install.sql‎

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,13 @@
22
-- Create the PL/Python3 extension.
33
CREATE EXTENSION IF NOT EXISTS plpython3u;
44

5+
DROPSCHEMA pgml CASCADE;
6+
CREATESCHEMAIF NOT EXISTS pgml;
7+
58
---
69
--- Extension version.
710
---
8-
CREATE OR REPLACEFUNCTIONpgml_version()
11+
CREATE OR REPLACEFUNCTIONpgml.version()
912
RETURNSTEXT
1013
AS $$
1114
import pgml
@@ -15,7 +18,6 @@ $$ LANGUAGE plpython3u;
1518
---
1619
--- Track table versions.
1720
---
18-
CREATESCHEMAIF NOT EXISTS pgml;
1921
CREATETABLEpgml.model_versions(
2022
idBIGSERIALPRIMARY KEY,
2123
nameVARCHAR,
@@ -33,7 +35,7 @@ CREATE TABLE pgml.model_versions(
3335
--- Run some validations on the table/view to make sure
3436
--- it'll work without our package.
3537
---
36-
CREATE OR REPLACEFUNCTIONpgml_validate(table_nameTEXT)
38+
CREATE OR REPLACEFUNCTIONpgml.validate(table_nameTEXT)
3739
RETURNS BOOL
3840
AS $$
3941
frompgml.sql import all_rows
@@ -47,7 +49,7 @@ $$ LANGUAGE plpython3u;
4749
---
4850
--- Train the model.
4951
---
50-
CREATE OR REPLACEFUNCTIONpgml_train(table_nameTEXT, yTEXT)
52+
CREATE OR REPLACEFUNCTIONpgml.train(table_nameTEXT, yTEXT)
5153
RETURNSTEXT
5254
AS $$
5355
frompgml.train import train
@@ -88,8 +90,7 @@ $$ LANGUAGE plpython3u;
8890
---
8991
--- Predict
9092
---
91-
DROPFUNCTION pgml_score(model_nameTEXT, VARIADIC featuresDOUBLE PRECISION[]);
92-
CREATE OR REPLACEFUNCTIONpgml_score(model_nameTEXT, VARIADIC featuresDOUBLE PRECISION[])
93+
CREATE OR REPLACEFUNCTIONpgml.score(model_nameTEXT, VARIADIC featuresDOUBLE PRECISION[])
9394
RETURNSDOUBLE PRECISION
9495
AS $$
9596
frompgml.sql import models_directory

‎sql/test.sql‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,21 +4,21 @@
44
\i sql/install.sql
55
\i data/winequality-red.sql
66

7-
SELECTpgml_version();
7+
SELECTpgml.version();
88

99
-- Valiate our wine data.
10-
SELECTpgml_validate('wine_quality_red');
10+
SELECTpgml.validate('wine_quality_red');
1111

1212
-- Train twice
13-
SELECTpgml_train('wine_quality_red','quality');
13+
SELECTpgml.train('wine_quality_red','quality');
1414

1515
SELECT*FROMpgml.model_versions;
1616

1717
\timing
1818
WITH latest_modelAS (
1919
SELECT name||'_'|| idAS model_nameFROMpgml.model_versionsORDER BY idDESCLIMIT1
2020
)
21-
SELECTpgml_score(
21+
SELECTpgml.score(
2222
(SELECT model_nameFROM latest_model),-- last model we just trained
2323

2424
-- features as variadic arguments

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp