Skip to main content

SAFER package

Project description

SAFER

This guide provides SAFER model module

Baseline

  • Baseline
    • data_processing_m1
      • init.py
      • crf_data.py
      • location_data.py
      • sensor_data.py
    • data_processing_m2
      • init.py
      • crf_data.ppy
      • location_data.py
      • sensor_data.py
    • model1
      • init.py
      • model
        • tft_model.pkl
      • dataloader.py
      • model.py
      • predictor.py
    • model2
      • model
        • final_model.pkl
      • dataloader.py
      • model.py
      • preictor.py
    • setup.py
    • init.py
    • README.md

How To Use

Start pip install

!pip install saferx

m1

m1 data processing

  1. location data
  # Location 데이터 
    import saferx

  # saferx 패키지에서 LocationProcessor 사용
    location_processor = saferx.M1LocationProcessor()

  # CSV 파일에서 데이터 로드 및 전처리
    file_path = 'path_to_location_data.csv'
    processed_data = location_processor.load_data_from_csv(file_path)

  # 엔트로피 및 위치 가변성 계산
    resampled_data = location_processor.resample_and_calculate(processed_data)

  # 위치 레이블 할당
    location_dict = {
        (37.7749, -122.4194): 'hallway',
        (34.0522, -118.2437): 'ward'
    }
    labeled_data = location_processor.assign_location_labels(processed_data, location_dict)
  
  1. sensor data
    # saferx 패키지에서 M1SensorDataProcessor 사용
      import saferx

      # M1SensorDataProcessor 인스턴스 생성
      sensor_processor = saferx.M1SensorDataProcessor()

      # 센서 데이터 로드
      sensor_data = sensor_processor.load_sensing_data('path_to_sensor_data.csv')

      # 센서 데이터 처리
      processed_data = sensor_processor.process_sensing_data(sensor_data)

      # 데이터 집계
      aggregated_data = sensor_processor.aggregate_sensing_data(processed_data)

      # 열 이름 재정렬
      final_data = sensor_processor.reorganize_column_names(aggregated_data)

      # 결과 출력
      print(final_data.head())
  1. CRF data
  import saferx

  data_processor = saferx.M1DataProcessor()
  # 데이터 로드
  location_data, sensor_data, crf_data, trait_data = processor.load_data(
      location_file='location_data.csv',
      sensor_file='sensor_data.csv',
      crf_file='crf_data.csv',
      trait_file='trait_data.csv'
  )
  # 위치와 센서 데이터 병합
  merged_data = processor.merge_location_and_sensor()

  # CRF 데이터 병합
  merged_data_with_crf = processor.process_crf_data()

  # 성향 데이터 병합
  merged_data_with_traits = processor.merge_trait_data()

  # 자살 플래그 설정
  suicide_flags = [('John Doe', pd.Timestamp('2024-01-15 08:00:00'))]
  merged_data_with_flags = processor.clean_and_set_suicide_flag(suicide_flags)

  # 자해 발생 데이터 필터링
  filtered_data = processor.filter_data_for_self_harm_and_random()

  # 결과 확인
  print(filtered_data.head())
      

m1 model

  import torch
  import saferx
    # 데이터 경로 설정
    data_paths = ['merged_data_m1.csv']

    # PredictionHandler 객체 생성 (모델 경로는 고정)
    predictor = saferx.PredictionHandler(data_paths, batch_size=16, device='cpu')
   
    # 예측 수행
    predictions = predictor.predict()

    print(predictions)

m2

m2 data processing

  1. location data
  # Location 데이터 
    import saferx

  # saferx 패키지에서 LocationProcessor 사용
    location_processor = saferx.M2LocationProcessor()

  # CSV 파일에서 데이터 로드 및 전처리
    file_path = 'path_to_location_data.csv'
    processed_data = location_processor.load_data_from_csv(file_path)

  # 엔트로피 및 위치 가변성 계산
    resampled_data = location_processor.resample_and_calculate(processed_data)

  # 위치 레이블 할당
    location_dict = {
        (37.7749, -122.4194): 'hallway',
        (34.0522, -118.2437): 'ward'
    }
    labeled_data = location_processor.assign_location_labels(processed_data, location_dict)
  1. sensor data
      # saferx 패키지에서 M2SensorDataProcessor 사용
      import saferx

      # M1SensorDataProcessor 인스턴스 생성
      sensor_processor = saferx.M2SensorDataProcessor()

      # 센서 데이터 로드
      sensor_data = sensor_processor.load_sensing_data('path_to_sensor_data.csv')

      # 센서 데이터 처리
      processed_data = sensor_processor.process_sensing_data(sensor_data)

      # 데이터 집계
      aggregated_data = sensor_processor.aggregate_sensing_data(processed_data)

      # 열 이름 재정렬
      final_data = sensor_processor.reorganize_column_names(aggregated_data)

      # 결과 출력
      print(final_data.head())
  1. CRF data
  import saferx

  data_processor = saferx.M2DataProcessor()

  # 데이터 로드
  processor.load_data(
      location_file='location_data.csv',
      sensor_file='sensor_data.csv',
      crf_file='crf_data.csv',
      trait_file='trait_data.csv'
  )

  # 위치와 센서 데이터 병합
  processor.merge_location_and_sensor()

  # CRF 데이터 처리 및 병합
  processor.process_crf_data()

  # 성향 데이터 병합
  merged_data = processor.merge_trait_data()

  # 최종 결과 확인
  print(merged_data.head())

m2 model

   import torch
   import saferx

   data_path = 'merged_data_m2.csv'  # 데이터 경로 (CRF, sensor, location 등 합친 상태)

   device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')

   # Predictor 객체 생성
   predictor = saferx.Predictor(device=device)

   # 데이터 로드 및 전처리
   data_loader = predictor.preprocess_data(data_path)

   # 예측 수행
   predictions = predictor.predict(data_loader)

   # 예측 결과 출력
   print(predictions)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

saferx-0.5.2.tar.gz (2.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

saferx-0.5.2-py3-none-any.whl (2.1 MB view details)

Uploaded Python 3

File details

Details for the file saferx-0.5.2.tar.gz.

File metadata

  • Download URL: saferx-0.5.2.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.16

File hashes

Hashes for saferx-0.5.2.tar.gz
Algorithm Hash digest
SHA256 05380066e103a984db5c7c17b4c7b93235402bbf291bb28481f5ae507b26287b
MD5 faa893ef1615e0613bb9162e2438f493
BLAKE2b-256 d184db281cf28c3c48fda5ade2d7b59e4747394ecbf111900405f838278a9f8f

See more details on using hashes here.

File details

Details for the file saferx-0.5.2-py3-none-any.whl.

File metadata

  • Download URL: saferx-0.5.2-py3-none-any.whl
  • Upload date:
  • Size: 2.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.16

File hashes

Hashes for saferx-0.5.2-py3-none-any.whl
Algorithm Hash digest
SHA256 cd14ce628378a41c965b8cce2907d028fd5660467b2cdea9bb96f900d3489dce
MD5 e5d8c3a08b37d12a5b4d768b401e07f5
BLAKE2b-256 52390bca52bf8a6765e4873e4bb4e2b0e0702b8021829e2f631cde1029436f9b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page